采用中檔FPGA設(shè)計(jì)面向PCI Express系統(tǒng)的解決方案
如果采用整合的解決方案,首個(gè)挑戰(zhàn)是尋找一個(gè)低成本的器件。在過去,PCI Express需要的串行鏈路一般只在高端昂貴的FPGA中才有。然而,今天許多應(yīng)用需要較低成本的解決方案。中檔LatticeECP2M,或最近推出的LatticeECP3 FPGA系列,擁有適合這種應(yīng)用的一些功能。這兩種器件都集成了可用于實(shí)現(xiàn)PCI Express x1或x4的串行通道。除了低成本優(yōu)勢(shì)外,與高端FPGA解決方案相比,這兩類器件的功耗也非常低。該“節(jié)能方案”使系統(tǒng)工程師能夠降低功耗,因此只需要使用較小供電電源。圖3展示了近期推出的ECP3 FPGA系列的結(jié)構(gòu)圖。
圖3:LatticeECP3中檔FPGA框圖,內(nèi)有集成的SERDES模塊。
利用這些FPGA的另一個(gè)優(yōu)點(diǎn)是它們能夠處理PCI Express使用的擴(kuò)頻時(shí)鐘。許多其他的“單芯片”解決方案推薦使用外部的PLL和去除抖動(dòng)來處理時(shí)鐘,這意味著電路板上會(huì)有兩到三個(gè)額外的器件。這些器件也可用在工業(yè)溫度范圍。
既然這些FPGA的串行鏈路只能實(shí)現(xiàn)物理層的SERDES部分,所以需要額外的邏輯來實(shí)現(xiàn)完整的PCS。這由軟IP核來完成,它可以配置成x1或x4 PCI Express端點(diǎn)。萊迪思的ispLEVER設(shè)計(jì)軟件包括一個(gè)稱為IPexpress的工具,通過GUI來配置功能,如PLL、存儲(chǔ)器等,還有軟IP。PCI Express核可從萊迪思網(wǎng)站上下載,使用IP Express進(jìn)行配置并產(chǎn)生編程文件。即使沒有有效許可證,也可以運(yùn)行這個(gè)應(yīng)用數(shù)小時(shí),從而獲得一個(gè)全面的系統(tǒng)評(píng)估。
為了符合系統(tǒng)的需要,配置PCI Express核的某些功能是非常重要的。例如, PCI Express提供不同的有效載荷大小。有效載荷的規(guī)模越大,核中需要的FIFO也越大。為了節(jié)約資源,可以通過IPexpress來選擇針對(duì)PCI Express核的正確有效載荷的大小。還有一些應(yīng)加以調(diào)整的其他參數(shù),以針對(duì)系統(tǒng)要求優(yōu)化FPGA的利用率。
在許多項(xiàng)目開發(fā)中,只有在開發(fā)后期才能得到樣機(jī)電路板。為了熟悉PCI Express的協(xié)議,可從萊迪思獲取PCI Express設(shè)計(jì)套件。該套件包含了電路板,可用于x1或x4的插槽,并有一些演示配置:
* 基本方法
o 用戶訪問內(nèi)存和寄存器
o 在電腦上運(yùn)行演示與在電路板上的PCIe IP核之間提供簡(jiǎn)單的互動(dòng)
* 吞吐量
o 在PCIe核和SERDES之間演示和測(cè)量帶寬性能
* Scatter Gather DMA
o 使用DMA在PC機(jī)內(nèi)存和PCI Express卡之間傳送數(shù)據(jù)
設(shè)計(jì)人員可以選擇使用其中一個(gè)準(zhǔn)備好的編程文件,在30分鐘內(nèi)構(gòu)建一個(gè)完整的演示。套件不僅提供了硬件設(shè)計(jì)文件,而且還提供驅(qū)動(dòng)程序和運(yùn)行在PC上的應(yīng)用程序,這樣就為設(shè)計(jì)人員的應(yīng)用提供了一個(gè)良好的起點(diǎn)。圖4展示了萊迪思的一個(gè)完整的PCI Express演示設(shè)計(jì)。
圖4:Lattice PCI Express的演示。
用協(xié)議分析儀和示波器可以調(diào)試系統(tǒng)。但是,利用功能或者RTL級(jí)仿真時(shí),設(shè)計(jì)人員已經(jīng)可以找到許多問題。
系統(tǒng)調(diào)試的三個(gè)主要方法:
* 串行環(huán)回
* 激勵(lì)發(fā)生器和測(cè)試器
* 總線功能模型
萊迪思的PCI Express核包含一個(gè)簡(jiǎn)單的采用串行環(huán)回的測(cè)試平臺(tái)。借助一些來自測(cè)試平臺(tái)的互動(dòng)建立PCI Express鏈路,并發(fā)送一些數(shù)據(jù)包。這是仿真設(shè)計(jì)的非?;镜姆椒?。
一個(gè)更先進(jìn)的方法是使用激勵(lì)發(fā)生器和測(cè)試器。FPGA中串行鏈路的仿真模型被一個(gè)模型所取代,后者生成數(shù)據(jù)包,并檢查FPGA內(nèi)的邏輯響應(yīng)。
最全面且成本昂貴的方法是建立總線功能模型。有幾個(gè)供應(yīng)商提供PCI Express的仿真模型。根據(jù)總線功能模型,設(shè)計(jì)人員可以測(cè)試應(yīng)用程序,以及FPGA的串行鏈路與整個(gè)系統(tǒng)的互動(dòng)。
評(píng)論