[發明專利]FPGA內ROM映射區動態刷新糾錯方法有效
| 申請號: | 201110295603.5 | 申請日: | 2011-09-29 |
| 公開(公告)號: | CN102508729A | 公開(公告)日: | 2012-06-20 |
| 發明(設計)人: | 童亞欽;辛明瑞;張浩 | 申請(專利權)人: | 中國航天科技集團公司第五研究院第五一三研究所 |
| 主分類號: | G06F11/10 | 分類號: | G06F11/10 |
| 代理公司: | 北京理工大學專利中心 11120 | 代理人: | 楊志兵;高燕燕 |
| 地址: | 264003 山*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | fpga rom 映射 動態 刷新 糾錯 方法 | ||
技術領域
本發明涉及現場可編程邏輯門陣列(FPGA)技術領域,尤其涉及一種靜態存儲(SRAM)型FPGA內部配置區動態刷新糾錯方法。
背景技術
Xilinx公司出產的靜態存儲(SRAM)型FPGA器件(以下稱為Xilinx?FPGA)運行時的邏輯狀態由配置區的數據決定。但是Xilinx?FPGA器件在實際工作過程中可能因外部工作環境的干擾(如電壓突變、無線脈沖干擾、高能粒子撞擊等)而使FPGA的配置區數據發生改變,從而影響FPGA嵌入邏輯的正常運行。
目前一種保證配置區數據正確性的解決方式為:如圖1所示,使用外部控制電路將存儲于程序存儲器(PROM)的配置文件中的配置數據循環重配置到FPGA的配置區,從而實現FPGA配置區數據的動態刷新。該方法可以在不中斷FPGA正常工作的情況下,反復向FPGA配置區寫入正確的配置數據,確保發生錯誤的配置區數據能得到及時更新,從而增強FPGA工作的可靠性。
Xilinx?FPGA的全部配置數據中既包括對FPGA的工作模式進行設置的指令,也包括將要寫入FPGA的配置區的數據。當對FPGA的配置區進行循環重配置時,有部分指令和數據是不能被反復寫入的,需要在重配置過程中屏蔽掉這部分不允許反復寫入的數據,如果這些不允許反復寫入的數據在FPGA工作過程中被重復寫入,可能會改變FPGA嵌入邏輯的工作狀態,導致FPGA不能正常工作。
Xilinx公司的FPGA開發軟件ISE在生成配置文件*.bit時,也會生成一個數據屏蔽文件*.ll,在該數據屏蔽文件*.ll中列出了不允許反復寫入的配置數據在配置文件*.bit中的位置。因此為了避免對不允許反復寫入的配置數據進行刷新,該動態刷新方法改進為:在動態刷新時,讀取配置文件*.bit和屏蔽文件*.ll,根據兩個文件進行數據分析,只刷新允許反復寫入的數據,從而避免寫入屏蔽字。
然而,這種解決方法具有如下缺陷:
(1)需要將配置信息和不允許重復寫入的信息分別存放在2個不同的數據文件中,需要2塊ROM芯片保存這2個數據文件,增加了硬件的使用,而且分析過程需要對兩個文件中的信息進行解析,過程復雜。
(2)FPGA中的塊RAM資源可以為例化為ROM映射區使用,將這樣的塊RAM稱為ROM映射區,ROM映射區用來存儲固定不變的數據,如工作參數、計算系數等。對于FPGA來說,ROM映射區在邏輯上為只讀類型的存儲區,但是由于其本質上還是RAM,因此有可能因外部環境的干擾而發生改變,如果能夠對ROM映射區進行動態刷新,就可以保證ROM映射區所存儲數據的正確性,而且刷新ROM映射區也不會干擾FPGA內部邏輯的正常運行。但是目前數據屏蔽文件*.ll中所列出的不允許反復寫入的配置數據就包括了ROM映射區中的數據,因此上述的解決方法不能對ROM映射區進行動態刷新。當配置過程結束后,若ROM中存儲的數據內容受外部環境影響若發生不可控的改變,數據將一直保持為改變后的錯誤的值,直到重新對FPGA啟動一次配置過程,這將導致FPGA內部的邏輯電路工作異常。
為了解決ROM映射區刷新問題,目前一種保證ROM映射區存儲的數據正確性的方式為:如圖2所示,采用三模冗余的設計方法,將一塊ROM映射區替換成三塊ROM映射區,ROM多數判決模塊同時讀取三塊ROM中的數據,當大于或等于兩塊ROM中的數據相同時,認為相同的數據即為正確的數據。這種方法需要占用三倍的塊RAM資源,而且多數判決模塊也需要占用額外的FPGA邏輯資源,造成資源使用量大,限制了它在實際工程實踐中的應用。
發明內容
有鑒于此,本發明針對Xilinx?FPGA內的ROM映射區在受到外部環境干擾導致存儲的數據錯誤的情況,提供一種SRAM型FPGA配置區動態刷新糾錯方法,在循環重復刷新配置區數據時,允許動態刷新ROM映射區的數據,能夠保證ROM映射區中數據的正確性;而且與三模冗余方法相比,本發明不需要占用額外的FPGA邏輯資源,而且重啟配置時不會中斷FPGA的工作,可以應用于需要FPGA連續工作的場合。
該方案是這樣實現的:
一種SRAM型FPGA內ROM映射區配置區動態刷新糾錯方法,應用于SRAM型的FPGA,該方法包括:
第一步:FPGA開發軟件ISE生成配置文件和屏蔽字文件;屏蔽字文件記載了屏蔽信息,所述屏蔽信息指示出禁止在FPGA嵌入邏輯工作狀態下被動態刷新的配置信息在配置文件中的位置;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國航天科技集團公司第五研究院第五一三研究所,未經中國航天科技集團公司第五研究院第五一三研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110295603.5/2.html,轉載請聲明來源鉆瓜專利網。





