亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

基于fpga的嵌入式系統(tǒng)及其配置方法

文檔序號:6339402閱讀:246來源:國知局
專利名稱:基于fpga的嵌入式系統(tǒng)及其配置方法
技術領域
本發(fā)明涉及嵌入式領域,具體而言,涉及基于FPGA(Field Programmable Gate Array,現(xiàn)場可編程門陣列)的嵌入式系統(tǒng)及其配置方法。
背景技術
目前,嵌入式系統(tǒng)產(chǎn)業(yè)發(fā)展極其迅猛,已經(jīng)成為計算機體系的重要組成部分。嵌入式產(chǎn)品已經(jīng)深入到人們生活的方方面面,可謂無處不在,從手機、MP3到智能家電、車載電子再到航天飛機、衛(wèi)星系統(tǒng),無處不有嵌入式系統(tǒng)在大顯身手。而基于FPGA的嵌入式系統(tǒng)的發(fā)展也方興未艾,正是由于FPGA運算速度快、可并行計算、在線可編程等優(yōu)良特性使得 FPGA在嵌入式系統(tǒng)中的地位穩(wěn)步上升。
然而,F(xiàn)PGA相對較高的成本和功耗成為基于FPGA的嵌入式系統(tǒng)發(fā)展的一個瓶頸。 面對這一難題,業(yè)界通常的做法是在功能、成本、功耗之間進行權衡,得到一個次優(yōu)的方案。 這樣做往往是要么付出成本的代價來實現(xiàn)功能,要么盡量降低功能要求來實現(xiàn)對成本和功耗的控制。發(fā)明內(nèi)容
本發(fā)明旨在提供一種基于FPGA的嵌入式系統(tǒng)及其配置方法,以解決現(xiàn)有的基于 FPGA的嵌入式系統(tǒng)運行效率較低的問題。
在本發(fā)明的實施例中,提供了一種基于FPGA的嵌入式系統(tǒng),包括存儲器,用于保存多個可執(zhí)行文件,其中,每個可執(zhí)行文件是由將期望實現(xiàn)的功能分為多個可分時復用FPGA且相互不耦合的模塊所獨立生成;MCU,用于將各個可執(zhí)行文件依次寫入FPGA中; FPGA,用于執(zhí)行可執(zhí)行文件。
在本發(fā)明的實施例中,提供了一種基于FPGA的嵌入式系統(tǒng)的配置方法,包括將期望實現(xiàn)的功能分為多個可分時復用FPGA且相互不耦合的模塊;將每個模塊獨立生成可執(zhí)行文件;將可執(zhí)行文件寫入嵌入式系統(tǒng)中的存儲器中;嵌入式系統(tǒng)中的MCU將各個可執(zhí)行文件依次寫入FPGA中。
本發(fā)明上述實施例的基于FPGA的嵌入式系統(tǒng)及其配置方法,因為采用了 MCU分時復用FPGA的功能,所以解決了現(xiàn)有的基于FPGA的嵌入式系統(tǒng)運行效率較低的問題,提高了基于FPGA的嵌入式系統(tǒng)的利用效率。


