文档库 最新最全的文档下载
当前位置:文档库 › 《EDA》实验指导书--

《EDA》实验指导书--

《EDA》实验指导书--
《EDA》实验指导书--

辽东学院自编教材

《可编程逻辑器件原理及应用实验》指导书

李海成编

(计算机科学与技术、电子信息工程专业用)

姓名:

学号:

班级:

信息技术学院

2013年6月

目录

目录 (1)

实验一MAX+PLUS-II设计三八译码器......... 错误!未定义书签。实验二半加器 . (2)

实验三带进位输入的8位加法器 (4)

实验四数据比较器 (6)

实验五编码器 (9)

实验六组合逻辑电路的设计 (12)

实验七计数器 (14)

实验八触发器功能的模拟实现 (17)

(被加数)Ai

(被加数)Bi

(半加和)Hi

(本位进位)Ci

实验二 半加器

实验类型: 验证性

实验课时: 2

指导教师: 李海成 时 间:201 年 月 日 课 次:第 节

教学周次:第 周

实验分室: 实验台号: 实 验 员:

一、 实验目的

1.设计并实验一个一位半加器

2.掌握CPLD/FPGA 组合逻辑设计基本方法。 二、 实验原理

计算机中数的操作都是以二进制进位的,最基本的运算就是加法运算。按照进位是否加入,加法器分为半加器和全加器电路两种。计算机中的异或指令的功能就是求两个操作数各位的半加和。一位半加器有两个输入、输出,如图2-1。

图2-1 一位半加器示意图

表2-1

一个半加大路的真值表如表2-1所示,根据真值表可得到半加器的函数表达式:

Bi Ai Bi Ai Hi ?+?= Bi Ai Ci ?=

三、 实验连线

半加器的两个输入所对应的管脚同两位拨码开关相连,两个输入管脚名为a 、b ;两个输出所对应的管脚同两位发光二极管相连,两个输出管脚名为 c0和s,其中c0表示进位, s 表示相加结果。

四、 实验记录

五、实验注意事项

1.提前编辑实验程序。

2.根据教师要求正确操作,并检验逻辑的正确性

六、思考题

1.EDA半加器实现与数字电路设计方法的根本区别。

2.简述EDA设计半加器的不同方法,并比较其优缺点。

3.心得体会及其他。

实验三 带进位输入的8位加法器

实验类型: 验证性

实验课时: 2 指导教师:

时 间:200 年 月 日 课 次:第 节

教学周次:第 周

实验分室: 实验台号: 实 验 员:

一、 实验目的

1. 设计并实现一个8位全加器

2. 掌握EDA 中模块调用方法 二、 实验原理

利用实验二构建的半加器构建一位的全加器,然后设计一个8 位的全加器,其框图如图4-1所示。图中的“进位入”C i-1指的是低位的进位输出,“进位出”Ci 即是本位的进位输出。

图 4-1 8位全加器原理图

三、 实验连线

全加器的17个输入所对应的管脚同17位拨码开关相连,17个输入管脚是a0~a7、b0~b7和cin a0~a7、b0~b7代表两个8位二进制数,cin 代表进位位;9个输出所对应的管脚同9位发光二极管相连,9个输出管脚是sum0~sum7和cout ,sum0~sum7代表相加结果,cout 代表进位位。

四、 实验记录

(被加数)Bi(7..0)

(被加数)Ai(7..0) (进位入)C i-1

(全加和)Si(7..0)

(进位出)Ci

五、实验结果分析与思考

1.半加器与全加器的区别。

2.实验设计程序

3实验结果总结

实验四数据比较器

实验类型:设计性实验课时: 2 指导教师:李海成时间:201 年月日课次:第节教学周次:第周实验分室:实验台号:实验员:

一、实验目的

1.设计并实现一个4位二进制数据比较器

2.掌握数据比较器的构建及其方法

二、实验原理

二进制比较器是提供关于两个二进制操作数间关系信息的逻辑电路。两个操作数的比较结果有三种情况:A等于B、A大于B和A小于B。

考虑当操作数A和B都是一位二进制数时,构造比较器的真值表见表9-1。输出表达式如下:

AEQB=A’B’+AB=(AB)’

A>B=AB’

A

在一位比较器的基础上,我们可以继续得到两位比较器,然后通过“迭代设计”得到4位的数据比较器。对于4位比较器的设计,我们可以通过原理图输入法或VHDL描述来完成,其中用VHDL语言描述是一种最为简单的方法。下面是一个3位比较器的VHDL描述:library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity comp is

port(a,b: in std_logic_vector(2 downto 0);

sel_f: in std_logic_vector(1 downto 0);

q: out Boolean);

end;

architecture a of comp is

begin

process(sel_f,a,b)

begin

case sel_f is

when”00” => q <= a=b;

when”01” => q <= a

when”10” => q <= a>b;

when others => q <=false;

end case;

end process;

end a;

