四选一、四位比较器、加法器、计数器、巴克码发生器、七人表决器

合集下载

广工eda课程设计-七人表决器

广工eda课程设计-七人表决器

课程设计课程名称硬件描述语言与EDA技术课程设计题目名称学生学院材料与能源学院专业班级学号学生姓名指导教师陈先朝2017年6 月10日目录一、设计目的 (1)二、设计内容 (1)三、设计思路 (1)四、Verilog源程序 (1)五、管脚分配 (3)六、总结设计与体会 (3)七、参考文献 (4)七人表决器设计一、设计目的1.熟悉Quartus II软件的使用。

2..熟悉七人表决器的工作原理3.熟悉EDA开发的基本流程。

二、设计内容基础功能:设计一个七人表决器,当赞成人数大于等于四时显示表决通过,同时分别将投票中赞成人数和反对人数在数码管显示出来。

新加:清零键和通过时蜂鸣器响。

三、设计思路(1)使用一个模块完成所有功能。

(2)用alawys语句检测赞同和反对人数信号(A和B),再用两个独立共阴极数码管显示人数0到7。

(3)用if语句判断总人数是否超出7人(s)(4)用另一个clk实现蜂鸣器,因为原来的clk信号频率过低。

四、Verilog源程序module biaojue(clk_1,clk_2,yes,no,clear,buzz,A,B,result);input clk_1,clk_2,yes,no,clear;reg [4:0] s1,s2,s;output reg [7:0] A,B;output reg result,buzz;always @(posedge clk_1)begins=s1+s2;if(clear) begin s1=0; s2=0; result=0; endelse if (s>4'b0111) begin s1=0; s2=0; result=0; endelse if (yes) s1=s1+1;else if (no) s2=s2+1;else if (s1>=4'b0100) begin result=1 ; endelse begin s1=s1; s2=s2; result=result; endendalways @(clk_2)begin if (result) buzz=~clk_2;endalways @(s1)begincase(s1)4'b0000:A=8'h3f;4'b0001:A=8'h06;4'b0010:A=8'h5b;4'b0011:A=8'h4f;4'b0100:A=8'h66;4'b0101:A=8'h6d;4'b0110:A=8'h7d;4'b0111:A=8'h07;default:A=8'h00;endcaseendalways @(s2)begincase(s2)4'b0000:B=8'h3f;4'b0001:B=8'h06;4'b0010:B=8'h5b;4'b0011:B=8'h4f;4'b0100:B=8'h66;4'b0101:B=8'h6d;4'b0110:B=8'h7d;4'b0111:B=8'h07;default:B=8'h00;endcaseendendmodule五、管脚分配错误!六、总结设计与体会七、参考文献(1)自编指导书;(2)Verilog与EDA相关教程:a)王金明等编著,EDA技术与Verilog HDL设计,电子工业出版社,2013年;b)艾明晶编著,EDA技术实验教程,清华大学出版社,2014年;c)潘松等编著,EDA技术与Verilog HDL ,清华大学出版社,2013年;d)张春晶等编著,现代数字电子技术及Verilog设计,清华大学出版社,2014年;e)刘靳等编著,Verilog程序设计与EDA ,西安电子科技大学出版社,2012年;f)刘福奇主编,Verilog HDL 应用程序设计实例精讲,电子工业出版社,2012年;g)周润景等主编,基于Quartus Ⅱ的数字系统Verilog HDL设计实例详解,电子工业出版社,2010年。

7人表决控制电路

7人表决控制电路

摘要7人表决控制电路是一简单的输入信号检测与处理、产生输出控制信号的逻辑电路。

本文详细介绍了依据功能要求进行控制电路方案设计的过程,并在此基础上将整体电路分为输入信号处理模块,计时模块,译码模块,比较模块,显示模块等主要功能模块。

实现中采用Verilog HDL描述、ModelSim进行功能仿真、ISE进行逻辑综合和适配下载,最后在Altera的CycloneⅡ芯片EP2C8Q208C8上实现并完成测试。

