《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 其他 > FPGA教學——如何將易靈思FPGA干到750MHz(1080P顯示)

FPGA教學——如何將易靈思FPGA干到750MHz(1080P顯示)

2022-08-29
作者:電子技術應用專欄作家 瘋狂的FPGA
來源:電子技術應用專欄作家 瘋狂的FPGA
關鍵詞: FPGA 易靈思

  前陣子寫過一篇文章《如何才能半導體雪崩中活下來》,然后昨天任老爺子就發布了講話,即接下來是全球經濟衰退期,為了保證度過未來三年的“經濟”危機,縮減業務,核心聚焦,不再關注銷售額,而是現金流/利潤為王。

  微信圖片_20220829173338.png

  為了活下來,我們可以躺平;我們需要臥薪嘗膽,既然不適合去轟轟烈烈趕一把,我們反而可以利用這段時間,臥薪嘗膽,好好學習。前陣子出差+工作耽擱了下,內心無比愧疚,今天重新開始學習分享FPGA知識,歡迎各位斧正。

  拿來主義的好處就是,相對效率會更高一點,并且試錯成本還低很多。那么在此感謝原廠FAE王奇搶先一步在我的開發板商移植HDMI,讓我們在易靈思Ti60 FPGA上一睹為快。

  微信圖片_20220829173358.png

  易靈思鈦金系列FPGA Ti60F255的開發板,出爐已經有一些日子了,板載HDMI電路理論上是成熟的(別家FPGA上我驗證過),但卻一直沒能擠出時間來移植一下HDMI 1.4的顯示方案,今天我們就來挑戰一下IO模擬1080P60,把易靈思Ti60 FPGA干到750MHz主頻!

  微信圖片_20220829173410.png

  這部分采用FPGA模擬的話,電路其實非常簡單,加了EMC芯片后的原理圖如下所示。

  微信圖片_20220829173422.png

  HDMI 采用和 DVI 相同的傳輸原理——TMDS最小化傳輸差分信號。TMDS 傳輸系統分為兩個部分:發送端和接收端。TMDS 發送端收到HDMI 接口傳來的24bit RGB信號,然后對這些數據進行編碼和并/串轉換,再將RGB 信號的數據分別分配到獨立的傳輸通道發送出去。接收端接收來自發送端的串行信號,對其進行解碼和串/并轉換,然后發送到顯示器的控制端;與此同時也接收時鐘信號,以實現同步。

  微信圖片_20220829173438.png

  網上很多FPGA模擬HDMI PHY的設計,可參見https://zhuanlan.zhihu.com/p/435937460。其中以Digilent的HDMI IP最為常見,其采用VHDL模擬TMDS,用FPGA實現HDMI的收發,節省了外部PHY芯片的成本(https://github.com/Digilent/vivado-library)。

  微信圖片_20220829173449.png

  Digilent HDMI IP方案,后來很多朋友其他平臺上都有移植,我也在Xilinx和安路上都有移植測到過,其采用VHDL實現,稍微有點復雜。不過今天我將在FAE王奇的基礎上,消化吸收另一個HDMI tx ip(采用Verilog編寫,結構很簡單),在易靈思Ti60 FPGA挑戰下1080P60(其實主頻主要還是看收發器的速率)。這里也感謝這個HDMI IP創作者的勞動果實,Verilog Header如下:

  微信圖片_20220829173459.png

  給出目前的框圖,如下所示,外部輸入25M,由Interface的PLL生成150/750MHz(離開148.5MHz有點偏差也沒關系),hdmi_ip接收前面測試的RGB數據后,模擬HDMI協議發送給外部,在顯示器上顯示。由于TMDS用10bit編碼,FPGA采用DDR模式進行數據發送,因此當串行時鐘是像素時鐘的10/2=5倍。

  微信圖片_20220829173510.png

  我們在Interface中配置PLL,這里輸入25M,輸出150+750MHz,如下圖所示:

  微信圖片_20220829173520.png

  另外,這里的關鍵是我們采用易靈思的Double Data IO,配置如下,這里將hdmi_tx_data和hdmi_tx_clk都打開了resync模式:

  微信圖片_20220829173536.png

  查詢Efinity help文檔,可以看到DDIO的Resync Mode,用戶在Clock下降沿輸入OUT0+OUT1,GPIO在上升沿輸出OUT0,在Clock下降沿輸出OUT1,從而達到了倍頻的目的(這里的HI就是OUT0,LO就是OUT1)。

  微信圖片_20220829173550.png

  那么在代碼中,我們需要驅動GPIO DDIO前的HI與LO,我們的頂層代碼如下:

  微信圖片_20220829173602.png

  這部分通過serdes_4b_10to1.v文件編碼輸出,相關代碼如下所示:

  微信圖片_20220829173615.png

  最后,采用Efinity進行綜合,上圖中的邏輯跑到了750MHz,DDIO實現了1.5Gbps的帶寬。DDIO 1.5Gbps已經是易靈思的瓶頸了,雖然時序有一點小違例(150M到750M跨時鐘域部分電路),但是HDMI 1080P60已經成功顯示,如下所示(盜用8年前的圖,懶得拍)。

  微信圖片_20220829173628.png

  本來打算移植LVDS模式,但是頻率上不去,目前懷疑HDMI電路還得加上拉電阻,當前版本省略了,以后有機會再試試。下一步,上T35移植HDMI測試一下能跑到多少頻率,至少應該能跑720P吧?

  微信圖片_20220829173641.png

  本文配套開發板Ti60F225 FPGA開發板,請轉crazyfpga.taobao.com(CB電子鋪)了解更多。

  對易靈思FPGA感興趣的朋友,歡迎進FPGA微信群交流,我們共同進步,等待疫情過去,我們重新坐起來。

  由于群規模在短時間內超過了200人,無法再掃碼入群,請有興趣的朋友添加客服同學的微信,再邀請入群。

  微信圖片_20220829173808.png

  關于FPGA國產替代,以及FPGA解決方案咨詢,歡迎加入知識星球一對一探討交流,碰撞思維火花。


 更多信息可以來這里獲取==>>電子技術應用-AET<<

