FPGA触发器与计数器实验报告
数电实验报告触发器及其应用(共10篇)

数电实验报告触发器及其应用(共10篇)1、实验目的:掌握触发器的原理和使用方法,学会利用触发器进行计数、存储等应用。
2、实验原理:触发器是一种多稳态数字电路,具有存储、计数、分频、时序控制等功能。
常见的触发器有RS触发器、D触发器、T触发器、JK触发器等。
RS触发器是由两个交叉互连的反相器组成的,它具有两个输入端R(复位)和S(置位),一个输出端Q。
当输入R=1,S=0时,Q=0;当输入R=0,S=1时,Q=1;当R=S=1时,无法确定Q的状态,称为禁态。
JK触发器是将RS触发器的两个输入端合并在一起而成,即J=S,K=R,当J=1,K=0时,Q=1;当J=0,K=1时,Q=0;当J=K=1时,Q反转。
JK触发器具有启动、停止、颠倒相位等功能。
D触发器是由单个输入端D、输出端Q和时钟脉冲输入端组成的,当时钟信号上升沿出现时,D触发器的状态发生改变,如果D=1,Q=1;如果D=0,Q=0。
T触发器只有一个输入端T和一个输出端Q,在每个时钟脉冲到来时,T触发器执行T→Q操作,即若T=1,则Q取反;若T=0,则Q保持不变。
触发器可以组成计数器、分频器、存储器、状态机等各种数字电路,被广泛用于计算机、控制系统等领域。
3、实验器材:数码万用表、示波器、逻辑分析仪、CD4013B触发器芯片、几个电阻、电容、开关、信号发生器等。
4、实验内容:4.1 RS触发器测试利用CD4013B芯片来测试RS触发器的功能,在实验中将RS触发器的输入端分别接入CD4013B芯片的端子,用示波器观察输出端的波形变化,并记录下输入输出关系表格,来验证RS触发器的工作原理。
具体实验步骤如下:将CD4013B芯片的端子按如下接线方式连接:RST1,2脚接入+5V电源,C1个100nF的电容与单位时间5 ns的外部时钟信号交替输入接口CLK,以模拟器件为master时,向器件提供单个时钟脉冲。
测试时选择适宜的数据输入,R1和S2另一端程+5V,S1和R2另一端连接接地GND,用万用表测量各端电压,电容缓存的电压。
FPGA实验报告

FPGA实验报告一、实验目的本次FPGA实验目的是通过使用FPGA开发板,了解FPGA的基本原理和应用,培养学生对数字电路设计的基本能力。
二、实验原理FPGA(Field-Programmable Gate Array)是一种可编程逻辑芯片,通过在芯片中加入多个查找表、可编程互连和触发器等基本模块,使得用户可以根据实际需求程序设计芯片的逻辑功能和互连关系。
FPGA的主要优点是能快速更新设计并且重配置灵活,而且速度快、功耗低。
本次实验我们使用的FPGA开发板是Xilinx Spartan-6系列,采用的开发环境是Xilinx ISE Design Suite。
三、实验内容1.实验用到的器件及端口我们使用的FPGA开发板上有多个输入输出端口,如LED灯、开关、按键等。
其中LED灯作为输出端口,开关和按键作为输入端口。
实验中,我们通过控制开关的状态,来控制LED灯的亮与灭。
2.设计电路我们的实验电路主要由一个FPGA芯片、多个LED灯、多个开关和按键等组成。
具体设计如下:(插入电路图)3.编写代码我们使用Verilog语言来描述逻辑电路的功能,并将其编写成代码。
代码示例如下:module led_controllerinput wire CLK,input wire [3:0] SWITCH,output reg [7:0] LEDcase(SWITCH)endcaseendendmodule4.烧录代码通过Xilinx ISE Design Suite的工具链,将上述代码综合、实现、生成比特文件。
然后通过JTAG接口将比特文件烧录到FPGA芯片中。
5.实验结果实验结果是通过观察LED灯的亮灭情况来验证代码的正确性。
根据开关的不同状态,LED灯的亮灭也不同。
四、实验总结通过本次实验,我们深入了解了FPGA的基本原理和应用,并且使用了Xilinx Spartan-6系列的开发板完成了LED控制的实验。
通过观察LED灯的亮灭情况,验证了我们编写的代码的正确性。
时序电路应用实验报告(3篇)

