《電子技術應用》
您所在的位置:首頁 > 電子元件 > 業(yè)界動態(tài) > How to自制易靈思FPGA的FLASH 橋接文件

How to自制易靈思FPGA的FLASH 橋接文件

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

  在操作系統(tǒng)中,BootLoader在內核運行之前先啟動,可以初始化硬件設備、建立內存空間映射圖,從而按照設定啟動軟硬件環(huán)境,使之工作在預期狀態(tài)。

  其實FPGA也是如此,在上電之后,需要有邏輯去FLASH讀取數(shù)據(jù),然后配置FPGA,使得可以正常運行我們設計的代碼。

  微信圖片_20220729165909.png

  FPGA FLASH的固化,可以使用AS模式,也可以采用JTAG以bridge的方式去固化。但是,提倡經濟低碳的我們,為了環(huán)保與體積,非得使用一個JTAG的方式,既可以實現(xiàn)在線下載與Debug,也可以通過橋接完成FLASH的固化。

  不管是Altera還是Xilinx,都支持通過JTAG橋接方式對FLASH的燒錄,以Altera為例,采用Quartus將sof轉成jic后,直接用JTAG燒錄FLASH。由于FLASH固化在上電測試或者最終產品化的時候采用,因此雖然麻煩點,但考慮到經濟效益,也可以忍。其GUI界面如下:

  微信圖片_20220729165929.png

  那么,骨骼精奇的易靈思,也是這樣的嗎?如果這樣就沒有下文了。。。

  1.1.易靈思FPGA通過JTAG固化Flash的方法

  易靈思的工具鏈神奇的將這一步到位的操作,分成了獨特的2步,請見下文分解。

  微信圖片_20220729165947.png

  1)首先,通過JTAG下載一個FLASH橋接的固件(bit文件),如下圖所示:

  微信圖片_20220729170000.png

  2)接著,選擇當前設計的hex文件,并且選擇使用JTAG橋接下載flash,點擊開始將數(shù)據(jù)送給1)中spi_flash_loader的固件,然后它接收數(shù)據(jù)后寫入到片外FLASH中。

  微信圖片_20220729170013.png

  備注:這里軟件默認會自動完成擦除以及寫入新的固件。

  微信截圖_20220729170030.png

  3)CRESET_N復位或者重新上電后,F(xiàn)PGA會重新從FLASH讀取數(shù)據(jù)并且完成新的配置,最后FPGA按照最新的設計進行工作。

  那么,問題來了,跟Quartus II相比,這里多了spi_flash_loader的bit,這個bit官方并沒有直接提供給我們,初來乍到的小伙伴也就懵逼了。

  然而現(xiàn)狀就是:易靈思目前需要針對不同的FPGA硬件,需要自己制作FPGA的SPI_Flash_Loader啟動文件,具體流程如下:

  1.2.易靈思FPGA 制作FLASH橋接文件

  整體流程:配置spi_flash_loader的IP,生成的example,然后修改相關引腳配置,具體如下:

  1)打開Efinity軟件,選中JTAG SPI FLASH Loader,如下圖

  微信圖片_20220729170121.png

  2)輸入IP名稱jtag_spi_flash_loader,參數(shù)默認保持不變

  微信圖片_20220729170130.png

  3)選擇需要生成的Demo,不同系列FPGA不一樣,Generate

  微信圖片_20220729170140.png

  微信圖片_20220729170150.png

  這里特別注意,前面1)中非得打開一個(任意的)工程,否則無法給你生成這個IP

  4)回到當前工程的文件目錄,在ip文件夾下會找到jtag_spi_flash_loader的example,如下所示:

  微信圖片_20220729170214.png

  5)這里以T35為例,我們修改一下相關文件名,如下:

  微信圖片_20220729170224.png

  6)然后用Efinify軟件打開工程文件:jtag_spi_flash_loader.xml

  7)刪除*T20.sdc,替換為上圖的*T35.sdc

  8)File→Edit Project,在Device中將FPGA型號修改為T35F324

  微信圖片_20220729170237.png

  9)默認選擇Update Existing Design,干掉Backup

  微信圖片_20220729170245.png

  確認后完成并報錯,時鐘不可避免地需要重新配置,如下圖:

  微信圖片_20220729170258.png

  10)點擊Finish打開Interafce,我們首先進行時鐘rstn引腳的修改,如下:

  微信圖片_20220729170308.png

  備注:這里FLASH IO剛好和T20是一樣的,但是CRESET_N不一樣。

  11)由于我設計的T35F324開發(fā)板使用的是12MHz的晶振,因此對PLL的輸入及位置修改如下:

  微信截圖_20220729172010.png

  12)Check Design,0W0E后,然后生成約束文件

  微信圖片_20220729172030.png

  13)回到Efinity界面,采用template中的sdc模板(主要是時鐘變了,12M PLL輸入只能出來48M,出不來50M(這PLL有點弱))

  微信圖片_20220729172041.png

  14)Dashboard中點擊啟動編譯流程,軟件將自動跑完新的bit。

  至此,基于我設計的T35F324開發(fā)板(12M時鐘)的JTAG SPI_FLASH_Loader鏡像,制作完成。如果你用了同一個系列的FPGA,基本上只需要在Interface修改引腳及時鐘就可以完成新硬件的FLASH Loader的制作。

  微信圖片_20220729172054.png

  1.3.所以為啥不能得更好呢??

  我不得不繼續(xù)深入探討一個問題:為什么Altera FPGA不用那么麻煩?

  既然FPGA上電后自己會從FLASH中引導程序,那么說明FPGA內部一定有時鐘源。查詢Altera的相關手冊,得知Cyclone IV系列FPGA內部有40MHz的時鐘源:

  微信圖片_20220729172106.png

  同時在Quartus II也把這部分功能開放給用戶用了,可在IP列表中找到,如下:

  微信圖片_20220729172118.png

  備注:這里又說了最大80MHz,且不去深究了。

  于是我又去研究了Efinity的手冊,我也找到了肯定的答案,如下所示T與Ti系列FPGA的內部時鐘源:

  微信圖片_20220729172128.png

  另外,T35軟件沒有開放內部osc給用戶,Ti60開放內部osc了,如下(Interface中):

  微信圖片_20220729172141.png

  那么我們必須要檢討,你既然有內部時鐘,同時確定了型號工具相關的IO分配,那為啥這部分功能就不能做到工具鏈里面去呢?有完美強迫癥的我再也無法入睡。。。

  問了FAE,也沒能給出更好的答案,這讓初學者內心受到了N點的傷害。只能說,我又看到了進步空間。,呼吁原廠,在未來軟件版本的release中,盡快將jtag spi_flash_loader的功能,包含到軟件中去。

  我們向往更好的明天。。。

  最后,給個圖,在我自研的T35F324開發(fā)板上,下載前面jtag spi_flash_loader.bit后,再下載流水燈的hex文件,8個LED歡快地跑了起來。

  微信圖片_20220729172202.png

  如果有些地方我理解的不對,也歡迎在評論區(qū)使勁的懟我,謝謝!!

  更多細節(jié),請轉crazyfpga.taobao.com(“CB電子”淘寶店鋪)了解。

  對易靈思FPGA感興趣的朋友,歡迎進FPGA討論組交流,我們共同進步,等待“世界末日”過去……

  由于開發(fā)板并非針對學生市場,而是偏向于公司/行業(yè)用戶,加之前期開發(fā)投入的巨大,以及人力物力暴漲,因此開發(fā)板價格并不會那么親民,請大家慎重考慮。另外,從平臺轉過來的采購的朋友,在本帖發(fā)布一個月內,可享受88折體驗價(口號:104)。

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

 微信圖片_20220729172245.jpg



  原文鏈接:https://mp.weixin.qq.com/s/T2Wd8lESXGXKODR_e1oSgQ

