|
摘要: 介紹了使用 VHDL語(yǔ)言設(shè)計(jì)24進(jìn)制計(jì)數(shù)器,
給出了功能仿真波形,
舉例說(shuō)明了實(shí)現(xiàn)電子設(shè)計(jì)自動(dòng)化 (EDA ) 的過(guò)程。
關(guān)鍵詞: VHDL語(yǔ)言; 24進(jìn)制計(jì)數(shù)器; 功能仿真; 電子設(shè)計(jì)自動(dòng)化
一、前言:
EDA技術(shù)的應(yīng)用:電子EDA技術(shù)發(fā)展迅猛,逐漸在教學(xué)、科研、產(chǎn)品設(shè)計(jì)與制造等各方面都發(fā)揮著巨大的作用:
在教學(xué)方面:讓學(xué)生了解EDA的基本原理和基本概念、描述系統(tǒng)邏輯的方法、使用工具進(jìn)行電子電路課程的模擬仿真實(shí)驗(yàn)并在作畢業(yè)設(shè)計(jì)時(shí)從事簡(jiǎn)單電子系統(tǒng)的設(shè)計(jì),為今后工作打下基礎(chǔ)。具有代表性的是全國(guó)每?jī)赡昱e辦一次大學(xué)生電子設(shè)計(jì)競(jìng)賽活動(dòng)。
在科研方面:主要利用電路仿真工具進(jìn)行電路設(shè)計(jì)與仿真;利用虛擬儀器進(jìn)行產(chǎn)品調(diào)試;例如在CDMA無(wú)線通信系統(tǒng)中,所有移動(dòng)手機(jī)和無(wú)線基站都工作在相同的頻譜,為區(qū)別不同的呼叫,每個(gè)手機(jī)有一個(gè)唯一的碼序列,CDMA基站必須能判別這些不同觀點(diǎn)的碼序列才能分辨出不同的傳呼進(jìn)程;這一判別是通過(guò)匹配濾波器的輸出顯示在輸人數(shù)據(jù)流中探調(diào)到特定的碼序列;FPGA能提供良好的濾波器設(shè)計(jì),而且能完成DSP高級(jí)數(shù)據(jù)處理功能,因而FPGA在現(xiàn)代通信領(lǐng)域方面獲得廣泛應(yīng)用。
在產(chǎn)品設(shè)計(jì)與制造方面:從高性能的微處理器、數(shù)字信號(hào)處理器一直到彩電、音響和電子玩具電路等,EDA技術(shù)不單是應(yīng)用于前期的計(jì)算機(jī)模擬仿真、產(chǎn)品調(diào)試,而且也在P哪的制作、電子設(shè)備的研制與生產(chǎn)、電路板的焊接、朋比的制作過(guò)程等有重要作用。可以說(shuō)電子EDA技術(shù)已經(jīng)成為電子工業(yè)領(lǐng)域不可缺少的技術(shù)支持。
EDA技術(shù)發(fā)展趨勢(shì):EDA技術(shù)在進(jìn)入21世紀(jì)后,,在仿真和設(shè)計(jì)兩方面支持標(biāo)準(zhǔn)硬件描述語(yǔ)言的功能強(qiáng)大的EDA軟件不斷更新、增加,使電子EDA技術(shù)得到了更大的發(fā)展,突出表現(xiàn)在以下幾個(gè)方面:使電子設(shè)計(jì)成果以自主知識(shí)產(chǎn)權(quán)的方式得以明確表達(dá)和確認(rèn)成為可能;基于EDA工具的ASIC設(shè)計(jì)標(biāo)準(zhǔn)單元已涵蓋大規(guī)模電子系統(tǒng)及IP核模塊;軟硬件IP核在電子行業(yè)的產(chǎn)業(yè)領(lǐng)域、技術(shù)領(lǐng)域和設(shè)計(jì)應(yīng)用領(lǐng)域得到進(jìn)一步確認(rèn);SoC高效低成本設(shè)計(jì)技術(shù)的成熟。隨著半導(dǎo)體技術(shù)、集成技術(shù)和計(jì)算機(jī)技術(shù)的迅猛發(fā)展,電子系統(tǒng)的設(shè)計(jì)方法和設(shè)計(jì)手段都發(fā)生了很大的變化。可以說(shuō)電子EDA技術(shù)是電子設(shè)計(jì)領(lǐng)域的一場(chǎng)革
本文用 VHDL語(yǔ)言設(shè)計(jì)了一個(gè)24進(jìn)制計(jì)數(shù)器, 舉例說(shuō)明利用VHDL語(yǔ)言實(shí)現(xiàn)電子設(shè)計(jì)自動(dòng)化 (EDA)的過(guò)程
二、24進(jìn)制計(jì)數(shù)器的設(shè)計(jì)
24進(jìn)制計(jì)數(shù)器設(shè)計(jì)VHDL語(yǔ)言:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_ARITH.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY ESJZ IS
PORT(
CLK :IN STD_LOGIC; --時(shí)鐘
EN :IN STD_LOGIC; --使能端
CR :IN STD_LOGIC; --清零端,低電平有效
LD :IN STD_LOGIC; --數(shù)據(jù)載入控制,低電平有效
D :IN STD_LOGIC_VECTOR(5 DOWNTO 0); --載入數(shù)據(jù)端
CO : OUT STD_LOGIC; --進(jìn)位
Q :OUT STD_LOGIC_VECTOR(5 DOWNTO 0) --計(jì)時(shí)輸出
);
END ESJZ ;
ARCHITECTURE a OF ESJZ IS
SIGNAL QN :STD_LOGIC_VECTOR(5 DOWNTO 0);
BEGIN --進(jìn)位控制
CO<='1' WHEN(QN=X"23" AND EN='1')
ELSE'0';
PROCESS(CLK,CR)
BEGIN
IF (CR='0')THEN
QN<="000000";
ELSE
IF (CLK'EVENT AND CLK='1') THEN
IF (LD='0') THEN --數(shù)據(jù)加載
QN<=D;
ELSIF(EN='1') THEN
IF (QN(3 DOWNTO 0)=3 and QN(5 DOWNTO 4)=2) or QN(3 DOWNTO 0)=9 THEN
QN(3 DOWNTO 0)<="0000"; --個(gè)位數(shù)進(jìn)位
IF QN(5 DOWNTO 4)=2 THEN
QN(5 DOWNTO 4)<="00"; --十位數(shù)進(jìn)位
ELSE
QN(5 DOWNTO 4)<= QN(5 DOWNTO 4)+1;
END IF;
ELSE
QN(3 DOWNTO 0)<= QN(3 DOWNTO 0)+1;
END IF ;
END IF;
END IF ;
END IF;
END PROCESS;
Q<=QN;
end a;
三、對(duì)源程序進(jìn)行編譯仿真并分析
為了驗(yàn)證設(shè)計(jì)的正確性,利用美國(guó) Altera公司開(kāi)發(fā)的 EDA工具軟件用MAX+PLUSⅡ, 對(duì)ESJZ.vhd 進(jìn)行編譯,出現(xiàn)一處警告,但能編譯成功,不會(huì)影響其功能效果。
功能仿真波形如圖所示:
二十四進(jìn)制計(jì)數(shù)器功能仿真
生成電路符號(hào)如圖所示:
二十四進(jìn)制計(jì)數(shù)器元件符號(hào)
經(jīng)仿真驗(yàn)證知, 用 VHDL語(yǔ)言設(shè)計(jì)的二十四進(jìn)制計(jì)數(shù)器運(yùn)算正確, 達(dá)到了設(shè)計(jì)要求。 編譯、邏輯綜合時(shí), VHDL綜合器完成將源文件自動(dòng)地轉(zhuǎn)換為門級(jí)電路。
四、結(jié)語(yǔ)
上述二十四進(jìn)制計(jì)數(shù)器經(jīng)仿真, 結(jié)果完全達(dá)到了設(shè)計(jì)的目的。 利用 VHDL語(yǔ)言實(shí)現(xiàn)電子設(shè)計(jì)自動(dòng)化, 設(shè)計(jì)出體積小而系統(tǒng)性能高的數(shù)字系統(tǒng), 徹底改變了傳統(tǒng)的數(shù)字系統(tǒng)的設(shè)計(jì)方法、設(shè)計(jì)過(guò)程, 無(wú)疑將在現(xiàn)代數(shù)字系統(tǒng)設(shè)計(jì)中起越來(lái)越重要的作用。
參考文獻(xiàn):
[1]侯伯亨, 顧新.VHDL硬件描述語(yǔ)言與數(shù)字邏輯電路設(shè)計(jì)[M].西安: 西安電子科技大學(xué)出版社,1998.5
[2]曾繁泰, 陳美金 .VHDL程序設(shè)計(jì)[M]. 北京:清華大學(xué)出版社,2000.5
[3]江國(guó)強(qiáng),李哲英.EDA 技術(shù)與應(yīng)用[M].北京:電子工業(yè)出版社,2005.1
|
|