在此过程中,完整地建立了测试平台,完成了功能和时序仿真,从而保证了设计的功能与时序的正确性。

关键词Verilog HDL;FPGA;仿真;综合;动态扫描目录引言 (1)1 总体电路结构设计 (2)1.1电路功能与性能 (2)1.2主要调度算法 (2)1.3电路接口 (3)1.4电路功能框图 (4)1.5验证方案 (5)2 模块设计 (6)2.1输入信号处理模块设计 (6)2.2计时模块设计 (8)2.3译码模块设计 (8)2.4比较模块设计 (9)2.5显示模块设计 (10)3 设计仿真与测试 (11)3.1仿真与测试的功能列表 (11)3.2仿真平台构建和仿真结果 (11)3.2.1 顶层仿真平台与激励 (11)3.2.2 电路功能仿真结果 (12)3.2.3 电路后仿真结果 (13)3.3测试环境的搭建与测试结果 (13)3.3.1 测试环境模拟 (13)3.3.2 电路测试结果 (14)4 电路约束与综合实现 ........................................................................ 错误!未定义书签。

4.1时序约束 (15)4.2引脚锁定约束 (16)4.3电路综合报告 (17)4.4设计实现与下载 (17)结论 (21)参考文献 (22)引言随着可编程器件FPGA/CPLD成本的逐渐降低,以及开发测试技术的日益普及,FPGA/CPLD以其较好的集成度和稳定性、可编程实现与升级的特点,在电子设计领域得到了越来越多的应用。

实验五 七人表决器的设计

实验五 七人表决器的设计

实验五七人表决器的设计一、实验目的1、掌握VHDL程序设计。

二、实验内容设计七人表决器,并在数码管上显示赞成票数。

三、实验仪器1、ZY11EDA13BE型实验箱通用编程模块,配置模块,开关按键模块,数码显示模块。

2、并口延长线,JTAG延长线。

3、安装MAX+PLUSII 10.2软件的PC机。

四、实验原理表决器是统计选票结果的工具,投票者通过拨位开关投票,表示赞成或反对,用循环语句完成赞成票计数过程,统计出赞成的票数之后,用CASE控制数码管显示赞成票数。

五、实验步骤:步骤1:输入VHDL程序,编译,仿真,锁定引脚并下载到目标芯片。

步骤2:验证设计结果。

六、实验报告1、列出数码管控制接口表(列出数码管显示数字的每段控制电平)。

七、思考题记录实验数据,列出七人表决器的真值表。

VHDL程序:library ieee;use ieee.std_logic_1164.all;ENTITY eda3 isPORT (men:in std_logic_vector(6 downto 0);a,b,c:out std_logic;output:out std_logic_vector(6 downto 0)); END entity eda3;ARCHITECTURE behave OF eda3 ISBEGINPROCESS(men)variable temp: integer range 0 to 7;BEGINtemp:=0;for i in 0 to 6 loopif(men(i)='1')thentemp:=temp+1;end if;end loop;case temp iswhen 0 => output <="1111110";when 1 => output <="0110000";when 2 => output <="1101101";when 3 => output <="1111001";when 4 => output <="0110011";when 5 => output <="1011011";when 6 => output <="1011111";when 7 => output <="1110000";when others => output <="0000000";end case;a <='1';b <='1';c <='1';END PROCESS;END architecture behave;。

实验2七人表决器概要

