8位單片機(jī)與以太網(wǎng)控制器RTL8029接口的VHDL設(shè)計-新品速遞_第1頁
8位單片機(jī)與以太網(wǎng)控制器RTL8029接口的VHDL設(shè)計-新品速遞_第2頁
8位單片機(jī)與以太網(wǎng)控制器RTL8029接口的VHDL設(shè)計-新品速遞_第3頁
8位單片機(jī)與以太網(wǎng)控制器RTL8029接口的VHDL設(shè)計-新品速遞_第4頁
8位單片機(jī)與以太網(wǎng)控制器RTL8029接口的VHDL設(shè)計-新品速遞_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

精品文檔-下載后可編輯位單片機(jī)與以太網(wǎng)控制器RTL8029接口的VHDL設(shè)計-新品速遞51系列單片機(jī)是當(dāng)前使用為廣泛的8位單片機(jī)系列,其豐富的開發(fā)資源和較低的開發(fā)成本,使51系列單片機(jī)現(xiàn)在以至將來都仍會有強(qiáng)大的生命力。在網(wǎng)絡(luò)技術(shù)飛速發(fā)展的今天,實際工作中有將51系列單片機(jī)系統(tǒng)接入網(wǎng)絡(luò)的需求。由于51系列單片機(jī)沒有集成以太網(wǎng)接口,因此,如何將51系列單片機(jī)系統(tǒng)接入網(wǎng)路是一個值得探討的課題,其關(guān)鍵就是在硬件上如何實現(xiàn)單片機(jī)與以太網(wǎng)控制器的接口。本文將討論這一課題。1以太網(wǎng)控制器臺灣Realtek公司的以太網(wǎng)控制器是一種符合IEEE802.3以太網(wǎng)標(biāo)準(zhǔn)的控制器,有RTL8019、RTL8029和RTL8139等系列。其中RTL8019是ISA總線的,較易與8位MCU實現(xiàn)接口。RTL8029和RTL8139是PCI總線的,不能直接與8位的MCU接口,需要一個PCI接口進(jìn)行轉(zhuǎn)接??紤]到目前RTL8029在市場上較容易購買,故采用RTL8029以太網(wǎng)控制器作為網(wǎng)絡(luò)接口。RTL8029內(nèi)部已經(jīng)包含有整個網(wǎng)絡(luò)接口層的協(xié)議(PHY層和MAC層協(xié)議),因此應(yīng)用起來較簡單。用戶不必考慮鏈路控制問題,而只需考慮單片機(jī)如何從RTL8029中去讀TCP/IP協(xié)議的數(shù)據(jù)即可。PCI總線信號有3.3V標(biāo)準(zhǔn)和5V標(biāo)準(zhǔn),信號線眾多,但是并不是所有的PCI設(shè)備都使用全部的PCI接口信號,實際上只使用它們需要的即可。RTL8029AS以太網(wǎng)控制器遵循5V標(biāo)準(zhǔn),并且只使用了PCI總線信號中的以下部分:AD[31:0]——數(shù)據(jù)信號復(fù)用總線。FRAME——幀周期信號,由當(dāng)前主設(shè)備驅(qū)動,表示訪問的開始和持續(xù)時間。IRDY——主設(shè)備準(zhǔn)備好信號。TRDY——從設(shè)備準(zhǔn)備好信號。C/BE——總線命令和字節(jié)使能復(fù)用信號。地址期是總線命令,數(shù)據(jù)期是字節(jié)使能。IDSEL——初始化設(shè)備選擇信號。在參數(shù)配置讀寫傳輸期間,用作片選。對于只有一個PCI設(shè)備的情況,它可以總接高電平。RST——復(fù)位信號。CLK——系統(tǒng)時鐘信號,頻率范圍DC~33MHz。以上信號都在CLK的上升沿有效。INTA——中斷請求信號,RTL8029數(shù)據(jù)準(zhǔn)備好后可以用來向主控制器發(fā)出中斷。DEVSEL——設(shè)備選擇信號,表明驅(qū)動它的設(shè)備已成當(dāng)前訪問的設(shè)備,由于在單片機(jī)系統(tǒng)中,RTL8029是單一的PCI設(shè)備,因此該信號可以不用。

2PCI接口設(shè)計在以太網(wǎng)控制器的接口信號中,除地址數(shù)據(jù)總線是雙向的外,TRDY信號由以太網(wǎng)控制器產(chǎn)生,方向為從以太網(wǎng)控制器至PCI接口;其余信號都由接口部分產(chǎn)生,方向是從PCI接口至以太網(wǎng)控制器。接口設(shè)計的思路是:可將PCI接口當(dāng)作單片機(jī)的外部存儲器看待,單片機(jī)以讀寫外部存儲器的時序?qū)CI接口進(jìn)行讀寫,再由PCI接口將這種讀寫操作時序轉(zhuǎn)換成PCI時序?qū)σ蕴W(wǎng)控制器進(jìn)行操作。單片機(jī)在進(jìn)行外部存儲器操作時用到的信號有PO口、P2口、ALE以及RD和WR信號。其中,P0口為地址(低8位)/數(shù)據(jù)復(fù)用,P2口為高8位地址信號;ALE為地址鎖存信號,為高電平時將P0口的值鎖存到低8位數(shù)據(jù)線上;RD和WR為讀寫有效信號,低電平有效。因此,PCI接口實際上是起到一個從8位單片機(jī)讀寫時序到32位PCI讀寫時序轉(zhuǎn)換的作用,原理框圖如圖1所示,訪目時序如圖2所示。

