www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀]PCI Express協(xié)議實現(xiàn)與驗證

摘要:稱為第3代I/O接口技術的PCI Express總線規(guī)范的出現(xiàn),從結(jié)構(gòu)上解決了帶寬不足的問題,有著極為廣闊的發(fā)展前景?;赩erilog HDL硬件描述語言及可綜合化設計理念,完成了PCI Express IP核RTL代碼的設計。IP核代碼使用Verilog HDL語言編寫,分模塊、分層次地設計了事務層、數(shù)據(jù)鏈路層和物理層的邏輯子層,并進行了可綜合化設計與代碼風格檢查。對設計的PCI Express IP核的功能分別從協(xié)議層次和應用層次進行了驗證。具體實現(xiàn)上,采用Denali公司的PureSuite測試套件對IP核的協(xié)議兼容性進行驗證,驗證范圍覆蓋了IP核的3個層次以及配置空間,采用QuestaSim仿真工具對IP核的應用層進行驗證。仿真結(jié)果表明,設計的PCI Express IP核工作正常,性能優(yōu)良。
關鍵詞:PCI Express協(xié)議;IP核;驗證;I/O接口

0 引言
    當下,計算機系統(tǒng)使用的主流內(nèi)部總線技術為PCI總線。隨著千兆以太網(wǎng)、RAID陣列等高帶寬設備的出現(xiàn),PCI總線133 MB/s的帶寬已明顯不能滿足應用的需要。根據(jù)PCI總線的性能不足及計算機系統(tǒng)的應用需求,第3代I/O總線接口技術PCI Express應運而生。PCI Express是一種應用于各種計算與通信平臺的高帶寬、點對點串行互聯(lián)協(xié)議,支持虛通道、流量控制機制及熱插撥,具有錯誤處理及錯誤報告功能,并在軟件上與PCI兼容,具有鮮明的技術優(yōu)勢和廣闊的應用前景?;趯CI Express理論優(yōu)勢轉(zhuǎn)化為實際應用優(yōu)勢的考慮,設計了PCI Express IP核,并進行了可綜合化設計與代碼風格檢查,最后對設計的PCI Express IP核分別從協(xié)議層次和應用層次進行了較為充分的功能驗證。

1 PCI Express協(xié)議
    較之PCI總線,PCI Express在總線技術與結(jié)構(gòu)上實現(xiàn)了較大飛躍,提供了高速、高性能、點到點、雙單工、串行、差分信號鏈路來互聯(lián)設備。PCI Express的基本結(jié)構(gòu)包括根復合體(Root Complex)、交換機(Switch)以及端點設備(Endpoint)等,本文設計的PCI Expresb;IP(Intellectual Property)核屬于PCI Express端點設備。PCI ExpreSS總線典型拓撲結(jié)構(gòu)如圖1所示。


    根復合體(RC)為下層I/O設備連接到CPU和主存儲器系統(tǒng)提供了路徑,一個根復合體可支持一個或多個PCI Express端口;端點設備(EP)是PCI Express事務的請求發(fā)起者(Requester)或應答者(Compieter),端點設備又分為傳統(tǒng)端點、PCI Express端點和根復合體集成端點;交換機(Switch)是由多個虛擬PCI-to-PCI橋設備組成的,其主要功能是為上游器件和下游器件的通信選擇路徑。[!--empirenews.page--]
    PCI Express規(guī)范規(guī)定對于設備的設計采用分層結(jié)構(gòu),由下向上可分為物理層(Physical Layer)、數(shù)據(jù)鏈路層(Data Link Layer)和事務層(Transaction Layer),物理層又由邏輯子層和電氣子層組成。沿縱向來看,各層又可分為發(fā)送和接收2塊功能。發(fā)送功能塊構(gòu)成了設備的發(fā)送部分,處理向外的傳輸事務;接收功能塊構(gòu)成了設備的接收部分,處理向內(nèi)的傳輸事務。典型PCI Express層次結(jié)構(gòu)如圖2所示。


    作為PCI Express協(xié)議的最高層,事務層主要負責以下任務,如:基于流水線的分割事務協(xié)議;處理事務包的機制;基于“信用”的流量控制;支持數(shù)據(jù)完整性。數(shù)據(jù)鏈路層位于事務層和物理層之間,為事務層TLP在鏈路中的傳輸提供可靠的傳輸機制。數(shù)據(jù)鏈路層完成的主要任務包括傳遞TLP、錯誤檢測和裁決、初始化和電源管理、產(chǎn)生DLLP。
    物理層位于PCI Express協(xié)議的最底層,決定了PCI Express總線接口的物理特性,如點對點串行連接、微差分信號驅(qū)動、熱撥插、可配置帶寬等。