第1篇一、实验目的1. 理解时序电路的基本概念和组成,掌握时序电路的设计方法和分析方法。
2. 掌握计数器、寄存器、移位寄存器等时序电路的应用。
3. 熟悉FPGA开发环境,能够使用Quartus II设计工具进行时序电路的设计和仿真。
二、实验原理时序电路是数字电路中的一种重要电路,它能够根据输入信号的变化,产生一系列有序的输出信号。
时序电路主要由触发器、逻辑门和时钟信号组成。
1. 触发器:触发器是时序电路的基本单元,具有存储一个二进制信息的功能。
常见的触发器有D触发器、JK触发器、T触发器等。
2. 逻辑门:逻辑门用于实现基本的逻辑运算,如与、或、非、异或等。
3. 时钟信号:时钟信号是时序电路的同步信号,用于控制触发器的翻转。
三、实验内容1. 计数器设计(1)设计一个3位同步二进制加计数器。
(2)设计一个3位同步二进制减计数器。
2. 寄存器设计使用74LS74触发器设计一个双向移位寄存器。
3. 移位寄存器设计使用74LS74触发器设计一个单向移位寄存器。
4. 环形计数器设计使用74LS74触发器设计一个环形计数器。
5. 可控分频器设计使用Verilog HDL语言设计一个可控分频器,实现时钟信号的分频功能。
四、实验步骤1. 使用Quartus II设计工具创建工程,并添加所需的设计文件。
2. 根据实验原理,编写时序电路的Verilog HDL代码。
3. 编译代码,并生成测试平台。
4. 在测试平台上进行仿真,验证时序电路的功能。
5. 将设计下载到FPGA,进行硬件实验。
6. 记录实验结果,分析实验现象。
五、实验结果与分析1. 计数器实验结果(1)3位同步二进制加计数器:按照时钟信号的变化,计数器能够从000计数到111。
(2)3位同步二进制减计数器:按照时钟信号的变化,计数器能够从111减到000。
2. 寄存器实验结果使用74LS74触发器设计的双向移位寄存器,能够实现数据的左移和右移功能。
3. 移位寄存器实验结果使用74LS74触发器设计的单向移位寄存器,能够实现数据的左移功能。
FPGA_触发器与计数器实验报告

电力学院FPGA应用开发实验报告实验名称:触发器与计数器专业:电子科学与技术姓名:班级:学号:1.触发器功能的模拟实现实验目的:1.掌握触发器功能的测试方法。
2.掌握基本RS触发器的组成及工作原理。
3.掌握集成JK触发器和D触发器的逻辑功能及触发方式。
4.掌握几种主要触发器之间相互转换的方法。
5.通过实验,体会EPLD芯片的高集成度和多I/O口。
实验说明:将基本RS触发器,同步RS触发器,集成J-K触发器,D触发器同时集一个FPGA芯片中模拟其功能,并研究其相互转化的方法。
实验的具体实现要连线测试,实验原理如图所示:2.计数器在VHDL中,可以用Q<=Q+1简单地实现一个计数器,也可以用LPM来实现。
下面分别对这两种方法进行介绍。
方法一:第1步:新建一个Quartus项目。
第2步:建立一个VHDL文件,实现一个8位计数器。
计数器从“00000000”开始计到“11111111”,计数器的模是256。
计数器模块还需要包含一个时钟clock、一个使能信号en、一个异步清0信号aclr和一个同步数据加载信号sload。
模块符号如下图所示:第3步:VHDL代码如下:第4步:将VHDL文件另存为counter_8bit.vhd,并将其设定为项目的最顶层文件,再进行语法检查。
第5步:语法检查通过以后,用KEY[0]表示clock,SW[7..0]表示data,SW[8~10]分别表示en、sload和aclr;LEDR[7..0]表示q。
第6步:引脚分配完成后,编译并下载。
第7步:修改上述代码,把计数器的模更改为100,应如何操作。
模为100的计数器,VHDL代码如下:方法二:使用LPM实现8位计数器。
LPM是指参数化功能模块,用LPM可以非常方便快捷地实现一个计数器。
第1步:选择Tools->MegaWizard Plug-In Manager命令,打开如下图所示的对话框。
第2步:直接单击Next按钮,出现如下图所示的对话框。
触发器_实验报告

