999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

關(guān)于VHDL語言教學(xué)的思考

2008-04-29 00:00:00吳愛平付青青
中國教育技術(shù)裝備 2008年20期

摘要 結(jié)合多輪的課程教學(xué)實踐,主要介紹VHDL語言中變量和信號的區(qū)別以及IF語句使用時應(yīng)注意的問題,提出的方法對VHDL語言教學(xué)以及VHDL設(shè)計都具有一定的指導(dǎo)意義。

關(guān)鍵詞 VHDL;信號;變量;IF

中圖分類號:G434 文獻(xiàn)標(biāo)識碼:A 文章編號:1671-489X(2008)20-0039-03

1 引言

VHDL語言是一種用于電路設(shè)計的高級語言,它的英文全寫是VHSIC(Very High Speed Integrated Circuit) Hardware Description Language,即超高速集成電路硬件描述語言。VHDL語言最初是由美國國防部開發(fā)出來,供美軍用來提高設(shè)計的可靠性和縮減開發(fā)周期的一種使用范圍較小的設(shè)計語言,后來成為IEEE工業(yè)標(biāo)準(zhǔn)的硬件描述語言。它具有很強的行為描述能力,與原理圖輸入方式相比較,用語言的方式描述硬件電路更容易修改和保存。因此,目前VHDL在電路設(shè)計中得到廣泛應(yīng)用。我國高等學(xué)校電子信息類專業(yè)把VHDL語言列為主干課程,作為電子專業(yè)學(xué)生必須掌握的專業(yè)知識。筆者在教學(xué)過程中常發(fā)現(xiàn)大部分學(xué)生無法分清變量與信號的區(qū)別以及IF語句常誤用等問題,通常雖然程序編譯可以通過,但結(jié)果卻和預(yù)期相差甚遠(yuǎn),且學(xué)生很難發(fā)現(xiàn)其中的錯誤[1]。本文主要介紹VHDL語言的信號與變量和IF語句應(yīng)用的教學(xué)經(jīng)驗。

2 變量與信號的區(qū)別

信號和變量是VHDL語言中的數(shù)據(jù)對象,是存放數(shù)據(jù)的容器[2]。兩者的區(qū)別:1)聲明的形式和位置不同。信號聲明為signal,常在結(jié)構(gòu)體中聲明;變量聲明為variable,常在進(jìn)程中聲明。2)賦值符號不同。信號賦值為“<=”;變量賦值為“∶=”。3)賦值生效的時間不同。信號賦值是進(jìn)程結(jié)束時生效;變量賦值是立即生效。4)使用范圍不同。信號是一個全局量,使用范圍是實體、結(jié)構(gòu)體和程序包;變量是一個局部量,常在進(jìn)程語句、函數(shù)語句和過程結(jié)構(gòu)中使用。下面以一個異或程序為例,說明信號和變量的區(qū)別以及對系統(tǒng)設(shè)計的影響。

程序一:

library ieee;

use ieee.std_logic_1164.all;

entity xor_sig is

port(a, b,c:in std_logic;

x,y:out std_logic);

end xor_sig;

architecture behav of xor_sig is

signal d:std_logic; ①

begin

process(a,b,c)

(*)

begin

d<=a;②

x<=c xor d; ③

d<=b;④

y<=c xor d; ⑤

end process;

end behav;

程序一中d定義為信號,使用MAX + PLUS II軟件對程序進(jìn)行編譯和仿真,編譯可以通過,沒有語法錯誤,但出現(xiàn)兩個警告:1)Found multiple assignments to the same signal-only the last assignment will take effect;2)Ignored unnecessary input signal pin ‘a(chǎn)’。警告內(nèi)容是程序?qū)π盘杁多次賦值,但只有最近的一次會生效,忽略輸入信號a的賦值。仿真結(jié)果如圖1所示。圖1中輸入信號是b和c,輸出信號是x和y。b和c異或的結(jié)果給x和y,即x=y=/bc+/cb=b c,程序中②沒有起作用,信號d的值是b。

程序一中加黑表示的部分是程序里使用信號的地方,如果這部分用變量來代替,則替換為以下語句:①改為“variable d:std_logic;”,并且其位置放置與程序中的*處;②改為“d:=a;”;③改為“x<=c xor d;”;④改為“d:=b;”;⑤改為“y<=c xor d;”。

對修改過的程序一使用MAX+PLUS Ⅱ軟件編譯和仿真,編譯沒有錯誤和警告,仿真結(jié)果如圖2所示。

圖中輸入信號是c,b,a;輸出信號是x和y,x=/ac+/ca=a c,y=/bc+/cb=b c,即a和c異或的結(jié)果給x,b和c異或的結(jié)果給y。

通過程序里把信號修改為變量,學(xué)生可以直觀看出信號與變量聲明位置和賦值符號的不同;對比兩個程序x和y的運行結(jié)果,學(xué)生可以理解信號和變量的賦值生效時間不同。

3 慎用IF語句

IF語句作為一種條件判斷語句,在VHDL程序設(shè)計中有著廣泛的應(yīng)用。IF語句有3種結(jié)構(gòu),一種是門閂控制,語句形式為:

IF 條件 THEN

順序執(zhí)行語句

END IF;

另一種是選擇控制,語句有兩種形式。形式一:

IF 條件 THEN

順序執(zhí)行語句

ELSE

順序執(zhí)行語

END IF;

形式二:

IF 條件 THEN

順序執(zhí)行語句

ELSIF 條件 THEN

順序執(zhí)行語句

ELSE

順序執(zhí)行語句

END IF;

在用IF語句設(shè)計程序時,要注意2個問題:1)在多個條件判斷選擇時用選擇控制中的形式二語句,條件的判斷有優(yōu)先,寫在前面的優(yōu)先判斷;2)在設(shè)計組合邏輯電路時,盡量不引入不必要的寄存器,則應(yīng)選擇帶有ELSE結(jié)構(gòu)的語句。

