最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

LabVIEW FPGA PCIe開發(fā)講解-7.5節(jié):修改底層XDC約束文件以適配第三方的FPGA PCIe硬件

2021-03-27 13:56 作者:神電測控  | 我要投稿

? ? ? ??本節(jié)我們重點講解一下一個非常重要的問題:那就是如果用戶自己做的板子沒有參考黑金AX7103原理圖,或者網(wǎng)上買了其他家成熟的PCIe FPGA硬件,那么用戶需要注意哪些地方才能讓我們封裝的LabVIEW FPGA PCIe Socket CLIP完美適配呢?

?????? ?不知道大家還記不記得我們曾在第五章里面,告訴大家如何修改FPGA引腳來適配自己板子上的晶振時鐘,讓FPGA能夠運(yùn)行起來;同理,PCIe也有幾個非常重要的引腳可以在xdc頂層約束文件里面修改。編譯的時候會自動覆蓋底層網(wǎng)表文件里面的引腳定義。這一點我們比黑金和米聯(lián)客以及大多數(shù)FPGA開發(fā)板廠商做的好,因為他們基本上不會在頂層xdc里面寫上相對路徑的PCIe Lane引腳定義。

?????? ?首先,找到我們需要修改的FPGA終端模板文件里面的xdc約束文件,比如本書配套的ARTIX7開發(fā)板AX7103,默認(rèn)的路徑如圖7-49所示:

C:\Program Files (x86)\National Instruments\LabVIEW 2015\Targets\NI\FPGA\NiAdept

? ??

圖7-49:找到FPGA PCIe終端對應(yīng)的模板文件夾
圖7-50:找到這個FPGA頂層xdc約束文件

? ? ? ? 然后,右擊通過notepad++打開這個xdc約束文件,找到PCIe引腳定義的地方,如圖7-51所示。

圖7-51:打開xdc頂層約束文件,找到PCIe引腳定義

? ? ? ? 因為很多7系列FPGA家族芯片內(nèi)部具備多個不同BANK的PCIe引腳,特別是Kintex7和Virtex7系列,所以用戶需要根據(jù)板子實際的原理圖來修改這個xdc頂層文件。以黑金AX7103開發(fā)板舉例說明,先打開對應(yīng)底板原理圖,找到PCIe相關(guān)針腳定義,如圖7-52所示。這些引腳其實可以分成3類:PCIe總線復(fù)位引腳;PCIe總線差分時鐘輸入引腳;PCIe總線不同位寬的差分?jǐn)?shù)據(jù)引腳。這3類引腳在前面圖7-51里面都定義過了,如果用戶自己畫的板子或者網(wǎng)上買的其他家的板子引腳定義不一樣,那么照葫蘆畫瓢對應(yīng)修改一下就可以了。

圖7-52:打開PCIe底板原理圖,找到PCIe總線核心的3大類引腳

? ? ? ? 然后,打開AX7103開發(fā)板上插著的核心板AC7100原理圖,找到PCIe復(fù)位引腳,就是J20,如圖7-53所示。接著需要尋找一下PCIe的差分時鐘引腳,這個引腳非常重要,如果找不到或者設(shè)置不對,那么PCIe總線肯定初始化不了,在核心板原理圖上可以看到有兩個MGT_CLK信號,但是實際接到PCIe插槽的是MGT_CLK1,也就是F10,如圖7-54所示。

圖7-53:在AC7100核心板上找到PCIe復(fù)位引腳:J20
圖7-54:在核心板AC7100原理圖上找到PCIe差分時鐘輸入引腳:F10

? ? ? ? 但是細(xì)心的用戶可能發(fā)現(xiàn)了,黑金的AC7100核心板在畫板子布局布線的時候,將PCIe X4模式下的數(shù)據(jù)收發(fā)差分對引腳0和1弄反了,2和3是對的,如圖7-55所示。這個細(xì)節(jié)導(dǎo)致無數(shù)用戶付出了慘痛代價。很多用傳統(tǒng)Verilog開發(fā)FPGA的用戶,看原理圖不仔細(xì),或者說黑金太隨意了,為了自己的布局方便,把0跟1故意調(diào)換了一下,那么在Vivado里面默認(rèn)的PCIe引腳就不對了,必須要人為調(diào)整才行。

圖7-55:仔細(xì)檢查一下PCIe X4或者X8數(shù)據(jù)差分對順序是否正確

? ? ? ? 為了方便我們廣大LabVIEW FPGA用戶開發(fā),我們特地在頂層xdc里面將PCIe X4全部引腳定義拉出來,用戶只要自己根據(jù)實際情況修改就行,而無需在網(wǎng)表里面定義,簡化了大家的編程,也避免了一些不必要的錯誤。希望這一點能夠引起開發(fā)者的注意?。?!重要的事情說三遍,0跟1互換了,所以引腳定義也要變,如圖7-56所示。

圖7-56:PCIe數(shù)據(jù)差分對引腳要跟原理圖保持一致

? ? ? ? 最后我來再來看看黑金的Kintex7開發(fā)板AX7325上面的PCIe引腳定義約束文件是如何編寫的,如圖7-57所示。K7開發(fā)板上默認(rèn)是PCIe X8接口,因為X8向下兼容X4模式,所以如果我們要把這個X8改成X4模式,需要注釋掉一些Lane,同時還需要根據(jù)實際原理圖選擇正確的引腳定義,如圖7-58所示。需要注意的是,K7芯片有兩個完全獨立的PCIe X4,或者說是一個PCIe X8,因此,如果要設(shè)置成X4模式,需要根據(jù)原理圖正確選擇。

圖7-57:將Kintex7-325T-FFG900-PCIe X8模式改成X4模式
圖7-58:根據(jù)原理圖選擇正確的PCIe數(shù)據(jù)傳輸引腳(K7有兩個PCIe X4,比較特殊)


LabVIEW FPGA PCIe開發(fā)講解-7.5節(jié):修改底層XDC約束文件以適配第三方的FPGA PCIe硬件的評論 (共 條)

分享到微博請遵守國家法律
潮州市| 陇西县| 长兴县| 察哈| 博乐市| 景东| 绥江县| 大渡口区| 禹州市| 双桥区| 武陟县| 灵川县| 贵州省| 烟台市| 肃北| 阿拉善右旗| 龙南县| 青铜峡市| 汕头市| 昌邑市| 通河县| 美姑县| 虹口区| 都匀市| 武城县| 启东市| 巴中市| 沈阳市| 合江县| 民乐县| 曲阜市| 元谋县| 辉县市| 周至县| 平南县| 桐乡市| 汉川市| 游戏| 台安县| 谢通门县| 湘潭县|