新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 利用VHDL語(yǔ)言進(jìn)行可變速彩燈控制器的設(shè)計(jì)

利用VHDL語(yǔ)言進(jìn)行可變速彩燈控制器的設(shè)計(jì)

作者: 時(shí)間:2010-06-01 來(lái)源:網(wǎng)絡(luò) 收藏

  0 引言

  硬件描述語(yǔ)言(HDL)是相對(duì)于一般的計(jì)算機(jī)軟件語(yǔ)言如C,Pascal而言的。HDL是用于設(shè)計(jì)硬件電子系統(tǒng)的計(jì)算機(jī)語(yǔ)言,它描述電子系統(tǒng)的邏輯功能、電路結(jié)構(gòu)和連接方式。設(shè)計(jì)者可以利用HDL程序來(lái)描述所希望的電路系統(tǒng),規(guī)定其結(jié)構(gòu)特征和電路的行為方式,然后利用綜合器和適配器將此程序變成能控制內(nèi)部結(jié)構(gòu),并實(shí)現(xiàn)相應(yīng)邏輯功能的門(mén)級(jí)或更底層的結(jié)構(gòu)網(wǎng)表文件和下載文件。(VeryHigh Speed Integrated Circuit Hardware descriptionLangtuage)主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口。與其他的HDL語(yǔ)言相比,具有更強(qiáng)的行為描述能力,從而決定了它成為系統(tǒng)設(shè)計(jì)領(lǐng)域最佳的硬件描述語(yǔ)言。強(qiáng)大的行為描述能力是避開(kāi)具體的器件結(jié)構(gòu)。從邏輯行為上描述和設(shè)計(jì)大規(guī)模電子系統(tǒng)的重要保證。在文獻(xiàn)中作者從不同的角度闡述了EDA技術(shù)的應(yīng)用,它具有功能強(qiáng)大、描述能力強(qiáng)、可移植性好、研制周期短、成本低等特點(diǎn),即使設(shè)計(jì)者不懂硬件的結(jié)構(gòu),也能進(jìn)行獨(dú)立的設(shè)計(jì)。本文以Alter公司提供的Max+PlusⅡ?yàn)槠脚_(tái),設(shè)計(jì)一個(gè),可以在不修改硬件電路的基礎(chǔ)上,僅通過(guò)更改軟件就能實(shí)現(xiàn)任意修改花型的編程控制方案,實(shí)現(xiàn)控制16只LED以8種花型和4種速度循環(huán)變化顯示,而且設(shè)計(jì)非常方便,設(shè)計(jì)的電路保密性強(qiáng)。

  1 設(shè)計(jì)原理

  用進(jìn)行設(shè)計(jì),首先應(yīng)該理解,VHDL語(yǔ)言是一種全方位硬件描述語(yǔ)言,包括系統(tǒng)行為級(jí),寄存器傳輸級(jí)和邏輯門(mén)級(jí)多個(gè)設(shè)計(jì)層次。應(yīng)充分利用VHDL“自頂向下”的設(shè)計(jì)優(yōu)點(diǎn)以及層次化的設(shè)計(jì)概念,層次概念對(duì)于設(shè)計(jì)復(fù)雜的數(shù)字系統(tǒng)是非常有用的,它使得我們可以從簡(jiǎn)單的單元入手,逐漸構(gòu)成龐大而復(fù)雜的系統(tǒng)。

  首先應(yīng)進(jìn)行系統(tǒng)模塊的劃分,規(guī)定每一個(gè)模塊的功能以及各模塊之間的接口,最終設(shè)計(jì)方案分為三大模塊:16路花樣、四頻率輸出分頻器、四選一控制器。四選一控制器從分頻器中選擇不同頻率的時(shí)鐘信號(hào)輸送到彩燈花樣控制器,從而達(dá)到控制彩燈閃爍速度的快慢和花型的的變換。

  下面是本次設(shè)計(jì)的頂層模塊原理圖如圖1所示。

本次設(shè)計(jì)的頂層模塊原理圖

  2 子模塊及其功能

  (1)四頻率輸出分頻器。根據(jù)要求有4種速度的變化,每種都要顯示8種花樣,就要用到三位計(jì)數(shù)器和16位數(shù)字譯碼器。其次,速度有4種變化,而只有一個(gè)輸入的時(shí)鐘信號(hào),所以要對(duì)輸入的時(shí)鐘信號(hào)進(jìn)行分頻,本次設(shè)計(jì)采用了二分頻、四分頻、八分頻和15分頻得到4種不同頻率的信號(hào)。

  二分頻電路的程序代碼如下:

程序


上一頁(yè) 1 2 3 4 5 下一頁(yè)

關(guān)鍵詞: VHDL FPGA CPLD 可變速 彩燈控制器

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