在圖2中,可以完成對PCI設(shè)備的配置訪問與I/O讀寫訪問,只要有這兩種訪問就完全可以實現(xiàn)單片機(jī)對RTL8029的操作。IDSEL信號只是在配置訪問中才起作月,在I/O訪問中不使用該信號。FRAME有效后的個時鐘前沿是地址期的開始。此時在AD總線上傳送地址,在C/BE總線上傳送命令。IRDY有效后即為數(shù)據(jù)期,此時在AD總線上傳送數(shù)據(jù),在C/BE總線上傳送字節(jié)使能。但數(shù)據(jù)的傳輸是在IRDY和TRDY同時有效的時鐘前沿進(jìn)行。字節(jié)使能指明此時32位數(shù)據(jù)線上的數(shù)據(jù)中哪一個數(shù)據(jù)字節(jié)是有效的。讀配置的過程:首先送地址,送命令(命令值為1010B)和字節(jié)使能,再讀配置空間中的內(nèi)容。寫配置的過程:首先送地址,送命令(命令值為101lB)和字節(jié)使能,再送配置數(shù)據(jù)。讀I/O的過程:首先送地址,送命令(命令值為0010B)和字節(jié)使能,再讀I/O空間中的內(nèi)容。寫I/O的過程:首先送地址,送命令(命令值為001lB)和字節(jié)使能,再送數(shù)據(jù)。在I/O訪問中,AD[1:O]兩位有特殊要求,需要與C/BE[3:0]相配合。當(dāng)C/BEO有效時,AD[1:O]必須為00,當(dāng)C/BE3有效時,AD[1:0]必須為11。在具體訪問中,每當(dāng)一個設(shè)備地址譯碼選中后,便要檢查字節(jié)使能信號是否與AD[1:0]相符。如果二者矛盾,則整個訪問將無法完成。因此,寫單片機(jī)軟件需要參考PCI總線協(xié)議中關(guān)于這一部分的內(nèi)容,才能正確操作以太網(wǎng)控制器??偩€命令/字節(jié)使能(C/BE)寄存器的地址有效后的一個時鐘周期內(nèi),F(xiàn)RAME信號應(yīng)該有效,表示地址期開始,C/BE[3:0]總線上為總線命令,地址期可以只持續(xù)一個周期,然后立即進(jìn)入數(shù)據(jù)期。在單片機(jī)系統(tǒng)中可以不考慮去支持復(fù)雜的PCI數(shù)據(jù)連發(fā),進(jìn)入數(shù)據(jù)期后,F(xiàn)RAME信號應(yīng)立即拉回高電平,此時C/BE[3:0]總線上為字節(jié)使能。因此FRAME信號可以用總線命令/字節(jié)使能寄存器的地址信號來產(chǎn)生。IRDY信號在數(shù)據(jù)期才有效,因此IRDY也可以由總線命令/字節(jié)使能寄存器的地址信號來產(chǎn)生或由FRAME信號來產(chǎn)生。IDSEL信號只與配置訪問有關(guān),因此可以通過總線命令的命令字來產(chǎn)生。在I/O訪問時。命令字的位bit3為O;在配置訪問時。命令字的位bit3為l。因此,可以用該位來產(chǎn)生IDSEL信號。另外前面已說明,可將PCI接口當(dāng)作外部存儲器來訪問,因此,要從8位數(shù)據(jù)轉(zhuǎn)換成32位的數(shù)據(jù)。PCI接口中需要設(shè)計以下寄存器:寄存器0,對應(yīng)于32位數(shù)據(jù)/地址總線的AD[7:0],用于寫;寄存器1,對應(yīng)于32位數(shù)據(jù)/地址總線的AD[15:8],用于寫;寄存器2,對應(yīng)于32位數(shù)據(jù)/地址總線的AD[23:16],用于寫;寄存器3,對應(yīng)于32位數(shù)據(jù)/地址總線的AD[31:24],用于寫:寄存器4,對應(yīng)于32位數(shù)據(jù)/地址總線的AD[7:O],用于讀;寄存器5,對應(yīng)于32位數(shù)據(jù)/地址總線的.AD[15:8],用于讀;寄存器6,對應(yīng)于32位數(shù)據(jù)/地址總線的AD[23:16],用于讀;寄存器7,對應(yīng)于32位數(shù)據(jù)/地址總線的AD[31:24],用于讀;總線命令/字節(jié)使能寄存器,對應(yīng)于C/BE[3:0];復(fù)位寄存器,用于對RTL8029AS的硬件復(fù)位操作。根據(jù)以上分析,得PCI接口原理框圖,如圖3所示。

3接口的VHDL實現(xiàn)

PCI接口的VHDL代碼見

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論