实验2七人表决器概要
实验2 七人表决器
1
ZY11EDA13BE实验箱简介
2
1. 实验箱俯视图
3
本实验箱采用先进的主板+适配板+扩展板的灵活 结构,并采用ALTERA公司ACEX系列3万门的 FPGA器件EP1K30QC208-2为核心处理芯片。提 供1968个寄存器,24576个存储位,30000个典型门 ,因此EP1K30非常适合于构建复杂逻辑功能和存 储功能。
8
电源的打开顺序是:先打开交流开关,再打开直流开关, 最后打开各个模块的控制开关。电源关掉的顺序刚 好相反。
9
4用配置/编程模块,可以使 用本模块对ALTERA、LATTICE、XILINX等国际著名P LD公司的几乎所有isp器件或FPGA/CPLD器件进行编程 下载并且能自动识别目标器件。
43
3)锁定后重新编译;
引脚重新定义后必须再通过编译器 “Compile”对文件重新进行编译,以 便将引脚信息编入下载文件中。此时 回到原来的设计文件“7vote.gdf”上 的输入输出信号旁都标有其对应的管 脚号。
44
编程下载
1)将25针下载电缆线一端插入LPT1(打印 机口即并行口),另一端连接到实验箱主板 系统的通用编程模块DB25接口,再用十针连 接线一端插入该模块JTAG下载接口固定不变, 另一端连接到主板系统的配置模块中目标芯 片的下载接口,打开系统主板电源。
4
2. 核心芯片俯视图
5
EP1K30包含一个嵌入式阵列来完成存储功能, 一个逻辑阵列来完成通用逻辑功能和众多的引 脚从而使其可以作为接口与系统组件有效连接。 做实验时切记不要用手触摸核心芯片A,静电可 能会损坏此贴片芯片。
6
3. 电源模块
7
电源模块包括3个开关,7个电压输出插孔。其 中交流开关用于打开从220V交流电源接入的内部 变压器,为实验箱提供基本工作电源。打开交流 开关,电源指示灯PL0亮,实验箱进入待机状态。 按钮开关APW1用于打开主板中模块工作电源,按 下APW1后,电源指示灯PL1亮,实验箱进入工作 状态,为系统提供+5V,+3.3V,+2.5V,+1.8V电源 。 按钮开关APW2用于打开+12V,-12V电源,按 下APW2后,电源指示灯PL2、PL3亮。

七人表决器设计

七人表决器设计

EDA 课程设计报告书课题名称 七人表决器设计姓 名 学 号 院、系、部 电气系 专 业 电子信息工程指导教师2013年12月3日※※※※※※※※※ ※※ ※※ ※※ ※※※※※※※※※2011级EDA课程设计七人表决器设计一、设计目的1.熟悉Quartus II软件的使用。

2.熟悉EDA开发的基本流程。

二、设计要求所谓表决器就是对于一个行为,由多个人投票,如果同意的票数过半,就认为此行为可行;否则如果否决的票数过半,则认为此行为无效。

七人表决器顾名思义就是由七个人来投票,当同意的票数大于或者等于4人时,则认为同意;反之,当否决的票数大于或者等于4人时,则认为不同意。

实验中用7个拨挡开关来表示七个人,当对应的拨挡开关输入为‘1’时,表示此人同意;否则若拨挡开关输入为‘0’时,则表示此人反对。

表决的结果用一个LED表示,若表决的结果为同意,则LED被点亮;否则,如果表决的结果为反对,则LED不会被点亮。

三、流程图设计四、程序设计(程序代码)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY asdfgh ISPORT(clk:IN STD_LOGIC;am:IN STD_LOGIC_VECTOR(6 DOWNTO 0);y:OUT STD_LOGIC;y1:OUT STD_LOGIC_VECTOR(6 DOWNTO 0));END ENTITY asdfgh;ARCHITECTURE one OF asdfgh ISSIGNAL q:STD_LOGIC;SIGNAL q1:STD_LOGIC_VECTOR(6 DOWNTO 0);BEGINPROCESS(am)VARIABLE shu:INTEGER;BEGINshu:=0;IF clk'EVENT AND clk='1' THENIF am(0)='1' THEN shu:=shu+1;END IF;IF am(1)='1' THEN shu:=shu+1;END IF;IF am(2)='1' THEN shu:=shu+1;END IF;IF am(3)='1' THEN shu:=shu+1;END IF;IF am(4)='1' THEN shu:=shu+1;END IF;IF am(5)='1' THEN shu:=shu+1;END IF;IF am(6)='1' THEN shu:=shu+1;END IF;CASE shu ISWHEN 0 => q<='0';q1<="0111111";WHEN 1 => q<='0';q1<="0000110";WHEN 2 => q<='0';q1<="1011011";WHEN 3 => q<='0';q1<="1001111";WHEN 4 => q<='1';q1<="1100110";WHEN 5 => q<='1';q1<="1101101";WHEN 6 => q<='1';q1<="1111101";WHEN 7 => q<='1';q1<="0000111";WHEN OTHERS => q<='Z';q1<="ZZZZZZZ";END CASE;y<=q;y1<=q1;END IF;END PROCESS;END ARCHITECTURE one;五、仿真图及结果图(结果说明)当a[6]-a[0]依次输入为1101001时,则数码管y1[6]-y1[0]为1100110,即数码管显示为4,LED灯即为高电平,即为亮。

