FPGA 简单的组合逻辑电路设计实验报告

合集下载

实验一 组合逻辑实验

实验一 组合逻辑实验

实验一 组合逻辑实验一、实验目的:1.学习Xilinx 软件的基本使用;熟悉FPGA 的现场可编程特性2.初步掌握用硬件描述语言(HDL )设计电路的方法;掌握top-down 设计方法,并利用FPGA 来实现简单的组合电路3.了解3-8译码器的性能与特点;学习利用多种描述方式实现功能。

4.学习modelsim 仿真工具的使用方法,掌握各种仿真流程与实现方法。

二、实验任务:1、本实验要求利用FPGA 实现常用的标准3-8译码逻辑电路。

利用MODELSIM6.1观察结果。

2、分别利用IF 语句和CASE 语句两种方法实现。

3、用testbench waveform 建立合适的测试向量,看行为仿真和布线后仿真波形。

4、试建立一个顶层文件,将原实现的实体作为元件,重新编译和仿真。

判别在相同测试向量下,行为仿真与布线后仿真波形是否相同。

三、实验设备:1、PC 机一台。

2、清华大学EDA 可编程ASIC 实验箱一套。

3、导线若干。

四、实验原理3-8译码器是一种最常用的小规模集成电路。

它的功能就是对从地址输入端A 、B 、C 输入的二进制数据进行译码,以确定输出端Y0~Y7的哪一个输出端变为有效(低电平),从而达到译码的目的。

只有在G1=1,G2A=0,G2B=0时,3-8译码器才能进行正常译码,否则Y0~Y7输出均为高电平。

电路功能说明:3-8译码器是一种最常用的小规模集成电路。

它的功能就是对从地址输入端A 、B 、C 输入的二进制数据进行译码,以确定输出端Y0~Y7的哪一个输出端变为有效(低电平),从而达到译码的目的。

只有在G1=1,G2A=0,G2B=0时,3-8译码器才能进行正常译码,否则Y0~Y7输出均为高电平。

3-8译码器五、实验报告要求1、写出代码2、贴出行为仿真图3、对设计的流程进行描述;4、通过此次实验的收获、感想及建议;。

实验二 组合逻辑电路的设计 fpga

实验二 组合逻辑电路的设计   fpga

实验二组合逻辑电路的设计一、实验目的:1、掌握用VHDL语言和EPLD进行组合逻辑电路的设计方法。

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

3、掌握组合逻辑电路的静态测试方法。

二、实验设备:PC机三、实验内容:1、用VHDL语言输入法设计三人表决器,其输入为8421码,要求当输入1的个数大于等于2时,判别电路输出为1;反之为0。

2、用VHDL语言输入法设计8-3编码器。

四、实验步骤:(一)三人表决器1、采用文本编辑器输入三人表决器VHDL语言源程序,建立工程。

VHDL语言源程序如下所示:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity bj isport (m:in std_logic_vector(2 downto 0);y:out std_logic);end;architecture one of bj isbeginprocess (m)beginif m="000" then y<='0';elsif m="001"then y<='0';elsif m="010"then y<='0';elsif m="011"then y<='1';elsif m="100"then y<='0';elsif m="101"then y<='1';elsif m="110"then y<='1';elsif m="111"then y<='1';end if;end process;end;2、编译并进行仿真,仿真结果如下所示:由仿真结果可以验证当输入1的个数大于等于2时,判别电路输出为1;反之为0。

FPGA实训报告

FPGA实训报告

1.FPGA硬件系统设计1.1 功能要求利用所给器件:一个8位拨码开关(见图1-1),排针40×1,芯片DAC0832×1,芯片LM358×1,一个电位器构成硬件电路,实现与FPGA相连,输出正弦波,三角波,锯齿波,方波。

(图1-1)1.2FPGA硬件系统组成(见图1-2)(图1-2)FPGA框架结构由三部分组成:可编程输入/输出模块I/OB (I/O Block)——I/OB:位于芯片内部四周,主要由逻辑门、触发器和控制单元组成。

在内部逻辑阵列与外部芯片封装引脚之间提供一个可编程接口。

可配置逻辑模块CLB (Configurable Logic Block)——CLB:是FPGA的核心阵列,用于构造用户指定的逻辑功能,不同生产厂商的FPGA 器件其不同之处主要在核心阵列。

每个CLB 主要由查找表LUT (Look Up Table )、触发器、数据选择器和控制单元组成。

可编程内部连线PI (Programmable Interconnect) ——PI :位于CLB 之间,用于传递信息。

编程后形成连线网络,提供CLB 之间、CLB 与I/OB 之间的连线。

1.3 FPGA 最小系统简介(见图1-3)(图1-3)1.3.1 FPGA 最小系统板(见图1-4)(图1-4)1.3.2 下载接口Alter 提供常用的编程连接电缆有4种: (1)Byte Blaster 配置电缆 (2)Byte Blaster MV 配置电缆(3)Master Blaster/USB 配置电缆(USB – Blaster ) (4)Bit Blaster 配置电缆计算机接口JTAG 接口FPGA / CPLD 芯片晶振复位电源输入接口输出接口下载电缆AS 接口串口连接时编程电缆选择:可以选择Bit Blaster或Master Blaster配置电缆;并口连接时编程电缆选择:可以选择Byte Blaster或Byte Blaster MV配置电缆;USB连接时编程电缆选择:选择Master Blaster配置电缆。

