VHDL实验报告一2选1多路选择器

合集下载

(新)实验二组合逻辑电路设计

(新)实验二组合逻辑电路设计

实验二组合逻辑电路设计一、实验目的1、了解和逐步掌握一般组合逻辑电路的设计方法;2、熟练掌握QuartusⅡ软件原理图输入方式的操作步骤;3、熟练掌握QuartusⅡ软件中底层和顶层电路模块的设计方法;4、熟练掌握Quartus Ⅱ软件常见操作的设置方法。

二、实验设备计算机、QuartusⅡ软件、实验箱三、实验内容1、在QuartusⅡ软件中采用VHDL语言完成一个2选1多路选择器底层电路的设计;2、将已设计完成的2选1数据选择器作为底层模块,通过原理图输入方式和元件例化语句两种方式完成顶层3选1数据选择器顶层电路的设计和测试。

四、实验步骤注意:以下为大体步骤,详细步骤根据具体实验过程独立完成。

1、设计2选1数据选择器底层模块用VHDL语言完成该电路模块的设计并在QuartusⅡ软件中进行仿真,截取仿真波形作为部分实验结果。

2、设计3选1数据选择器顶层模块将2选1数据选择器作为底层元件,利用原理图输入方式和元件例化语句两种方式完成3选1数据选择器顶层模块的设计并仿真;注意:底层和顶层文件应放在同一工程文件夹中,截取3选1数据选择器仿真波形和顶层图作为部分实验结果。

3、完成3选1数据选择器的引脚锁定(1)三个输入端可自由锁定在三个按键上,根据实验箱上空余的引脚自由锁定;(2)两个选择端可自由锁定在两个拨码开关上;(3)输出端可自由锁定在一个LED 灯上,通过灯的亮灭判断是否有输出。

为了清楚区分三个输入端,测试时可设置三个不同的LED 灯来判断。

图-1 开关量输入输出模块S1—s8是带自锁的单刀单执拨码开关,在开关未拨动时是低电平,拨动时J1为高电平并保持高电平不变,只有回拨开关时J1才恢复低电平输入。

图-2 按键模块此模块共有8个按键,BUTTON1—BUTTON8是轻触按键;在按键未按下时JP6为高电平输入,按键按下后JP6对FPGA 输入低电平,松开按键后恢复高电平输入。

图-3 LED 灯指示模块该模块有8个LED 指示灯,在使用时候只需要用排线连接JP5和FPGA 连接,FPGA 输出低电平时指示灯亮。

计算机组成与结构实验报告1 实验一: EDA入门

计算机组成与结构实验报告1 实验一: EDA入门

大学实验报告2018年5月21日课程名称:计算机组成与结构实验实验名称:实验一: EDA入门班级及学号:姓名:同组人:签名:指导教师:指导教师评定:一、实验目的:了解并初步掌握使用QuartusⅡ软件集成开发工具进行专用硬件电路设计的工作过程;了解并初步掌握使用硬件描述语言(VHDL)表述电路功能设计;了解并初步掌握使用时序仿真方法验证电路逻辑功能;了解并初步掌握使用GW48实验台对设计电路进行硬件下载配置和测试。

二、实验任务:1.首先利用QuartusⅡ完成“2选1多路选择器”电路的VHDL语言表达描述;2.设计时序仿真测试激励波形信号并进行电路功能的仿真测试;3.完成“2选1多路选择器”电路的硬件下载编程;4.设计硬件测试方案,配置试验台测试环境,进行硬件测试;5.实验完成,写出实验报告三、实验原理:本实验通过Quartus II软件,编程设计硬件电路功能,在一片FPGA(型号EP1C6Q240C8)可编程芯片上,制作成一块具有“二选一多路选择器”功能的专用电路器件。

测试验证设计电路功能是在GW48实验系统上进行,该实验系统通过改变连线和软件配置可支持多种电路试验。

本实验选用电路模式NO.5。

“2选1多路选择器”电路原理图及逻辑表达式如下:四、实验步骤:第一阶段:建立工程,输入设计文件该电路可用硬件描述语言VHDL表达如下:ENTITY mux21a ISPORT(a,b,s:IN BIT;y:OUT BIT);END ENTITY mux21a;ARCHITECTURE one OF mux21a ISBEGIN图3.1 “2选1多路选择器”原理图和逻辑表达PROCESS(a,b,s)BEGINIF s ='0' THEN y<= a;ELSE y<=b;END IF;END PROCESS;END ARCHITECTURE one;第二阶段:编译第三阶段:时序仿真仿真解释:a,b输入端,s是控制端,y是输出端。

EDA实验报告

EDA实验报告

EDA 实验报告实验一:组合电路的设计实验内容是对2选1多路选择器VHDL 设计,它的程序如下:ENTITY mux21a ISPORT ( a, b : IN BIT; s : IN BIT; y : OUT BIT ); END ENTITY mux21a;ARCHITECTURE one OF mux21a IS SIGNAL d,e : BIT; BEGIN d <= a AND (NOT S) ; e <= b AND s ; y <= d OR e ;END ARCHITECTURE one ;Mux21a 仿真波形图以上便是2选1多路选择器的VHDL 完整描述,即可以看成一个元件mux21a 。

mux21a 实体是描述对应的逻辑图或者器件图,图中a 和b 分别是两个数据输入端的端口名,s 为通道选择控制信号输入端的端口名,y 为输出端的端口名。

Mux21a 结构体可以看成是元件的内部电路图。

最后是对仿真得出的mux21a 仿真波形图。

