資源描述:
《DSP的設計與應用:基于多核DSP的以太網(wǎng)通信接口設計.doc》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在應用文檔-天天文庫。
1、DSP的設計與應用:基于多核DSP的以太網(wǎng)通信接口設計DSP的應用 針對8核DSPTMS320C6678與外部設備進行數(shù)據(jù)通信的需求,以片上集成千兆以太網(wǎng)交換子系統(tǒng)為核心,選取芯片88E1111作為PHY設備,設計了千兆以太網(wǎng)通信接口的硬件電路。在嵌入式操作系統(tǒng)SYS/BIOS和網(wǎng)絡開發(fā)環(huán)境NDK上,完成了以太網(wǎng)底層驅動和TCP/IP協(xié)議的程序設計。通過DSP與上位機進行以太網(wǎng)通信測試,證明了以太網(wǎng)接口電路硬件及軟件的正確性和實用性。 隨著DSP處理器在現(xiàn)代工業(yè)的應用越來越廣泛,DSP的功能不僅只有快速運算處理,還需要與其他處理器或者設備之間進行實
2、時數(shù)據(jù)交換,以實現(xiàn)資源的共享。因此,針對不同設備的需求,選擇穩(wěn)定、快速和高效率的接口方式在當今數(shù)字信號處理系統(tǒng)設計中關鍵的組成部分?! I公司的8核處理器TMS320C6678(以下簡稱C6678)提供豐富的片上接口資源用于處理器與外設之間的通信,這些接口都可以用于DSP與外設之間的通信,但是靈活性有差異,使用SGMII接口來實現(xiàn)千兆以太網(wǎng)通信,可使得通信接口一般化,能夠適用于眾多的設備連接。本文針對C6678的芯片特點以及含有的接口資源,設計實現(xiàn)了千兆以太網(wǎng)通信,主要設計了以太網(wǎng)接口電路、網(wǎng)絡底層硬件驅動、TCP/IP協(xié)議的用戶程序,并完成了與上位
3、機以太網(wǎng)通信測試,實現(xiàn)了數(shù)字信號高速有效地網(wǎng)絡傳輸?! ?C6678以太網(wǎng)交換子系統(tǒng) C6678是基于KeyStoneI構架的8核高性能、定點/浮點處理器,單核最高工作頻率可達1.25GHz。C6678的以太網(wǎng)交換子系統(tǒng)包括2個以太網(wǎng)媒體訪問控制(EthernetMediaAccessController,EMAC)、2個SGMII、1個管理數(shù)據(jù)輸入輸出(ManagementDataInputOutput,MDIO)、3-Port以太網(wǎng)交換模塊以及網(wǎng)絡配置總線,其網(wǎng)絡交換子系統(tǒng)如圖1所示?! MAC的作用是將交換子系統(tǒng)的內(nèi)部信號轉換為GMII信
4、號傳遞給SGMII模塊;MDIO控制物理層芯片執(zhí)行對多數(shù)據(jù)流的控制輸入輸出?! ?PHY芯片88E1111 本文選擇C6678作為主芯片,由于C6678的千兆網(wǎng)絡交換子系統(tǒng)只支持SGMII接口,所以本文選擇對SGMII接口的網(wǎng)絡數(shù)據(jù)傳輸具有較好兼容性的物理芯片88E1111。88E1111芯片的內(nèi)部結構如圖2所示?! ?8E1111的介質接口有銅介質接口和光纖接口。銅介質接口為MDI[3:0],通過設置HWCFG_MODE[3:0]來選擇運行模式。88E1111集成的MDIO模塊與EMAC的MDIO接口相連接,可將方便網(wǎng)絡控制端讀取物理芯片狀態(tài)寄存器
5、,達到實時監(jiān)測的效果。 3硬件接口設計 本文設計的任務是基于C6678片內(nèi)以太網(wǎng)交換子系統(tǒng)和片外PHY芯片88E1111及其外圍電路的接口設計。主要包括:C6678與88E1111芯片連接、88E1111芯片配置以及88E1111芯片與網(wǎng)絡介質連接。 3.1C6678與88E1111芯片連接 C6678和PHY芯片88E1111的接口電路如圖3所示。88E1111工作在SGMII接口模式下,不需要TXCLK時鐘輸入,更有助于減少電路板上走線的數(shù)量,同時也可減少噪聲的產(chǎn)生。 主要的接口信號包括時鐘和數(shù)據(jù)信號如下: MDIO_CLK:管理數(shù)
6、據(jù)時鐘。該時鐘信號由C6678片上的MDIO模塊提供,該時鐘頻率通過配置MDIO的控制寄存器CONTROL中的CLKDIV位來控制實現(xiàn)?! GMII_TXP和SGMII_TXN:串行發(fā)送差分數(shù)據(jù)線。連接DSP內(nèi)部SerDes和物理芯片的S_IN管腳,DSP的SerDes通過該管腳向物理層發(fā)送串行數(shù)據(jù),數(shù)據(jù)中包含發(fā)送數(shù)據(jù)時鐘信號。 SGMII_RXP和SGMII_RXN:串行接收差分數(shù)據(jù)線。連接DSP內(nèi)部SerDes和物理芯片的S_OUT管腳,物理層芯片通過該接口將數(shù)據(jù)傳送到DSP的SerDes,數(shù)據(jù)中包含數(shù)據(jù)接收時鐘信號?! DIO:管理數(shù)據(jù)I/
7、O??勺疃噙B接32個PHY設備到DSP的EMAC,并且可以枚舉所有PHY設備,讀取PHY設備狀態(tài)寄存器來監(jiān)測PHY的連接狀態(tài)。數(shù)據(jù)幀結構符合802.3標準,包含讀寫指令、PHY地址、寄存器地址和數(shù)據(jù)等。 因為88E1111上集成的MDIO與C6678集成MDIO模塊進行連接時,電壓有所差別,前者電壓為2.5V,后者電壓為1.8V,所以在二者之間應該添加電壓轉換器。本文采用一片PCA9306,實現(xiàn)2.5V和1.8V之間的電平轉換,其連接電路如圖4所示?! ?.288E1111芯片配置 88E1111與C6678的MDIO模塊相連接,MDIO最
8、多可識別32個物理芯片,在使用物理芯片之前需要對其進行配置,配置內(nèi)容主要包括芯片的地址、模式等