Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備的制作方法
【專利摘要】本發(fā)明涉及一種Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,包括有設(shè)備本體,其特點(diǎn)是:設(shè)備本體內(nèi)設(shè)置有Crossbar總線,在Crossbar總線上連接有相互數(shù)據(jù)通訊的功能控制裝置、讀數(shù)據(jù)FIFO裝置、寫數(shù)據(jù)FIFO裝置、地址FIFO裝置、控制FIFO裝置、地址產(chǎn)生裝置,至少3個(gè)N位的數(shù)據(jù)選擇器MUX101、數(shù)據(jù)選擇器MUX102和數(shù)據(jù)選擇器MUX103,二輸入或門。由此,通過(guò)AHB總線,與各個(gè)功能FIFO裝置相配合,構(gòu)成有效的轉(zhuǎn)接橋結(jié)構(gòu),實(shí)現(xiàn)Crossbar總線中主設(shè)備向AHB總線中的從設(shè)備發(fā)起的讀/寫操作,使數(shù)據(jù)在滿足兩邊總線各自的時(shí)序規(guī)范的同時(shí)可以無(wú)差錯(cuò)的進(jìn)行通信。
【專利說(shuō)明】Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,尤其涉及一種Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備。
【背景技術(shù)】
[0002]AHB(Advanced High-performance Bus)總線規(guī)范是AMBA總線規(guī)范的一部分。AMBA總線規(guī)范是ARM公司提出的總線規(guī)范。由于AMBA的規(guī)范是對(duì)外開放的,利用許可條款設(shè)計(jì)者可以免費(fèi)的開發(fā)自己的AMBA接口,使得AMBA片上總線技術(shù)得到廣泛的應(yīng)用。
[0003]AHB總線規(guī)范用來(lái)作為SoC設(shè)計(jì)的內(nèi)部高速總線,掛載高速設(shè)備。AHB總線系統(tǒng)由主設(shè)備、從設(shè)備和基礎(chǔ)設(shè)備構(gòu)成?;A(chǔ)設(shè)備由仲裁器、數(shù)據(jù)多路選擇器、地址控制多路選擇器和譯碼器構(gòu)成。由需要占用總線的主設(shè)備向仲裁器提出占用總線請(qǐng)求,仲裁器授權(quán)給指定的主設(shè)備。任一時(shí)間周期只有一個(gè)主設(shè)備可以接入總線,對(duì)其指定的從設(shè)備進(jìn)行讀寫操作??偩€統(tǒng)一規(guī)劃從設(shè)備的地址,譯碼器根據(jù)地址選擇哪個(gè)從設(shè)備與主設(shè)備進(jìn)行數(shù)據(jù)通信。授權(quán)訪問(wèn)機(jī)制通過(guò)多路選擇器實(shí)現(xiàn):仲裁器將獲得授權(quán)的主設(shè)備序號(hào)傳輸給地址和寫數(shù)據(jù)多路,以選擇哪個(gè)主設(shè)備接入總線;地址譯碼器根據(jù)主設(shè)備需要訪問(wèn)的地址選擇主設(shè)備,并為寫數(shù)據(jù)多路提供控制信號(hào)以選通相應(yīng)的從設(shè)備。
[0004]主設(shè)備必須獲得授權(quán)接入總線,才可以進(jìn)行AHB傳輸。這一過(guò)程開始于總線向仲裁器發(fā)出請(qǐng)求信號(hào),然后仲裁器決定哪個(gè)主設(shè)備可以獲得授權(quán)接入總線。
[0005]獲得授權(quán)的總線開始AHB傳輸,首先發(fā)出地址和控制信號(hào)。這些信號(hào)提供地址信息、傳輸方向和帶寬以及burst類型。根據(jù)地址和控制信號(hào)確定主設(shè)備與哪個(gè)從設(shè)備鏈接,進(jìn)行數(shù)據(jù)傳輸,數(shù)據(jù)傳輸通過(guò)數(shù)據(jù)總線完成。為避免出現(xiàn)三態(tài)總線,AHB將讀寫總線分開,寫數(shù)據(jù)總線用于從主設(shè)備到從設(shè)備的數(shù)據(jù)傳輸,讀數(shù)據(jù)總線用于從從設(shè)備到主設(shè)備的數(shù)據(jù)傳輸。每比傳輸包括一個(gè)地址和控制周期,一個(gè)或多個(gè)數(shù)據(jù)周期。地址控制周期不能被擴(kuò)展,因此從設(shè)備必須在一個(gè)周期采樣地址信號(hào)。數(shù)據(jù)周期可以通過(guò)HREADY信號(hào)擴(kuò)展。但HREADY為低時(shí)給傳輸加入一個(gè)等待狀態(tài)以使從設(shè)備從設(shè)備獲得額外的時(shí)間來(lái)提供或采樣數(shù)據(jù)。另外從設(shè)備通過(guò)響應(yīng)信號(hào)HRESP反映傳輸狀態(tài)。
[0006]一般情況下主設(shè)備完成的完整的burst傳輸,仲裁器才會(huì)授權(quán)給其他的主設(shè)備接入總線。然而為避免過(guò)大的判決延遲,仲裁器也可能打斷burst傳輸。在這種情況下主設(shè)備必須請(qǐng)求再次接入總線以進(jìn)行中斷的burst的剩余部分的傳輸。
[0007]Crossbar (即CrossPoint)被稱為交叉開關(guān)矩陣或縱橫式交換矩陣,它是業(yè)界公認(rèn)的用于構(gòu)建大容量系統(tǒng)的首選交換網(wǎng)絡(luò)結(jié)構(gòu)??偩€交換、環(huán)形交換和共享內(nèi)存交換結(jié)構(gòu)都是某種程度上的共享帶寬,而Crossbar結(jié)構(gòu)的交換網(wǎng)完全突破了這種限制,在交換網(wǎng)絡(luò)內(nèi)部沒(méi)有帶寬的瓶頸,不會(huì)因?yàn)閹捹Y源不夠而產(chǎn)生阻塞。Crossbar結(jié)構(gòu)的交換網(wǎng)采用了一種矩陣結(jié)構(gòu)實(shí)現(xiàn)了無(wú)阻塞交換。Crossbar交換網(wǎng)絡(luò)在數(shù)據(jù)平面沒(méi)有任何瓶頸。這正是因?yàn)镃rossbar引入了交換矩陣這種新的交換方式,摒棄了共享帶寬的交換方式,在數(shù)據(jù)交換方式上是一種革命性的變化。Crossbar交換網(wǎng)的擴(kuò)展能力非常強(qiáng),交換容量可以做的很大,基本不受硬件條件限制,目前單顆芯片交換容量在256G - 700G之間,多顆芯片可以構(gòu)建T級(jí)乃至幾T容量的大型交換網(wǎng)絡(luò),足以滿足當(dāng)前和未來(lái)幾年網(wǎng)絡(luò)對(duì)交換容量的需求,并且隨著硬件集成技術(shù)的進(jìn)步,單顆Crossbar芯片支持的容量會(huì)更大。
[0008]每一條輸入線路與每個(gè)輸出線路都有一個(gè)交叉點(diǎn)。在交叉點(diǎn)處由一個(gè)半導(dǎo)體開關(guān)連接輸入線路與輸出線路。當(dāng)來(lái)自某個(gè)接口的輸入線路需要交換到另一個(gè)接口的輸出點(diǎn)時(shí),在CPU或交換矩陣控制器的控制下,將交叉點(diǎn)的開關(guān)連接,數(shù)據(jù)就發(fā)送到另一個(gè)接口。
【發(fā)明內(nèi)容】
[0009]本發(fā)明的目的就是為了解決現(xiàn)有技術(shù)中存在的上述問(wèn)題,提供一種Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備。
[0010]本發(fā)明的目的通過(guò)以下技術(shù)方案來(lái)實(shí)現(xiàn):
[0011]Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,包括有設(shè)備本體,其中:所述的設(shè)備本體內(nèi)設(shè)置有Crossbar總線,在Crossbar總線上連接有相互數(shù)據(jù)通訊的功能控制裝置、讀數(shù)據(jù)FIFO裝置、寫數(shù)據(jù)FIFO裝置、地址FIFO裝置、控制FIFO裝置、地址產(chǎn)生裝置,至少3個(gè)N位的數(shù)據(jù)選擇器MUX101、數(shù)據(jù)選擇器MUX102和數(shù)據(jù)選擇器MUX103,二輸入或門;SAHB總線數(shù)據(jù)位寬為L(zhǎng),Crossbar的位寬為M,L小于等于M,并定義P=M/L。
[0012]上述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其中:所述的地址產(chǎn)生裝置的地址輸入端口為dinlOl、輸出端口為doutlOl?doutlOP,由Crossbar總線的地址線Caddr輸入到地址產(chǎn)生裝置的dinlOl端口 ;由地址產(chǎn)生裝置產(chǎn)生地址信號(hào)daddrlOl?daddrlOP輸入到地址FIFO裝置的寫數(shù)據(jù)端口 daddr_inl01?daddr_inlOP ;其中地址信號(hào) daddrlOl ?daddrlOP 之間的關(guān)系為,daddr IOI =Cdaddr > daddr 102=Caddr+l >daddrl03=Caddr+2,直至 daddr I OP=Caddr+P。
[0013]進(jìn)一步地,上述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其中:所述的控制FIFO裝置,包括有寫時(shí)鐘輸入端口 wclklOl,讀時(shí)鐘輸入端口 rclklOl,控制輸入端P writen_inl01和readen_inl01,控制信息輸入端P為write_inl0,控制信息輸出端口 write_outl01 ?write_outl0P,空滿狀態(tài)輸出端 口 read_outl01, write_outl01,由Crossbar總線時(shí)鐘TCLK輸入給控制FIFO裝置的寫時(shí)鐘端口 wclklOl,由AHB的總線時(shí)鐘HCLK輸入給控制FIFO裝置讀時(shí)鐘端口 rclklOl ;由功能控制裝置coutlOla和coutlOlb端口產(chǎn)生的read_enl01和write_enl01信號(hào)輸入到控制輸入端口 writen_inl01和readen_inlOl ;由Crossbar總線中的Cwrite信號(hào)輸入到信息輸入端write_inl0端口,同時(shí)還要輸入到或門OrlO的輸入I端口 ;由read_outl01端口和write_outl01端口產(chǎn)生Read_fulllOl、Write_fulll01輸入給功能控制裝置的控制coinlOla和coinlOlb端口;由write_outl01 ?write_outl0P 端 口產(chǎn)生 P 個(gè)控制信號(hào) writelOl ?writelOP 輸入到 P 位的數(shù)據(jù)選擇器MUX101的數(shù)據(jù)端口。
[0014]更進(jìn)一步地,上述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其中:所述的地址FIFO裝置,包括有:寫時(shí)鐘輸入端口 wclkl02,讀時(shí)鐘輸入端口 rclkl02,控制輸入端口 writen_inl02和readen_inl02,地址信息輸入端口為addr_inl0,控制信息輸出a端口ddr_outl01?addr_outl0P,空滿狀態(tài)輸出端口 read_outl02、空滿狀態(tài)輸出端口 write_outl02 ;由Crossbar總線時(shí)鐘TCLK輸入給控制FIFO裝置的寫時(shí)鐘端口 wclkl02,由AHB的總線時(shí)鐘HCLK輸入給控制FIFO裝置讀時(shí)鐘端口 rclkl02 ;由功能控制裝置coutl02a和coutl02b端口產(chǎn)生的read—enl02和write—enl02信號(hào)輸入到控制輸入端口 writen—inl02和readen—inl02 ;由Crossbar總線中的Caddr信號(hào)輸入到信息輸入端addr—inlO端口;由read_outl02 端口和 write—outl02 端口產(chǎn)生 Read—fulll02、Write—fulll02 輸入給功能控制裝置的控制coinl02a和coinl02b端口;由addr—out 101?addr—outIOP端口產(chǎn)生P個(gè)地址信號(hào)addrlOl?addrlOP,輸入到P位的數(shù)據(jù)選擇器MUX102的數(shù)據(jù)端口。
[0015]更進(jìn)一步地,上述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其中:所述的寫數(shù)據(jù)FIFO裝置,包括有寫時(shí)鐘輸入端口 wclkl03,讀時(shí)鐘輸入端口 rclkl03,控制輸入端口 writen—inl03和readen—inl03,數(shù)據(jù)信息輸入端口為wdata—inlO,控制信息輸出端口 wdata—outlOl ?wdata—out 10P,空滿狀態(tài)輸出端 口 read—out 103,write—out 103,由Crossbar總線時(shí)鐘TCLK輸入給控制FIFO裝置的寫時(shí)鐘端口 wclkl03,由AHB的總線時(shí)鐘CCLK輸入給控制FIFO裝置讀時(shí)鐘端口 rclkl03 ;由功能控制裝置coutl03a和coutl03b端口產(chǎn)生的 read—en 103 和 write—en 103 信號(hào)輸入到控制輸入 writen—in 103 和 readen—in 103端口;由Crossbar總線中的Cwdata信號(hào)輸入到信息輸入端wdata—inlO端口;由read—outl03 端 口和 write—outl03 端 口產(chǎn)生 Read—fulll03、Write—fulll03 輸入給功能控制裝置的控制 coinl03a 和 coinl03b 端口;由 wdata—outlOl ?wdata—outlOP 端 口產(chǎn)生 P 個(gè)數(shù)據(jù)信號(hào)addrlOl?addrlOP輸入到P位的數(shù)據(jù)選擇器MUX103的數(shù)據(jù)端口。
[0016]更進(jìn)一步地,上述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其中:所述的讀數(shù)據(jù)FIFO裝置,包括寫時(shí)鐘輸入端口 wclkl04,讀時(shí)鐘輸入端口 ixlkKM,控制輸入端口 writen—inl04和readen—inl04,數(shù)據(jù)信息輸入端口為rdata—inlO,控制信息輸出端口 rdata—outlO,空滿狀態(tài)輸出端口 read—outl04,write—outl04 ;端口的連接關(guān)系:由Crossbar總線時(shí)鐘TCLK輸入給控制FIFO裝置的寫時(shí)鐘端口 wclkl04,由AHB的總線時(shí)鐘HCLK輸入給控制FIFO裝置讀時(shí)鐘端口 rclkl04 ;由功能控制裝置coutl04a和coutl04b端口產(chǎn)生的read—enl04和write—enl04信號(hào)輸入到控制輸入writen—inl04和readen—inl04端口;由AHB總線中的Hrdata信號(hào)輸入到信息輸入端rdata—inlO端口;由read—out 104 端 口和 write—out 104 端 口產(chǎn)生 Read—full 104、Write—full 104 輸入給功能控制裝置的控制coinl04a和coinl04b端口;由rdata—outlO端口產(chǎn)生讀數(shù)據(jù)信號(hào)CrdatalO輸送到Crossbar總線的讀數(shù)據(jù)線Hrdata中。
[0017]更進(jìn)一步地,上述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其中:所述的功能控制裝置,包括,時(shí)鐘信號(hào)輸入端口:clkl0 ;控制信號(hào)輸入端口包括有coinlOla端口、coinlOlb 端口、coinl02a 端口、coinl02b 端口、coinl03a 端口、coinl03b 端口、coinl04a端口、coinl04b端口、HsellO端口、Hready端口、Hgrant端口 ;控制信號(hào)輸出端口包括coutlOla 端 口、coutl01b 端 口、coutl02a 端 口、coutl02b 端 口、coutl03a 端 口、coutl03b 端口、cout 104a 端 口、cout 104b 端口、se1lOl 端口、selol02 端口、selol03 端口 ;由 Crossbar總線時(shí)鐘TCLK輸入給功能控制裝置時(shí)鐘端口 clklO ;由Crossbar總線選中信號(hào)Csel輸入給功能控制裝置控制信號(hào)輸入端口 CsellO ;由AHB總線選中信號(hào)Hgrant輸入給功能控制裝置控制信號(hào)輸入端口 HgrantlO ;由AHB總線選中信號(hào)Hready輸入給功能控制裝置控制信號(hào)輸入端口 HreadylO ;由控制FIFO裝置的read—outlOl端口和write—outlOl端口產(chǎn)生Read—fulllOl、Write—fulllOl 輸入給功能控制裝置的 coinlOla 端口和 coinlOlb 端口 ;由地址 FIFO 裝置的 read_outl02 端口和 write_outl02 端 口產(chǎn)生 Read_fulll02、ffrite_fulll02信號(hào)輸入給功能控制裝置的coinl02a端口和coinl02b端口 ;由寫數(shù)據(jù)FIFO裝置的 read_outl03 端 口和 write_outl03 端 口產(chǎn)生 Read_fulll03 信號(hào)、Write_fulll03 信號(hào)輸入給功能控制裝置的控制coinl03a端口和coinl03b端口 ;由讀數(shù)據(jù)FIFO裝置的read_out 104 端 口 和 write_outl04 端 口產(chǎn)生 Read_fulll04 信號(hào)、Write_fulll04 信號(hào)輸入給功能控制裝置的控制coinl04a端口和coinl04b端口 ;由功能控制裝置coutlOla端口和coutlOlb端口分別產(chǎn)生的read_enl01信號(hào)和write_enl01信號(hào)輸入到控制FIFO裝置的writen_inl01 端 P和 readen_inl01 端 P ;由功能控制裝置 coutl02a 端 P 和 coutl02b 端口分別產(chǎn)生的read_enl02信號(hào)和write_enl02信號(hào)輸入到地址FIFO裝置的writen_inlO端口 2和readen_inl02端口 ;由功能控制裝置coutl03a端口和coutl03b端口分別產(chǎn)生的read_enl03信號(hào)和write_enl03信號(hào)輸入到寫數(shù)據(jù)FIFO裝置的writen_inl03端口和readen_inl03端口;由功能控制裝置coutl04a端口和coutl04b端口分別產(chǎn)生的read_enl04信號(hào)和write_enl04信號(hào)輸入到讀數(shù)據(jù)FIFO裝置的writen_inl04和readen_inl04端口,同時(shí)Read_enl04信號(hào)還要輸入給二輸入或門OrlO的輸入2端口 ;由功能控制裝置selolOl端口輸出sellOl信號(hào)到數(shù)據(jù)選擇器MUXlOl的選擇端口,selol02端口輸出sell02信號(hào)到數(shù)據(jù)選擇器MUX102的選擇端,selol03端口輸出sell03信號(hào)到數(shù)據(jù)選擇器MUX103的選擇端口 ;由功能控制裝置burstlO端口輸出HburstlO信號(hào)到AHB總線的Hburst接口 ;由功能控制裝置burstlO端口輸出HburstlO信號(hào)到AHB總線的Hburst接口 ;由功能控制裝置SizelO端口輸出HsizelO信號(hào)到AHB總線的Hsize接口 ;由功能控制裝置burstlO端口輸出HburstlO信號(hào)到AHB總線的Hburst接口 ;由功能控制裝置busreqlO端口輸出HbusreqlO信號(hào)到AHB總線的Hbusreq接口。
[0018]更進(jìn)一步地,上述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其中:所述的功能控制裝置包括九種工作狀態(tài),待機(jī)狀態(tài),開始狀態(tài),寫數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài),單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài);連續(xù)寫的數(shù)據(jù)信息發(fā)送狀態(tài),保持狀態(tài),讀數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài),讀數(shù)據(jù)的等待狀態(tài),讀數(shù)據(jù)發(fā)送狀態(tài);所述各個(gè)狀態(tài)的轉(zhuǎn)換為,I)在待機(jī)狀態(tài)下,當(dāng)HsellO為高時(shí)進(jìn)入開始狀態(tài),否則一直停留在該待機(jī)狀態(tài);2)開始狀態(tài);當(dāng)HgrantlO信號(hào)為低的時(shí)候停留在本狀態(tài);當(dāng)HgrantlO信號(hào)為高的時(shí)候再判斷要對(duì)從機(jī)操作的控制信號(hào)Cwrite,當(dāng)CwritelO信號(hào)為高時(shí),下一狀態(tài)為寫數(shù)據(jù)等待狀態(tài);當(dāng)CwritelO信號(hào)為低時(shí),下一狀態(tài)為地址、控制、數(shù)據(jù)信息發(fā)送狀態(tài);3)寫數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài);該狀態(tài)進(jìn)入下一狀態(tài)前提條件是在HreadylO為高時(shí),若此時(shí)Read_fulll02=l,則進(jìn)入單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài);若此時(shí)Read_fulll02=l,則進(jìn)入連續(xù)寫的數(shù)據(jù)信息發(fā)送狀態(tài);Hreadyl0為低,則一直停留在該狀態(tài);4)單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài),下一狀態(tài)為待機(jī)狀態(tài);5)連續(xù)寫的數(shù)據(jù)信息發(fā)送狀態(tài);若HreadylO=I,且Read_fulll02=l,則根據(jù)之前壓入控制FIFO裝置的下一控制位是讀還是寫命令來(lái)確定下一狀態(tài),若控制FIFO裝置的下一位為高,則跳轉(zhuǎn)到單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài);若控制FIFO裝置的下一位為低,則跳轉(zhuǎn)到讀數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài);若HreadylO=I,且Read_fulll02=0,則停留在此狀態(tài);若HreadylO=O,無(wú)論Read_fulll02是何值,進(jìn)入保持狀態(tài);6)保持狀態(tài);若HreadylO=O,無(wú)論另外兩個(gè)信號(hào)是何狀態(tài),都繼續(xù)停留在此狀態(tài);若HreadylO=I,再向下判斷,若Read_fulll02=0,則進(jìn)入連續(xù)寫的數(shù)據(jù)信息發(fā)送狀態(tài);gRead_fulll02=l,則再向下一層判斷,若控制FIFO裝置的下一位為高,則跳轉(zhuǎn)到單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài);若控制FIFO裝置的下一位為低,則跳轉(zhuǎn)到讀數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài);7)讀數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài),下一狀態(tài)為讀數(shù)據(jù)等待狀態(tài);8)讀數(shù)據(jù)的等待狀態(tài);若Read_fulll04=0,則跳轉(zhuǎn)到讀數(shù)據(jù)發(fā)送狀態(tài);gRead_fU11104=l,則依舊停留在此狀態(tài);9)讀數(shù)據(jù)發(fā)送狀態(tài),下一狀態(tài)為待機(jī)狀態(tài)。
[0019]更進(jìn)一步地,上述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其中:1)待機(jī)狀態(tài),用于給轉(zhuǎn)換橋進(jìn)行初始化,進(jìn)入待機(jī)狀態(tài)要對(duì)四個(gè)FIFO裝置做清空初始化,清空數(shù)據(jù)選擇器的選擇信號(hào),清除FIFO裝置的讀與寫的使能;2)在開始狀態(tài)下,輸出地址FIFO裝置寫使能信號(hào)、控制FIFO裝置寫使能信號(hào)和寫數(shù)據(jù)FIFO裝置的寫使能信號(hào)用來(lái)存儲(chǔ)地址、控制信息和數(shù)據(jù)信息;發(fā)送HbusreqlO信號(hào)給AHB總線中的仲裁器;其余信號(hào)依舊保持上一狀態(tài)的值;3)在寫數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài)下,發(fā)送地址FIFO裝置的讀使能信號(hào)、控制FIFO裝置的讀使能信號(hào);其中MUX的選擇信號(hào)sell=sell+l、sel2=sel2+l ;其余信號(hào)依舊保持上一狀態(tài)的值;4)在單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài)下發(fā)送寫數(shù)據(jù)FIFO裝置的讀使能信號(hào),清空地址FIFO裝置的讀使能信號(hào)和控制FIFO裝置的讀使能信號(hào);其余信號(hào)依舊保持上一狀態(tài)的值;5)在連續(xù)寫的數(shù)據(jù)信息發(fā)送狀態(tài)下發(fā)送寫數(shù)據(jù)FIFO裝置的讀使能信號(hào),并維持地址FIFO裝置的讀使能信號(hào)和控制FIFO裝置的讀使能信號(hào);其中MUX的選擇信號(hào)sell=sell+l、sel2=sel2+l、sel3=sel3+3 ;并且在該狀態(tài)向AHB總線中的從設(shè)備發(fā)送數(shù)據(jù)成組傳輸信息;其余信號(hào)依舊保持上一狀態(tài)的值;6)在保持狀態(tài)下,該狀態(tài)所有信號(hào)保持上一狀態(tài)的值;7)在讀數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài)下,發(fā)送地址FIFO裝置的讀使能信號(hào)、控制FIFO裝置的讀使能信號(hào)和讀數(shù)據(jù)FIFO裝置的寫使能信號(hào);其余信號(hào)依舊保持上一狀態(tài)的值;8)在讀數(shù)據(jù)的等待狀態(tài)下,該狀態(tài)所有信號(hào)保持上一狀態(tài)的值;9)在讀數(shù)據(jù)發(fā)送狀態(tài)下,發(fā)送讀數(shù)據(jù)FIFO裝置的讀使能信號(hào);其余信號(hào)依舊保持上一狀態(tài)的值。
[0020]再進(jìn)一步地,上述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其中:所述的數(shù)據(jù)選擇器MUX101產(chǎn)生CwritelO信號(hào)輸送到Crossbar總線上的控制線Cwrite,數(shù)據(jù)選擇器MUX102產(chǎn)生CaddrlO信號(hào)輸送到Crossbar總線上的地址線Caddr,數(shù)據(jù)選擇器MUX103產(chǎn)生CwdatalO信號(hào)輸送到Crossbar總線上的寫數(shù)據(jù)線Cwdata,所述二輸入或門產(chǎn)生HreadylO信號(hào)輸入給AHB總線的準(zhǔn)備好信號(hào)Hready。
[0021]本發(fā)明技術(shù)方案的優(yōu)點(diǎn)主要體現(xiàn)在:通過(guò)AHB總線,與各個(gè)功能FIFO裝置相配合,構(gòu)成有效的轉(zhuǎn)接橋結(jié)構(gòu),實(shí)現(xiàn)Crossbar總線中主設(shè)備向AHB總線中的從設(shè)備發(fā)起的讀/寫操作,使數(shù)據(jù)在滿足兩邊總線各自的時(shí)序規(guī)范的同時(shí)可以無(wú)出錯(cuò)的進(jìn)行通信。
【專利附圖】
【附圖說(shuō)明】
[0022]圖1是Crossbar到AHB同等位寬數(shù)據(jù)傳輸?shù)膶懖僮魇疽鈭D。
[0023]圖2是Crossbar到AHB不同位寬數(shù)據(jù)傳輸?shù)膶懖僮?AHB-32位,Crossbar-128位)示意圖。
[0024]圖3是Crossbar到AHB同等位寬數(shù)據(jù)傳輸?shù)淖x操作示意圖。
[0025]圖4是Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備處理同等位寬轉(zhuǎn)換橋連接構(gòu)造不意圖。
[0026]圖5Cr0SSbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備處理不同位寬轉(zhuǎn)換橋連接構(gòu)造示意圖。
[0027]圖6是Crossbar到AHB轉(zhuǎn)換橋狀態(tài)機(jī)示意圖。
【具體實(shí)施方式】[0028]如圖1~6所示的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,包括有設(shè)備本體,其特別之處在于在于:設(shè)備本體內(nèi)設(shè)置有Crossbar總線,在Crossbar總線上連接有相互數(shù)據(jù)通訊的功能控制裝置、讀數(shù)據(jù)FIFO裝置、寫數(shù)據(jù)FIFO裝置、地址FIFO裝置、控制FIFO裝置、地址產(chǎn)生裝置,至少3個(gè)N位的數(shù)據(jù)選擇器MUXlOl、N位的數(shù)據(jù)選擇器MUX102和N位的數(shù)據(jù)選擇器MUX103,二輸入或門OrlO。數(shù)據(jù)選擇器MUX101產(chǎn)生CwritelO信號(hào)輸送到Crossbar總線上的控制線Cwrite,數(shù)據(jù)選擇器MUX102產(chǎn)生CaddrlO信號(hào)輸送到Crossbar總線上的地址線Caddr,數(shù)據(jù)選擇器MUX103產(chǎn)生CwdatalO信號(hào)輸送到Crossbar總線上的寫數(shù)據(jù)線Cwdata,所述二輸入或門OrlO產(chǎn)生HreadylO信號(hào)輸入給AHB總線的準(zhǔn)備好信號(hào)Hready。同時(shí),為了便于實(shí)現(xiàn)數(shù)據(jù)處理,設(shè)AHB總線數(shù)據(jù)位寬為L(zhǎng),Crossbar的位寬為M(L≤M),并定義P=M/L。
[0029]就本發(fā)明一較佳的實(shí)施方式來(lái)看,地址產(chǎn)生裝置的地址輸入端口為dinlOl、輸出端口為doutlOl~doutlOP,由Crossbar總線的地址線Caddr輸入到地址產(chǎn)生裝置的dinlOl端口。由地址產(chǎn)生裝置產(chǎn)生地址信號(hào)daddrlOl~daddrlOP輸入到地址FIFO裝置的寫數(shù)據(jù)端口 daddr_inl01~daddr_inl0P。其中地址信號(hào)daddrlOl~daddrlOP之間的關(guān)系為,daddr IOI =Cdaddr > daddr 102=Caddr+l、daddrl03=Caddr+2,直至 daddr I OP=Caddr+P。
[0030]對(duì)于控制FIFO裝置來(lái)說(shuō),包括有寫時(shí)鐘輸入端口 wclklOl,讀時(shí)鐘輸入端口rclklOl,控制輸入端P writen_inl01和readen_inl01,控制信息輸入端P為write_inlO,控制信息輸出端口 write_outl01~write_outl0P,空滿狀態(tài)輸出端口 read_outl01,write_outl01o實(shí)際使用時(shí),由Crossbar總線時(shí)鐘TCLK輸入給控制FIFO裝置的寫時(shí)鐘端口 wclklOl,由AHB的總線時(shí)鐘HCLK輸入給控制FIFO裝置讀時(shí)鐘端口 rclklOl。由功能控制裝置coutlOla和coutlOlb端口產(chǎn)生的read_enl01和write_enl01信號(hào)輸入到控制輸入端口 writen_inl01和readen_inl01。由Crossbar總線中的Cwrite信號(hào)輸入到信息輸入端write_inl0端口,同時(shí)還要輸入到或門OrlO的輸入I端口。由read_outl01端口和write_outl01端口產(chǎn)生Read_fulll01、Write_fulll01輸入給功能控制裝置的控制coinlOla 和 coinlOlb 端口。由 write_outl01 ~write_outl0P 端口產(chǎn)生 P (P=M/L)個(gè)控制信號(hào)writelOl~writelOP輸入到P位的數(shù)據(jù)選擇器MUX101的數(shù)據(jù)端口。
[0031]同時(shí),采用的地址FIFO裝置,包括有:寫時(shí)鐘輸入端口 wclkl02,讀時(shí)鐘輸入端口rclkl02,控制輸入端口 writen_inl02 和 readen_inl02,地址信息輸入端口為 addr_inl0,控制信息輸出a端口 ddr_outl01~addr_outl0P,空滿狀態(tài)輸出端口 read_outl02、空滿狀態(tài)輸出端口 write_outl02。實(shí)際運(yùn)行時(shí),由Crossbar總線時(shí)鐘TCLK輸入給控制FIFO裝置的寫時(shí)鐘端口 wclkl02,由AHB的總線時(shí)鐘HCLK輸入給控制FIFO裝置讀時(shí)鐘端口 rclkl02。由功能控制裝置cout 102a和cout 102b端口產(chǎn)生的read_enl02和write_enl02信號(hào)輸入到控制輸入端口 writen_inl02和readen_inl02。由Crossbar總線中的Caddr信號(hào)輸入到信息輸入端 addr_inl0 端口。由 read_outl02 端口和 write_outl02 端口產(chǎn)生 Read_fulll02、Write_fulll02輸入給功能控制裝置的控制coinl02a和coinl02b端口。由addr_outl01~addr—outlOP端口產(chǎn)生P個(gè)地址信號(hào)addrlOl~addrlOP,輸入到P位的數(shù)據(jù)選擇器MUX102
的數(shù)據(jù)端口。
[0032]進(jìn)一步來(lái)看,寫數(shù)據(jù)FIFO裝置,包括有寫時(shí)鐘輸入端口 wclkl03,讀時(shí)鐘輸入端口 rclkl03,控制輸入端口 writen—inl03和readen—inl03,數(shù)據(jù)信息輸入端口為wdata—inlO,控制信息輸出端口 wdata—outlOl~wdata—outlOP,空滿狀態(tài)輸出端口 read—outl03,write_outl03o這樣,由CiOssbai*總線時(shí)鐘TCLK輸入給控制FIFO裝置的寫時(shí)鐘端口wclkl03,由AHB的總線時(shí)鐘CCLK輸入給控制FIFO裝置讀時(shí)鐘端口 ιχ11?103。由功能控制裝置cout 103a和cout 103b端口產(chǎn)生的read—enl03和write—enl03信號(hào)輸入到控制輸入writen_inl03和readen—inl03端口。由Crossbar總線中的Cwdata信號(hào)輸入到信息輸入端wdata—inlO 端口。由 read—outl03 端口和 write—outl03 端口產(chǎn)生 Read—fulll03、Write—fulll03輸入給功能控制裝置的控制coinl03a和coinl03b端口。由wdata—outlOl~wdata—outlOP端口產(chǎn)生P (P=M/L)個(gè)數(shù)據(jù)信號(hào)addrlOl~addrlOP輸入到P位的數(shù)據(jù)選擇器MUX103的數(shù)據(jù)端口。
[0033]同時(shí),讀數(shù)據(jù)FIFO裝置,包括寫時(shí)鐘輸入端口 wclkl04,讀時(shí)鐘輸入端口 rclkKM,控制輸入端口 writen—inl04和readen—inl04,數(shù)據(jù)信息輸入端口為rdata—inlO,控制信息輸出端口 rdata—outlO,空滿狀態(tài)輸出端口 read—outl04,write—outl04。各個(gè)端口的連接關(guān)系為:由CiOssbar總線時(shí)鐘TCLK輸入給控制FIFO裝置的寫時(shí)鐘端口 wclkl04,由AHB的總線時(shí)鐘HCLK輸入給控制FIFO裝置讀時(shí)鐘端口 rclkKM。由功能控制裝置coutl04a和coutl04b端口產(chǎn)生的read—enl04和write—enl04信號(hào)輸入到控制輸入writen—inl04和readen_inl04端口。由AHB總線中的Hrdata信號(hào)輸入到信息輸入端rdata—inlO端口。由read_outl04 端口和 write—outl04 端口產(chǎn)生 Read—fulll04、Write—fulll04 輸入給功能控制裝置的控制coinl04a和coinl04b端口。由rdata—outlO端口產(chǎn)生讀數(shù)據(jù)信號(hào)CrdatalO輸送到Crossbar總線的讀數(shù)據(jù) 線Hrdata中。
[0034]結(jié)合功能控制裝置來(lái)看,其包括時(shí)鐘信號(hào)輸入端口,clklO??刂菩盘?hào)輸入端口包括有 coinlOla 端口、coinlOlb 端口、coinl02a 端口、coinl02b 端口、coinl03a 端口、coinl03b 端口、coinl04a 端口、coinl04b 端口、HsellO 端口、Hready 端口、Hgrant 端口。控制信號(hào)輸出端口包括 coutlOla 端口、coutlOlb 端口、coutl02a 端口、coutl02b 端口、coutl03a 端口、coutl03b 端口、coutl04a 端口、coutl04b 端口、selolOl 端口、selol02 端口、selol03端口。由Crossbar總線時(shí)鐘TCLK輸入給功能控制裝置時(shí)鐘端口 clklO。由Crossbar總線選中信號(hào)Csel輸入給功能控制裝置控制信號(hào)輸入端口 CsellO。由AHB總線選中信號(hào)Hgrant輸入給功能控制裝置控制信號(hào)輸入端口 HgrantlO。由AHB總線選中信號(hào)Hready輸入給功能控制裝置控制信號(hào)輸入端口 HreadylO。由控制FIFO裝置的read—outlOl 端口和 write—outlOl 端口產(chǎn)生 Read—fulllOl、Write—fulllOl 輸入給功能控制裝置的 coinlOla 端口 和 coinlOlb 端口。由地址 FIFO 裝置的 read—out 102 端口 和 write—outl02端口產(chǎn)生Read—fulll02、Write—fulll02信號(hào)輸入給功能控制裝置的coinl02a端口和 coinl02b端口。由寫數(shù)據(jù)FIFO裝置的read—outl03端口和 write—outl03端口產(chǎn)生Read—fulll03信號(hào)、Write—fulll03信號(hào)輸入給功能控制裝置的控制coinl03a端口和coinl03b端口。由讀數(shù)據(jù) FIFO 裝置的 read—out 104 端口和 write—out 104 端口產(chǎn)生 Read—full 104信號(hào)、Write—fulll04信號(hào)輸入給功能控制裝置的控制coinl04a端口和coinl04b端口。由功能控制裝置coutlOla端口和coutlOlb端口分別產(chǎn)生的read_enl01信號(hào)和write_enl01信號(hào)輸入到控制FIFO裝置的writen_inl01端口和readen_inl01端口。由功能控制裝置coutl02a端口和coutl02b端口分別產(chǎn)生的read_enl02信號(hào)和write_enl02信號(hào)輸入到地址FIFO裝置的writen_inlO端口 2和readen_inl02端口。由功能控制裝置coutl03a端口和coutl03b端口分別產(chǎn)生的read_enl03信號(hào)和write_enl03信號(hào)輸入到寫數(shù)據(jù)FIFO裝置的 writen_inl03 端口和 readen_inl03 端口。由功能控制裝置 coutl04a 端口和 coutl04b端口分別產(chǎn)生的read_enl04信號(hào)和write_enl04信號(hào)輸入到讀數(shù)據(jù)FIFO裝置的writen_inl04和readen_inl04端口,同時(shí)Read_enl04信號(hào)還要輸入給二輸入或門OrlO的輸入2端口。由功能控制裝置selolOl端口輸出sellOl信號(hào)到數(shù)據(jù)選擇器MUXlOl的選擇端口,selol02端口輸出sell02信號(hào)到數(shù)據(jù)選擇器MUX102的選擇端,selol03端口輸出sell03信號(hào)到數(shù)據(jù)選擇器MUX103的選擇端口。由功能控制裝置burstlO端口輸出HburstlO信號(hào)到AHB總線的Hburst接口。由功能控制裝置burstlO端口輸出HburstlO信號(hào)到AHB總線的Hburst接口。由功能控制裝置SizelO端口輸出HsizelO信號(hào)到AHB總線的Hsize接口。由功能控制裝置burstlO端口輸出HburstlO信號(hào)到AHB總線的Hburst接口。由功能控制裝置busreqlO端口輸出HbusreqlO信號(hào)到AHB總線的Hbusreq接口。
[0035]結(jié)合本發(fā)明的實(shí)際使用情況來(lái)看,功能控制裝置包括九種工作狀態(tài):待機(jī)狀態(tài),開始狀態(tài),寫數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài),單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài)。連續(xù)寫的數(shù)據(jù)信息發(fā)送狀態(tài),保持狀態(tài),讀數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài),讀數(shù)據(jù)的等待狀態(tài),讀數(shù)據(jù)發(fā)送狀態(tài)。具體來(lái)說(shuō),各個(gè)狀態(tài)的轉(zhuǎn)換為,I)在待機(jī)狀態(tài)下,當(dāng)HsellO為高時(shí)進(jìn)入開始狀態(tài),否則一直停留在該待機(jī)狀態(tài)。2)開始狀態(tài)。當(dāng)HgrantlO信號(hào)為低(AHB總線中的仲裁器沒(méi)有給該轉(zhuǎn)換橋使用總線的權(quán)利)的時(shí)候停留在本狀態(tài)。當(dāng)HgrantlO信號(hào)為高的時(shí)候再判斷要對(duì)從機(jī)操作的控制信號(hào)Cwrite,當(dāng)CwritelO信號(hào)為高(主機(jī)發(fā)出寫數(shù)據(jù)命令)時(shí),下一狀態(tài)為寫數(shù)據(jù)等待狀態(tài)。當(dāng)CwritelO信號(hào)為低(主機(jī)發(fā)出讀數(shù)據(jù)命令)時(shí),下一狀態(tài)為地址、控制、數(shù)據(jù)信息發(fā)送狀態(tài)。3)寫數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài)。該狀態(tài)進(jìn)入下一狀態(tài)前提條件是在HreadylO為高(從機(jī)已經(jīng)準(zhǔn)備好接收數(shù)據(jù))時(shí),若此時(shí)Read_fulll02=l (地址FIFO裝置已空),則進(jìn)入單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài)。若此時(shí)ReacLful1102=1 (地址FIFO裝置非空),則進(jìn)入連續(xù)寫的數(shù)據(jù)信息發(fā)送狀態(tài)。HreadylO為低(從機(jī)沒(méi)有準(zhǔn)備好接收數(shù)據(jù)),則一直停留在該狀態(tài)。4)單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài),下一狀態(tài)為待機(jī)狀態(tài)。5)連續(xù)寫的數(shù)據(jù)信息發(fā)送狀態(tài)。若HreadylO=I,且Read_fulll02=l,則根據(jù)之前壓入控制FIFO裝置的下一控制位是讀還是寫命令來(lái)確定下一狀態(tài),若控制FIFO裝置的下一位為高(寫命令),則跳轉(zhuǎn)到單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài)。若控制FIFO裝置的下一位為低(讀命令),則跳轉(zhuǎn)到讀數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài)。若HreadylO=I,且Read_fulll02=0,則停留在此狀態(tài)。若HreadylO=O,無(wú)論Read_fulll02是何值,進(jìn)入保持狀態(tài)。6)保持狀態(tài)。若HreadylO=O,無(wú)論另外兩個(gè)信號(hào)是何狀態(tài),都繼續(xù)停留在此狀態(tài)。若HreadylO=I,再向下判斷,若ReacLfulll02=0,則進(jìn)入連續(xù)寫的數(shù)據(jù)信息發(fā)送狀態(tài)。若Read_fulll02=l,則再向下一層判斷,若控制FIFO裝置的下一位為高(寫命令),則跳轉(zhuǎn)到單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài)。若控制FIFO裝置的下一位為低(讀命令),則跳轉(zhuǎn)到讀數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài)。7)讀數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài),下一狀態(tài)為讀數(shù)據(jù)等待狀態(tài)。8)讀數(shù)據(jù)的等待狀態(tài)。若ReacLfull 104=0 (從機(jī)已經(jīng)將主機(jī)要讀的數(shù)據(jù)存儲(chǔ)至讀數(shù)據(jù)FIFO裝置),則跳轉(zhuǎn)到讀數(shù)據(jù)發(fā)送狀態(tài)。若ReacLfull 104=1 (從機(jī)還沒(méi)有將主機(jī)要讀的數(shù)據(jù)存儲(chǔ)至讀數(shù)據(jù)FIFO裝置),則依舊停留在此狀態(tài)。9)讀數(shù)據(jù)發(fā)送狀態(tài),下一狀態(tài)為待機(jī)狀態(tài)。
[0036]再進(jìn)一步結(jié)合實(shí)際處理來(lái)看,待機(jī)狀態(tài),用于給轉(zhuǎn)換橋進(jìn)行初始化,進(jìn)入待機(jī)狀態(tài)要對(duì)四個(gè)FIFO裝置做清空初始化(將每個(gè)FIFO裝置復(fù)位),清空數(shù)據(jù)選擇器的選擇信號(hào)(sell=0、sel2=0、sel3=0),清除 FIFO 裝置的讀與寫的使能(Write_enl01=0、ffrite_enl02=0、Write—enl03=0、Write—enl04=0、Read—enl01=0、Read—enl02=0、Read—enl03=0和Read—enl04=0)。2)在開始狀態(tài)下,輸出地址FIFO裝置寫使能信號(hào)(Write—enl02=l)、控制FIFO裝置寫使能信號(hào)(Write_enl01=l)和寫數(shù)據(jù)FIFO裝置的寫使能信號(hào)(Write_enl03=l)用來(lái)存儲(chǔ)地址、控制信息和數(shù)據(jù)信息。發(fā)送HbusreqlO信號(hào)(總線使用權(quán)申請(qǐng))給AHB總線中的仲裁器。其余信號(hào)依舊保持上一狀態(tài)的值。3)在寫數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài)下,發(fā)送地址FIFO裝置的讀使能信號(hào)(Read_enl02=l)、控制FIFO裝置的讀使能信號(hào)(Read_enl01=l)。其中MUX的選擇信號(hào)sell=sell+l、sel2=sel2+l。其余信號(hào)依舊保持上一狀態(tài)的值。4)在單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài)下發(fā)送寫數(shù)據(jù)FIFO裝置的讀使能信號(hào)(Read_enl03=l),清空地址FIFO裝置的讀使能信號(hào)(Read_enl02=0)和控制FIFO裝置的讀使能信號(hào)(Read_enl01=0)。其余信號(hào)依舊保持上一狀態(tài)的值。5)在連續(xù)寫的數(shù)據(jù)信息發(fā)送狀態(tài)下發(fā)送寫數(shù)據(jù)FIFO裝置的讀使能信號(hào)(Read_enl03=l),并維持地址FIFO裝置的讀使能信號(hào)(Read_enl02=l)和控制FIFO裝置的讀使能信號(hào)(Read_enl01=l )。其中MUX的選擇信號(hào)sell=sell+l、sel2=sel2+l、sel3=sel3+3。并且在該狀態(tài)向AHB總線中的從設(shè)備發(fā)送數(shù)據(jù)成組傳輸信息(Hburst、Hsize和Htrans信號(hào))。其余信號(hào)依舊保持上一狀態(tài)的值。6)在保持狀態(tài)下,該狀態(tài)所有信號(hào)保持上一狀態(tài)的值。7)在讀數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài)下,發(fā)送地址FIFO裝置的讀使能信號(hào)(Read_enl02=l)、控制FIFO裝置的讀使能信號(hào)(Read_enl01=l)和讀數(shù)據(jù)FIFO裝置的寫使能信號(hào)(Write_enl04=l )。其余信號(hào)依舊保持上一狀態(tài)的值。8)在讀數(shù)據(jù)的等待狀態(tài)下,該狀態(tài)所有信號(hào)保持上一狀態(tài)的值。9)在讀數(shù)據(jù)發(fā)送狀態(tài)下,發(fā)送讀數(shù)據(jù)FIFO裝置的讀使能信號(hào)(Read_enl04=l)。其余信號(hào)依舊保持上一狀態(tài)的值。
[0037]同樣的根據(jù)AHB地址信號(hào)和數(shù)據(jù)信號(hào)的流水線傳輸過(guò)程,需要在Corssbar至AHB增加相應(yīng)的異步FIFO裝置來(lái)保證Corssbar的主機(jī)可以順利訪問(wèn)AHB的從機(jī)。該轉(zhuǎn)換橋在Crossbar總線上作為一個(gè)從設(shè)備工作,在AHB總線中作為主設(shè)備工作。
[0038]Crossbar主機(jī)對(duì)AHB從機(jī)訪問(wèn)的信號(hào)變化時(shí)序圖如圖1 (同等位寬寫操作)、圖2為不同位寬寫操作、圖3為讀操作。電路圖如圖4和圖5所示,其中圖4為兩總線采用相同位寬時(shí)的特殊情況。圖5為一般情況,如圖5所示,該轉(zhuǎn)換橋同樣總共包括3個(gè)裝置,分別是異步FIFO裝置裝置、地址產(chǎn)生裝置和控制裝置。以及3個(gè)N位的數(shù)據(jù)選擇器和I個(gè)二輸入或門。
[0039]異步FIFO裝置裝置與AHB至Crossbar轉(zhuǎn)換橋的FIFO裝置大致相同??偣灿?個(gè)FIFO裝置組成,控制FIFO裝置、地址FIFO裝置、寫數(shù)據(jù)FIFO裝置和讀數(shù)據(jù)FIFO裝置??刂艶IFO裝置在TCLK時(shí)鐘上升沿觸發(fā)下存放Crossbar總線中主機(jī)發(fā)送過(guò)來(lái)控制信息Cwrite ;地址FIFO裝置在TCLK時(shí)鐘上升沿觸發(fā)下存放主機(jī)發(fā)送過(guò)來(lái)的地址信息Caddr ;寫數(shù)據(jù)FIFO裝置在TCLK的上升沿觸發(fā)下存放主機(jī)發(fā)送過(guò)來(lái)的數(shù)據(jù)信息Cwdata ;讀數(shù)據(jù)FIFO裝置用來(lái)存放來(lái)自AHB從機(jī)的數(shù)據(jù)。異步FIFO裝置的時(shí)序同樣由AHB的時(shí)鐘和經(jīng)過(guò)時(shí)鐘產(chǎn)生裝置后的TCLK時(shí)鐘分別控制。4個(gè)FIFO裝置裝置要求裝置內(nèi)的空滿狀態(tài)可以被控制器裝置讀到,以方便進(jìn)行下一步操作的控制。需要強(qiáng)調(diào)的是該數(shù)據(jù)FIFO裝置的位寬由位寬較小的決定。
[0040]該系統(tǒng)的的地址轉(zhuǎn)換裝置的作用也是當(dāng)兩個(gè)總線位數(shù)不匹配時(shí)用于產(chǎn)生與數(shù)據(jù)相匹配的地址。本系統(tǒng)中的三個(gè)數(shù)據(jù)選擇器的位數(shù)也要和兩總線的倍數(shù)相匹配。最后由數(shù)據(jù)選擇器組來(lái)輸出相匹配的地址、數(shù)據(jù)和控制信息給從機(jī)。
[0041]本系統(tǒng)中寫數(shù)據(jù)FIFO裝置和讀數(shù)據(jù)FIFO裝置的位寬跟隨相應(yīng)讀出總線位寬變化,寫數(shù)據(jù)FIFO裝置裝置的位寬取總線位寬較小的那位,讀數(shù)據(jù)FIFO裝置的位寬取Crossbar總線位寬。并且在位寬高于對(duì)應(yīng)數(shù)據(jù)FIFO裝置位寬的接口做相應(yīng)的數(shù)據(jù)拆分,將低位數(shù)據(jù)寫入低位的FIFO裝置,高位數(shù)據(jù)寫入高位的FIFO裝置,高位對(duì)應(yīng)的地址加上兩個(gè)總線的倍數(shù)。而在位寬低的接口則只取與之相匹配的低位作為有效位,高位丟棄。下面兩個(gè)例子可以解釋地址產(chǎn)生裝置的工作過(guò)程:
[0042]例:Crossbar為128位總線,AHB為32位總線,則寫數(shù)據(jù)FIFO裝置的位寬取32位,讀數(shù)據(jù)FIFO裝置的位寬取128位。總共四組寫數(shù)據(jù)FIFO裝置、地址FIFO裝置和控制FIFO裝置。
[0043]Crossbar 位寬(定值)/AHB 位寬(Hsize) =4
[0044]則地址產(chǎn)生裝置作用在Crossbar的主機(jī)對(duì)AHB從機(jī)寫數(shù)據(jù)上。當(dāng)寫數(shù)據(jù)時(shí)地址產(chǎn)生裝置會(huì)自動(dòng)地加4進(jìn)行對(duì)應(yīng)高字節(jié)的填充。當(dāng)數(shù)據(jù)輸出至AHB總線時(shí)通過(guò)三個(gè)2位的MUX進(jìn)行切換輸出。
[0045]而讀數(shù)據(jù)的FIFO裝置則將會(huì)從AHB讀過(guò)來(lái)的數(shù)據(jù)寫入讀數(shù)據(jù)FIFO裝置,將高16位自動(dòng)填零,對(duì)應(yīng)的地址信息不發(fā)生改變。
[0046]例:假若Crossbar為16位總線,AHB為32位總線,則相應(yīng)的寫數(shù)據(jù)FIFO裝置的位寬取32位,讀數(shù)據(jù)FIFO裝置為16位。
[0047]寫數(shù)據(jù)FIFO裝置將從Crossbar總線上傳過(guò)來(lái)的數(shù)據(jù)自動(dòng)存儲(chǔ)至低位,高位填充全零。
[0048]讀數(shù)據(jù)FIFO裝置則需要進(jìn)行數(shù)據(jù)拆分,存儲(chǔ)低16位。不同的是在這里只有低16位有效,高位無(wú)效,自動(dòng)丟棄。
[0049]由于地址位是由主機(jī)發(fā)給從機(jī),所以在讀數(shù)據(jù)時(shí)地址依舊是由主機(jī)發(fā)送過(guò)來(lái)的地址,不會(huì)發(fā)生改變。
[0050]本系統(tǒng)的控制裝置主要控制相應(yīng)FIFO裝置的寫使能和讀使能,以及完成與主設(shè)備的通信任務(wù),如圖6所示:首先,整個(gè)系統(tǒng)在接收到由主機(jī)的地址經(jīng)過(guò)譯碼后的選中信號(hào)Csel,要向AHB總線仲裁器申請(qǐng)總線的使用權(quán),當(dāng)通過(guò)仲裁獲得使用權(quán)后開始準(zhǔn)備接收Crossbar總線的信號(hào)。轉(zhuǎn)換橋會(huì)在TCLK上升沿接收到由主機(jī)發(fā)送過(guò)來(lái)的地址、控制信息和數(shù)據(jù)信息。將信息寫入對(duì)應(yīng)的FIFO裝置,同時(shí)還要將控制信息傳送給控制裝置??刂蒲b置檢測(cè)主機(jī)發(fā)過(guò)來(lái)的命令是讀還是寫。
[0051]如果檢測(cè)到是寫命令,則根據(jù)相應(yīng)的組合邏輯使信號(hào)產(chǎn)生Cready=I (從機(jī)已經(jīng)準(zhǔn)備好的信號(hào))給主機(jī),同時(shí)進(jìn)入地址發(fā)送狀態(tài)。在HCLK上升沿同步發(fā)送地址控制信息至AHB總線。下面則檢測(cè)該地址FIFO裝置是否非空,若FIFO裝置非空,則進(jìn)入成組數(shù)據(jù)發(fā)送數(shù)據(jù)狀態(tài);如果地址FIFO裝置已空則進(jìn)入單數(shù)據(jù)發(fā)送狀態(tài)。[0052]在單數(shù)據(jù)發(fā)送狀態(tài)中,要檢測(cè)從機(jī)返回來(lái)的準(zhǔn)備好信號(hào)Hready,當(dāng)信號(hào)為高,則在下一個(gè)HCLK上升沿發(fā)送數(shù)據(jù);當(dāng)Hready信號(hào)為低,則進(jìn)入等待狀態(tài),直到檢測(cè)到HCLK信號(hào)為高電平再向AHB總線發(fā)送數(shù)據(jù)。單個(gè)數(shù)據(jù)傳送完畢后根據(jù)Csel信號(hào)確定下一個(gè)狀態(tài),當(dāng)Csel=I,表明還需要繼續(xù)傳送,回到開始狀態(tài),準(zhǔn)備下一次的傳輸;當(dāng)Csel=O,表明傳輸結(jié)束,回來(lái)待機(jī)狀態(tài)。
[0053]成組數(shù)據(jù)的發(fā)送是由兩個(gè)總線不匹配所致,此時(shí)表示Crossbar總線的位數(shù)高于AHB總線的位數(shù),所以在存儲(chǔ)Corssbar的數(shù)據(jù)時(shí)要進(jìn)行數(shù)據(jù)拆分,同時(shí)地址產(chǎn)生裝置要產(chǎn)生與之匹配的地址信息。進(jìn)入該狀態(tài)后,要檢測(cè)從機(jī)返回來(lái)的準(zhǔn)備好信號(hào)Hready,當(dāng)信號(hào)為高,則在下一個(gè)HCLK上升沿發(fā)送數(shù)據(jù);iHready信號(hào)為低,則進(jìn)入等待狀態(tài),直到檢測(cè)到HCLK信號(hào)為高電平再向AHB總線發(fā)送數(shù)據(jù)。在發(fā)送數(shù)據(jù)的同時(shí)還要發(fā)送下一個(gè)數(shù)據(jù)的地址信息。也就是在下一個(gè)HCLK時(shí)鐘的上升沿同時(shí)發(fā)送下一個(gè)數(shù)據(jù)的地址信息、下一個(gè)數(shù)據(jù)控制信息和本次要發(fā)送的數(shù)據(jù)信息。同時(shí)還要通過(guò)Hburst信號(hào)、Hsize信號(hào)和Htrans信號(hào)告知從機(jī)該成組傳輸?shù)男畔ⅰ1敬蝹鬏斀Y(jié)束后根據(jù)地址FIFO裝置的空滿狀態(tài)和Hwrite信號(hào)的高低判斷下一個(gè)要進(jìn)入的狀態(tài)。當(dāng)?shù)刂稦IFO裝置已空且為寫命令(Hwrite=I),則進(jìn)入單個(gè)字節(jié)數(shù)據(jù)發(fā)送狀態(tài);當(dāng)?shù)刂稦IFO裝置非空且為寫命令(Hwrite=I),則進(jìn)入成組數(shù)據(jù)發(fā)送狀態(tài)。而檢測(cè)到Hwrite=O時(shí),進(jìn)入讀數(shù)據(jù)狀態(tài)。
[0054]如果檢測(cè)到是讀命令,則根據(jù)相應(yīng)的組合邏輯使信號(hào)產(chǎn)生Cready=O (從機(jī)沒(méi)有準(zhǔn)備好的信號(hào))給主機(jī),這時(shí)進(jìn)入地址發(fā)送狀態(tài),同樣的會(huì)在HCLK時(shí)鐘下同步發(fā)送地址和控制信息至AHB總線。然后進(jìn)入等待狀態(tài),這時(shí)控制器會(huì)檢測(cè)讀數(shù)據(jù)FIFO裝置的寫指針,當(dāng)檢測(cè)到寫指針的變動(dòng)后進(jìn)入讀數(shù)據(jù)狀態(tài),此時(shí)寫入FIFO裝置的數(shù)據(jù)通過(guò)Crdata端口發(fā)送至Crossbar總線中,并同時(shí)發(fā)送準(zhǔn)備好信號(hào)(Cready=I )。若此時(shí)從AHB傳過(guò)來(lái)的數(shù)據(jù)高于Crossbar總線的,則高位無(wú)效,故此時(shí)不需要檢測(cè)讀數(shù)據(jù)FIFO裝置的空滿狀態(tài),直接根據(jù)Csel信號(hào)確定下一個(gè)狀態(tài),當(dāng)Csel=I,表明還需要繼續(xù)傳送,回到開始狀態(tài)判斷讀寫,準(zhǔn)備下一次的傳輸;當(dāng)Csel=O,表明傳輸結(jié)束,回到待機(jī)狀態(tài)。
[0055]通過(guò)上述的文字表述可以看出,采用本發(fā)明后,通過(guò)AHB總線,與各個(gè)功能FIFO裝置相配合,構(gòu)成有效的轉(zhuǎn)接橋結(jié)構(gòu),實(shí)現(xiàn)Crossbar總線中主設(shè)備向AHB總線中的從設(shè)備發(fā)起的讀/寫操作,使數(shù)據(jù)在滿足兩邊總線各自的時(shí)序規(guī)范的同時(shí)可以無(wú)出錯(cuò)的進(jìn)行通信。
【權(quán)利要求】
1.Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,包括有設(shè)備本體,其特征在于:所述的設(shè)備本體內(nèi)設(shè)置有Crossbar總線,在Crossbar總線上連接有相互數(shù)據(jù)通訊的功能控制裝置、讀數(shù)據(jù)FIFO裝置、寫數(shù)據(jù)FIFO裝置、地址FIFO裝置、控制FIFO裝置、地址產(chǎn)生裝置,至少3個(gè)N位的數(shù)據(jù)選擇器MUX101、數(shù)據(jù)選擇器MUX102和數(shù)據(jù)選擇器MUX103,二輸入或門;設(shè)AHB總線數(shù)據(jù)位寬為L(zhǎng),Crossbar的位寬為M,L小于等于M,并定義P= M / L。
2.根據(jù)權(quán)利要求1所述的Crο s sbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其特征在于:所述的地址產(chǎn)生裝置的地址輸入端口為dinlOl、輸出端口為doutlOfdoutlOP,由Crossbar總線的地址線Caddr輸入到地址產(chǎn)生裝置的dinlOl端口;由地址產(chǎn)生裝置產(chǎn)生地址信號(hào)daddr IOfdaddrlOP輸入到地址FIFO裝置的寫數(shù)據(jù)端口 daddr_inlOl ~daddr_inlOP ;其中地址信號(hào) daddrlOl ~daddrlOP 之間的關(guān)系為,daddr IOI =Cdaddr >daddr 102=Caddr+l> daddrl03=Caddr+2,直至 daddrIOP=Caddr+P。
3.根據(jù)權(quán)利要求1所述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其特征在于:所述的控制FIFO裝置,包括有寫時(shí)鐘輸入端口 wclklOl,讀時(shí)鐘輸入端口 rclklOl,控制輸入端口 writen_inl01和readen_inl01,控制信息輸入端口為write_inlO,控制信息輸出端口 write_outl01 ~write_outlOP,空滿狀態(tài)輸出端口 read_outl01, write_outl01,由Crossbar總線時(shí)鐘TCLK輸入給控制FIFO裝置的寫時(shí)鐘端口 wclklOl,由AHB的總線時(shí)鐘HCLK輸入給控制FIFO裝置讀時(shí)鐘端口 rclklOl ;由功能控制裝置coutlOla和coutlOlb端口產(chǎn)生的read_enl01和write_enl01信號(hào)輸入到控制輸入端口 writen_inl01和readen_inlOl ;由Crossbar總線中的Cwrite信號(hào)輸入到信息輸入端write_inlO端口,同時(shí)還要輸入到或門OrlO的輸入I端口 ;由read_outl01端口和write_outl01端口產(chǎn)生Read_fulllOl、Write_fulll01輸入給功能控制裝置的控制coinlOla和coinlOlb端口 ;由write_ou1101 ^write_ou110P端口產(chǎn)生P個(gè)控制信號(hào)writelOl~writelOP輸入到P位的數(shù)據(jù)選擇器MUX101的數(shù)據(jù)端口。
4.根據(jù)權(quán)利要求1所述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其特征在于:所述的地址FIFO裝置,包括有:寫時(shí)鐘輸入端口 wclkl02,讀時(shí)鐘輸入端口 rclkl02,控制輸入端口 writen_inl02和readen_inl02,地址信息輸入端口為addr_inl0,控制信息輸出a端口 ddr_outl01~addr_outl`0P,空滿狀態(tài)輸出端口 read_outl02、空滿狀態(tài)輸出端口write_outl02 ;由Crossbar總線時(shí)鐘TCLK輸入給控制FIFO裝置的寫時(shí)鐘端口 wclkl02,由AHB的總線時(shí)鐘HCLK輸入給控制FIFO裝置讀時(shí)鐘端口 rclkl02 ;由功能控制裝置coutl02a和coutl02b端口產(chǎn)生的read_enl02和write_enl02信號(hào)輸入到控制輸入端口 writen_inl02和readen_inl02 ;由Crossbar總線中的Caddr信號(hào)輸入到信息輸入端addr_inl0端口 ;由 read_outl02 端口和 write_outl02 端口產(chǎn)生 Read_fulll02、Write_fulll02 輸入給功能控制裝置的控制coinl02a和coinl02b端口 ;由addr_outl01~addr_outl0P端口產(chǎn)生P個(gè)地址信號(hào)addr IOfaddr 10P,輸入到P位的數(shù)據(jù)選擇器MUX102的數(shù)據(jù)端口。
5.根據(jù)權(quán)利要求1所述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其特征在于:所述的寫數(shù)據(jù)FIFO裝置,包括有寫時(shí)鐘輸入端口 wclkl03,讀時(shí)鐘輸入端口 rclkl03,控制輸入端口 writen_inl03和readen_inl03,數(shù)據(jù)信息輸入端口為wdata_inl0,控制信息輸出端口 wdata_outl01 ~wdata_outl0P,空滿狀態(tài)輸出端口 read_outl03, write_outl03,由Crossbar總線時(shí)鐘TCLK輸入給控制FIFO裝置的寫時(shí)鐘端口 wclkl03,由AHB的總線時(shí)鐘CCLK輸入給控制FIFO裝置讀時(shí)鐘端口 rclkl03 ;由功能控制裝置coutl03a和coutl03b端口產(chǎn)生的 read—en 103 和 write—en 103 信號(hào)輸入到控制輸入 writen—in 103 和 readen—inl03端口;由Crossbar總線中的Cwdata信號(hào)輸入到信息輸入端wdata—inlO端口;由read—out 103 端口和 write—out 103 端口產(chǎn)生 Read—full 103、Write—full 103 輸入給功能控制裝置的控制 coinl03a 和 coinl03b 端口 ;由 wdata—out 101 ~wdata—outlOP 端口產(chǎn)生 P 個(gè)數(shù)據(jù)信號(hào)addrlOl~addrlOP輸入到P位的數(shù)據(jù)選擇器MUX103的數(shù)據(jù)端口。
6.根據(jù)權(quán)利要求1所述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其特征在于:所述的讀數(shù)據(jù)FIFO裝置,包括寫時(shí)鐘輸入端口 wclkl04,讀時(shí)鐘輸入端口 rclkKM,控制輸入端口 writen—inl04和readen—inl04,數(shù)據(jù)信息輸入端口為rdata—inlO,控制信息輸出端口 rdata—outlO,空滿狀態(tài)輸出端口 read—outl04,write—outl04 ;端口的連接關(guān)系:由Crossbar總線時(shí)鐘TCLK輸入給控制FIFO裝置的寫時(shí)鐘端口 wclkl04,由AHB的總線時(shí)鐘HCLK輸入給控制FIFO裝置讀時(shí)鐘端口 rclkl04 ;由功能控制裝置coutl04a和coutl04b端口產(chǎn)生的read—enl04和write—enl04信號(hào)輸入到控制輸入writen—inl04和readen—inl04端口;由AHB總線中的Hrdata信號(hào)輸入到信息輸入端rdata—inlO端口;由read—out 104 端口和 write—out 104 端口產(chǎn)生 Read—full 104、Write—full 104 輸入給功能控制裝置的控制coinl04a和coinl04b端口;由rdata—outlO端口產(chǎn)生讀數(shù)據(jù)信號(hào)CrdatalO輸送到Crossbar總線的讀數(shù)據(jù)線Hrdata中。
7 .根據(jù)權(quán)利要求1所述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其特征在于:所述的功能控制裝置,包括,時(shí)鐘信號(hào)輸入端口:clkl0 ;控制信號(hào)輸入端口包括有coinlOla 端口、coinlOlb 端口、coinl02a 端口、coinl02b 端口、coinl03a 端口、coinl03b端口、coinl04a 端口、coinl04b 端口、HsellO 端口、Hready 端口、Hgrant 端口 ;控制信號(hào)輸出端口包括 coutlOla 端口、coutlOlb 端口、coutl02a 端口、coutl02b 端口、coutl03a 端口、coutl03b 端口、coutl04a 端口、coutl04b 端口、selolOl 端口、selol02 端口、selol03端口 ;由Crossbar總線時(shí)鐘TCLK輸入給功能控制裝置時(shí)鐘端口 clklO ;由Crossbar總線選中信號(hào)Csel輸入給功能控制裝置控制信號(hào)輸入端口 CsellO ;由AHB總線選中信號(hào)Hgrant輸入給功能控制裝置控制信號(hào)輸入端口 HgrantlO ;由AHB總線選中信號(hào)Hready輸入給功能控制裝置控制信號(hào)輸入端口 HreadylO ;由控制FIFO裝置的read—outlOl端口和write—outlOl端口產(chǎn)生Read—fulllOl、Write—fulllOl輸入給功能控制裝置的coinlOla端口和coinlOlb 端口 ;由地址 FIFO 裝置的 read—outl02 端口和 write—outl02 端口產(chǎn)生 Read—fulll02、Write—fulll02信號(hào)輸入給功能控制裝置的coinl02a端口和coinl02b端口 ;由寫數(shù)據(jù)FIFO裝置的read—outl03端口和write—outl03端口產(chǎn)生Read—fulll03信號(hào)、Write—fulll03信號(hào)輸入給功能控制裝置的控制coinl03a端口和coinl03b端口 ;由讀數(shù)據(jù) FIFO 裝置的 read—outl04 端口和 write—outl04 端口產(chǎn)生 Read—fulll04 信號(hào)、Write—fulll04信號(hào)輸入給功能控制裝置的控制coinl04a端口和coinl04b端口 ;由功能控制裝置coutlOla端口和coutlOlb端口分別產(chǎn)生的read—en 101信號(hào)和write—en 101信號(hào)輸入到控制FIFO裝置的writen—inlOl端口和readen—inlOl端口 ;由功能控制裝置coutl02a端口和coutl02b端口分別產(chǎn)生的read—enl02信號(hào)和write—enl02信號(hào)輸入到地址FIFO裝置的 writen—inlO 端口 2 和 readen—inl02 端口 ;由功能控制裝置 coutl03a 端口和 coutl03b端口分別產(chǎn)生的read—enl03信號(hào)和write—enl03信號(hào)輸入到寫數(shù)據(jù)FIFO裝置的writen—inl03端口和readen_inl03端P ;由功能控制裝置coutl04a端P和coutl04b端P分別產(chǎn)生的read_enl04信號(hào)和write_enl04信號(hào)輸入到讀數(shù)據(jù)FIFO裝置的writen_inl04和readen_inl04端口,同時(shí)Read_enl04信號(hào)還要輸入給二輸入或門OrlO的輸入2端口;由功能控制裝置selolOl端口輸出sellOl信號(hào)到數(shù)據(jù)選擇器MUXlOl的選擇端口,selol02端口輸出sell02信號(hào)到數(shù)據(jù)選擇器MUX102的選擇端,selol03端口輸出sel 103信號(hào)到數(shù)據(jù)選擇器MUX103的選擇端口 ;由功能控制裝置burstlO端口輸出HburstlO信號(hào)到AHB總線的Hburst接口 ;由功能控制裝置burst 10端口輸出HburstlO信號(hào)到AHB總線的Hburst接口 ;由功能控制裝置SizelO端口輸出HsizelO信號(hào)到AHB總線的Hsize接口 ;由功能控制裝置burstlO端口輸出HburstlO信號(hào)到AHB總線的Hburst接口 ;由功能控制裝置busreqlO端口輸出HbusreqlO信號(hào)到AHB總線的Hbusreq接口。
8.根據(jù)權(quán)利要求7所述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其特征在于:所述的功能控制裝置包括九種工作狀態(tài),待機(jī)狀態(tài),開始狀態(tài),寫數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài),單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài);連續(xù)寫的數(shù)據(jù)信息發(fā)送狀態(tài),保持狀態(tài),讀數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài),讀數(shù)據(jù)的等待狀態(tài),讀數(shù)據(jù)發(fā)送狀態(tài);所述各個(gè)狀態(tài)的轉(zhuǎn)換為,O在待機(jī)狀態(tài)下,當(dāng)HsellO為高時(shí)進(jìn)入開始狀態(tài),否則一直停留在該待機(jī)狀態(tài);2)開始狀態(tài);當(dāng)HgrantlO信號(hào)為低的時(shí)候停留在本狀態(tài);當(dāng)HgrantlO信號(hào)為高的時(shí)候再判斷要對(duì)從機(jī)操作的控制信號(hào)Cwrite,當(dāng)CwritelO信號(hào)為高時(shí),下一狀態(tài)為寫數(shù)據(jù)等待狀態(tài);當(dāng)CwritelO信號(hào)為低時(shí),下一狀態(tài)為地址、控制、數(shù)據(jù)信息發(fā)送狀態(tài);3)寫數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài);該狀態(tài)進(jìn)入下一狀態(tài)前提條件是在HreadylO為高時(shí),若此時(shí)Read_full 102=1,則進(jìn)入單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài);若此時(shí)Read_ful1102=1,則進(jìn)入連續(xù)寫的數(shù)據(jù)信息發(fā)送狀態(tài);Hreadyl0為低,則一直停留在該狀態(tài);4)單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài),下一狀態(tài)為待機(jī)狀態(tài);5)連續(xù)寫的數(shù)據(jù)信息發(fā)送狀態(tài);若HreadylO=I,且Read_ful1102=1,則根據(jù)之前壓入控制FIFO裝置的下一控制位是讀還是寫命令來(lái)確定下一狀態(tài),若控制FIFO裝置的下一位為高,則跳轉(zhuǎn)到單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài);若控制FIFO裝置的下一位為低,則跳轉(zhuǎn)到讀數(shù)據(jù)的地址 、控制信息發(fā)送狀態(tài);若HreadylO=I,且Read_fulll02=0,則停留在此狀態(tài);若HreadylO=O,無(wú)論Read_fulll02是何值,進(jìn)入保持狀態(tài);6)保持狀態(tài);若HreadylO=O,無(wú)論另外兩個(gè)信號(hào)是何狀態(tài),都繼續(xù)停留在此狀態(tài);若HreadylO=I,再向下判斷,若Read_fulll02=0,則進(jìn)入連續(xù)寫的數(shù)據(jù)信息發(fā)送狀態(tài);若Read_fulll02=l,則再向下一層判斷,若控制FIFO裝置的下一位為高,則跳轉(zhuǎn)到單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài);若控制FIFO裝置的下一位為低,則跳轉(zhuǎn)到讀數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài);7)讀數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài),下一狀態(tài)為讀數(shù)據(jù)等待狀態(tài);8)讀數(shù)據(jù)的等待狀態(tài);若Read_fulll04=0,則跳轉(zhuǎn)到讀數(shù)據(jù)發(fā)送狀態(tài);若Read_fulll04=l,則依舊停留在此狀態(tài);9)讀數(shù)據(jù)發(fā)送狀態(tài),下一狀態(tài)為待機(jī)狀態(tài)。
9.根據(jù)權(quán)利要求8所述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其特征在于:I)待機(jī)狀態(tài),用于給轉(zhuǎn)換橋進(jìn)行初始化,進(jìn)入待機(jī)狀態(tài)要對(duì)四個(gè)FIFO裝置做清空初始化,清空數(shù)據(jù)選擇器的選擇信號(hào),清除FIFO裝置的讀與寫的使能;2)在開始狀態(tài)下,輸出地址FIFO裝置寫使能信號(hào)、控制FIFO裝置寫使能信號(hào)和寫數(shù)據(jù)FIFO裝置的寫使能信號(hào)用來(lái)存儲(chǔ)地址、控制信息和數(shù)據(jù)信息;發(fā)送HbusreqlO信號(hào)給AHB總線中的仲裁器;其余信號(hào)依舊保持上一狀態(tài)的值;3)在寫數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài)下,發(fā)送地址FIFO裝置的讀使能信號(hào)、控制FIFO裝置的讀使能信號(hào);其中MUX的選擇信號(hào)sell= sell+U sel2=sel2+l ;其余信號(hào)依舊保持上一狀態(tài)的值;4)在單獨(dú)寫的數(shù)據(jù)信息發(fā)送狀態(tài)下發(fā)送寫數(shù)據(jù)FIFO裝置的讀使能信號(hào),清空地址FIFO裝置的讀使能信號(hào)和控制FIFO裝置的讀使能信號(hào);其余信號(hào)依舊保持上一狀態(tài)的值;5)在連續(xù)寫的數(shù)據(jù)信息發(fā)送狀態(tài)下發(fā)送寫數(shù)據(jù)FIFO裝置的讀使能信號(hào),并維持地址FIFO裝置的讀使能信號(hào)和控制FIFO裝置的讀使能信號(hào);其中MUX的選擇信號(hào)sell= sell+l、sel2=sel2+l、sel3=sel3+3 ;并且在該狀態(tài)向AHB總線中的從設(shè)備發(fā)送數(shù)據(jù)成組傳輸信息;其余信號(hào)依舊保持上一狀態(tài)的值;6)在保持狀態(tài)下,該狀態(tài)所有信號(hào)保持上一狀態(tài)的值;7)在讀數(shù)據(jù)的地址、控制信息發(fā)送狀態(tài)下,發(fā)送地址FIFO裝置的讀使能信號(hào)、控制FIFO裝置的讀使能信號(hào)和讀數(shù)據(jù)FIFO裝置的寫使能信號(hào);其余信號(hào)依舊保持上一狀態(tài)的值;8)在讀數(shù)據(jù)的等待狀態(tài)下,該狀態(tài)所有信號(hào)保持上一狀態(tài)的值;9)在讀數(shù)據(jù)發(fā)送狀態(tài)下,發(fā)送讀數(shù)據(jù)FIFO裝置的讀使能信號(hào);其余信號(hào)依舊保持上一狀態(tài)的值。
10.根據(jù)權(quán)利要求1所述的Crossbar總線與AHB總線的數(shù)據(jù)轉(zhuǎn)換橋設(shè)備,其特征在于:所述的數(shù)據(jù)選擇器MUXlOl產(chǎn)生CwritelO信號(hào)輸送到Crossbar總線上的控制線Cwrite,數(shù)據(jù)選擇器MUX102產(chǎn)生CaddrlO信號(hào)輸送到Crossbar總線上的地址線Caddr,數(shù)據(jù)選擇器MUX103產(chǎn)生CwdatalO信號(hào)輸送到Crossbar總線上的寫數(shù)據(jù)線Cwdata,所述二輸入或門產(chǎn)生HreadylO信號(hào)輸入給A HB總線的準(zhǔn)備好信號(hào)Hready。
【文檔編號(hào)】G06F13/40GK103744818SQ201310465421
【公開日】2014年4月23日 申請(qǐng)日期:2013年10月8日 優(yōu)先權(quán)日:2013年10月8日
【發(fā)明者】吳迪, 陳鑫, 張珂 申請(qǐng)人:蘇州愛(ài)思索電子科技有限公司