VHDL实验新及答案 (2).ppt
《VHDL实验新及答案 (2).ppt》由会员分享,可在线阅读,更多相关《VHDL实验新及答案 (2).ppt(34页珍藏版)》请在三一办公上搜索。
1、实验1熟悉实验环境,完成下述实验内容:2输入与门、2输入或门、2输入异或门及非门的设计。D触发器的设计。带有异步清零、异步置位功能的边沿JK触发器的设计。,1-1代码,非门LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY NOT IS PORT(A:IN STD_LOGIC;Y:OUT STD_LOGIC);END ENTITY NOT;ARCHITECTURE ART OF NOT IS BEGIN Y=NOT A;END ARCHITECTURE ART;,1-1代码,异或门LIBRARY IEEE;USE IEEE.STD_LOGIC_116
2、4.ALL;ENTITY XOR2 IS PORT(A,B:IN STD_LOGIC;Y:OUT STD_LOGIC);END ENTITY XOR2;ARCHITECTURE ART OF XOR2 IS BEGIN Y=A XOR B;END ARCHITECTURE ART;,1-2代码,D触发器的设计library ieee;use ieee.std_logic_1164.all;entity d_chufa is port(clk,d:in std_logic;q:out std_logic);end d_chufa;architecture behav of d_chufa isb
3、eginprocess(clk)isbeginif(clk event and clk=1)thenq=d;end if;end process;end behav;,1-3代码,异步清零、异步置位功能的边沿JK触发器library ieee;use ieee.std_logic_1164.all;entity jk isport(pset,clr,clk,j,k:in std_logic;q,qb:out std_logic);end entity;architecture behav of jk issignal q_s,qb_s:std_logic;beginprocess(pset,c
4、lr,clk,j,k)beginif(pset=0)and(clr=1)thenq_s=1;qb_s=0;elsif(pset=1)and(clr=0)thenq_s=0;qb_s=1;elsif(clk event and clk=1)thenif(j=0)and(k=1)thenq_s=0;qb_s=1;elsif(j=1)and(k=0)thenq_s=1;qb_s=0;elsif(j=1)and(k=1)thenq_s=not q_s;qb_s=not qb_s;end if;end if;q=q_s;qb=qb_s;end process;end behav;,实验21,实验内容:完
5、成下述模块的设计,实现真值表中的半加与半减的功能。提示信息:将加法与减法区分成两个功能模块,使用BLOCK语句将构造体分为两大部分。,输 入 值,半 加 法 器(A+B),半 减 法 器(A-B),A,B,Sum,Car,Difference,Borrow,0,0,0,1,1,0,1,1,0,0,1,0,1,0,0,1,0,1,1,0,0,1,0,0,2-1代码,library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity half is port(a,b:in std_logic;sum,car
6、,dif,bor:out std_logic);end half;architecture behav of half isbeging1:blockbeginsum=a xor b;car=a xor b;end block g1;g2:blockbegindif=a xor b;bor=(not a)and b;end block g2;end behav;,实验22,实验内容:设计一个4位加减法器.要求:a,b:数据输入;sub:控制端,高电平实现加法功能,低电平实现减法功能;s:和与差的输出;co:进位与借位的输出。,2-2代码,library ieee;use ieee.std_lo
7、gic_1164.all;use ieee.std_logic_unsigned.all;entity subadd isport(sub:in std_logic;a,b:in std_logic_vector(3 downto 0);s:out std_logic_vector(3 downto 0);co:out std_logic);end entity subadd;architecture behav of subadd issignal temp:std_logic_vector(4 downto 0);beginprocess(sub,a,b)begin if sub=1 th
8、en temp=a+b;else temp=a-b;end if;end process;s=temp(3 downto 0);co=temp(4);end behav;,实验31,实验内容:如下表所示为4位双向通用移位寄存器74LS194的真值表,编写程序描述该逻辑,仿真其功能。,3-1代码,library ieee;use ieee.std_logic_1164.all;entity ls194 is port(clr,s0,s1,clk,l,r:in std_logic;p:in std_logic_vector(3 downto 0);q:out std_logic_vector(3
9、downto 0);end ls194;architecture behav of ls194 issignal qs:std_logic_vector(3 downto 0);beginprocess(clr,s0,s1,clk,l,r)isbeginif(clr=0)then qs=0000;elsif(clk event and clk=1)then if(s1=1)and(s0=1)then qs=p;elsif(s1=0)and(s0=1)thenif(r=1)then qs(3)=1;qs(2 downto 0)=qs(3 downto 1);elsif(r=0)then qs(3
10、)=0;qs(2 downto 0)=qs(3 downto 1);end if;elsif(s1=1)and(s0=0)thenif(l=1)then qs(0)=1;qs(3 downto 1)=qs(2 downto 0);elsif(l=0)then qs(0)=0;qs(3 downto 1)=qs(2 downto 0);end if;end if;end if;q=qs;end process;end behav;,实验32,实验内容:38译码器的设计(要求用WITHSELECT语句完成)(图形见下页)。提示信息:常见的38译码器的真值表如右:,A0 A1 A2,0 0 0,0
11、0 1,0 1 0,0 1 1,1 0 0,1 0 1,1 1 0,1 1 1,Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7,1 0 0 0 0 0 0 0,0 1 0 0 0 0 0 0,0 0 1 0 0 0 0 0,0 0 0 1 0 0 0 0,0 0 0 0 1 0 0 0,0 0 0 0 0 1 0 0,0 0 0 0 0 0 1 0,0 0 0 0 0 0 0 1,当EN1时,译码器正常工作;当EN=0时,译码器不动作。,A0,A1,A2,EN,Y0,Y7,3-2代码,library ieee;use ieee.std_logic_1164.all;entity decode3
12、to8 isport(a:in std_logic_vector(2 downto 0);en:in std_logic;y:out std_logic_vector(7 downto 0);end decode3to8;architecture behav of decode3to8 is signal sel:std_logic_vector(3 downto 0);begin sel=a,实验41功能要求:4位数据输入,可表示0F十六个数值。将其译码为共阴极7段LED的显示码。LED的每段和dout的连接关系见下图。模块名:LEDDECODER 输入端口:i数据输入(4位)输出端口:do
13、ut译码输出(7位),4-1代码,library ieee;use ieee.std_logic_1164.all;entity leddecoder is port(i:in std_logic_vector(3 downto 0);dout:out std_logic_vector(0 to 6);end leddecoder;architecture behav of leddecoder is begin process(i)begin case i iswhen 0000=doutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdout
14、doutdoutdout=0000000;end case;end process;end behav;,实验42,实验内容:设计完成一个7位的偶同位产生器。提示信息:同位共分为两种形式:奇同位:数据位与奇同位的1的个数为奇数。偶同位:数据位与偶同位的1的个数为偶数。n位的偶同位产生器的输入信号为n位,输出信号为n+1位,其中前n位为输入信号,最后一位为偶同位位,且保证输出的n+1位信息中1的个数为偶数个。(奇同位产生器工作原理类似),4-2代码,library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VHDL实验新及答案 2 VHDL 实验 答案
链接地址:https://www.31ppt.com/p-6522924.html