当前位置:文档之家› 基于CPLD和VHDL的线阵CCD驱动电路的设计

基于CPLD和VHDL的线阵CCD驱动电路的设计

基于CPLD和VHDL的线阵CCD驱动电路的设计
基于CPLD和VHDL的线阵CCD驱动电路的设计

实验二 组合逻辑电路的VHDL实现

实验二组合逻辑电路的VHDL实现 一、实验目的 掌握使用VHDL语言进行时序逻辑电路设计的方法。 二、实验设备及器件 IBM PC机一台 三、实验内容 (1)用VHDL 语言设计一个D触发器,对程序进行编译和仿真,并记录仿真波形。 CLK接收到上升沿信号时,输入端D的信号被传送到输 出端Q输出,否则输出端Q维持原来的状态不变。 实验代码: D触发器LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; ENTITY DFF1 IS PORT (CLK : IN STD_LOGIC ; D : IN STD_LOGIC ; Q : OUT STD_LOGIC ); END ; ARCHITECTURE bhv OF DFF1 IS SIGNAL Q1 : STD_LOGIC ; --类似于在芯片内部定义一个数据的暂存节点 BEGIN PROCESS (CLK) BEGIN IF CLK'EVENT AND CLK = '1' THEN Q1 <= D ; END IF;

Q <= Q1 ; --将内部的暂存数据向端口输出 END PROCESS ; END bhv; (2)用VHDL语言设计一个十进制加法计数器,对程序进行编译和仿真,并记录仿真波形。 提示:十进制加法计数器的电路如下图所示,在时钟信号的驱动下,计数器进行累加,每次加1,其输出状态由0000变化到1001,加满回零。当复位输入端reset为低电平时,计数器复位,输出状态回到0000。 十进制加法计数器电路图 实验代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY jsq10 IS PORT(CLK,RESET:IN STD_LOGIC; Q:BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0)); END jsq10; ARCHITECTURE ONE OF jsq10 IS BEGIN PROCESS(CLK,RESET) BEGIN IF(RESET='0') THEN Q<="0000"; ELSIF(CLK' EVENT AND CLK='1') THEN

组合逻辑电路的VHDL设计

组合逻辑电路的VHDL设计 学院及班级:信工院电子信息工程一班 学号: 2010550428 姓名:王尧 完成时间: 2012年10月11日

(1)实验目的: 熟悉QuartusⅡ的VHDL文本设计流程全过程,学习简单组合电路的设计、多层次电路设计、仿真和硬件测试。 (2)实验内容1:用VHDL语言设计2选1多路选择器。 提示:参考例3-1。 要求:首先利用QuartusⅡ完成2选1多路选择器的文本编辑输入和编译、仿真测试等步骤,给出时序仿真波形。选择目标器件EP1C3,建议选实验电路模式5,如附图1所示。用键1(PIO0,引脚号为1)控制s;a和b分别接clock0(引脚号为93)和clock2(引脚号为17);输出信号y接扬声器speaker(引脚号为129)。通过短路帽选择clock0接256Hz信号,clock2接8Hz信号。引脚锁定后进行编译、下载和硬件测试实验,通过键1控制s,可使扬声器输出不同音调。 (3)实验内容2:将此二选一多路选择器看成是一个元件mux21a,利用元件例 化语句描述图2所示电路,并将此文件放在同一目录中。 图2 双2选1多路选择器 要求:首先利用QuartusⅡ完成2选1多路选择器的文本编辑输入和编译、仿真测试等步骤,给出时序仿真波形。然后进行引脚锁定以及硬件下载测试。选择目标器件EP1C3,建议选实验电路模式5(附图1),用键1(PIO0,引脚号为1)控制s0;用键2(PIO1,引脚号为2)控制s1;a3、a2和a1分别接clock5(引脚号为16)、clock0(引脚号为93)和clock2(引脚号为17);输出信号outy仍接扬声器spker(引脚号为129)。通过短路帽选择clock0接256Hz信号,clock5接1024Hz,clock2接8Hz信号。通过选择键1、键2,控制s0、s1,可使扬声器输出不同音调。 (4)程序设计 程序示例1: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; entity mux21a is

实验一 组合逻辑电路的VHDL实现

实验一组合逻辑电路的VHDL实现 一、实验目的 掌握使用VHDL语言进行组合逻辑电路设计的方法。 二、实验设备及器件 IBM PC机一台 三、实验内容 按照Quartus II 软件的使用说明进行Quartus II 集成开发环境的仿真调试练习,然后按照以下内容建立文件并编译仿真调试。 (1)用VHDL 语言设计一个2选1多路选择器,对程序进行编译和仿真,并记录仿真波形。 提示:如右图所示,a和b分别为两个数据输入端,s 为通道选择控制信号输入端。当s为低电平时,a输入端的信号传送至y;当s为高电平时,b输入端的信号传送至y。 实验代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY mux21a IS PORT( a, b : IN BIT ; s : IN BIT; y : OUT BIT) ; END ENTITY mux21a ; ARCHITECTURE one OF mux21a IS BEGIN y <= a WHEN s = '0' ELSE b ; END ARCHITECTURE one ;

(2)用VHDL 语言设计一个1位半 加器,对程序进行编译和仿真,并 记录仿真波形。 提示:半加器真值表如右所示。 实验代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; ENTITY h_adder IS PORT(a,b:IN STD_LOGIC; so,co:OUT STD_LOGIC); END h_adder; ARCHITECTURE example2 OF h_adder IS BEGIN so<=a XOR b; co<=a AND b; END example2; (3)用VHDL 语言设计一个三态缓冲器,对程序进行编译和仿真,并记录仿真波形。 提示:三态缓冲器电路如右图所示,如果 缓冲器的使能端en 为1,缓冲器的输入端 in1的信号值被复制到输出端;如果使能端 en 为其它数值,缓冲器的输出为高阻态。 实验代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY Threestategate IS PORT(IN1,EN:IN STD_LOGIC; 半加器真值表

实验一 用VHDL语言设计组合逻辑电路

实验一用VHDL语言设计组合逻辑电路 一、实验目的:掌握用VHDL语言设计组合逻辑电路的方法。熟悉QuartusⅡ的 操作。 二、实验仪器:PC机一台 三、实验内容: 1.用VHDL语言设计4选1数据选择器。 2.用文本输入法输入 3.建立工程,编译,改错,直至编译通过 4.仿真,验证所设计电路的正确性 四、操作步骤: 1、在所使用的计算机数据盘里建立自己的文件夹 2、打开QuartusII 3、单击工具栏中的new,在出现的对话框中选择VHDL File,点击OK。 4、输入设计程序。 输入结束后,将程序保存在自己的文件夹中。注意:存盘的文件名应该跟实体名相同。 5、创建工程。创建工程有两种方法:第一种方法是在保存文件后出现的对话框 中点击‘是’,按提 示进行操作;

第二种方法是在出现的对话框点击‘否’。 第一种方法的具体过程: 点击‘是’,出项下面的框 点击‘Next’,出项 不需要任何修改,继续点击‘Next’,出项

继续点击‘Next’,在后面出现的框图中继续点击‘Next’,直到没有‘Next’选项,点击‘Finish’,这样就完成工程的创建。 第二种方法的具体过程:点击‘否’ 此时要创建工程,点击菜单File下的“New Preject Wizard”。出现框图: 点击‘Next’,出项

名,点击打开(或双击要创建工程的文件名),出现 项目名称和文件名称相同。点击‘Next’,出现

点击,在出现的对话框点击文件名,点击‘打开’,出现 点击右边的‘add’,出现

点击‘Next’,在后面出现的框图中继续点击‘Next’,直到没有‘Next’选项,点击‘Finish’,这样就完成工程的创建。 6、观察QUARTUS 界面 点击箭头所指图标,观察箭头上方的变化,点击+号,双击出项的文件

实验一 组合逻辑电路的设计

实验一 组合逻辑电路的设计 一、实验目的: 1、 掌握组合逻辑电路的设计方法。 2、 掌握组合逻辑电路的静态测试方法。 3、 加深FPGA 设计的过程,并比较原理图输入和文本输入的优劣。 4、 理解“毛刺”产生的原因及如何消除其影响。 5、 理解组合逻辑电路的特点。 二、实验的硬件要求: 1、 EDA/SOPC 实验箱。 2、 计算机。 三、实验原理 1、组合逻辑电路的定义 数字逻辑电路可分为两类:组合逻辑电路和时序逻辑电路。组合逻辑电路中不包含记忆单元(触发器、锁存器等),主要由逻辑门电路构成,电路在任何时刻的输出只和当前时刻的输入有关,而与以前的输入无关。时序电路则是指包含了记忆单元的逻辑电路,其输出不仅跟当前电路的输入有关,还和输入信号作用前电路的状态有关。 通常组合逻辑电路可以用图1.1所示结构来描述。其中,X0、X1、…、Xn 为输入信号, L0、L1、…、Lm 为输出信号。输入和输出之间的逻辑函数关系可用式1.1表示: 2、组合逻辑电路的设计方法 组合逻辑电路的设计任务是根据给定的逻辑功能,求出可实现该逻辑功能的最合理组 合电路。理解组合逻辑电路的设计概念应该分两个层次:(1)设计的电路在功能上是完整的,能够满足所有设计要求;(2)考虑到成本和设计复杂度,设计的电路应该是最简单的,设计最优化是设计人员必须努力达到的目标。 在设计组合逻辑电路时,首先需要对实际问题进行逻辑抽象,列出真值表,建立起逻辑模型;然后利用代数法或卡诺图法简化逻辑函数,找到最简或最合理的函数表达式;根据简化的逻辑函数画出逻辑图,并验证电路的功能完整性。设计过程中还应该考虑到一些实际的工程问题,如被选门电路的驱动能力、扇出系数是否足够,信号传递延时是否合乎要求等。组合电路的基本设计步骤可用图1.2来表示。 3、组合逻辑电路的特点及设计时的注意事项 ①组合逻辑电路的输出具有立即性,即输入发生变化时,输出立即变化。(实际电路中 图 1.1 组合逻辑电路框图 L0=F0(X0,X1,···Xn) · · · Lm=F0(X0,X1,···Xn) (1.1) 图 1.2 组合电路设计步骤示意图图

常用组合逻辑电路设计

实 验 报 告 实验日期: 学 号: 姓 名: 实验名称: 常用组合逻辑电路设计 总 分: 一、实验目的 学习常用组合逻辑电路的可中和代码编写,学习并熟悉VHDL 编程思想与调试方法,掌握LPM 元件实现逻辑设计,从而完成电路设计的仿真验证和硬件验证,记录结果。 二、实验原理 VHDL 设计采用层次化的设计方法,自上向下划分系统功能并逐层细化逻辑描述。层次关系中的没一个模块可以是VHDL 描述的实体,上层VHDL 代码中实例化出各个下层子模块。 利用VHDL 语言和LPM 元件设计这两种方法方法实现两个二位数大小比较的电路,根据A 数是否大于、小于、等于B 数,相应输出端F1、F2、F3为1,设A=A2A1,B=B2B1(A2A1、B2B1表示两位二进制数),当A2A1>B2B1时,F1为1;A2A1

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 begin f1<=(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; (2)波形仿真 网格大小 100ns 结束时间 2μs 功能仿真:时序仿真:输入信号00, 01,10,11 输入信号00, 01,10,11 输出信号001, 010,100 信号均为二 进制表达 输入信号00, 01,10,11

用VHDL设计三八译码器。。超赞版

3-8译码器的设计 1 设计目的与要求 随着社会的进一步发展,我们的生活各个地方都需要计算机的参与,有了计算机,我们的生活有了很大的便利,很多事情都不需要我们人为的参与了,只需要通过计算机就可以实现自动控制。由此,计算机对我们的社会对我们每个人都是很重要的。所以我们要了解计算机得组成,内部各种硬件,只有了解了计算机基本器件已经相应的软件,才能促进社会的发展。编码器和译码器的设计是计算机的一些很基础的知识,通过本次对于编码器和译码器的设计,可以让我知道究竟这种设计是如何实现的,这种设计对我们的生活有什么帮助,这种设计可以用到我们生活的哪些方面,对我们的各种生活有什么重大的意义。 1.1 设计的目的 本次设计的目的是通过简单的译码器的设计掌握基本的计算机的一些有关的知识,通过查资料已经自己的动手设计去掌握EDA技术的基本原理已经设计方法,并掌握VHDL硬件描述语言的设计方法和思想。以计算机组成原理为指导,通过将理论知识,各种原理方法与实际结合起来,切实的亲手设计,才能掌握这些非常有用的知识。通过对编码器和译码器的设计,巩固和综合运用所学知识,提高IC

设计能力,提高分析、解决计算机技术实际问题的独立工作能力。也能通过这种自主设计,增强自己的动手能力,将理论知识切实应用的能力,这对我们将来的发展是很有帮助的。 1.2 设计要求 根据计算机组成原理中组合逻辑电路设计的原理,利用VHDL 设计计算机电路中译码器的各个模块,并使用EDA 工具对各模块进行仿真验证和分析。译码器由三-八译码器为实例代表。 关键词:输入、输出、译码 2 VHDL的简单介绍 2.1 VHDL的简介 VHDL语言是一种用于电路设计的高级语言。它在80年代的后期出现。最初是由美国国防部开发出来供美军用来提高设计的可靠性和缩减开发周期的一种使用范围较小的设计语言。VHDL翻译成中文就是超高速集成电路硬件描述语言,主要是应用在数字电路的设计中。目前,它在我过的应用多数是用在FPGA/CPLD/EPLD的设计中。当然在一些实力较为雄厚的单位,它也被用来设计ASIC。VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式、描述风格以及语法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分

实验一 组合逻辑电路的VHDL设计

组合逻辑电路的VHDL设计 学院及班级: 学号: 姓名: 完成时间:

(1)实验目的: 熟悉QuartusⅡ的VHDL文本设计流程全过程,学习简单组合电路的设计、多层次电路设计、仿真和硬件测试。 (2)实验内容1:用VHDL语言设计2选1多路选择器。 提示:参考例3-1。 要求:首先利用QuartusⅡ完成2选1多路选择器的文本编辑输入和编译、仿真测试等步骤,给出时序仿真波形。选择目标器件EP1C3,建议选实验电路模式5,如附图1所示。用键1(PIO0,引脚号为1)控制s;a和b分别接clock0(引脚号为93)和clock2(引脚号为17);输出信号y接扬声器speaker(引脚号为129)。通过短路帽选择clock0接256Hz信号,clock2接8Hz信号。引脚锁定后进行编译、下载和硬件测试实验,通过键1控制s,可使扬声器输出不同音调。 (3)实验内容2:将此二选一多路选择器看成是一个元件mux21a,利用元件例 化语句描述图2所示电路,并将此文件放在同一目录中。 图2 双2选1多路选择器 要求:首先利用QuartusⅡ完成2选1多路选择器的文本编辑输入和编译、仿真测试等步骤,给出时序仿真波形。然后进行引脚锁定以及硬件下载测试。选择目标器件EP1C3,建议选实验电路模式5(附图1),用键1(PIO0,引脚号为1)控制s0;用键2(PIO1,引脚号为2)控制s1;a3、a2和a1分别接clock5(引脚号为16)、clock0(引脚号为93)和clock2(引脚号为17);输出信号outy仍接扬声器spker(引脚号为129)。通过短路帽选择clock0接256Hz信号,clock5接1024Hz,clock2接8Hz信号。通过选择键1、键2,控制s0、s1,可使扬声器输出不同音调。 (4)程序设计 程序示例1: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; entity mux21a is

VHDL 实验一组合逻辑电路的设计

实验一组合逻辑电路的设计 一、实验目的: 1.熟悉QuartusⅡ的VHDL文本设计流程全过程,学习简单组合电路的设计、多层次电路设计、仿真和硬件测试。 2.加深FPGA\CPLD设计的过程,并比较原理图输入和文本输入的优劣。 二、实验的硬件要求: 1.GW48EDA/SOPC+PK2实验系统。 三、实验内容: 1.首先利用QuartusⅡ完成2选1多路选择器(如图S1-1)的文本编辑输入(mux21a.vhd)和仿真测试等步骤。最后在实验系统上进行硬件测试,验证本项设计的功能。 图S1-1 2.将此多路选择器看成是一个元件mux21a,利用原理图输出法完成图s1-2,并将此文件放在同一目录中。 图s1-2 编译、综合、仿真本例程,并对其仿真波形作出分析说明。最后在实验系统上进行硬件测试,验证本项设计的功能。 3.以1位二进制全加器为基本元件,用例化语句写出8位并行二进制全加器的顶层文件,编译、综合、仿真本例程,并对其仿真波形作出分析说明。最后在实验系统上进行硬件测试,验证本项设计的功能。 4.七段数码管译码器(Decoder) 七段数码管译码器(Decoder)的输入为4位二进制代码,输出为7个表征

七段数码管代码的状态信号。下面为一个七段数码管译码器的VHDL源代码模型:LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY display IS PORT(A:IN STD_LOGIC_VECTOR(3 DOWNTO 0); LED7S:OUT STD_LOGIC_VECTOR(6 DOWNTO 0)); END; ARCHITECTURE ONE OF display IS BEGIN PROCESS(A) BEGIN CASE A IS WHEN "0000"=>LED7S<="0111111";--X"3F"->0 WHEN "0001"=>LED7S<="0000110";--X"06"->1 WHEN "0010"=>LED7S<="1011011";--X"5B"->2 WHEN "0011"=>LED7S<="1001111";--X"4F"->3 WHEN "0100"=>LED7S<="1100110";--X"66"->4 WHEN "0101"=>LED7S<="1101101";--X"6D"->5 WHEN "0110"=>LED7S<="1111101";--X"7D"->6 WHEN "0111"=>LED7S<="0000111";--X"07"->7 WHEN "1000"=>LED7S<="1111111";--X"7F"->8 WHEN "1001"=>LED7S<="1101111";--X"6F"->9 WHEN "1010"=>LED7S<="1110111";--X"77"->10 WHEN "1011"=>LED7S<="1111100";--X"7C"->11 WHEN "1100"=>LED7S<="0111001";--X"39"->12 WHEN "1101"=>LED7S<="1011110";--X"5E"->13 WHEN "1110"=>LED7S<="1111001";--X"79"->14 WHEN "1111"=>LED7S<="1110001";--X"71"->15 WHEN OTHERS=>NULL; END CASE; END PROCESS; END; 编译、综合、仿真本例程,并对其仿真波形作出分析说明。最后在实验系统上进行硬件测试,验证本项设计的功能。 四、实验连线: 1.恰当选择电路结构,完成上述实验连线。 五、实验步骤与实验调试 (一)2选1多路选择器 1. 程序设计 LIBRARY IEEE;

组合逻辑电路设计案例.

二输入与门 ★程序1: ENTITY and2 IS PORT (a,b:IN BIT; c:OUT BIT); END ENTITY and2; ARCHITECTURE and2_behav OF and2 IS BEGIN c<=a AND b AFTER 5ns; END ARCHITECTURE and2_behav; ★程序2: ENTITY and2 IS 目录 简单门电路‥‥‥‥‥‥‥‥‥‥‥‥1 三态门及总线缓冲器‥‥‥‥‥‥‥‥‥‥‥‥3 转换器‥‥‥‥‥‥‥‥‥‥‥‥6 并置运算器‥‥‥‥‥‥‥‥‥‥‥‥8 奇偶校验器‥‥‥‥‥‥‥‥‥‥‥‥9 加法器‥‥‥‥‥‥‥‥‥‥‥‥11 选择器‥‥‥‥‥‥‥‥‥‥‥‥12 编译码器‥‥‥‥‥‥‥‥‥‥‥‥18

GENERIC (rise,fall:TIME); PORT (a,b: IN BIT; c: OUT BIT) END ENTITY and2; ARCHITECTURE behav OF and2 IS SIGNAL internal:BIT; BEGIN internal<=a AND b; c<=internal AFTER (rise ) WHEN internal='1' ELSE internal AFTER (fall ); END ARCHITECTURE behav; ★程序3: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY nand2 IS PORT (a, b: IN STD_LOGIC; y: OUT STD_LOGIC); END ENTITY nand2; ARCHITECTURE nand2_2 OF nand2 IS BEGIN t1:PROCESS (a, b)IS V ARIABLE comb:STD_LOGIC_VECTOR (1 DOWNTO 0); BEGIN comb:=a & b; CASE comb IS WHEN "00"=>y<='1'; WHEN "01"=>y<='1'; WHEN "10"=>y<='1'; WHEN "11"=>y<='0'; WHEN OTHERS=>y<='X'; END CASE; END PROCESS t1; END ARCHITECTURE nand2_2;

实验2---组合逻辑电路的VHDL设计

实验二组合逻辑电路的VHDL设计 一、实验目的与要求 1、目的 (1)熟悉VHDL语言的基本结构 (2)掌握用VHDL语言实现组合逻辑功能器件的逻辑功能的一般方法。 2、要求 (1)调试程序要记录调试过程中出现的问题及解决办法; (2)给出每个问题的算法或画出流程图; (3)编写程序要规范、正确,上机调试过程和结果要有记录,并注意调试程序集成环境的掌握及应用,不断积累编程及调试经验; (4)做完实验后给出本实验的实验报告。 二、实验设备、环境 PII以上计算机,装有QuartusII软件 三、方法与步骤 (一)教师简单回顾所需知识并演示较一个简单功能的实现过程。 1、简单回顾组合逻辑电路的特点及常用逻辑功能器件的功能 2、回顾QuartusII的VHDL操作步骤 3、以4选1数据选择器为例,重点演示该组合逻辑单元的VHDL设计过 程。

(1)4选1数据选择器的真值表与电路符号 (2)4选1数据选择器的参考VHDL 程序 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL ; ENTITY mux41 IS PORT(S :IN STD_LOGIC_VECTOR (1 DOWNTO 0); A,B,C,D : IN STD_LOGIC; Y :OUT STD_LOGIC ); END mux41; ARCHITECTURE a OF mux41 IS S[1..0]A B C D Y MULTI_4V A B C D S[1..0] Y

BEGIN PROCESS (s,A,B,C,D) BEGIN IF (S="00") THEN Y <= A; ELSIF (S="01") THEN Y <= B; ELSIF (S="10") THEN Y <= C; ELSIF (S="11") THEN Y <= D; END IF; END PROCESS; END a;

实验2---组合逻辑电路的VHDL设计

实验二 组合逻辑电路的V H D L 设计 一、实验目的与要求 1、目的 (1)熟悉VHDL 语言的基本结构 (2)掌握用VHDL 语言实现组合逻辑功能器件的逻辑功能的一般方法。 2、要求 (1)调试程序要记录调试过程中出现的问题及解决办法; (2)给出每个问题的算法或画出流程图; (3)编写程序要规范、正确,上机调试过程和结果要有记录,并注意调试程序集成环境的掌握及应用,不断积累编程及调试经验; (4)做完实验后给出本实验的实验报告。 二、实验设备、环境 PII 以上计算机,装有QuartusII 软件 三、方法与步骤 (一)教师简单回顾所需知识并演示较一个简单功能的实现过程。 1、 简单回顾组合逻辑电路的特点及常用逻辑功能器件的功能 2、 回顾QuartusII 的VHDL 操作步骤 3、 以4选1数据选择器为例,重点演示该组合逻辑单元的VHDL 设计过程。 (1)4选1数据选择器的真值表与电路符号 (2)4选1数据选择器的参考VHDL 程序 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY mux41 IS PORT(S :IN STD_LOGIC_VECTOR (1 DOWNTO 0); A,B,C,D : IN STD_LOGIC; Y :OUT STD_LOGIC ); END mux41; ARCHITECTURE a OF mux41 IS BEGIN PROCESS (s,A,B,C,D) BEGIN IF (S="00") THEN Y <= A; ELSIF (S="01") THEN Y <= B; ELSIF (S="10") THEN Y <= C; 地址输入 输出 S0 S1 0 0 A 0 1 B 1 0 C 1 1 D S[1..0]A B C D Y MULTI_4V A B C D S[1..0] Y

EDA组合逻辑电路的设计

信息工程学院实验报告 课程名称:CPLD/FPGA 应用开发技术 实验名称:组合逻辑电路的设计 实验类型:验证性■综合性□设计性□

预习报告 一、实验目的: 1、掌握用VHDL 语言和EPLD 进行组合逻辑电路的设计方法。 2、加深对EPLD 设计全过程的理解。 3、掌握组合逻辑电路的静态测试方法。 二、实验设备: 1、PC 机 2、EDA 实验箱(主芯片是ALTERA EPM7128SLC84-15)。 三、实验内容: 1、用VHDL 语言输入法设计一个四舍五入判别电路,其输入为8421BCD 码,要求当 输入大于或等于5 时,判别电路输出为1;反之为0。 2、用VHDL 语言输入法设计四个开关控制一盏灯的逻辑电路,要求合任一开关,灯亮; 断任一开关,灯灭。 3、用VHDL 语言输入法设计一个优先权排队电路。排队顺序为: A=1 最高优先级 B=1 次高优先级 C=1 最低优先级 要求输出端最高只能有一端为“1”,即只能是优先级较高的输入端所对应的输出端为“1”。 四、实验步骤: 1、采用文本编辑器输入VHDL 语言源程序,建立工程。 2、编译。 3、仿真。 4、对芯片进行编程。 5、根据管脚分配情况连线。 (1)四舍五入判别电路的四个输入管脚分别与四个拨码开关相连,输出数据与LED 灯相连。 (2)开关控制电路的四个输入管脚分别与四个按键开关相连,输出管脚与LED 灯相连。 (3)优先权排队电路的A、B、C 三个信号分别连三个按键开关,三个输出信号分别连三个LED 灯相连。 6、控制输入信号(按键或拨码开关),观察电路输出(LED 灯的亮与灭)。 五、实验报告要求: 1、给出电路的VHDL 描述、仿真结果。 2、说明波形图中输入数据的给定依据。

实验2组合逻辑电路的VHDL设计

实验二 组合逻辑电路的VHDL 设计 一、实验目的与要求 1、目的 (1)熟悉VHDL 语言的基本结构 (2)掌握用VHDL 语言实现组合逻辑功能器件的逻辑功能的一般方法。 2、要求 (1)调试程序要记录调试过程中出现的问题及解决办法; (2)给出每个问题的算法或画出流程图; (3)编写程序要规范、正确,上机调试过程和结果要有记录,并注意调试程序集成环境的掌握及应用,不断积累编程及调试经验; (4)做完实验后给出本实验的实验报告。 二、实验设备、环境 PII 以上计算机,装有QuartusII 软件 三、方法与步骤 (一)教师简单回顾所需知识并演示较一个简单功能的实现过程。 1、 简单回顾组合逻辑电路的特点及常用逻辑功能器件的功能 2、 回顾QuartusII 的VHDL 操作步骤 3、 以4选1数据选择器为例,重点演示该组合逻辑单元的VHDL 设计过程。 (1)4选1数据选择器的真值表与电路符号 (2)4选1数据选择器的参考 VHDL 程序 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY mux41 IS PORT(S :IN STD_LOGIC_VECTOR (1 DOWNTO 0); A,B,C,D : IN STD_LOGIC; Y :OUT STD_LOGIC ); 地址输入 输出 S0 S1 0 0 A 0 1 B 1 0 C 1 1 D S[1..0]A B C D Y MULTI_4V A B C D S[1..0] Y

END mux41; ARCHITECTURE a OF mux41 IS BEGIN PROCESS (s,A,B,C,D) BEGIN IF (S="00") THEN Y <= A; ELSIF (S="01") THEN Y <= B; ELSIF (S="10") THEN Y <= C; ELSIF (S="11") THEN Y <= D; END IF; END PROCESS; END a; 四、实验过程、内容、数据处理及分析 按照设计选题编写简单程序 1、可供选择进行设计的组合逻辑电路如下,要求规定课时内至少完成3种 逻辑电路的设计。 设计对象选择:基本门电路、8选1数据选择器、3-8译码器、BCD码译码器、优先级编码器、全加器、4位加法器。 (1) 8选1数据选择器 library ieee; use ieee.std_logic_1164.all; entity mux81 is port (s: in std_logic_vector (2 downto 0); a,b,c,d,e,f,g,h : in std_logic; y: out std_logic

相关主题
文本预览
相关文档 最新文档