999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于CPLD+FLASH通用快速的FPGA配置方案*

2021-03-21 04:34:42李治輝
通信技術 2021年2期

袁 君,李治輝,姚 超

(中國電子科技集團公司第三十研究所,四川 成都 610041)

0 引言

由于FPGA數據掉電丟失的問題,FPGA配置是系統設計中必不可少的部分[1]。隨著FPGA配置文件的增大,配置時間在系統啟動過程中所占的時間比例越來越不可忽視。如果FPGA設計中包含PCIE、SDIO等從設備,還必須在CPU啟動掃描設備前就配置完成并進入工作態,這時FPGA配置的速度尤為關鍵。實際應用中,每個項目選用的FPGA型號不盡相同,配置的相關參數也不同,但是FPGA的從模式配置時序卻基本一致[1]。為了保證足夠的配置速率和配置模塊的快速移植,針對嵌入式系統中CPU+FPGA的典型應用[2],本文提出了一種基于CPLD+FLASH的通用、快速、全國產化的FPGA配置方案。該方案兼顧靈活性和通用性,對實際項目具有極大的參考價值。

1 方案架構

方案的系統組成如圖1所示。CPU與CPLD通信一般對速率不敏感,可通過SPI、I2C、LocalBus以及GPIO等簡單接口交互,幾乎每個系統的CPU都滿足條件。CPU不僅可以和CPLD通信,實現接口轉換或數據處理等邏輯功能,還可以通過CPLD內部的SPI FLASH控制器操作外部FLASH。CPLD讀取FLASH內的配置參數和數據,按照從模式配置接口的時序要求實現FPGA的配置。

圖1 方案原理架構

本方案主要有3個優點:

(1)通用性強。硬件設計和CPLD邏輯設計保持不變,CPU僅僅通過改變FLASH上存儲的數據格式,便可以實現不同FPGA芯片的程序配置,能夠快速應用于新項目,縮短項目開發調試周期。

(2)配置速度快。CPLD整個配置期間無需CPU干預,而且可以上電后立即啟動配置[3],能夠最大程度地減少配置時間。

(3)靈活性高。支持CPU在線更新FPGA配置文件和配置參數,實時獲取配置狀態和結果,方便項目調試。

本著國產化的產品目標,兼顧成本和性能,設計中CPLD采用安路公司的ELF2L45。該器件具有4 500個LUT和700 kb的BRAM,足夠實現本方案的邏輯功能。FLASH型號選擇兆易創新的GD25Q系列,時鐘頻率高達104 MHz,不同存儲大小的型號能做到設計兼容。

2 FLASH數據存儲格式

當前市面上的主流FPGA(Xilinx、intel、安路、高云等)都支持從串、從并的配置方式,且遵循如圖2所示的配置時序波形。

圖2 FPGA從模式配置典型時序

不同型號的FPGA配置主要有復位脈沖時間T1、等待初始化完成的時間T2、等待時鐘和數據輸出的時間T3、配置文件長度L、比特序bs、字節序Bs、文件加載后DONE拉高前額外需要的CCLK數量N1、DONE拉高后啟動完成前額外需要的CCLK數量N2、配置接口數據位寬W等變化因素。

根據上述配置變量,方案中FLASH內部存儲的數據格式定義如圖3所示。第0個page用于存儲配置過程的變量,可隨著FPGA配置參數的變化靈活改變。其中,標記定義為常數,用于識別配置參數起始位置,并預留校驗和字段,用于驗證配置參數的正確性;文件長度包括配置文件后面的填充數據;CPLD在填充數據輸出期間繼續輸出時鐘和特定的數據,保證DONE拉高前FPGA能夠正常進入啟動過程;填充數據的最小長度PL可按PL=([N1/8]+1)×W計算。配置接口數據位寬W支持1 bit和8 bit兩種,足夠滿足實際應用。

3 CPLD設計與實現

3.1 原理框圖

如圖4所示,CPLD主要完成與CPU的數據通信,實現SPI FLASH控制器和FPGA配置控制等功能。

圖3 FLASH數據存儲格式

圖4 CPLD內部實現

