<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于TMS320C6455的高速SRIO接口設計

基于TMS320C6455的高速SRIO接口設計

作者: 時(shí)間:2010-02-23 來(lái)源:網(wǎng)絡(luò ) 收藏

請求包以物理層字段開(kāi)始。S位指示這是一個(gè)包還是一個(gè)控制符號,AckID表明交換結構器件將使用控制符號來(lái)確認哪一個(gè)包,Prio字段指示用于流量控制的包優(yōu)先級,TT為目標地址和源地址字段指示傳輸地址的機制類(lèi)型、報應被遞送到的器件的地址和產(chǎn)生包的器件的地址,Ftype表示正被請求的事務(wù),長(cháng)度字段等于編碼后事務(wù)的長(cháng)度,事務(wù)數據的有效載荷長(cháng)度從1到256字節不等,源事務(wù)ID指示發(fā)送器件的事務(wù)ID,器件在兩個(gè)端點(diǎn)器件間最多允許256個(gè)未完成的事務(wù)。對于存儲器映射事務(wù),跟隨在源事務(wù)ID后面的是器件偏移地址字段,用于指示數據的存放地址,CRC為校驗碼。

響應包與請求包類(lèi)似,狀態(tài)字段指示是否成功完成了事務(wù),目標事務(wù)ID字段的值與請求包中斷事務(wù)ID字段的值相等。

2.3 基本讀寫(xiě)和門(mén)鈴操作

根據包的格式的不同,將事務(wù)劃分成很多類(lèi)型,其中最重要的類(lèi)型有三種:NREAD(基本讀操作)、NWRITE(基本寫(xiě)操作)、DOORBELL(門(mén)鈴操作)。 通過(guò)這三種類(lèi)型的組合就可以完成所有的存儲器讀寫(xiě)操作。在介紹讀寫(xiě)操作之前,先介紹一下與SRIO有關(guān)的DMA操作。

在C6455上,SRIO數據傳輸和DMA傳輸是結合的。此DMA與EDMA方式是獨立的,當進(jìn)行SRIO傳輸時(shí),DMA以自動(dòng)方式啟動(dòng)。對與發(fā)送方來(lái)說(shuō),DMA將數據從L2 SRAM搬移到SRIO端口,對于接收方來(lái)說(shuō),DMA將數據從SRIO端口搬移到L2 SRAM內存。因此,在進(jìn)行傳輸時(shí),讀寫(xiě)地址是直接顯示在包里的,而且此地址就是被讀寫(xiě)的DSP的地址。換句話(huà)說(shuō),DSP可以對另一片DSP的L2 SRAM直接進(jìn)行讀寫(xiě)操作。圖4就是自動(dòng)DMA的傳輸操作。

讀寫(xiě)操作和門(mén)鈴操作主要由圖5中的7個(gè)寄存器進(jìn)行控制,這些寄存器里的值會(huì )自動(dòng)加入到包中。在SRIO總線(xiàn)上,每個(gè)SRIO設備都有一個(gè)相應的設備地址,設備地址好比一個(gè)SRIO設備的ID,用于區別不同的SRIO設備。當SRIO總線(xiàn)上的一個(gè)SRIO設備進(jìn)行讀寫(xiě)訪(fǎng)問(wèn)時(shí),它發(fā)送的包就含有設備地址,只有自身設備地址與包的設備地址符合的SRIO設備才會(huì )對此次傳輸做出響應。SRIO Address MSB和SRIO Address LSB共同構成64-bit尋址,指示的是被訪(fǎng)問(wèn)SRIO設備的地址。開(kāi)發(fā)板上只用到32-bit尋址,因此,SRIO Address MSB為0,SRIO Address LSB指示的是被訪(fǎng)問(wèn)的DSP的地址。DSP address指示的是本地DSP的地址。Byte_count這一項給出的是傳輸字節數,一次讀寫(xiě)操作(可以是很多包)最多可以傳送4Kbytes的數據。DestID是目標設備的ID號,用來(lái)區分SRIO總線(xiàn)上的設備。Drbll Info用于門(mén)鈴事件,通過(guò)此位段的設置,從而向目標DSP產(chǎn)生中斷。Packet Type用來(lái)指示此次傳輸的類(lèi)型,例如NREAD、NWRITE和DOORBELL等。

圖6是SRIO模塊的NREAD、NWRITE和DOORBELL程序編寫(xiě)流程圖。首先初始化SRIO端口,此過(guò)程主要需要配置和使能PLL模塊,使能并配置接收模塊,使能并配置發(fā)送模塊,使能并配置中斷模塊。配置這些模塊特別要注意的是使主DSP和從DSP的時(shí)鐘模塊工作在相同的波特率。初始化完成后,查詢(xún)SRIO鏈路是否成功建立,如果SRIO鏈路沒(méi)有建立,則重新初始化SRIO端口,直到SRIO鏈路建立為止。鏈路建立后就可以進(jìn)行讀寫(xiě)操作和門(mén)鈴操作,兩片DSP之間可以進(jìn)行的數據傳輸。實(shí)際測試表明,DSP間的數據傳輸可工作于1x和4x模式,每種模式可以正常工作于每通道3.125Gbps 的傳輸速率。

3 C6455間的SRIO加載

3.1 C6455引導模式

在C6455的地址空間0x00100000到0x00107FFF集成了32K的內部ROM。此ROM中固化了一段 “boot loader”的引導代碼,它主要作用是在DSP上電時(shí),對DSP進(jìn)行必要的配置,以便輔助HPI/PCI/SRIO等進(jìn)行加載;另外,它還可以將代碼從外部存儲器讀到內部L2 SRAM,以完成代碼加載。

交換機相關(guān)文章:交換機工作原理


合成孔徑雷達相關(guān)文章:合成孔徑雷達原理


關(guān)鍵詞: 接口 設計 SRIO 高速 TMS320C6455 基于

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>