Mux21a 实体Mux21a 结构体实验二:时序电路的设计实验内容D触发器的VHDL语言描述,它的程序如下:LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;ENTITY DFF1 ISPORT (CLK : IN STD_LOGIC ;D : IN STD_LOGIC ;Q : OUT STD_LOGIC );END ;D触发器ARCHITECTURE bhv OF DFF1 ISBEGINPROCESS (CLK)BEGINIF CLK'EVENT AND CLK = '1'THEN Q <= D ;END IF;END PROCESS ;END bhv;D触发器的仿真波形图最简单并最具代表性的时序电路是D触发器,它是现代可编程ASIC设计中最基本的时序元件和底层元件。

实验六二选一数据选择器的VHDL设计

实验六二选一数据选择器的VHDL设计

将设计实体内的处理结果向定 义的信号或界面端口进行赋值
用以调用过程或函数,并将获 得的结果赋值于信号。 元件调用,用来调用另一个 实体所描述的电路。
实体和结构体之间的关系
Input 1
Input n
实 体
Output 1
Output n
A B C D Se l 2
MUX_Out
结构体三种描述方法
VHDL结构体术语
说明语句:用于定义结构体中所用的数据对象(常量 和信号)和子程序,并对所引用的元件加以说明,但 不能定义变量。 功能描述语句:有五种类型,可以把它们看成结构体 的五种子结构。这五种语句结构本身是并行语句,但 内部可能含有并行运行的逻辑描述语句或顺序运行的
逻辑描述语句,如进程内部包含的即为顺序语句。
★数据类型必须一致
★表达式中有多个运算符时一般要加括号,但 and、or等除外 6、运算符的优先

VHDL操作符优先级
signal d1,d2,s : integer; SIGNAL a ,b,c : STD_LOGIC_VECTOR (3 DOWNTO 0) ; SIGNAL d,e,f,g : STD_LOGIC_VECTOR (1 DOWNTO 0) ; SIGNAL h,i,j,k : STD_LOGIC ; SIGNAL l,m,n,o,p : BOOLEAN ; ... s<=a and b; -- integer 不能进行逻辑运算 a<=b AND c; -- a、b、c的数据类型同属4位长的位矢量 d<=e OR f OR g ; -- 两个操作符OR相同,不需括号 h<=(i NAND j)NAND k ; -- NAND必须加括号 l<=(m XOR n)AND(o XOR p); -- 操作符不同,必须加括号 h<=i AND j AND k ; -- 两个操作符都是AND,不必加括号 h<=i AND j OR k ; -- 两个操作符不同,未加括号,表达错误

EDA实验报告

EDA实验报告

E D A实验报告实验一、QuartusⅡ软件使用一、试验目的学习QUARTUS II软件的使用,掌握软件工程的建立、VHDL源文件的设计和波形仿真等基本内容;二、试验内容利用QuartusⅡ完成2选1多路选择器的文本编辑输入(mux21a.vhd)和仿真测试等步骤,给出仿真波形。

设计含有异步清零和计数使能的4位二进制加减可控计数器。

三、设计过程VHDL设计程序如下二选一:LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;USE IEEE.STD_LOGIC_UNSIGNED.ALL ;ENTITY mux21 ISPORT ( a, b : IN BIT;s : IN BIT;y : OUT BIT );END ENTITY mux21;-- behave descriptionARCHITECTURE one OF mux21 ISBEGINy <= a WHEN s = '0' ELSE b ;END ARCHITECTURE one ;四位二进制计数器:LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;USE IEEE.STD_LOGIC_UNSIGNED.ALL ; -- 运算符重载ENTITY mycounter ISPORT ( ena,clr,d_ctr,clk : IN STD_LOGIC ;q : OUT STD_LOGIC_VECTOR(3 DOWNTO 0 )) ;END ENTITY mycounter;ARCHITECTURE bhv OF mycounter ISSIGNAL q1 : STD_LOGIC_VECTOR(3 DOWNTO 0 );BEGINq <= q1 ;PROCESS (clk,clr,ena,d_ctr)BEGINIF clr='1' THEN q1<="0000";ELSIF clk'EVENT AND clk = '1' THENIF ena='1' THENIF d_ctr='1' THENq1 <= q1 + '1';ELSEq1<=q1-'1';END IF;ELSEq1<=q1;END IF;END IF;END PROCESS ;END ARCHITECTURE bhv;四、仿真波形与分析二选一:四位二进制计数器:实验二、原理图输入设计方法一、试验目的熟悉利用QUARTUS II中的原理图输入法设计组合电路,掌握层次化设计的方法,并通过一个4位全减器的设计把握文本和原理图输入方式设计的详细流程。

2选1选择器的VHDL设计课件

2选1选择器的VHDL设计课件

