<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è) > EDA/PCB > 設計應用 > 基于FPGA的OPB_AHB總線(xiàn)橋接器的設計

基于FPGA的OPB_AHB總線(xiàn)橋接器的設計

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

  4.的實(shí)現

  實(shí)現兩種的互聯(lián),關(guān)鍵是完成控制信號之間的轉換以及數據和地址的傳輸,本設計采用的方法包括。

  (1)流水線(xiàn)方式, (2)將所有輸入的控制信號和數據地址都寄存一拍。

  (3)控制信號都采用同 (4)步設計方法, (5)在OPB_Clk的上升沿觸發(fā)。

  (6)數據的讀寫(xiě)操作為同 (7)步讀寫(xiě)。

  4.1OPB2AHB_Brg的實(shí)現

  (1) 所有控制信號采用同步設計思想,在 SOPB_Clk的上升沿觸發(fā)。 SOPB_Rst高電平有效,為同步復位,當其有效時(shí),所有信號輸出 0狀態(tài)。

  (2) 當檢測到 SOPB_Sel信號有效時(shí),即表明被選中,成為 OPB上的從設備,或者檢測到 AHB_Resp信號狀態(tài)為RETRY,此時(shí) OPB2AHB_Brg作為AHB總線(xiàn)上的主設備向 AHB仲裁器發(fā)出請求總線(xiàn)信號 AHB_BusReq。

  (3) 當OPB2AHB_Brg檢測到 AHB總線(xiàn)側的允許信號 AHB_Grants時(shí),說(shuō)明橋接器的請求得 到允許,此時(shí)當 AHB_Ready有效時(shí),可以根據 SOPB_BE判斷傳輸數據的大小,決定 AHB_Size的狀態(tài),當 SOPB_BE為1111時(shí),AHB_Size為010(32bit),SOPB_BE為1100或0011時(shí),AHB_Size為001(16bit),SOPB_BE為0001、0010、0100、1000時(shí),AHB_Size為000(8bit)。

  (4) 當SOPB_RNW為高電平時(shí),為讀取數據,數據流向是從 AHB_Rdata到Sl_Dbus,當 SOPB_RNW為低電平時(shí),為寫(xiě)數據,數據流向從 SOPB_Dbus到AHB_Wdata。地址總線(xiàn)相連,即SOPB_Abus連接AHB_Addr。

  (5)當一次數據傳輸完成后, (6)置位Sl_xferAck信號, (7) 讓其輸出一個(gè)時(shí)鐘周期的高脈沖。

  4.2 AHB_OPB_Brg的實(shí)現

  (1) 當橋接器檢測到 AHB_Sel信號有效時(shí),即表明橋接器被選中,成為AHB總線(xiàn)上的從設備,此時(shí)AHB2OPB_Brg作為OPB總線(xiàn)上的主設備向 OPB仲裁器發(fā)出請求總線(xiàn)信號 M_req。

  (2)當橋接器接收到 OPB仲裁器發(fā)出的允許信號 OPB_Mgrant信號時(shí), (3)表明橋接器可以

  開(kāi)始工作,(4)這個(gè)信號會(huì )激勵 M_Sel信號有效, (5)根據 IP核 BK3721的功能特性, (6) M_BE總是輸出 1111,(7) M_SeqAddr和M_busLock輸出為0。

  (3) 當AHB_Write為高電平時(shí),為寫(xiě)數據有效,此時(shí) AHB主設備向從設備橋接器寫(xiě)數據,同時(shí)橋接器作為 OPB總線(xiàn)上的主設備向選中的 OPB從設備寫(xiě)數據,數據流向為 AHB_Wdata到 M_Dbus。當AHB_Write為低電平時(shí),為讀數據有效,此時(shí) AHB主設備從橋接器(作為 AHB總線(xiàn)上的從設備)讀取數據,同時(shí)橋接器作為 OPB總線(xiàn)的主設備從選中的 OPB從設備讀取數據,數據流向為OPB_DBus到AHB_RData。

  (8)當數據傳輸指 (9)示信號OPB_xferAck被檢測有效時(shí), (10) AHB_Ready信號輸出高電平有效信號, (11)表示數據傳輸結束。

  5.橋接器的驗證

  5.1 OPB2AHB_Brg的驗證

  用verilog編寫(xiě)testbench,在testbench中虛擬設備一個(gè) AHB從設備存儲器 AHB_mem,存儲器的數據位寬和地址位寬都是 32位,通過(guò)測試平臺可以對虛擬存儲器進(jìn)行數據的讀寫(xiě),并將數據的讀寫(xiě)結果保存到 Wdata.txt文件中。

  利用ModelSim工具對測試平臺進(jìn)行仿真。在主設備向虛擬從設備寫(xiě)數據時(shí), SOPB_RNW為低電平,橋接器作為AHB上的主設備將 SOPB_DBus數據線(xiàn)上的數據通過(guò) AHB_Wdata寫(xiě)到 AHB_mem存儲器中,并在 WData.txt文件中顯示出來(lái),仿真結果如圖 3 (a)所示。

  圖3 (a) OPB2AHB_Brg寫(xiě)數據仿真波形



關(guān)鍵詞: OPB_AHB FPGA 總線(xiàn) 橋接器

評論


相關(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>