此處所說明的附圖用來提供對本發(fā)明的進一步理解,構成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構成對本發(fā)明的不當限定。在附圖中
圖1示出了根據(jù)本發(fā)明實施例的基于FPGA的嵌入式系統(tǒng)的結構圖2示出了根據(jù)本發(fā)明優(yōu)選實施例的基于FPGA的嵌入式系統(tǒng)的結構圖3示出了根據(jù)本發(fā)明優(yōu)選實施例的MCU與FPGA的連接結構圖4示出了根據(jù)本發(fā)明實施例的基于FPGA的嵌入式系統(tǒng)的配置方法的流程圖5示出了根據(jù)本發(fā)明優(yōu)選實施例的基于FPGA的嵌入式系統(tǒng)的配置方法的流程圖。
具體實施方式
下面將參考附圖并結合實施例來詳細說明本發(fā)明。
圖1示出了根據(jù)本發(fā)明實施例的基于FPGA的嵌入式系統(tǒng)的結構圖,包括
存儲器101,用于保存多個可執(zhí)行文件,其中,每個可執(zhí)行文件是由將期望實現(xiàn)的功能分為多個可分時復用FPGA且相互不耦合的模塊所獨立生成;
MCU 102,用于將各個可執(zhí)行文件依次寫入FPGA中;
FPGA 103,用于執(zhí)行可執(zhí)行文件。由于FPGA具有運行速度快、可并行計算、重復可編程等優(yōu)良特性,因此如果一個嵌入式系統(tǒng)中需要對大量數(shù)據(jù)進行高速計算或存儲,往往都需要一個FPGA來對數(shù)據(jù)進行控制。一方面由于FPGA可并行計算,所以運算速度有保障; 另一方面由于FPGA可同步設計,因此運算時間可精確控制到納秒級別。
本實施例將所要實現(xiàn)的FPGA的功能模塊化,分為幾個可分時復用FPGA而沒有相互耦合的模塊。每個模塊獨立編譯、綜合,生成可執(zhí)行文件。然后將這幾個文件全部寫入嵌入式系統(tǒng)的存儲器中,由于存儲元件價格低廉,所以不會帶來太大的成本。由于FPGA的資源非常寶貴,所以通常只用來做高速、精確運算,而一些對實時性要求不高的控制流程都由 MCU來完成。同時,由于當前的MCU都可嵌入操作系統(tǒng),所以更適合于完成流程控制、資源管理類的工作。本實施例通過這種辦法,將FPGA功能從時間上劃分為一些小的功能單元,使得對FPGA資源的需求量成倍地減少,通過分時復用FPGA資源,從而達到降低成本和功耗的目的。
優(yōu)選地,存儲器是FLASH。本優(yōu)選實施例所提供的FLASH存儲器單元,主要用來存儲嵌入式系統(tǒng)所需要的操作系統(tǒng)以及FPGA的各功能模塊。主要是因為FLASH存儲器件具有非易失性以及造價低廉的優(yōu)點。
優(yōu)選地,該嵌入式系統(tǒng)還包括接口,用于FPGA連接外部設備;互不耦合的模塊包括第一模塊,用于對嵌入式系統(tǒng)進行上電自檢;第二模塊,用于FPGA通過接口進行高速數(shù)據(jù)緩存和管理;MCU包括上電模塊,用于在嵌入式系統(tǒng)上電后,將由第一模塊生成的可執(zhí)行文件寫入FPGA中;正常模塊,用于如果FPGA執(zhí)行第一模塊生成的可執(zhí)行文件正常,則將由第二模塊生成的可執(zhí)行文件寫入FPGA中。這兩個功能模塊是高速數(shù)據(jù)處理嵌入式系統(tǒng)中最常用到的,但本發(fā)明并不限定于此,在其他實施例中還可以增加其他能夠分時復用的模塊,這都屬于本發(fā)明的精神范圍。
本優(yōu)選實施例的嵌入式系統(tǒng)可以連接若干子系統(tǒng),其他子系統(tǒng)與嵌入式系統(tǒng)之間有硬件接口。在嵌入式系統(tǒng)使用這些接口進行數(shù)據(jù)的傳送之前,對這些接口進行系統(tǒng)自檢, 如果有不正常的情況及時報告,從而避免由于接口異常導致系統(tǒng)數(shù)據(jù)傳送錯誤,這保證了各接口連接正常且工作正常。
圖3示出了根據(jù)本發(fā)明優(yōu)選實施例的MCU與FPGA的連接結構圖,接口包括以下至少之一光纖接口、LVDS(Low Voltage Difference Signal,低壓差分信號)接口和 RS485 接口。這都是常用的硬件接口。
圖3的系統(tǒng)中還包括SDRAM 107,用于為FPGA提供數(shù)據(jù)緩存。本優(yōu)選實施例的嵌入式系統(tǒng)主要用來對數(shù)據(jù)進行高速存儲和管理,因此采用SDRAM來實現(xiàn)數(shù)據(jù)緩存。而在使用SDRAM之前,上述優(yōu)選實施例的正常模塊可以對SDRAM進行系統(tǒng)檢查,可以避免由于 SDRAM工作不正常而導致數(shù)據(jù)錯誤,從而引起不可預測的后果。
優(yōu)選地,MCU還包括初始化模塊,用于每當將一個可執(zhí)行文件寫入FPGA中之后, 向FPGA發(fā)出全局復位信號;FPGA在接收到全局復位信號后,使其寄存器初始化。
圖3示出了根據(jù)本發(fā)明優(yōu)選實施例的MCU與FPGA的連接結構圖。本優(yōu)選實施例通過MCU對FPGA進行動態(tài)重配置,主要是通過FPGA與MCU之間的若干硬件連線來完成,它們是Data,Dclk, Config,Cfg_Done。通過這幾條連線MCU將從FLASH中讀出的FPGA的功能模塊寫入到FPGA中。而FPGA會在自檢過程中或者正常運行過程中向MCU報告其運行狀態(tài),則是通過FPGA與MCU三條總線完成,即數(shù)據(jù)總線、地址總線、控制總線。
圖4示出了根據(jù)本發(fā)明實施例的基于FPGA的嵌入式系統(tǒng)的配置方法的流程圖,包括
步驟S10,將期望實現(xiàn)的功能分為多個可分時復用FPGA且相互不耦合的模塊;
步驟S20,將每個模塊獨立生成可執(zhí)行文件;
步驟S30,將可執(zhí)行文件寫入嵌入式系統(tǒng)中的存儲器中;
步驟S40,嵌入式系統(tǒng)中的MCU將各個可執(zhí)行文件依次寫入FPGA中。
優(yōu)選地,互不耦合的模塊包括第一模塊,用于對嵌入式系統(tǒng)進行上電自檢;第二模塊,用于FPGA進行高速數(shù)據(jù)緩存和管理。這兩個功能模塊是高速數(shù)據(jù)處理嵌入式系統(tǒng)中最常用到的
優(yōu)選地,MCU將各個可執(zhí)行文件依次寫入FPGA中包括嵌入式系統(tǒng)上電;MCU將由第一模塊生成的可執(zhí)行文件寫入FPGA中;如果FPGA執(zhí)行第一模塊生成的可執(zhí)行文件正常, 則MCU將由第二模塊生成的可執(zhí)行文件寫入FPGA中。
如果有多個功能模塊,本實施例在系統(tǒng)正常上電之后,通過嵌入式系統(tǒng)的MCU將最先需要的FPGA功能模塊寫入FPGA,在此功能模塊執(zhí)行完畢之后,通過FPGA與MCU的接口告知MCU,于是MCU將所需要的下一個FPGA功能模塊寫入FPGA,如此交替往復,實現(xiàn)對FPGA 的動態(tài)重配置。
優(yōu)選地,還包括MCU每當將一個可執(zhí)行文件寫入FPGA中之后,向FPGA發(fā)出全局復位信號,將FPGA的寄存器初始化。由于將功能模塊寫入FPGA之后,F(xiàn)PGA就重新配置了其內(nèi)部資源,此時需要將FPGA各寄存器都初始化到一個可預知的狀態(tài),否則FPGA將不能正常工作,因此,可以通過MCU與FPGA的接口,將一個信號接入FPGA的全局復位網(wǎng)絡,在將各功能模塊寫入FPGA后,給FPGA —個全局復位信號,從而達到初始化FPGA的目的。
圖5示出了根據(jù)本發(fā)明優(yōu)選實施例的基于FPGA的嵌入式系統(tǒng)的配置方法的流程圖,包括以下步驟
步驟S100,系統(tǒng)上電;
步驟SlOl,MCU從FLASH中讀取FPGA上電自檢邏輯功能模塊(即第一模塊)。由于FPGA成本較高、功耗較大,因此出于減小FPGA規(guī)模從而達到控制成本和功耗的目的,我們將FPGA功能劃分成兩個獨立的功能模塊一個功能模塊主要負責對系統(tǒng)進行上電自檢, 以確保系統(tǒng)各部分工作正常,如果有問題則及時報告錯誤,從而避免對后續(xù)工作產(chǎn)生不良后果;另一個功能負責正常的高速數(shù)據(jù)緩存和管理。將兩個模塊分別存儲于FLASH中。執(zhí)行步驟SlOl時,通過MCU將負責系統(tǒng)自檢的功能模塊從FLASH中讀出。
步驟S102,將從FLASH中讀出的系統(tǒng)自檢功能模塊通過MCU與FPGA的接口寫入 FPGA,寫入之后,對FPGA進行復位。復位操作通過MCU接入FPGA全局復位管腳的接口進行。
步驟S103,開始系統(tǒng)自檢。
將系統(tǒng)自檢功能模塊寫入FPGA并復位后,系統(tǒng)自檢功能模塊開始自動運行,執(zhí)行系統(tǒng)自檢操作。
步驟S104,檢測 SDRAM。
由于本發(fā)明所提供的裝置實例的主要功能是對高速數(shù)據(jù)進行接收、管理和緩存, 因此需要用到SDRAM,由于SDRAM工作頻率很高,不恰當?shù)腜CB布局布線或者其他電磁干擾因素都會對其正常工作產(chǎn)生影響,因此,在使用SDRAM之前,對SDRAM進行高強度的測試,以驗證其工作可靠性。所以,系統(tǒng)自檢功能模塊最先開始執(zhí)行對SDRAM的測試。
步驟105,判斷檢測結果是否正常。
在對SDRAM的測試過程中,一旦發(fā)現(xiàn)SDRAM工作錯誤,那么執(zhí)行步驟S107,立即向 MCU進行報告,報告可通過MCU的中斷進行,如果在進行一定強度的測試后,SDRAM工作正常則執(zhí)行下一步。
步驟106,測試各接口連接狀態(tài)。
完成了對SDRAM的測試后,系統(tǒng)自檢功能模塊開始執(zhí)行各接口的鏈接狀態(tài)測試功能。由于本實施例所提供的裝置實例用到一系列的接口規(guī)范及接口芯片,例如光纖接口、 LVDS接口、RS485接口等。其中光纖接口、LVDS接口的工作頻率非常高(可達幾GHZ),因此,這些接口的工作正常與否至關重要。所以對這些接口進行相當強度的測試。測試主要包括兩個方面連接是否完好;工作是否可靠、穩(wěn)定。系統(tǒng)自檢功能模塊將主要執(zhí)行這兩個方面的測試。
步驟108,判斷檢測結果是否正常。
在對各接口進行測試的過程中,如果一旦某個接口出現(xiàn)工作不正常,則執(zhí)行步驟 S110,通過中斷向MCU報告錯誤;如果在執(zhí)行了一定強度的測試后,各接口均工作正常,則執(zhí)行下一步。
步驟109,向MCU報告檢測結果正常。
在完成兩項自檢后,如果系統(tǒng)各部分都沒有問題,則向MCU報告工作正常。
步驟111,通過MCU從FLASH中讀取正常工作功能模塊(即第二模塊)。
在系統(tǒng)自檢功能模塊運行結束之后,如果各項檢測結果都正常,MCU則從FLASH中讀取出正常工作功能模塊,然后執(zhí)行步驟S112,將該功能模塊寫入到FPGA并執(zhí)行全局復位。
步驟Sl 13,等待運行。
在將正常運行功能模塊寫入FPGA并復位后,F(xiàn)PGA就進入正常工作狀態(tài),等待接收高速數(shù)據(jù),并對數(shù)據(jù)進行相關處理。
從以上的描述中可以看出,本發(fā)明上述的實施例可以有效地降低系統(tǒng)對FPGA資源的占用情況,通過分時復用寶貴的FPGA資源,解決系統(tǒng)功能復雜與FPGA成本高、功耗大的矛盾。本發(fā)明簡單易行,在不增加系統(tǒng)設計難度的情況下,有效解決問題,同時還有利于復雜FPGA系統(tǒng)的模塊化設計,實現(xiàn)模塊重用。
顯然,本領域的技術人員應該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn),從而可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結合。
以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領域的技術人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。
權利要求
1.一種基于FPGA的嵌入式系統(tǒng),其特征在于,包括存儲器,用于保存多個可執(zhí)行文件,其中,每個所述可執(zhí)行文件是由將期望實現(xiàn)的功能分為多個可分時復用所述FPGA且相互不耦合的模塊所獨立生成; MCU,用于將各個所述可執(zhí)行文件依次寫入所述FPGA中; 所述FPGA,用于執(zhí)行所述可執(zhí)行文件。
2.根據(jù)權利要求1所述的系統(tǒng),其特征在于,所述存儲器是FLASH。
3.根據(jù)權利要求1所述的系統(tǒng),其特征在于,還包括接口,用于所述FPGA連接外部設備;所述互不耦合的模塊包括第一模塊,用于對所述嵌入式系統(tǒng)進行上電自檢;第二模塊,用于所述FPGA通過所述接口進行高速數(shù)據(jù)緩存和管理;所述MCU包括上電模塊,用于在所述嵌入式系統(tǒng)上電后,將由所述第一模塊生成的可執(zhí)行文件寫入所述FPGA中;正常模塊,用于如果所述FPGA執(zhí)行所述第一模塊生成的可執(zhí)行文件正常,則將由所述第二模塊生成的可執(zhí)行文件寫入所述FPGA中。
4.根據(jù)權利要求3所述的系統(tǒng),其特征在于,所述接口包括以下至少之一光纖接口、 LVDS 接口和 RS485 接口。
5.根據(jù)權利要求1所述的系統(tǒng),其特征在于,所述MCU還包括初始化模塊,用于每當將一個所述可執(zhí)行文件寫入所述FPGA中之后,向所述FPGA發(fā)出全局復位信號;所述FPGA在接收到所述全局復位信號后,使其寄存器初始化。
6.根據(jù)權利要求1所述的系統(tǒng),其特征在于,還包括 SDRAM,用于為所述FPGA提供數(shù)據(jù)緩存。
7.一種基于FPGA的嵌入式系統(tǒng)的配置方法,其特征在于,包括將期望實現(xiàn)的功能分為多個可分時復用所述FPGA且相互不耦合的模塊;將每個所述模塊獨立生成可執(zhí)行文件;將所述可執(zhí)行文件寫入所述嵌入式系統(tǒng)中的存儲器中;所述嵌入式系統(tǒng)中的MCU將各個所述可執(zhí)行文件依次寫入所述FPGA中。
8.根據(jù)權利要求7所述的方法,其特征在于,所述互不耦合的模塊包括 第一模塊,用于對所述嵌入式系統(tǒng)進行上電自檢;第二模塊,用于所述FPGA進行高速數(shù)據(jù)緩存和管理。
9.根據(jù)權利要求8所述的方法,其特征在于,MCU將各個所述可執(zhí)行文件依次寫入所述 FPGA中包括所述嵌入式系統(tǒng)上電;所述MCU將由所述第一模塊生成的可執(zhí)行文件寫入所述FPGA中; 如果所述FPGA執(zhí)行所述第一模塊生成的可執(zhí)行文件正常,則所述MCU將由所述第二模塊生成的可執(zhí)行文件寫入所述FPGA中。
10.根據(jù)權利要求7所述的方法,其特征在于,還包括所述MCU每當將一個所述可執(zhí)行文件寫入所述FPGA中之后,向所述FPGA發(fā)出全局復位信號,將所述FPGA的寄存器初始化。
全文摘要
本發(fā)明提供了一種基于FPGA的嵌入式系統(tǒng),包括存儲器,用于保存多個可執(zhí)行文件,其中,每個可執(zhí)行文件是由將期望實現(xiàn)的功能分為多個可分時復用FPGA且相互不耦合的模塊所獨立生成;MCU,用于將各個可執(zhí)行文件依次寫入FPGA中;FPGA,用于執(zhí)行可執(zhí)行文件。本發(fā)明還提供了一種基于FPGA的嵌入式系統(tǒng)的配置方法,包括將期望實現(xiàn)的功能分為多個可分時復用FPGA且相互不耦合的模塊;將每個模塊獨立生成可執(zhí)行文件;將可執(zhí)行文件寫入嵌入式系統(tǒng)中的存儲器中;嵌入式系統(tǒng)中的MCU將各個可執(zhí)行文件依次寫入FPGA中。本發(fā)明提高了基于FPGA的嵌入式系統(tǒng)的利用效率。
文檔編號G06F9/445GK102541577SQ20101059964
公開日2012年7月4日 申請日期2010年12月10日 優(yōu)先權日2010年12月10日
發(fā)明者劉志紅, 溫曉輝, 郭少偉 申請人:北京北大方正電子有限公司, 北京大學, 北大方正集團有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1