FPGA实验报告北航电气技术实验

FPGA实验报告北航电气技术实验

FPGA电气技术实践实验报告院(系)名称宇航学院专业名称飞行器设计与工程(航天)学生学号XXXXXXXX学生姓名XXXXXX指导教师XXXX2017年11月XX日实验一四位二进制加法计数器与一位半加器的设计实验时间:2017.11.08(周三)晚实验编号20一、实验目的1、熟悉QuartusII的VHDL的文本编程及图形编程流程全过程。

2、掌握简单逻辑电路的设计方法与功能仿真技巧。

3、学习并掌握VHDL语言、语法规则。

4、参照指导书实例实现四位二进制加法计数器及一位半加器的设计。

二、实验原理.略三、实验设备1可编程逻辑实验箱EP3C55F484C8 一台(包含若干LED指示灯,拨码开关等)2计算机及开发软件QuartusII 一台套四、调试步骤1四位二进制加法计数器(1)参照指导书实例1进行工程建立与命名。

(2)VHDL源文件编辑由于实验箱上LED指示灯的显示性质为“高电平灭,低电平亮”,为实现预期显示效果应将原参考程序改写为减法器,且”q1<= q1+1”对应改为”q1<= q1-1”,以实现每输入一个脉冲“亮为1,灭为0”。

由于参考程序中的rst清零输入作用并未实现,所以应将程序主体部分的最外部嵌套关于rst输入是否为1的判断,且当rst为1时,给四位指示灯置数”1111”实现全灭,当rst为0时,运行原计数部分。

(3)参照指导书进行波形仿真与管脚绑定等操作,链接实验箱并生成下载文件(4)将文件下载至实验箱运行,观察计数器工作现象,调试拨动开关查看是否清零。

可以通过改变与PIN_P20(工程中绑定为clk输入的I/O接口)相连导线的另一端所选择的实验箱频率时钟的输出口位置,改变LED灯显示变化频率。

并且对照指导书上对实验箱自带时钟频率的介绍,可以通过改变导线接口转换输入快慢,排查由于clk输入管脚损坏而可能引起的故障。

2一位半加器(1)参照指导书实例1进行工程建立与命名。

(2)图形源文件编辑:由于实验箱上LED指示灯的显示性质为“高电平灭,低电平亮”,为实现预期显示效果应将原电路图中两个输出管脚与非门串联以实现原参考输出“高电平亮,低电平灭”。

FPGA组合逻辑设计

FPGA组合逻辑设计

东南大学电工电子实验中心实验报告课程名称:计算机结构与逻辑设计实验第二次实验实验名称:FPGA组合逻辑设计院(系):吴健雄学院专业:工科试验班姓名:学号:实验室: 103 实验组别:同组人员:实验时间:2018年11月01 日评定成绩:审阅教师:一、实验目的1.掌握使用ISE软件的基本方法,包括设计原理图、功能仿真和时序仿真、管脚绑定等。

2.了解竞争与险象出现的原因,通过ISE 仿真观察波形的毛刺。

3.理解数码管的原理。

二、实验原理(主要写用到的的理论知识点,不要长篇大论)1.ISE软件的相关操作。

2.竞争与险象出现的原因。

三、实验内容必做实验:①在ISE中用原理图输入方法,用一个4选1数据选择器实现如下逻辑函数:∑)(m,8,5,2,1,0(YDCBA=)13,1210,2.函数表达式(预习时完成):Y D BA C A DC B=++降维:3.电路原理图(预习时完成):4.仿真结果:5.测试方案:进行管脚绑定,DCBA四个输入与使用大拨码开关。

输出端Y使用LED灯。

数据分析:符合真值表②在ISE中用原理图输入方法,实现如图所示与非门,并利用ISE的软件仿真功能完成以下实验。

电路原理图(预习时完成):a)输入A为10ns的时钟信号,输入B = ‘1’,查看器件数据手册,在I/O Bank1中选择3个器件管脚分别分配给A、B、Y。

观察并记录功能仿真和时序仿真下Y的输出波形,并对结果进行分析。

仿真结果:1.功能仿真:2.时序仿真:绑定的管脚如下数据分析:功能仿真无延时,时序仿真延时约1.653ns。

可见同一块I/O Bank中存在延时。

符合预估情况。

b)查看器件数据手册,在I/O Bank1中选择2个器件管脚分别分配给A、B,I/O Bank2中选择1个器件管脚分配给Y,重复a的实验内容中的时序仿真部分。

绑定的管脚如下:仿真结果:数据分析:延时约1.655ns,可见在不同I/O Bank 之间传输比相同的I/O Bank中延时时间长。

FPGA实验报告

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灯的亮灭情况,验证了我们编写的代码的正确性。

FPGA实验报告

FPGA实验报告

