八核浮點(diǎn)型DSP的雙千兆網(wǎng)接口設(shè)計(jì)方案
圖4 TMS320C6678和88E1111的接口
MDIO和MDCLK 為TMS320C6678內(nèi)部MDIO 模塊的數(shù)據(jù)和時(shí)鐘,用于TMS320C6678和88E1111建立連接,TMS320C6678可以通過該接口配置88E1111,或者讀取88E1111的信息。由于88E1111的MDIO模塊接口電平為2.5V,而TMS320C6678的MDIO模塊接口電平采用1.8V電壓,所以兩者之間需要增加電壓轉(zhuǎn)換芯片,本設(shè)計(jì)采用PCA9306實(shí)現(xiàn)電壓轉(zhuǎn)換,接口電路如圖5所示。
圖5 MDIO接口的電壓轉(zhuǎn)換電路
需要注意的是,由于存在兩個(gè)88E111芯片,MDIO和MDCLK引腳直接連接到兩個(gè)芯片上,MDIO可以最多控制32個(gè)物理層芯片,物理層芯片地址分別為1~32.88E1111的地址配置如圖6所示。
圖6 88E1111的硬件配置
表1為對應(yīng)的配置信息,根據(jù)圖6和表1,可以看出88E111的地址分別為4和8。
表1 配置引腳設(shè)置
4. 軟件設(shè)計(jì)
系統(tǒng)軟件設(shè)計(jì)包括硬件初始化、網(wǎng)絡(luò)配置以及數(shù)據(jù)通信流程等。TMS320C6678復(fù)位后的工作流程如圖7所示。首先配置第一個(gè)網(wǎng)口,記錄其狀態(tài)后配置第二個(gè)網(wǎng)口。只要兩個(gè)網(wǎng)口有一個(gè)配置成功,將配置TMS320C6678的EMAC模塊,為成功配置的網(wǎng)口設(shè)置收發(fā)緩沖和收發(fā)任務(wù)。這些配置好后,就可以實(shí)現(xiàn)網(wǎng)絡(luò)的數(shù)據(jù)收發(fā)。需要注意的是,在用戶應(yīng)用程序中,需要考慮到網(wǎng)口配置失敗的情況。例如,用戶應(yīng)用程序通過雙網(wǎng)口實(shí)時(shí)傳輸1.2Gbps的數(shù)據(jù),如果一個(gè)網(wǎng)口配置失敗,則應(yīng)用程序應(yīng)有相應(yīng)的機(jī)制將實(shí)時(shí)傳輸速率降低到0.8Gbps以下(單網(wǎng)口實(shí)際傳輸速率可能低于0.8Gbps)。本文硬件系統(tǒng)在沒有其他任務(wù)開銷情況下,實(shí)測可以傳輸1.5Gbps的數(shù)據(jù)(傳輸過程中不考慮錯(cuò)誤,不進(jìn)行重發(fā))。
圖7 數(shù)據(jù)通信流程
結(jié)語
超過1Gbps傳輸速率的通信接口一般采用光纖、PCE、PCIe等接口方式。本文采用雙網(wǎng)口方式可以降低設(shè)備要求,和既有設(shè)備方便連接。使用多核DSP提高處理器工作能力,在保證大容量數(shù)據(jù)傳輸過程中,處理器仍然具有對數(shù)據(jù)的計(jì)算能力。雙網(wǎng)口設(shè)計(jì)方案可以彌補(bǔ)單網(wǎng)口的傳輸速率不足,又可以降低其他接口的硬件復(fù)雜度,是介于兩者之間的有益補(bǔ)充。在嵌入式設(shè)備中具有一定的應(yīng)用價(jià)值。
評論