基于FPGA的電子系統(tǒng)柔性設(shè)計
1 引 言
本文引用地址:http://m.butianyuan.cn/article/189888.htm電子產(chǎn)品的多樣性,小批量和周期性短是21世紀制造業(yè)的鮮明特征,對設(shè)計工作提出了更新更高的要求。如何在產(chǎn)品改進或開發(fā)新產(chǎn)品時減少重設(shè)計和修改設(shè)計的工作量,縮短設(shè)計周期、提高產(chǎn)品可靠性是制造行業(yè)面臨的重要課題。電子系統(tǒng)的柔性設(shè)計是采用電路結(jié)構(gòu)重置技術(shù),將多個針對不同功能要求設(shè)計好的配置文件分別存放在不同的地址空間,根據(jù)不同的外部命令,使所需的配置文件在線下載到具有重置功能的電子器件(如FPGA)中,以時分復(fù)用的形式分別完成各個功能。這種設(shè)計方式可以極大地提高電路系統(tǒng)的硬件功能靈活性。同一電路系統(tǒng)在沒有發(fā)生任何外在結(jié)構(gòu)上的改變時,通過來自外部不同的命令信號,電路系統(tǒng)的結(jié)構(gòu)和功能將在瞬間發(fā)生改變,從而使單一電路系統(tǒng)具有許多不同電路結(jié)構(gòu)的功能。
現(xiàn)場可編程門陣列FPGA是近十多年發(fā)展起來的新型可編程邏輯器件,利用FPGA的ICR特性進行電路系統(tǒng)的柔性設(shè)計,無疑將會減少重設(shè)計和修改設(shè)計的工作量、縮短系統(tǒng)的設(shè)計周期、提高系統(tǒng)的通用性和性價比,增強企業(yè)的競爭能力。
2 課題設(shè)計
設(shè)計一電子系統(tǒng),不改變電路結(jié)構(gòu)的條件下能夠分別完成溫度、電動自行車速度和心率信號的測量與顯示,外加一個擴展功能,設(shè)計具體要求如下。
(1) 測量結(jié)果用十進制顯示,溫度的測量范圍0~100℃,電動自行車速度的測量范圍0~0.60 km/min,心率測量范圍10~200跳/min;
(2) 測量值用3位數(shù)碼管顯示,小數(shù)點能自動移動,且小數(shù)點左邊1位以上的零自動熄滅;
(3) 具有超量程報警功能,在超出口前測量參數(shù)的測量范圍時,發(fā)出燈光信號;
(4) 電路結(jié)構(gòu)盡量簡單。
3 系統(tǒng)硬件設(shè)計
3.1 基于ICR技術(shù)的FPGA部分硬件電路設(shè)計
根據(jù)課題要求,設(shè)計FPGA部分硬件電路如圖1所示。FPGA芯片選用Altera公司的中檔器件FLEX-EPF10K10LC84-4,他是基于SRAM LUT結(jié)構(gòu)的FPGA器件。根據(jù)傳送數(shù)據(jù)的方式,F(xiàn)LEX10K可以使用4種配置模式,即:主動串行(AS)、被動串行(PS)、被動并行同步(PPS)、被動并行異步(PPA)。由于PPA配置模式為并行配置,其配置速度快,且配置時鐘由FPGA內(nèi)部產(chǎn)生,更有利于在線實現(xiàn),本文就是采用PPA方式來實現(xiàn)電路系統(tǒng)的在線重構(gòu)。PPA方式配置時應(yīng)注意以下幾點:
(1) 當(dāng)MESL0,MESL1均接高電平時,為PPA模式。
(2) nCS和CS兩個片選信號只需用一個,另一個必須將其直接置為有效位。
(3) nRS為讀選通輸人信號,低輸人時引導(dǎo)FLEX-IOK將RDYnBSY信號置于DATA7引腳。當(dāng)nRS不用時,必須將其置為高。
(4) nCE為FLEX10K器件的使能輸人,nCE為低時使能配置過程,而且為單片配置時,nCE必須始終為低。
(5) DATA[7..0]接到AT89C52的P07~P00,nWS為寫選通輸人,由低到高的跳變時鎖存DATA[7..0]引腳上的字節(jié)數(shù)據(jù)。
(6) nSTATUS和CONF DONE引腳由于是雙向漏極開路端口,所以在作輸出使用時,應(yīng)該經(jīng)過1.0 kΩ的電阻上拉到VCC。其他細節(jié)可參考PPA配置方式的工作時序。
圖1中ADC0804是CMOS 8位單通道逐次漸近型的模/數(shù)轉(zhuǎn)換器,其主要性能指標有:工作電壓+5 V、模擬輸入電壓范圍0~5 V、參考電壓2.5 V,分辨率8位。74LS245位總線收發(fā)器,用來加強數(shù)據(jù)總線的驅(qū)動能力。
3.2 配置電路硬件設(shè)計及其工作原理
在FPGA的實際應(yīng)用中,用單片機來配置FPGA可以很好地解決系統(tǒng)保密和可升級的問題?;贏T-MEL89C52的配置電路結(jié)構(gòu)如圖2所示。
3個不同功能的配置文件分別存放在3片外擴程序存儲器27C128中,另外一個128用作進一步擴展時使用。K1,K2為功能選擇鍵,當(dāng)K1,K2同時閉合時,系統(tǒng)實現(xiàn)溫度測量功能;K1閉合,K2打開時,系統(tǒng)實現(xiàn)轉(zhuǎn)速測量功能;K1打開,K2打開閉合時,系統(tǒng)實現(xiàn)心率測量功能。當(dāng)K1,K2同時打開時,作功能擴展用。
4系統(tǒng)軟件設(shè)計
4.1 FPGA配置文件的生成
使用開發(fā)工具Max+PlusⅡ或QuartusⅡ可以生成多種配置編譯文件,用于不同配置方法的配置。對于不同的目標器件,配置數(shù)據(jù)的大小不同。由于Altera公司提供的軟件工具不自動生成.rbf文件,所以配置文件需按照下面的步驟生成:在Max+PlusⅡ編譯狀態(tài)下,選擇文件菜單中的變換SRAM目標文件命令;在File Formatbox目標文件對話框中指定要轉(zhuǎn)換的目標文件.rbf,單擊OK即可。把各個功能的目標文件按預(yù)定功能分別燒寫到EPROM27128中,且首地址設(shè)置為0002H。
4.2 單片機實現(xiàn)配置過程的控制程序
該系統(tǒng)中單片機主要用來產(chǎn)生配置時序,所以首先要熟悉PPA方式配置FPGA的時序波形圖,才能設(shè)計出合理的單片機程序。由于篇幅的限制,這里僅給出單片機實現(xiàn)配置過程的控制程序流程如圖3所示,PPA配置方式的時序圖請參考Altera公司的器件資料。
5 結(jié) 語
基于在線重置技術(shù),結(jié)合實例提出了電子系統(tǒng)的柔性設(shè)計。隨著微電子技術(shù)特別是EDA的飛速發(fā)展,這種方案將會在復(fù)雜電子系統(tǒng)的設(shè)計中得到廣泛采用。
評論