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