南京理工大学泰州科技学院FPGA系统设计实验报告教材名称:FPGA系统设计与应用开发指导教师:周莉莉实验室:4401学院(系):电子电气工程学院专业班级:10电信(1)班姓名:周根生朱守超学号:1002040149 1002040150实验学期:2013-2014学年第一学期总评成绩:教师签字:南京理工大学泰州科技学院FPGA系统设计实验报告目录实验一Max+plusII原理图设计输入 (1)实验二简单逻辑电路设计与仿真 (6)实验三组合逻辑电路设计(一) (11)实验四组合逻辑电路设计(二) (16)实验五有限状态机的设计 (26)实验六数字频率计 (32)南京理工大学泰州科技学院FPGA系统设计实验报告课程: FPGA系统设计班级:10电信1班姓名:周根生朱守超学号:10020401491002040150指导教师:周莉莉实验日期:实验题目:Max+plusII原理图设计输入成绩:一、设计任务采用原理图设计输入法,设计一个具有四舍五入功能的电路,其输入为4位二进制数,要求输入大于或等于0101时,电路输出为高电平,小于0101时电路输出为低电平。

二、设计过程根据设计要求列出四舍五入的真值表,如图1.1所示。

图1.1 四舍五入真值表由图1.1可得化简的表达式为OUT=A+BD+BC,由逻辑表达式可知,要设计的电路图有四个输入端(A,B,C,D)和一个输出端OUT,整个电路由两个2输入端的与门和一个3输入的或门组成。

启动MAX+plusII,新建Graphic Editor file文件,后缀为.gdf。

在编辑界面空白处双击左键,出现输入元件对话框如图1.2所示,在Symbol Name栏中直接输入元件的符号名OK,输入端(input),输出端(output),连接电路如图1.3所示。

图1.2 操作图1.3 原理图芯片型号选择单击Assign,选择Device,如图1.4所示。

图1.4 型号引脚命名双击PIN_NAME,使其变黑后输入引脚名,并保存文件然后编译,如图1.5所示。

合工大FPGA实验报告

合工大FPGA实验报告

《电子工程师基本硬件实践技能训练(下)》实验报告系(院):计算机与信息学院专业:通信工程班级:姓名:学号:指导教师:许良凤吴从中周红平学年学期: 2018 ~ 2019 学年第一学期2018年12月23日实验一 7段数码显示译码器设计一、实验目的(1)学习使用Verilog HDL语言设计简单组合逻辑电路。

(2)学习使用case语句来描述真值表。

二、实验设备与器材GW-PK2 EDA实验箱一台。

三、实验内容及实验步骤(1)用Verilog HDL设计一个共阴数码管的译码电路,用case语句描述7段译码器的真值表。

(2)编译、综合、适配、下载,验证结果。

(3)进行功能仿真。

(4)设计提示:建议选实验电路模式6,用数码8显示译码输出(PIO46~PIO40),键8、键7、键6、键5四位控制输入,硬件验证译码器的工作性能。

注意,在仿真中,4位输入都必须用总线方式给数据。

具体步骤:(1)用文本方式输入设计文件并存盘。

(2)选择目标器件并编译、综合。

(3)进行时序仿真。

(4)锁定引脚,并编译、综合。

(5)在实验箱上选择模式6。

(6)将数据下载到实验箱。

(7)在实验箱上验证7段显示数码器的功能。

实验代码如下module DECL7S (A,LED7S);input[3:0] A; output[6:0] LED7S;reg[6:0] LED7S;always@(A)case(A)4'b0000 : LED7S <= 7'B0111111;4'b0001 : LED7S <= 7'B0000110;4'b0010 : LED7S <= 7'B1011011;4'b0011 : LED7S <= 7'B1001111;4'b0100 : LED7S <= 7'B1100110;4'b0101 : LED7S <= 7'B1101101;4'b0110 : LED7S <= 7'B1111101;4'b0111 : LED7S <= 7'B0000111;4'b1000 : LED7S <= 7'B1111111;4'b1001 : LED7S <= 7'B1101111;4'b1010 : LED7S <= 7'B1110111;4'b1011 : LED7S <= 7'B1111100;4'b1100 : LED7S <= 7'B0111001;4'b1110 : LED7S <= 7'B1111001;4'b1111 : LED7S <= 7'B1110001;default : LED7S <= 7'B0111111;endcaseEndmodule2.编译、综合、适配、下载,验证结果。

FPGA 简单的组合逻辑电路设计实验报告

FPGA 简单的组合逻辑电路设计实验报告

上海电力学院实验报告实验课程名称:FPGA应用开发试验实验项目名称:简单的组合逻辑电路设计班级:姓名:学号:成绩:________ 实验时间:一、实验目的1、掌握组合逻辑的设计方法。

2、掌握组合逻辑电路的静态测试方法。

3、加深PLD设计的过程,并比较原理图输入和文本输入的优劣。

二、实验原理根据第三章学习的VHDL硬件描述语言来设计一定功能的电路。

三、实验步骤1、四舍五入判别电路设计一个四舍五入判别电路,其输入为8421BCD码,要求当输入大于或等于5时,判别电路输出为1,反之为0。