主要有5個子模塊。第一,CPU通信接口。按照自定義協議與CPU進行數據收發,并進行通道的分流和合流。第二,SPI FLASH控制器,實現CPU和CPLD對外部FLASH的各種命令操作。第三,寄存器讀寫,提供RAM讀寫操作接口。第四,配置控制模塊,負責主動發起FLASH的讀請求和處理讀返回數據。第五,從配置接口,完成FPGA從配置時序的控制。

3.2 SPI FLASH控制器

SPI FLASH控制器支持兩個8 bit的FIFO通道訪問,按數據幀的方式仲裁和處理,實現過程如圖5所示。外部CPU實現FLASH的擦除、編程以及讀等操作。FLASH編程后置QE位,使能SPI接口的四線模式。CPLD實現配置期間FLASH數據的快速讀取。由于FLASH接口沒有流控,控制器輸入需要做整包處理,保證一幀寫數據能夠連續發往FLASH。控制器輸出緩存需預留足夠的空間,保證每次的讀數據完整不丟失。命令序列控制主要實現與FLASH交互的字節順序。SPI控制器完成并串轉換和SPI總線的時序控制。

圖5 SPI FLASH控制器實現

為優化CPLD資源占用,控制器僅支持讀ID、寫使能、讀寫狀態寄存器、擦除(扇區擦除、塊擦除、芯片擦除)、單線/四線讀和頁編程[4]命令。圖6是用安路開發軟件抓取到的FLASH四線讀操作時序。波形中可以看到8 bit位寬檢測碼0xBB11220044、同步字0xAA995566等標志性字段,讀數據是四線傳輸,但是命令、地址和dummy都是單線傳輸。考慮到該部分時間開銷,一次操作讀取的數據越長效率越高。此外,FLASH的SPI接口時鐘頻率應滿足條件:

圖6 邏輯分析儀捕獲的FLASH四線讀操作波形

3.3 內部寄存器

考慮到設計的靈活性和調試的便捷性,CPLD內部定義以下5個和配置相關的通用寄存器。

寄存器1:讀FLASH起始page,默認page0。

寄存器2:配置啟動信號,CPLD自清零。

寄存器3:配置結束標志和配置結果,包含錯誤狀態。

寄存器4:配置文件長度,從FLASH中讀取的參數值。

寄存器5:當前配置已輸出的數據長度。

當FLASH上存儲多份配置數據時,可通過寄存器1選擇當前配置的版本。如果系統對FPGA上電配置時間有要求,可以修改寄存器2的默認值使能配置啟動。CPLD上電后會立即開始FPGA的配置,不占用CPU的啟動時間。CPU啟動后還可以寫寄存器2觸發在線配置。CPLD開始配置后自動清零該寄存器。配置過程中,CPLD實時更新寄存器5。CPU任意時刻都可以讀相應的寄存器判斷配置狀態和進度,實時獲取配置結果,定位配置失敗原因,在項目調試和問題排查中極為方便。

3.4 配置流程

根據上述原理,CPLD的配置邏輯按照圖7的流程圖設計。上電自動啟動配置或者CPU命令啟動配置都會觸發該流程。每次配置CPLD先主動讀FLASH的控制參數page,獲取本次配置所需要的參數,隨后只要緩存空間足夠,就繼續讀取FLASH的配置數據,且地址依次遞增直到累計讀取長度達到配置參數L。讀返回數據寫入一個位寬8 bits、深度1 024 words的異步FIFO中。寫入前需根據bs進行比特序調整,根據W進行位寬轉換。從串模式下,FIFO中只有最低比特有效。異步FIFO采用showahead模式,初始化完成再等待T3時間后開始讀FIFO。只要FIFO非空即讀,同時將讀數據輸出到DATA。讀時鐘取反后輸出到DCLK,保證時鐘上升沿處于數據最佳采樣窗口。FIFO空時,DCLK和數據都輸出低電平。配置數據輸出完成后檢測到DONE拉高,再根據配置參數N2繼續輸出時鐘,然后結束本次配置。無論配置是否成功,CPLD都會將配置結果記錄在寄存器中。

