EDA 实验2简单分频时序逻辑电路设计 实验报告

合集下载

EDA实验报告二

EDA实验报告二

实验三分频器一.实验目的1.设计几个实验要求分频器,并在实验箱上面实现;2.熟悉分频器的功用。

二.所用器件EDA实验箱、EP1K10TC100-3器件。

三.实验说明本实验主要是设计几个分频数值不同的分频器,并在实验板上面观察分频的结果显示。

虽然实验箱频率为多种,而实际使用的时候一个系统最好使用一个时钟,而系统中使用的其他各种频率需要在系统内部用分频器来产生,所以分频器是以后进行各种实验的关键。

本次实验主要用quatusII 的软件示波器来观察分频后的波形。

四.实验要求1.设计一个2 分频器,观察实验结果;2.设计一个28分频器,观察实验结果;3.设计一个210分频器,观察实验结果,并与上面一步的实验结果比较;三个分频器的源程序如下:Library IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY div ISPORT(CLK:IN STD_LOGIC;DIV1024CLK:OUT STD_LOGIC;DIV256CLK:OUT STD_LOGIC;DIV2CLK:OUT STD_LOGIC--2);END;ARCHITECTURE BEHA V OF div ISSIGNAL DIV256CLKTEMP,DIV1024CLKTEMP,DIV2CLKTEMP:STD_LOGIC;BEGINPROCESS(CLK)V ARIABLE DIV1C:STD_LOGIC_VECTOR(1 DOWNTO 0) ;V ARIABLE DIV512C,DIV128C:STD_LOGIC_VECTOR(9 DOWNTO 0);BEGINIF CLK'EVENT AND CLK='1' THENDIV128C:=DIV128C+1;DIV512C:=DIV512C+1;DIV1C:=DIV1C+1;IF DIV128C=128 THENDIV256CLKTEMP<=NOT DIV256CLKTEMP;DIV128C:=(OTHERS=>'0');END IF;IF DIV512C=512 THENDIV1024CLKTEMP<=NOT DIV1024CLKTEMP;DIV512C:=(OTHERS=>'0');END IF;IF DIV1C=1 THENDIV2CLKTEMP<=NOT DIV2CLKTEMP;DIV1C:=(OTHERS=>'0');END IF;END IF;DIV256CLK<=DIV256CLKTEMP;DIV1024CLK<=DIV1024CLKTEMP;DIV2CLK<=DIV2CLKTEMP;END PROCESS;END BEHA V;五.实验结果:仿真显示如下:实验四 8位数码管扫描显示一、实验目的1.学习功能集成的设计方法;2.设计8位扫描数码显示器。

时序逻辑实验报告

时序逻辑实验报告

时序逻辑实验报告时序逻辑实验报告引言:时序逻辑是计算机科学中的重要概念,它描述了事件在时间上的顺序和发生关系。

在本次实验中,我们将探索时序逻辑的基本原理,并通过实际的电路设计和仿真来加深对其理解。

实验一:时钟信号的生成和分频时钟信号是时序逻辑中的基础,它提供了时间参考,使得电路中的各个元件能够按照特定的时间序列进行操作。

在本实验中,我们首先学习了如何通过计数器和分频器生成时钟信号。

通过调整分频器的参数,我们可以得到不同频率的时钟信号,并观察其对电路行为的影响。

实验二:时序逻辑电路的设计在本实验中,我们将学习如何设计时序逻辑电路。

时序逻辑电路通常由触发器、计数器、状态机等组成,它们能够根据输入信号的变化产生不同的输出。

我们将通过实际的案例来展示时序逻辑电路的设计过程,并使用仿真工具验证其正确性。

实验三:状态机的设计和实现状态机是时序逻辑中常用的模型,它描述了系统根据输入信号的变化而转换的状态。

在本实验中,我们将学习如何设计和实现状态机。

通过定义状态和状态转换条件,我们可以将复杂的系统行为转化为简单的状态转换图,并通过电路实现这些状态转换。

实验四:时序逻辑电路的故障排查时序逻辑电路的故障排查是电子工程师日常工作中的重要环节。

在本实验中,我们将学习如何通过逻辑分析仪和示波器等工具来排查时序逻辑电路的故障。

通过观察信号波形和逻辑分析结果,我们可以确定故障的原因,并采取相应的修复措施。

实验五:时序逻辑电路的应用时序逻辑电路在计算机科学和电子工程中有着广泛的应用。

在本实验中,我们将学习一些时序逻辑电路的典型应用,如计数器、时序多路复用器等。

通过实际的案例,我们可以更好地理解时序逻辑电路在实际系统中的作用和价值。

结论:通过本次实验,我们深入了解了时序逻辑的基本原理和应用。

我们学习了时钟信号的生成和分频,掌握了时序逻辑电路的设计和实现方法,学会了使用工具进行故障排查。

时序逻辑在现代电子系统中起着重要的作用,通过实验的学习,我们对其有了更深入的理解和应用能力。

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设计中最基本的时序元件和底层元件。

EDA分频器实验报告 含有实验程序、仿真图像 三分频 八分频

