隨著科學技術的發展以及人民生活水平的提高,在現代生活中,彩燈作為一種裝飾,既可以增強人們的感觀,起到廣告宣傳的作用,又可以增添節日氣氛,為人們的生活增添亮麗,用在舞臺上增強晚會燈光效果。隨著電子技術的發展,應用系統向著小型化、快速化、大容量、重量輕的方向發展,EDA(Elect ron icDesign A u tom at ic)技術的應用引起電子產品及系統開發的革命性變革。VHDL語言作為可編程邏輯器件的標準語言描述能力強,覆蓋面廣,抽象能力強,在實際應用中越來越廣泛。在這個階段,人們開始追求貫徹整個系統設計的自動化,可以從繁重的設計工作中徹底解脫出來,把精力集中在創造性的方案與概念構思上,從而可以提高設計效率,縮短產品的研制周期。整個過程通過EDA工具自動完成,大大減輕了設計人員的工作強度,提高了設計質量,減少了出錯的機會。 VHDL是美國國防部提出的一種經過標準化認證的硬件描述語言,使用VHDL語言進行硬件設計有如下特點:將一項工程設計(或稱設計實體)分成外部(或稱可視部分,即端口)和內部(或稱不可視部分),即設計實體的內部功能和算法完成部分。 本文介紹應用美國ALTERA公司的MAX+PLUSⅡ平臺,使用VHDL硬件描述語言實現的十六路彩燈控制系統。 十六路彩燈控制系統的實現 在電路中以1代表燈亮,以0代表燈滅,由0、1按不同的規律組合代表不同的燈光圖案,同時使其選擇不同的頻率,從而實現多種圖案多種頻率的花樣功能顯示。在該電路中只需簡單的修改程序就可以靈活地調整彩燈圖案和變化方式。下面就以一個十六路彩燈控制系統的實現為例進行簡單說明。 功能描述 此十六路彩燈控制系統設定有四種花樣變化,這四種花樣可以進行自動切換,且每種花樣可以選擇不同的頻率,四種花樣分別為: (1)彩燈從右到左,然后從左到右逐次產閃爍。 (2)彩燈從右到左點亮,然后從左到右逐次依次熄滅,全亮全滅。 (3)彩燈兩邊同時亮2個逐次向中間移動再散開。 (4)彩燈兩邊同時亮4個,4亮4滅。 設計原理 用VHDL進行設計,首先應該理解,VHDL語言是一種全方位硬件描述語言,包括系統行為級,寄存器傳輸級和邏輯門級多個設計層次。應充分利用VHDL“自頂向下”的設計優點以及層次化的設計概念,層次概念對于設計復雜的數字系統是非常有用的,它使得我們可以從簡單的單元入手,逐漸構成龐大而復雜的系統。 首先應進行系統模塊的劃分,規定每一模塊的功能以及各個模塊之問的接口。最終設計方案為:以一個十六路彩燈花樣控制器、一個四頻率輸出分頻器,一個四選一控制器和一個時間選擇器總共四部分來完成設計。四選一控制器從分頻器選擇不同頻率的時鐘信號輸送到彩燈花樣控制器,從而達到控制彩燈閃爍速度的快慢,時間選擇器控制每種速度維持的時間長短。 整個十六路彩燈控制系統設計的模塊圖如圖1所示。 子模塊及其功能 本次設計分為四個子模塊,即十六路彩燈花樣控制器、四頻率輸出分頻器,四選一控制器和時問選擇器,其子模塊及其功能如下: (1)四頻率輸出分頻器:在本次設計中,我們只設計了四種花樣,我們要求這四種花樣以不同的頻率顯示,而只有一個輸入的時鐘信號,所以我們對所輸入的時鐘信號進行2分頻、4分頻、8分頻、16分頻,得到四種頻率信號,CLKDIV模塊就是來完成此功能。 (2)時間選擇器:時間選擇器實際上是兩個分頻器,其中一個頻率是另一個頻率的兩倍。本來這兩個分頻器可以在上述的四頻率輸出器中實現的,但為了方便地為四選一控制器提供不同的時間選擇條件,就將這兩個分頻器獨立開來。這兩個輸出的的時鐘信號組合起來就可以為四選一控制器提供00、01、10、11四個時間選擇條件,如圖2所示。 (3)四選一控制器:四選一控制器功能是從分頻器中選擇不同頻率的時鐘信號送給彩燈控制器,實現彩燈閃爍的頻率變化。 (4)彩燈控制器:彩燈控制電路是整個設計的核心,它負責整個設計的輸出效果即各種彩燈圖案的樣式變化。該程序充分地說明了用VHDL設計電路的“彈”性,即可通過改變程序中輸出變量Q的位數來改變彩燈的數目。其中,P1進程對燈閃的速度進行控制,有兩種方式可改變燈閃的速度:一是改變外部時鐘的賦值,二是改變信號U的位數。P2進程能進行彩燈的圖案控制,改變s的位數即可改變要控制圖案的數目,改變輸出變量O的組合即可變幻彩燈圖案。彩燈控制器的實現程序如下: Librarv ieee; 其仿真波形如圖3所示,模塊符號如圖4所示。 仿真結果 最后,當各個模塊均完成上述操作之后,即可利用MAXPLLUS2的原理圖輸入,調用各個元器件(底層文件),以原理圖的形式形成最后的十六路彩燈顯示系統(頂層文件),并且進行仿真。仿真通過,即可下載到指定的CPLD芯片里面,并進行實際連線,進行最后的硬件測試。當然,可以將各個模塊所生成的元件符號存放在元件庫中,以被其他人或其他的設計所重復調用,以簡化后面的設計。 與其它硬件設計方法相比,用VHDL進行工程設計的優點是多方面的:VHDL具有很強的行為描述能力,支持大規模設計的分解和已有設計的再利用,可讀性好,易于修改和發現錯誤,可以使用仿真器對VHDL源代碼進行仿真,允許設計者不依賴于器件,容易發現設計中出現的問題,以便及時處理。能實現設計與工藝無關,可移植性好,上市時間快,成本低,ASI(:移植等優點。應用FPGA可以實現復雜電路的控制,本文只是應用其簡單的控制設計的一個具體實現過程。 |