程序二:

library ieee;

use ieee.std_logic_1164.all;

entity and22 is

port(a, b:in std_logic;

q:out std_logic);

end and22;

architecture behav of and22 is

begin

process(a ,b)

begin

if(a='1' and b='1') then

q<='1';

else ①

q<='0'; ②

end if;

end process;

end behav;

程序二是用VHDL語言實現(xiàn)一個二輸入的與非門,使用MAX+PLUSⅡ軟件編譯和仿真,仿真結(jié)果如圖3所示。a,b是輸入信號,q是輸出信號,當(dāng)a和b同時為1(高電平)時,q輸出1,即高電平;a和b為其他值時,q為0。

把程序二中的加黑部分刪除,即采用門閂控制形式,使用MAX+PLUSⅡ軟件編譯和仿真,編譯沒有錯誤和警告,仿真結(jié)果如圖4所示。a,b是輸入信號,q是輸出信號,當(dāng)a和b同時為1(高電平)之前,q輸出不定值,在此之后,不論a和b為何值,q輸出一直為1,即高電平。出現(xiàn)此結(jié)果的原因是修改后的程序編譯綜合時形成Latch(鎖存器)的結(jié)構(gòu)。Latch結(jié)構(gòu)通常都由大量的觸發(fā)器組成,不僅使電路更復(fù)雜,工作速度降低,而且由于時序配合的原因而導(dǎo)致不可預(yù)料的結(jié)果[3]。

4 總結(jié)

通過對信號與變量以及IF語句的講解,配合實例的分析,使得學(xué)生對信號與變量以及IF語句有了更清楚的認(rèn)識,減少了不必要的錯誤。通過多年VHDL的教學(xué),筆者深深地體會到:

1)VHDL語言是一種硬件描述語言,不能簡單地認(rèn)為是一種高級語言,進(jìn)行程序設(shè)計時要與硬件對應(yīng),要考慮程序綜合后電路的形式。

2)教師不僅要精通理論知識,還要有豐富的程序設(shè)計經(jīng)驗,能夠熟練地指導(dǎo)實驗。對學(xué)生提出的任何問題要能夠結(jié)合課堂知識和編程經(jīng)驗加以解決。

3)任課教師要不斷學(xué)習(xí),不斷實踐,不斷總結(jié),將最新的技術(shù)成果引入教學(xué)實踐中,及時更新教學(xué)內(nèi)容,使學(xué)生能夠掌握最新知識和技術(shù)。

參考文獻(xiàn)

[1]楊丹,張樹林.VHDL中信號與變量的教學(xué)體會[J].電氣電子教學(xué)學(xué)報,2006(6):30-33

[2]黃正謹(jǐn),徐堅,等.CPLD系統(tǒng)設(shè)計入門與應(yīng)用[M].北京:電子工業(yè)出版社,2002

[3]戴慧.VHDL設(shè)計技巧探討[J].正德學(xué)院學(xué)報,2006(4)

主站蜘蛛池模板: 国产免费怡红院视频| 亚洲色偷偷偷鲁综合| 日本人又色又爽的视频| 2021天堂在线亚洲精品专区| 国产成人一区二区| 久久精品日日躁夜夜躁欧美| 69免费在线视频| 免费a级毛片18以上观看精品| 国产福利微拍精品一区二区| 十八禁美女裸体网站| 午夜欧美理论2019理论| 免费日韩在线视频| 在线精品自拍| 日韩性网站| 午夜福利视频一区| 天天综合天天综合| 波多野结衣视频一区二区| 99视频国产精品| 成人亚洲国产| 久久久波多野结衣av一区二区| 国产精品视频导航| 四虎永久在线视频| 免费在线看黄网址| 国产精品对白刺激| 亚洲综合片| 久久精品人人做人人爽97| 谁有在线观看日韩亚洲最新视频| 熟女成人国产精品视频| 热99re99首页精品亚洲五月天| 国产精品无码作爱| 国产黄色免费看| 一本大道无码日韩精品影视| 亚洲中文在线视频| 狂欢视频在线观看不卡| 无码一区18禁| 天堂中文在线资源| 青青草综合网| 欧美在线精品怡红院| 欧美成人精品在线| 中文字幕久久精品波多野结| 欧美中文字幕在线二区| 国产午夜人做人免费视频中文| 91无码视频在线观看| 大香伊人久久| 亚洲第一香蕉视频| 午夜免费视频网站| 欧美日本在线观看| jijzzizz老师出水喷水喷出| 欧美精品导航| 亚洲专区一区二区在线观看| 97青青青国产在线播放| 欧美国产菊爆免费观看| 欧美国产视频| 久久semm亚洲国产| 风韵丰满熟妇啪啪区老熟熟女| 亚洲综合久久一本伊一区| 九色视频线上播放| 二级毛片免费观看全程| 午夜福利在线观看成人| 美美女高清毛片视频免费观看| 天天视频在线91频| 91精选国产大片| 日韩欧美国产另类| 四虎永久免费地址在线网站 | 亚洲视频色图| 丰满的少妇人妻无码区| 精品免费在线视频| 免费一级毛片在线播放傲雪网| 丰满人妻久久中文字幕| 91精品啪在线观看国产60岁| 亚洲性色永久网址| 国产三级国产精品国产普男人| 久久99精品久久久大学生| 中国精品自拍| 亚洲首页国产精品丝袜| 在线a视频免费观看| 青青网在线国产| 国产人成午夜免费看| 精品一区二区三区视频免费观看| 中文字幕人妻av一区二区| 亚洲一区二区精品无码久久久| 波多野结衣一区二区三区88|