【正文】
局性的專用布線資源,用以完成器件內(nèi)部的全局時鐘和全局復(fù)位 /置位的布線;有長線資源,用以完成器件 Bank(分區(qū))間的一些高速信號和一些第二全局時鐘信號的布線;還有短線資源,用以完成基本邏輯單元之間的邏輯互聯(lián) 與布線。 FPGA 的出現(xiàn)既解決了原有可編程器件門電路數(shù)有限的缺點(diǎn),又克服了 ASIC( Application Specfic Integrated Circuit,專用集成芯片)的不足,是一種新型的電路實(shí)現(xiàn)技術(shù)。這是本文采用的方案。這也是預(yù)測控制在新應(yīng)用中面臨的迫切問題。 ” “ 但是,我們看到,包括英特爾和 ARM 在內(nèi)的一些廠商已經(jīng)宣布將開發(fā)集成傳統(tǒng) CPU 與 FPGA 芯片的微晶片。這項(xiàng)突破或?qū)⒃诮窈髱啄觊_啟一個超高速運(yùn)算的新時代,使家庭用戶不再對運(yùn)行緩慢的電腦系統(tǒng)感到沮喪。最后用 Modelsim 仿真軟件對各模塊進(jìn)行了仿真,給出了仿真結(jié)果。并行運(yùn)算 II Design of predictive controller based on FPGA Abstract With the development of adaptive control, predictive control is proposed. Predictive control algorithm is an advanced puter control algorithm, and based on parameter model without strict requirements to process model. FPGA system has strong parallel puting capability and higher speed in calculations. So inline optimization speed is raised. In the thesis, based on Xilinx integrated developing environment , using hardware description language as the programming language, IP core as the input, a improved predictivecontrol algorithm is designed and implemented using FPGA. General predictivecontrol algorithm and its improved format are introduced. The algorithm involves with many matrix calculation, so a lot of data puting and processing is needed. At the same time improvement from controller and hardware structure is obtained. FPGA array processor is used to implement predictivecontrol system. Due to the FPGA hardware implement, recurrent method for Matrix inversion in the predictivecontrol is briefly discussed. Predictivecontrol processor array structure is designed. In the design, adopting hierarchy and module method, the entire algorithm is divided into function modules, flows of function modules have been drawed. Such as overall system structure design, basic processor design, recurring matrix inversion processor array design, output prediction processor array design, control increment III calculation, parameter identification, and so on. Every functional module is simulated using software Modelsim. The simulation result is given. HDL description language is applied in the models of design. Analyzes the results of simulation and receives some useful conclusions. So inline optimization speed is raised and the size and cost is reduced, the application field is greatly expanded. Key words:Predictivecontrol algorithm。 通過在 FPGA芯片內(nèi)創(chuàng)建逾 1000個微電路,研究人員便將這個芯片變成了 1000個內(nèi)核的處理器 —— 每個內(nèi)核都可以遵照自己的指令工作。 主要反映在以下幾個方面: ( 1)現(xiàn)代控制理論過份依賴于被控對象的精確數(shù)學(xué)模型,而在現(xiàn)實(shí)工業(yè)過程中,往往很難建立精確的數(shù)學(xué)模型,即使一些被控對象能夠建立起數(shù)學(xué)模型,但因其結(jié)構(gòu)十分復(fù)雜而難于設(shè)計(jì)和實(shí)現(xiàn)有效的控制; ( 2)傳統(tǒng)的最優(yōu)控制通過全局優(yōu)化以實(shí)現(xiàn)反饋控 制的計(jì)算,但是在工業(yè)現(xiàn)場中可能存在上千個控制變量,這樣導(dǎo)致最優(yōu)控制的計(jì)算規(guī)模很大,以至于無法實(shí)現(xiàn); ( 3)工業(yè)實(shí)踐中往往具有很多干擾因素,很難得出確定性模型; ( 4)工業(yè)中往往需要實(shí)時控制,有時并不需要全局的優(yōu)化控制,需要當(dāng)前局部的控制決策。 傳統(tǒng)的基于工控機(jī)的預(yù)測控制算法實(shí)現(xiàn)方案顯然無法滿足高實(shí)時性、微型化、高可靠性和低成本的要求。 3) 高可靠性及低成本: FPGA 芯片在出廠之前都做過 100%的嚴(yán)格測試,不需要設(shè)計(jì)人員承擔(dān)投片風(fēng)險的 費(fèi)用。 典型的 FPGA 通常包含三類基本資源:可編程邏輯功能塊、可編程輸入 /輸出塊和可編程互連資源。 FPGA 結(jié)合了微電子技術(shù)、電路技術(shù)、 EDA 技術(shù),使設(shè)計(jì)者可以集中精力進(jìn)行所需邏輯功能的設(shè)計(jì),縮短設(shè)計(jì)周期,提高設(shè)計(jì)質(zhì)量。 ( 3)基于 HardCopy 技術(shù)的 SOPC 系統(tǒng)。 FPGA/SOPC 開發(fā)工具 FPGA 的領(lǐng)導(dǎo)廠商 Altera 公司提供了一套完整的 FPGA/SOPC 開發(fā)工具,包括 Quartus II 設(shè)計(jì)軟件、 SOPC Builder 系統(tǒng)開發(fā)工具、 Mode1SimAltera 仿真軟件、 Nios II IDE( Integrated Development Environment,集成開發(fā)環(huán)境)和 SingalTap II 嵌入式邏輯分析儀。 FPGA/SOPC 開發(fā)流程 完整的 FPGA 設(shè)計(jì)流程包括設(shè)計(jì)輸入、功能仿真、綜合、綜合后仿真、布局布線、布線后仿真與驗(yàn)證和板級仿真驗(yàn)證與調(diào)試等主要步驟。 預(yù)測控制的特點(diǎn) 預(yù)測控制是屬于一種基于模型的控制算法。接下來介紹一種基于遞推算法的改進(jìn)的預(yù)測控制算法,它不受 )( 1?qC 多項(xiàng)式穩(wěn)定的限制,且不需求解Diophantine 方程。在此利用硬件描述語言來編 28 寫其程序,實(shí)現(xiàn)其功能。系統(tǒng)結(jié)構(gòu)如圖 33 圖 系統(tǒng)結(jié)構(gòu)圖 下面簡要介紹本系統(tǒng)中 Nios II 處理器內(nèi)核和標(biāo)準(zhǔn)組件的配置。 可選 JTAG 調(diào)試模塊增強(qiáng)功能,包括硬件斷點(diǎn)、數(shù)據(jù)觸發(fā)器和實(shí)時跟蹤。 Timeout 周期設(shè)為默認(rèn)值,在“ Hardware Options”中選中“ Writable period”、“ Readable snapshot”和“ Start/Stopcontrol bits”,從而可以在程序中通過 HAL API 對定時器的周期和啟停進(jìn)行控制,并能對當(dāng)前的計(jì)數(shù)值進(jìn)行讀取。所以任何 Avalon 總線主設(shè)備訪問任何片外三態(tài)芯片(如 SRAM 存儲器、 FLASH 存儲器)都需要 AvalonMM Tristate 總線橋。 SPI IP 核實(shí)現(xiàn) SPI 協(xié)議并提供 Avalon 接口。 JTAG UART IP 核的配置參數(shù)主要就是讀 /寫 FIFO( First Input First Output)深度和中斷閾值。 單獨(dú) 的指令和數(shù)據(jù)緩沖( 512 字節(jié)至 64 Kbytes) 進(jìn)一步的研究就是利用已經(jīng)取得的成果進(jìn)行算法實(shí)現(xiàn),并且利用實(shí)驗(yàn)開發(fā)板來實(shí)現(xiàn)控制算法,最 終在實(shí)際系統(tǒng)中驗(yàn)證算法的有效性。 乘法加法器: 乘法加法器( MAC)單元是指對所輸入的數(shù)據(jù)進(jìn)行乘法加法運(yùn)算。 CARIMA 模型能自然地把積分作用納入控制律中,因此階躍負(fù)載擾動引起的偏差將自然消除。設(shè)計(jì)者可以使用 Nios II IDE 對程序進(jìn)行編譯、鏈接,生成可執(zhí)行文件( *.elf)。這些組件可以是從 Altera 或其他第三方合作伙伴購買來的 IP 核,它們其中一些是可以免費(fèi)下載用作評估的。標(biāo)準(zhǔn)外設(shè)是指 Altera 公司提供的標(biāo)準(zhǔn)外圍設(shè)備庫,比如定時器、串行通信接口、 SDRAM 控制器等。Altera 公司 Excalibur 系列的 FPGA 中就植入了 ARM922T 嵌入式系統(tǒng)處理器;Xilinx 的 VirtexII Pro 系列中則植入了 IBM PowePC405 處理器。 3) 豐富的布線資源 布線資源連通 FPGA 內(nèi)部所有的單元,連線的長度和工藝決定著信號在連線上的驅(qū)動能力和傳輸?shù)乃俣取?FPGA 產(chǎn)生于 80 年代中期,是在 PAL、 GAL 等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。這種方案實(shí)現(xiàn)的系統(tǒng)具有很高的性能,而且開發(fā)周期短,開發(fā)難度相對較小。新的應(yīng)用領(lǐng)域?qū)刂破魈岢隽诵碌囊螅绺邔?shí)時性、微型化、高可靠性和低成本等。雖然現(xiàn)有許多技術(shù)充分使用 FPGA 芯片,如等離子電視、液晶電視和電腦網(wǎng)絡(luò)路由器,但它們在標(biāo)準(zhǔn)臺式機(jī)上的應(yīng)用卻十分有限。如今,美英研究人員開發(fā)的中央處理器 (CPU)將 1000 個內(nèi)核有效集成于一個芯片上。包括系統(tǒng)的總體結(jié)構(gòu)設(shè)計(jì),基本的處理器單元的設(shè)計(jì),遞推求逆算法的處理器陣列設(shè)計(jì),輸出預(yù)測的處理器陣列設(shè)計(jì),控制增量的計(jì)算,參數(shù)辨識等。 FPGA。在測試中, FPGA 芯片每秒能處理 5GB 的數(shù)據(jù),處理速度大概相當(dāng)于當(dāng)前臺式機(jī)的 20 倍。因此,很多學(xué)者開始打破傳統(tǒng)控制思想和體系框架的束縛,試圖面向工業(yè)過程的具體特點(diǎn),尋找對模型要求低、在線計(jì)算方便、綜合效果好的控制算法。因此,為滿足新的應(yīng)用領(lǐng)域的要求,需要尋求新的方法加快預(yù)測控制算法的在線求解速度,提高其控制器的實(shí)時性。而且 FPGA 在軍事及航空航天領(lǐng)域的廣泛應(yīng)用證實(shí)了其高可靠性??删幊踢壿嫻δ軌K是實(shí)現(xiàn)用戶功能的基本單元,多個邏輯功能塊通常規(guī)則地排成一個陣列結(jié)構(gòu),分布于整個芯片;可編程輸入 /輸出塊完成 9 芯片內(nèi)部邏輯與外部管腳之間的接口,圍繞在邏輯單元陣列四周;可編程內(nèi) 部互連資源包括各種長度的連線線段和一些可編程連接開關(guān),它們將各個可編程邏輯塊或輸入 /輸出塊連接起來,構(gòu)成特定功能的電路。與專用集成電路 ASIC 相比, FPGA 具有靈活性高、設(shè)計(jì)周期短、成本低、風(fēng)險小等優(yōu)勢,因而得到了廣泛應(yīng)用,各項(xiàng)相關(guān)技術(shù)也迅速發(fā)展起來,F(xiàn)PGA 目前已 經(jīng)成為數(shù)字系統(tǒng)設(shè)計(jì)的重要硬件基礎(chǔ)。 HardCopy 就是利用原有的 FPGA 開發(fā)工具,將成功實(shí)現(xiàn)于 FPGA 器件上的 SOPC 系統(tǒng)通過特定的技術(shù)直接向 ASIC 轉(zhuǎn)化, 從而克服傳統(tǒng) ASIC 設(shè)計(jì)中普遍存在的問題。 Quartus II 軟件是 Altera 公司的綜合開發(fā)工具,它集成了 Altera 的 FPGA/CPLD 開發(fā)流程中所涉及的所有工具和第三方軟件接口?;? FPGA 的 SOPC 設(shè)計(jì)總體上也遵循上述的開發(fā)流程,同時也具有一定的特殊性。其機(jī)理可描述為:在每一采樣時刻,根據(jù)當(dāng)前測量信息,求解一個有限時域開環(huán)最優(yōu)控制問題,并將得到的控制序列的第一個元素作用到被控制 對象上直至下一個采樣周期,在下一時刻重復(fù)上述過程。 預(yù)測模型 考慮如下的 CARIMA 模型 ??? ????? /)()()()()()( 11)1(1 tqCtuqBqtyqA d ? () 其展開形式為: ?????? ???????????ri imi ini i itcidtubityaty 0 ,10 ,11 ,1 )1()()1()1( ? () 其中 )(ty , )(tu , )(t? 分別為系統(tǒng)的輸出、控制量和白噪聲, n, m, r 分別為對應(yīng)的多項(xiàng)式的階次, d+1 為系統(tǒng)的純滯后。并且將其封裝成 IP 模塊,以便在以后編寫主程序是使用。 Nios II 處理器內(nèi)核 Nios II 處理器內(nèi)核是 Nios II 處理器的核心,內(nèi)核實(shí)現(xiàn)了處理器的最基本和最關(guān)