新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > EDA在數(shù)字系統(tǒng)設(shè)計(jì)中的應(yīng)用

EDA在數(shù)字系統(tǒng)設(shè)計(jì)中的應(yīng)用

作者: 時(shí)間:2012-06-22 來源:網(wǎng)絡(luò) 收藏

本文引用地址:http://m.butianyuan.cn/article/190215.htm

WHEN S3=>IF w3=’1’THEN

state=S0;

END IF;

END CASE;

END IF;

END PROCESS;

c1=’1’WHEN state=S0 ELSE’0’;

c2=’1’ WHEN state=S2 ELSE’0’;

c3=’1’ WHEN(state=S1 OR state=S3)ELSE’0’;

r1=’1’ WHEN(state=S2OR state=S3)ELSE’0’;

g1=’1’ WHEN state=S0 ELSE’0’;

y1=’1’ WHEN state=S1 ELSE’0’;

r2=’1’ WHEN(state=S0 OR state=S1)ELSE’0’;

g2=’1’ WHEN state=S2 ELSE’0’;

y2=’1’ WHEN state=S3 ELSE’0’;

END beh_control;

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY timer IS ——定時(shí)器實(shí)體說明

PORT(clk,c:IN STD_LOGIC;

d:IN INTEGER RANGE 1TO 31;

w:OUT STD_LOGIC);

END timer;

ARCHITECTURE beh_timer OF timer IS ——定時(shí)器結(jié)構(gòu)體

BEGIN

PROCESS(clk)

VARIABLE cnt: INTEGER RANGE 0 TO 31;

BEGIN

IF(clk=’1’)THEN

IF(c=’1’AND cnt>0)THEN

cnt:=cnt-1;

ELSE

cnt:=d;

END IF;

END IF;

IF cnt=0 THEN

w=’1’;

ELSE

w=’0’;

END IF;

END PROCESS;

END beh_timer;

  完成了上述兩個(gè)基本模塊,可以形成頂層文件,在MAX+plusII環(huán)境下進(jìn)行編譯和仿真,驗(yàn)證系統(tǒng)功能是否正確,如果出現(xiàn)錯(cuò)誤,需要進(jìn)行修改,直到完全通過為止。當(dāng)設(shè)計(jì)人員確定設(shè)計(jì)工作已基本成功時(shí),即可通過編程電纜下載數(shù)據(jù)流來進(jìn)行硬件驗(yàn)證。驗(yàn)證合格后,總體設(shè)計(jì)工作即圓滿結(jié)束。該系統(tǒng)在編寫控制器的源程序時(shí),有多種編寫方法,以下是控制器的VHDL程序的另外兩種定義方法:

(1)


ARCHITECTURE con1_arc OF con1 IS
SIGNAL current_state:state;
BEGIN

  在進(jìn)行時(shí)序分析時(shí),卻出現(xiàn)了不按設(shè)定的計(jì)數(shù)順序工作的結(jié)果:14,13,2,1,0… 經(jīng)過反復(fù)修改調(diào)試,對(duì)程序進(jìn)行修改,如(2)所示:

(2)

ARCHITECTURE con1_arc OF con1 IS
SIGNAL current_state:state;
SIGNAL TEMP_STATE:state;
...
TEMP STATE=current_state;
BEGIN
...

  在這種設(shè)計(jì)方法中,多定義了一個(gè)信號(hào)變量,從而使得程序能按設(shè)定的狀態(tài)14,13,12,11…進(jìn)行轉(zhuǎn)換。

  從上述可知:技術(shù)的優(yōu)越性在于可以直接從程序中修改錯(cuò)誤及系統(tǒng)功能,而不需要硬件電路的支持, 即把后期進(jìn)行的系統(tǒng)調(diào)試轉(zhuǎn)移到設(shè)計(jì)實(shí)現(xiàn)之前在計(jì)算機(jī)上進(jìn)行的功能仿真和時(shí)序仿真。使系統(tǒng)的功能修改及調(diào)試比較方便、快捷、準(zhǔn)確,既縮短了研發(fā)周期,又大大節(jié)約了成本。

6 結(jié)語

  電子系統(tǒng)的設(shè)計(jì)輸入可以用原理圖、波形、VHDL語言等方式輸入,下載配置前的整個(gè)過程幾乎不涉及到整個(gè)硬件,而硬件設(shè)計(jì)的修改也如同修改軟件程序一樣快捷方便,即通過軟件方式的設(shè)計(jì)與測(cè)試,達(dá)到對(duì)特定功能的硬件電路的設(shè)計(jì)實(shí)現(xiàn),這種現(xiàn)代電子系統(tǒng)設(shè)計(jì)技術(shù)采用自頂向下分層次、模塊化設(shè)計(jì)方法,先化整為零,再優(yōu)化綜合,靈活通用,已成為研制、開發(fā)數(shù)字系統(tǒng)最理想的選擇,是現(xiàn)代電子電路設(shè)計(jì)方法的一個(gè)趨勢(shì),體現(xiàn)了硬件設(shè)計(jì)向軟件化方向發(fā)展的新思路。


上一頁 1 2 下一頁

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