其VHDL描述语言为:时序仿真波形为:2、控灯电路设计四个开关控制一盏灯的逻辑电路,要求合任一开关,灯亮;断任一开关,灯灭。

其VHDL描述语言为:功能仿真波形为:时序仿真波形:引脚分配:程序下载:之后在DE2上验证,实验结果与设计要求一致。

3、优先排队电路设计一个优先排队电路,排队优先顺序依次为A,B,C要求输出端最高只能有一端为“1”,即只能为优先级较高的输入端对应的输出端为“1”。

其VHDL描述语言为:功能仿真波形为:时序仿真波形:引脚分配:程序下载:在DE2上验证,实验结果与设计要求一致。

实验连线:1、四位拨码开关连d0,d1,d2,d3信号对应的管脚。

Out1输出信号管脚接LED灯。

2、四位按键开关分别连k0,k1,k2,k3信号对应的管脚。

y输出信号管脚接LED灯。

3、a ,b , c信号对应管脚分别连三个按键开关。

输出y1,y2,y3信号对应的管脚分别连三个LED灯。

五、实验小结通过本次试验,我掌握了组合逻辑的基本设计方法。

能够按照电路功能要求编写出基本的VHDL硬件描述语言,能合理的分配输入输出引脚,并能够在DE2上验证编写程序是否符合电路设计要求。

当然,一开始又有对软件使用不熟练,也出现了一些问题,如引脚分配时未让输出对应LED灯,但是在自己的努力和多次实验的后,终于熟练起来。

FPGA实验报告5篇

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)所示。

《FPGA系统设计》实验报告》时序逻辑电路的设计

《FPGA系统设计》实验报告》时序逻辑电路的设计

《FPGA系统设计》实验报告》时序逻辑电路的设计
一、设计任务
分别设计并实现锁存器、触发器的VHDL模型。

二、设计过程
1、同步锁存器:
同步锁存器是指复位和加载功能全部与时钟同步,复位端的优先级较高。

下图为同步锁存器的VHDL程序及模型:
2、异步锁存器:
异步锁存器,是指复位与时钟不同步的锁存器。

下图为同步锁存器的VHDL程序及模型:
3、D触发器:
D触发器是最常用的触发器。

下图为简单D触发器的VHDL 模型:
4、T触发器:
T触发器的特点是在时钟沿处输出信号发生翻转。


照有无复位、置位信号以及使能信号等,T触发器也有多种类型。

下图为带异步复位T触发器的VHDL模型:
5、JK触发器:
JK触发器中,J、K信号分别扮演置位、复位信号的角色。

为了更清晰的表示出JK触发器的工作过程,以下给出JK触发器的真值表(如表1所示)。

表1 JK触发器真值表
按照有无复位、置位信号,常见的JK触发器也有多种类型,下图带异步复位(clr)、置位(prn)的JK触发器的VHDL模型:
三.总结
本次实验中较为顺利,在第一次课的时间内我就已经完成了必做实验与选作实验。

在实验的过程中,在防抖电路处有了较大的困难。

由于仿真中不存在此问题,在实际操作中参数选择时遇到了一定的困难。

在反复比对效果之后,我
确定了电路的参数,实现了防抖功能。

通过这次实验,我对时钟脉冲、计数器等有了更加深入的认识与理解。

FPGA设计实验Quartusii实验报告样式

FPGA设计实验Quartusii实验报告样式

《FPGA设计》实验一:基本组合逻辑电路的设计一、设计目的(9分)(举例)1.掌握基本组合逻辑电路的实现方法。

2.初步了解两种基本组合逻辑电路的生成方法。

3.学习测试模块的编写。

4.理解FPGA(主芯片名称)结构特征、掌握FPGA实验开发软件的用法。

5.通过综合和布局布线了解不同层次仿真的物理意义。

二、实验设备:(1分)安装了Quartus II和Modelsim的PC机,***公司实验箱(开发板),其FPGA芯片为***三、实验原理或设计思路(10分)1、实验原理(举例)二位数据比较器的原理框图如图2.1所示。

图2.1 比较器电路符号引脚说明:A、B皆为二位信号;CLK为时钟脉冲输入;RST为清除控制信号。

AGTB:当A>B时,其值为1,否则为0;AEQB:当A=B时,其值为1,否则为0;ALTB:当A<B时,其值为1,否则为0;2、设计思路(举例)本比较器比较简单,既可以采用行为描述方式,也可采用混合描述方式进行比较器的设计,首先定义比较器的输入、输出端口信号及其数据类型,接着进行比较器的功能描述,其功能描述具有以下特点。

A、B皆为二位信号;CLK为时钟脉冲输入;RST为清除控制信号。

