数字逻辑实验报告

  • 格式:doc
  • 大小:1.47 MB
  • 文档页数:26

1 / 1文档可自由编辑

数字逻辑实验报告

姓名:任凯

学号:139074018

班级:计131

实验一 3-8 译码器设计(原理图设计输入)(本实验将详细介绍 Altera

公司 MAX+PlusⅡ软件的基本应用)

1 / 1文档可自由编辑 一、实验目的

1. 通过一个简单的 3-8 译码器的设计,让学生掌握用原理图描述组合

逻辑电路的设计方法。

2. 掌握组合逻辑电路的软件仿真方法。

3. 初步了解可编程器件设计的全过程。

二、实验步骤

1. 设计输入

1.1 启动 MAX+PlusⅡ软件包,选择 File/New 菜单,弹出设计输入选择窗口,如下图 1.1 所示:

1.2 选择 Graphic Editor File,单击“ OK”按钮,打开原理图编辑器,进入

原理图设计输入电路编辑状态。如下图 1.2 所示:

1.3 设计的输入

1 )放置一个器件在原理图上

a. 在原理图的空白处双击鼠标左键(或者单击右键选择 Symbol/Enter

Symbol 快捷菜单),弹出图 1.3 所示对话框。

b. 在 Symbol Name 框中输入元件名称或用鼠标在元件库中选取所需元件,按下“ OK”按钮即可。

c. 对于相同的元件,只要按住 Ctrl 键的同时拖动鼠标即可进行复制;也可采用复制/粘贴的方法进行复制。

d. 一个完整的电路应包括:输入端口 INPUT、电路元器件的集合、输出端口 OUTPUT。e. 图1.4为 3-8 译码器元件的安放结果。

1 / 1文档可自由编辑 图 1.4

2)在器件的管脚上添加连线

把鼠标移到元件引脚附近,鼠标指针由箭头变为十字,按住鼠标左键拖动即可画出连线。图 1.5 为 3-8 译码器原理图。

1 / 1文档可自由编辑 图1.5

3)标记输入/输出端口属性

双击输入/输出端口的“PIN_NAME”,变成黑色时输入标记符并回车确认。本译码器将三个输入端标记为 A、B、C,输出端标记为 D0~D7。标记输入/输出端口后的 3-8 译码器原理图如图 1.6 所示。

1 / 1文档可自由编辑

图1.6

4)保存原理图

对于新建文件,单击保存按钮会出现“Save As(另存为)”对话框,此时可选择(或输入)保存路径和文件名称。原理图的文件扩展名为“*.gdf”。

5)设置为当前文件

点击 File/Project/Set Project to Current File 可将当前编辑的文件设置为当前文件。当打开了几个项目文件时,这个步骤非常重要,否则将会出错。

* 初学者一定要注意这一步骤。

至此,已经完成了一个电路的原理图设计输入的整个过程。

2. 电路的编译与适配

2.1 选择芯片型号

点击 Assign/Device 菜单选择当前项目文件欲设计实现的实际芯片来进行编译适配。本例选择 EPLD EPF10K10LC84-4 来实现,如图 2.1 所示。

1 / 1文档可自由编辑

图2.1

如果不选择适配芯片,开发软件将自动把所有适合本电路的芯片一一进行编译适配,将会耗费大量时间。

2.2 编译适配

点击 MAX+PlusⅡ/Compiler 菜单,按下弹出窗口(图 2.2)中的 Start按钮开始进行编译,生成下载文件。如果编译前选择的芯片是 CPLD,则生成的下载文件为“*.pof”文件(编程目标文件);如果选择的芯片是 FPGA,则生成“*.sof”文件(SRAM 配置目标文件)。这个文件用于硬件下载编程时调用。同时还生成一个“*.rpt”报告文件,用于详细查看编译结果。如果编译时出现错误,则要修改设计后重新编译。

图2.2

如果设计的电路顺利地通过了编译,当电路不复杂的情况下,就可以对芯片进行编程下载,直到实现所设计的硬件电路,至此,已经完成了一个EDA 的设计与实现的全过程。如果电路足够复杂,就要进行仿真。

1 / 1文档可自由编辑

图2.3

3. 电路仿真与时序分析

MAX+PlusⅡ支持电路的功能仿真(前仿真)和时序仿真(后仿真)。众所周知,开发人员在进行电路设计时,非常希望借助比较先进、高效的仿真工具来节省设计过程的时间和成本。因此,EDA 工具提供的强大的(在线)仿 真 功 能 迅 速 得 到 了 电 子 工 程 设 计 人 员 的

青 睐 , 这 也 是 当 今 EDA(CPLD/FPGA)技术非常火爆的原因之一。

下面通过本实验来介绍 MAX+PlusⅡ仿真功能的基本应用。

3.1 添加仿真激励信号波形

1 )启动 MAX+PlusⅡ/Waveform Editor 菜单,进入波形编辑窗口,如图 3.1 所示。

1 / 1文档可自由编辑

图3.1

2)将鼠标指针移到空白处,单击鼠标右键,选择快捷菜单中的“ Enter

Nodes from SNF…”并按鼠标左键确认,出现图 3.2 所示的对话框。

图3.2

3)单击“ List”和“=>”按钮,选择欲仿真的 I/O 管脚。