一、实验目的1. 理解和掌握触发器的基本原理和功能。
2. 熟悉基本RS、JK、D和T触发器的逻辑功能及其应用。
3. 学习触发器之间相互转换的方法。
4. 通过实验,加深对触发器在数字电路中的应用理解。
二、实验原理触发器是一种具有记忆功能的电子器件,它可以根据输入信号和时钟脉冲的变化,在两个稳定状态之间进行切换。
触发器在数字电路中有着广泛的应用,如计数器、寄存器、时序电路等。
触发器根据时钟脉冲的触发方式分为同步触发器和异步触发器。
同步触发器在时钟脉冲的上升沿或下降沿发生状态转换,而异步触发器则不受时钟脉冲的限制,可以在任何时刻发生状态转换。
三、实验仪器与设备1. 双踪示波器2. 数字万用表3. 数字电路实验箱4. 74LS00(二输入端四与非门)5. 74LS74(双D触发器)6. 74LS76(双J-K触发器)四、实验内容与步骤1. 基本RS触发器功能测试(1)搭建基本RS触发器电路,连接实验箱中的与非门。
(2)按照实验要求,在S、R端加信号,观察并记录触发器的Q、端状态。
(3)分析实验结果,总结RS触发器的逻辑功能。
2. JK触发器功能测试(1)搭建JK触发器电路,连接实验箱中的与非门。
(2)按照实验要求,在J、K端加信号,观察并记录触发器的Q、端状态。
(3)分析实验结果,总结JK触发器的逻辑功能。
3. D触发器功能测试(1)搭建D触发器电路,连接实验箱中的与非门。
(2)按照实验要求,在D端加信号,观察并记录触发器的Q、端状态。
(3)分析实验结果,总结D触发器的逻辑功能。
4. T触发器功能测试(1)搭建T触发器电路,连接实验箱中的与非门。
(2)按照实验要求,在T端加信号,观察并记录触发器的Q、端状态。
(3)分析实验结果,总结T触发器的逻辑功能。
5. 触发器之间相互转换(1)分析基本RS触发器与JK触发器之间的转换方法。
(2)分析基本RS触发器与D触发器之间的转换方法。
(3)分析基本RS触发器与T触发器之间的转换方法。
fpga触发器及计数器实验报告

XX电力学院FPGA应用开发实验报告实验名称:触发器与计数器专业:电子科学与技术姓名:班级:学号:1.触发器功能的模拟实现实验目的:1.掌握触发器功能的测试方法。
2.掌握基本RS触发器的组成及工作原理。
3.掌握集成JK触发器和D触发器的逻辑功能及触发方式。
4.掌握几种主要触发器之间相互转换的方法。
5.通过实验,体会EPLD芯片的高集成度和多I/O口。
实验说明:将基本RS触发器,同步RS触发器,集成J-K触发器,D触发器同时集一个FPGA芯片中模拟其功能,并研究其相互转化的方法。
实验的具体实现要连线测试,实验原理如图所示:2.计数器在VHDL中,可以用Q<=Q+1简单地实现一个计数器,也可以用LPM来实现。
下面分别对这两种方法进行介绍。
方法一:第1步:新建一个Quartus项目。
第2步:建立一个VHDL文件,实现一个8位计数器。
计数器从“00000000”开始计到“11111111”,计数器的模是256。
计数器模块还需要包含一个时钟clock、一个使能信号en、一个异步清0信号aclr和一个同步数据加载信号sload。
模块符号如下图所示:第3步:VHDL代码如下:第4步:将VHDL文件另存为counter_8bit.vhd,并将其设定为项目的最顶层文件,再进行语法检查。
第5步:语法检查通过以后,用KEY[0]表示clock,SW[7..0]表示data,SW[8~10]分别表示en、sload和aclr;LEDR[7..0]表示q。
第6步:引脚分配完成后,编译并下载。
第7步:修改上述代码,把计数器的模更改为100,应如何操作。
模为100的计数器,VHDL代码如下:方法二:使用LPM实现8位计数器。
LPM是指参数化功能模块,用LPM可以非常方便快捷地实现一个计数器。
第1步:选择Tools->MegaWizard Plug-In Manager命令,打开如下图所示的对话框。
第2步:直接单击Next按钮,出现如下图所示的对话框。
实验六 触发器实验报告