圖7 CPLD內部狀態跳轉示意

4 實測與分析

本文以FPGA型號為復旦微電子公司的JFM7K325T為例[5],配置文件約11 MB,FLASH接口的SPI時鐘頻率fQSPI為50 MHz,每幀讀取一頁,配置接口時鐘頻率fDCLK為25 MHz,數據位寬W為8 bit。

圖8 邏輯分析儀捕獲的CPLD配置過程波形

CPLD完成一次成功的配置需經歷圖8中的5個步驟。其中,cfg_timer記錄配置FPGA所消耗的時間,波形中顯示的是十進制;計數的時鐘為25 MHz;CPLD從啟動配置到DONE管腳拉高大約需要522 ms;CPU完全能在BOIS階段掃描到FPGA實現的從設備,滿足項目對配置時間的要求。如果提高SPI時鐘速率、配置位寬、配置時鐘頻率和每幀從FLASH讀取的數據長度等,配置時間還可進一步縮短。

5 結語

針對CPU+FPGA的應用架構,提出一種基于CPLD+FLASH的FPGA配置方案。該方案的硬件和邏輯設計通用性高,可以實現模塊化,便于項目移植且配置速率高,滿足系統啟動要求。CPU還可以靈活更新配置內容,調試和升級方便。該方案具有可行性,已成功應用于多個實際項目,為工程實踐提供了良好的借鑒。

主站蜘蛛池模板: 国产精品一区在线观看你懂的| 毛片手机在线看| 亚洲AV无码久久精品色欲| 多人乱p欧美在线观看| 亚洲六月丁香六月婷婷蜜芽| 国产在线观看99| 国产精品亚欧美一区二区| 思思99思思久久最新精品| 日韩区欧美区| 亚洲a免费| 九九九九热精品视频| 日本在线亚洲| 最新精品久久精品| 成人av专区精品无码国产| 亚洲色无码专线精品观看| 欧美亚洲国产一区| 大乳丰满人妻中文字幕日本| 亚洲免费播放| jizz在线观看| 一本无码在线观看| 欧美精品成人| 欧美激情成人网| 刘亦菲一区二区在线观看| 精品视频一区在线观看| 日韩小视频在线播放| 东京热高清无码精品| 欧美人与性动交a欧美精品| 免费毛片视频| 国产成人亚洲精品无码电影| 国产 日韩 欧美 第二页| 国产a网站| 狠狠色丁香婷婷| 夜夜操国产| 成人精品区| 久青草免费在线视频| 女人爽到高潮免费视频大全| 拍国产真实乱人偷精品| 97国产成人无码精品久久久| 真实国产乱子伦高清| 亚洲精品动漫| 国产免费久久精品99re不卡| 国产成人精品视频一区二区电影| 欧美在线伊人| 无码区日韩专区免费系列| 亚洲人成网站色7799在线播放| 东京热av无码电影一区二区| 永久成人无码激情视频免费| 99热这里只有精品免费| 91在线视频福利| 国产乱肥老妇精品视频| 国模视频一区二区| 亚洲爱婷婷色69堂| 精品成人一区二区三区电影| 国产人碰人摸人爱免费视频| 无码人妻免费| 午夜精品久久久久久久99热下载 | 三级国产在线观看| 亚洲无线国产观看| 天天综合网亚洲网站| 人妻熟妇日韩AV在线播放| 日韩在线永久免费播放| 国产精选自拍| 亚洲无线视频| 亚洲中文字幕国产av| 国产嫖妓91东北老熟女久久一| 国产在线小视频| 国产第一页免费浮力影院| a毛片在线免费观看| 又爽又黄又无遮挡网站| 亚洲中文字幕久久无码精品A| 欧美啪啪视频免码| 亚洲人人视频| 久久久久国产精品嫩草影院| 国产地址二永久伊甸园| 国产精品亚洲综合久久小说| 欧美日韩国产在线人成app| 国产日韩精品一区在线不卡| 亚洲无码在线午夜电影| 无码专区国产精品一区| 日本欧美午夜| 日本五区在线不卡精品| 国产精品女熟高潮视频|