AGTB:当A>B时,其值为1,否则为0;AEQB:当A=B时,其值为1,否则为0;ALTB:当A<B时,其值为1,否则为0;三、Verilog HDL源代码设计及功能解析(30分)module MUX41a (A,B,C,D,S0,S1,S2,S3,Y); //模块名称为MUX41aoutput Y; //定义Y为输出信号 input A, B, C, D; //定义A,B,C,D为输入信号input S0,S1,S2,S3;reg Y; //定义输出端口信号Y为寄存器型变量always @(A,B,C,S0,S1,S2,S3 )begin //块语句起始if (S0==0)Y=A; //当S0 ==0成立,即(S0 ==0)=1时,Y=A;else if (S1==0)Y=B; //当(S1 ==1)为真,则Y=B;else if (S2==0)Y=C; //当(S2 ==2)为真,则Y=C;else if (S3==0) Y=D; //当(S3 ==3)为真,即Y=D;end //块语句结束endmodule四、仿真波形及分析(10分)波形仿真图由上图可以看出:(1)当Set=0,Clr=1时,Clk及Clr均无效,触发器置1,此为异步置位;(2)当Set=1,Clr=0时,Clk及Clr均无效,触发器置0,此为异步清零;(3)当Set=1,Clr=1时,触发器在Clk上升沿时接收D信号,实现D触发器功能;(4)Set和Clr两个信号同时为0是不允许的输入信号,Set、Clr的取值应遵守约束条件Set、Clr禁止同时为低电平值。

FPGA实验报告

FPGA实验报告

CPLD/FPGA 应用开发技术实验报告学生姓名: 张齐昌 学 号: 201410204065 学 院: 信息工程学院 班 级: 通信14-2 指导教师: 荀延龙2017年 4 月 16日实验一组合逻辑电路的设计一、实验目的:1、掌握用VHDL语言和EPLD进行组合逻辑电路的设计方法。

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

3、掌握组合逻辑电路的静态测试方法。

二、实验设备:1、PC机2、EDA实验箱(主芯片是ALTERA公司EP1K100QC208-3 或EP1K30TC30144-3)。

三、实验内容(任意选做3个):1、用VHDL语言输入法设计一个四舍五入判别电路,其输入为8421BCD码,要求当输入大于或等于5时,判别电路输出为1;反之为0。

2、用VHDL语言输入法设计3个开关控制一盏灯的逻辑电路,要求当开关都断开时,灯灭;任一开关闭合或断开,灯的状态变换一次。

3、用VHDL语言输入法设计一个4选1数据选择器,信号A、B、D3、D2、D1、D0、Y、S。

要求S=“0”时,根据A、B的状态m i选择输出端Y=D i。

4、用VHDL语言输入法设计一个3线-8线译码器,信号A、B、C、Y7、Y6、Y5、Y4、Y3、Y2、Y1、Y0、S。

要求S=“0”时,根据A、B、C的状态m i选择输出端Y i=“0”。

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

2、编译。

3、仿真。

4、对芯片进行编程。

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

(1)四舍五入判别电路的四个输入管脚分别与四个拨码开关相连,输出数据与LED灯相连。

(2)开关控制电路的3个输入管脚分别与3个按键开关相连,输出管脚与LED 灯相连。

(3)4选1数据选择器的7个信号A、B、D3、D2、D1、D0、S分别连7个拨码开关,输出信号Y与LED灯相连。

(4)3线-8线译码器4个信号A、B、C、S分别连4个拨码开关,输出信号Y i 与8个LED灯相连。

《FPGA系统设计》实验报告》组合逻辑电路设计

《FPGA系统设计》实验报告》组合逻辑电路设计

《FPGA系统设计》实验报告》组合逻辑电路设计
一、设计任务
(一)四舍五入判别电路
1、简单信号赋值语句;
2、条件信号赋值语句;
自行画出真值表,求出逻辑表达式,写出对应程序,下载验证
(二)三态门电路的实现:使用IF语句完成三态门的设计在数字电路中,三态门电路是在普通门电路的基础上附加控制电路构成的。

顾名思义,三态门电路不但具有逻辑值0和逻辑值1,而且还具有高阻态输出的第三种状态(或成为禁止态)。

三态门主要用于可编程逻辑器件管脚的双向口设置,
在后续实验中会涉及。

三态门电路的逻辑电路图3.1。

根基三态门的逻辑电路图和真值表,不难看出输入端口的数据送到输出数据的基本工作原理是:当控制端口的输入使能信号EN=‘1’,那么直接将输入端口的数据送到输出端口上,当控制端口的输入使能信号EN=‘0’,那么这时输出端口呈高阻状态。

二、设计过程
四舍五入判别电路
1、真值表
2、程序代码
3、波形图
4、引脚分配
三、总结
在此次实验中我们连线时犯了些小错误,我们在接电路时,要断开电源,接好电,确认无误通电,做完实验后,关
掉电源。

再拆电路。

在上面的四舍五入的程序中,机构体中
用了赋值条件语句,虽然条件赋值语句比简单赋值语句复杂,但是条件赋值语句设计过程比简单赋值语句简单,条件赋值
语句中可以不列真值表,不必求逻辑方程,用行为描述方法
以条件信号赋值语句来实现,使设计简单,更加明了。

我们
之前学的赋值语句是比较简单的,在这次实验中给我们留下
了很深刻的印象。

组合逻辑电路的设计实验报告

组合逻辑电路的设计实验报告

组合逻辑电路的设计实验报告一、实验目的组合逻辑电路是数字电路中较为基础且重要的部分。

