数字集成系统实验指导书 - 图文(3)

2019-04-01 20:58

1) 建立新文件. 运行MAX+PLUS II 软件,选择菜单File|new,出现对话框,选择Text

图2-2 全加器的示意图和真值表

Editor File 选项,单击OK进入文本编辑画面.

A S B Ci Co 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 A B Ci S 0 0 0 1 0 1 1 0 0 1 1 0 1 0 1 1 Co

2) 保存文件.选择菜单File|Save,键如文件名multi_4v.vhd,选择合适的路径,,进

行保存,.注意文件名和路径名不能用汉字.

3) 指定项目名称.选择选择菜单File|Project|Set Project to Current File ,以快

捷方式建立项目.

4) 输入文本. 在文件multi_4v.vhd输入以下VHDL源程序: LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY multi_4v IS

PORT(A,B,C,D: IN STD_LOGIC;

S: IN STD_LOGIC_VECTOR(1 DOWNTO 0); Y: OUT STD_LOGIC); END multi_4v;

ARCHITECTURE a OF multi_4v 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

10

Y<=D; END IF; END PROCESS; END a; 5) 编译

后面的编译同实验一,在此不做详细介绍. 6) 创建电路符号和电路默认包含文件

创建电路符号.选择菜单File|Create Default Symbol,可以产生 multi_4v.sym ,代表现在所设计的电路的模块化表示符号.

创建电路默认包含文件:选择菜单File|Create Include File,产生所设计的multi_4v.inc文件.

2、利用74138实现一位全加器的步骤请参考实验一,图形见课本图8-2-4.

七、思考题

1、试用VHDL 语言实现一位全加器.

2、试将一个四位的二进制码(0---F)转化为8421BCD码,并通过七段译码电路将其译码送给发光二极管进行显示 提示:(给出相应的VHDL语言) LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY bcd1 IS

PORT(A: IN STD_LOGIC_VECTOR(3 DOWNTO 0); B1: OUT STD_LOGIC_VECTOR(4 DOWNTO 0)); END bcd1;

ARCHITECTURE a OF bcd1 IS BEGIN

PROCESS(A)

BEGIN

IF(A<10) THEN B1<='0'&A; ELSE

B1<='0'&A+6; END IF; END PROCESS;

11

END a;

将以上程序进行编译,仿真成功后进行打包. 然后建立一个*gdf文件,重新建立一个项目.

图2-3 数据LED显示原理图

八、实验报告

要求学生按本实验指导书后附的实验报告格式和要求的内容写出实验报告,实验报告应包括实验预习、实验记录和实验报告等三部分内容。

九、其它说明

1. 学生实验时,应严格准守实验室规则、安全制度和学生实验守则;

2. 认真学习实验操作技能,严格按指导书和实验指导教师的指导操作有关规仪器设备,

不要做与本实验无关的事情;

3.做好实验预习、实验记录,并按要求按时完成实验报告。

12

实验三:异步计数器和同步计数器

实验学时:2 实验类型:验证 实验要求:必修 一、实验目的

1、掌握用MSI集成电路和VHDL语言设计计数器的原理. 2、掌握层次化设计的思路. 3、掌握时序电路的设计方法.

二、实验内容

用层次化设计方法设计一个60进制的计数器.

三、实验原理、方法和手段

四、实验组织运行要求

根据本实验的特点、要求和具体条件,采用集中讲解和学生动手的形式。

五、实验条件

安装MAXPLUS ++ II 的电脑一台

六、实验步骤

(编译,仿真步骤省略)

1、 设计一个10进制的计数器.(用原理图实现).

图3-1 10进制的原理图 将其打包.

13

2、做一个六进制的计数器.(用VHDL语言来实现). LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY counter6 IS

PORT(ld,clk,clear: IN STD_LOGIC;

data: IN STD_LOGIC_VECTOR(2 DOWNTO 0); Q1: BUFFER STD_LOGIC_VECTOR(2 DOWNTO 0); c: OUT STD_LOGIC); END counter6;

ARCHITECTURE a1 OF counter6 IS BEGIN

c<='1' WHEN Q1=\ PROCESS(clk,ld,clear) BEGIN

IF clear=‘0' THEN Q1<=\

ELSIF ld='1' THEN Q1<=data;

ELSIF(clk 'Event AND clk='0') THEN IF Q1=\ Q1<=\ ELSE

Q1<=Q1+1;

图3-2 60进制的原理图

END IF; END IF;

14


数字集成系统实验指导书 - 图文(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:七八年级必须掌握的19个重点英语语法!110+学霸必背!

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: