SoC系統(tǒng)中AHB/VCI Wrapper的設(shè)計及驗證
BVCI請求握手控制單元按照BVCI請求握手協(xié)議接受來自BVCI主動方的請求內(nèi)容信息,并把它們插入請求內(nèi)容FIFO(速率不匹配情況)或直接傳送到AHB控制一側(cè)(速率匹配情況)。
BVCI響應(yīng)握手控制單元從響應(yīng)內(nèi)容FIFO中取出BVCI響應(yīng)內(nèi)容信息,并按照BVCI響應(yīng)握手協(xié)議把它們驅(qū)動到BVCI主動方。
請求內(nèi)容FIFO是一個異步FIFO(寫端口與讀端口分別工作在不同的時鐘域),它只有當(dāng)VCI主動方設(shè)備和AHB總線之間速率不匹配時才工作。
響應(yīng)內(nèi)容FIFO為一個異步/同步模式可配置的FIFO,當(dāng)VCI主動方設(shè)備和AHB總線之間速率不匹配時,它工作在異步模式(寫端口與讀端口分別工作在不同的時鐘域)否則FIFO工作在同步模式(寫端口與讀端口工作在同一時鐘域),只需完成BVCI響應(yīng)內(nèi)容信息的緩存功能即可。
AHB主設(shè)備控制引擎在BVCI和AHB之間進行控制信號的轉(zhuǎn)換。還支持AHB主設(shè)備所具備的對總線異常傳送(錯誤、重試傳送)情況的處理能力。
1.3 AHB target Wrapper的設(shè)計
AHB-target-Wrapper作為一個AHB從設(shè)備,其主要作用是把AHB傳送轉(zhuǎn)換為符合VCI協(xié)議的傳送。
1.4 AHB target Wrapper的總體構(gòu)架
圖3給出了AHB-target-Wrapper的總體構(gòu)架,它由各種控制邏輯、數(shù)據(jù)通路、數(shù)據(jù)緩沖單元和寄存器組成,主要包含十三部分:寄存器塊、AHB從設(shè)備讀寫控制邏輯、地址/控制信息FIFO、寫數(shù)據(jù)FIFO、讀數(shù)據(jù)FIFO、VCI主動方引擎、VCI響應(yīng)處理機、比較器、包計數(shù)器、同步裝置、寫數(shù)據(jù)路徑選擇復(fù)用器、讀數(shù)據(jù)路徑選擇復(fù)用器和中斷邏輯。本文引用地址:http://www.ex-cimer.com/article/149065.htm
(1)寄存器塊完成對AHB-target-Wrapper的配置和控制以及對其當(dāng)前工作狀態(tài)的反應(yīng)。
(2)AHB從設(shè)備讀寫控制邏輯,具備AHB總線從設(shè)備的控制功能。
(3)地址/控制信息FIFO主要用來存放AHB傳送單元的地址/控制信息,以起到緩沖目的。
(4)寫數(shù)據(jù)FIFO主要用來存放進行寫操作時的數(shù)據(jù),以起到寫數(shù)據(jù)緩沖目的。
(5)讀數(shù)據(jù)FIFO主要用來存放進行讀預(yù)取操作時的數(shù)據(jù),以起到讀數(shù)據(jù)預(yù)取目的。它也是一個雙端口的同步/異步可配置FIFO(一個寫端口,一個讀端口),當(dāng)AHB總線和VCI從動方設(shè)備之間速率不匹配時工作在異步模式下,匹配時工作在同步模式下,同步/異步模式的切換可通過配置寄存器來實現(xiàn)。
(6)VCI主動方引擎把符合AHB傳送協(xié)議的地址/控制信息轉(zhuǎn)換為符合BVCI標(biāo)準(zhǔn)的請求內(nèi)容信息,并按照BVCI請求握手協(xié)議把請求內(nèi)容信息驅(qū)動到VC從動方設(shè)備。
(7)VCI響應(yīng)處理機按照BVCI響應(yīng)握手協(xié)議接收由VCI從動方設(shè)備返回的響應(yīng)內(nèi)容信息,并進行相應(yīng)的處理。
(8)比較器用于讀預(yù)取操作情況,比較正在進行的讀預(yù)取操作和AHB上新發(fā)來的讀操作是否為同一個讀交易。
(9)包計數(shù)器用來統(tǒng)計當(dāng)前VCI主動方引擎發(fā)出的多個BVCI請求包中沒有被響應(yīng)的請求包個數(shù),其主要目的是為VCI主動方引擎提供有關(guān)當(dāng)前請求包是否正在被響應(yīng)的信息。
(10)同步裝置在兩個時鐘域的交叉處,即從HCLK到VCLK域和從VCLK到HCLK域的兩個數(shù)據(jù)流方向上,分別對內(nèi)部控制信號進行同步。
(11)寫數(shù)據(jù)路徑選擇復(fù)用器根據(jù)AHB的傳送單元大小、字節(jié)地址和地址大小端模式來選擇AHB寫數(shù)據(jù)總線上相應(yīng)的字節(jié)通道并把它復(fù)制到?jīng)]選通的字節(jié)通道上。
(12)讀數(shù)據(jù)路徑選擇復(fù)用器根據(jù)BVCI響應(yīng)字節(jié)使能(按照一定的算法,由AHB讀交易的傳送單元大小、第一個傳送字節(jié)地址以及BVCI的地址模式自動轉(zhuǎn)換生成)來選擇BVCI讀數(shù)據(jù)總線上相應(yīng)的字節(jié)通道并把它復(fù)制到?jīng)]選通的字節(jié)通道上。
(13)中斷邏輯當(dāng)內(nèi)部電路在執(zhí)行寫操作過程中發(fā)生傳送錯誤時,產(chǎn)生錯誤中斷源,同時根據(jù)中斷屏蔽寄存器來決定相應(yīng)的中斷源是否開放,根據(jù)中斷清除寄存器來清除相應(yīng)的中斷源。
2 AHB/VCI、Wrapper的硬件實現(xiàn)
本文分別給出了AHB-initiator-Wrapper和AHB-target-Wrapper的總體構(gòu)架,并對兩者內(nèi)部的各個功能模塊及控制部件的結(jié)構(gòu)設(shè)計進行了詳細敘述,同時對兩者的可配置性也進行了充分考慮。在本章最后,對AHB/VCI Wrapper進行了RTL級Verilog硬件建模并進行了初步的門級綜合及電路規(guī)模預(yù)估。
評論