本次实验的主要目的是通过设计和实现简单的组合逻辑电路,深入理解组合逻辑电路的工作原理和设计方法,掌握逻辑门的运用,提高逻辑分析和问题解决的能力。

二、实验原理组合逻辑电路是指在任何时刻,输出状态只取决于同一时刻输入信号的组合,而与电路以前的状态无关。

其基本组成单元是逻辑门,如与门、或门、非门等。

通过将这些逻辑门按照一定的逻辑关系连接起来,可以实现各种不同的逻辑功能。

例如,一个简单的 2 输入与门,只有当两个输入都为 1 时,输出才为 1;而 2 输入或门,只要有一个输入为 1,输出就为 1。

组合逻辑电路的设计方法通常包括以下几个步骤:1、分析问题,确定输入和输出变量,并定义其逻辑状态。

2、根据问题的逻辑关系,列出真值表。

3、根据真值表,写出逻辑表达式。

4、对逻辑表达式进行化简和变换,以得到最简的表达式。

5、根据最简表达式,选择合适的逻辑门,画出逻辑电路图。

三、实验设备与器材1、数字电路实验箱2、集成电路芯片:74LS00(四 2 输入与非门)、74LS04(六反相器)、74LS08(四 2 输入与门)、74LS32(四 2 输入或门)等。

3、导线若干四、实验内容与步骤(一)设计一个一位全加器1、分析问题一位全加器有三个输入变量 A、B 和 Cin(低位进位),两个输出变量 S(和)和 Cout(进位输出)。

2、列出真值表| A | B | Cin | S | Cout |||||||| 0 | 0 | 0 | 0 | 0 || 0 | 0 | 1 | 1 | 0 || 0 | 1 | 0 | 1 | 0 || 0 | 1 | 1 | 0 | 1 || 1 | 0 | 0 | 1 | 0 || 1 | 0 | 1 | 0 | 1 || 1 | 1 | 0 | 0 | 1 || 1 | 1 | 1 | 1 | 1 |3、写出逻辑表达式S = A⊕B⊕CinCout = AB +(A⊕B)Cin4、化简逻辑表达式S = A⊕B⊕Cin 已最简Cout = AB +(A⊕B)Cin = AB + ACin + BCin5、画出逻辑电路图使用 74LS00、74LS08 和 74LS32 芯片实现,连接电路如图所示。

QUARTUS应用一---组合逻辑电路设计(实验报告模板)

QUARTUS应用一---组合逻辑电路设计(实验报告模板)

可编程逻辑器件FPGA实验一
组合逻辑电路设计
一.实验目的
1、掌握译码器、数据选择器等中规模数字集成器件的逻辑功能及设计应用
2、熟悉组合逻辑电路的设计方法
3、了解数字可编程器件的应用设计
4、学会QUARTUS软件的基本使用方法
二.实验器材
1、软件:QUARTUSII
2、硬件:DE-2实验板,PC机
三.实验原理
1、3-8译码器
(简述设计中所用集成器件74138的功能原理)
2、数据选择器
(简述八选一MUX74151的功能原理)
四.实验内容
1、用74138设计一个用三个开关控制一个电灯的逻辑电路。

要求改变任何一个开关的状态
都能控制电灯由亮变灭或由灭变亮。

步骤:
(1)电路设计过程
(2)原理图(截图)
(3)功能仿真波形(截图)
(4)时序仿真波形(截图)
2、用八选一MUX设计一个函数发生器电路,功能如下图示:
步骤:
(1)原理图(截图)
(2)功能仿真波形(截图)
(3)时序仿真波形(截图)
五.实验总结
1、实验故障及解决方法
2、实验体会
六.思考题
1、如何用八选一MUX实现灯控电路?
2、如何用四选一MUX实现函数发生器?
3、MSI器件的各控制输入端能否悬空?。

FPGA实验报告_4

FPGA实验报告_4

FPGA课程设计报告专业班级: 13电信1班学号: ************ 姓名:***指导老师:**实验日期:2015.11.27—2015.12.18文华学院信息学部多功能数字钟电路设计一、设计题目多功能数字钟电路的分层次设计7二、设计要求技术指标设计一个具有时、分、秒计时的电子钟电路,按24小时制计时。

三、设计分析在设计一个比较复杂的数字电路或系统时,通常采用自上而下和自下而上的设计方法。

在自上而下设计中,先定义顶层模块,然后再定义顶层模块中用到的子模块。

而在自下而上设计中,底层的各个子模块首先被确定下来,然后将这些子模块组合起来构成顶层模块。

将电路分为不同层次和多个模块分别进行设计,然后将这些模块组合起来实现电路逻辑功能,这种方法通常被称为分层次的电路设计。

工作原理:振荡器产生的稳定的高频脉冲信号,作为数字钟的时间基准,再经分频器输出标准秒脉冲。

秒计数器计满60后向分计数器进位,分计数器计满60后向小时计数器进位,小时计数器按照24进制规律计数。

计数器的输出送译码显示电路,即可显示出数码(时间)。

计时出现误差时可以用校时电路进行校时和校分。

仿电台报时和定时闹钟为扩展电路,只有在计时主题电路正常运行的情况下才能进行功能扩展。