实验源程序名是comp.vhd。

三、实验连线

输入信号有A0~A3、B0~B3、CLK和RST,其中A0~A3和B0~B3代表两路相互比较的数,接拨码开关,CLK接时钟,RST接复位端;输出信号有AEQB(A=B)、AGTB(A>B)、ALTB(A

四、实验记录

同前,对比较器造表,得到其真值表,并分析其运算结果的正确性。

五、实验结果分析与思考

1.比较器的应用场合。

2.实验设计程序

3实验结果总结

实验五编码器

实验类型:验证性实验课时: 2 指导教师:李海成时间:201 年月日课次:第节教学周次:第周实验分室:实验台号:实验员:

一、实验目的

1.设计并实现一个16-4优先编码器

2.掌握编码器的设计方法。

二、实验原理

常用的编码器有:4-2编码器、8-3编码器、16-4编码器,下面我们用一个8-3编码器的设计来介绍编码器的设计方法。

8-3编码器如图11-1所示,其真值表如表11-1。

图11-1 8-3编码器

整个编码器的VHDL语言描述如下:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY ENCODE IS

PORT(D: IN STD_LOGIC_VECTOR(7 DOWNTO 0);

EIN: I N STD_LOGIC;

A0N,A1N,A2N,GSN,EON: OUT STD_LOGIC);

END ENCODE;

ARCHITECTURE A OF ENCODE IS

SIGNAL Q: STD_LOGIC_VECTOR(2 DOWNTO 0);

BEGIN

A0N <=Q(0); A1N<=Q(1); A2N<=Q(2);

PROCESS(D)

BEGIN

IF EIN =’1’ THEN

Q<=”111”;

GSN<=’1’; EON<=’1’;

ELSIF D(0)=’0’THEN

Q<=”111”;GSN<=’0’;EON<=’1’;

ELSIF D(1)=’0’THEN

Q<=”110”;GSN<=’0’;EON<=’1’;

ELSIF D(2)=’0’THEN

Q<=”101”;GS N<=’0’;EON<=’1’;

ELSIF D(3)=’0’THEN

Q<=”100”;GSN<=’0’;EON<=’1’;

ELSIF D(4)=’0’THEN

Q<=”011”;GSN<=’0’;EON<=’1’;

ELSIF D(5)=’0’THEN

Q<=”010”;GSN<=’0’;EON<=’1’;

ELSIF D(6)=’0’THEN

Q<=”001”;GSN<=’0’;EON<=’1’;

ELSIF D(7)=’0’THEN

Q<=”000”;GSN<=’0’;EON<=’1’;

ELSIF D=”11111111”THEN

Q<=”111”;GSN<=’1’;EON<=’0’;

END IF;

END PROCESS;

END A;

实验源程序名是encode.vhd。

请参考以上程序设计一16-4编码器。

三、实验连线

输入信号D0~D15(代表16路输入数据)、EIN(代表输入允许控制端)、EON、GSN (代表2个输出允许控制端),都接拨码开关;输出信号A0N~A3N(代表四路编码结果输出)接发光二极管。改变拨码开关的状态,对照表11-1 8-3优先编码器真值表,观察实验结果。

四、实验记录

对编码器造表,得到其真值表,并分析其运算结果的正确性。

五、实验结果分析与思考

1.编码器常用芯片有哪些,比较专用芯片和EDA设计的优缺点。

2.实验过程出现问题及处理方法

3实验结果总结

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

实验类型:设计性实验课时: 2 指导教师:李海成时间:201 年月日课次:第节教学周次:第周实验分室:实验台号:实验员:

一、实验目的:

1.掌握组合逻辑电路的设计方法。

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

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

二、实验的硬件要求:

1.输入:按键开关(常高)4个;拔码开关4位。

2.输出:LED灯。

3.主芯片:Altera EPF10K10LC84-4。

三、实验内容:

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

2. 设计四个开关控制一盏灯的逻辑电路,要求合任一开关,灯亮;断任一开关,灯灭。(即任一开关的合断改变原来灯亮灭的状态)

3. 设计一个优先权排队电路,其框图如下:

排队顺序:

A=1 最高优先级

B=1 次高优先级

C=1 最低优先级

要求输出端最高只能有一端为“1”,即只能是优先级较高的输入端所对应的输出端为“1”。

四、实验连线:

1. 四位拔码开关连D3,D2,D1,D0信号对应的管脚。

OUT输出信号管脚接LED灯。

2. 四位按键开关分别连K1,K2,K3,K4信号对应的管脚。

OUT输出信号管脚接LED灯。

3. A、B、C信号对应管脚分别连三个按键开关。

输出A_OUT,B_OUT,C_OUT信号对应的管脚分别连三个LED灯。

(具体管脚参考反标注原理图和实验箱上的标记)

五、实验报告要求

1.对于原理图设计要求有设计过程,并写出程序设计代码。

2.详细论述实验步骤。

3.写一些对于两种硬件设计输入法的优劣心得。

实验报告内容:

实验七计数器

实验类型:验证性实验课时: 2 指导教师:李海成时间:201 年月日课次:第节教学周次:第周实验分室:实验台号:实验员:

一、实验目的

1、设计一个带使能输入及同步清0的增1计数器,仿真波形图见图20-1,实验源程序名

是counter1.vhd;

2、设计一个带使能输入及同步清0的增1/减1的8位计数器,仿真波形图见图20-2A

和20-2B,实验源程序名是up-down.vhd。

二、实验内容

图20-1 计数器2波形图

图20-2A 加减控制计数器

波形图

在用VHDL语言描述一个计数器时,如果使用了程序包ieee.std_logic_unsigned,则在描述计数器时就可以使用其中的函数“+”(递增计数)和“-”(递减计数)。假定设计对象是增1计数器并且计数器被说明为向量,则当所有位均为‘1’时,计数器的下一状态将自动变成‘0’。举例来说,假定计数器的值到达“111”是将停止,则在增1之前必须测试计数器的值。

图20-2B 加减控制计数器波形图如果计数器被说明为整数类型,则必须有上限值测试。否则,在计数顺值等于7,并且要执行增1操作时,模拟器将指出此时有错误发生。

下面的例子是一个3位增1/减1计数器:当输入信号UP等于1 时计数器增1;当输入信号UP等于0时计数器减1。

Library ieee;

Use ieee.std_logic_1164.all;

Use ieee.std_logic_unsigned.all;

Entity up_down is

Port(clk,rst,en,up: in std_logic;

Sum: out std_logic_vector(2 downto 0);

Cout: out std_logic);

End;

Architecture a of up_down is

Signal count: std_logic_vector(2 downto 0);

Begin

Process(clk,rst)

Begin

If rst=’0’ then

Count<=(others=>’0’);

Elsif rising_edge(clk) then

If en=’1’ then

Case up is

When ‘1’ => count<=count+1;

When others =>count<=count-1;

End case;

End if;

End if;

End process;

Sum<=count;

Cout <=’1’ when en=’1’ and ((up=’1’ and count=7) or (up=’0’ and count=0)) else

‘0’;

End;

参考以上实例完成实验目的中所要求的3个计数器的设计。

三、实验连线

实验1输入信号有clk(时钟信号)、clr(复位信号)、en(使能控制输入信号),clk用CPLD/FPGA适配器板子上的时钟信号,接数字信号源的CLK5,频率调节到1Hz左右,clr、en接拨码开关,工作时clr为低电平,en为高电平;输出信号有Q0~Q3,接LED灯。

实验2输入信号有clk(时钟信号)、rst(复位信号)、en(使能控制输入信号)、up (加减控制输入信号),clk用CPLD/FPGA适配器板子上的时钟信号,接数字信号源的CLK5,频率调节到1Hz左右,rst、en、up接拨码开关,工作时rst和en为高电平,up为高电平时增计数,为低电平时减计数;输出信号有SUM0~SUM2(代表输出数据)和COUT(代表进位或借位),都接LED灯。

在做实验时,请注意仿真波形图中各个输入信号的有效电平。

四、实验报告

1.设计问题及解决方法

2.设计过程及代码

实验八触发器功能的模拟实现

实验类型:设计性实验课时: 2 指导教师:李海成时间:201 年月日课次:第节教学周次:第周实验分室:实验台号:实验员:

一、实验目的:

1.掌握触发器功能的测试方法。

2.掌握基本RS触发器的组成及工作原理。

3.掌握集成JK触发器和D触发器的逻辑功能及触发方式。

4.掌握几种主要触发器之间相互转换的方法。

通过实验,体会EPLD芯片的高集成度和多I/O口。

实验源程序是t33.gdf。

二、实验说明

将基本RS触发器,同步RS触发器,集成J-K触发器,D触发器同时集成一个EPLD 芯片中模拟其功能,并研究其相互转化的方法。

实验的具体实现要连线测试。实验原理如图33-1 :

图33-1

电路中各个触发器的仿真波形图如下:

图33-2 RS触发器仿真波形图

图33-3 RS锁存器仿真波形图

图33-4 JK触发器仿真波形图

图33-5 D触发器仿真波形图

三、实验连线:

输入信号Sd、Rd对应的管脚接按键开关,CLK接时钟源(频率在1Hz左右);输入信号J,K,D,R,S对应的管脚分别接拨码开关;输出信号QRS,NQRS,QRSC,NQRSC,QJK,NQJK,QD,NQD对应管脚分别接LED灯。

另外准备几根连线,在改变为T‘触发’器时,短接相应管脚,或连接“0”“1”电平。

四、实验报告:填下述表格表一,表二,表三,表四。表一: RS 寄存器

表二: RS 锁存器

表三: JK 触发器

表四:D 触发器

相关文档