微信圖片_20210517164139.jpg

1000122090-6379289281843256232178998.png

電子技術應用專欄作家: 瘋狂的FPGA 


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:[email protected]
主站蜘蛛池模板: 精品久久久影院 | 韩国一大片a毛片 | 亚洲午夜网 | 国产精品爱久久久久久久 | 欧美成人免费高清二区三区 | 欧美亚洲国产精品久久高清 | 成人国产精品久久久免费 | 99久久精品毛片免费播放 | 亚洲综合国产 | 精品国产区| 在线欧美精品一区二区三区 | 国产高清av在线播放 | 亚洲免费视频网址 | 波多野结衣在线观看一区二区三区 | 欧美另类视频一区二区三区 | 玖玖在线免费视频 | 欧美日本视频一区 | 国产一级精品毛片 | 免费国产高清精品一区在线 | 一级毛片免费播放视频 | 久久久视频在线 | 精品香蕉99久久久久网站 | 欧美一级毛片欧美一级无片 | 毛片免费全部免费观看 | 99在线视频网站 | 成人久久久久久 | 99re热这里只有精品视频 | 特黄特色一级特色大片中文 | 欧美一级二级片 | 亚洲一级毛片在线观播放 | 亚洲香蕉一区二区三区在线观看 | 久操影视 | 一本色道久久88亚洲综合 | 日韩在线观看一区二区三区 | 韩国免又爽又刺激激情视频 | 国产亚洲一区二区三区在线 | 中文精品久久久久国产网址 | 欧美一级在线 | 日本视频在线观看不卡高清免费 | 毛片免费观看日本中文 | 丁香狠狠色婷婷久久综合 |