多路选择器实验报告
- 格式:doc
- 大小:68.03 KB
- 文档页数:5
实验报告课程名称:FPGA设计及应用实验项目:设计二选一多路选择器实验时间:20XX年4月1号实验班级:12电子信息工程X班指导教师:李XX二〇〇四年四月十三日广东技术师范学院实验报告学院:电子与信息学院专业:电子信息工程班级:12电本X班成绩:姓名:学号:20XX0442430 组别:组员:实验地点:工业中心实验日期: 4.01 指导教师签名:实验七项目名称:设计二选一多路选择器一、实验目的和要求设计二选一多路选择器:通过简单完整而典型的VHDL设计,初步了解VHDL表达和设计电路的方法并对由此而引出的语言对象和语言规则加以有针对性的说明。
二、实验步骤预习情况操作情况考勤情况数据处理情况1、创建新的工程,步骤如下:2、创建新的文件3、用VHDL语言根据实验要求的功能编写代码4、编译5、引脚分配6、链接数据线,下载程序三、实验源代码LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY mux21a ISPORT(a,b:IN BIT;s:IN BIT;y:OUT BIT);END;ARCHITECTURE one OF mux21a ISBEGINy<=a WHEN s='0' ELSE b;END ARCHITECTURE one;四、实验结果与总结1、通过本节上机实验,加深了解了VHDL语言现象和语句规律。
2、程序很简单,按照示例程序输入没有什么错误。
主要是通过这个简单程序了解了仿真的全过程。
3、实验后基本能从整体上把握VHDL程序的基本结构和设计特点。
掌握固定表达句式。
实验七 4 选1多路选择器设计实验一、实验目的进一步熟悉Quartusll 的VHDL 文本设计流程、组合电路的设计仿真和测试。
二、实验原理四选一多路选择器设计时,试分别用IF_THEN 语句、WHEN_ELSE 和CASE 语句的表达方式写出此电路的 VHDL 程序,要求选择控制信号S1和s2的数据类 型为 STD_LOGIC;当 s1= ‘ 0',s0= ‘0' ; s1= ‘O', s0= ‘1’ ; s1= ‘ 1' , s0= ‘O ' 和 s1= '1', sO= ‘1'时,分别执行 y<=a 、y<=b 、yv=c 、y<=d 。
三、程序设计其示意框图如下:其中输入数据端口为a 、b 、c 、d ,s1、s2为控制信号,丫为输出。
令 sOs1= “ 00” 时,输出 y=a ; 令 sOs1= “ 01” 时,输出 y=b ; 令 sOs1= “ 10” 时,输出 y=c ; 令 sOs1= “ 11'时,输出 y=d ;厂a 输入 < b 数据 c I dsOs1真值表如下:4选1-------- y数据选择器四、VHDL仿真实验(1)用IF_THEN语句设计4选1多路选择器1. 建立文件夹D: \alteral\EDAzuoye\if_mux41, 启动QuartusII 软件工作平台,打开并建立新工程管理窗口,完成创建工程。
New Project WD i rectorv; Nafpe L Top-._evel Entity .page 1 QT5What is the working directory fm this project?0:\altera\E DAsuoye\^_muw41What is the n^me of this project?| muK41What is the n^me of the top-level design entity for this project? This name is casesensitive and must sKactly mart ch the sriit> name in the design file.mu«41 ...U se Existing Project Settings ...图 1 利用New Project Wizard 创建工程mux412. 打开文本编辑。
实验报告学院:电气工程学院班级: 专业:电子信息工程“所有程序〞 一 “ Altera 〞 一 “ Quartus II 9.0〞 “Quartus II 9.0(32bit )Q 启动软件.2 .选择 “File 〞 一 “New Project Wizard 〞,出现 “Introduction 〞 页3 .单击“Next〞按钮,进入工程名称的设定、工作目录的选择.4 .在对话框中第一行选择工程路径;第二行输入工程名,第三行输入顶层文件的实体名6 .新建设计文件,选择“File |New 〞 ,在NeW 寸话框中选择Device DesignFiles 下的Verilog File ,单击OK 完成新建设计文件.7 .在新建设计文件中输入Verilog 程序.8 .结果仿真编写四选一电路的VHDL 弋码并仿真,编译下载验证:实验程序:LIBRARY IEEE;USE IEEE. STD_LOGIC_1164.ALL;ENTITY mux4 ISPORT (input: IN STD_LOGIC_VECTOR (3 DOWNTO 0);sel: IN STD_LOGIC_VECTOR (1 DOWNTO 0);y : OUT STD_LOGIC);END mux4 ;ARCHITECTURE rtl OF mux4 ISBEGINPROCESS (input, sel)BEGINIF (sel= "00〞)THENy<= input (0);ELSIF (sel= "01")THENy<= input (1);1.选择“开始〞 面, 如下列图,该页面介绍所要完成的具体任务.ELSIF (sel= “10〞)THENELSE END IF;END PROCESS;END rtl;二:程序运行图:LIBRARY IEEE TOSE- ITEE . STD LOGTC i 1.ALLj■ ENTITY aiucial 15S PC®LT(ifil!rtlt : TN 5TD_XX>GTC_VECTOR ( 3 DCffiiTC ?); a r b:I^STD2tMIC?ysCOT STD_DOGICJ j|E=iD ENTITYS ARTHTTEZTTTRH rtl CF ir :^J£4al 15SIGNAL 5elsSTD_L©GIC -_VECTOR (1 BWNTO .?事■ BEGIN,FRCCE55(ZLnpUT ;/ aeL) IS BEGIPTIF {S*l-"0O*)ZMEM input (O);ELSXFI3el="OZe > 二三E¥kmm ?工? wE^SXF I ael-"10*P TH£^y<-i npuiE ?学〉:yc-lnpuEqm):END IFJEND PR&Cr35:END ARCHITECTTURE rrl ::波形图:y<= input (2); Ey<= input (3);本次实验学习了组合逻辑电路、编码器的功能与定义,学习了Verilog和VHD语言,同时熟悉了利用Quartus II开发数字电路的根本流程和Quartus II 软件的相关操作,学会了使用Vector Wav被形仿真.实验过程中也遇到了很多自己不能解决的问题,在同学和老师的帮助下算是知道问题的所在,有待在今后的学习中不断完善.指导教师意见签名:年月日实验总结。
本科学生综合性实验报告学号114090317 姓名李明旭学院物电学院专业、班级11电子实验课程名称电子设计自动化(EDA实验)教师及职称罗永道(副教授)开课学期2013 至2014 学年下学期填报时间2014 年05 月06 日实验序号 1 实验名称 2选1多路选择器及其VHDL 描述 实验时间 2014年05月04日实验室同析3栋楼114一.实验预习 1.实验目的:(1) 掌握2选1多路选择器的工作原理;(2) 掌握VHDL 编程语言的使用和设计方法;(3) 掌握Quartus II 软件的使用和工程的开发流程。
2.实验原理、实验流程或装置示意图:在数字电路中2选1多路选择器具备了组合逻辑电路的简单性和经典性的特征。
本实验以此电路模块来学习对应的VHDL 表达及其设计,同时练习使用Quartus II 软件的开发流程。
2选1多路选择器(假设此模块的器件名是mux21a )的电路模型或元件图如图1所示。
图中,a 、b 是两个数据选择通道输入端口;s 是通道选择控制信号端;y 是数据输出端;当s 取值分别为0和1时,输出端y 将分别输出来自输出口a 和b 的数据。
此选择器对应的逻辑电路图2,可以认为是此多路选择器的内部电路结构。
图1 mux21a 实体NOTinstAND2inst3AND2inst4OR2inst5VCCaINPUTVCCbINPUT VCCsINPUT yOUTPUT图2 mux21a 结构体3.实验设备及材料电脑一台,QuartusII 实验平台4.实验方法步骤及注意事项实验方法步骤:(1)打开计算机;(2)打开Quartur II软件,编写和调试实验代码,然后进行试验仿真。
注意事项:实验过程中认真分析实验原理编写代码,防止书本、书包等物品与实验设备接触,以免造成不必要的麻烦。
二.实验内容1.实验现象与结果2选1多路选择器的VHDL描述1:entity mux21a isport(--定义输入输出端口a:in bit;b:in bit;s:in bit;y:out bit);end entity mux21a;architecture one of mux21a is beginy<=a when s='0'else b;end architecture one;编译报告为:其仿真波形如下所示:其中a,b,s,都分别赋给不同频率的时钟信号RTL图为:符号图为:2选1多路选择器的VHDL描述2:library ieee;use ieee.std_logic_1164.all;entity mux21a isport (a,b,s:in std_logic;y:out std_logic );end entity mux21a;architecture one of mux21a issignal e:std_logic;signal d:std_logic;begind<=a and (not s);e<=b and s ;y<=d or e;end architecture one;编译报告为:其仿真波形如下所示:RTL图为:符号图为:2选1多路选择器的VHDL描述3:library ieee;use ieee.std_logic_1164.all;entity mux21a isport(a,b,s:in std_logic;y:out std_logic);end entity mux21a;architecture one of mux21a isbeginprocess(a,b,s) beginif s='0' then y<=a;else y<=b;end if;end process;end architecture one ;编译报告为:其仿真波形如下所示:RTL图为:符号图为:2.对实验现象、实验结果的分析及其结论从三个仿真波形都可以看出当s=0时y=a,s=1时y=b。
多路选择器的设计实验一.实验项目多路选择器的设计二.实验目的1.进一步熟悉Quartus II的VHDL文本设计流程,组合电路的设计仿真和硬件测试。
2.通过用VHDL设计一个4选1的多路选择器,掌握使用VHDL输入方式,进行FPGA/CPLD电路设计的方法。
3.熟悉多路选择器的功能。
三.实验设备及工具Quartus II 18.1四.实验内容与步骤1.准备工作:创建Quartus II项目。
2.设计输入:采用HDL输入方式。
新建文件(菜单File/ New...)选择VHDL文件类型(VHDL File),扩展名*.vhd,输入VHDL设计的代码,文件存盘。
3.编译、综合:在Processing菜单选择Start Compilation 项自动进行编译。
4.进行仿真:功能仿真、时序仿真。
新建“激励信号”的波形文件:(菜单File/New...)选择波形文件类型(Wector Waveform File)选择要仿真的节点:在“Name”列空白处,右键菜单,如上图所示。
选择菜单“Insert Node or Bus...”,在对话框选择“Nodes Finder”按钮根据过滤条件,列出节点名称:List选择节点 OK根据需要编辑输入端口“激励信号”的波形注意:保存波形文件,默认文件名即可。
运行仿真工具:如果仿真没有错误,则完成后自动打开仿真结果的波形窗口(仿真报告窗口)。
检查仿真波形是否正确:注意,需要人工判定结果,是否跟设计要求相符。
5. 器件编程:把设计下载到目标电路上,用实际器件验证设计是否正确。
正确连接下载线(电脑和目标电路板之间)在Tools 菜单内选择Programmer项(或者按钮),出现编程器窗口。
指定下载电缆类型:Byte Blaster、USB Blaster等。
选择下载(配置、烧录)方式:JTAG、AS等下载的目标文件:*.sof、*.pof勾选“Program/Configure”,CPLD器件可以选择加密器件点击Start按钮,开始下载五. 实验结果及结果分析多路选择器的代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY A ISPORT(h,i,j,k : IN STD_LOGIC;x,y : IN STD_LOGIC;z : OUT STD_LOGIC);END ENTITY A;ARCHITECTURE BHV OF A ISSIGNAL S :STD_LOGIC_VECTOR(1 DOWNTO 0); BEGINS <= x & y ;PROCESS(x,y)BEGINCASE (S) ISWHEN"00"=> z<=h;WHEN"01"=> z<=i;WHEN"10"=> z<=j;WHEN"11"=> z<=k;when OTHERS => NULL ;END CASE;END PROCESS;END ARCHITECTURE BHV ;多路选择器的编译:多路选择器的仿真:结果分析:a,b,c,d是4个输入端口,s1和s0为通道选择控制信号端,y为输出端。
数电实验四数据选择器及其应用实验报告一、实验目的1. 了解数据选择器的原理和设计方法;2. 学会使用74LS138和74LS151等多位数据选择器;3. 掌握数据选择器在逻辑电路中的应用。
二、实验器材和器件1. 万用表2. 示波器3. 计算机、PSpice、Multisim4. 实验电路板、电路图5. TTL集成电路:74LS138、74LS151三、实验原理数据选择器(Data Selector)是用于在多个数据中选择一个或者少数几个数据的组合逻辑电路,也叫做多路选择器(Multiplexer)。
数据选择器可用于控制信号的选择,实现对信号进行分时复用、多路数据选通等功能。
常见的数据选择器有8选1、16选1等。
常用的数据选择器有两种类型:1.位选型数据选择器2.数据选型数据选择器1. 位选型数据选择器位选型数据选择器是指选中或分配单元的控制时使用二进制码,用来控制选通信号的输入。
2. 数据选型数据选择器数据选型数据选择器是由一个或多个数据信号为输入,它们与二进制控制信号一起给出n个数据信号的任意线性组合输出,通过对选择信号的控制,能够把其中的一路信号送到输出端。
例如,74LS151是一种8选1数据选择器(DMUX),它有8个输入端和1个输出端,还有3个控制端。
其中,控制端包括1个使能端(ENABLE)和2个选择端(A、B)。
输入端用来输入8个数据信号,而输出端则输出选择信号。
控制端用来输入控制信号,用来选择哪个输入端的数据信号送到输出端。
对于74LS151,控制信号的值决定了从哪个输入信号读取数据。
A B EN Y0 0 1 I00 1 1 I11 0 1 I21 1 1 I30 0 0 Z对于74LS138,3个控制信号的值决定了哪个输入信号将被传输到输出端口。
当输出选通(ENABLE=1)时,选通输出的某一输入的高电平(或低电平)基本上与输入选通指定的控制端台,关心。
实验4.2:8位数字式LED显示器应用通过构建逻辑电路,使用74LS151实现8位数码管的控制。
《电子设计自动化》课程实验报告
(2)选择配置器件的工作方式。
(3)选择配置器件和编程方式。
(4)选择目标器件引脚端口状态。
四、全程综合与编译
(1)启动全程编译。
五、时序仿真
(1)打开波形编译器。
(2)设置仿真时间区域。
设定整个仿真域的时间为50us。
(3)波形文件存盘。
(4)将工程MULT4B的端口信号节点选入波形编译器中。
(5)总线数据格式设置和参数设置。
(6)编辑输入波形数据(输入激励信号),编辑好输入波形。
(7)仿真器参数设置。
(8)启动仿真器。
(9)观察仿真结果。
5.1.1 4选1多路选择器(Timing)
5.1.2 4选1多路选择器(Functional)
5.1.3 4选1多路选择器综合结果
将end time设为100ns,可得更加清晰的时延效果图:5.1.4 4选1多路选择器(Timing)
5.1.5 4选1多路选择器(Functional)
5.2.1 8位加法器(Timing)
5.2.2 8位加法器(Functional)
5.2.3 8位加法器综合结果
同理将end time设为100ns,可得更加清晰的时延效果图:5.2.4 8位加法器(Timing)
5.2.4 8位加法器(Functional)。
4选1多路选择器实验报告
一、实验目的
熟悉Quartus II的VHDL文本设计流程全过程,学习简单组合电路的设计、多层次电路设计、仿真和硬件测试。
二、实验原理
选择控制的信号s1和s0的数据类型为STD_LOGIC_VECTOR;当s1=‘0’,s0=‘0’;s1=‘0’,s0=‘1’;s1=‘1’,s0=‘0’和s1=‘1’,s0=‘1’时分别执行y<=a、y<=b、y<=c、y<=d。
三、实验任务
利用Quartus II完成4选1多路选择器的VHDL程序(分别用IF_THEN语句和CASE语句的表达方式)和仿真测试等步骤,给出仿真波形。
四、实验步骤
1、创建工程:运行Quartus Ⅱ软件,执行File=>New Project Wizard 命令,建立工程。
2、编辑VHDL文件:执行File => New 命令,弹出新建文件对话框,选择“VHDL File ”。
(1)用CASE语句的表达方式编写的VHDL程序及其仿真波形
①VHDL程序
②模拟仿真,得到仿真波形,如下图
(2)、用IF_THEN语句的表达方式编写的VHDL程序及其仿真波形
①VHDL程序
②模拟仿真,得到仿真波形,如下图
3、功能真值表
五、实验小结
通过四选一选择器的设计,使我们对CPLD设计过程有了初步的了解,并且基本熟悉掌握了CPLD设计过程。
学号: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.实验过程中切记避免心浮气躁,急于出结果,如果实在没思路可以看同学代码但一定要看懂在之上进行改变看结果。