课程设计报告---七人表决器设计

课程设计报告---七人表决器设计

电子综合设计题目七人抢答器设计学院计信学院专业电子信息工程班级学生姓名指导教师2012 年 6 月18 日一、设计原理所谓表决器就是对于一个行为,由多个人投票,如果同意的票数过半,就认为此行为可行;否则如果否决的票数过半,则认为此行为无效。

七人表决器顾名思义就是由七个人来投票,当同意的票数大于或者等于 4 时,则认为同意;反之,当否决的票数大于或者等于4 时,则认为不同意。

二、分析讨论七人表决器这一功能可以用C语言、汇编语言或VHDL编程后下载到单片机上实现,不过用VHDL编程不仅技术含量高而且能让我们更熟练的掌握和使用quartus软件的步骤和方法。

所以我们是采用VHDL编程来实现的。

三、设计准备根据七人表决器的原理,我们的准备过程如下:1、使用Altera的Cyclone II器件,所用的芯片为EP2C35F672C8,开发平台为quartus II。

2、使用七个拨动开关(K1~K7)作为输入变量来表示七个投票人,当拨动开关输入为‘1’时,表示对应的人投同意票,否则当拨动开关输入为‘0’时,表示对应的人投反对票。

3、使用一个七段数码管来显示同意的票数。

4、使用七个LED(LED2~LED8)用来分别记录投票人的个人投票结果,当LED亮起时就表示对应的投票人同意,否则就表示不同意。

5、使用一个LED(LED1)来表示最终的投票结果,当LED1亮起时表示表决通过,不亮时就表示表决不通过。

6、使用一个拨动开关(K8)来达到复位要求,即需要复位时能够达到同时清零数码管的显示结果和LED的显示情况。

7、软件仿真成功后,通过专用的连接线再用硬件进行测试,并将硬件测试的结果以照片的形式做记录。

四、设计思路根据程序设计的一般步骤,我们首先设计出七人表决器的系统框图,也就是说先要确定一个大的设计方向;然后再根据设计要求并结合系统框图来设计程序流程图;由程序流程图来编写VHDL程序,并画出表决器的外围引脚图;再将程序用软件仿真,软件仿真成功后进行硬件测试。

实验一七人表决器实验指导书

实验一七人表决器实验指导书

EDA实验指导书(EL-SOPC4000实验箱)指导老师:姚晓通电工电子实验中心七人表决器一、实验目的1.了解表决器的原理。

2.熟悉QuartusII软件建立工程,图形输入法进行设计。

3.熟悉整个开发的流程,初步使用EL-SOPC4000实验箱。

二、实验原理所谓表决器就是对于一个行为,由多个人投票,如果同意的票数过半,就认为此行为可行;否则如果否决的票数过半,则认为此行为无效。

七人表决器顾名思义就是由七个人来投票,当同意的票数大于或者等于4人时,则认为同意;反之,当否决的票数大于或者等于4人时,则认为不同意。