EDA分频器实验报告  含有实验程序、仿真图像  三分频  八分频
always @(negedge clk_in) begin
if(!rst_n) begin
t2<=0;
k2<=0;
end
else begin
if(t2==2'b10) begin
t2<=0;
k2<=k2;
end
else begin
t2<=t2+1;
k2<=!k2;
end
end
end
assign clk_out=k1|k2;
endmodule
2、八分频器程序:
moduleba(inclk,tick);
output tick;
input inclk;
reg [1:0] t;
reg tick;
always @ (posedge inclk)
begin
if(t==3)
begin
tick =~tick;
t=0;
end
else t=t+1;
end
endmodule
五、实验仿真波形
六、实验总结和感想
通过这次实验我对PLD的设计流程有了更深的感触,明白了其设计的一般步骤及方法,为以后的Quartus Ⅱ的综合设计奠定了基础。同时,对于分频器程序的编写有了更深的认识,这能更好的促进我们以后的理论学习。实验过程中也必须本着不骄不躁、耐心严谨,否则容易出错而达不到实验要求。
三、实验内容
1、根据要求设计三分频器、八分频器。
2、对设计的分频器进行波形仿真分析。
四、三位、八位简易频率计程序
1、三分频器程序
modulesan(clk_in,rst_n,clk_out);
input clk_in;

EDA简单组合时序电路设计8分频

EDA简单组合时序电路设计8分频
奇数倍分频有两种实现方法,其中之一完全可以通过计数器来实现,如进行三分频,就可通过待分频时钟上升沿触发计数器来进行模三计数,当计数器计数到邻近值时进行两次翻转。比如可以在计数器计数到1时,输出时钟进行翻转,计数到2时再次进行翻转。这样,就在计数值邻近的1和2进行了两次翻转。如此便实现了三分频,其占空比为1/3或2/3。
比较器的输出端:
agb:输出a端信号与b端信号的比较值。
图2比较器模块仿真波形图
仿真结果说明:
当a端信号大于b端信号时,比如a为15而b为0时,输出端agb输出高电平信号“1”;反之,输出端agb输出低电平信号“0”。
always @ (posedge clk)
if(! rst)
begin
count <= 1'b0;
clk_odd <= 1'b0;
end
else
if ( count < N/4-1)
begin
count <= count + 1'b1;
clk_odd <= 1'b1;
end
else if (count < N/2-1)
4.实验步骤和程序分为三部分:一为基本步骤,二为程序流程图(也可以为算法的文字或公式说明)或状态图,三为程序源代码(可以不用全写,只写出关键部分的程序)及其说明。
5.实验结论和体会:一为实验结论,二为讨论当前设计的不足及其改进设想。
6.测试数据记录和结果分析:Verilog程序综合出来的RTL图(电路很复杂时不做要求);时序仿真结果(必备),可以抓图后打印出来贴在报告上,但必须对图里的结果有详细的文字说明。可参考以下案例格式写
#100;
#10 rst=1;

EDA实验报告

EDA实验报告

实验一:QUARTUS II 软件使用及组合电路设计仿真页脚内容1实验目的:学习QUARTUS II 软件的使用,掌握软件工程的建立,VHDL源文件的设计和波形仿真等基本内容。

实验内容:1.四选一多路选择器的设计基本功能及原理:选择器常用于信号的切换,四选一选择器常用于信号的切换,四选一选择器可以用于4路信号的切换。

四选一选择器有四个输入端a,b,c,d,两个信号选择端s(0)和s(1)及一个信号输出端y。

当s输入不同的选择信号时,就可以使a,b,c,d中某一个相应的输入信号与输出y端接通。

逻辑符号如下:页脚内容2程序设计:软件编译:在编辑器中输入并保存了以上四选一选择器的VHDL源程序后就可以对它进行编译了,编译的最终目的是为了生成可以进行仿真、定时分析及下载到可编程器件的相关文件。

仿真分析:仿真结果如下图所示页脚内容3分析:由仿真图可以得到以下结论:当s=0(00)时y=a;当s=1(01)时y=b;当s=2(10)时y=c;当s=3(11)时y=d。

符合我们最开始设想的功能设计,这说明源程序正确。

2.七段译码器程序设计基本功能及原理:七段译码器是用来显示数字的,7段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利用VHDL译码程序在FPGA或CPLD 中实现。

本项实验很容易实现这一目的。

输出信号的7位分别接到数码管的7个段,本实验中用的数码管为共阳极的,接有低电平的段发亮。

数码管的图形如下页脚内容4七段译码器的逻辑符号:程序设计:页脚内容5软件编译:在编辑器中输入并保存了以上七段译码器的VHDL源程序后就可以对它进行编译了,编译的最终目的是为了生成可以进行仿真、定时分析及下载到可编程器件的相关文件。

仿真分析:仿真结果如下图所示:页脚内容6分析:由仿真的结果可以得到以下结论:当a=0(0000)时led7=1000000 此时数码管显示0;当a=1(0001)时led7=1111001 此时数码管显示1;当a=2(0010)时led7=0100100 此时数码管显示2;当a=3(0011)时led7=0110000 此时数码管显示3;当a=4(0100)时led7=0011001 此时数码管显示4;当a=5(0101)时led7=0010010 此时数码管显示5;当a=6(0110)时led7=0000010 此时数码管显示6;当a=7(0111)时led7=1111000 此时数码管显示7;当a=8(1000)时led7=0000000 此时数码管显示8;页脚内容7当a=9(1001)时led7=0010000 此时数码管显示9;当a=10(1010)时led7=0001000 此时数码管显示A;当a=11(1011)时led7=0000011 此时数码管显示B;当a=12(1100)时led7=1000110 此时数码管显示C;当a=13(1101)时led7=0100001 此时数码管显示D;当a=14(1110)时led7=0000110 此时数码管显示E;当a=15(1111)时led7=0001110 此时数码管显示F;这完全符合我们最开始的功能设计,所以可以说明源VHDL程序是正确的。

EDA实验报告 (2)

EDA实验报告 (2)

实验一QUARTUS II软件安装、基本界面及设计入门一、实验目的:QUARTUSII是Altera公司提供的EDA工具,是当今业界最优秀的EDA设计工具之一。

提供了一种与结构无关的设计环境,使得电子设计人员能够方便地进行设计输入、快速处理和器件编程。

通过本次实验使学生熟悉QUARTUSII软件的安装,基本界面及基本操作,并练习使用QUARTUS的图形编辑器绘制电路图。

二、实验内容:1、安装QUARTUSII软件;2、熟悉QUARTUSII基本界面及操作;3通过一个4位加法器的设计实例来熟悉采用图形输入方式进行简单逻辑设计的步骤。

三、实验仪器:1、PC机一台;2、QUARTUSII软件;3、EDA实验箱。

四、实验原理:4位加法器是一种可实现两个4位二进制数的加法操作的器件。

输入两个4位二进制的被加数A和B,以及输入进位Ci,输出为一个4位二进制和数D和输出进位数Co。

半加操作就是求两个加数A、B的和,输出本位和数S及进位数C。

全加器有3位输入,分别是加数A、B和一个进位Ci。

将这3个数相加,得出本位和数(全加和数)D和进位数Co。

全加器由两个半加器和一个或门组成。

五、实验步骤:安装QUARTUSII软件;因为实验时我的机器了已经有QUARTUSII软件,所以我并没有进行安装软件的操作。

设计半加器:在进行半加器模块逻辑设计时,采用由上至下的设计方法,在进行设计输入时,需要由下至上分级输入,使用QuartusIIGraphic Editor进行设计输入的步骤如下。

(1)、打开QUARTUSII软件,选择File-new project wizard…新建一个设计实体名为has的项目文件;(2)、新建文件,在block.bdf窗口下添加元件符号,并连接。

如下图:半加器原理图(3)、将此文件另存为has.gdf的文件。

(4)、在主菜单中选择Processing→Start Compilation命令,系统对设计进行编译,同时打开Compilation Report Flow Summary窗体,Status视图显示编译进程。

eda 时序逻辑电路实验报告

eda  时序逻辑电路实验报告

实验报告姓名:吴克亮学号:1053305016班级:电气一班一、实验名称:组合逻辑电路设计二、实验目的:1、掌握用VHDL 语言和EPLD 进行组合逻辑电路的设计方法。

2、加深对EPLD 设计全过程的理解。

三、实验要求学习常用组合逻辑的可综合代码的编写,学习VHDL语言的编程思想与调试方法,学习通过定制LPM元件实现逻辑设计,通过波形仿真设计的正确与否。

四、实验设备:MAX+plus 2五、实验步骤:1、采用文本编辑器输入VHDL 语言源程序,建立工程。

2、编译。

3、仿真。

4、对芯片进行编程。

5、根据管脚分配情况连线。

实验程序:LIDRART IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY PAN4_5 ISPORT(D:IN STD_LOGIC_VECTOR(3 DOWNTO 0); y:OUT STD_LOGIC);END PAN4_5;ARCHITECTURE DEHA OF PAN4_5 ISSIGNAL DATAIN:INTEGER;BEGINDA TA<=CONV_INTEGER(D);PROCESSBEGINIF(DATAIN>=5)THENY<='1';ELSEY<='0';END PROCESS;END DEHA;编译结果编译通过后进行波形仿真实验心得体会做完EDA实验,我感到受益匪浅。

这不仅使我了解了EDA 的实验系统,学习了MAX+PLUSⅡ软件的使用,掌握了基本的电路设计流程、方法以及技巧,更增强了我对EDA设计的兴趣。

在实验的过程中,老师又结合实际详细的教了我们VHDL 语言的基本指令及编程方法,教我们熟悉了在PC机上运用MAX+PLUSⅡ软件和EPLD进行电路设计的设计和仿真过程。

EDA 实验2简单分频时序逻辑电路设计 实验报告

EDA 实验2简单分频时序逻辑电路设计 实验报告

时序电路设计实验目的:1.掌握条件语句在简单时序模块设计中的使用。

2.学习在Verilog模块中应用计数器。

实验环境:Windows 7、MAX+PlusⅡ10等。

实验内容:1.模为60的8421BCD码加法计数器的文本设计及仿真。

2.BCD码—七段数码管显示译码器的文本设计及仿真。

3.用For语句设计和仿真七人投票表决器。

4.1/20分频器的文本设计及仿真。

实验过程:一、模为60的8421BCD码加法计数器的文本设计及仿真:(1)新建文本:选择菜单File下的New,出现如图5.1所示的对话框,在框中选中“Text Editor file”,按“OK”按钮,即选中了文本编辑方式。

图5.1 新建文本(2)另存为Verilog编辑文件,命名为“count60.v”如图5.2所示。

(3)在编辑窗口中输入程序,如图5.3所示。

图5.2 另存为.V编辑文件图5.4 设置当前仿真的文本设计图5.3 模为60的8421BCD码加法计数器的设计代码(4)设置当前文本:在MAX+PLUS II中,在编译一个项目前,必须确定一个设计文件作为当前项目。

按下列步骤确定项目名:在File菜单中选择Project 中的Name选项,将出现Project Name 对话框:在Files 框内,选择当前的设计文件。

选择“OK”。

如图5.4所示。

(5)打开编译器窗口:在MAX—plusⅡ菜单内选择Compiler 项,即出现如图5.5的编译器窗口。

图5.5 编译器窗口选择Start即可开始编译,MAX+PLUS II编译器将检查项目是否有错,并对项目进行逻辑综合,然后配置到一个Altera 器件中,同时将产生报告文件、编程文件和用于时间仿真用的输出文件。

(6)建立波形编辑文件:选择菜单File下的New选项,在出现的New对话框中选择“Waveform Editor File”,单击OK后将出现波形编辑器子窗口。

(7)仿真节点插入:选择菜单Node下的Enter Nodes from SNF选项,出现如图5.6所示的选择信号结点对话框。

简单分频时序逻辑电路的设计

简单分频时序逻辑电路的设计

电子信息工程学系实验报告课程名称:微机原理与接口技术实验项目名:简单分频时序逻辑电路的设计实验时间:2012.10.9班级:通信姓名:陈小凡学号:实验目的:1、熟悉ALTERA公司EDA设计工具软件max+plusII的安装和工作环境。

2、熟练的使用max+plusII软件中的各按钮的操作和原理。

3、学习和掌握使用max+plusII软件进行文本设计(二分频的设计为例)。

实验环境:max+plusII软件Windows7系统实验内容及步骤:一、clk-in的二分频clk-out的文本设计1、打开实验的工作环境,界面如下:图(一)工作环境界面2、按屏幕上方的“新建文件”按钮,或选择菜单“File”→“New”,出现如图4.13所示的对话框,在框中选中“Text Editor file”,按“OK”按钮,即选中了文本编辑方式。

其界面如图(二):图(二)选择文本3、在编辑窗口中输入在文本编辑窗口,输入Verilog语言,代码如下图(三)所示:其中字体的格式和大小均可在以上界面的上方的状态栏来改变。

成绩:指导教师(签名):图(三)二分频的always语句编辑代码4、在 File Name 对话框内输入设计文件名(如half-clk.v),然后选择 OK 即可保存文件。

在 File 菜单中选择 Save & Check项,检查设计是否有错误。

如果没有,在 File菜单中选择 Create Default Symbol 项,即可创建一个设计的符号。

在 MAX+PLUS II 菜单内选择Compiler 项。

则出现编译器窗口,如图(四)所示:图(四)检查文件显示可行选择 Start即可开始编译, MAX+PLUS II 编译器将检查项目是否有错,并对项目进行逻辑综合,然后配置到一个 Altera 器件中,同时将产生报告文件、编程文件和用于时间仿真用的输出文件。

5、选择菜单“File”→“New”,在出现的“New”对话框中选择“Waveform Editor File”按“OK”后将出现波形编辑器,选择菜单“Node ”→“Enter Nodes from SNF”,出现如图所示的选择信号结点对话框。

EDA实验报告2

EDA实验报告2

EDA 第二次试验报告一、实验目的:利用QuartusII 软件,采取VHDL 语言编程和LPM 实现的方式设计比较电路,从而熟悉硬件描述语言和LPM 元件定制。

二、实验设计方案: 1、原理说明:当输入两位二进制数A 和B ,设A=A2A1,B=B2B1。

首先从高位开始比较,即比较A2、B2大小。

若A2>B2,则输出F1为1;若A2<B2,则输出F2为1。

当A2=B2时,则再比较低位A1、B1大小,若A1=B1,则输出F3为1。

2、结构框图:三、实验过程:比较电路:设计一个能实现两个二位数比较的电路,如下图所示,根据A 数是否大于、小于、等于B 数,相应输出端F1、F2、F3为1,设 A=A2A1,B=B2B1,当A2A1>B=B2B1时,F1为1;A2A1<B=B2B1时,F2为1;A2A1=B=B2B1时,F3为1。

VHDL 实现:1、 新建工程所在的文件夹名称为bijiao 、工程名为bijiao 、顶层实体名称为bijiao ,之后再新建VHDL 文件,以下为其编译并通过的代码: library IEEE;use IEEE.std_logic_1164.all; entity bijiao is二位数据A二位数据BLPM 定制实现比较电路 VHDL 实现比较电路输出F1或F2或F3结果波形仿真验证硬件试验箱验证比较电路A2 A1 B2B1F1 F2 F3> < =port( a2,a1:in STD_LOGIC; b2,b1:in STD_LOGIC; f1,f2:buffer STD_LOGIC; f3:out STD_LOGIC); end bijiao;architecture bijiao_arch of bijiao is beginf1<=(a2 and(not b2)) or (a1 and(not b1)and a2) or (a1 and(not b1)and (not b2));f2<=(( not a2) and b2) or (( not a2) and ( not a1)and b1) or ((not a1) and b1 and b2);f3<=not( f1 or f2);end bijiao_arch;VHDL 分析调试工具RTL viewer:2、 新建波形文件进行波形仿真:功能仿真结果:a1.b1.c1a2'.b2a1'.a2'.b1a2'.b2a1.b1'a1.a2.b1'(a2’.b2)+(a2’.a1’.b1)+(a1’.b1.b2)a1.b1’.b2’(a2.b2’)+(a1.b1’.a2)+(a1.b1’.b2’)(f1+f2)’参数设置:输入数据A (a2a1)的参数设置:End Time :2.0 us Gard Size: 400ns 输入数据B (b2b1)的参数设置:End Time :2.0 us Gard Size: 100ns 信号A 、B 的属性:二进制 输出端属性:二进制图示结论:当A 输入为00时,若B 也为00,则f1f2f3显示结果为001,其表示f3为1,即A=B ;当A 输入为00时,若B 为01、10、11,则f1f2f3显示结果为010,其表示f2为1,即A=<B ;当A 输入为01时,若B 为00,则f1f2f3显示结果为100,其表示f1为1,即A>B ;时序仿真结果:当输入由某一种取值组合变成另一种取值组合时,由于竞争使得电路产生了与稳态输出不同的、暂时的错误输出,即为冒险。

EDA实验报告(绝对有用)

EDA实验报告(绝对有用)

EDA 设计与实验院系:电子工程与光电技术学院专业:通信工程班级: 07042201姓名:包华广(32号)学号: 0704330107指导老师:蒋立平花汉兵目录:摘要 - - - - - - - - - - - - - - - 1一.正文部分1.设计电路功能要求 - - - - - - - - - - - - - 12.方案论证 - - - - - - - - - - - - - 13.各子模块设计原理 - - - - - - - - - - - - 23.1 时钟信号发生模块 - - - - - - - - - - - - 23.2 计时模块- - - - - - - - - - - 43.3 计时电路 - - - - - - - - - - - - 63.4 校正电路模块 - - - - - - - - - - - - 63.5 整点报时模块 - - - - - - - - - - - - 83.6 闹钟功能模块 - - - - - - - - - - - - 84、设计总电路原理 - - - - - - - - - - - - - 9二.总结部分5. 调试、仿真与下载 - - - - - - - - - - - - - 106.实验结果 - - - - - - - - - - - - - 107. 实验中遇到的问题与解决方法 - - - - - - - - - 118. 实验体会与收获 - - - - - - - - - - - - - 12 9.参考文献 - - - - - - - - - - - - - - - - 12摘要:本实验利用QuartusII软件,结合所学的数字电路的知识设计一个24时多功能数字钟,具有正常分、秒计时,动态显示,保持、清零、快速校分、整点报时、闹钟功能。

文章分析了整个电路的工作原理,还分别说明了各子模块的设计原理和调试、仿真、编程下载的过程,并对最终结果进行总结,最后提出了在实验过程中出现的问题和解决的方案。

eda实验报告

eda实验报告

实验二用图形法设计模为12的同步计数器一、实验目的:掌握MAXPLU SⅡ的图形输入法和仿真过程(1)掌握图形输入法(2)熟悉仿真方法(3)理解时序仿真(4)掌握用图形编辑法实现组合逻辑电路设计思想。

二、实验内容:用图形法设计模为12的同步计数器三、实验设计及步骤:1、新建“grap”文件,绘制实验原理图。

实验原理图如下:实验的截图如下图:2、通过编译之后进行项目检验,没有错误。

3、建立波形输入文件(也称仿真器通道文件SCF)(1)在File 菜单里面选择New 打开新建文件类型对话框。

选择Waveform Editor File 项单击OK。

(2)在波形编辑器窗口的Name下单击鼠标右键,出现浮动的菜单,选择Enter Nodes from SNF...可以打开“从SNF文件输入观测点”的对话框。

(3)在Type区选择Input和Output,在默认的情况下是打开的,单击List按钮,可在Available Nodes & Groups区看到设计文件中使用的输入/输出信号,单击=>按钮可以将这些信号选择到Selected Nodes & Groups区。

单击OK按钮,关闭对话框即可看到波形编辑窗口,将此波形文件保存为默认名。

波形编辑器窗口Name的浮动菜单4、右键,在出现的对话框中选择“enter nodes from snf”,将所有的选项导入到波形中。

列出输入/输出信号波形文件中的输入输出信号(1)在模为12的计数器中,我们将信号“en”从头到尾,即从0ns到1000ns赋值为‘1’。

选中信号“en”,单击“Name”区中的“en”信号,可看见“en”信号变为黑色,表示被选中;单击即可将“en”信号赋为‘1’(2)采用同样的方式可将信号“clear”从0ns到1000ns赋值为“1”,为观察其清零的作用,将在240ns到300ns之间将其赋值为“0”(因为该信号低电平有效将鼠标移到“clear”信号的240ns处按住鼠标左键并向右拖动鼠标300ns处,松开鼠标左键可以看到这段区域为黑色,被选中,单击工具条中的即可。

EDA实验实验报告2

EDA实验实验报告2

EDA实验实验报告学号:姓名:彭文勇院系:微电子技术系专业:嵌入式教师:李海2010年12月实验一一位全加器的设计实验地点:第二实验楼405同组人员:孙腾坤一、实验目的通过次实验我们逐步了解、熟悉和掌握FPGA开发软件Quartus II 的使用及Verilog HDL的编程方法。

学习用Verilog HDL语言以不同的方式来描述1位全加器及电路的设计仿真和硬件测试。

二、实验原理和内容本实验的内容是建立一个1位全加器。

具体内容包括:(1)使用Quartus II建立工程、编写程序;(2)进行波形仿真验证;(3)进行硬件测试。

通过SmartSOPC试验箱上的按键KEY1~KEY3输入信号,分别为A、B和cin,并通过LED1~LED3指示相应的状态。

输出Sum和cout通过LED7和LED8指示(灯亮表示输入或输出为“1”)。

三、实验步骤(1)启动Quartus II建立一个空白工程,然后命名为full_add。

(2)新建Verilog HDL源文件full_add.v,输入程序代码并保存,然后进行综合编译。

若在编译过程中发现错误,则找出并更正错误,直至编译成功为止,并生成图形符号文件full_add.bdf。

(3)波形仿真验证。

(4)新建图形设计文件命名为full_add.bdf并保存。

微电子技术系(5)选择目标器件并对相应的引脚进行锁定,我们选Altera公司Cyclone系列的EP1C6Q240C8芯片,引脚锁定方法参考实验书后面的附录A引脚分配。

将为使用的引脚设置为三态输入(一定要设置否则可能损坏芯片)。

(6)将full_add.bdf设置为顶层实体。

对该工程文件进行全程便已处理。

若在编译过程中发现错误,则找出并更正错误,直至编译成功为止。

(7)将跳线短接帽调解到JP6的KEY1~KEY3、LED0~LED2、LED6和LED7,使KEY1~KEY3、LED1~LED3、LED7、LED8与芯片对应的引脚相连。

EDA设计(II)实验报告数字电子钟

EDA设计(II)实验报告数字电子钟

EDA设计(II)实验报告-数字电子钟实验报告:数字电子钟一、实验目的本实验旨在通过使用EDA设计软件,设计并实现一个具有时、分、秒功能的数字电子钟。

通过学习使用EDA工具,掌握数字电路设计的基本步骤和技巧,培养实践能力和创新思维。

二、实验原理数字电子钟是一种以数字形式显示时间的装置,它利用了时、分、秒的计时原理。

核心部分包括一个时钟发生器,用于产生标准时间信号,以及一个计数器,用于对时间进行计数并显示。

此外,还需要一些控制逻辑来控制时、分、秒的进位和显示。

三、实验步骤1.设计准备:在开始设计之前,首先明确设计要求和功能。

考虑到实验的复杂性和可实现性,我们采用最简单的电路结构,即基于计数器和译码器的数字电子钟。

2.绘制电路图:使用EDA设计软件(如Quartus II)绘制电路图。

首先创建新项目,然后添加必要的元件(如74LS192计数器、74LS248译码器等),并根据设计要求连接元件。

3.编写程序:使用硬件描述语言(如VHDL或Verilog)编写计数器和译码器的程序。

确保程序能够实现所需的功能,并进行仿真测试。

4.编译和下载:将程序编译成可下载的配置文件,然后下载到FPGA开发板上。

5.硬件测试:连接开发板到PC,启动程序,观察数字电子钟的显示情况。

检查时间是否准确,各部分功能是否正常。

6.性能评估:对数字电子钟的性能进行评估,包括计时精度、稳定性等指标。

根据评估结果对设计进行优化。

四、实验结果与分析1.设计结果:经过上述步骤,我们成功地设计并实现了一个基于FPGA的数字电子钟。

通过EDA软件和硬件描述语言,我们实现了计数器和译码器的功能,并完成了程序的编写和下载。

2.性能分析:经过测试,我们的数字电子钟具有较高的计时精度和稳定性。

时间显示准确,各部分功能正常。

这表明我们的设计是成功的。

3.优化方向:虽然我们的数字电子钟已经具有较好的性能,但仍有一些方面可以优化。

例如,可以考虑添加更多的功能,如闹钟、温度显示等;也可以进一步优化电路结构,降低成本和提高性能。

EDA实验报告

EDA实验报告

实验一:QUARTUS II 软件使用及组合电路设计仿真实验目的:学习QUARTUS II 软件的使用,掌握软件工程的建立,VHDL 源文件的设计和波形仿真等基本内容。

实验内容:1.四选一多路选择器的设计基本功能及原理:选择器常用于信号的切换,四选一选择器常用于信号的切换,四选一选择器可以用于4路信号的切换。

四选一选择器有四个输入端a,b,c,d,两个信号选择端s(0)和s(1)及一个信号输出端y。

当s输入不同的选择信号时,就可以使a,b,c,d中某一个相应的输入信号与输出y端接通。

逻辑符号如下:程序设计:软件编译:在编辑器中输入并保存了以上四选一选择器的VHDL源程序后就可以对它进行编译了,编译的最终目的是为了生成可以进行仿真、定时分析及下载到可编程器件的相关文件。

仿真分析:仿真结果如下图所示分析:由仿真图可以得到以下结论:当s=0(00)时y=a;当s=1(01)时y=b;当 s=2(10)时y=c;当s=3(11)时y=d。

符合我们最开始设想的功能设计,这说明源程序正确。

2.七段译码器程序设计基本功能及原理:七段译码器是用来显示数字的,7段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利用VHDL译码程序在FPGA或CPLD中实现。

本项实验很容易实现这一目的。

输出信号的7位分别接到数码管的7个段,本实验中用的数码管为共阳极的,接有低电平的段发亮。

数码管的图形如下七段译码器的逻辑符号:程序设计:软件编译:在编辑器中输入并保存了以上七段译码器的VHDL源程序后就可以对它进行编译了,编译的最终目的是为了生成可以进行仿真、定时分析及下载到可编程器件的相关文件。

仿真分析:仿真结果如下图所示:分析:由仿真的结果可以得到以下结论:当a=0(0000)时led7=1000000 此时数码管显示0;当a=1(0001)时led7=1111001 此时数码管显示1;当a=2(0010)时led7=0100100 此时数码管显示2;当a=3(0011)时led7=0110000 此时数码管显示3;当a=4(0100)时led7=0011001 此时数码管显示4;当a=5(0101)时led7=0010010 此时数码管显示5;当a=6(0110)时led7=0000010 此时数码管显示6;当a=7(0111)时led7=1111000 此时数码管显示7;当a=8(1000)时led7=0000000 此时数码管显示8;当a=9(1001)时led7=0010000 此时数码管显示9;当a=10(1010)时led7=0001000 此时数码管显示A;当a=11(1011)时led7=0000011 此时数码管显示B;当a=12(1100)时led7=1000110 此时数码管显示C;当a=13(1101)时led7=0100001 此时数码管显示D;当a=14(1110)时led7=0000110 此时数码管显示E;当a=15(1111)时led7=0001110 此时数码管显示F;这完全符合我们最开始的功能设计,所以可以说明源VHDL程序是正确的。

EDA设计2实验报告

EDA设计2实验报告

EDA设计(2)---多功能数字钟设计1 设计要求1.1设计一个基本的计时、计星期的数字时钟1.2能够进行正常的星期、时、分、秒的计时功能;1.3 由七个数码管显示,从左到右分别为时十位、时个位、分十位、分个位、秒十位、秒个位、星期;星期为1、2、3、4、5、6、7来表示周一到周日;1.2.3 计时电路的开关分配(1)k1是计时电路的使能开关(k1=0正常计时,k1=1时钟保持);(2)k2是计时电路的清零/秒表清零/闹钟定时清零复用开关(在不同的模式显示下,k2=0时正常计,k2=1时清零);(3)k3是计时电路的校分/闹钟电路定分复用开关(k3=0正常计时,k3=1进行校分);(4)k4是计时电路的校时/闹钟电路定时复用开关(k4=0正常计时,k4=1进行校时);(5)k5是计时电路的校星期/闹钟电路定星期复用开关(k5=0正常计时,k5=1进行校星期);(6)k7为闹钟开关,k6是基本计时电路、闹钟的显示选择开关{k6=0显示基本计时模式;k6=1显示设定的闹钟时间(由k3、k4、k5分别设定),但闹钟的开关k7=1时闹钟才进入闹钟模式};1.2.4整点报时功能(当时钟计到59分53秒、55秒、57秒时报时频率为500hz,59秒报时频率为1Khz);2 设计原理多功能数字时钟的整体框图如图由脉冲发生电路产生数字钟所需的各种频率。

根据要求设计出基本计时和闹钟,通过模式选择开关进行切换。

其中,基本计时部分设计校分、校时、保持、校星期、报时和清零等电路。

闹钟设计定时。

最后报时、1分钟闹钟电路通过蜂鸣器输出,基本计时、闹钟电路在数码管动态显示。

基本计时电路校分校时 保持校星期报时 清零闹钟电路1分钟延时定时译码显示电路蜂鸣器分频电路 K1~k7消颤开关2.1基本计时电路原理通过分频电路来构成脉冲发生电路,将实验箱48Mhz分成基本计时电路所需的各种脉冲。

基本计时电路由模60、模24和模7计数器组成。

时序逻辑电路实验报告

时序逻辑电路实验报告

一、实验目的1. 理解时序逻辑电路的工作原理和基本结构;2. 掌握触发器、计数器等时序逻辑电路的设计方法;3. 熟悉Multisim软件在时序逻辑电路设计与仿真中的应用;4. 培养实际操作能力和分析问题、解决问题的能力。

二、实验原理时序逻辑电路是一种在时钟信号控制下,输出不仅与当前输入有关,还与电路历史状态有关的数字电路。

其基本结构包括触发器、计数器等。

触发器是时序逻辑电路的基本单元,用于存储一位二进制信息。

计数器是时序逻辑电路的一种应用,用于对输入脉冲进行计数。

三、实验内容1. 触发器实验(1)实验目的:熟悉触发器的工作原理和功能,掌握触发器的使用方法。

(2)实验内容:设计一个JK触发器,实现时钟信号控制下的同步置1、同步置0、计数等功能。

(3)实验步骤:① 使用Multisim软件,搭建JK触发器电路;② 搭建计数器电路,实现时钟信号控制下的计数功能;③ 设置输入信号,观察触发器和计数器的输出波形,验证功能。

2. 计数器实验(1)实验目的:掌握计数器的设计方法,熟悉不同计数器电路的功能。

(2)实验内容:设计一个模为24的二进制计数器和模为60的十进制计数器。

(3)实验步骤:① 使用Multisim软件,搭建二进制计数器电路;② 设置输入信号,观察计数器的输出波形,验证功能;③ 使用Multisim软件,搭建十进制计数器电路;④ 设置输入信号,观察计数器的输出波形,验证功能。

四、实验结果与分析1. 触发器实验实验结果显示,设计的JK触发器能够实现同步置1、同步置0、计数等功能。

在计数过程中,触发器的输出波形符合预期,验证了JK触发器的功能。

2. 计数器实验实验结果显示,设计的模为24的二进制计数器和模为60的十进制计数器均能实现预期的计数功能。

在计数过程中,计数器的输出波形符合预期,验证了计数器电路的功能。

五、实验总结本次实验通过设计、搭建和仿真时序逻辑电路,掌握了触发器、计数器等时序逻辑电路的设计方法,熟悉了Multisim软件在时序逻辑电路设计与仿真中的应用。

EDA实验报告

EDA实验报告

EDA实验报告一、实验目的本次 EDA 实验的主要目的是熟悉电子设计自动化(EDA)软件的使用,掌握数字电路的设计、仿真和实现流程,提高对数字逻辑电路的理解和设计能力。

二、实验设备与环境1、计算机一台2、 EDA 软件(如 Quartus II 等)三、实验原理1、数字逻辑基础数字电路中的基本逻辑门包括与门、或门、非门、与非门、或非门等。

通过这些基本逻辑门的组合,可以实现各种复杂的数字逻辑功能。

2、组合逻辑电路组合逻辑电路的输出仅取决于当前的输入,不存在存储单元。

常见的组合逻辑电路有加法器、编码器、译码器等。

3、时序逻辑电路时序逻辑电路的输出不仅取决于当前的输入,还与电路的过去状态有关。

常见的时序逻辑电路有计数器、寄存器等。

四、实验内容1、设计一个简单的加法器使用基本逻辑门设计一个两位加法器,输入为两个两位的二进制数A 和 B,输出为它们的和 S 以及进位 C。

2、设计一个 4 位计数器实现一个 4 位的计数器,能够在时钟信号的上升沿进行计数,计数范围为 0 到 15。

3、设计一个数码管显示译码器将输入的 4 位二进制数转换为数码管的 7 段显示编码,实现数字 0 到 9 的显示。

五、实验步骤1、加法器设计(1)打开 EDA 软件,创建一个新的项目。

(2)使用原理图输入方式,绘制出加法器的逻辑电路图,包括两个半加器和一个或门。

(3)对设计进行编译,检查是否存在语法错误。

(4)创建仿真文件,设置输入信号的激励,进行功能仿真,观察输出结果是否符合预期。

2、计数器设计(1)在项目中新建一个模块,使用 Verilog HDL 语言描述计数器的功能。

(2)编写测试代码,对计数器进行仿真验证。

(3)将计数器下载到硬件开发板上,通过观察实际的输出结果验证其功能。

3、数码管显示译码器设计(1)同样使用原理图输入方式,设计数码管显示译码器的逻辑电路。

(2)进行编译和仿真,确保译码器的功能正确。

(3)将译码器与计数器连接起来,实现数码管的动态显示。

EDA实验报告总结

EDA实验报告总结

EDA技术与应用实验报告学院:物理与电子学院专业班级:电子信息科学与技术1205 姓名:学号:目录实验一应用Quartus ΙΙ完成LED的驱动 (3)实验二组合逻辑电路的设计 (19)实验三时序逻辑电路的设计 (32)实验四:数字时钟设计 (45)实验五数据采集系统设计 (59)实验六序列检测器设计 (74)实验一应用Quartus ΙΙ完成LED的驱动一、实验目的通过实验让用户逐步了解、熟悉和掌握FPGA开发软件Quartus ΙΙ的使用方法及VHDL的编程方法。

本实验力求以详细的步骤和讲解让读者以最快的方式了解EDA技术开发以及软件的使用而快速入门,并激起读者对EDA技术的兴趣。

二、实验内容SmartSOPC 实验箱上有8个发光二极管LED1~LED8,在QuikSOPC 核心板上LED1~LED8分别于FPGA芯片的第50、53~55、176和第47~49引脚相连(SmartSOPC 实验箱的LED1~LED8通过跳线JP6的LED0~LED7分别与FPGA的第50、53~55、176和第47~49引脚相连)。

本实验的内容是建立可用于控制LED亮/灭的简单硬件电路,要求点亮SmartSOPC试验箱上的4个发光二极管(LED1、LED3、LED5、LED7)。

具体包括:①使用Quartus ΙΙ建立工程;②Quartus ΙΙ工程设计;③设置编译选项并编译硬件系统;三、实验原理FPGA器件同单片机一样,为用户提供了许多灵活独立的输入/输出I/O口(单元)。

FPGA每个I/O口可以配置为输入、输出、双向I/O、集电极开路和三态门等各种组态。

做为输出口时,FPGA的I/O口可以吸收最大为24mA的电流,可以直接驱动发光二极管LED等器件。

所以只要正确分配并锁定引脚后,在相应的引脚上输出低电平“0”,就可实现点亮该发光二极管的功能。

四、实验步骤使用Quartus ΙΙ建立工程打开Quartus II软件并建立工程①在Windows桌面上选择“开始”→“程序”→“Altera”→Quartus ΙΙ 9.0,打开Quartus ΙΙ 9.0软件,软件界面如图1所示。

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

时序电路设计
实验目的:
1.掌握条件语句在简单时序模块设计中的使用。

2.学习在Verilog模块中应用计数器。

实验环境:
Windows 7、MAX+PlusⅡ10等。

实验内容:
1.模为60的8421BCD码加法计数器的文本设计及仿真。

2.BCD码—七段数码管显示译码器的文本设计及仿真。

3.用For语句设计和仿真七人投票表决器。

4.1/20分频器的文本设计及仿真。

实验过程:
一、模为60的8421BCD码加法计数器的文本设计及仿真:
(1)新建文本:选择菜单File下的New,出现如图5.1所示的对话框,在框中选中“Text Editor file”,按“OK”按钮,即选中了文本编辑方式。

图5.1 新建文本
(2)另存为Verilog编辑文件,命名为“count60.v”如图5.2所示。

(3)在编辑窗口中输入程序,如图5.3所示。

图5.2 另存为.V编辑文件图5.4 设置当前仿真的文本设计图5.3 模为60的8421BCD码加法计数器的设计代码
(4)设置当前文本:在MAX+PLUS II中,在编译一个项目前,必须确定一个设计文件作为当前项目。

按下列步骤确定项目名:在File菜单中选择Project 中的Name选项,将出现Project Name 对话框:在Files 框内,选择当前的设计文件。

选择“OK”。

如图5.4所示。

(5)打开编译器窗口:在MAX—plusⅡ菜单内选择Compiler 项,即出现如图5.5的编译器窗口。

图5.5 编译器窗口
选择Start即可开始编译,MAX+PLUS II编译器将检查项目是否有错,并对项目进行逻辑综合,然后配置到一个Altera 器件中,同时将产生报告文件、编程文件和用于时间仿真用的输出文件。

(6)建立波形编辑文件:选择菜单File下的New选项,在出现的New对话框中选择“Waveform Editor File”,单击OK后将出现波形编辑器子窗口。

(7)仿真节点插入:选择菜单Node下的Enter Nodes from SNF选项,出现如图5.6所示的选择信号结点对话框。

按右上侧的“List”按钮,在左边的列表框选择需要的信号结点,然后按中间的“=>”按钮,单击“OK”,选中的信号将出现在波形编辑器中。

图5.6 仿真节点插入
(8)输入波形设置,保存波形文件,
文本仿真:单击菜单File下的Save选项,
在弹出的窗口中将波形文件存在以上的同
一目录中,文件取名为count60.scf。

单击
MAX—plusⅡ菜单内选择Simulator选项,
单击Start,接着打开Open SCF(界面如下
图5.7所示),即完成计数器的波形仿真。

图5.7 Simulator仿真
二、BCD码—七段数码管显示译码器、七人投票表决器、1/20分频器的文本设计及仿真:
(1)新建文本:“File”→“New”,出现如图5.1所示的对话框,“Text Editor file”→“OK”。

(2)另存为Verilog编辑文件:分别命名为“decode4_7.v”、“voter7.v”、“fdivision..v”,与图5.2类似。

(3)在编辑窗口中分别输入各自相应的程序代码,分别如图5.8、图5.9、图5.10所示。

图5.8 BCD码—七段数码管显示译码器的设计代码
图5.9 七人投票表决器的设计代码图5.10 1/20分频器的设计代码
(4)设置当前文本:“File”→“Project”→“Name”,出现与图5.4类似的Project Name对话框:选择→“OK”。

(5)打开编译器窗口:在MAX—plusⅡ菜单内选择Compiler 项,单击Start。

与图5.5类似。

(6)建立波形编辑文件:选择菜单File下的New选项,在出现的New对话框中选择“Waveform Editor File”,单击OK后将出现波形编辑器子窗口。

(7)仿真节点插入:选择菜单Node下的Enter Nodes from SNF选项,单击“List”按钮,再单击中间的“=>”按钮,插入仿真节点。

单击“OK”,选中的信号将出现在波形编辑器中。

与图5.6类似。

(8)输入波形设置,保存波形文件,文本仿真:单击菜单File下的Save选项,在弹出的窗口中将波形文件存在以上的同一目录中,文件分别取名为decode4_7.scf、voter7.scf、fdivision.scf。

单击MAX—Plus Ⅱ菜单内选择Simulator选项,单击Start,接着打开Open SCF(界面与图5.7类似),即完成对以上实验的波形仿真。

实验结果及分析:
一、模为60的8421BCD码加法计数器实验的仿真结果,如下图5.11所示:
图5.11 模为60的8421BCD码加法计数器仿真波形窗口二、BCD码—七段数码管显示译码器实验的仿真结果,如下图5.12所示:
图5.12 BCD码—七段数码管显示译码器仿真波形窗口三、七人投票表决器实验的仿真结果,如下图5.13、图5.14所示:
图5.13 七人投票表决器仿真波形窗口(不通过)
图5.14 七人投票表决器仿真波形窗口(通过)四、1/20分频器的仿真结果,如下图5.15所示:
图5.15 1/20分频器仿真波形窗口
实验心得:
通过本次计数器、译码器、表决器及1/20分频器的文本设计和仿真的实验,巩固了用MAX+PlusⅡ完成Verilog语言的文本设计和仿真的基本流程。

掌握条件语句、循环语句在简单时序模块设计中的使用。

相关文档
最新文档