微信截圖_20220705135121.png

 電子技術應用專欄作家


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


本站內容除特別聲明的原創(chuàng)文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創(chuàng)文章及圖片等內容無法一一聯(lián)系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 日本一区二区三区视频在线 | 狠狠色丁香婷婷久久综合不卡 | 日日摸夜夜摸狠狠摸日日碰夜夜做 | 国产一精品一av一免费爽爽 | 国产激情视频在线 | 黄色小毛片 | 国产小视频在线免费观看 | 一个人看的www日本视频 | 国产免费一级精品视频 | 夜夜拍拍 | 激情综合婷婷亚洲图片 | 亚洲久操| 成人免费观看在线视频 | 国产在线精品一区二区不卡 | 伦理午夜| 一色屋成人免费精品网站 | 国产亚洲欧美在线 | 五月婷婷伊人网 | 日本三级特黄在线观看 | 天天摸日日碰天天看免费 | 小明成人免费永久性看看 | 成人在线不卡视频 | 欧美中文日韩 | 久热操| 韩国伦理在线免费观看 | 成人片在线视频 | 亚欧精品一区二区三区四区 | 国产综合亚洲专区在线 | 亚洲图片视频在线观看 | 免费看一级黄色 | 黄色片网站免费 | 天天做天天爱天天爽 | 五月天婷婷伊人 | 国产一二三区在线观看 | 99成人精品| 丝袜网站在线观看 | 久草香蕉视频 | 日韩精品欧美亚洲高清有无 | 中文字幕日韩高清版毛片 | 女全身裸无遮挡免费毛片 | 黄色在线看网站 |