实验中用7个拨挡开关来表示七个人,当对应的拨挡开关输入为‘1’时,表示此人同意;否则若拨挡开关输入为‘0’时,则表示此人反对。

表决的结果用一个LED表示,若表决的结果为同意,则LED被点亮;否则,如果表决的结果为反对,则LED不会被点亮。

根据电路状态转换表→设计数值输出→运用门电路设计电路图→仿真运行→实现七人多数表决器的设计。

电路状态转换图:根据电路状态转换图设计电路,用一个半加器实现设计一个全加器,运用4个全加器实现七人表决器的设计。

(2)半加器电路设计:图 1 半加器的原理图(3)全加器电路设计:图 2 全加器的原理图(4)七人表决器电路设计:图3 七人表决器的原理图三、实验内容(1)根据设计要求,绘制出电路状态转换图,实现七人四票制表决。

(2)根据电路状态转换图,用门电路设计出七人表决器。

(3)运用半加器,全加器,实现表决器的设计。

(4)逻辑设计要求:用七个开关作为表决器的七个输入变量,逻辑“1”时表示“赞同”,逻辑“0”时表示“不赞同”,用发光二极管作为输出指令,输出逻辑“1”表示“通过”;输出逻辑“0”时表示“不通过”。

当表决器的七个输入变量中的4个以上(包含4个)为“1”时,则表决器输出为“1”;否则为“0”。

通过状态用LED1表示,未通过用LED2表示。

四、实验步骤1.首先打开QuartusII软件,新建工程voter7。

实验五--4选1多路复用器和4位比较器设计与仿真

实验五--4选1多路复用器和4位比较器设计与仿真

实验五 4选1多路复用器和4位比较器设计与仿真班级信息安全一班姓名邓一蕾学号2指导老师袁文澹一、实验目的1.熟悉QuartusⅡ仿真软件的基本操作,并用VHDL语言和逻辑图设计四选一多路选择器,4位比较器。

二、实验内容1.参照芯片74LS153的电路结构,用逻辑图和VHDL语言设计四选一多路复用器;2.从QuartusⅡ中取7485器件(比较器)进行仿真与分析;用VHDL语言设计4位比较器,接着进行仿真与分析,电路逻辑结构参照芯片74x85三.实验原理1.(1)四选一多路选择器逻辑电路的原理4选1多路选择器,GN为使能端,AB为选择通道控制端,c0,c1,c2,c3为数据输入端.Y为输出端。

当GN为1时,y=0;当GN为0,AB=00时,Y为c0的值;当GN为0,AB=01时,Y为c1的值;当GN为0,AB=10时,Y为c2的值;当GN为0,AB=11时,Y为c3的值;(2)通过实验实现逻辑的原理2.(1)4位比较器的逻辑电路图A0,B0,A1,B1,A2,B2,A3,B3为相比较数输入端,ALBI,AEBI,AGBI为级联输入端ALBO,AEBO,AGBO为比较输出端。

2)通过实验实现逻辑的逻辑功能表为四、实验方法与步骤实验方法:采用基于FPGA进行数字逻辑电路设计的方法。

采用的软件工具是QuartusII软件仿真平台,采用的硬件平台是Altera EPF10K20TI144_4的FPGA试验箱。

1.4选1多路选择器实验步骤:编写源代码。

打开QuartusⅡ软件平台,点击File中得New建立一个文件。

编写的文件名与实体名一致,点击 as以“.vhd”为扩展名存盘文件。

2、按照实验箱上FPGA的芯片名更改编程芯片的设置。

操作是点击Assign/Device,选取芯片的类型。

建议选“Altera的EPF10K20TI144_4”3、编译与调试。

确定源代码文件为当前工程文件,点击Complier进行文件编译。

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

EDA实验报告姓名:学号:班级:实验14选1数据选择器的设计一、实验目的1.学习EDA软件的基本操作。

2.学习使用原理图进行设计输入。

3.初步掌握器件设计输入、编译、仿真和编程的过程。

4.学习实验开发系统的使用方法。

