引言
筆者是個剛讀研的學生,本科期間從大二開始接觸FPGA,但是高校的EDA教育平臺還是以英特爾(原ALTERA)的FPGA為主,畢竟他們的開發環境入門難度較Xilinx的低很多并且資料也豐富,到大四對FPGA有一定的了解之后,意識到也不應該在某一個單一的平臺上死磕,所以就想整個賽靈思的板子玩玩,正巧這個時候發現咸魚上出現了一批淘汰下來的礦機控制板,主芯片是Xilinx的ZYNQ7000系列的ZYNQ7010,外設也相對比較豐富,其正反面如圖1和2所示,


遂以40元的價格抓緊入手了一塊怕以后沒有了,沒想到這板子市場保有量巨大,現在價格還降到了20元左右😂,然后就是上半年的疫情,因為學校在武漢不得不在家做畢設,當時什么都不方便所以畢設還是在友晶科技的DE10-Nano(英特爾平臺)上完成的FPGA車牌識別,現在再次拿起了它,準備用它搭建一個ZYNQ視頻處理平臺,接下來就具體介紹這個平臺的搭建程序,
下載和除錯器
要用賽靈思的FPGA,JTAG除錯器是一個繞不開的話題,當時剛買板子之后,主要是因為下載器的價格太過高昂而導致學習計劃被擱置,一個普通的賽靈思除錯器在某寶上的價格最少都要一百多元,對于一個還沒有經濟收入的窮學生來說也算是一筆大開銷了,在上半年疫情在家的時候,看到有大佬開源了基于FT232H的JTAG-HS3除錯器的硬體原理圖和韌體,全套硬體下來成本不過30元,對于我這樣的垃圾佬來說簡直就是莫大的福音,于是便參考大佬的設計制作了一個自己的賽靈思除錯器,它長這樣,TypeC介面的,之后便可以開始快樂的搞開發了,

除錯器原理圖和韌體可以在這下載:
除錯器原理圖和韌體
開發板硬體改造
開發板的硬體原理圖和PCB已經有大佬逆向出來了,可以在Github上下載,
下載地址:
原理圖和PCB下載
原理圖上標的NC的就是表示沒有焊接的器件,這里最主要的是JTAG處的排針,串口處的的排針,SD卡槽,PL端的晶振還有12V輸入供電連接的一個二極管(有擴展板就不用),要補的元件如下列圖所示,


同時,想要改PS啟動方式的同學,可以按照原理圖所示的方式更改電阻位置啟動方式,即通過控制MODE引腳的上下拉電阻,

不論何種啟動方式,都只是影響PS從什么地方啟動,不會影響啟動完成后的JTAG除錯,
軟體開發
安裝Vivado軟體,可以按照以下大佬的開發流程創建PL端和PS端的程式,我這里主要講硬體平臺搭建,大佬的寫的軟體開發教程比我好,所以不贅述,
軟體部分教程
按照這個教程進行Vivado端開發后,用下載器把程式燒寫到板子上,得到下面的結果圖,表明已經跑起來了,

擴展板
正如我之前所說,我使用這塊板子準備進行視頻相關的開發,板子上有著3個2×20的擴展介面,這些擴展介面提供了很好的擴展能力,但是不可能用杜邦線搞成一團亂麻,所以就需要畫擴展板,于是乎我按照我的需求設計了如下外設:HDMI介面、串口屏介面,雙目攝像頭CMOS介面,
按鍵和LED燈我沒有加,一是因為這兩個外設完全可以使用串口屏進行很好的替代,二是IO確實不夠用了,
HDMI介面需要使用到ZYNQ芯片上的差分對,于是乎我就按照芯片手冊和原理圖整理出了下列的擴展埠對應IO埠和差分對資訊,

依照上面的擴展介面圖,我設計了下圖所示的轉接板,HDMI差分對和IO埠嚴格按照等長和阻抗匹配相關規范設計(雖然礦板本身已經走的線已經是亂的了哈哈,但這就是硬體開發的情懷),板子上搭載了電源輸入的TypeC介面,和轉3.3V的轉換電路,還有HDMI的相關電平轉換電路,串口屏的信號線和HDMI介面的HPD信號線和CEC信號線公用(這兩個信號HDMI顯示的話用不上,是用來實作特殊功能的)并通過跳線帽進行選擇,剩下的就全部都是CMOS排針了沒啥好介紹的,

打樣回來焊接好迫不及待地進行測驗,參照相關教程寫了一個HDMI顯示彩條的工程進行測驗,結果很成功,如下圖所示,


至此,所有的有關的硬體平臺搭建的流程差不多就結束了,可以愉快的進行開發了,當然,擴展板和下載器我打樣了多份,目前還有兩三個多的,有需要的可以聯系我,稍微意思個元件錢我就可以送你了哈哈,送完了就沒了哈😂,
擴展板原理圖和對應的HDMI工程我也上傳了,可以在這里下載:
擴展板原理圖
HDMI工程
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/196407.html
標籤:其他
上一篇:var $inp = $('input:text');//獲取所有的輸入框 中 input:text 這是什么語法,什么類的書有講