3.1 多路①可以使用26个英文字母,数字0-9以及下划线“_”,且 只能以英文字母开头;
②不区分大小写;最长不超过64个字符;
③必须是单一下划线,且下划线前后都必须有英文字母 或数字;
6、端口定义语句port和端口模式 端口模式
IN 输入端口,定义的通道为单向只读模 OUT 式输出端口,定义的通道为单向输出模 INOUT 式 定义的通道确定为输入输出双向端口 BUFFER 缓冲端口,其功能与INOUT类似
3、界符 标点符号“;”表示VHDL中语句的结束;
3.1 多路选择器的VHDL描述
4、实体和结构体
实体和结构体是VHDL程序的两个基本组成部分;其中 实体主要用于定义电路或系统的外部端口;结构体用于定义 内部逻辑功能或电路结构。
ENTITY e_name IS PORT ( p_name : port_m
-- 注意,赋值条件的数据类型必须是boolean
3.1 多路选择器的VHDL描述
思考 ❖还有没有其它方法实现二选一? ❖n选一的多路选择器怎么设计?
3.1 多路选择器的VHDL描述
9、赋值符号<=
信号赋值符号“<=”,表示将符号右端的值赋值给左端的 信号; 10、关系运算符=
等号“=”没有赋值的含义,也不是相等的意思,而是 关系运算符,只是一种数据比较符号,其结果只有两种情况, 要么为真true,条件成立;要么为假false,条件不成立。 表达式 WHEN 赋值条件 ELSE
END ARCHITECTURE one ;
3.1 多路选择器的VHDL描述
3.1 多路选择器的VHDL描述
entity 实体
architecture 结构体
实体 mux21a1

基于VHDL的数字多路选择器教学模式的探索

基于VHDL的数字多路选择器教学模式的探索

基于VHDL的数字多路选择器教学模式的探索王静怡,孙旭华,卜宏博,付 旭(西安石油大学,陕西 西安 710065)- 32 -1.设计目标课前发送授课小视频、网页等自学资源,学生自主学习,并完成给定的设计及学习要求。

2.小组互动通过给定系统功能、设计构思、编程实现等阶段,采取集中讲解的方式,让学生对自己的成果进行介绍并进行互动提问。

3.协作讨论在教师的指导下,学生以2~3人为小组进行自由探讨,并深入研究程序语言中的新手段及实施要领,鼓励学生积极发言,教师给予评价,实现师生交流。

五、课件设计(一)重要性随着信息的不断更新,各类教学资源层出不穷。

可以将文句、幻灯片、语音等很好地融汇在一起,同时通过课堂教学活动演示给学生。

现代课堂教学注重学生的主体地位,提倡学生自己学习、独立思考。

课件可以给学生展现的学习定位明确、思路清晰、层次合理。

学生可以在实际课堂时间内吸收到大量的理论知识,同时挤出更多的时间和精力专注于提高动手能力,进一步提升课堂效率。

(二)原则需要遵循科学合理性的原则:1.紧扣教学大纲课件是传递知识的重要途径,更是大纲的扩展和延伸。

因此,以大纲为框架,延伸知识为枝叶,这样整个课件是一个有逻辑性的整体。

2.重难点突出避免平铺直叙,重点凸显。

教学思路清楚,层次鲜明。

3.提高学生注意力课件需搭配图表等。

选用感兴趣的话题,如讲到多路选择器,可以联想游戏中角色选择等。

制作课件模板和文字色调对比凸显,带动学习热情,促使学生养成学习自主的好习惯。

六、教学效果评价(一)理论分析整个教学活动贯彻学校的教学方针,以学生为主体,重视学习能力的培养,提倡学生的个性化发展,努力提高学生实践创新性。

课堂之外的作业,帮助学生把原理和实践协调起来,构成一个完整的知识体系,使学生做到学有所得,并将所学基础知识灵活地应用到解决具体的问题中[4]。

通过学生的课堂表现展开过程性评价,鼓励学生认真学习、积极探索。

(二)实践证明这门课有具体的课堂教学方向、合理的知识架构、明确的实验教学导向和现代化的教学模式和手段,形成了学生独立自主式、深入分析式的学习方式,唤起学生浓厚的兴趣。

EDA:实验六2选1和4选1多路选择实验

EDA:实验六2选1和4选1多路选择实验

实验六 2选1和4选1多路选择实验班级:通信1121 姓名:王密学号:1121302230一、实验目的:1、了解2选1和4选1的工作原理和实现的方法。

2、实现两个多路选择器,一个2选1,一个4选1。

3、学会用于VHDL语言进行程序设计。

二、实验原理:2选1当选择输入S为L时,Y输出A, 当S为H时,Y输出B。

当选择输入AB为LL时,Y输出D0, 当AB为LH时,Y输出D1, 当AB为HL时,Y输出D2,当AB为HH时,Y输出D3。

说明:sw1选择是控制4选1,还是2选1,sw1=1,为4选1,sw1=0,为2选1。

sw3,sw2为4选1的地址,sw4为2选1的地址。

三、实验连线:1、将EP2C5适配板左下角的JTAG用十芯排线和万用下载区左下角的SOPC JTAG口连接起来,万用下载区右下角的电源开关拨到 SOPC下载的一边。

2、请将JPLED1短路帽右插,JPLED的短路帽全部上插。

3、将实验板左端的JP103全部用短路帽接上(共八个)。

四、实验内容与步骤:(程序:EP2C5\muxsel\muxsel.sof)1、打开Quartus II 6.0软件,点击“File→OpenP roject”出现如下的对话框(图9.1),选中muxsel,点打开即可;图9.12、点击“Tools-Programmer”后出现如下的对话窗口,3、在点”Edit→Add File………”出现如下对话框(图9.2),在图9.3对话框中,选中EP2C5/muxsel/muxsel.sof项目后点击打开回到Programmer对话框, 在下载对话窗口中“选中Program/ Configure”,点击“Start”即进行下载。

图9.2图9.3现将muxsel.vhd原程序作如下说明:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_SIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY liu123 ISPORT (SW1:IN BOOLEAN;SW2:IN STD_LOGIC;SW3:IN STD_LOGIC;SW4:IN BOOLEAN;LED:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END liu123;ARCHITECTURE ADO OF liu123 ISSIGNAL RST_MUXSEL: STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL RST_MUXSEL2: STD_LOGIC_VECTOR(7 DOWNTO 0);BEGINPROCESS(SW1,SW2,SW3)beginIF (SW2='0' AND SW3 ='0') THEN RST_MUXSEL<="10101010";ELSIF (SW2='0' AND SW3='1' )THEN RST_MUXSEL<="01010101";ELSIF (SW2='1' AND SW3='0')THEN RST_MUXSEL<="10001000";ELSIF (SW2='1' AND SW3='1') THEN RST_MUXSEL<="01110111";ELSE RST_MUXSEL<="XXXXXXXX";END IF;E ND PROCESS;PROCESS (SW4)BEGINIF SW4 THENRST_MUXSEL2<="10100101";ELSERST_MUXSEL2<="01011010";END IF;END PROCESS;PROCESS(SW1,RST_MUXSEL,RST_MUXSEL2)BEGINcase sw1 iswhen true => LED<=RST_MUXSEL;when false => LED<=RST_MUXSEL2;END case;END PROCESS;END ADO;引脚分配(Cyclone EP2C5Q208C8):sw1-P43,sw2-P44,sw3-P45,sw4-P46,led0-P13,led1-P14,led2-P15,led3-P30,led4-P3 1,led5-P33,led6-P34,led7-P35,管脚标号led0到led7分别接到8位的LED流水灯上,使用高低电平观察输出的结果,sw1到sw4接到拨码开关上,。

VHDL实验报告一2选1多路选择器

VHDL实验报告一2选1多路选择器

VHDL实验报告一2选1多路选择器实验一实验目的:熟悉quartus的vhdl文本设计流程全过程,学习简单的组合电路的设计,多层次的电路设计,仿真和硬件测试二、实验内容内容(一)用vhdl语言设计2选1多路选择器参考例3-1程序设计如下:library ieee;use ieee.std_logic_1164.all;entity mux21a isport (a,b,s:in bit;y: out bit);end entity mux21a;architecture one of mux21a isbeginy<=a when s='0' else b;end architecture one全程编译后软件提示0错误,3警告,可以继续下面仿真操作。

程序分析:这是一个2选1多路选择器,a和b分别为两个数字输入端的端口名,s为通道选择控制信号输入端的端口名,y为输出端的端口名。

时序仿真及分析:时序仿真输入图:时序仿真输出图:时序分析:由上面两图可以得知:当s=0时,y口输出a,当s=1时,y口输出b下载和硬件测试:引脚锁定图:程序下载完成后,选择实验电路模式5,通过短路帽选择clock0接256Hz 信号,clock2接8Hz信号。

通过键一控制s,当键一进行切换时,明显能听到扬声器发出两种不同音调的声音。

实验内容(二)双二选一多路选择器设计程序设计:library ieee;use ieee.std_logic_1164.all;entity mux21a isport (a,b,s:in bit;y: out bit);end entity mux21a;architecture one of mux21a isbeginy<=a when s='0' else b;end architecture one;entity muxk isport (a1,a2,a3,s0,s1:in bit;outy:out bit);end entity muxk;architecture bhv of muxk iscomponent mux21aport (a,b,s:in bit;y:out bit);end component;signal tmp: bit;beginu1:mux21a port map(a=>a2,b=>a3,s=>s0,y=>tmp);u2:mux21a port map(a=>a1,b=>tmp,s=>s1,y=>outy);end architecture bhv;全程编译后软件提示0错误,2警告程序分析:这是一个双2选1多路选择器,a1、a2和a3分别为两个数字输入端的端口名,s0、s1为通道选择控制信号输入端的端口名,outy为输出端的端口名。

组合逻辑VHDL设计——数据选择器 实验报告

组合逻辑VHDL设计——数据选择器 实验报告

实验名称:组合逻辑VHDL设计——数据选择器班级: 09电气2Z 学号: 09312213 姓名:钱雷一、4选1数据选择器的VHDL设计(低电使能端)1.实体框图2.程序设计①正确的程序library ieee;use ieee.std_logic_1164.all;entity mux41a isport(D3,D2,D1,D0,EN:in std_logic;A1,A0:in std_logic;y:out std_logic);end mux41a;architecture aaa of mux41a isbeginy<=D3 when A1='0' and A0='0' and EN='0' elseD2 when A1='0' and A0='1' and EN='0' elseD1 when A1='1' and A0='0' and EN='0' elseD0 when A1='1' and A0='1' and EN='0'else 'Z';end architecture aaa;3.仿真波形图4.仿真波形分析D0-D3是数据输入端,EN为使能端,低电平有效,S(A1和A0)是控制输入端,Y是数据输出端。

当A1、A0=‘11’时,D0数据被选中,输出Y=D0;当A1、A0=‘10’时,D1数据被选中,输出Y=D1,当A1、A0=‘01’时,D2数据被选中,输出Y=D2,当A1、A0=‘00’时,D3数据被选中,输出Y=D3。

二、8选1数据选择器的VHDL设计(低电使能端)1.实体框图2.程序设计①正确的程序library ieee;use ieee.std_logic_1164.all;entity mux81a isport(A0,A1,A2,D0,D1,D2,D3,D4,D5,D6,D7,EN:in std_logic;y:out std_logic);end mux81a;architecture bbb of mux81a issignal Q:std_logic_vector (2 downto 0);beginQ<=A2&A1&A0;y<=D0 when Q="000" and EN='0' elseD1 when Q="001" and EN='0' elseD2 when Q="010" and EN='0' elseD3 when Q="011" and EN='0' elseD4 when Q="100" and EN='0' elseD5 when Q="101" and EN='0' elseD6 when Q="110" and EN='0' elseD7 when Q="111" and EN='0'else 'Z';end architecture bbb;3.仿真波形图4.仿真波形分析D0-D7是数据输入端,EN为使能端,低电平有效,A2,A1,A0是控制输入端,Y是数据输出端。

2选1多路选择器的VerilogHDL设计

2选1多路选择器的VerilogHDL设计
说明:各学院(实验中心)可根据实验课程的具体需要和要求自行设计和确定实验报告的内容要求和栏目,但表头格式按照“实验项目名称”栏以上部分统一。
三、实验HDL描述:
四、仿真结果:
由上图可见,当输入的s为高电平时,输出的y和a的波形一致;而当输入的s为低电平时,输出的y和b一致。
五、引脚锁定:
六、硬件测试结果:
上图为通过JTAG接口下载程序
实验效果:按下和松开键1,SPEAKER会发出不同的尖叫声,证明电路运行正确。
七、实验心得:
通过本次实验,初步了解了QuartusII的基本操作方法,根据PPT和老师的详细讲解,熟悉了2选1多路选择器的文本编辑输入和仿真设置及测试。有了这次入门实验的经验,为后续实验打下了良好的基础。
2、学习简单组合电路的设计、仿真和硬件测试。
二、实验内容:
按照PPT文件“Quartus II 9.0基本设计流程-VerilogHDL.ppt”所讲述的步骤,利用QuartusII完成2选1多路选择器的文本编辑输入(mux21a.v)和仿真测试等步骤,给出仿真波形。
若目标器件是EP3C40Q240C8N,建议选实验电路模式5,用键1作为控制端s;a和b分别接clock5、clock0,输出信号y接扬声器speaker。通过短路帽选择clock0接256Hz信号,clock5接1024Hz。最后进行编译、下载和硬件测试实验。
附表1:
广州大学学生实验报告
开课学院及实验室:物理与电子工程学院-电子楼317室2016年4月18日
学院
物电
年级、专业、班
姓名
Jason.P
学号
实验课程名称
EDA技术实验
成绩
实验项目名称
2选1多路选择器的VerilogHDL设计

2选1和4选1选择器VHDL设计

2选1和4选1选择器VHDL设计
【例3-3】
LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY MUX41A IS PORT(a,b,c,d,s0,s1:IN STD_LOGIC;
y:OUT STD_LOGIC); END ENTITY MUX41A ; ARCHITECTURE BHV OF MUX41A IS SIGNAL S:STD_LOGIC_VECTOR(1 DOWNTO 0); BEGIN S <=S1 & S0; PROCESS(S1,S0) --敏感信号表中可以放s1、s0,也可直接放s,如(s) BEGIN CASE S IS WHEN "00" => y<=a; WHEN "01" => y<=b; WHEN "10" => y<=c; WHEN "11" => y<=d; WHEN OTHERS =>NULL; END CASE; END PROCESS; END BHV;
3.3 4选1多路选择器及其VHDL描述
3.1 多路选择器的VHDL描述
相关语法 1.IEEE库和1164程序包
在VHDL中也像很多高级语言一样,把常用的一些数据 类型,数据对象等事先定义好放在库和程序包中,供设计者 直接调用而不用定义。 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; 注意:一个典型的VHDL程序是由库和程序包,实体和结构 体三部分构成。
mux21a2
a
y
b
ቤተ መጻሕፍቲ ባይዱ
s
3.1 多路选择器的VHDL描述
相关语法
1.信号signal

组合逻辑电路的设计

组合逻辑电路的设计

实验一组合逻辑电路的设计班级:11电信1班姓名:张斌学号:3111003113一、实验目的:1.熟悉QuartusⅡ的VHDL文本设计流程全过程,学习简单组合电路的设计、多层次电路设计、仿真和硬件测试。

2.加深FPGA\CPLD设计的过程,并比较原理图输入和文本输入的优劣。

二、实验的硬件要求:1.GW48EDA/SOPC+PK2实验系统。

三、实验内容及预习要求:1.首先利用QuartusⅡ完成2选1多路选择器(如图S1-1)的文本编辑输入(mux21a.vhd)和仿真测试等步骤。

最后在实验系统上进行硬件测试,验证本项设计的功能。

图S1-12.将此多路选择器看成是一个元件mux21a,利用原理图输出法完成图s1-2,并将此文件放在同一目录中。

图s1-2编译、综合、仿真本例程,并对其仿真波形作出分析说明。

最后在实验系统上进行硬件测试,验证本项设计的功能。

3.以1位二进制全加器为基本元件,用例化语句写出8位并行二进制全加器的顶层文件,编译、综合、仿真本例程,并对其仿真波形作出分析说明。

最后在实验系统上进行硬件测试,验证本项设计的功能。

4.七段数码管译码器(Decoder)七段数码管译码器(Decoder)的输入为4位二进制代码,输出为7个表征七段数码管代码的状态信号。

下面为一个七段数码管译码器的VHDL源代码模型:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY display ISPORT(A:IN STD_LOGIC_VECTOR(3 DOWNTO 0);LED7S:OUT STD_LOGIC_VECTOR(6 DOWNTO 0));END;ARCHITECTURE ONE OF display ISBEGINPROCESS(A)BEGINCASE A ISWHEN "0000"=>LED7S<="0111111";--X"3F"->0WHEN "0001"=>LED7S<="0000110";--X"06"->1WHEN "0010"=>LED7S<="1011011";--X"5B"->2WHEN "0011"=>LED7S<="1001111";--X"4F"->3WHEN "0100"=>LED7S<="1100110";--X"66"->4WHEN "0101"=>LED7S<="1101101";--X"6D"->5WHEN "0110"=>LED7S<="1111101";--X"7D"->6WHEN "0111"=>LED7S<="0000111";--X"07"->7WHEN "1000"=>LED7S<="1111111";--X"7F"->8WHEN "1001"=>LED7S<="1101111";--X"6F"->9WHEN "1010"=>LED7S<="1110111";--X"77"->10WHEN "1011"=>LED7S<="1111100";--X"7C"->11WHEN "1100"=>LED7S<="0111001";--X"39"->12WHEN "1101"=>LED7S<="1011110";--X"5E"->13WHEN "1110"=>LED7S<="1111001";--X"79"->14WHEN "1111"=>LED7S<="1110001";--X"71"->15WHEN OTHERS=>NULL;END CASE;END PROCESS;END;编译、综合、仿真本例程,并对其仿真波形作出分析说明。

EDA实验报告8位二选一多路选择器

EDA实验报告8位二选一多路选择器

学号:201400800093 姓名:胡玲专业:电子信息科学与技术科目:电子设计自动化EDA 实验名称:8位二选一多路选择器
一.实验要求
实验要求:1通过有限状态机的VHDL设计初步了解VHDL表达和设计电路的方法2根据学过的一位二选一选择器改进VHDL语言而掌握8位二选一多路选择器
三.RTL图
四.波形仿真图:
由源代码可知a_fin=a_dis,b_fin=b_dis,但由波形仿真图可知在同一时刻它们并不一定相等,而是存在延迟,结果s_fin也是和对应的输入值存在延迟,如果不考虑延迟,结果正确。

例:t=40ns时输入是1010+0001结果是1011,无进位。

五:实验结果
1.用开关sw17-14表示输入的四位二进制A(17-14分别表示A0-A3),并用LEDR17-14显示。

sw13-10表示输入四位二进制B(13-10分别表示B3-B0)并用LEDR13-10显示。

KEY0用于复位KEY1用于做时钟信号LEDR3-0表示输出的四位二进制数LEDG8(绿灯)显示进位输出。

2.按下复位键—用开关确定输入值(例如输入为1111+1000)—按下时钟信号键—可显示红灯为0111以及绿灯亮有进位。

3.可知结果正确。

六.实验体会及心得
1.做实验前先预习实验内容,学以致用和大胆改进很重要。

2.代码写错没关系,几十个错误也没关系,不能复制粘贴那样学不到东西,与同学探讨很有意义,最后结果出来再回过头研究代码会觉得更了解每一步代码。

3.实验过程中切记避免心浮气躁,急于出结果,如果实在没思路可以看同学代码但一定要看懂在之上进行改变看结果。

实验一VHDL入门与QuartusII使用指南

实验一VHDL入门与QuartusII使用指南

实验一VHDL入门与Quartus II使用一、实验目的1.熟悉Quartus II的VHDL文本设计流程。

2.学习用VHDL进行简单逻辑电路设计,多层次电路设计。

3.掌握VHDL设计电路的仿真、综合、和硬件测试的过程.二、实验内容1.实验内容1:首先利用QuartusⅡ完成2选1多路选择器(例3-1)的文本编辑输入(mux21a.vhd)和仿真测试等步骤,给出仿真波形,验证本项设计的功能。

2.实验内容2:用VHDL语言来描述一个3选1多路选择器,将例4-1多路选择器看成是一个元件mux21a,利用元件例化语句描述图3—17(93页),并将此文件放在同一目录muxk 中.用层次化描述的方法,先建立一个2选1多路选择器实体,然后在顶层设计中调用该实体两次就得到了3选1多路选择器。

以下是部分参考程序:...COMPONENT MUX21APORT ( a,b,s : IN BIT;y : OUT BIT);END COMPONENT ;。

.u1 : MUX21A PORT MAP(a=〉a2,b=〉a3,s=>s0,y=>tmp);u2:END ARCHITECTURE BHV ;对上面方法得到的VHDL设计进行功能仿真,验证其逻辑功能的正确性。

验证完成后进行综合,查看其RTL电路结构。

三、实验报告将实验原理、设计过程、编译仿真波形、RTL电路和分析结果写进实验报告。

四、实验步骤Quartus II 设计的主要流程有:创建工程、设计输入、编译、仿真验证、引脚锁定、下载.1.创建工程在D盘中新建一个文件夹D:\ mux21a,此文件夹用于存放整个工程。

打开Quartus II ,在菜单中选择File—〉New Project Wizard 将会出现一个信息框,这个对话框介绍创建工程步骤,可以直接选Next,这时会出现如图1所示的对话框。

这里需输入的是欲创建工程的基本信息,三个输入栏中分别输入的是工程将被保存的路径及工程文件夹、工程的名称和顶层实体的名称。

2选1和4选1选择器VHDL设计

2选1和4选1选择器VHDL设计

2选1和4选1选择器VHDL设计Reviewentityport(…);endentityARCHITECTUREBEGINwhenels eENDARCHITECTURE思考还有没有其它方法实现二选一?1、仔细分析设计要求。

做出输入,输出变量的逻辑规定。

根据给出的条件,列出真值表。

2、将真值表写入卡诺图,化简。

3、画逻辑电路图。

卡诺图法化简后得到最简的与一或表达式。

若需要其他的形式,可先转化后再作图。

3.1多路选择器的VHDL描述3.1.12选1多路选择器的VHDL 描述—方法二ab0001101100011011s00001111y01010011absyab0bab0bab0bab0bab1aab1aab1a ab1a2选1真值表3.1多路选择器的VHDL描述3.1.12选1多路选择器的VHDL描述—方法二absyab0bab0bab0bab0bab1aab1aab1aab1a图3-2mux21a2结构体3.1多路选择器的VHDL 描述3.1.12选1多路选择器的VHDL描述-方法二【例2】ENTITYmux21a2ISPORT(a,b:INBIT;s:INBIT;y:OUTBIT);ENDENTITYmux21a2;ARCHITECTUREoneOFmu x21a2ISSIGNALd,e:BIT;BEGINd<=aANDs;e<=bAND(NOTS);y<=dORe;ENDARCHITECTUREone;3.1多路选择器的VHDL描述mux21a23.1多路选择器的VHDL描述3.1多路选择器的VHDL描述运算符类型运算符符号功能优先级逻辑运算符AND逻辑与最低OR逻辑或NOT逻辑非NAND逻辑与非NOR逻辑或非XOR 逻辑异或XNOR逻辑同或相关语法1.信号signal信号是VHDL中常用三大数据对象之一,所谓数据对象是指用来保存不同类型数据的对象。

注意:信号相当于一根带电导线,用于暂存数据。

EDA实验

EDA实验

一、实验部分实验一仪器的熟悉及半加器的设计一、实验内容:(1)熟悉实验台(2)用VHDL设计半加器及或门,并给出程序设计、软件编译、仿真分析、硬件测试及详细实验过程。

(3)根据以上的实验内容写出实验报告,包括程序设计、软件编译、仿真分析和详细实验过程;给出程序分析报告、仿真波形图及其分析报告。

实验二简单组合电路的设计一、实验目的:熟悉Max+plusⅡ的VHDL文本设计流程全过程,学习简单组合电路的设计、多层次电路设计、仿真和硬件测试。

二、实验内容1:利用MAX+plusⅡ完成2选1多路选择器的文本编辑输入(mux21a.vhd)和仿真测试等步骤,给出下图所示的仿真波形。

三、实验内容2:将多路选择器看成是一个元件mux21a,利用元件例化语句并将此文件放在同一目录。

以下是参考程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MUXK ISPORT (a1,a2,a3,s0,s1 : IN STD_LOGIC;outy : OUT STD_LOGIC );END ENTITY MUXK;ARCHITECTURE BHV OF MUXK ISCOMPONENT MUX21APORT ( a,b,s : IN STD_LOGIC;y : OUT STD_LOGIC);END COMPONENT ;SIGNAL tmp : STD_LOGIC;BEGINu1 : MUX21A PORT MAP(a=>a2,b=>a3,s=>s0,y=>tmp);u2 : MUX21A PORT MAP(a=>a1,b=>tmp,s=>s1,y=>outy);END ARCHITECTURE BHV ;对上例分别进行编译、综合、仿真。

并对其仿真波形作出分析说明,并画出电路结构,说明该电路的功能。

四、实验报告:根据以上的实验内容写出实验报告,包括程序设计、软件编译、仿真分析和详细实验过程;给出程序分析报告、仿真波形图及其分析报告。

第3章2选1和4选1选择器VHDL设计

第3章2选1和4选1选择器VHDL设计

3.3 4选1多路选择器及其VHDL描述
例3-3 仿真结果
summary
❖信号signal; ❖逻辑运算符; ❖进程process语句;语句的分类; ❖条件if语句; ❖库和程序包; ❖标准逻辑位和矢量型数据; ❖并置&操作符; ❖注释--符号; ❖case语句;
思考
❖如何用VHDL设计二进制加法器?
ARCHITECTURE one OF mux21a2 IS SIGNAL d,e : BIT;
BEGIN d <= a AND s ; e <= b AND (NOT S) ; y <= d OR e ;
END ARCHITECTURE one ;
3.1 多路选择器的VHDL描述
3.1 多路选择器的VHDL描述
mux21a2
a
y
b
s
3.1 多路选择器的VHDL描述
相关语法
1.信号signal
信号是VHDL中常用三大数据对象之一,所谓数据对象 是指用来保存不同类型数据的对象。
注意:信号相当于一根带电导线,用于暂存数据。
2.逻辑运算符
运算符类型 逻辑运算符
运算符符号
AND
OR NOT NAND NOR XOR XNOR
PORT ( a, b, s: IN BIT; y: OUT BIT);
END ENTITY mux21a; ARCHITECTURE one OF mux21a IS BEGIN
PROCESS (a,b,s) BEGIN IF (s = '1') THEN y <= a ; ELSE y <= b ; END IF;
【例3-3】
LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY MUX41A IS PORT(a,b,c,d,s0,s1:IN STD_LOGIC;

数据选择器_实验报告

数据选择器_实验报告

一、实验目的1. 理解数据选择器的工作原理和逻辑功能。

2. 掌握数据选择器的引脚及其作用。

3. 学会使用数据选择器进行组合逻辑电路的设计。

4. 通过实验验证数据选择器的应用。

二、实验原理数据选择器,又称多路选择器,是一种能够从多个数据输入中选取一路输出到输出端的数字电路。

其基本原理是利用控制信号来选择所需的输入数据。

常见的数据选择器有二选一、四选一、八选一等。

三、实验器材1. 74LS153双四选一数据选择器2. 逻辑分析仪3. 电源4. 连接线5. 逻辑门电路四、实验步骤1. 搭建实验电路:按照实验原理图连接好电路,包括数据选择器、输入端、输出端和控制端。

2. 输入数据测试:向数据选择器的输入端输入不同的数据,观察输出端的变化。

3. 控制信号测试:改变控制信号的状态,观察输出端的变化,验证数据选择器的逻辑功能。

4. 组合逻辑电路设计:设计一个组合逻辑电路,使用数据选择器实现所需的逻辑功能。

5. 电路仿真:使用逻辑分析仪对电路进行仿真,验证电路的正确性。

五、实验结果与分析1. 输入数据测试:当输入端的数据分别为0和1时,输出端能够正确地输出对应的值。

2. 控制信号测试:当控制信号改变时,输出端能够正确地选择对应的输入数据。

3. 组合逻辑电路设计:设计了一个组合逻辑电路,使用数据选择器实现了所需的逻辑功能。

4. 电路仿真:仿真结果显示,电路能够正确地实现预期的逻辑功能。

六、实验心得1. 通过本次实验,我对数据选择器的工作原理和逻辑功能有了更深入的了解。

2. 实验过程中,我学会了如何使用数据选择器进行组合逻辑电路的设计。

3. 实验让我认识到,在实际应用中,数据选择器可以简化电路设计,提高电路的可靠性。

4. 通过本次实验,我提高了自己的动手能力和逻辑思维能力。

七、总结本次实验成功地实现了数据选择器的测试和应用,验证了数据选择器的逻辑功能。

通过实验,我对数据选择器有了更深入的了解,并掌握了使用数据选择器进行组合逻辑电路设计的技巧。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一
实验目的:
熟悉quartus的vhdl文本设计流程全过程,学习简单的组合电路的设计,多层次的电路设计,仿真和硬件测试
二、实验内容
内容(一)用vhdl语言设计2选1多路选择器
参考例3-1程序设计如下:
library ieee;
use mux21a is
port (a,b,s:in bit;
y: out bit);
end entity mux21a;
architecture one of mux21a is
begin
y<=a when s='0' else b;
end architecture one
全程编译后软件提示0错误,3警告,可以继续下面仿真操作。

程序分析:
这是一个2选1多路选择器,a和b分别为两个数字输入端的端口名,s为通道选择控制信号输入端的端口名,y为输出端的端口名。

时序仿真及分析:
时序仿真输入图:
时序仿真输出图:
时序分析:
由上面两图可以得知:当s=0时,y口输出a,当s=1时,y口输出b
下载和硬件测试:
引脚锁定图:
程序下载完成后,选择实验电路模式5,通过短路帽选择clock0接256Hz 信号,clock2接8Hz信号。

通过键一控制s,当键一进行切换时,明显能听到扬声器发出两种不同音调的声音。

实验内容(二)双二选一多路选择器设计
程序设计:
library ieee;
use mux21a is
port (a,b,s:in bit;
y: out bit);
end entity mux21a;
architecture one of mux21a is
begin
y<=a when s='0' else b;
end architecture one;
entity muxk is
port (a1,a2,a3,s0,s1:in bit;
outy:out bit);
end entity muxk;
architecture bhv of muxk is
component mux21a
port (a,b,s:in bit;
y:out bit);
end component;
signal tmp: bit;
begin
u1:mux21a port map(a=>a2,b=>a3,s=>s0,y=>tmp);
u2:mux21a port map(a=>a1,b=>tmp,s=>s1,y=>outy);
end architecture bhv;
全程编译后软件提示0错误,2警告
程序分析:
这是一个双2选1多路选择器,a1、a2和a3分别为两个数字输入端的端口名,s0、s1为通道选择控制信号输入端的端口名,outy为输出端的端口名。

实体mux21a是一个2选一选通电路,实体muxk是元件的例化,其作用是将两个mux21a组合成一个3选1多路选择器。

时序仿真及分析:
时序仿真输入图
时序仿真输出图
时序分析:
从仿真出来的结果,我们不难发现,s0和s1做为a1、a2、a3的选通控制信号。

当s0=0.、s1=0时,outy输出a1;当s0=0.、s1=1时,outy输出a2;当s0=1.、s1=0时,outy输出a1;当s1=1.、s2=1时,outy输出a3;
下载和硬件测试:
引脚锁定图
程序下载完成后,选择实验电路模式5,通过短路帽选择clock0接256Hz 信号,clock2接8Hz信号,clock5接1024Hz。

通过键一、键二分别控制s1、s2,当键一、键二进行切换时,明显能听到扬声器发出三种不同音调率的声音。

实验结果:
在实验一中内容一和内容二编译,仿真都没问题,除了有两三个警告以外,并无其他错误,但是在下载过程中,由于设置编程器处出现一点问题,导致下载失败,经过请教,调整后成功运行
四、实验过程所出现的问题及其解决
首先,仿真结果出现延时,应该将a,b,s的周期增大些,且要保证单位为us,刚开始做实验内容(一)时,文件夹名字与程序中所用的实体名不一致,导致程序运行时无法找到文件夹,无法正常工作,经更改后,正常运行,同时文件夹名字不用汉字和数字,以免出错。

每次修改过程都应该注意保存,才能将修改的结果反映到所输出的波形中,刚开始常常忘记,经过多次操作后才能够熟练运用。

HDL程序设计
—组合逻辑电路设计
班级:08级通信工程二班
学号:
姓名:。

相关文档
最新文档