二、实验仪器与器材1.EDA开发软件一套2.微机一台3.实验开发系统一台4.打印机一台三、实验说明本实验通过使用基本门电路完成4选1数据选择器的设计,初步掌握EDA设计方法中的设计输入、编译、综合、仿真和编程的过程。

实验结果可通过实验开发系统验证,在实验开发系统上选择高、低电平开关作为输入,选择发光二极管显示输出电平值。

本实验使用Quartus II 软件作为设计工具,要求熟悉Quartus II 软件的使用环境和基本操作,如设计输入、编译和适配的过程等。

实验中的设计文件要求用原理图方法输入,实验时,注意原理图编辑器的使用方法。

例如,元件、连线、网络名的放置方法和放大、缩小、存盘、退出等命令的使用。

学会管脚锁定以及编程下载的方法等。

四、实验要求1.完成4选1数据选择器的原理图输入并进行编译;2.对设计的电路进行仿真验证;3.编程下载并在实验开发系统上验证设计结果。

五、实验结果4选1数据选择器的原理图:仿真波形图:管脚分配:实验2 四位比较器一、实验目的1.设计四位二进制码比较器,并在实验开发系统上验证。

2.学习层次化设计方法。

二、实验仪器与器材1.EDA 开发软件 一套2.微机 一台3.实验开发系统 一台4.打印机 一台5.其它器件与材料 若干三、实验说明本实验实现两个4位二进制码的比较器,输入为两个4位二进制码0123A A A A 和0123B B B B ,输出为M (A=B ),G (A>B )和L (A<B )(如图所示)。

用高低电平开关作为输入,发光二极管作为输出,具体管脚安排可根据试验系统的实际情况自行定义。

四、实验要求1.用硬件描述语言编写四位二进制码 比较器的源文件; 2.对设计进行仿真验证; 3.编程下载并在实验开发系统上进行 硬件验证。

四位比较器功能框图五、实验结果四位比较器VHDL 源文件:library ieee;use ieee.std_logic_1164.all;entity comp4 isport( A3,A2,A1,A0: in std_logic;B3,B2,B1,B0: in std_logic;G,M,L: out std_logic);end comp4;architecture behave of comp4 isbeginp1: process(A3,A2,A1,A0,B3,B2,B1,B0)variable comb1,comb2: std_logic_vector(3 downto 0);begincomb1:=A3&A2&A1&A0;3A 2A 1A 0A B B Bcomb2:=B3&B2&B1&B0;if(comb1>com2) then G<=’1’; M<=’0’; L<=’0’;elsif(comb1<comb2) then M<=’1’; G<=’0’; L<=’0’;else L<=’1’; G<=’0’; M<=’0’;end if;end process p1;end behave;仿真波形图:管脚分配:试验3 并行加法器设计一、试验目的1.设计一个4位加法器。

2.体会用VHDL进行逻辑描述的优点。

3,熟悉层次化设计方法。

二、试验仪器与器材1.EDA开发软件一套2.微机一台3.试验开发系统一台4.打印机一台5.其他器材和材料若干三、试验说明本试验实现一个4位二进制数加法器,其功能框图如图所示。

试验时用高低电平开关作为输入,用数码管作为输出(或用发光二极管),管脚锁定可根据试验系统自行安排。

四、实验要求1234五、试验结果4library ieee;entity adder4 iscin: in std_logic_vector(3 downto 0);sum: out std_logic_vector(3 downto 0);count: out std_logic);end adder4;architecture behavioral of adder4 isbeginp1:process(a,b,cin)variable vsum: std_logic_vector(3 downto 0);variable carry: std_logic;begincarry:=cin;for i in 0 to 3 loopvsum(i):=(a(i) xor b(i)) xor carry;carry:=(a(i) and b(i)) or (carry and (a(i) or b(i)));end loop;sum<=vsum;count<=carry; co全加器功能框图end process p1;end behavioral;仿真波形图:管脚分配:实验4 计数器设计一、实验目的计数器是实际中最为常用的时序电路模块之一,本实验的主要目的是掌握使用HDL描述计数器类型模块的基本方法。