4)单击“ OK”按钮,列出仿真电路的输入、输出管脚图如图 3.3 所示。在本列中, 3-8 译码器的输出为灰色,表示未仿真前其输出是未知的。

1 / 1文档可自由编辑 图3.3

5)调整管脚顺序,以符合常规习惯。调整时只需选中某一管脚并按住鼠标左键将其拖到相应位置即可完成。如图 3.4。

图3.4

6)准备为电路输入端口添加激励波形。选中欲添加信号的管脚,窗口左边的信号源即刻变成可操作状态,这是就可以根据实际电路要求选择信号源种类。本例电路中,选择时钟信号就可以满足仿真要求。

7)选择仿真时间。仿真时间长短由电路实际要求确定。点击“ File/End

Time…”菜单,本实验选择软件默认时间 1us 就能观察到 3-8 译码器的 8 个输出状态。

1 / 1文档可自由编辑 8)为 A、 B、 C 三个端口添加输入信号。先选中 A 输入端,然后再点击窗口左边的时钟信号源图标添加激励波形,出现图 3.5 所示的对话框。

图3.5

本例中,选择初始电平为“ 0”,时钟周期倍数为“ 1 ”,按下“ OK”按钮确认。这时已为输入端 A 添加了完整的激励信号,点击全屏显示按钮后如图 3.6 所示。

图3.6

根据电路要求编辑另外两路输入端口的激励信号波形。本实验中,假设3-8 译码器的 A、 B、 C 三路输入信号的频率分别为 1 、 2、 4 倍关系,则译码输出顺序就符合常规的观察习惯。按上述方法,为 B、 C

两路输入端口添加激励波形后,点击全屏显示按钮后如图 3.7 所示。

1 / 1文档可自由编辑 9)保存激励信号编辑结果。使用 File/Save 或关闭当前波形编辑窗口均会出现图 3.8

所示的对话框,单击“ OK”按钮保存激励信号波形。

图3.8

* 注意不要随意改动文件名(仿真波形文件应与设计文件同名,仅扩展名不同)。3.2 电路仿真

电路仿真分为功能仿真(前仿真)和时序仿真(后仿真),而时序仿真覆盖了功能仿真,故本实验直接使用时序仿真。

1 )点击“ MAX+PlusⅡ/Simulator”菜单,弹出图 3.9 所示的对话框。

1 / 1文档可自由编辑 图3.9

2)确定仿真时间。 End Time 为“ 1”的整数倍。如果在添加激励信号时未设置结束时间,则此时仿真窗口中的“ EndTime”参数就不能修改。本例中,使用默认时间,单击“ Start”按钮开始仿真。如果出现错误,一般是激励信号添加有误,查找并修正错误后重新仿真。本例无错误,出现图 3.10 的提示。

图3.10

3)观察仿真结果。单击激励输出波形文件“ ”按钮,波形如图 3.11 所示。

1 / 1文档可自由编辑 图3.11

4)从上图可见,所设计的 3-8 译码器顺利的通过了仿真,设计完全正确。下面将上图放大,仔细观察一下电路的时序。在窗口空白处单击鼠标左键,出现测量标尺,然后将标尺拖至欲测量的地方,查看延时情况。

4. 管脚的重新分配与定位

启动 MAX+PlusⅡ/Floorplan Editor 菜单,出现如图 4.1 所示的芯片管脚自动分配画面(在芯片的空白处双击鼠标,可在芯片和芯片的内部逻辑块之间切换)。

*注意:不要在芯片的内部逻辑视图下进行管脚分配。

图4.1

1 / 1文档可自由编辑 Floorplan Editor 显示的是该设计项目的管脚分配图,它是由软件自动分配的。用户可以随意改变管脚分配,以方便与所设计的外设电路进行匹配。管脚编辑过程如下:

4.1 按 下 窗 口 左 边 的 手 动 分 配 图 标所 有 管 脚 将 会

出 现 在窗口中,如图 4.2 所示。

图4.2

4.2 用鼠标按住某输入/输出端口,并拖到下面芯片的某一管脚上,便可完成一个管脚的重新分配。注意:芯片上有一些特定功能的管脚,进行管脚编辑时,不要对这些管脚进行分配。另外,在芯片器件选择中,如果选的是 auto,则不允许对管脚进行在分配。

当对管脚进行二次调整以后,一定要再编译一次,否则程序下载以后,其管脚功能还是为当初的自动分配状态。

5. 器件的下载编程与硬件实现

5.1 实验箱电路板上的连线用三位拨码开关代表译码器的输入 A、 B、

C,将其分别与 EPF10K10芯片的对应管脚相连。用 LED 灯来表示译码器的输出,将 D0……D7 对应的管脚分配与 8 只LED 相连。

5.2 器件的编程下载

1 )启动 MAX+PlusⅡ/Programmer 菜单。如果是第一次启用,将会出现填写硬件类型对话框,请选择“byte blaster”并按下“OK”按钮确认即可。此后,如果需要修改硬件类型,可以在打开 MAX+PlusⅡ/Programmer菜单,选择 Options/Hardware Setup 菜单。2)选中主菜单下的 JTAG/Multi-Device JTAG Chain 菜单项(第一次启用可能会出现问话框,视实际情况回答确认)。

3)启动 JTAG/Multi-Device JTAG Chain Setup…菜单项,出现图 4.3