虚线框内的部分用Verilog HDL进行描述,然后用FPGA/CPLD 实现,译码显示电路用中规模IC实现,振荡器由集成电路定时器555与RC电路组成1kHz的多谐振荡器。

四、设计步骤①多功能数字钟主体电路逻辑设计:采用自下而上的设计方法,首先定义数字钟下层的各个模块,再调用这些模块组合成顶层的数字钟电路。

1.模24计数器的Verilog HDL设计小时计数器的计数规律为00-01-…-09-10-11-…-22-23-00…,即在设计时要求小时计数器的个位和十位均按8421BCD码计数。

//文件名:counter24.v(BCD计数:0~23)module counter24(CntH,CntL,nCR,EN,CP);input CP,nCR,EN; //分别为计时脉冲CP、清0信号、nCR和使能信号EN output [3:0] CntH,CntL; //计时计数器的十位和个位输出信号reg [3:0] CntH,CntL; //输出为8421BCD码always @(posedge CP or negedge nCR)beginif(~nCR) {CntH,CntL}<=8'h00; //异步清零else if (~EN) {CntH,CntL}<={CntH,CntL}; //对使能信号无效的处理else if ((CntH>2)||(CntL>9)||((CntH==2)&&(CntL>=3))){CntH,CntL}<=8'h00; //对小时计数器出错的处理else if ((CntH==2)&&(CntL<3)) //进行20-23计数begin CntH<=CntH; CntL<=CntL+1'b1;endelse if (CntL==9) //小时十位级的计数begin CntH<=CntH+1'b1; CntL<=4'b0000;endelse //小时个位的计数begin CntH<=CntH; CntL<=CntL+1'b1;endendendmodule2.模60计数器的Verilog HDL设计分和秒计数器的计数规律为00-01-…-09-10-11-…-58-59-00…,可见个位计数器从0~9计数,是一个十进制计数器;十位计数器则从0~5计数,是一个六进制计数器。

基于FPGA的数字电路实验报告

基于FPGA的数字电路实验报告
2.初步了解模块化设计的思想,理解累加器的工作原理,用硬件描述语言实现指定功能的累加器设计。
·4位累加器
1.设计方案
需要用两个模块,一个用来进行保存工作,即累加器,另一个用来实现数据相加,即加法器。这样即可每次把数据加到总和里,实现累加器的工作。
2.原理说明及框图
基本原理为书上的结构图。只要实现了两个主要模块,再用线网连接即可。
State1
0
0
State1
State10
State1
0
0
State10
Empty
State101
0
0
State101
State1010
State1
0
0
State1010
Empty
Empty
0
1
经过状态化简,上面状态已经为最简状态。
状态装换图:
在用HDL代码实现时,利用always块和case语句实现有限状态机。
答:用两个异或门,比较计数器的输出与一个加数的大小,若相等时则输出低电平到累加器的使能端,则可停止累加。
实验9序列检测器的设计
·实验目的
掌握利用有限状态机实现时序逻辑的方法。
1实验原理:
有限状态机(FSM)本质上是由寄存器和组合逻辑电路构成的时序电路。次态由当前状态和输入一起决定,状态之间的转移和变化总是在时钟沿进行。有限状态机分为Moore型和Mealy型。Moore型有限状态机输出仅由当前状态决定;Mealy型有限状态机输出由当前状态和输入同时决定。
·思考题
1.给出锁存器的定义,它与边沿触发器的区别是什么?
答:锁存器是一种对脉冲电平敏感的存储单元电路,它可以在特定输入脉冲电平作用下改变状态。边沿触发器只有在固定的时钟上升沿或者下降沿来临时改变状态。可以通过锁存器实现边沿触发器。

FPGA组合逻辑电路实验报告

FPGA组合逻辑电路实验报告

FPGA组合逻辑电路实验报告# / 2学生实验报告实验课名称:可编程器件技术原理学生实验报告实验课名称:可编程器件技术原理实验项目名称:组合逻辑电路专业名称:测控技术与仪器班级:学号:11学生姓名:徐章龙教室姓名:张晓博20__年5月20日七:讨论和回答问题及体会可编程逻辑器件设计系统认识:组合电路的特点?答:组合逻辑电路在逻辑功能上的特点是任意时刻的输出仅仅取决于该时刻的输入,与电路原来的状态无关。

组别同组同学杨绪和实验日期 20__组别同组同学杨绪和实验日期 20__ 年_5_月20_日实验室名称电子技术实验室一、实验名称组合逻辑电路二、实验目的与要求熟悉可编程逻辑器件设计软硬件和实现步骤,并设计2选1数据选择器。

五、实验原理En tity mu_21a ISPORT(a,b,s:IN BIT;Y:OUT BIT);END ENTITY mu_21a;ARCHITECTURE one OF mu_21a ISBEGINPROCESS(a,b,s)BEGINIF s= #; 0#; THEN yv=a;ELSE y<=b; END IF;END PROCESSEND ARCHTECTURE one;六、实验结果分析^p三、实验内容首先利用Quartus U完成2选1多路选择器的文本编辑输入(mu_21a.vhd)和仿真测试等步骤,给出仿真波形。

