關 閉

新聞中心

EEPW首頁 > 工控自動化 > 設計應用 > PCI Express協(xié)議實現(xiàn)與驗證

PCI Express協(xié)議實現(xiàn)與驗證

作者: 時間:2012-12-17 來源:網(wǎng)絡 收藏

2.2 接口設計
接口設計主要包括本地接口設計、配置寄存器擴展接口設計和電源管理接口設計3部分。
本地接口用于用戶邏輯與遠端 設備之間傳輸TLP,在本地接口總線上所傳輸?shù)腡LP均需滿足標準的 數(shù)據(jù)包格式。本地接口又分為發(fā)送接口和接收接口, IP核通過發(fā)送接口在PCI Express鏈路上發(fā)送PCI Express包,通過接收接口從PCI Exp ress鏈路上接收PCI Express包。
配置寄存器擴展接口主要用于實現(xiàn)額外的PCI能力項和配置寄存器。根據(jù)PCI Express規(guī)范,原則上只有跟PCI Express配置相關的寄存器才可以放入配置空間。本文設計的PCI Express IP核是PCI Express端點(Endpoint),故使用標準Type0配置空間,該空間占用了0x000~0x0 BF地址范圍,配置寄存器擴展接口可使用空間的地址范圍從0x0C0~0xFFF。

3 PCI Express IP核功能驗證
驗證是比設計更重要的一個環(huán)節(jié),它穿越了整個設計流程,以便盡早發(fā)現(xiàn)設計中可能存在的錯誤和缺陷。功能驗證指驗證RTL代碼是否符合原始的設計需求和規(guī)格,在這里指驗證設計的PCI Express IP核是否符合PCI Express規(guī)范。本文采用基于虛擬平臺的驗證方法對設計的PCI Express IP核進行層驗證和應用層驗證。
3.1 層驗證
本文采用Denali公司的PureSuite測試工具對PCI Express IP核的層進行驗證。PureSuite可以測試PCI Express設計的兼容性,包含完整的測試用例,且與PCI-SIG的兼容性驗收列表完全匹配。PureSuite覆蓋了物理層、數(shù)據(jù)鏈路層、事務層以及配置空間,包括定向測試和隨機測試,使用PureSpec總線功能模型對待測設計施加合適的激勵,該功能模型使用SOMA配置文件來約束功能模型的行為和特性。PureSu ite充分發(fā)揮了Denali的先進特性,自動產(chǎn)生測試激勵,并報告測試結果。使用PureSuite對PCI Express IP核進行兼容性測試主要需要四個步驟,測試平臺搭建、測試用例選擇、運行仿真、查看結果。
測試平臺搭建主要包括對DUT的實例化以及創(chuàng)建約束DUT特性的SOMA文件。首先,編寫Testbench文件,把Denali的模型和監(jiān)視器以及DUT連接起來,并指定對應的SOMA文件,分別對上述3個模塊進行特性約束。其次,使用Denali的圖形化工具PureView創(chuàng)建DUT監(jiān)視器模塊及其SOMA文件,需要把PCI Express IP核的特性全部寫入該SOMA文件中。
由于Denali的PureSuite包含了一套完整的測試用例,其中有許多是DUT所不具備的能力,故在運行仿真前需要選擇與DUT配套的測試用例,當然也可以指定一些測試用例進行單獨測試,以禁止運行DUT所不具有的特性的測試用例。PureSuite提供5大類測試,包括事務層測試、PHY測試、數(shù)據(jù)鏈路層測試、配置空間測試和虛通道測試,本文的設計不包括PHY部分,故僅對DUT進行了其余4類測試。
在進行協(xié)議層仿真時,本文使用NC-SIM仿真工具在Linux系統(tǒng)下進行。仿真平臺搭建好后,需要編寫運行腳本文件。在編寫腳本文件中,主要包括對代碼進行編譯、指定編譯器及其參數(shù)、指定仿真頂層等。一切準備就緒后,便可以運行仿真。在仿真過程中需要查看仿真波形,要在仿真頂層文件“tb.v”中把保存波形數(shù)據(jù)庫,在仿真過程中或仿真結束后用SimVision工具打開波形數(shù)據(jù)庫查看波形。
仿真過程結束后,PureSuite會生成一個測試結果文件puresuite.status,該文件包含了仿真運行的詳細結果及統(tǒng)計結果,整個設計的4類測試項均測試成功。


關鍵詞: Express PCI 協(xié)議

評論


相關推薦

技術專區(qū)

關閉