FPGA主要由IO資源 / CLB /佈線等構成片子,通過在線編程配置不同模塊信息來半定製開發設計芯片。目前本人主要從事圖像採集這一塊。
什麼是selectIO,怎麼用?
selectIo是fpga中的可配置邏輯輸入輸出,通過內部搭建不同的電路來適應各類接口。一般通過原語調用,適配輸入輸出。常用的有串並轉換 ISERDESE2、數據延遲 IODELAY、差分轉單端BUFDS。
補充介紹:Selectio介紹主要有電氣特性/邏輯資源/高級io資源。
電器特性
1、FPGA的bank分爲HR bank和HP bank,
HP支持小於1.8V電平的IP標準,HR只支持小於3.3V的電器特性。每個bank都支持輸入或輸出,及差分模式。並且,每個bank的首尾管教只能作爲單端IP。
2、IO資源
ILOGIC:/OLOGIC
就是數據選擇器加IDDR(inputDouble data rate).是數據的輸入輸出端。可以簡單理解外接管教,但是輸出後接寄存器緩存,輸出後接三態選擇。
IDELAY/ODELAY:
信號延遲,可以將信號延遲0-31節,並且每節的延遲精度約爲78ps(1/(32*2*fref)參考時鐘),也就是說,通過調節tap可以設置以參考時鐘/32爲單位的時間延遲,該延遲對時鐘和數據都有效。
IDELAYCTRL:輔助模塊,由該 模塊決定延遲精度,參考時鐘就是該模塊的輸入時鐘。
3.對IO資源的使用,兩個原語模塊
ISERDESE2(Input serial-to-parallel converters)和OSERDESE2(output parallel-to-serial converters)模塊,通過該模塊可以控制IO的下列五個模塊。主要包括串行數據輸入端、時鐘接口、級聯接口、數據對齊模塊和並行數據輸出端
數據對齊操作bitslip
簡單來說就是串並轉換過程中,因爲高速傳輸信號,尤其是未做同步的數據,可能導致數據之間仍然有時鐘間隔,不做對齊處理會默認間隔爲零。所以就需要做一個對齊操作。一般情況只需要設置一個對比信號,從而判斷信號錯了幾個週期,再通過bitscrp調整字節位置。
IO_FIFO。數據緩存fifo,不理解。
如題,算是一個整理歸納。計劃從io /clb/ 語法/fifo、bram/電路優化/高速信號拓撲/圖像採集、圖像輸出/圖像處理/zynq等方面進行逐步整理。