最后在实验系统上进行硬件测试,验证本项设计的功能。

引脚锁定以及硬件下载测试。

若选择目标器件是 EP1C3建议选实验电路模式5(注意查阅硬件使用手册),用键1(PIOO,引脚号为1)控制s0;用键2(PIO1,引脚号为2)控制s1; a3、a2和a1分别接clock5(引脚号为16)、clockO(引脚号为93)和 clock2(引脚号为17);输出信号out y仍接扬声器speaker(引脚号为129)。

通过短路帽选择clockO接256Hz信号,clock5接1024Hz, clock2接8Hz信号。

FPGA 简单的组合逻辑电路设计实验报告-推荐下载

FPGA 简单的组合逻辑电路设计实验报告-推荐下载

上海电力学院实验报告实验课程名称:FPGA应用开发试验实验项目名称:简单的组合逻辑电路设计班级:姓名:学号:成绩:________ 实验时间:一、实验目的1、掌握组合逻辑的设计方法。

2、掌握组合逻辑电路的静态测试方法。

3、加深PLD设计的过程,并比较原理图输入和文本输入的优劣。

二、实验原理根据第三章学习的VHDL硬件描述语言来设计一定功能的电路。

三、实验步骤1、四舍五入判别电路设计一个四舍五入判别电路,其输入为8421BCD码,要求当输入大于或等于5时,判别电路输出为1,反之为0。

其VHDL描述语言为:时序仿真波形为:2、控灯电路设计四个开关控制一盏灯的逻辑电路,要求合任一开关,灯亮;断任一开关,灯灭。

其VHDL描述语言为:功能仿真波形为:时序仿真波形:引脚分配:程序下载:之后在DE2上验证,实验结果与设计要求一致。

3、优先排队电路设计一个优先排队电路,排队优先顺序依次为A,B,C要求输出端最高只能有一端为“1”,即只能为优先级较高的输入端对应的输出端为“1”。

其VHDL描述语言为:功能仿真波形为:时序仿真波形:引脚分配:程序下载:在DE2上验证,实验结果与设计要求一致。

实验连线:1、四位拨码开关连d0,d1,d2,d3信号对应的管脚。

Out1输出信号管脚接LED灯。

2、四位按键开关分别连k0,k1,k2,k3信号对应的管脚。

y输出信号管脚接LED灯。

3、a ,b , c信号对应管脚分别连三个按键开关。

输出y1,y2,y3信号对应的管脚分别连三个LED灯。

五、实验小结通过本次试验,我掌握了组合逻辑的基本设计方法。

能够按照电路功能要求编写出基本的VHDL硬件描述语言,能合理的分配输入输出引脚,并能够在DE2上验证编写程序是否符合电路设计要求。

当然,一开始又有对软件使用不熟练,也出现了一些问题,如引脚分配时未让输出对应LED灯,但是在自己的努力和多次实验的后,终于熟练起来。

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

上海电力学院
实验报告
实验课程名称: FPGA应用开发试验
实验项目名称:简单的组合逻辑电路设计
班级:
姓名:学号:成绩:________ 实验时间:
一、实验目的
1、掌握组合逻辑的设计方法。

2、掌握组合逻辑电路的静态测试方法。

3、加深PLD设计的过程,并比较原理图输入和文本输入的
优劣。

二、实验原理
根据第三章学习的VHDL硬件描述语言来设计一定功能的电路。

三、实验步骤
1、四舍五入判别电路
设计一个四舍五入判别电路,其输入为8421BCD码,要求当输入大于或等于5时,判别电路输出为1,反之为0。

其VHDL描述语言为:
时序仿真波形为:
2、控灯电路
设计四个开关控制一盏灯的逻辑电路,要求合任一开关,灯亮;
断任一开关,灯灭。

其VHDL描述语言为:
功能仿真波形为:
时序仿真波形:
引脚分配:
程序下载:
之后在DE2上验证,实验结果与设计要求一致。

3、优先排队电路
设计一个优先排队电路,排队优先顺序依次为A,B,C要求输出端最高只能有一端为“1”,即只能为优先级较高的输入端对应的
输出端为“1”。

其VHDL描述语言为:
功能仿真波形为:
时序仿真波形:
引脚分配:
程序下载:
在DE2上验证,实验结果与设计要求一致。

实验连线:
1、四位拨码开关连d0,d1,d2,d3信号对应的管脚。

Out1输出信号管脚接LED灯。

2、四位按键开关分别连k0,k1,k2,k3信号对应的管脚。

y输出信号管脚接LED灯。

3、a ,b , c信号对应管脚分别连三个按键开关。

输出y1,y2,y3信号对应的管脚分别连三个LED灯。

五、实验小结
通过本次试验,我掌握了组合逻辑的基本设计方法。

能够按照电路功能要求编写出基本的VHDL硬件描述语言,能合理的分配输入输出引脚,并能够在DE2上验证编写程序是否符合电路设计要求。

当然,一开始又有对软件使用不熟练,也出现了一些问题,如引脚分配时未让输出对应LED灯,但是在自己的努力和多次实验的后,终于熟练起来。

相关文档
最新文档