实验六触发器实验报告一、实验目的本次实验的主要目的是深入理解触发器的工作原理和应用,通过实际操作和观察,掌握触发器在数字电路中的功能和特性。
二、实验原理触发器是一种具有记忆功能的基本逻辑单元,能够存储一位二进制信息。
常见的触发器类型有 SR 触发器、JK 触发器、D 触发器和 T 触发器等。
以 D 触发器为例,其工作原理是在时钟脉冲的上升沿或下降沿,将输入数据D 传递到输出端Q。
在没有时钟脉冲时,输出状态保持不变。
三、实验设备与材料1、数字电路实验箱2、 74LS74 双 D 触发器芯片3、示波器4、导线若干四、实验内容与步骤1、用 74LS74 芯片搭建 D 触发器电路将芯片插入实验箱的插座中,按照芯片引脚功能连接电源、地和输入输出引脚。
使用导线将 D 输入端连接到逻辑电平开关,将时钟输入端连接到脉冲信号源,将 Q 和 Q'输出端连接到发光二极管或逻辑电平指示器。
2、测试 D 触发器的功能置 D 输入端为高电平(1),观察在时钟脉冲作用下 Q 输出端的变化。
置 D 输入端为低电平(0),再次观察时钟脉冲作用下 Q 输出端的变化。
3、观察 D 触发器的异步置位和复位功能将异步置位端(PRE)和异步复位端(CLR)分别连接到逻辑电平开关,测试在置位和复位信号作用下触发器的状态。
4、用示波器观察时钟脉冲和 Q 输出端的波形将示波器的探头分别连接到时钟脉冲输入端和 Q 输出端,调整示波器的设置,观察并记录波形。
五、实验结果与分析1、在 D 输入端为高电平时,每当时钟脉冲的上升沿到来,Q 输出端变为高电平;在D 输入端为低电平时,每当时钟脉冲的上升沿到来,Q 输出端变为低电平,验证了 D 触发器的正常功能。
2、当异步置位端(PRE)为低电平时,无论其他输入如何,Q 输出端立即变为高电平;当异步复位端(CLR)为低电平时,Q 输出端立即变为低电平,表明异步置位和复位功能有效。
3、从示波器观察到的波形可以清晰地看到时钟脉冲与 Q 输出端的关系,进一步验证了触发器的工作特性。
FPGA实验报告5篇

