【正文】
種方法。 SPI IP 核實(shí)現(xiàn) SPI 協(xié)議并提供 Avalon 接口。在 Nios II 處理器中, SDRAM controller IP 核為 FPGA 片外 SDRAM 提供一個(gè) Avalon 接口,使設(shè)計(jì)者在 FPGA 中創(chuàng)建一個(gè)方便與 SDRAM 芯片連接的定制系統(tǒng),實(shí)現(xiàn) Avalon 總線主設(shè)備向 SDRAM 的讀 /寫功能。所以任何 Avalon 總線主設(shè)備訪問(wèn)任何片外三態(tài)芯片(如 SRAM 存儲(chǔ)器、 FLASH 存儲(chǔ)器)都需要 AvalonMM Tristate 總線橋。本系統(tǒng)由于不需要用 UART 實(shí)現(xiàn)數(shù)據(jù)流操作,所以關(guān)閉數(shù)據(jù)流功能。 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)行讀取。 35 JTAG UART IP 核 JTAG UART 模塊 主要是用于系統(tǒng)調(diào)試。 可選 JTAG 調(diào)試模塊增強(qiáng)功能,包括硬件斷點(diǎn)、數(shù)據(jù)觸發(fā)器和實(shí)時(shí)跟蹤。 存儲(chǔ)器保護(hù)單元( MPU) 系統(tǒng)結(jié)構(gòu)如圖 33 圖 系統(tǒng)結(jié)構(gòu)圖 下面簡(jiǎn)要介紹本系統(tǒng)中 Nios II 處理器內(nèi)核和標(biāo)準(zhǔn)組件的配置。 31 圖 D/A 轉(zhuǎn)換 模塊 這是時(shí)序仿真波形,經(jīng)過(guò)驗(yàn)證此模塊的程序能夠?qū)崿F(xiàn)預(yù)想功能。在此利用硬件描述語(yǔ)言來(lái)編 28 寫其程序,實(shí)現(xiàn)其功能。因此,在研究利用 FPGA 實(shí)現(xiàn)預(yù)測(cè)控制算法時(shí)發(fā)現(xiàn),遞推算法的預(yù)算中大多是進(jìn)行矩陣的乘法和加法運(yùn)算。接下來(lái)介紹一種基于遞推算法的改進(jìn)的預(yù)測(cè)控制算法,它不受 )( 1?qC 多項(xiàng)式穩(wěn)定的限制,且不需求解Diophantine 方程。此外,非線性系統(tǒng),分布參數(shù)系統(tǒng)的模型,連續(xù)的或離散的,確定性的或隨機(jī)性的模型只要具備上述功能,也可以作為預(yù)測(cè)模型使用。 預(yù)測(cè)控制的特點(diǎn) 預(yù)測(cè)控制是屬于一種基于模型的控制算法。使用 SOPC Builder 生成系統(tǒng)后,可以直接使用 Nios II IDE 開(kāi)始設(shè)計(jì) C/C++應(yīng)用程序代碼。 FPGA/SOPC 開(kāi)發(fā)流程 完整的 FPGA 設(shè)計(jì)流程包括設(shè)計(jì)輸入、功能仿真、綜合、綜合后仿真、布局布線、布線后仿真與驗(yàn)證和板級(jí)仿真驗(yàn)證與調(diào)試等主要步驟。 SOPC Builder 提供了一個(gè)強(qiáng)大的平臺(tái),用于組建一個(gè)在模塊級(jí)和組件級(jí)定義的系統(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 嵌入式邏輯分析儀。設(shè)計(jì)者能夠用 SOPC Builder 系統(tǒng)開(kāi)發(fā)工具很容易地創(chuàng)建專用的處理器系統(tǒng),并能夠根據(jù)系統(tǒng)的需求添加 Nios II 處理器的數(shù)量,可以輕松的將 Nios II 處理器嵌入到他們的系統(tǒng)中。 ( 3)基于 HardCopy 技術(shù)的 SOPC 系統(tǒng)。 SOPC 技術(shù)的實(shí)現(xiàn)方式一般分為三種: ( 1)基于 FPGA 嵌入 IP( Intellectual Property)硬核的 SOPC 系統(tǒng)。 FPGA 結(jié)合了微電子技術(shù)、電路技術(shù)、 EDA 技術(shù),使設(shè)計(jì)者可以集中精力進(jìn)行所需邏輯功能的設(shè)計(jì),縮短設(shè)計(jì)周期,提高設(shè)計(jì)質(zhì)量。 2) 可編程輸入 /輸出單元 輸入 /輸出( Input/Output)單元簡(jiǎn)稱 I/O 單元,它們是芯片與外界電路的接口部分完成不同電氣特性下對(duì)輸入 /輸出信號(hào)的驅(qū)動(dòng)與匹配需求。 典型的 FPGA 通常包含三類基本資源:可編程邏輯功能塊、可編程輸入 /輸出塊和可編程互連資源。 8 第 2 章 基礎(chǔ)知識(shí) 基于 FPGA 的預(yù)測(cè)控制器實(shí)現(xiàn)涉及到預(yù)測(cè)控制和 FPGA/SOPC 開(kāi)發(fā)技術(shù)等多方面的內(nèi)容,因此本章主要介紹關(guān)于預(yù)測(cè)控制和 FPGA/SOPC 開(kāi)發(fā)的一些重要基礎(chǔ)知識(shí)和關(guān)鍵技術(shù)。 3) 高可靠性及低成本: FPGA 芯片在出廠之前都做過(guò) 100%的嚴(yán)格測(cè)試,不需要設(shè)計(jì)人員承擔(dān)投片風(fēng)險(xiǎn)的 費(fèi)用。此方案利用 Nios II 處理器來(lái)實(shí)現(xiàn) MPC 算法,整個(gè)算法的 C/C++程序 運(yùn)行在 Nios II 處理器上。 傳統(tǒng)的基于工控機(jī)的預(yù)測(cè)控制算法實(shí)現(xiàn)方案顯然無(wú)法滿足高實(shí)時(shí)性、微型化、高可靠性和低成本的要求。 預(yù)測(cè)控制在新應(yīng)用中面臨的問(wèn)題 近年來(lái),一些非工業(yè)過(guò)程領(lǐng)域,如航空、航海、汽車電子控制等對(duì)控制算法的要求越來(lái)越高,一些先進(jìn)的控制算法逐漸得到應(yīng)用。 主要反映在以下幾個(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)前局部的控制決策。 一名用戶坐在運(yùn)算速度很慢的臺(tái)式機(jī)前面,看上去一籌莫展。 通過(guò)在 FPGA芯片內(nèi)創(chuàng)建逾 1000個(gè)微電路,研究人員便將這個(gè)芯片變成了 1000個(gè)內(nèi)核的處理器 —— 每個(gè)內(nèi)核都可以遵照自己的指令工作。 研究現(xiàn)狀概述 北京時(shí)間 20xx 年 12 月 30 日消息,美英兩國(guó)科學(xué)家聯(lián)合開(kāi)發(fā)了一款運(yùn)算速度超快的電腦芯片 ,使當(dāng)前臺(tái)式機(jī)的運(yùn)算能力提升 20 倍。并行運(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。論文首先介紹了廣義預(yù)測(cè)控制算法以及改進(jìn)的算法,由于算法主要涉及矩陣相關(guān)的運(yùn)算需要進(jìn)行大量的數(shù)據(jù)計(jì)算和處理,為了減少數(shù)據(jù)計(jì)算的復(fù)雜性, 從實(shí)現(xiàn)算法的控制器的硬件結(jié)構(gòu)上改進(jìn),因此采用 FPGA陣列處理器實(shí)現(xiàn)預(yù)測(cè)控制系統(tǒng)。最后用 Modelsim 仿真軟件對(duì)各模塊進(jìn)行了仿真,給出了仿真結(jié)果。 Matrix inversion。這項(xiàng)突破或?qū)⒃诮窈髱啄觊_(kāi)啟一個(gè)超高速運(yùn)算的新時(shí)代,使家庭用戶不再對(duì)運(yùn)行緩慢的電腦系統(tǒng)感到沮喪。 范德堡韋德 (Wim Vander Bau Whe De)博士和美國(guó)馬薩諸塞大學(xué)盧維爾分校的同行共同實(shí)施。 ” “ 但是,我們看到,包括英特爾和 ARM 在內(nèi)的一些廠商已經(jīng)宣布將開(kāi)發(fā)集成傳統(tǒng) CPU 與 FPGA 芯片的微晶片。 4 預(yù)測(cè)控制正是在工業(yè)實(shí)踐過(guò)程中逐步發(fā)展起來(lái)的一種新型 的計(jì)算機(jī)控制算法。這也是預(yù)測(cè)控制在新應(yīng)用中面臨的迫切問(wèn)題。最近十年, FPGA 已被成功應(yīng)用于很多領(lǐng)域,如通信、數(shù)據(jù)處理、儀器、工 業(yè)控制、軍事和航空航天等。這是本文采用的方案。 4) 高靈活性及低功耗: FPGA 的現(xiàn)場(chǎng)可編程性,使用戶可以反復(fù)地編程、擦除、使用,或者保持在外圍電路不變的情況下,采用不同設(shè)計(jì)就可以實(shí)現(xiàn)不同的功能。 FPGA 的出現(xiàn)既解決了原有可編程器件門電路數(shù)有限的缺點(diǎn),又克服了 ASIC( Application Specfic Integrated Circuit,專用集成芯片)的不足,是一種新型的電路實(shí)現(xiàn)技術(shù)。此外,還包含其他一些模塊,如 RAM、 PLL、硬件乘法器、 DSP 模塊等。有全局性的專用布線資源,用以完成器件內(nèi)部的全局時(shí)鐘和全局復(fù)位 /置位的布線;有長(zhǎng)線資源,用以完成器件 Bank(分區(qū))間的一些高速信號(hào)和一些第二全局時(shí)鐘信號(hào)的布線;還有短線資源,用以完成基本邏輯單元之間的邏輯互聯(lián) 與布線。 可以說(shuō), FPGA 芯片是目前小批量系統(tǒng) 提高系統(tǒng)集成度、可靠性的最佳選擇之一。這樣就能使得 FPGA 靈活的硬件設(shè)計(jì)和硬件實(shí)現(xiàn)與處理器強(qiáng)大的軟件功能結(jié)合,高效地實(shí)現(xiàn) SOPC 系統(tǒng)。 Altera 的 Stratix、Stratix GX、 StratixII 和 Cyclone II、 Cyclone III 系列 FPGA 全面支持 Nios II 處理器,以后推出 的 FPGA 器件也將全面支持 Nios II 處理器。定制外設(shè)可由設(shè)計(jì)者自行設(shè)計(jì)并集成到 Nios II 處 14 理器系統(tǒng)。 15 Quartus II 設(shè)計(jì)軟件具有很高的性能和易用性。設(shè)計(jì)者還可簡(jiǎn)單地創(chuàng)建他們自己的定制的 SOPCBuiler 組件。其中,硬件設(shè)計(jì)主要基于 Quartus II 和 SOPC Builder,軟件設(shè)計(jì)則基于 Nios II IDE。接下來(lái)可以在 IDE 的指令