<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è) > 測試測量 > 設計應用 > 用于測試SDRAM控制器的PDMA

用于測試SDRAM控制器的PDMA

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

3 測試系統的結構和工作原理

在本設計中,PDMA用于仿真多個(gè)IP核對SDRAM控制器進(jìn)行讀寫(xiě)訪(fǎng)問(wèn)以驗證SDRAM控制器的設計是否高效合理,性能是否穩定等指標。

PDMA整個(gè)測試系統由接口模塊、PDMA 以及SDRAM控制器三大部分構成(見(jiàn)圖1)。接口模塊與PDMA之間以?xún)炔縄O總線(xiàn)相連接。 PDMA與SDRAM控制器之間以?xún)炔縈emory總線(xiàn)連接。接口模塊連接外部PCI總線(xiàn)與內部的 PDMA,轉換由外部發(fā)起的PCI IO訪(fǎng)問(wèn)對PDMA進(jìn)行參數配置以及對命令、狀態(tài)等寄存器進(jìn)行讀寫(xiě)。PDMA在得到了配置參數及啟動(dòng)訪(fǎng)問(wèn)的命令信息后啟動(dòng)對SDRAM控制器的訪(fǎng)問(wèn)(寫(xiě)然后讀),并把測試的結果反映到PDMA的狀態(tài)寄存里。

測試用PDMA的具體工作過(guò)程如下:

(1)PCI接口模塊對PDMA各通道進(jìn)行參數配置(如訪(fǎng)問(wèn)長(cháng)度、訪(fǎng)問(wèn)基址、訪(fǎng)問(wèn)方式等);

(2)PCI接口模塊寫(xiě)PDMA的控制寄存器,啟動(dòng)對SDRAM的讀寫(xiě);

(3)PCI接口模塊讀PDMA的狀態(tài)寄存器,探測訪(fǎng)問(wèn)是否完成,如完成,則讀取完成后的狀態(tài)信息(如錯誤位,發(fā)生錯誤的地址)。

4

完成RTL級的設計后,我們利用Cadence公司的仿真工具VerilogXL對設計進(jìn)行了功能仿真。仿真的環(huán)境是基于PCI的,所以其仿真順序如下:

(1)配置PCI配置空間的IO Base 及 Mem o ry Base寄存器;

(2)寫(xiě)PCI配置空間54H,58H等寄存器,配置SDRAM 控制器及SDRAM芯片的參數;

(3)寫(xiě)PCI配置空間的命令寄存器(offset==04h),使能該設備;

(4)訪(fǎng)問(wèn)PCI IO空間中的PDMA配置寄存器,設定各個(gè)PDMA通道的配置參數;

(5)寫(xiě)入相應的命令,啟動(dòng)PDMA訪(fǎng)問(wèn)內新路子SDRAM控制器;

(6)檢測PDMA的狀態(tài)寄存器,根據設定的條件(正常結束或者發(fā)生錯誤)退出仿真程序;

(7)打開(kāi)波形文件,檢查是否有錯誤發(fā)生。

圖5是由PCI發(fā)起的一次寫(xiě)IO寄存器訪(fǎng)問(wèn)的仿真波形,PDMA的配置數據就是通過(guò)若干這樣的操作完成的。

仿真波形

相對而言,我們更關(guān)注PDMA是如何訪(fǎng)問(wèn)Memory的。圖6是由一個(gè)PDMA發(fā)起的寫(xiě)讀模式下的訪(fǎng)問(wèn)時(shí)序。GROUP1的信號是由PDMA發(fā)起的內部Memory總線(xiàn)信號組,而GROUP2的信號是 Memory控制器和內存芯片間的符合jedec標準的總線(xiàn)協(xié)議。從圖中我們可以清楚地看到總線(xiàn)協(xié)議的轉換過(guò)程,及時(shí)發(fā)現是否有違反協(xié)議的情況發(fā)生。

由一個(gè)PDMA發(fā)起的寫(xiě)讀模式下的訪(fǎng)問(wèn)時(shí)序

5 上板測試的方法和過(guò)程

在完成功能仿真后,使用Synopsys綜合工具 FPGA compiler對設計進(jìn)行綜合,并選用XILINX公司的VERTEX1600E系列為目標器件,生成相應的網(wǎng)表文件,下載到FPGA上進(jìn)行測試。綜合的結果如表3所示。測試平臺是一臺PC機,帶有PCI標準接口的測試卡和PCI讀寫(xiě)軟件。上板測試過(guò)程如下:

綜合的結果

(1)下載bit文件到FPGA中;

(2)配置SDRAM控制器;

(3)置PDMA寄存器;

(4)啟動(dòng)PDMA訪(fǎng)問(wèn);

(5)讀回PDMA的狀態(tài)位。

測試時(shí)需要輸入相應的測試向量,一個(gè)好的軟件界面可以大大減輕硬件工程師編寫(xiě)、輸入測試向量的工作量。表4是一個(gè)測試向量的內容和結果,像這樣的測試要進(jìn)行多次以提高故障覆蓋率并統瞥鯥P的性能。

一個(gè)測試向量的內容和結果

6 實(shí)驗結論

經(jīng)過(guò)不斷調試和改進(jìn),PDMA能夠按照功能寄存器的配置準確發(fā)起Memory訪(fǎng)問(wèn),并能夠及時(shí)報告SDRAM控制器的操作錯誤。該測試平臺不僅適用于驗證SDRAM控制器的設計,而且在經(jīng)過(guò)很小的改動(dòng)后可以配置成支持對性能更好的DDR存儲控制器的測試驗證。靈活的配置方式使之成為一個(gè)通用的測試平臺,對不同的Memory控制器的測試只需用軟件對相應的配置寄存器進(jìn)行配置即可,硬件基本不用進(jìn)行改動(dòng),大大節約了設計時(shí)間,提高了設計的成功率和效益。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: RTL仿真 PCI SoC

評論


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