




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
大連東軟信息學(xué)院本科畢業(yè)設(shè)計(jì)(論文)論文題目論文題目:基于FPGA的可遙控智能彩燈控制器設(shè)計(jì)與實(shí)現(xiàn)系所:電子工程系專業(yè):電子信息工程(集成電路設(shè)計(jì)與系統(tǒng)方向)學(xué)生姓名:學(xué)生學(xué)號:指導(dǎo)教師:導(dǎo)師職稱:講師完成日期:2014年4月28日大連東軟信息學(xué)院Dalian大連東軟信息學(xué)院畢業(yè)設(shè)計(jì)(論文)摘要-第1章緒論1.1課題研究背景與意義科學(xué)技術(shù)的無限發(fā)展,人民生活水平的不斷提高,都使得彩燈裝飾在現(xiàn)代生活中變?yōu)橐环N可增強(qiáng)人們的美感飾具,同時(shí)也可作為廣告宣傳,不僅增添節(jié)日的氣氛,也為著人們的生活增添亮麗。電子技術(shù)的持續(xù)發(fā)展,使應(yīng)用系統(tǒng)向著小型化、快速化、大容量、重量輕等方向發(fā)展,EDA技術(shù)的多方面應(yīng)用也引起了電子產(chǎn)品、系統(tǒng)開發(fā)的變革。EDA代表了,當(dāng)今電子設(shè)計(jì)技術(shù)的最新發(fā)展方向,其根本特征是設(shè)計(jì)人員,以計(jì)算機(jī)作為載體工具,按top-to-down的設(shè)計(jì)理念,對整個(gè)系統(tǒng)進(jìn)行方案性的設(shè)計(jì)以及功能劃分,使用硬件描述語言來完成系統(tǒng)行為級的設(shè)計(jì),使用比較先進(jìn)性的開發(fā)工具自動(dòng)的完成邏輯的編譯,化簡,分割,綜合,優(yōu)化,布局布線,仿真和具有特定目標(biāo)芯片的適配編譯、編程下載,以這種理念來設(shè)計(jì)高層次數(shù)字邏輯電路。作為現(xiàn)代的電子系統(tǒng)設(shè)計(jì)主導(dǎo)的技術(shù),EDA技術(shù)具有兩個(gè)明顯特征:即并行工程設(shè)計(jì)和自頂向下設(shè)計(jì)。其基本的思想是從系統(tǒng)總體設(shè)計(jì)出發(fā),分為行為描述、寄存器傳輸級描述、邏輯綜合三個(gè)層次,將設(shè)計(jì)的內(nèi)容逐步細(xì)化,最后完成整體的設(shè)計(jì),這是一種全新設(shè)計(jì)思想和設(shè)計(jì)理念。VerilogHDL硬件描述語言,是一種以文本形式,來描述數(shù)字系統(tǒng)硬件的結(jié)構(gòu)和行為的語言,它可以表示邏輯電路圖、邏輯表達(dá)式,還可以用來表示數(shù)字邏輯系統(tǒng)將完成的邏輯功能。誕生于20世紀(jì)80年代中期,是由GatewayDesignAutomation(該公司于1989年被Cadence公司收購)公司開發(fā)的一種快速設(shè)計(jì)電路工具,目前已經(jīng)成為IEEE的一種工業(yè)性的標(biāo)準(zhǔn)硬件描述語言。相比傳統(tǒng)電路系統(tǒng)的設(shè)計(jì)方法,Verilog擁有多層次的描述系統(tǒng)硬件功能的能力,支持自頂向下設(shè)計(jì)的特點(diǎn),因此設(shè)計(jì)者不必了解硬件結(jié)構(gòu)。直接從系統(tǒng)設(shè)計(jì)入手,在頂層進(jìn)行系統(tǒng)設(shè)置,方框圖的劃分及結(jié)構(gòu)設(shè)計(jì),在方框圖的一級用Verilog對電路行為加以描述,并作仿真和糾錯(cuò)工作;然后,在系統(tǒng)的一級作驗(yàn)證,最后在使用邏輯綜合優(yōu)化工具,以產(chǎn)生具體的門級的邏輯電路網(wǎng)表,再將網(wǎng)表下載到具體復(fù)雜可編程邏輯器件(CPLD,ComplexProgrammableLogicDevice)器件中去,最終實(shí)現(xiàn)可編程的專用集成電路的設(shè)計(jì)。用Verilog語言去完成數(shù)字邏輯電路和數(shù)字系統(tǒng)設(shè)計(jì),是電子電路設(shè)計(jì)方法上一個(gè)突破性的變革。與傳統(tǒng)方法相比,Verilog描述電路行為具有很多種優(yōu)點(diǎn):1、設(shè)計(jì)層次比較高,當(dāng)用于較復(fù)雜的計(jì)算時(shí),可以盡早的發(fā)現(xiàn)已經(jīng)存在的問題,縮短設(shè)計(jì)的周期;2、可以獨(dú)立實(shí)現(xiàn),修改方便,系統(tǒng)硬件的描述能力強(qiáng);3、可讀性好,便于交流,適合文檔保存;4、Verilog語言標(biāo)準(zhǔn)、規(guī)范以及移植性強(qiáng)。本設(shè)計(jì)所研究的基于FPGA的,可遙控智能彩燈控制器設(shè)計(jì)與實(shí)現(xiàn),也是基于上述的背景,通過本次的設(shè)計(jì)加深了對FPGA技術(shù)原理的理解與應(yīng)用;掌握了數(shù)字電路前端設(shè)計(jì)的基本流程:模塊劃分、模塊功能設(shè)計(jì)、模塊功能仿真、綜合和驗(yàn)證;同時(shí),對彩燈控制器的設(shè)計(jì)方法進(jìn)行探討。1.2課題研究內(nèi)容與方法本論文按照數(shù)字電路前端的設(shè)計(jì)流程,完成了基于FPGA的,可遙控智能彩燈控制器設(shè)計(jì)與實(shí)現(xiàn),主要工作有:1、熟悉可遙控智能彩燈控制器的應(yīng)用原理;2、熟悉FPGA文件的創(chuàng)建與使用,熟悉使用QuartusII和modelSIM軟件;3、采用Verilog-HDL硬件描述語言完成將設(shè)計(jì)分成時(shí)序控制模塊,顯示控制模塊,發(fā)射接收模塊,光線感知模塊設(shè)計(jì)與優(yōu)化;4、完成彩燈電路的模塊劃分、模塊功能設(shè)計(jì)、模塊功能仿真、綜合和驗(yàn)證。本文結(jié)構(gòu)安排如下:第一章:介紹課題提出的背景及意義,以及本論文的主要工作和結(jié)構(gòu)安排;第二章:對畢業(yè)設(shè)計(jì)用到的關(guān)鍵技術(shù)進(jìn)行詳細(xì)的介紹;第三章:進(jìn)行系統(tǒng)可行性分析;第四章:根據(jù)設(shè)計(jì)指導(dǎo)的思想和原則,對系統(tǒng)進(jìn)行初步的設(shè)計(jì)和詳細(xì)的設(shè)計(jì);第五章:完成系統(tǒng)實(shí)現(xiàn),包括數(shù)據(jù)通道的實(shí)現(xiàn)和控制單元的實(shí)現(xiàn);第六章:進(jìn)行數(shù)據(jù)通道仿真,控制單元仿真,系統(tǒng)整體仿真;第七章:結(jié)論部分,總結(jié)本課題所取得成果以及本文的不足之處。大連東軟信息學(xué)院畢業(yè)設(shè)計(jì)(論文)第2章關(guān)鍵技術(shù)介紹2.1VerilogHDLVerilog-HDL,是一種硬件描述語言,用于從算法級、門級到開關(guān)級的,多種抽象設(shè)計(jì)層次的數(shù)字系統(tǒng)建模。被建模的數(shù)字系統(tǒng)對象的復(fù)雜性,介于簡單門與完整的電子數(shù)字系統(tǒng)夾層中。數(shù)字系統(tǒng)可按層次的描述,在相同的描述中用以顯式地進(jìn)行時(shí)序建模。Verilog-HDL語言有如下的述描述性能力:設(shè)計(jì)的行為、數(shù)據(jù)流等特性,結(jié)構(gòu)組成和涉及響應(yīng)監(jiān)控,可在設(shè)計(jì)驗(yàn)證方面的時(shí)延、波形產(chǎn)生的機(jī)制這些全部使用同一種建模語言。除此以外,Verilog-HDL語言還提供編程語言的接口,通過這些接口在設(shè)計(jì)模擬和驗(yàn)證期間,從設(shè)計(jì)外部訪問設(shè)計(jì),包括了模擬的具體控制與運(yùn)行。Verilog-HDL語言中阻塞語句,顧名思義,即本條語句存在能夠影響下一條語句的作用,在同一進(jìn)程always中,一條阻塞賦值語句的執(zhí)行,是立即影響下條語句的執(zhí)行情況和結(jié)果。如果該條語句沒有執(zhí)行完成,那么下條語句是不可能進(jìn)入此時(shí)的執(zhí)行狀態(tài)的,因此,從字面層上理解,這條語句阻塞了下條語句的執(zhí)行。Verilog-HDL語言非阻塞語句,非阻塞語句對應(yīng)用來說,更可以體現(xiàn)硬件電路的特點(diǎn)。這正是非阻塞語句可以廣泛的應(yīng)用到時(shí)序邏輯電路的原因,阻塞語句是順序執(zhí)行的,而非阻塞語句是同時(shí)執(zhí)行的。那么,怎樣在設(shè)計(jì)里面運(yùn)用好阻塞語句和非阻塞語句呢?總體上來講,遵循大體原則:阻塞語句應(yīng)用在組合邏輯電路設(shè)計(jì)中,而非阻塞語句用在時(shí)序邏輯電路的設(shè)計(jì)里面。HDL語言的建模,組主要的三種形式為:結(jié)構(gòu)化描述方式和數(shù)據(jù)流描述方式以及行為描述方式。下面來,區(qū)分下三種形式間的差別:1、結(jié)構(gòu)化描述建模,通過電路結(jié)構(gòu)的描述進(jìn)行建模,也就是對器件進(jìn)行調(diào)用(HDL概念稱為例化),應(yīng)用線網(wǎng)對各器件之間鏈接的描述方式。結(jié)構(gòu)化描述方式,反映的是一個(gè)設(shè)計(jì)的層次結(jié)構(gòu)。2、數(shù)據(jù)流描述建模,是數(shù)據(jù)流的設(shè)計(jì)中以具體行為的描述來建模。例如,連續(xù)賦值語句。在連續(xù)賦值語句的描述中,某值賦值于某信號。3、行為描述建模,是指以信號行為級的描述(非結(jié)構(gòu)級描述)來建模。在某方面,與數(shù)據(jù)流的建模比較相似,但一般情況下把initial塊語句或者是吧always塊語句的描述歸給行為描述建模。行為描述建模很多時(shí)候要通過一些行為級的運(yùn)算符的幫助來完成,比如,乘法運(yùn)算符(*),除法運(yùn)算符(/)等等。Verilog-HDL語言不僅定義語法,而且對每個(gè)語法結(jié)構(gòu),都定義了清晰的模擬和仿真語義。因此,用這種語言編寫的模型,能使用Verilog仿真器進(jìn)行驗(yàn)證。Verilog-HDL語言在C語言的基礎(chǔ)上,繼承了許多。Verilog-HDL同時(shí)也提供可擴(kuò)展的建模能力,其中有許多擴(kuò)展的初始時(shí)期很難被理解。但Verilog-HDL語言的核心卻很容易被學(xué)習(xí)和使用,而這些對大多數(shù)建模的應(yīng)用已經(jīng)非常充足了。當(dāng)然,最終完整的硬件語言,完全可以對完整的電子芯片以及系統(tǒng)進(jìn)行描述。下面的是VerilogHDL硬件描述語言的主要能力:1、最基礎(chǔ)邏輯門,例如and,or和nand等都已經(jīng)內(nèi)嵌在語言中。2、具有開關(guān)級的基礎(chǔ)結(jié)構(gòu)模型,例如pmos和nmos等也已被內(nèi)置于語言中。3、提供了顯式語言的結(jié)構(gòu),同時(shí)可指定在設(shè)計(jì)中端口與端口之間的時(shí)延,涉及路徑時(shí)延問題和設(shè)計(jì)中時(shí)序的檢索。4、設(shè)計(jì)可以以任意的形式出現(xiàn),語言不對其規(guī)模以及程度加以限制。5、Verilog-HDL不再是某些公司的專有的語言而是IEEE標(biāo)準(zhǔn)。6、人和計(jì)算機(jī)等都可以閱讀Verilog-HDL語言。因此,它可作為設(shè)備和人之間交流的一種橋梁。7、相同語言之間可于生成模擬激勵(lì),以指定測試驗(yàn)證的約束。例如,輸入信號的指定。8、Verilog-HDL可以對模擬驗(yàn)證進(jìn)行監(jiān)管,包括監(jiān)控和顯示數(shù)據(jù)。這部分?jǐn)?shù)據(jù)也可以與所期望值進(jìn)行比較,當(dāng)出現(xiàn)不匹配情況,對進(jìn)行打印并通知。9、在系統(tǒng)行為級的描述,Verilog-HDL既可以在RTL級上描述其設(shè)計(jì)部分,而且也可在其體系結(jié)構(gòu)級上對其描述,也可在算法級行為上描述其設(shè)計(jì)。10、能夠運(yùn)用門與模塊實(shí)例化語句,在結(jié)構(gòu)級進(jìn)行結(jié)構(gòu)描述。11、可以顯式,對并發(fā)和定時(shí)進(jìn)行建模。12、提供強(qiáng)有力的,文件讀寫能力。13.語言在特定情況下,是不確定性的,即在不同的模擬器上,模型可以產(chǎn)生不同的結(jié)果。2.2自上而下設(shè)計(jì)由最底層的元器件開始設(shè)計(jì)。從基本子系統(tǒng),去構(gòu)建大系統(tǒng)的電路設(shè)計(jì)模式,是本次設(shè)計(jì)最初進(jìn)行電路設(shè)計(jì)的基本方法。這種由底向上的設(shè)計(jì)方式,是電子線路初期最常用的方法,在電路還不太復(fù)雜、層次還比較簡單的設(shè)計(jì)中,它是一種非常有效的方法。但是,隨著電路結(jié)構(gòu)越來越復(fù)雜,這種方法則會顯示出較大的弊病。這就是,縱使每個(gè)子系統(tǒng)的設(shè)計(jì),分別滿足各自的要求,但系統(tǒng)的整體性能指標(biāo),卻往往得不到保障。而由頂向下的分層設(shè)計(jì)技術(shù),則能完整無缺的解決好了這個(gè)問題。在由頂向下的設(shè)計(jì)方法中,設(shè)計(jì)師會首先,進(jìn)行系統(tǒng)層的設(shè)計(jì),針對系統(tǒng)整個(gè)的特性,給出系統(tǒng)級的描述,包括系統(tǒng)的功能要求、接口配置、層次劃分、系統(tǒng)的電性能、系統(tǒng)的物理設(shè)計(jì)參數(shù)等等,根據(jù)這些描述,完成子系統(tǒng)級間的設(shè)計(jì)。這些描述除實(shí)現(xiàn)子系統(tǒng)上的功能之外,還必須滿足上級系統(tǒng)的要求,就這樣從最上到下直至最底層。最底層的子系統(tǒng),實(shí)際上就是具體點(diǎn)路。這種自上而下的層次化設(shè)計(jì)方法,就是當(dāng)代EDA技術(shù)的電子系統(tǒng)的設(shè)計(jì)思想,在EDA設(shè)計(jì)中被稱為top-to-down設(shè)計(jì)。自頂向下的層次化設(shè)計(jì)技術(shù),有兩個(gè)關(guān)鍵的要素,即硬件描述語言,可以對電路的結(jié)構(gòu)以及行為進(jìn)行描述,建立電路、系統(tǒng)的描述模型;同時(shí)也支持,對這些模型進(jìn)行功能上的仿真和時(shí)序驗(yàn)證。另一個(gè)要素就是邏輯綜合技術(shù),這種技術(shù)能快速的、有效的將描述模型轉(zhuǎn)化成具體地硬件門電路。EDA自上而下設(shè)計(jì)方法,由于設(shè)計(jì)過程中,本身充分考慮到了整個(gè)系統(tǒng)的各個(gè)要求,在設(shè)計(jì)的每一層次都進(jìn)行了,系統(tǒng)及子系統(tǒng)的仿真模擬,因此最后的電路的設(shè)計(jì),必然能滿足系統(tǒng)的整體特性,從而保證復(fù)雜大型電子系統(tǒng)的可靠性。圖2.1為自上而下的設(shè)計(jì)樹示意圖。圖2.1自上而下的設(shè)計(jì)樹示意圖2.3有限狀態(tài)機(jī)數(shù)字系統(tǒng)設(shè)計(jì)當(dāng)中有限狀態(tài)機(jī)已經(jīng)廣泛的被使用著。根據(jù)其狀態(tài)機(jī)輸出與輸入的關(guān)系,可將狀態(tài)機(jī)分成兩大類別:即摩爾型狀態(tài)機(jī)以及米莉型狀態(tài)機(jī)。有限狀態(tài)機(jī)主要擁有三個(gè)組成部分,在組合邏輯的部分中有狀態(tài)譯碼器,輸出譯碼器,狀態(tài)譯碼器,可以確定狀態(tài)機(jī)所能轉(zhuǎn)換到的下一狀態(tài),輸出譯碼器,確定著狀態(tài)機(jī)此時(shí)的輸出,狀態(tài)寄存器是時(shí)序邏輯的一部分,對狀態(tài)機(jī)的內(nèi)部動(dòng)態(tài)進(jìn)行儲存。狀態(tài)機(jī)有很多條的標(biāo)準(zhǔn),最重要的有以下幾個(gè)方面,如下:第一是要保證狀態(tài)機(jī)要具有安全性,是指有限狀態(tài)機(jī)(FSM,F(xiàn)initeStateMachine)進(jìn)入不了死循環(huán),尤其是狀態(tài)機(jī)不會進(jìn)入到預(yù)知到不到一種狀態(tài),當(dāng)其受外部的一些干擾時(shí)使其進(jìn)入沒有設(shè)計(jì)的狀態(tài),也可以迅速的回到到可以工作的狀態(tài)循環(huán)中去。這其中具有兩層意思。第一方面該FSM的綜合處理結(jié)果不會出現(xiàn)無毛刺等情況,其二要求FSM要完備,當(dāng)遇到非預(yù)制干擾進(jìn)入沒有設(shè)計(jì)的狀態(tài),也可以迅速回復(fù)到可工作狀態(tài)。第二是要保證狀態(tài)機(jī)面積以及速度等等設(shè)計(jì)中所涉及的要求。第三是要保證狀態(tài)機(jī)的設(shè)計(jì)要清楚明了以及易于維護(hù)。特別指出的是,以上的各項(xiàng)標(biāo)準(zhǔn),它們之間具有直接且相當(dāng)密切的內(nèi)在關(guān)聯(lián)。芯片的設(shè)計(jì)過程中,綜合處理的結(jié)果進(jìn)行評價(jià)的兩個(gè)基礎(chǔ)的標(biāo)準(zhǔn):面積、反應(yīng)程度?!懊娣e”指的是邏輯資源所使用的量;而“反應(yīng)程度”是指在芯片設(shè)計(jì)中可以穩(wěn)定運(yùn)行所達(dá)到的頻率的最高值。兩者是相互對立,但又相互統(tǒng)一的矛盾共存體,要求設(shè)計(jì)既要面積小同時(shí)運(yùn)行頻率達(dá)到最高,這是不可能存在的事情。科學(xué)設(shè)計(jì)的目標(biāo)知道是:當(dāng)時(shí)需要求得到滿足的同時(shí),芯片所使用的面試最小的;或者,在規(guī)定了其面積的狀況下,盡量滿足時(shí)序余量達(dá)到更多。除此之外,如果要求FSM安全,則很多的環(huán)境中要用到“fullcase”的編程式,也就是說在狀態(tài)轉(zhuǎn)移中所涉及到的變量,所有的向量組合情況都在FSM
中做相應(yīng)的處理,也就意味著將要多花更多的設(shè)計(jì)資源,有時(shí)也會影響FSM的頻率。所以,上述的標(biāo)準(zhǔn)要綜合考慮,根據(jù)設(shè)計(jì)的要求有所衡量。狀態(tài)機(jī)描述時(shí)的關(guān)鍵,是如何描述狀態(tài)之間的轉(zhuǎn)移,各個(gè)狀態(tài)間的輸出又是什么,讓狀態(tài)之間可以轉(zhuǎn)的因素等。有很多在描述時(shí)所應(yīng)用的,最常見的三種方式有:1、一段式:將整個(gè)的狀態(tài)機(jī),寫到一個(gè)always模塊里面,在此模塊中,既描述了狀態(tài)轉(zhuǎn)移,也對每個(gè)狀態(tài)下的輸入輸出進(jìn)行描述;2、二段式:用兩個(gè)always模塊對狀態(tài)機(jī)的不同狀態(tài)進(jìn)行描述,其中一個(gè)always模塊,采取同步時(shí)序?qū)顟B(tài)的轉(zhuǎn)移進(jìn)行描述;而在另外一個(gè)always模塊中,使用組合邏輯對狀態(tài)轉(zhuǎn)移時(shí)的條件進(jìn)行判斷,說明狀態(tài)機(jī)在狀態(tài)轉(zhuǎn)移時(shí)的規(guī)律及輸出;3、三段式:在兩個(gè)always模塊的基礎(chǔ)上,使用三個(gè)always模塊。一個(gè)always模塊采用,同步時(shí)序?qū)顟B(tài)轉(zhuǎn)移進(jìn)行,一個(gè)always用組合邏輯,進(jìn)行對狀態(tài)轉(zhuǎn)移條件的判別,說明轉(zhuǎn)移規(guī)律,另一個(gè)always模塊描各述狀態(tài)間的輸出(組合電路,時(shí)序電路都可以應(yīng)用)。
就一般而言,推薦使用的FSM方式為后兩種。因?yàn)椋現(xiàn)SM和其他的設(shè)計(jì)一樣,盡可能地應(yīng)用同步時(shí)序進(jìn)行設(shè)計(jì),可是設(shè)計(jì)的穩(wěn)定性得到一定的提高。在狀態(tài)機(jī)最終實(shí)現(xiàn)后,一般來說,在狀態(tài)轉(zhuǎn)移的部分所涉及的是同步時(shí)序電路,而對狀態(tài)轉(zhuǎn)移條件的判斷上所以用的是組合邏輯電路。就第二種描述形勢來說,與第一種描述形式作比較,把同步時(shí)序邏輯電路和組合邏輯電路,有區(qū)別的放在不一樣的always模塊中進(jìn)行實(shí)現(xiàn),這樣做不僅僅是更利于讀取、解釋以及維護(hù),要特別說明的是,方便綜合器對代碼進(jìn)行優(yōu)化,用戶可方便的添加不同的、合適的時(shí)序約束,同樣更有助于對布局布線器的實(shí)現(xiàn)。在第二種方式中,在當(dāng)前狀態(tài)下的輸出要用組合邏輯實(shí)現(xiàn)。但是,毛刺等問題很容易在組合邏輯中出現(xiàn),而且不便于約束,更是有礙綜合器、布局布線器高性能進(jìn)行設(shè)計(jì)。
而在第三種與第二種相比,關(guān)鍵在于狀態(tài)轉(zhuǎn)移的規(guī)律上,上一的狀態(tài)可根據(jù)此時(shí)的輸入條件判對輸出進(jìn)行判斷,從而可在不對時(shí)鐘節(jié)拍進(jìn)行更多的插入的前提下,實(shí)現(xiàn)寄存器輸出。第3章系統(tǒng)需求分析3.1系統(tǒng)設(shè)計(jì)目標(biāo)本設(shè)計(jì)以QuartusⅡ?yàn)橄到y(tǒng)開發(fā)環(huán)境,使用ModelSIM進(jìn)行仿真,采用Verilog-HDL語言,完成可遙控智能彩燈控制器電路的前端設(shè)計(jì)。該電路可顯示十六路彩燈的七種花色變化,其花色變化頻率可調(diào)。3.2系統(tǒng)功能需求根據(jù)需求調(diào)研結(jié)果確定本系統(tǒng)主要包括以下功能模塊。根據(jù)系統(tǒng)設(shè)計(jì)要求可知,整個(gè)系統(tǒng)共有五個(gè)輸入信號:控制彩燈頻率轉(zhuǎn)換的信號為clk_div,系統(tǒng)復(fù)位信號rst_n,彩燈頻率調(diào)節(jié)開關(guān)sel_clk,遙控信號control_in,以及光線感知端口共有十六路彩燈輸出信號。根據(jù)以上情況,對彩燈內(nèi)部控制電路led分為兩大組成部分:時(shí)鐘分頻電路clk_div和led顯示電路led_dis。其的工作系統(tǒng)如下:時(shí)鐘分頻電路clk_div可據(jù)輸入信號sel_key,rst_n,clk_div產(chǎn)生的滿足led_dis電路使用要求的分頻時(shí)鐘信號,而led顯示電路led_dis則會據(jù)時(shí)鐘分頻電路clk_div輸入的分頻時(shí)鐘信號,輸出六種華星不斷變化的可遙控選擇的,為十六路可遙控彩燈工作的信號,這些控制信號與驅(qū)動(dòng)電路共同控制著遙控彩燈的工作。首先應(yīng)進(jìn)行系統(tǒng)模塊的劃分,規(guī)定每一模塊的功能以及各個(gè)模塊之間的接口。最終設(shè)計(jì)方案由:十六路彩燈花樣顯示控制器,時(shí)序控制分模塊,顯示模塊,發(fā)射接收模塊,光線感知模塊四部分組成。時(shí)序控制模塊根據(jù)輸入信號不同頻率的選擇不同的時(shí)鐘信號輸送到彩燈顯示控制器,從而達(dá)到控制彩燈閃爍速度的快慢,光線感知模塊根據(jù)外部光線的強(qiáng)弱改變燈的亮滅,發(fā)射接收模塊可以改變花色。3.3系統(tǒng)非功能需求EDA技術(shù)的迅猛發(fā)展,基于FPGA技術(shù)開發(fā)的彩燈性價(jià)比越來越高,功能強(qiáng)大,縮小了產(chǎn)品體積,降低原本功耗,而且能輕松的完成對彩燈的控制。EDA技術(shù)廣泛運(yùn)用現(xiàn)代化計(jì)算機(jī)技術(shù),提高電子設(shè)計(jì)自動(dòng)化程度,縮短了生產(chǎn)周期,節(jié)能省財(cái),提高產(chǎn)品的競爭力。3.4系統(tǒng)開發(fā)環(huán)境3.4.1硬件環(huán)境DE2-115開發(fā)板為用戶提供了廣泛的用于實(shí)現(xiàn)從簡單的電路設(shè)計(jì)到各種多媒體電路設(shè)計(jì)的特征。本設(shè)計(jì)使用的DE2-115開發(fā)板硬件資源如下:1、AlteraCyclone?IV4CE115FPGA器件;2、Altera系列配置–EPCS64;3、板上USBBlaster用于編程同時(shí)支持JTAG模式和AS模式;8、18個(gè)紅色LEDs;9、9個(gè)綠色LEDs;10、50MHz的晶振提供著時(shí)鐘源;3.4.2軟件環(huán)境QuartusII是Altera公司的可綜合性PLD/FPGA開發(fā)出來的軟件,可支持著原理圖、硬件描述語言(VHDL,HardwareDescriptionLanguage)、Verilog-HDL以及模擬硬件描述語言(AHDL,AnalogHardwareDescriptionLanguage)等許多種設(shè)計(jì)的輸入方式,在內(nèi)部鑲嵌綜合器和仿真器,可完成在設(shè)計(jì)最初的輸入直到硬件配置的完整PLD設(shè)計(jì)的流程。QuartusII可以在XP、Linux以及Unix上面使用,除了使用Tcl設(shè)計(jì)腳本對設(shè)計(jì)流程完成外,還提供者完善的圖形界面設(shè)計(jì)。使用速度快、界面統(tǒng)一、功能集中、方便學(xué)習(xí)使用。QuartusII支持Altera的IP內(nèi)核,包含LPM/MegaFunction等模塊庫,用戶可充分的應(yīng)用已經(jīng)完成的模塊,更簡化了設(shè)計(jì)的難度、促使設(shè)計(jì)更快的完成。與此同時(shí)對第三方EDA工具具有良好的支持性,使用戶也在設(shè)計(jì)流程中,更熟練的使用EDA工具。而QuartusII與之相比,不僅僅在器件類型的豐富和圖形界面的改變上。Altera在QuartusII中包含了很多類諸如SignalTapII、ChipEditor、RTLViewer等輔助插件,更集成SOPC和HardCopy設(shè)計(jì)流程,同時(shí)繼承了MaxplusII便于應(yīng)用的圖形界面的優(yōu)點(diǎn)。Altera公司的QuartusII軟件機(jī)構(gòu)采用可編程邏輯的設(shè)計(jì)理念,其強(qiáng)健的設(shè)計(jì)功能,更加直觀更加易用的接口使用,更多的受到了使用者的歡迎。QuartusII設(shè)計(jì)軟件兼具著承載自上而下以及自下而上的編輯方式。自上而下的編輯方式中,不同的設(shè)計(jì)應(yīng)用者或是互聯(lián)網(wǎng)協(xié)議(IP,InternetProtocol)的提供者,實(shí)用軟件設(shè)計(jì)并驗(yàn)證設(shè)計(jì)中不同的部分。工程人員將對整體上進(jìn)行編譯并且優(yōu)化頂層的工程。在設(shè)計(jì)中,已經(jīng)設(shè)計(jì)完成的部分可進(jìn)行處理檢驗(yàn)并得到相應(yīng)結(jié)果,在設(shè)計(jì)中當(dāng)其他的設(shè)計(jì)部分發(fā)生改動(dòng)時(shí),其性能可以不發(fā)生變化。在自下而上的編譯設(shè)計(jì)中,不同的設(shè)計(jì)人員之間都在將他們工程中,對他們進(jìn)行的設(shè)計(jì)各自優(yōu)化后,將各個(gè)底層工程匯總到頂層的工程里面。以漸進(jìn)的形式進(jìn)行編譯工作。作為底層的各個(gè)子模塊的設(shè)計(jì)人員,可以有針對性的為他們的設(shè)計(jì),導(dǎo)出優(yōu)化之后的網(wǎng)表或者一組匹配結(jié)果(例如LogicLock區(qū)域)。然后,整個(gè)工程負(fù)責(zé)人員,將各個(gè)設(shè)計(jì)子模塊化為不同的設(shè)計(jì)分區(qū),將它們集總到頂層工程中。在此種情況發(fā)生時(shí),整個(gè)工程負(fù)責(zé)人員將分別對底層模塊的設(shè)計(jì)人員進(jìn)行指導(dǎo)工作,用以確定各個(gè)分區(qū)之間都應(yīng)用到適當(dāng)?shù)钠骷Y源。對于自上而下的設(shè)計(jì)流程,比其相對應(yīng)的自下而上設(shè)計(jì)流程在執(zhí)行方面更簡單。例如,不必將底層設(shè)計(jì)驚醒導(dǎo)入或者導(dǎo)出。第二點(diǎn),就自上而下的設(shè)計(jì)也為應(yīng)用軟件提供了整個(gè)行的設(shè)計(jì)信息。因此,可以完全的進(jìn)行全局性的優(yōu)化。但是,自下而上的設(shè)計(jì)中,當(dāng)軟件編譯各個(gè)子模塊分區(qū)時(shí),無法預(yù)知其頂層設(shè)計(jì)中其他分區(qū)的具體情況,因此,必要時(shí)要進(jìn)行資源均衡和時(shí)序預(yù)算。自上而下漸進(jìn)式編譯設(shè)計(jì)流程,可重新使用以前的編譯結(jié)果,以確保只對修改過的設(shè)計(jì)進(jìn)行重新編譯,以此保持設(shè)計(jì)性能不變,節(jié)省編譯的時(shí)間。自上而下漸進(jìn)式的編譯流程,在處理其他設(shè)計(jì)分區(qū)時(shí),只修改設(shè)計(jì)中關(guān)鍵單元的布局,也可只對設(shè)計(jì)的指定部分進(jìn)行限定布局,使編譯器能夠自動(dòng)的優(yōu)化設(shè)計(jì)的其余部分,從而改進(jìn)時(shí)序。漸進(jìn)式編譯流程中,可為設(shè)計(jì)分區(qū)分配一個(gè)設(shè)計(jì)實(shí)體實(shí)例,然后使用時(shí)序布局圖或LogicLock功能為分區(qū)分配一個(gè)器件物理位置,來進(jìn)行完整的設(shè)計(jì)編譯。在編譯過程中,編譯器將綜合和適配結(jié)果,保存在工程數(shù)據(jù)庫中。在第一次編譯之后,如果對設(shè)計(jì)進(jìn)行進(jìn)一步的修改,只需將改動(dòng)過的分區(qū)需要重新編譯即可。由于漸進(jìn)式編譯流程,能夠防止編譯器跨分區(qū)邊界優(yōu)化,因此,編譯器不會像常規(guī)編譯那樣,對面積和時(shí)序進(jìn)行大規(guī)模優(yōu)化。為獲得最佳的面積及時(shí)序結(jié)果,建議記錄設(shè)計(jì)分區(qū)的輸入以及輸出,盡可能的將設(shè)計(jì)的分區(qū)量控制在可控的范圍內(nèi),避免在跨分區(qū)邊界上建立過多的關(guān)鍵路徑,不要建立太小的分區(qū),像數(shù)量少于1000的邏輯單元、自適應(yīng)邏輯模塊分區(qū)。Mentor公司的ModelSim可以成為是業(yè)界最優(yōu)秀的HDL語言的仿真軟件,它可以支持方便的仿真前提條件,在業(yè)內(nèi)可以說是唯一的、單內(nèi)核的、支持VHDL和Verilog混合的仿真軟件。采用了先進(jìn)的編譯技術(shù)、Tcl/Tk技術(shù)、單一內(nèi)核的仿真技術(shù),編譯的速度以及仿真速度足夠快,其編譯的代碼與設(shè)計(jì)所應(yīng)用的平臺無關(guān),更方便的保護(hù)了IP核,提供用戶更方便的調(diào)錯(cuò)平臺,是FPGA/專用集成電路(ASIC,ApplicationSpecificIntegratedCircuit)仿真的首選軟件。ModelSim具有的主要特點(diǎn)如下:1、可以進(jìn)行RTL以及門級優(yōu)化,編譯和仿真的速度迅速,更是可以跨平臺或跨版本仿真;2、單內(nèi)核VHDL和Verilog的混合仿真軟件;3、C和Tcl/Tk接口,C調(diào)試;4、對SystemC的采用直接性支持和HDL語言的任意混合;5、支持SystemVerilog在設(shè)計(jì)上的功能;6、針對系統(tǒng)級語言的最全面支持,SystemVerilog,SystemC,PSL;7、ASICSignoff;8、可以單獨(dú)或同時(shí)進(jìn)行行為(behavioral)、RTL級、和門級(gate-level)的代碼。ModelSim軟件的不同版本:SE、PE、LE和OEM,SE是最高級的版本,而集成在Actel、Atmel、Altera、Xilinx以及Lattice等FPGA廠商所設(shè)計(jì)工具中都是OEM版本。SE版和OEM版在其功能以及性能等方面具有較大的分差。就好比,對于大家最關(guān)心的問題—仿真的速度,以Xilinx公司所生產(chǎn)的OEM版本ModelSimXE為例子來說明,在代碼量少于40000行的設(shè)計(jì)當(dāng)中,ModelSimSE比ModelSimXE要快10倍;但是,當(dāng)代碼量超過40000行的時(shí)候,ModelSimSE要比ModelSimXE快近40倍。ModelSimSE同樣支持PC、UNIX和LINUX的混合結(jié)構(gòu);支持全面完善以及高性能的驗(yàn)證功能;全面支持業(yè)界內(nèi)的標(biāo)準(zhǔn);MentorGraphics公司提供了,業(yè)界最好的技術(shù)支持與服務(wù)。3.5系統(tǒng)可行性分析用Verilog語言設(shè)計(jì)一個(gè)十六路彩燈控制器,六種花型循環(huán)變化,并且可以選擇快慢兩種節(jié)拍。運(yùn)用自頂而下的設(shè)計(jì)思想,按功能逐層分割實(shí)現(xiàn)層次化設(shè)計(jì)。根據(jù)多路彩燈控制器的設(shè)計(jì)原理,將內(nèi)部整個(gè)控制器分為兩個(gè)部分,分別為時(shí)序控制模塊和顯示控制模塊。時(shí)序控制模塊實(shí)現(xiàn)的功能是產(chǎn)生1/4和1/8的時(shí)鐘信號。顯示控制模塊中實(shí)現(xiàn)的七種花型如表3.1所示:表3.1七種花型F1“1010101010101010”F2“1001001001001001”F3“1000100010001000”F4“1000010000100001”F5“1000001000001000”F6“1000000100000010”F7“為跑馬燈先從左到右再從右到左”這個(gè)系統(tǒng)由時(shí)序控制電路,顯示控制電路,發(fā)射接收模塊,光線感應(yīng)模塊組成,電路組成較簡單。且檢查電路時(shí)易于分析修改,雖然原理相對復(fù)雜,但單元電路模塊少,而且程序編寫簡單易懂,并能夠靈活地添加或刪減程序?qū)崿F(xiàn)多種花型的變化,有很大的靈活性。此課題是基于FPGA的十六路可遙控智能彩燈控制器的設(shè)計(jì)與實(shí)現(xiàn),使用Verilog-HDL語言對硬件電路進(jìn)行描述。首先,根據(jù)論文采用的自頂向下的設(shè)計(jì)思想,從系統(tǒng)級設(shè)計(jì)入手。從頂層進(jìn)行功能劃分和結(jié)構(gòu)設(shè)計(jì)。對實(shí)現(xiàn)系統(tǒng)功能的整個(gè)過程有了一定的認(rèn)識后,畫出系統(tǒng)級模塊;接著開始著手整體流程圖的設(shè)計(jì),并且對整體流程圖設(shè)計(jì)進(jìn)行反復(fù)完善;然后,通過流程圖提煉出相應(yīng)的控制單元和數(shù)據(jù)通道。根據(jù)高級數(shù)據(jù)系統(tǒng)設(shè)計(jì)與驗(yàn)證進(jìn)行基本流程圖的設(shè)計(jì),以及數(shù)據(jù)通道和控制單元的設(shè)計(jì)。使用Altera公司開發(fā)的QuartusⅡ軟件,對每個(gè)模塊進(jìn)行開發(fā)。通過常用仿真軟件Modelsim對設(shè)計(jì)的所有模塊進(jìn)行仿真測試,確保整個(gè)開發(fā)流程順利進(jìn)行。最后在FPGA開發(fā)板上進(jìn)行功能測試,并且不斷地進(jìn)行優(yōu)化。3.6外圍電路分析3.6.1控制電路控制電路的硬件電路主要由按鍵和撥碼開關(guān)來實(shí)現(xiàn)。復(fù)位按鍵rst_n,復(fù)位鍵對整個(gè)電路進(jìn)行復(fù)位,低電平有效。時(shí)鐘選擇開關(guān)choose_key:通過改變撥碼開關(guān)choose_key選擇系統(tǒng)時(shí)鐘,當(dāng)撥碼開關(guān)為邏輯“1”時(shí),系統(tǒng)選擇4分頻時(shí)鐘,即2hz。反之,撥碼開關(guān)為邏輯“0”時(shí),系統(tǒng)選擇8分頻時(shí)鐘,即1hz。3.6.2顯示電路顯示電路的硬件電路主要由LED來實(shí)現(xiàn)?;ㄉx擇顯示,即led_dis由16個(gè)led組成,表示輸出花色的類型。3.6.3系統(tǒng)流程圖在對整個(gè)系統(tǒng)有一定的認(rèn)識后,根據(jù)高級數(shù)字系統(tǒng)設(shè)計(jì)方法和彩燈電路的特點(diǎn),做出了系統(tǒng)流程圖如圖3.1所示。圖3.1系統(tǒng)流程圖1、首先進(jìn)入空閑狀態(tài),整個(gè)系統(tǒng)正處于初始化狀態(tài)。初始化狀態(tài)是整個(gè)系統(tǒng)進(jìn)入默認(rèn)的工作狀態(tài),如果初始化完成后復(fù)位端使能信號有效,那么系統(tǒng)再次進(jìn)入到初始化處理狀態(tài);2、然后判斷外部使能信號(外部天色是否為黑暗狀態(tài))是否有效,外部信號有效的話系統(tǒng)進(jìn)入時(shí)鐘分頻產(chǎn)生狀態(tài),在此時(shí)可以改整體分頻時(shí)鐘的大小,并將所選擇的分頻后的時(shí)鐘送入彩燈控制器系統(tǒng)中,作為整個(gè)系統(tǒng)的工作時(shí)鐘;3、其次當(dāng)外部信號有效時(shí),從ROM中取出顯示等待花色的值,led燈顯示為全亮狀態(tài),此時(shí)為花色選擇階段。否則,系統(tǒng)返回初始狀態(tài);4、接著如果外部花色選擇使能信號有效,從ROM中取出所選取花色的相應(yīng)值,將選擇的花色輸出,否則不進(jìn)行花色選擇;5、當(dāng)處于此階段時(shí),判斷是否有外部信號再次輸入;6、最后將要輸出花色用led燈顯示。第4章系統(tǒng)設(shè)計(jì)4.1系統(tǒng)設(shè)計(jì)指導(dǎo)原則本課題是一個(gè)基于FPGA的可遙控智能彩燈電路設(shè)計(jì)。該電路輸出的花色可直接根據(jù)外部天色變化或個(gè)人選擇,進(jìn)行開關(guān)以及花色選擇和花色跳變速度的更改。本設(shè)計(jì)根據(jù)數(shù)字系統(tǒng)設(shè)計(jì)所能實(shí)現(xiàn)的基本流程進(jìn)行設(shè)計(jì),包括整體流程圖設(shè)計(jì)、數(shù)據(jù)通道以及控制單元的設(shè)計(jì)、應(yīng)用Verilog語言實(shí)現(xiàn)設(shè)計(jì)、最后經(jīng)過ModelSim軟件進(jìn)行各模塊和整體系統(tǒng)的功能仿真,并在設(shè)計(jì)實(shí)現(xiàn)過程中不斷對電路性能進(jìn)行優(yōu)化。4.2系統(tǒng)詳細(xì)設(shè)計(jì)可遙控智能彩燈控制器設(shè)計(jì)模塊圖見圖4.1,端口包括與外圍的控制電路和顯示電路連接的端口??傮w模塊劃分2個(gè)子模塊,分別是數(shù)據(jù)通道和控制單元。圖4.1系統(tǒng)體系結(jié)構(gòu)模塊圖詳細(xì)端口說明見表4.1。表4.1可遙控智能彩燈控制器模塊管腳信號I/O功能描述Clk50M_iI外部輸入50MHz時(shí)鐘信號Clk_sel_iI分頻始終選擇信號Sw0_iI撥碼開關(guān)產(chǎn)生花色變化信號Sw1_iISw2_iI數(shù)據(jù)通:利用FPGA技術(shù),根據(jù)所選擇的分頻時(shí)鐘以及花色的不同,產(chǎn)生頻率可變化的花色顯示狀態(tài)。數(shù)據(jù)通道模塊圖見圖4.2。圖4.2數(shù)據(jù)通道模塊圖數(shù)據(jù)通道詳細(xì)端口說明見表4.2。表4.2數(shù)據(jù)通道管腳信號I/O功能描述Clk50MI外部輸入50MHz時(shí)鐘信號Rst_nI系統(tǒng)復(fù)位信號L_d_enI數(shù)據(jù)通道開始工作使能信號Clk_selI始終選擇使能信號Dis_flagI花色選擇使能信號Led_disO花色顯示控制單元:判斷外界或數(shù)據(jù)通道信號的輸入,進(jìn)行狀態(tài)的轉(zhuǎn)移,在相應(yīng)的狀態(tài)輸出dis0、dis1、dis2、l_d_en等使能控制信號??刂茊卧K圖見圖4.3。圖4.3控制單元模塊圖控制單元詳細(xì)端口說明見表4.3表4.3控制單元管腳信號I/O功能描述ClkI分頻時(shí)鐘時(shí)鐘信號Dark_enI外部天色變化信號Rst_nI復(fù)位按鍵信號Sw0I花色選擇鍵輸入信號Sw1ISw2IDis0O花色選擇鍵輸出信號Dis1ODis2OL_d_enO數(shù)據(jù)通道開始工作使能信號4.2.1數(shù)據(jù)通道模塊設(shè)計(jì)如圖4.4所示,數(shù)據(jù)通道中包含3個(gè)小的模塊,分別是分頻時(shí)鐘產(chǎn)生模塊,加減計(jì)數(shù)器模塊,花色顯示模塊。圖4.4數(shù)據(jù)通道內(nèi)部模塊圖分頻時(shí)鐘產(chǎn)生模塊見圖4.5。圖4.5分頻時(shí)鐘產(chǎn)生模塊加減計(jì)數(shù)器模塊見圖4.6。圖4.6加減計(jì)數(shù)器模塊花色顯示模塊見圖4.7。圖4.7花色顯示模塊4.2.2控制單元模塊設(shè)計(jì)根據(jù)可遙控智能彩燈控制器電路的特點(diǎn),將系統(tǒng)劃分為9種狀態(tài),即復(fù)位狀態(tài)、等待選擇狀態(tài)、花色選擇一狀態(tài)、花色選擇二狀態(tài)、花色選擇三狀態(tài)、花色選擇四狀態(tài)、花色選擇五狀態(tài)、花色選擇七狀態(tài)。其中,在等待花色選擇狀態(tài)時(shí),所有l(wèi)ed燈為全部點(diǎn)亮狀態(tài)。系統(tǒng)首先處于初始化狀態(tài),然后當(dāng)外部天色變?yōu)楹诎禃r(shí)系統(tǒng)開始工作,從只讀存儲器(ROM,readonlymemory)中取出顯示等待花色的值,系統(tǒng)進(jìn)入到等待階段,led燈為全部點(diǎn)亮狀態(tài),此時(shí)可以進(jìn)行分頻時(shí)鐘以及花色的選擇;如果復(fù)位使能信號有效,則返回初始狀態(tài);如果外部花色選擇信號一旦有效,輸出花色一跳變的狀態(tài),如果外部花色選擇信號二有效,輸出花色二跳變的狀態(tài),依次類推,根據(jù)所選花色的不同,輸出不同的狀態(tài),最終將輸出的狀態(tài)送給數(shù)據(jù)通道。狀態(tài)轉(zhuǎn)換圖,見圖4.8所示。圖4.8狀態(tài)轉(zhuǎn)換圖大連東軟信息學(xué)院畢業(yè)設(shè)計(jì)(論文)第5章系統(tǒng)實(shí)現(xiàn)5.1控制單元的部分實(shí)現(xiàn)在控制單元中,此部分代碼為狀態(tài)轉(zhuǎn)換控制的中心代碼。在SS狀態(tài)時(shí),當(dāng)外部輸入dark_en有效,說明此時(shí)十六路led彩燈為全亮狀態(tài),也就是說明在此狀態(tài)下外部可對7中花色進(jìn)行的選擇。 SS:beginif(dark_en)begin case(sw_flag) 3'd0:begin {l_d_en,dis2,dis1,dis0}<=5'b11000; next_state<=SS; end 3'd1:begin {l_d_en,dis2,dis1,dis0}<=5'b01001; next_state<=S1; end 3'd2:begin {l_d_en,dis2,dis1,dis0}<=5'b01010; next_state<=S2; end 3'd3:begin {l_d_en,dis2,dis1,dis0}<=5'b01011; next_state<=S3; end 3'd4:begin {l_d_en,dis2,dis1,dis0}<=5'b01100; next_state<=S4; end 3'd5:begin {l_d_en,dis2,dis1,dis0}<=5'b01101; next_state<=S5; end 3'd6:begin {l_d_en,dis2,dis1,dis0}<=5'b01110; next_state<=S6; end 3'd7:begin {l_d_en,dis2,dis1,dis0}<=5'b01111; next_state<=S7; end default:; endcase5.2數(shù)據(jù)通道中的部分實(shí)現(xiàn) 分頻時(shí)鐘的實(shí)現(xiàn),在分頻模塊中,當(dāng)系統(tǒng)開始工作時(shí),將對外部輸入時(shí)鐘50Mhz進(jìn)行分頻,產(chǎn)生兩個(gè)時(shí)鐘,即1hz時(shí)鐘和2hz時(shí)鐘,外部信號對分頻時(shí)鐘進(jìn)行選擇,選擇的時(shí)鐘進(jìn)入狀態(tài)機(jī)和數(shù)據(jù)通道中,作為系統(tǒng)工作的時(shí)鐘。parameterPI=25'd25000000;assignclk=clk_sel?clk_1hz:clk_2hz;always@(posedgeclk50Mornegedgerst_n)beginif(!rst_n)beginclk_2hz<=1'b0; end elsebegin if(count_2hz==PI)begin clk_2hz<=~clk_2hz; count_2hz<=25'd0; end elsebegin clk_2hz<=clk_2hz; count_2hz<=count_2hz+1'b1; end endendalways@(posedgeclk_2hzornegedgerst_n)beginif(!rst_n)beginclk_1hz<=1'b0; end elsebegin clk_1hz<=~clk_1hz; endendendmodule 大連東軟信息學(xué)院畢業(yè)設(shè)計(jì)(論文)第6章系統(tǒng)測試仿真是一項(xiàng)十分重要的工作,在整個(gè)系統(tǒng)設(shè)計(jì)中占據(jù)重要的位置。通過對各個(gè)模塊和整體系統(tǒng)的仿真可以及時(shí)發(fā)現(xiàn)和解決設(shè)計(jì)中的許多問題,所以對系統(tǒng)的設(shè)計(jì)具有極其重要的意義。下面將結(jié)合本系統(tǒng)開發(fā)對系統(tǒng)進(jìn)行了整體和模塊仿真。6.1控制單元仿真在控制單元的設(shè)計(jì)中,實(shí)現(xiàn)了其中花色選擇間的轉(zhuǎn)化??刂茊卧抡婺K見圖6.1。圖6.1控制單元仿真模塊6.2數(shù)據(jù)通道仿真在數(shù)據(jù)通道中的仿真中,可以看到花色的選擇及時(shí)鐘分頻的選擇。數(shù)據(jù)通單仿真模塊見圖6.2。圖6.2數(shù)據(jù)通道仿真模塊6.3分頻模塊仿真時(shí)鐘分頻模塊見圖6.3。圖6.3分頻時(shí)鐘仿真模塊6.4顯示模塊仿真花色顯示模塊見圖6.4。圖6.4花色顯示仿真模塊6.5系統(tǒng)整體仿真設(shè)計(jì)實(shí)現(xiàn)了十六路可控智能彩燈顯示頻率的變化以及花色間的轉(zhuǎn)換,以第七種花色,跑馬燈為例。系統(tǒng)整體仿真見圖6.5。圖6.5系統(tǒng)整體仿真大連東軟信息學(xué)院畢業(yè)設(shè)計(jì)(論文)第7章結(jié)論本次畢業(yè)設(shè)計(jì)所設(shè)計(jì)的項(xiàng)目,從最初時(shí)期的選題、可行性分析、系統(tǒng)設(shè)計(jì),到最后的系統(tǒng)實(shí)現(xiàn)都較為順利。通過進(jìn)行最后對系統(tǒng)整體的功能仿真,可以看出設(shè)計(jì)已經(jīng)達(dá)到了最初的設(shè)計(jì)目標(biāo)。本次設(shè)計(jì)的課題是可遙控智能彩燈控制器的設(shè)計(jì),拿到這個(gè)課題的時(shí)候,經(jīng)過分析知道關(guān)鍵是計(jì)數(shù)器和分頻器的分配使用,分頻的方法有很多的種類,對于同一種功能的實(shí)現(xiàn),用Verilog-HDL可以采用多種方式描述,每種方式都各有優(yōu)劣,本次的設(shè)計(jì)只采用了其中較簡單的一種,用最簡潔的語言寫出了所需功能的程序。根據(jù)論文采用自頂向下的設(shè)計(jì)思想,和數(shù)字系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)的基本流程,從頂層開始進(jìn)行功能劃分和結(jié)構(gòu)設(shè)計(jì)。然后進(jìn)行獨(dú)立的設(shè)計(jì)以及優(yōu)化每個(gè)模塊,并且在頂層設(shè)計(jì)中將所有已優(yōu)化的模塊綜合在一起,最后進(jìn)行總體設(shè)計(jì)驗(yàn)證。高級數(shù)字系統(tǒng)設(shè)計(jì)方法的主旨思想,是在系統(tǒng)設(shè)計(jì)過程中,首先對FPGA彩燈技術(shù)有所了解,之后再對系統(tǒng)整體實(shí)現(xiàn)的過程,進(jìn)行整體上的認(rèn)識和分析,以此來畫出系統(tǒng)流程圖的設(shè)計(jì)。在數(shù)據(jù)通道的設(shè)計(jì)過程中,劃分出若干個(gè)子單元模塊,并將不斷優(yōu)化其性能??刂茊卧O(shè)計(jì)由有限狀態(tài)機(jī)來實(shí)現(xiàn),合理的安排各個(gè)狀態(tài)的轉(zhuǎn)移??刂茊卧a(chǎn)生發(fā)送給數(shù)據(jù)通道所需要的控制信號,同時(shí)也接收來自數(shù)據(jù)通道的狀態(tài)信號,監(jiān)控著整個(gè)測試過程的運(yùn)行;數(shù)據(jù)通道應(yīng)用來自控制單元的控制信號,并將其處理的結(jié)果再次反饋給控制單元。數(shù)據(jù)通道和控制單元的協(xié)調(diào)工作,外圍電路進(jìn)行其他相關(guān)控制、顯示,整個(gè)系統(tǒng)便可以穩(wěn)定輸出所選取的花色及閃爍頻率。系統(tǒng)最終實(shí)現(xiàn)了的功能包括:1、兩個(gè)分頻時(shí)鐘之間可調(diào),范圍為1Hz~2Hz。一次來達(dá)到控制彩燈閃爍速度的快慢。2、據(jù)外部光線的強(qiáng)弱(是否黑暗)來改變彩燈的亮滅。3、可以遙控選擇十六路彩燈花色之間的轉(zhuǎn)換。1、2、3、4、5、6、7控制著十六路彩燈的花色,七種花色變化依次為:1、每隔一個(gè)LED燈點(diǎn)亮;2、每隔兩個(gè)LED燈點(diǎn)亮;3、每隔三個(gè)LED燈點(diǎn)亮;4、每隔四個(gè)LED燈點(diǎn)亮;5、每隔五個(gè)LED燈點(diǎn)亮;6、每隔六個(gè)LED燈點(diǎn)亮;7、為跑馬燈,從左邊開始逐個(gè)點(diǎn)亮,當(dāng)?shù)谑鶄€(gè)LED燈被點(diǎn)亮?xí)r,開始往返點(diǎn)亮。由于FPGA彩燈電路設(shè)計(jì)靈活,電路精準(zhǔn)度要求高,實(shí)際可實(shí)現(xiàn)的功能需求也多種多樣,本文只實(shí)現(xiàn)了最基本的功能,將來還要對電路的設(shè)計(jì)進(jìn)行更加層次的分析和研究,對其性能進(jìn)行不斷的改善。參考文獻(xiàn)[1]夏宇聞.復(fù)雜數(shù)字邏輯系統(tǒng)的VerilogHDL設(shè)計(jì)技術(shù)方法[M],高等教育出版社,2001[2]趙吉成,王志勇.XilinxFPGA設(shè)計(jì)與實(shí)踐教程[M],西安電子科技大學(xué)出版社,2012[3]褚振勇,齊亮,田紅心,高楷娟.FPGA設(shè)計(jì)及應(yīng)用[M],西安電子科技大學(xué)出版社,2006[4]Bhasker,徐振林.VerilogHDL硬件描述語言[M],機(jī)械工業(yè)出版社,2000[5]徐志軍,徐光輝.CPLD/FPGA的開發(fā)與應(yīng)用[M],電子工業(yè)出版社,2002[6]周潤景,蘇良碧.基于QuartusII的數(shù)字系統(tǒng)VerilogHDL設(shè)計(jì)實(shí)例詳解[M],電子工業(yè)出版社,2010[7]羅杰.VerilogHDL與數(shù)字ASIC設(shè)計(jì)基礎(chǔ)[M],華中科技大學(xué)出版社,2008[8]江國強(qiáng).?dāng)?shù)字系統(tǒng)的VerilogHDL設(shè)計(jì)[M],機(jī)械工業(yè)出版社,2007[9]王秀琴,夏洪洋,張鵬南.VerilogHDL數(shù)字系統(tǒng)設(shè)計(jì)入門與應(yīng)用實(shí)例[M],電子工業(yè)出版社,2012[10]張延偉,楊金巖,葛愛學(xué).VerilogHDL程序設(shè)計(jì)實(shí)例詳解[M],人民郵電出版社,2010[11]劉福奇.VerilogHDL設(shè)計(jì)與實(shí)戰(zhàn)[M],北京航空航天大學(xué)出版社,2012[12]潘松.EDA技術(shù)實(shí)用教程:Verilog_HDL版(第4版)[M],科學(xué)出版社,2012[1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 寺廟文化交流合作協(xié)議合同
- 勞動(dòng)合同新規(guī):鼓勵(lì)無固定期限簽約
- 21《我不能失信》教學(xué)設(shè)計(jì)-2023-2024學(xué)年統(tǒng)編版語文三年級下冊
- 單位食堂轉(zhuǎn)讓合同范本
- 11 對人有禮貌 (教學(xué)設(shè)計(jì))2024-2025學(xué)年統(tǒng)編版(2024)道德與法治一年級上冊
- Module 6 Unit 2 She visited the Tianchi Lake (教學(xué)設(shè)計(jì)) -2023-2024學(xué)年外研版(三起)英語五年級下冊
- 經(jīng)營書店合同范本
- Module 5 Unit1 Listening and speaking 教學(xué)設(shè)計(jì) 2024-2025學(xué)年外研版英語九年級上冊
- 11《百年孤獨(dú)(節(jié)選)》教學(xué)設(shè)計(jì) 2024-2025學(xué)年統(tǒng)編版高中語文選擇性必修上冊
- 3《我不拖拉》 教學(xué)設(shè)計(jì) -2023-2024學(xué)年道德與法治一年級下冊統(tǒng)編版
- PANTONE潘通色卡C面顏色
- 中藥的性能課件
- 平行四邊形的性質(zhì)說課課件- 人教版八年級數(shù)學(xué)下冊
- 2022新教科版科學(xué)六年級下冊全一冊全部課件(含32課)
- 《數(shù)學(xué)物理方程》全冊配套課件
- 《煤礦安全規(guī)程》專家解讀(詳細(xì)版)
- 招聘面試流程sop
- 水資源保護(hù)知識競賽試題及答案
- PCB制程漲縮系數(shù)操作指引
- 標(biāo)準(zhǔn) DB37T 3690.1-2019 液體菌種制備技術(shù)規(guī)程 第1部分:香菇規(guī)范
- 2021五年級道德與法治培優(yōu)輔差計(jì)劃3篇
評論
0/150
提交評論