2 PCI Express IP核設計
2.1 結(jié)構(gòu)設計
    從層次上來講,PCI Express IP核實現(xiàn)了PCI Express協(xié)議定義的所有3個層次:事務、數(shù)據(jù)鏈路和物理的邏輯部分。從結(jié)構(gòu)上來講,PCI Express IP核主要由用戶接口模塊、發(fā)送數(shù)據(jù)包解析模塊、電源管理模塊、DLLP仲裁模塊、TLP仲裁模塊、重傳緩沖模塊、CRC生成模塊、幀信息生成模塊、數(shù)據(jù)鏈路層數(shù)據(jù)流仲裁模塊、LTSSM狀態(tài)機模塊、SKP發(fā)生模塊、LTSSM用有序集發(fā)生模塊、物理層數(shù)據(jù)流仲裁模塊、通道分配模塊、通道合并模塊、亂序模塊、解亂序模塊、PIPE接口模塊、接收數(shù)據(jù)包解析模塊和接收緩沖模塊組成。本文重點介紹用戶接口模塊和發(fā)送數(shù)據(jù)包解析模塊。
    用戶接口模塊是用戶邏輯與PCI Express IP核進行數(shù)據(jù)交互的橋梁,該模塊分為發(fā)送接口和接收接口2部分。一方面,用戶邏輯按照規(guī)定的時序通過該模塊把欲發(fā)送的數(shù)據(jù)發(fā)送到PCI Express鏈路;另一方面,PCI Express IP核接收來自PCI Express鏈路上的數(shù)據(jù),處理后通過該模塊發(fā)送給用戶邏輯。
    發(fā)送數(shù)據(jù)包解析模塊的主要任務之一負責解析TLP包,并提供給TLP仲裁模塊進行傳輸。
    發(fā)送數(shù)據(jù)包解析模塊的第2個功能為實現(xiàn)流控機制。流控機制是PCI Express中最基本的機制之一,流控機制雖然是對本地緩存的一種有效保護,但對TLP的收發(fā)性能有很大的影響。流量的初始化和更新均使用DLLP來完成;初始化使用FC Initl和FC Init2DLLP來完成;更新使用FC Updata DLLP來完成。[!--empirenews.page--]
2.2 接口設計
    接口設計主要包括本地接口設計、配置寄存器擴展接口設計和電源管理接口設計3部分。
    本地接口用于用戶邏輯與遠端PCI Express設備之間傳輸TLP,在本地接口總線上所傳輸?shù)腡LP均需滿足標準的PCI Express數(shù)據(jù)包格式。本地接口又分為發(fā)送接口和接收接口,PCI Express 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核進行協(xié)議層驗證和應用層驗證。
3.1 協(xié)議層驗證
    本文采用Denali公司的PureSuite測試工具對PCI Express IP核的協(xié)議層進行驗證。PureSuite可以測試PCI Express設計的兼容性,包含完整的測試用例,且與PCI-SIG的兼容性驗收列表完全匹配。PureSuite覆蓋了物理層、數(shù)據(jù)鏈路層、事務層以及配置空間,包括定向測試和隨機測試,使用PureSpec總線功能模型對待測設計施加合適的激勵,該功能模型使用SOMA配置文件來約束功能模型的行為和特性。PureSu ite充分發(fā)揮了Denali的先進特性,自動產(chǎn)生測試激勵,并報告測試結(jié)果。使用PureSuite對PCI Express IP核進行兼容性測試主要需要四個步驟,測試平臺搭建、測試用例選擇、運行仿真、查看結(jié)果。
    測試平臺搭建主要包括對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ù)庫,在仿真過程中或仿真結(jié)束后用SimVision工具打開波形數(shù)據(jù)庫查看波形。
    仿真過程結(jié)束后,PureSuite會生成一個測試結(jié)果文件puresuite.status,該文件包含了仿真運行的詳細結(jié)果及統(tǒng)計結(jié)果,整個設計的4類測試項均測試成功。[!--empirenews.page--]
3.2 應用層驗證
    在應用層驗證中主要驗證DUT是否能夠正確處理數(shù)據(jù)包,包括是否能夠正確發(fā)送用戶邏輯產(chǎn)生的數(shù)據(jù)包和是否能夠正確接收鏈路上的數(shù)據(jù)包,并路由到正確的目標地址。同時,兼顧測試PCI Express IP核的部分協(xié)議兼容性。應用層驗證需要為DUT搭建一個應用環(huán)境,包括一個內(nèi)部SRAM,一片F(xiàn)LASH存儲器和通用輸入輸出接口。DUT的PHY使用Xilinx的GTP模型,主機模型使用由某公司提供的PCI Express根復合體仿真模型。


    代碼覆蓋率是驗證結(jié)果的重要質(zhì)量標志,有助于指導驗證計劃的改進。通過QuestaSim 6.3d的代碼覆蓋率計算,如圖3所示,PCI Expre ss IP核的代碼覆蓋率達到了令人滿意的效果。

4 結(jié)語
    攻克了基于信用的流量控制機制、電源管理機制、錯誤檢測與處理報告機制、LTSSM狀態(tài)機等多個技術難關后,本文完成了PCI Express IP核RTL代碼的設計?;赑ureSuite測試套件及QuestaSim仿真工具對設計的IP核進行了全方位的功能驗證,并對驗證過程發(fā)現(xiàn)的問題逐一進行修正。仿真結(jié)果表明,設計的PCI Express IP核實現(xiàn)了預期功能,達到了設計技術指標。

本站聲明: 本文章由作者或相關機構(gòu)授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅(qū)動電源的性能直接關系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設計中至關重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅(qū)動性能的關鍵。

關鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

關鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關鍵字: LED 設計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關鍵元件,其性能直接影響到電動汽車的動力性能和...

關鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質(zhì)量和效率直接關系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關鍵字: LED照明技術 電磁干擾 驅(qū)動電源

開關電源具有效率高的特性,而且開關電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關鍵字: LED 驅(qū)動電源 開關電源

LED驅(qū)動電源是把電源供應轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: LED 隧道燈 驅(qū)動電源
關閉