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