FPGA实验报告5篇第一篇:FPGA实验报告FPGA实验报告专业:XXX 姓名:XXX 学号:XX一:实验目的1.熟悉Modelsim和Quartus II软件的运行环境和使用2.熟练使用Quartus II仿真软件生成网表。
3.熟悉FPGA前仿真和后仿真的整个流程。
二:实验内容编写counter计数器,在Quartus II仿真软件中生成网表,再在Modelsim中进行后仿真。
三: 实验步骤1.在Modelsim编写源程序(counter计数器及激励),编译源文件,确保程序的正确性,并进行前仿真,生成波形图如下:附:源程序如下:module counter(q,clk,reset);input clk,reset;output [3:0] q;reg [3:0] q;always @(posedge reset or negedge clk)if(reset)q <= 4'b0;elseq <= q + 1;endmodule module top;reg CLK,RESET;wire [3:0] Q;counter c1(Q,CLK,RESET);initialCLK=1'b0;always#1 CLK=~CLK;initial$monitor($time,“Q=%d”,Q);initialbeginRESET=1'b1;#5 RESET=1'b0;#180 RESET=1'b1;end endmodule 2.新建文件夹,将源程序counter.v放进去。
然后启动Quartus II仿真软件,生成网表。
1).在【File】下拉菜单中选中New Project Wizard选项,出现对话框。
并指定工程工作目录、工程名称和顶层模块名,如图(a)所示。
2).添加(Add)counter.v文件。
如图(b)所示。
3).选择器件系列4).指定其它EDA工具,如图(d)所示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
上海电力学院FPGA应用开发实验报告
实验名称:触发器与计数器
专业:电子科学与技术
姓名:
班级:
学号:
1.触发器功能的模拟实现
实验目的:
1.掌握触发器功能的测试方法。
2.掌握基本RS触发器的组成及工作原理。
3.掌握集成JK触发器和D触发器的逻辑功能及触发方式。
4.掌握几种主要触发器之间相互转换的方法。
5.通过实验,体会EPLD芯片的高集成度和多I/O口。
实验说明:
将基本RS触发器,同步RS触发器,集成J-K触发器,D触发器同时集一个FPGA芯片中模拟其功能,并研究其相互转化的方法。
实验的具体实现要连线测试,实验原理如图所示:
2.计数器
在VHDL中,可以用Q<=Q+1简单地实现一个计数器,也可以用LPM来实现。
下面分别对这两种方法进行介绍。
方法一:
第1步:新建一个Quartus项目。
第2步:建立一个VHDL文件,实现一个8位计数器。
计数器从“00000000”开始计到“11111111”,计数器的模是256。
计数器模块还需要包含一个时钟clock、一个使能信号en、一个异步清0信号aclr和一个同步数据加载信号sload。
模块符号如下图所示:
第3步:VHDL代码如下:
第4步:将VHDL文件另存为counter_8bit.vhd,并将其设定为项目的最顶层文件,再进行语法检查。
第5步:语法检查通过以后,用KEY[0]表示clock,SW[7..0]表示data,SW[8~10]分别表示en、sload和aclr;LEDR[7..0]表示q。
第6步:引脚分配完成后,编译并下载。
第7步:修改上述代码,把计数器的模更改为100,应如何操作。
模为100的计数器,VHDL代码如下:
方法二:使用LPM实现8位计数器。
LPM是指参数化功能模块,用LPM可以非常方便快捷地实现一个计数器。
第1步:选择Tools->MegaWizard Plug-In Manager命令,打开如下图所示的对话框。
第2步:直接单击Next按钮,出现如下图所示的对话框。
如图所示,在左边的选择框中选择“LPM_COUNTER”,在输出文件类型单选框中选中“VHDL”,并输入文件名为“counter_lpm”。
第3步:完成设置后直接单击Next按钮,打开如下图所示的对话框。
在输出位数的下拉框中选择“8 bits”,在计数方向的单选框中选中“Up only”。
这个设置表示生成的计数器是8位加法计数器。
第4步:独立设计模为七的计数器
第4步:单击Next按钮后,出现如下图所示的对话框。
在该对话框中选择添加额外的端口,在这里选中“Count Enable”选项,表示添加了一个计数使能端口,此时在左边的图形符号中可以看到多了一个“cnt_en”的引脚。
第5步:单击Next按钮,打开如下图所示的下一个对话框。
在同步输入(Synchronous inputs)处选择“Load”,在异步输入(Asynchronous inputs)处选择“Clear”。
表示在计数器中添加了一个同步置数端和一个异步清0端,在左边
的图形符号中可以看到又添加了一个aclr、sload和用于置数用的data[7..0]。
第6步:继续单击Next按钮直到结束为止。
到此即完成了一个8位计数器的设计,同时生成了一个VHDL文件此couter_lpm.vhd。
第7步:接着需要将生成的couter_lpm.vhd文件添加到项目中,如下图所示,在项目浏览器窗口中,右击“Device Design Files”,在下拉菜单中选择“Add/Remove Files in Project”命令。
第8步:选择添加文件命令后,打开如下图所示的对话框。
在“File name”处可直接输入将添加的文件名,或通过点击右边的浏览按钮,打开浏览窗口,选择需要添加的文件。
然后点击右边的Add按钮,即完成。
第9步:将couter_lpm.vhd设定为顶层设计文件,进行语法检查后,执行与方法一相同的操作即可。
3.时钟电路
利用上面设计好的计数器和分频器设计一个实时的时钟。
一共需要1个模24计数器、2个模6计数器、2个模10计数器、一个生成1Hz的分频器和6个数码管解码器。
最终用HEX5~HEX4显示小时(0~23),用HEX3~HEX2显示分钟(0~59),用HEX1~HEX0显示秒钟(0~59)。
具体步骤如下:
第1步:新建一个QuartusII工程,将其命名为Clockcircut。
第2步:建立各功能模块(计数器、分频器及7段数码管)的VHDL文件,并分别将它们设置成顶层文件,进行编译和仿真。
(1)模为24的计数器VHDL代码:
(2)模为6的计数器VHDL代码:
(3)模为10的计数器VHDL代码:
(4)7段数码管的VHDL代码:
(5)50M分频的分频器VHDL代码:
第3步:语法检查通过后直接生成符号。
第4步:采用图形编辑器,将几个模块连接起来构成一个时钟。
第5步:将原理图保存为clockcircuit.bdf,并进行语法分析,确定无误后在进行引脚分配。
第6步:锁定引脚以后,对项目进行全编译,然后下载到开发板上观察实验现象。