二、实验仪器与器材1.EDA开发软件一套2.微机一台3.实验开发系统一台4.打印机一台5.其他器材与材料若干三、实验说明计数器是数字电路系统中最重要的功能模块之一,设计时可以采用原理图或HDL语言完成。

下载验证时的计数时钟可选连续或单脉冲,并用数码管显示计数值。

四、实验要求1.设计一个带有计数允许输入端、复位输入端和进位输入端的十进制计数器。

2.编制仿真测试文件,并进行功能仿真。

3.下载并验证计数器功能。

4.为上述设计建立元件符号。

5.在上述基础上分别设计按8421BCD码和二进制计数的100进制同步计数器。

五、实验结果十进制计数器程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity counter10 isport(en,reset,clk:in std_logic;q:buffer std_logic_vector(3 downto 0);co:out std_logic);end counter10;architecture behav of counter10 isbeginprocess(clk,en)beginif clk'event and clk='1' thenif reset='1' then q<="0000";elsif en='1' thenif q<"1001" then q<=q+'1';else q<="0000";end if;end if;end if;end process;co<='1' when q="1001" else '0';end behav;仿真波形图:管脚分配:4_7译码器程序:library ieee;use ieee.std_logic_1164.all;entity decoder4_7 isport( insign: in std_logic_vector (3 downto 0);outsign: out std_logic_vector (6 downto 0)); end decoder4_7;architecture behave of decoder4_7 isbeginprocess(insign)begincase insign iswhen"0000"=>outsign<="0000001";when "0001"=>outsign<="1001111";when "0010"=>outsign<="0010010";when "0011"=>outsign<="0000110";when "0100"=>outsign<="1001100";when "0101"=>outsign<="0100100";when "0110"=>outsign<="1100000";when "0111"=>outsign<="0001111";when "1000"=>outsign<="0000000";when "1001"=>outsign<="0001100";when OTHERS=>outsign<="1111111";end case;end process;end behave ;100进制计数器原理图:仿真波形图:管脚分配:实验5 巴克码发生器一、实验目的1.实现一个在通信领域中经常使用的巴克码发生器。

2.掌握用大规模可编程逻辑器件实现时序电路的方法。

二、实验仪器与器材1.EDA开发软件一套2.微机一台3.实验开发系统一台4.打印机一台5.其它器件与材料若干三、实验说明巴克码发生器在数据通信、雷达和遥控领域有相当广泛的应用。

它能自动产生周期性的序列码。

本实验要求产生的序列码信号为(1110010),可以用寄存器或同步时序电路实现。

为了能够通过实验开发系统验证试验结果,可以使用两个输入端,其中一个输出端同时输出巴克码,另一个输出端输出节拍。

巴克码发生器的功能框图如图所示。

四、实验要求1.写出全部设计文件。

2.编写测试向量,进行功能仿真。

3.下载并用实验板验证。

五、实验结果巴克码发生器程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity back isport(clk,reset:in std_logic;dout1,dout2:out std_logic);end back;architecture behave of back issignal count7:integer range 0 to 6;beginprocess(clk,reset)beginif reset='1' then count7<=0;elsif clk'event and clk='1' thenif count7<6 thencount7<=count7+1;else count7<=0;end if;end if;dout2<=clk;end process;process(count7)begincase count7 iswhen 0=>dout1<='1';when 1=>dout1<='1';when 2=>dout1<='1';when 3=>dout1<='0';when 4=>dout1<='0';when 5=>dout1<='1';when 6=>dout1<='0';when others=>dout1<='0';end case;end process;end behave;仿真波形图:管脚分配:用VHDL设计七人表决器实验原理用个开关作为表决器的7个输入变量,输入变量为‘1’时表示“赞同”;输入变量为‘0’时表示不赞同。

相关文档
最新文档