首頁>Club>
12
回覆列表
  • 1 # FPGA三板斧

    1 FPGA入門基礎知識熟練掌握

    掌握FPGA必備的基礎,熟練掌握Verilog程式語言,熟練掌握FPGA開發工具,ISE,Vivado,quartus,modelsim等。熟悉FPGA的開發流程,編寫約束檔案。

    圖1 VIVADO 17.4 圖2 quartus16.0

    2 FPGA IP核使用

    常用的FPGA IP核的使用,包括FIFO,RAM,加減乘除,浮點IP核,除錯IP核等等

    圖3 VIVADO下的IP核介面

    3 常見通訊介面

    常用的通訊介面,包括UART串列埠,SPI 匯流排,I2C匯流排,EMIF匯流排(與DSP,MCU通訊),I2S,15535B匯流排,PCIE匯流排等。

    4 高速介面

    高速介面包括MIG 7 series(DDR3 介面),7系列FPGA晶片支援DDR3速率最大到1866M,GTX高速通道,高速IO,10G乙太網,PCIE匯流排,SRIO(高速序列通訊介面)等。

    5 時序約束,非同步時鐘域的約束,及常見的跨時鐘域解決辦法

    時序約束是FPGA中的難點,對於一個FPGA大的工程來說,必須保證時序滿足訊號的建立時間和保持時間。

    5.1 建立時間:時鐘有效沿到來之前的某段時間內,資料必須穩定,否則觸發器鎖存不住資料,這段時間成為建立時間,用Tsetup或者Tsu表示。

    5.2 保持時間:時鐘有效沿到來之後的某段時間內,資料也必須穩定,否則觸發器鎖存不住資料,這段時間成為保持時間,用Thold或者Th表示。

    圖4 建立時間和保持時間的位置 圖5 資料建立需要時間

    5.3 資料建立需要時間,如圖5

    5.3.1 Tclk2,不同於上述的Tclk1,這個延時是時鐘從起點(一般是PLL或者時鐘輸入引腳)到鎖存觸發器之間的延時;如上圖所示,REG2實際感受到的時鐘來自於其本身的clk引腳,而不是源時鐘CLK,他們之間存在一個延時,即Tclk2;所以REG2實際感受到的時鐘,實際上是上圖的REG2.CLK;

    5.3.2 Tsu:每一個數據被鎖存都要滿足建立時間和保持時間,Tsu就是建立時間,也就是在REG2實際感受到Latch Edge時,資料如果需要被正確鎖存,就必須提前Tsu的時間來到REG2的D;

    5.3.3 綜合時鐘走線延時Tclk2以及Tsu,我們得到了資料建立時間DRTsu:

    DRTsu=鎖存沿+Tclk2-Tsu。也就是說在DRTsu時刻之前,資料必須已經有效且穩定。

    圖6 資料保持需要時間

    5.4 資料保持需要時間,如圖6

    資料保持需要時間=鎖存沿+Tclk2+Th;也就是說,資料在DRTh時間之前必須保持住不變。

    5.5 常見的非同步時鐘訊號,一是在工程中對訊號進行非同步處理,二是在xdc檔案中設定非同步時鐘組。

    5.6 跨時鐘域常見的解決辦法:一,使用非同步FIFO,二,使用非同步暫存器快取兩拍。

    6 FPGA系統架構設計

    一個工作經驗FPGA工程師,都是從底層開發到系統設計,系統設計需要從FPGA專案的總體考慮,分析專案需求,分解成FPGA模組,設計專案開發方案,換句話說就是搭建FPGA的總體架構。

  • 中秋節和大豐收的關聯?
  • CMOS setup utility copyright(C) 1985--2008 award software系統怎麼裝?