本文整理自2023年6月12日~6月18日,本公眾號【FPGA算法技術交流群】的相關問答。相關問題的解答和交流來自群成員,僅作參考。
問
FPGA做IC的原型驗證,速度大概跑多少?很多ASIC運行主頻遠遠高于FPGA,仿真能cover住嗎?
答
FPGA主要用來做功能驗證,一些接口確實需要那么高那就上,其他的不需要。Emulator可用并行計算時序的方式來仿真,更加接近仿真,但比仿真快得多。Emulator大概幾M的速度,Prototype大概10到100M。流片之前盡可能去模擬他的功能和性能,最接近的就是FPGA原型驗證。
問
PHY怎么驗證到位?正確性由誰來保證呢?
答
原型驗證的PHY也不一定和ASIC的一致,保證通路即可。另外有些PHY可以用FPGA自帶的PHY IP來模擬。任何驗證手段都是互相補充,最終達到完備性。
模擬的器件會有模擬端來驗證,數字的基本功能都會先在Simulation保證,純數字就代表可綜合。模擬的就會抽可綜合的模型來替換。模擬的設計在模擬端保證,和數字集成到一起的時候就會模擬數字化。
PHY有單獨的IP,接口協議都是統一的。例如PCIe、DDR4、Ethernet等。Simulation和Emulator都有相應的PHY model,FPGA階段也可以用原廠的PHY板,但有時沒必要,因為高速接口都是標準的,所以可能會用別的ip去代替,然后和真實device連接,保證通路,軟件測試通過就可以。
如果是數?;旌?a href="http://www.1cnz.cn/v/tag/137/" target="_blank">芯片,設計過程中數字可以把RTL或后端輸出的網表,導入給模擬工程師做模擬域的仿真。反過來模擬也可以出verilog模型給數字工程師在數字域仿真。
問
2MHz ,2V Vpp,放大到10vpp,應該選用多大的運放?如何計算帶寬?
答
如果是電壓反饋運放,建議選擇20M以上,理論計算10M以上即可。而且應該是全功率帶寬,不能只看小信號帶寬。如果是電流反饋型,選個5M估計足夠,另外就是電流驅動能力。帶寬的話,運放指標主要是增益帶寬積,開環增益和開環帶寬的乘積。
問
有個問題請教一下,FPGA芯片怎么能把10k的時鐘擴到100M?
答
MMCM和PLL的輸入下限分別是10M和19M,設計思路可能需要和團隊一起商討一下。
問
請教一個LVDS接收問題。需要考慮如何將數據和時鐘對齊。但是LVDS視頻流沒有同步碼,大家是怎么處理同步?
答
有兩種方法,要么數據里邊有特殊字符,要么有其它信道傳輸同步信息。對于視頻圖像,一般都會有接口協議,行、場同步信號。
de就是同步信號,hs是行同步,vs是場同步。把視頻流用顯示器顯示出來,然后通過修改skew然后找到圖像由壞變好和由好變壞的臨界點,然后中間位置就是最穩定的,一般調整90°就行。還有一些芯片自備prn碼調試這個skew。其實對于這種VESA格式的視頻流,還有更簡單的方式,直接調用Xilinx的selectio ip核。采用DDR模式就能采下來。
如果用不了DDR模式,可參考Xilinx的Xapp585,就是這種時序的例程。里面收發都有,還有gearbox例程,教你怎么樣將8bit或者4bit轉為7bit。
此外,對于接收數據,Xapp524講這個,需要做個狀態機,找到delay調整值,每次上電之前等這個狀態機穩定了再開始拿數據。但是這個設計是不考慮系統溫升對IO的影響的,如果可靠性要求高,需要隔一段時間校準一下IO的delay。
問
有沒有邏輯優化的一些資料?
答
推薦高亞軍老師的《AMD FPGA設計優化寶典》,VHDL版已上市,verilog版據說即將出版。
此外,《高級FPGA設計:結構、實現和優化》也可以看看。
問
這個鏡像地址是根據flash確定的嗎?
答
golden起始地址必須是0,upgrade是800-000,16M flash空間的一半。
問
輸入輸出雙向的端口(inout),我直接定義為輸出端口(output)使用,大家有這樣用過嘛?會有問題嘛?
答
FPGA的user IO,電路結構是雙向的。然后我們根據需要,聲明位input/output或者inout。外部I2C器件,把scl定義為output,可以正常訪問。如果是zynq的PS I2C,要聲明為雙向,sda要設置為雙向。如果PS的I2C拉到EMIO,那么SCK也要設為雙向。盡管就PS一個主設備。
問
求問,Vivado里FFT和LTE FFT的IP核有啥區別呢?
答
LTE FFT要收費,但是支持1536點。LTE FFT說白了就是額外支持3*2^k點數的變換。Vivado里DFT點數支持1536,可以使用統一的2048點FFT實現所有帶寬模式的處理。
問
8184點數據,怎么均勻下采樣到2048個數據???采樣時鐘的8.184M,1ms相干積分。
答
設計算法時候需要考慮硬件實現,AD采了樣,DFE中濾波,可以再來個法羅插值找最佳采樣點。符號定時同步,可以參考一下Michael Rice的《Digital Communications:A Discrete-Time Approach》中的第8章:Symbol Timing Synchronization。此外,也可參考一下Umberto Mengli的《Synchronization Techniques for Digital Receivers》。
問
AXI4,AXI4-Lite,AXI-Stream這三個在應用上怎么考慮選擇?
答
AXI4包含3種類型的接口: (1)AXI4:主要面向高性能地址映射通信的需求; (2)AXI4-Lite:是一個輕量級的,適用于吞吐量較小的地址映射通信總線; (3)AXI4-Stream:面向高速流數據傳輸。
第一個有突發,第二個無突發,第三個無地址。在仿真時,Vivado 模板 AXI-Lite Master和AXI-Lite Slave連上仿真,AXI4可以和MIG連著仿真。Xilinx 有個AXI Verification IP ,就四步驟:1.引入兩個package,2.聲明agent,3.用new還是start 函數,即創建和掛載,4.寫一些task??梢詤⒖脊俜降睦?。
此外,可以看一下本公眾號之前的一篇文章,點擊鏈接《AMBA協議規范(一)》可跳轉原文閱讀。
問
FFT后實部,虛部的bit位寬是如何確定的?
答
Xilinx的IP,一般在處理IQ信號時,都是虛部在高位,實部在低位。IP配置時,在左側欄,能顯示FFT的輸入和輸出位寬,和定點格式。FFT的輸出位寬和輸入也有關系,配置的時候注意。此外,DFE和ADC的IQ數據位寬和實部、虛部,將決定FFT的輸入。
問
flash讀寫,一般是大端還是小端?如果是QSPI,讀寫一個字節比如3E,是先3還是先E?。?/p>
答
看QSPI的協議規定,注意位序。
問
mcs文件固化,讀寫flash是跟bin文件還是mcs文件對得上?
答
理論上,mcs和bin 都可以,習慣用bin。
問
FPGA需要這樣的一個場景,MUX選擇是從6個時鐘中選擇1個,并且時鐘頻率都不低(有沒有合理使用BUFGMUX的方案,我目前能想到的是利用多級BUFGMUX來實現)?
答
不建議切時鐘,而是邏輯設計中做跨時鐘處理,切時鐘可靠性不好做。如果硬要這么設計,試一下Vivado的MMCM動態配置功能。
審核編輯:湯梓紅
-
FPGA
+關注
關注
1629文章
21729瀏覽量
603010 -
原型驗證
+關注
關注
0文章
22瀏覽量
10734 -
lvds
+關注
關注
2文章
1043瀏覽量
65795 -
PHY
+關注
關注
2文章
301瀏覽量
51732 -
時序
+關注
關注
5文章
387瀏覽量
37318
原文標題:FPGA算法技術交流問答集錦(6.12~6.18)
文章出處:【微信號:FPGA算法工程師,微信公眾號:FPGA算法工程師】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論