TMS320C54x DSP的以太網(wǎng)接口設(shè)計 作者: 時間:2007-03-09 來源:網(wǎng)絡(luò) 加入技術(shù)交流群 掃碼加入和技術(shù)大咖面對面交流海量資料庫查詢 收藏 摘要:介紹以太網(wǎng)控制器RTL8019AS的主要性能特點、引腳功能及寄存器,給出了利用RTL8019AS實現(xiàn)TMS320C54x DSP與以太網(wǎng)互連的接口電路,接口方式為跳線模式。通過該接口可實現(xiàn)DSP與DSP或DSP與PC機間的網(wǎng)絡(luò)互連。關(guān)鍵詞:以太網(wǎng) DSP 接口 以太網(wǎng)產(chǎn)品供應(yīng)商多、用戶組網(wǎng)方便、費用低。以太網(wǎng)是當(dāng)今最受歡迎的局域網(wǎng)之一,而數(shù)字信號處理器(DSP)正加速進入嵌入式應(yīng)用領(lǐng)域,如何將DSP與以太網(wǎng)連接起來,實現(xiàn)DSP與DSP或DSP與計算機間的網(wǎng)絡(luò)互連顯得非常重要。目前還未見到自帶以太網(wǎng)接口的DSP,本文介紹以太網(wǎng)控制器RTL8019AS的主要特點、性能及操作方法,并給出TMS320C54x DSP[1](以下簡稱C5402)通過RTL8019AS與以太網(wǎng)互連的接口方法。 1 RTL8019AS介紹 RTL8019AS[2]是臺灣readlted公司生產(chǎn)的以太網(wǎng)控制器,支持IEEE802.3;支持8位或16位數(shù)據(jù)總線;內(nèi)置16KB的SRAM,用于收發(fā)緩沖;全雙工,收發(fā)同時達到10Mbps;支持10Base5、10Base2、10BaseT,并能自動檢測所連接的介質(zhì),在ISA總線網(wǎng)卡中占有相當(dāng)比例。RTL8019AS與主機有3種接口模式,即跳線模式、PnP模式和RT模式。本文主要介紹便于DSP應(yīng)用的跳線模式,因此下面主要介紹與跳線模式有關(guān)的引腳、寄存器及操作。 1.1 引腳介紹 RTL8019AS可提供100腳的TQFP封裝,其引腳可分為電源及時鐘引腳、網(wǎng)絡(luò)介質(zhì)接口引腳、自舉ROM及初始化EEPROM接口引腳、主處理器接口引腳、輸出指示及工作方式配置引腳。由于本文主要討論非PC環(huán)境下的以太網(wǎng)接口,該接口不必具有即插即用功能(PnP)和遠程自舉加載功能,因此不介紹RTL8019AS與自舉ROM、初始化EEPROM接口的引腳。其余各部分引腳的功能如表1所示。表1 RTL8019AS部分引腳 與網(wǎng)絡(luò)介質(zhì)接口引腳 AUI輸入用于外部MAU檢測CD+,CD-輸入AUI沖突,接收來自MAU的沖突Rx+,Rx-輸入AUI接收,接收MAU的輸入信號Rx+,Tx-輸出AUI發(fā)送,往MAU的輸出信號TPRx,TPRx-輸入從雙絞線接收的差分輸入信號TPRx,TPTx-輸出發(fā)往雙絞線的差分輸出信號與主處理器接口的引腳 AEN輸入I/O端口操作允許INT7~0輸出中斷輸出IOCS16輸出16位I/O口方式IOR IOW輸入端口讀、寫控制IOCHRDY輸出I/O通道準(zhǔn)備好SMEMR SMEMW輸入存儲器讀、寫控制RSTDRV輸入復(fù)位SA 19~0輸入20位地址總線SD 15~0雙向16位數(shù)據(jù)總線發(fā)光二極管輸出引腳LEDBNC輸出介質(zhì)類型指示LED0、LED1、LED2輸出指示控制器的工作狀態(tài)工作方式配置引腳JP輸入置位時選擇跳線模式,復(fù)全時選擇無跳線模式PNP輸入置位時進入PnP模式(JP=0)IOS3~0輸入I/O口基地址選擇PL1~0輸入介質(zhì)類型選擇IRQS2~0輸入用于在INT70中選擇一個作為斷輸出1.2 寄存器介紹 RTL8019AS片內(nèi)寄存器分為NE2000寄存器組和PnP寄存器組(本文不介紹PnP寄存器組)。NE2000寄存器組地址如表2所示。NE2000寄存器分為4頁,都映射到16個I/O端口地址上。主機通過命令寄存器(CR)中的PS0、PS1位來尋址不同的頁,通過16個I/O口地址來尋址頁內(nèi)寄存器。表2 RTL8019AS 寄存器地址表 page0page1page2page3 [R][W][R/W][R][R][W]00CRCRCRCRCRCR01CLDA0PSTARTPAR0PSTART9346CR9346CR02CLDA1PSTOPPAR1PSTOPBPAGEBPAGE03BNRYBNRYPAR2-CONFIG0-04TSRTPSRPAR3TPSRCONFIG1CONFIG105NCRTBCR0PAR4-CONFIG2CONFIG206FIFOTBCR1PAR5-CONFIG3CONFIG307ISRISRCURR---08CRDA0RSAR0MAR0-CSNSAV-09CRDA1RSAR1MAR1--HLTCLK0A8019ID0RBCR0MAR2---0B8019ID1RBCR1MAR3-INTR-0CRSRRCRMAR4CRC--0DCNTR0TCRMAR5TCR--0ECNTR1DCRMAR6DCR--0FCNTR2IMRMAR7IMR--10~17Remote DMA Port18~1FReset Port1.3 RTL8019AS與主機的接口模式 RTL8019AS與主機的接口模式有三種,即跳線模式、PnP模式和RT模式,見表3。表3 RTL8019AS的接口模式 JP引腳PnP引腳93C46中的PnP位配置模式配置來源Initiation Key1xx跳線 跳線器RT01xPnP93C46RT and PnP0x1PnP93C46RT and PnP000RT93C46RT(1)跳線模式 這種模式與早期的網(wǎng)絡(luò)控制器兼容。RTL8019AS的端口基地址、中斷口等都由開關(guān)或跳線器決定。跳線模式簡單,但配置資源麻煩。 (2)PnP模式 與微軟的PnP協(xié)議兼容。在這種模式下,RTL8019AS的端口基地址、中斷口等都由EEPROM93C46設(shè)定,但需要進行PnP芯片的識別,不便與DSP接口。 (3)RT模式 為了避免PnP模式下的PnP芯片識別和配置過程,readlted公司提供RT模式。在RT模式下,RTL8019AS的端口基地址、中斷口等也是由EEPROM93C46決定的。 2 RTL8019AS與傳輸介質(zhì)的連接 RTL8019AS可與雙絞線或同軸電纜接口,連接方法如圖1所示。介質(zhì)選擇由引腳PL1、PL0決定,另外,RTL8019AS還自動測試介質(zhì)連接是否成功。 圖1中,NS8392是同軸電纜驅(qū)動/接收器,其電源應(yīng)與RTL8019AS的電源隔離,一般使用一個DC-DC電源轉(zhuǎn)換器得到該隔離電源。16PT-005A內(nèi)有3個耦合變壓器,用來傳輸信號,同時抑制來自介質(zhì)的共模噪聲/干擾。20F001N是雙絞線驅(qū)動/接收器,內(nèi)部也有2個傳輸變壓器。 3 DSP與RTL8019AS的接口 為了簡化DSP網(wǎng)絡(luò)接口的軟、硬件設(shè)計,不使用遠程自舉加載功能,并且選用跳線接口模式。用C5402的擴展I/O口代替跳線器對RTL8019AS進行初始化配置,這樣既省去了93C46,又避免了跳線器更改變資源配置的麻煩。RTL8019AS的總線接口是與ISA總線兼容的,雖然不能與C5402的外部總線直接接口,但是只要進行一些簡單的邏輯變換就可以了。另外,C5402的總線電平是3.3V的,而RTL8019AS的接口電路是5V的,二者接口時要使用電平轉(zhuǎn)換器。C5402與RTL8019AS的接口如圖2所示。 (1)地址總線 RTL8019AS的20根地址線主要是為了讀/寫自舉ROM,對于I/O端口尋址來說只要16根地址線就足夠了,因此將DSP的地址總線A0~A15與RTL8019AS的地址總線SA0~SA15相連,而SA16~SA19全部接地。由于DSP系統(tǒng)無DMA控制器,因此將RTL8019AS的AEN引腳也接地。 (2)數(shù)據(jù)總線RTL8019AS的IOCS16引腳接高電平,選擇16位數(shù)據(jù)總線方式,并且使用了電平轉(zhuǎn)換器。 (3)中斷連接 雖然RTL8019AS有7個中斷輸出,但只要從中選擇一個送往C5402的外部中斷輸入口就可以了。中斷接口也使用了電平轉(zhuǎn)換器。 (4)讀/寫控制C5402的I/O口控制信號IS、IOSTRB、R/W等信號經(jīng)過74HACT139譯碼后與RTL8019AS的IOR、IOW連接。由于C5402的I/O口讀/寫速度很快,因此將RTL8019AS的IOCHRDY信號與C5402的外設(shè)準(zhǔn)備好信號READY相連。另外,將SMEMR和SMEMW引腳接高電平,屏蔽了遠程自舉加載功能。 (5)初始化配置 用C5402的一個擴展輸出口代替跳線器來指定RTL8019AS的I/O口基地址、中斷輸出口、介質(zhì)類型,并用一個輸出信號作為RTL8019AS的復(fù)位信號。RTL8019AS復(fù)位結(jié)束時采樣這些配置引腳,并根據(jù)引腳狀態(tài)初始化其內(nèi)部的配置寄存器。4 RTL8019AS的編程 可以用查詢方式或中斷方式對RTL8019AS進行操作[3]。RTL8019AS復(fù)位初始化后,程序員應(yīng)對表2中的部分寄存器進一步初始化,然后才能發(fā)送數(shù)據(jù)或接收數(shù)據(jù)。RTL8019AS內(nèi)置16KB的SRAM,可作為接收緩沖區(qū)和發(fā)送緩沖區(qū)。緩沖區(qū)分為64頁,頁范圍為0x40~0x80,每頁256個字節(jié)。由PSTART和PSTOP寄存器來設(shè)定接收緩沖器的頁范圍,由RSAR0、1和RBCR0、1寄存器來設(shè)定發(fā)送緩沖器的頁范圍。CURR指向接收到幀的起始頁,Boundary指向還未讀幀的起始頁。當(dāng)CURR到達了接收緩沖頁的底部與PSTOR相等時,CURR又會指向PSTART處。 (1)查詢方式 在查詢方式下,通過CURR和Boundary兩個寄存器的值來判斷是否收到一幀數(shù)據(jù)。當(dāng)Boundary與CURR不等時,說明接收緩沖區(qū)接收到了新的幀,主程序讀取數(shù)據(jù)后,以讀取幀的第二個字節(jié)(下一幀的頁地址)更新Boundary,主程序循環(huán)跟蹤CURR和Boundary達到接收數(shù)據(jù)的目的。主程序發(fā)送一幀數(shù)據(jù)時,先要查TSR寄存器判斷上一幀是否發(fā)送完畢。 (2)中斷方式 在實際的DSP應(yīng)用系統(tǒng)中常采用中斷方式。當(dāng)一幀數(shù)據(jù)發(fā)送結(jié)束、接收到一幀數(shù)據(jù)或出錯等事件發(fā)生時,RTL8019AS向DSP申請中斷,DSP響應(yīng)中斷后根據(jù)中斷狀態(tài)寄存器的內(nèi)容進行相應(yīng)的處理。 RTL8019AS性價比高,與DSP連接方便,二者的結(jié)合將大大拓寬DSP的應(yīng)用范圍。帶有以太網(wǎng)接口的DSP應(yīng)用系統(tǒng)可以通過雙絞線或同軸電纜與PC機構(gòu)成一個高速局域網(wǎng),并且DSP可以通過PC機接入互連網(wǎng),進一步延伸DSP的應(yīng)用領(lǐng)域。
評論