实验一 十进制计数器的设计与仿真 电子科技大学
数电实验报告十进制计数器设计
else if (EN) begin
if (!LOAD) Q1 <= DATA;
else if (Q1<9) Q1 <= Q1+1;
else Q1 <= 4'b0000;
end
end
always @(Q1)
if (Q1==4'h9) COUT = 1'b1;
else COUT = 1'b0;
Endmodule
二、仿真波形
三、电路图
四、引脚配置(约束文件)
五、思考与探索
1.本试验没有连接到实验板测试,不过可以将输出信号接至LED灯口,发光为高电平,根据发光的顺序判断计数器是否正常工作
2.遇到的问题,时钟信号上升沿和下降沿判断错误
3.二进制码->格雷码:从最右边该位的值,最左边一位不变
input EN;
input RST;
input LOAD;
input [3:0] DATA;
output [3:0] DOUT;
output COUT;
reg [3:0] Q1 ;
reg COUT ;
assign DOUT = Q1;
always @(posedge CLK or negedge RST) begin
实验报告
2017年12月7日成绩:
姓名
学号
班级
专业
课程名称
《数字电路实验》
任课老师
指导老师
机位号
实验序号
12
实验名称
十进制计数器设计
实验时间
2017.12.7
实验地点
一教225
十进制计数器实验报告
when 4=>seg7<="1100110";
when 5=>seg7<="1101101";
when 6=>seg7<="1111101";
when 7=>seg7<="0000111";
when 8=>seg7<="1111111";
when 9=>seg7<="1100111";
2,建完工程后,再建一个VHDL FILE,打开VHDL编辑器对话框.
3,按照实验原理和自己的想法,在VHDL编辑窗口编写Verilog程序.
4,编写完Verilog程序后,保存起来.注意顶体名跟程序实体名要一致.
5,对自己编写的Verilog程序进行编译并仿真,对程序的错误进行修改.
6,编译仿真无误后,进行管脚分配.分配完成后,再进行全编译一次,以使管脚分配生效.
signal seg7:std_logic_vector(6 downto 0);
signal countnum: integer range 0 to 9;
signal clk_1k: std_logic;
begin
r<="011111";
process(clk)
variable cnt1:integer range 0 to 5000;
end if;
else
cnt1:=cnt1+1;
end if;
end if;
end process;
模拟集成电路十进制异步计数器设计及仿真课程设计报告
模拟集成电路十进制异步计数器设计及仿真课程设计报告“模拟集成电路十进制异步计数器设计及仿真课程设计报告”第一节:引言作为现代电子技术的重要组成部分,模拟集成电路在各种领域中发挥着重要作用。
其中,十进制异步计数器作为模拟集成电路中的一个重要组成部分,具有着广泛的应用前景。
本篇文章将围绕着模拟集成电路十进制异步计数器的设计和仿真展开,探讨其在电子技术中的重要性和应用价值。
第二节:理论基础在深入探讨模拟集成电路十进制异步计数器的设计前,有必要首先了解其理论基础。
十进制异步计数器是一种能够按照十进制计数规律进行计数的电路,并能够在输入脉冲信号的触发下进行递增。
其设计原理涉及到逻辑门的连接和状态转换等内容,需要深入理解和把握。
第三节:设计流程在进行模拟集成电路十进制异步计数器的设计时,需要遵循一定的设计流程。
首先是对其工作原理进行深入理解,并根据要求进行逻辑电路图的绘制。
接着是选择适当的集成电路器件,并进行电路连接和布线设计。
最后则是进行仿真验证和性能测试,以确保其符合设计要求。
第四节:实践应用模拟集成电路十进制异步计数器在实际应用中有着广泛的应用价值。
比如在数字显示系统、计数器系统和数字控制系统中都能够发挥作用。
其设计与实践能够帮助学生更好地理解电子技术的原理,并为日后的工程设计工作打下良好的基础。
第五节:个人观点从我个人的角度来看,模拟集成电路十进制异步计数器的设计和仿真课程设计报告是十分有价值的。
通过深入学习和理解其原理和应用,不仅能够提高我们对电子技术的认识,还能够培养我们的动手能力和实践能力。
这对于我们未来的工程技术学习和研究工作是十分有益的。
总结与回顾通过本文的介绍,我们深入了解了模拟集成电路十进制异步计数器的设计和仿真课程设计报告的重要性和应用价值。
也对其在理论基础、设计流程和实际应用方面有了深入的认识。
这将为我们今后的学习和工程设计工作提供重要的借鉴和指导。
在本篇文章中,我们深入探讨了模拟集成电路十进制异步计数器的设计和仿真课程设计报告,介绍了其在电子技术中的重要性和应用价值。
实验一基于原理图的十进制计数器
seg7A
seg7
2.十进制计数 器的设计
调用ISE软件自带的“Counter”库中的 十进制计数器CD4CE。
CD4CE是一个同步十进制器,输入有异 步清零控制端CLR、工作使能控制端CE和 时钟输入端C,输出有BCD码计数值输出 端Q3~Q0,进位输出端TC和输出状态标 志位CEO。
2
生成下载配置文件。
准备硬件开发板,
3
连接外围显示模块,
连接好下载线。
实验报告
1 叙述实验的具体 步骤。
分析并说明本次
2 实验所完成的工 程文件结构关系。
记录本实验中所
3 完成的FPGA资 源耗用情况和运 行时钟频率。
4 如何分析仿真软 件运行出的结果?
在仿真激励信号 的设计上组合电
5 路和时序电路分 别关注的重点是 什么?为什么?
请同学们抓紧时间进 行实验!
单/击/此/处/添/加/副/标/题/内/容
NET "clk" LOC = P57 | IOSTANDARD = LVCMOS33 |
CLOCK_DEDICATED_ROUTE = FALSE;
NET "ce" LOC =P32 | IOSTANDARD = LVCMOS33;
NET "clr" LOC = P20 | IOSTANDARD = LVCMOS33;
时钟端使能控制端
异步清零端
02
十进制计数 器
03
七段数码管 显示译码器
七段数码管属于数码管的一种,是由7段二极管组成。
1.七段数码管 译码器的设计
按发光二极管单元衔接方式分为共阳极数码管和共阳极数码管。本实验使用共阳数 码管。它是指将一切发光二极管的阳极接到一同构成公共阳极(COM)的数码管。 共阳数码管在应用时应将公共极COM接到电源VCC上,当某一字段发光二极管的 阴极为低电平相应字段就点亮,当某一字段的阴极为高电平相应字段就不亮。
实验一 十进制计数器的设计与仿真 电子科技大学
实验一十进制计数器的设计与仿真一、实验目的熟悉QuartusⅡ的Verilog HDL文本设计流程全过程,学习计数器的设计、仿真和硬件测试。
二、实验原理该程序设计是带有异步复位、同步计数使能、可预置型功能全面的十进制计数器。
(1)第一个条件句if(!RST)构成的RST接于寄存器下方的异步清0端CLR。
(2)第二个条件句if(EN)构成EN接于寄存器左侧的使能端ENA。
(3)第三个条件句if(LODA)构成LODA接于上面的多路选择器,使之控制选择来自DATA的数据,还是来自另一多路选择器的数据。
(4)不完整的条件语句与语句Q1<=Q1+1构成了加1加法器和4位寄存器。
(5)语句(Q1<9)构成了小于比较器,比较器的输出信号控制左侧多路选择器。
(6)第二个过程语句构成了纯组合电路模块,即一个等式比较器,作进位输出。
三、实验设备与软件平台实验设备:计算机、FPGA硬件平台是Cyclone系列FPGA软件平台:Quartus II 9.1 (32-Bit)、5E+系统四、实验内容编写Verilog程序描述一个电路,实现以下功能:设计带有异步复位、同步计数使能和可预置型的十进制计数器。
具有5个输入端口(CLK、RST、EN、LOAD、DATA)。
CLK输入时钟信号;RST 起异步复位作用,RST=0,复位;EN是时钟使能,EN=1,允许加载或计数;LOAD 是数据加载控制,LOAD=0,向内部寄存器加载数据;DATA是4位并行加载的数据。
有两个输出端口(DOUT和COUT)。
DOUT的位宽为4,输出计数值,从0到9;COUT是输出进位标志,位宽为1,每当DOUT为9时输出一个高电平脉冲。
五、实验步骤设计程序:module CNT10 (CLK,RST,EN,LOAD,COUT,DOUT,DATA);input CLK;input EN;input RST;input LOAD;input [3:0] DATA;output [3:0] DOUT;output COUT;reg [3:0] Q1 ;reg COUT ;assign DOUT = Q1;always @(posedge CLK or negedge RST) begin if (!RST) Q1 <= 0;else if (EN) beginif (!LOAD) Q1 <= DATA;else if (Q1<9) Q1 <= Q1+1;else Q1 <= 4'b0000;endendalways @(Q1)if (Q1==4'h9) COUT = 1'b1;else COUT = 1'b0;Endmodule设计流程:1.编辑和输入设计文件(1)、新建一个文件夹如D:\CNT10 ,本工程所有文件将存放在此目录中。
十进制计数器的制作与调试
任务 十进制计数器的制作与调试
3. 同步RS触发器的主要特点
(1)时钟控制。在CP=1期间接收输入 信号,CP=0时状态保持不变,与基本RS 触发器相比,对触发器状态的转变增加了 时钟控制。
(2)R、S之间有约束条件。不能允许出 现R和S同时为1的情况,否则会使触发器 处于不确定的状态。
任务 十进制计数器的制作与调试
(一) 二进制译码器
二进制译码器是将输入的二进制代码“翻译”成 为其原来所对应信息的组合逻辑电路。它有n个输入端, 2n个输出端。一般称为n线-2n线译码器,且对应于输 入代码的每一种状态,2n个输出中只有一个为1(或为 0),其余全为0(或为1)。图4-2所示为3线-8线译码器 74LS138的引脚排列及惯用图形符号。
图4-8 74LS48与共阴极数码管相连
任务 十进制计数器的制作与调试
活动
小组成员讨论译码 电路的实现方法,以译 码器74LS248为例来制 作一个0~9一位数字的 显示电路。首先了解 74LS248芯片的结构和 功能,其惯用图形符号 如图4-9所示。
图4-9 74LS248的惯用图形符号
任务 十进制计数器的制作与调试
任务 十进制计数器的制作与调试
共阴极显示译码器有7448、74LS48和74C48等,其特点是: 有效高电平输出;内部有升压电阻,因而无须外部电阻;试灯输 入;前、后沿零灭灯控制;显示译码器有灯光调节能力;输出最 大电压为 5.5 V,吸收电流为6 mA。共阳极显示译码器7446的引 脚排列及惯用图形符号如图4-5所示。其功能表见表4-3。从表中 可以看到,当输入信号DCBA为0000~1001时,分别显示0~9数 字信号;当输入1010~1110时,显示非数字信号,当输入1111时, 7个显示段全暗。
实验报告(十进制计数器)
实验四:十进制计数器实验报告
实验日期:2014.4.15 学生姓名:陆小辉(学号:1228402025) 指导老师:黄秋萍 计数器是数字系统中使用最多的时序逻辑电路,其应用非常广泛。
计数器不仅能应用于对时钟脉冲计数,而且应用于定势、分频、产生节拍脉冲和脉冲序列以及进行数字运算等。
一、设计要求:
设计十进制计数器,完成相应功能。
可预置数、可加/减。
二、设计代码如下:
input clk,ldn,clean,enp,ent; input[3:0] i; output [3:0]q; output rco; reg rco; reg [3:0] q; always@(posedge clk or negedge clean) begin if (~clean) begin q=0;rco=0;end else begin casex ({ldn,enp,ent}) 3'b0xx:q=i; 3'b101:if (q>0) q=q-1;else q=9;
3'b110:if (q<9) q=q+1;else begin q=0;rco=1;end default:q=q; endcase end end endmodule
四、仿真波形如下:
续图。
十进制计数与显示电路的设计与仿真
摘要:计数器的功能是记忆脉冲的个数,它是数字系统中应用最广泛的基本时序逻辑构件。
计数器在微型计算机系统中的主要作用就是为CPU和I/O设备提供实时时钟,以实现定时中断、定时检测、定时扫描、定时显示等定时控制,或者对外部事件进行计数。
一般的微机系统和微机应用系统中均配置了定时器/计数器电路,它既可当作计数器作用,又可当作定时器使用,其基本的工作原理就是"减1"计数。
计数器:CLK输入脉冲是一个非周期事件计数脉冲,当计算单元为零时,OUT输出一个脉冲信号,以示计数完毕。
以下是关于十进制计数器的几种设计方法。
1.计数器计数器是数字系统中用的较多的基本逻辑器件。
它不仅能记录输入时钟脉冲的个数,还可以实现分频,定时,产生节拍脉冲和脉冲序列等。
例如,计算机中的时序发生器,分频器,指令计数器等都要使用计数器。
计数器的种类很多。
按时序脉冲输入方式的不同,可分为同步计数器和异步计数器;按进位体制不同可以分为二进制计数器和非二进制计数器;按计数器的数字增减趋势的不同,可分为加法计数器,减法计数器和可逆计数器。
同步计数器是指计数器内所有的触发器共同使用同一个输入的时钟脉冲信号,在同一个时刻翻转,有计数速度快的特点。
异步计数器是指计数器内各触发器的输入时钟信号的来源不同,各电路的翻转时刻也不一样,因此计数速度较慢在非二进制计数器中,最常用的是十进制计数器,其他进制计数器习惯上称为任意进制计数器。
非二进制计数器也有异步和同步,加减和可逆计数器的各种类型。
2.集成计数器集成计数器在一些简单小型数字系统中仍被广泛有用,因为他们具有体积小,功耗低,功能灵活等优点。
集成计数器的类型很多,表1列举了若干集成计数器产品。
表1 几种集成计数器CP脉冲引入方式型号计数模式清零方式预置数方式同步741614位二进制加法异步(低电平)同步74HC1614位二进制加法异步(低电平)同步74HCT1614位二进制加法异步(低电平)同步74LS191单时钟4位二进制可逆无异步74LS193双时钟4位二进制可逆异步(高电平)异步74160 十进制加法异步(低电平)同步74LS190单时钟十进制可逆无异步异步74LS293双时钟4位二进制加法异步无74LS290二-五-十进制加法异步异步3常用计数器74161的功能74161是4位二进制同步加计数器。
十进制计数器
电子科学与技术1702
目的
要求
1.QuartusⅡ设计输入
2.十进制计数器的VHDL设计
3.编译
4.波形仿真
5.引脚锁定
仪器
设备
电脑、Quar下的New Project Wizard建立新工程。
2.输入源文件,选择菜单“File”➡“New”,在弹出的对话框中选择源文件类型,工程中出现了一个xxx.vhd的文件。
3.输入程序代码。如图:
4.编译。
5.仿真,查看波形。选择“File”➡“New”➡“Vector Waveform File”.如图:
6.查看原理图。
结论
认识了检测上升沿语句并运用它
学会了if语句的运行并运用
成绩
第四阶段实验成绩班级排名为13/40
郑州工商学院
实验报告册
所属课程名称:EDA技术及应用
院 部:工学院
专 业:电子科学与技术
班级:1702班
学号:170508070246
姓名:刘应许
指导教师:靳世红
课程名称
EDA技术及应用
项目名称
十进制计数器
实验教室
实验一区409
实验台号
8
实验日期
2019年12月19日
学生姓名
刘应许
学生学号
170508070246
实验6_计数器的设计与仿真
74162的管脚图和真值表
LDN是置数端,CLRN是清零端,都是低电 平有效 DCBA是输入端,RCO是进位输出端 ENT和ENP是使能控制端十进制计数源自的原理图十进制计数器的波形图
End time=2.4us,Grid size=50ns clrn、ldn、ent、enp的低电平长度分别为 100、200、300、400ns in[3..0]=2
七进制计数器的原理图
七进制计数器的波形图
End time=2.4us,Grid size=50ns ldn、ent、enp的低电平长度分别为100、 200、300ns in[3..0]=0
《计算机组成原理》
实验6:计数器的设计与仿真
实验内容
设计一个十进制计数器 设计一个N进制计数器
实验目的
了解时序电路的经典设计方法 了解通用同步计数器 了解任意进制计数器的设计方法
十进制计数器的实验原理
在日常生活上,十进制的计数器是最方便使用的 计数器。74162就是具有4位十进制计数和同步 置数及同步清零的十进制计数器,它是以二进制 自然数顺序,由“0000”计数至“1001”。
N进制计数器的实验原理
由于CLRN端同步清零,因此可以用输出的 反馈信号来进行清零,实现任意进制计数
例如:需要做7进制计数,即0-6进行计数,将 6转换为二进制数是0110,即QB和QC同时为1的 时候进行反馈清零,在下一个clk脉冲上升沿到 来的时候进行清零 即clrn=nand2(QB,QC)
实验一 两位十进制计数器
实验一两位十进制计数器一实验目的二实验要求三实验内容及步骤(1)两位十进制计数器项目的建立1 新建一个文件夹作为工程项目的记录2 创建工程项目运行QUARTUS2软件,建立工程,方法是选择file菜单下执行new project wizard 命令(2)基于QUARTUS2的两位十进制计数器的原理图设计建立原理图文件1 运行QUARTUS2软件,选择file菜单执行new。
的命令2 选择block diagram/schematic file 流程图和原理图文件,单击ok进入原理图编辑界面,即建立一个空的原理图文件3元件的选择和放置在原理图编辑区单击鼠标右键或双击鼠标左键,在对应的Name输入相应的名字,即可调出。
选择Repeat-insert mode 即可重复调用4修改输入输出元件(引脚)属性双击任意一个元件,即可修改元件参数5 电路图连线注意网络标号的放置,用鼠标单击线条,则该线处于选中状态,再按右键,选择properties,即可填入网络标号6 保存原理图文件Ctrl+s 或点击file菜单中的save保存,就生成了原理图文件7原理图基于QUARTUS2的两位十进制计数器的编译QUARTUS2的编译方法是选中processing菜单的start compliation 项或者单击快捷键按钮进行编译基于QUARTUS2两位十进制计数器的功能测试1 新建波形文件选择菜单file中的new。
命令,选择verification/debugging中的vector waveform file方式后单击ok按键,进入QUARTUS2波形编辑器在name栏下的空白处双击鼠标,出现insert node or bus对话框,单击node finder 按钮,选择引脚2 设置仿真时间区域在edit菜单中选择end time 项,在弹出的,设置整个仿真的时间,单击ok执行edit菜单中的grid size 。
EDA实验报告:十进制计数器
Select SEG7 O/P Q : buffer STD_LOGIC_VECTOR( 3 DOWNTO 0); --
3
重庆三峡学院实验报告纸
Number Display Signal M : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)
); END jishuqi; ARCHITECTURE a OF jishuqi IS
A. 时钟信号(CLK)为上升沿时,计数一次; B. 十进制数计数 0~9,满 9 进 1; 2.D 触发器是 CMOS 数字集成电路单元中时序逻辑电路中的重要组成部 分之一;D 触发器属于时钟控制触发,时钟信号为高电平时触发器改变 输出状态。 3.当时钟信号(CLK)为高电平,且 CLR 也为高电平时,计数清 0,CLR 是高电平清 0 还是低电平清 0 是由程序指定; 4.当使能信号 EN 为低电平的时候,保持;EN 是高电平还是低电平保持 是由程序指定;
重庆三峡学院实验报告纸当时钟信号clk为高电平且clr也为高电平时计数清0并重新开始计数
实验报告
课程名称
EDA 原理及应用
实验名称
十进制计数器
实验类型 验证 系别 年级班别 级 班 学生姓名 实验教师 编号
学时 专业 开出学期 学号 成绩
2 第期
年月 日
一、实验目的
重庆三峡学院实验报告纸
1. 熟悉数码管的工作原理;
6
重庆三峡学院实验报告纸
2. 将未分配的管脚置为三态输入: 【Assignments】→【Device…】 →【Device】 →【Device & Pin
Options…】 →【Unused Pins】 →【Reserve all unused pins : AS input tri-stated】。 四、实验总结 1.通过本次实验了解十进制同步加载、异步复位计数器的工作原理:
电子科技大学数电实验报告
assign disp_data_right2=Q_2;
assign disp_data_right3=Q_3;
assign disp_data_right4=Q_4;
assign disp_data_right5=Q_5;
dynamic_led6 u6 (
.disp_data_right0(disp_data_right0),
.disp_data_right1(disp_data_right1),
.
disp_data_right2(disp_data_right2),
.
disp_data_right3(disp_data_right3),
.disp_data_right4(right5(disp_data_right5),
);
reg[24:0] clk_div_cnt=0; reg clk_div=0; always @ (posedge clk) begin
if (clk_div_cnt==25000) begin
clk_div=~clk_div; clk_div_cnt=0; end else
clk_div_cnt=clk_div_cnt+1; end
4'h6: seg=8'h7d; 4'h7: seg=8'h07; 4'h8: seg=8'h7f; 4'h9: seg=8'h6f; 4'ha: seg=8'h77; 4'hb: seg=8'h7c; 4'hc: seg=8'h39; 4'hd: seg=8'h5e; 4'he: seg=8'h79; 4'hf: seg=8'h71; default: seg=0; endcase end
实验一十进制计数器(图形法)
实验一十进制计数器设计(图形法)
一、实验目的
1.学习并掌握MAX+PLUSⅡ10.0集成开发平台使用。
2.通过一个简单的十进制计数器的设计,掌握图形输入法。
二、实验原理
利用74LS161二进制计数器,采用同步置零法实现模为十的计数器设计。
三、实验内容
1.用原理图设计上述电路;
2.编译、仿真、管脚锁定(EPM7128Байду номын сангаас.
四、实验报告要求
1.写出完整设计过程.
2.打印电路原理图、仿真波形图。
电路图:
仿真波形图:
硬件设计—10进制计数器设计
实验一 10进制计数器设计实验目的:掌握软件设计流程,掌握电路图输入方式,了解和熟悉实验箱。
实验内容:利用74161实现十进制计数,并使用7448实现七段代码显示器显示结果。
原理图:如下图所示仿真结果及结果分析:通过实验,可以得到如下两张仿真结果图。
以下分别是在CLR为低电平和CLR为高电平时的输出(Q[1]-Q[7])波形图和仿真结果图,通过实验以及参考七段显示译码器7448的功能表可知:当CLR为低电平时为十六进制计数功能,即仿真结果图上面会从7E-00计数,即对应的为0-15的数值计数,直到00H即对应值为15时再从0开始计数到15,对应如下仿真图(1);当CLR为高电平时为十进制计数功能,即仿真结果上面会从7E-73计数,即对应0-9的数值计数,直到73H即对应值为9时再从0开始计数到9,对应如下仿真图(2)。
综上所述,如下两张仿真图所示的内容可知,实验结果正确,符合预期的结果。
仿真图(1)仿真图(2)管脚锁定说明:硬件测试情况说明及结果分析:根据原理图上的芯片引脚功能按照设好的引脚用线连接好电路,输出的Q[1]-Q[7]接到七段显示译码器上面,对应芯片的引脚分别为52、53、54、55、58、59、60,CLK的脉冲信号接芯片引脚11,给的脉冲可自己给定,尽量选择让数字变化的情况可以看清的脉冲信号,而CLR接芯片引脚143然后接到控制开关L8,通过L8来控制CLR为高电平或者低电平。
然后把电脑里面的程序和引脚配置情况加载到实验箱的芯片上,在给定脉冲后,当开关L8即CLR接低电平时,七段显示译码器上显示的为16进制数从0-15计数,计数到15后再从0开始到15计数;而当控制L8即CLR接高电平时,七段显示译码器上显示的为10进制数从0-9计数,计数到9时再从0开始新一轮的计数。
通过实验观察可知所做实验符合预期的结果,实验成功。
实验总结:通过这次实验,我们学会了利用74161实现十进制和十六进制计数,并使用7448实现七段代码显示器显示结果。
十进制计数器实验报告
十进制计数器实验报告十进制计数器实验报告引言:计数器是数字电路中常见的一种电子元件,用于计数和记录输入脉冲的次数。
在数字系统中,常用的计数器有二进制计数器和十进制计数器。
本实验旨在设计和实现一个十进制计数器,并通过实验验证其功能和性能。
一、实验目的本实验的主要目的是设计和实现一个十进制计数器,通过实验验证其功能和性能。
具体目标包括:1. 理解和掌握十进制计数器的工作原理;2. 学习使用逻辑门电路和触发器实现计数器;3. 验证计数器的计数功能和稳定性。
二、实验原理1. 十进制计数器的工作原理十进制计数器是一种能够在十进制数系统中进行计数的电子装置。
它通常由多个触发器和逻辑门组成,每个触发器负责计数一个十进制位。
当触发器的输出达到最大值时,会发出一个进位信号,使下一位触发器计数加1。
通过这种方式,十进制计数器能够实现从0到9的循环计数。
2. 实验所用材料和器件本实验所用的材料和器件包括:- 逻辑门电路芯片(如74LS08、74LS32等)- 触发器芯片(如74LS74)- 电路连接线- 电源供应器- 示波器三、实验步骤1. 搭建十进制计数器电路按照实验原理中所述的十进制计数器的工作原理,搭建一个十进制计数器电路。
根据实验所用的材料和器件,选择逻辑门电路芯片和触发器芯片,将它们按照正确的连接方式连接起来。
确保连接的准确性和稳定性。
2. 进行计数器功能测试将电源供应器连接到电路上,给予适当的电压和电流。
使用示波器观察计数器的输出波形,并记录下每个触发器的计数值。
通过观察波形和计数值,验证计数器的计数功能是否正常。
3. 进行计数器稳定性测试在计数器正常计数的情况下,观察计数器的稳定性。
持续观察一段时间,记录下计数器的计数值是否保持稳定。
如果计数器的计数值在一段时间内保持不变,则说明计数器具有较好的稳定性。
四、实验结果与分析根据实验步骤所述,我们搭建了一个十进制计数器电路,并进行了功能测试和稳定性测试。
实验结果显示,计数器的计数功能正常,能够从0到9循环计数。
eda10进制计数器实验报告
eda10进制计数器实验报告1B计算机组成原理教学实验箱一台,排线若干。
2) PC机一台。
3、实验步骤与源程序l) 根据该模型机的指令系统,编写一段程序。
这里给出两个参考程序。
参考程序一:本程序从输入设备(数码开关)取入数据,保存在内存单元08,然后从08单元送到输出设备(LED数码管)进行显示。
然后程序停止(请实验者考虑:如何修改程序,使程序不断从输入设备取出数据,送到输出设备显示。
每次循环过程中,可以使输入设备数据改变,考察输出显示的结果。
)。
设计机器指令程序如下(机器码为十六进制数据)。
地址内容助记符说明00 00 IN;输入开关数据→R00120 STA [08H] ;R0→[08]02 08 ;地址03 30 OUT [08H] ;[08H] →BUS04 08 ;地址05 40 JMP [00H] ;00H→PC06 00 ;跳转地址参考程序二:本程序从输入设备(数码开关)读入数据,与0A单元的数据相加,然后送到输出设备(LED数码管)进行显示。
本程序不断地循环运行,在运行中可改变输入开关(INPUT)的值,观察输出显示的变化。
设计机器指令程序如下(机器码为十六进制数据)。
地址内容助记符说明00 00 IN;输入开关数据→R0,采集数据0110 ADD [0AH] ;R0+[0AH]→R0,输入数据与指定数据相加02 0A ;地址0320 STA [0BH] ;R0→[0B]04 0B ;地址05 30 OUT [0BH] ;[0BH] →BUS,输出显示06 0B ;地址07 40 JMP [00H] ;00H→PC08 00 ;跳转地址0A 01 ;加数,可自定0B ;求和结果保存在0B单元2) 按图1连接实验线路。
3) 写程序:对于本实验箱可以用两种方法来写入程序。
方法一:手动写入(1)先将机器指令对应的微代码正确地写入2816中,由于在实验1.6微程序控制器的组成与微程序设计实验中已将微代码写入E2PR0M芯片中,对照表2—2校验正确后就可使用。
10进制计数器设计
一、实验要求及方案设计B,用D触发器实现分频模块D触发器构成的二分频电路实际上就是将D触发器转换为T触发器,将D端与~Q端短接之后,输出的频率就是原有频率的1/2。
按特性方程可知,每一CP脉冲触发后,Q状态翻转一次。
所以,Q端输出脉冲的频率则为CP脉冲频率的二分之一。
电路图如下:Cp脉冲时序图图中很明显,当遇到下降沿时cp脉冲翻转一次,如此下去,最终Q的频率是cp的1/2。
----------CP-----------QC,用74LS161实现计数模块74LS161的工作原理:74LS161是常用的四位二进制可预置的同步加法计数器。
引脚图如下,其中:1号引脚CLR为清零端,只要CLR=0各触发器均被清零,计数器输出为0000。
不清零时应使CLR=1。
9号引脚为预置数控制端,本次实验中我是使用的清零端,所以将预置端PE=1使之不工作。
7号引脚CEP和10号引脚CET是使能端,只有当CEP=CET=1时,74LS161才会进入到计数状态。
3,4,5,6为输入引脚,在实验中我将4个引脚短接之后接高电平。
11,12,13,14为输出引脚,将4个引脚按高低位顺序依次送入译码器的DBCA端。
又因为我是使用的清零来实现9转到0,所以要将‘1010’这个状态转为0,也就是将11和13号引脚与非之后接入到CLR清零端。
需要注意的是:11号引脚是高位,必须对应译码器中的D端。
引脚图如下:74LS161利用异步清零电路图如下:2,实验的总体逻辑连接电路图VCCOUTU1555_TIMER_RATEDGNDDIS RST THR CONTRI R168kΩR215kΩC110nFC210uF VCC 5V VSS 0VXSC1A BExt Trig++__+_U274LS112D~1CLR 151J 31K 21CLK 1~1PRE 41Q 5~1Q 6GND 8~2Q 72Q 9~2PRE 102CLK 132K 122J 11~2CLR 14VCC 16U374161N QA 14QB 13QC 12QD 11RCO15A 3B 4C 5D6ENP 7ENT10~LOAD 9~CLR 1CLK2U4A 7400NU574LS48DA 7B 1C 2D 6OA 13OD 10OE 9OF 15OC 11OB 12OG14~LT 3~RBI 5~BI/RBO 4GND8VCC 16U6A B C D E F G CKR350Ω135678921041416171518111213VSSVCC5、实验分析与计算在使用555定时器做多谐振荡器时,需要注意它必须接复位开关,每启动一次,先将复位开关接地端,然后,再接高位端。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一十进制计数器的设计与仿真
一、实验目的
熟悉QuartusⅡ的Verilog HDL文本设计流程全过程,学习计数器的设计、仿真和硬件测试。
二、实验原理
该程序设计是带有异步复位、同步计数使能、可预置型功能全面的十进制计数器。
(1)第一个条件句if(!RST)构成的RST接于寄存器下方的异步清0端CLR。
(2)第二个条件句if(EN)构成EN接于寄存器左侧的使能端ENA。
(3)第三个条件句if(LODA)构成LODA接于上面的多路选择器,使之控制选择来自DATA的数据,还是来自另一多路选择器的数据。
(4)不完整的条件语句与语句Q1<=Q1+1构成了加1加法器和4位寄存器。
(5)语句(Q1<9)构成了小于比较器,比较器的输出信号控制左侧多路选择器。
(6)第二个过程语句构成了纯组合电路模块,即一个等式比较器,作进位输出。
三、实验设备与软件平台
实验设备:计算机、FPGA硬件平台是Cyclone系列FPGA
软件平台:Quartus II 9.1 (32-Bit)、5E+系统
四、实验内容
编写Verilog程序描述一个电路,实现以下功能:设计带有异步复位、同步计数使能和可预置型的十进制计数器。
具有5个输入端口(CLK、RST、EN、LOAD、DATA)。
CLK输入时钟信号;RST 起异步复位作用,RST=0,复位;EN是时钟使能,EN=1,允许加载或计数;LOAD 是数据加载控制,LOAD=0,向内部寄存器加载数据;DATA是4位并行加载的数据。
有两个输出端口(DOUT和COUT)。
DOUT的位宽为4,输出计数值,从0到9;COUT是输出进位标志,位宽为1,每当DOUT为9时输出一个高电平脉冲。
五、实验步骤
设计程序:
module CNT10 (CLK,RST,EN,LOAD,COUT,DOUT,DATA);
input CLK;
input EN;
input RST;
input LOAD;
input [3:0] DATA;
output [3:0] DOUT;
output COUT;
reg [3:0] Q1 ;
reg COUT ;
assign DOUT = Q1;
always @(posedge CLK or negedge RST) begin if (!RST) Q1 <= 0;
else if (EN) begin
if (!LOAD) Q1 <= DATA;
else if (Q1<9) Q1 <= Q1+1;
else Q1 <= 4'b0000;
end
end
always @(Q1)
if (Q1==4'h9) COUT = 1'b1;
else COUT = 1'b0;
Endmodule
设计流程:
1.编辑和输入设计文件
(1)、新建一个文件夹
如D:\CNT10 ,本工程所有文件将存放在此目录中。
1)输入VHDL源程序
打开QuartusII,选择菜单File->New。
选择Verilog HDL File,输入源程序。
2)文件存盘
选择File->Save As命令,找到已设立的文件夹D:\CNT10,存盘文件名应与实体名一致,存盘为CNT10.v。
当出现语句“do you want to create…..”的对话框,选择“是”自动创建工程。
这里先选择“否”,即暂时不创建工程流程。
下一步手动创建工程。
(2)、创建工程
1)选择菜单File->New project Wizard命令,即弹出工程设置对话框。
单击此对话框右侧的“…”进行设置,第一行的D:\CNT10表示工程所在的工作库文件夹,第二行的CNT10表示此项工程的工程名,第三行是当前工程顶层文件的实体名。
2)将设计文件CNT10.v添加入工程中。
点“…”按钮,在弹出的对话框中选择CNT10.v文件。
单击“Add”按钮。
3)选择目标芯片
器件选择Cyclone系列中的EP1C6Q240C8。
也可以从主菜单Assignments的下拉菜单中点击 Device目标芯片设置窗口。
4)工具设置,此处不进行设置,点击Next
5)结束设置
列出了此工程相关设置情况,点击Finish按钮,出现project nevigator 窗口,显示本工程项目的层次结构和各层次的实体名。
2.全程综合与编译
选择Processing->start compilation,等待一段时间,跳出对话框提示编译成功或有错误,并在信息栏显示错误信息。
3.仿真测试
1)打开波形编辑器
选择File->new,选择vector waveform file。
2)设定仿真时间区域
在Edit->end time,在弹出的窗口time栏处输入50,单位选“us”。
3)波形文件存盘,默认文件名为CNT10.vwf
4)将此工程CNT10的端口信号名选入波形编辑器中
View->utility windows项的Node Finder选项。
点击“list”。
5)将端口信号名拖入波形编辑器中,拖完信号后可以关掉浮动窗口
6)按键盘上“CTRL+W”,显示全部仿真时间区域。
7)编辑输入波形(输入激励信号)
8) 仿真器参数设置
9)启动仿真器。
提示是否保存,选择“是”,仿真成功后选“确定”。
10) 观察仿真结果
按键盘上“CTRL+W”,在全部仿真时间区域内观察波形,并分析波形图显示的逻辑功能是否正确
点击“start”将配置文件下载,然后进行硬件测试。
功能仿真截图:
仿真波形图
管脚锁定截图
六、实验结果及分析
(1)RST在任意时刻有效时,如CLK非上升沿时,计数也能即刻清0。
(2)当EN=1,且在时钟CLK的上升沿时刻LODA=0时,4位输入数据DATA=7被加载,在LOAD=1后作为计数器的计数初值,如图所示计数从4加载到7的时序。
计数到9时,COUT输出进位1。
当下一轮计数到2时,尽管出现了加载信号LODA=0,但不加载。
(3)当EN=1,RST=1,LODA=1时,计数正常进行,在计数数据等于9时进位输出高电平。
当计数从7计到8时有一毛刺信号。
七、心得体会
第一次做EDA实验,使用Quartus II感觉很吃力,因为以前都没有接触过电子设计之类的东西。
虽然没有电子基础但还是硬着头皮慢慢去摸索。
经过老师的详细讲解和耐心指导以及同学们的探讨学习,使我对EDA和Quartus II的使用有了一定的了解。
十进制计数器的设计使用Quartus II的时候要注意程序的准确输入才能够顺利通过综合与编译,才能够继续进行接下来的仿真和下载、测试。