




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第5章 并發(fā)代碼5.1 回憶組合電路和時序電路回憶組合電路和時序電路組合電路:組合電路:y=f(輸入)(輸入) 組合電路有:加法器,減法器,數(shù)據(jù)選擇組合電路有:加法器,減法器,數(shù)據(jù)選擇器,編碼器,譯碼器,奇偶校驗(yàn)器等器,編碼器,譯碼器,奇偶校驗(yàn)器等時序電路:時序電路:y=f(輸入,狀態(tài)輸入,狀態(tài)) 時序電路:觸發(fā)器,計(jì)數(shù)器,分頻器,時序電路:觸發(fā)器,計(jì)數(shù)器,分頻器,移位寄存器,控制器移位寄存器,控制器VHDL中的語句:并行語句中的語句:并行語句 順序語句順序語句并行代碼:使用運(yùn)算表達(dá)式對信號賦值并行代碼:使用運(yùn)算表達(dá)式對信號賦值 when語句語句 生成語句生成語句 塊語句塊語句 進(jìn)程(順序代碼
2、)進(jìn)程(順序代碼)5.2使用運(yùn)算表達(dá)式使用運(yùn)算表達(dá)式 實(shí)現(xiàn)組合電路設(shè)計(jì)實(shí)現(xiàn)組合電路設(shè)計(jì) 例例1:4位加法器設(shè)計(jì)位加法器設(shè)計(jì) 5.3 WHEN 語句語句有兩種:條件賦值和選擇賦值有兩種:條件賦值和選擇賦值1、條件賦值(、條件賦值(when/else語句)語句) 判斷根據(jù)不同的條件對信號賦值判斷根據(jù)不同的條件對信號賦值格式:信號格式:信號=值值1 when 條件條件1 else 值值2 when 條件條件2 else . 值值n;(最后不加條件,表示以上條件都不滿足)(最后不加條件,表示以上條件都不滿足)例例1:多路數(shù)據(jù)選擇器:多路數(shù)據(jù)選擇器Library ieee;Use ieee.std_lo
3、gic_1164.allEntity my_mux is Port(a,b,c,d,so,s1:in std_logic; Y:std_logic);End my_mux;Architecture bhv of my_mux isBegin Y=a when s1=0 and s0=0 else b when s1=0 and s0=1 else c when s1=1 and s0=0 else d;End bhv;仿真圖:仿真圖:注:條件賦值語句是基于順序判斷,條件判斷注:條件賦值語句是基于順序判斷,條件判斷 有優(yōu)先級。有優(yōu)先級。例例2:設(shè)計(jì)編碼器(普通編碼器,優(yōu)先級編碼器):設(shè)計(jì)編碼器(
4、普通編碼器,優(yōu)先級編碼器)普通編碼器:普通編碼器:Library ieee;Use ieee.std_logic_1164.all;Entity encoder is Port(x:in std_logic_vector(7 downto 0); Y:out std_logic_vector(2 downto 0);End encoder;Architecture bhv of encoder isBegin Y=111 when x=10000000 else 110 when x=01000000 else 101 when x=00100000 else 101 when x=00010
5、000 else 011 when x=00001000 else 010 when x=00000100 else 001 when x=00000010 else 000 when x=00000001 else ZZZ;End bhv;優(yōu)先級編碼器:優(yōu)先級編碼器:Architecture bhv of encoder isBegin Y=”111” when x(7)=1 else “110” when x(6)=1 else “101” when x(5)=1 else “100” when x(4)=1”else “011” when x(3)=1 else “010” when x
6、(2)=1 else “001” when x(1)=1”else “000” when x(0)=1else “ZZZ”;End bhv;2、選擇賦值語句、選擇賦值語句根據(jù)選擇項(xiàng)不同的選擇值,對信號賦值根據(jù)選擇項(xiàng)不同的選擇值,對信號賦值語法:語法: with 選擇項(xiàng)選擇項(xiàng) select 信號信號=表達(dá)式表達(dá)式1 when 選擇值選擇值1, 表達(dá)式表達(dá)式2 when 選擇值選擇值2, . 表達(dá)式表達(dá)式n when 選擇值選擇值n;說明:說明:選擇值必須包含所有選擇項(xiàng)可能出項(xiàng)選擇值必須包含所有選擇項(xiàng)可能出項(xiàng)的值,經(jīng)常用到的值,經(jīng)常用到others,而且非常重要。,而且非常重要。 例例3:多路選擇
7、器設(shè)計(jì):多路選擇器設(shè)計(jì)Library ieee;Use ieee.std_logic_1164 .all;Entity my_mux isPort (a,b,c,d:in std_logic; sel:in std_logic_vector(1 downto 0); y:out std_logc);End my_mux;Architecture bhv of my_mux is begin With sel select Y=a when “00”, b when “01”, c when “10”, d when others;End bhv;例例4:一位全加器的設(shè)計(jì):一位全加器的設(shè)計(jì)Lib
8、rary ieee;Use ieee.std_logic_1164.all;Entity adder is Port (a,b,ci:in std_logic; S,co:out std_logic); End adder;Architecture bhv of adder is Signal temp:std_logic_vector(2 downto 0);Begin Temp=a&b&ci; With temp select S=0 when “000”|”011”|”101”|”110”, 1 when others; Co=0 when “000”|”001”|”01
9、0”|”100”, 1 when others;End bhv;例例5:三態(tài)緩沖器:三態(tài)緩沖器ena為低電平時,輸出等于輸入,否則,輸出為高阻狀態(tài)、為低電平時,輸出等于輸入,否則,輸出為高阻狀態(tài)、Library ieee;Use ieee.std_logic_1164.all;Entity tri_state s Port ( ena:in std_logic; Input:in std_logic_vector(7 downto 0); Output:out std_logic_vector(7 downto 0);End tri_state;Architecture bhv of tri_
10、state is Begin Output=input when ena=0 else “ZZZZZZZZ”; End bhv;最后:總結(jié)選擇賦值和條件賦值語句的區(qū)別:最后:總結(jié)選擇賦值和條件賦值語句的區(qū)別: 條件賦值是基于順序判斷條件的判斷,條件賦值是基于順序判斷條件的判斷, 有優(yōu)先有優(yōu)先級,占用資源少;級,占用資源少; 選擇賦值語句無優(yōu)先級,占用資源多。選擇賦值語句無優(yōu)先級,占用資源多。5.3 塊語句(塊語句(block)語法: 標(biāo)號:block begin 并發(fā)代碼 end block 標(biāo)號;例:a1:block begin end block;注:塊語句只為程序結(jié)構(gòu)讀起來更清晰,對硬件
11、電路沒有任何影響。5.4 生成語句(generate) (1)for-generate (2) if generate1. for-generate 語句 (循環(huán)生成具有某些規(guī)律和特點(diǎn)的并行代碼)語法: 標(biāo)號: for 循環(huán)變量 in 范圍 generate 并行語句 end generate;說明:(1)for-generate 循環(huán)范圍中的上下限必需是 靜態(tài)數(shù)據(jù) (2)注意多值驅(qū)動問題(不允許一個信號被賦予多個 值) 例:使用for-generate 語句實(shí)現(xiàn)電路要求功能。S(7)=x(3) and y(7);S(6)=x(2) and y(6);S(5)=x(1) and y(5);S(
12、4)=x(0) and y(4);S(3)=z(3) and y(3);S(2)=z(2) and y(2);S(1)=z(1) and y(1);S(0)=z(0) and y(0);Library ieee;Use ieee.std_logic_1164 .all;Entity encoder isPort (x,z,:in std_logic_vector(3 downto 0); y:in std_logic_vector(7 downto 0); s:out std_logc_vector(7 downto 0);End encoder;Architecture bhv of enc
13、oder is begin a1:for i in 7 downto 4 generate s(i)=x(i-4) and y(i); end generate; a2:for i in 3 downto 0 generate s(i)=z(i) and y(i); end generate;End bhv; 例:例:4位二進(jìn)制數(shù)轉(zhuǎn)格雷碼位二進(jìn)制數(shù)轉(zhuǎn)格雷碼Library ieee;Use ieee.std_logic_1164 .all;Entity grad is Generic(n:integer:=4);Port (x:in std_logic_vector(3 downto 0); y:out std_logic_vector(3 downto 0);End grad;Architecture bhv of grad is
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 下水井維修合同范本
- 供應(yīng)合同范本長期
- 2025年吐魯番怎么考貨運(yùn)從業(yè)資格證
- 住宅綠化養(yǎng)護(hù)合同范本
- 醫(yī)療健康服務(wù)合同范本
- 個體工商退股合同范本
- 助理編輯聘約合同范本
- 蘇州代建合同范本
- 公司改造施工合同范本
- 營地臨建合同范本
- 波普解析PPT質(zhì)譜教案資料
- YS/T 431-2000鋁及鋁合金彩色涂層板、帶材
- 球墨鑄鐵管安裝規(guī)范及圖示課件
- ERCP講義教學(xué)課件
- 《人類行為與社會環(huán)境》課件
- 霍亂病例分析課件
- 體檢報(bào)告單入職體檢模板
- 銀行基本技能(第2版)電子教案
- 高中英語單詞及短語匯總(北師大版)
- 北京市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名明細(xì)及行政區(qū)劃代碼
- TTT培訓(xùn)教材(-55張)課件
評論
0/150
提交評論