用Vivado IPI和賽靈思IP實(shí)現(xiàn)更快速的設(shè)計(jì)輸入
本文將介紹如何優(yōu)化賽靈思內(nèi)核以便在CPRI遠(yuǎn)程無線電頭端設(shè)計(jì)中使用Vivado IPI。
本文引用地址:http://www.ex-cimer.com/article/201610/308385.htm新型基于FPGA的設(shè)計(jì)使用IP核的數(shù)量和種類日趨繁多。Vivado®設(shè)計(jì)套件中的IP集成器 (IPI) 工具和賽靈思通信IP讓設(shè)計(jì)人員能夠更加輕松快速地將IP模塊連接在一起。
為了更好地闡明IPI方法的強(qiáng)大之處,我們以遠(yuǎn)程無線電頭端 (RRH) 為例。RRH位于天線附近,構(gòu)成蜂窩通信網(wǎng)絡(luò)的一部分。它們通常通過光纖連接至上游的基帶收發(fā)器站,并可以選擇性地連接到下游的更多RRH,從而構(gòu)成多跳拓?fù)浣Y(jié)構(gòu)(圖1)。
通用公共無線電接口 (CPRI) 協(xié)議普遍用來連接這些RRH。現(xiàn)在讓我們來構(gòu)建包含一個(gè)上行鏈路CPRI端口和三個(gè)下行鏈路CPRI端口且這些端口連接在一起的實(shí)例設(shè)計(jì)。我們可以利用IPI構(gòu)建出整個(gè)設(shè)計(jì)中的主體部分。然后我們選用Kintex®-7器件,因?yàn)樵撈骷邆涞凸?、低成本和高性能等?yōu)異特性,因此非常適合此實(shí)例設(shè)計(jì)。速度等級為-2的All Programmable 器件Kintex FPGA和Zynq®-7000 SoC中的GTX 收發(fā)器支持使用9.8Gbps CPRI線路速率。
圖2展示了我們在IPI中將要?jiǎng)?chuàng)建的內(nèi)容。我們可建立模塊設(shè)計(jì),并從IP Catalog中實(shí)例化所需的IP。標(biāo)準(zhǔn)賽靈思IP Catalog中提供有CPRI內(nèi)核。該內(nèi)核經(jīng)過優(yōu)化,不僅可實(shí)現(xiàn)資源共享(可能情況下),而且還能簡化在IPI中的使用。交換機(jī)屬于自定義IP。
IP核資源共享
使用多個(gè)IP實(shí)例時(shí)客戶遇到的挑戰(zhàn)之一是如何高效共享資源。很多通信IP核都支持“共享邏輯”功能。對于CPRI內(nèi)核,我們可用內(nèi)核中的可共享邏輯資源配置IP,或者省略這些共享資源。如果共享資源包含在內(nèi)核之中,它們會提供必要的輸出以便讓我們將共享資源連接到不含這些邏輯的內(nèi)核。
有特殊要求的用戶可能希望在內(nèi)核中移除這些共享邏輯并實(shí)現(xiàn)自己的邏輯。在我們的實(shí)例設(shè)計(jì)中,我們將CPRI內(nèi)核的運(yùn)行速度配置為9.8Gbps。這該線路速率下,有必要使用LCtank振蕩器來提供收發(fā)器時(shí)鐘。Kintex-7器件中的收發(fā)器采用Quad布局,每個(gè)收發(fā)器Quad包含四個(gè)收發(fā)器通道和一個(gè)基于LC-tank的Quad鎖相環(huán) (QPLL)。所有內(nèi)核都有必要共享QPLL以及由上行鏈路時(shí)鐘信號生成的時(shí)鐘。圖3中給出了帶有定制共享邏輯的上行鏈路內(nèi)核上QPLL和時(shí)鐘輸出端口,該上行鏈路內(nèi)核的共享邏輯連接到將不含共享邏輯的下行鏈路CPRI內(nèi)核的相應(yīng)輸入端口。
CPRI內(nèi)核間的數(shù)據(jù)路由
我們還進(jìn)行了IQ交換機(jī)和以太網(wǎng)交換機(jī)的實(shí)例化,以便讓數(shù)據(jù)在內(nèi)核之間實(shí)現(xiàn)路由。
CPRI網(wǎng)絡(luò)中的控制和管理數(shù)據(jù)通過以太網(wǎng)子通道發(fā)送。憑借系統(tǒng)中的以太網(wǎng)交換機(jī),可以遠(yuǎn)程發(fā)布固件升級或命令,并將其發(fā)送至任意節(jié)點(diǎn)。IP旨在使用盡量少的邏輯資源,因?yàn)檫@種情況沒必要使用功能齊全的以太網(wǎng)交換機(jī)。
IQ交換機(jī)能以確定的時(shí)延在CPRI內(nèi)核之間路由任何IQ樣本。多跳無線電系統(tǒng)的一個(gè)重要特性是可以準(zhǔn)確測量鏈路延遲,而且CPRI標(biāo)準(zhǔn)定義了一種能夠協(xié)助該測量的方法。
用IPI連接接口
IPI總線接口將定義好的一組邏輯端口映射到IP上的特定物理端口。如果我們盡可能地使用接口,就可以從連接很多信號轉(zhuǎn)變?yōu)檫B接少量接口。IP上的通用總線接口是符合ARM® AXI標(biāo)準(zhǔn)(例如AXI4-Lite和AXI4-Stream)的接口。這種抽象程度的提高使設(shè)計(jì)輸入更簡單、更快速,而且使您能夠充分利用接口的設(shè)計(jì)規(guī)則檢查功能。Vivado IP Packager允許您在IPI中使用自己的IP,并在自己的設(shè)計(jì)中利用這些接口。
IPI便于將接口連接在一起。只需點(diǎn)擊接口,IPI就會指示其可以連接至具體內(nèi)容。將連接線拖拽到所需的端點(diǎn),就會建立起來連接。利用該方法,只需點(diǎn)擊幾次就可連接很多信號。
圖4顯示的以太網(wǎng)交換機(jī)提供若干AXI4-Stream接口,兩個(gè)GMII接口,以及一個(gè)AXI4-Lite接口。數(shù)據(jù)流接口能直接連接到CPRI內(nèi)核,這樣無需在CPRI內(nèi)核上進(jìn)行內(nèi)部緩沖。GMII接口能連接到以太網(wǎng)PHY,可供工程師在現(xiàn)場調(diào)試網(wǎng)絡(luò)問題。AXI4-Lite管理接口用來訪問地址表格映射及其它配置選項(xiàng),例如地址表格老化間隔。
我們繼續(xù)以這種方式增強(qiáng)系統(tǒng),在IPI中連接各個(gè)接口。您可以靈活地使用任何最適合的輸入方法。除了使用GUI連接接口外,還可以通過Tcl控制臺直接發(fā)命令,或者從腳本獲得命令。每次在GUI中做任何操作時(shí),就會返回相應(yīng)的命令。
整個(gè)設(shè)計(jì)完成后,使用“write_bd_tcl”命令將整個(gè)設(shè)計(jì)導(dǎo)出。該命令創(chuàng)建一個(gè)可引用的Tcl文件,用以從頭創(chuàng)建整個(gè)模塊設(shè)計(jì),或方便地作為腳本構(gòu)建流程中的一部分。設(shè)計(jì)中的所有IP都提供一個(gè)AXI4-Lite管理接口,以便讓內(nèi)核連接到主機(jī)處理器。IPI中內(nèi)置的智能功能可以實(shí)現(xiàn)自動(dòng)化連接。憑借這種機(jī)制,IPI就能識別出IP上的AXI4-Lite接口將連接到AXI總線互聯(lián),并自動(dòng)配置合適的地址范圍,為我們連接到總線。然后,您可借助IPI將該總線連接到主機(jī)處理器。本案例中的主機(jī)處理器是MicroBlaze™,不過若使用Zynq SoC系列器件,就能方便地將主機(jī)處理器改為ARM CPU。
更多優(yōu)勢接踵而至
Vivado IPI功能正在快速增加,以后還將帶來更多優(yōu)勢。通過使用正確的IP,我們可以將整個(gè)子系統(tǒng)快速集成在一起,并從中受益。
如需了解有關(guān)CPRI、以太網(wǎng)交換機(jī)或IQ交換機(jī)IP方面的更多信息,請發(fā)送郵件至:permind@xilinx.com,與賽靈思無線通信部的Perminder Tumber 取得聯(lián)系。
評論