SOPC-IVEDA实验指导书(第一版)

更新时间:2023-04-18 10:44:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

EDA/SOPC系统开发平台

EDA基础篇

北京百科融创教学仪器设备有限公司

SOPC-IV 实验指导书EDA 基础篇

前言

近十年由于超大规模集成电路和软件技术的快速发展,使数字系统集成到一片集成电路内成为可能,Atera、Xilinx、AMD等公司都推出了非常好的 CPLD 和 FPGA 产品,并为这些产品的设计配备了设计、下载软件,这些软件除了支持图形方式设计数字系统外,还支持设计多种数字系统的设计语言,使数字系统设计起来更加容易。在小规模数字集成电路就要淘汰的今天,作为一个电子技术工程技术人员不懂VHDL 语言和C PLD、FPGA 器件设计就象在计算机时代不会使用计算机一样可怕。

本实验指导书的目的就是帮助读者学会设计数字系统,并熟悉 Altera 公司产品和软件Q UARTUS II及其它相关软件的使用。

本实验指导书的实验内容从简单的组合电路设计到复杂的数字系统设计,详细介绍了系统的设计方法和软件的各种操作。读者可以通过这本实验指导书设计自己的数字电路。

本实验指导书选编了有代表性的实验近三十个,实验内容从简单到复杂,使使用者能够很快的入手,同时本实验指导书还可以作为电子技术的加深课程或作为电子技术工程师的参考用书。

本实验指导书配合 SOPC-NIOSII、EDA/SOPC 系统开发平台系列产品使用。如果用户有批评和建议可以和我们联系:

E-mail:BJBKRC@dede6e6fb307e87100f6962f 135********

由于时间仓促,资料缺乏,有错误之处请读者原谅。

1

SOPC-IV 实验指导书EDA 基础篇

目录

实验一基于Q UARTUSII图形输入电路的设计 (3)

实验二基于VHDL格雷码编码器的设计 (24)

实验三含异步清零和同步使能的加法计数器 (27)

实验四八位七段数码管动态显示电路的设计 (31)

实验五数控分频器的设计 (35)

实验六图形和VHDL混合输入的电路设计 (37)

实验七四位并行乘法器的设计 (42)

实验八基本触发器的设计 (45)

实验九设计四位全加器 (48)

实验十矩阵键盘显示电路的设计 (51)

实验十一16*16点阵显示实验 (56)

实验十二用VHDL设计七人表决器 (61)

实验十三用VHDL设计四人抢答器 (64)

实验十四可控脉冲发生器的设计 (66)

实验十五正负脉宽调制信号发生器设计 (69)

实验十六直流电机的测速实验 (72)

实验十七数字频率计的设计 (77)

实验十八交通灯控制电路实验 (82)

实验十九多功能数字钟的设计 (85)

实验二十序列检测器的设计 (88)

实验二十一数字秒表的设计 (91)

实验二十二出租车计费器的设计 (94)

实验二十三VGA彩条信号发生器的设计 (97)

实验二十四四相步进电机控制实验 (101)

附录I——核心板硬件资源连接 (105)

附录I I——实验箱硬件资源连接 (123)

附录III——开发平台部分模块的电路图 (134)

2

SOPC-IV 实验指导书EDA 基础篇实验一基于Q UARTUSII 图形输入电路的设计

一、实验目的

1、通过一个简单的3—8 译码器的设计,掌握组合逻辑电路的设计方法

2、初步了解QUARTUSII 原理图输入设计的全过程。

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

二、实验原理

3-8译码器三输入,八输出。当输入信号按二进制方式的表示值为N时,输出端标号为N的输出端输出高电平表示有信号产生,而其它则为低电平表示无信号产生。因为三个输入端能产生的组合状态有八种,所以输出端在每种组合中仅有一位为高电平的情况下,能表示所有的输入组合。其真值表如表1-1 所示: 表1-1 三-八译码器真值表

译码器不需要像编码器那样用一个输出端指示输出是否有效。但可以在输入中加入一个输出使能端,用来指示是否将当前的输入进行有效的译码,当使能端指示输入信号无效或不用对当前信号进行译码时,输出端全为高电平,表示无任何信号。本例设计中没有考虑使能输入端,自己设计时可以考虑加入使能输入端时,程序如何设计。

三、实验内容

3

SOPC-IV 实验指导书EDA 基础篇

在本实验中,用三个拨动开关来表示三八译码器的三个输入(A、B、C),用八个LED 来表示三八译码器的八个输出(D0-D7),通过输入不同的值来观察输入的结果与三八译码器的真值表(表1-1)是否一致。实验箱中的拨动开关与FPGA的接口电路如下图1-1 所示,当开关闭合(拨动开关的档位在下方)时其输出为低电平,反之输出高电平。其电路与FPGA 的管脚连接如表1-2 所示。

图1-1 拨动开关与FPGA 接口电路

表1-2 拨动开关与FPGA 管脚连接表

LED 灯与FPGA 的接口电路如图1-2 所示,当FPGA 与其对应的端口为高电平时LED 就会发光,反之LED 灯灭。其与FPGA 对应的管脚连接如表1-3 所示。

4

SOPC-IV 实验指导书EDA 基础篇

图1-2 LED 灯与FPGA 接口电路

表1-3 LED 灯与FPGA 管脚连接表

四、实验步骤

下面将通过这个实验,向读者介绍QUARTUSII 的项目文件的生成、编译、管脚分配以及时序仿真等的操作过程。

1、建立工程文件

1)选择开始>程序>Altera>QuartusII5.1,运行QUARTUSII 软件。或者双击桌面上的 QUARTUSII 的图标运行 QUARTUSII 软件,出现如图 1-3 所示,如果是第一次打开 QUARTUSII 软件可能会有其它的提示信息,使用者可以根据自己的实际情况进行设定后进入图1-3 所示界面。

5

SOPC-IV 实验指导书 EDA 基础篇

6

图 1-3 QUARTUSII 软件运行界面

2)选择软件中的菜单 File>New Project Wizard ,新建一个工程。如图 1-4 所示。

3)点击图 1-4 中的 N EXT 进入工作目录,工程名的设定对话框如图 1-5 所示。第一个输入框为工程目录输入框,用户可以输入如 e:/eda 等工作路径来设定工程的目录,设定好后,所有的生成文件将放入这个工作目录。第二个输入框为工程名称输入框,第三个输入框为顶层实体名称输入框。用户可以设定如EXP1,一般情况下工程名称与实体名称相同。使用者也可以根据自已的实际情况来设定。

SOPC-IV 实验指导书 EDA 基础篇

7 图 1-4 新建工程对话框

图 1-5 指定工程名称及工作目录

4)点击 NEXT ,进入下一个设定对话框,按默认选项直接点击 NEXT 进行器件选择对话框。如图 1-6 所示。这里我们以选用 CycloneII 系列芯片 E P2C35F672C8为例进行介绍。用户可以根据使用的不同芯片来进行设定。

图 1-6 器件选择界面

首先在对话框的左上方的 F amily 下拉菜单中选取 C ycloneII ,在中间右边的 Speed grade 下拉菜单中选取 8,在左下方的 Available devices 框中选取

EP2C35F672C8,点击 NEXT 完成器件的选取,进入 EDA TOOL 设定界面如图1-7所示。

SOPC-IV 实验指导书 EDA 基础篇

8

图 1-7

EDA TOOL 对

话框 5)按默认选项,点击 NEXT 出现新建工程以前所有的设定信息,如图 1-8 所示,点击 F INISH 完成新建工程的建立。

图 1-8 新建工程信息

2、建立图形设计文件

1)在创建好设计工程后,选择 F ile>NEW …菜单,出现图 1-9 所示的新建设 计文件类型选择窗口。这里我们以建立图形设计文件为例进行说明,其它设计 输入方法与之基本相同。

SOPC-IV 实验指导书 EDA 基础篇

9

图 1-9 新建设计文件选择窗口

2)在 New 对话框(图1-9)中选择 Device Design Files 页下的Block

Diagram/Schematic File ,点击 O K 按钮,打开图形编辑器对话框,如图 1-10 所示。图中标明了常用的每个按钮的功能。

图 1-10 QUARTUSII 图形编辑器对话框

QUARTUSII 图形编辑器也称块编辑器(Block Editor ),用于以原理图(Schematics )和结构图(Block Diagrams )的形式输入和编辑图形设计信息。

SOPC-IV 实验指导书 EDA 基础篇

10 QUARTUSII 图形编辑器可以读取并编译结构图设计文件(Block Design File )和 MAXPLUSII 图形设计文件(Graphic Design Files ),可以在 Q UARTUSII 软件 中打开图形设计文件并将其另存为结构图设计文件。

在 QUARTUSII 图形编辑器窗口(图 1-10)中,根据个人爱好,可以随时 改变 Block Editor 的显示选项,如导向线和网格间距、橡皮筋功能、颜色以及基 本单元和块的属性等。

3)在这里以用原理图输入设计一个三八译码器为例,介绍基本单元符号输入方法的步骤。在图 1-10 所示的图形编辑器窗口的工件区双击鼠标的左键,或点击图中的符号工具按钮,或选择菜单 Edit>Insert Symbol ,则弹出如图 1-10所示的 S ymbol 对话框。

图 1-10 Symbol 对话框

4)用鼠标点击单元库前面的“+”号,展开单元库,用户可以选择所需要 的图元或符号,该符号则显示在右边的显示符号窗口,用户也可以在符号名称 里输入你所需要的符号名称,点击 OK 按钮,所选择的符号将显示在图形编辑 器的工件工域。

5)参考图 1-11 所示,将要选择的器件符号放置在图形编辑器的工件区域, 用正交节点工具将原件边接起来,然后定义端口的名称。在这个例子里,定义 三个输入为 A 、B 、C ,定义八个输出为 D0、D1、D2、D3、D4、D5、D6、D7。 用户也可以根据自己的习惯来定义这些端口名称。

SOPC-IV 实验指导书 EDA 基础篇

11 6)完成图形编辑的输入之后,需要保存设计文件或重新命名设计文件。选择 File>Save As …项,出现如图 1-12 所示对话框,选择好文件保存目录,并在文 件名栏输入设计文件名。如需要将设计文件添加到当前工程中,则选择对话框下面的 Add file to current project 复选框,单击保存按钮即可保存文件。需要注意的是,在整个设计文件保存的过程当中,都需要遵循设计输入法的一般规则。

图 1-11 设计文件的输入

图 1-12 保存设计文件对话框

3、对设计文件进行编译

QUARTUSII 编译器窗口包含了对设计文件处理的全过程。在 QUARTUSII 软件中选择 T ool> Compiler Tool 菜单项,则出现 Q UARTUSII 的编译器窗口,如图 1-13 所示,图中标明了全编译过程各个模块的功能。

SOPC-IV 实验指导书 EDA 基础篇

12

图 1-13 QUARTUSII 编译器窗口

需要说明的是在进行设计文件的综合和分析,也可以单独打开某个分析综 合过程不必进行全编译界面。当完成上述窗口的设定后,点击 START 按钮进行 设计文件的全编译。如果文件有错,在软件的下方则会提示错误的原因和位置,以便于使用者进行修改直到设计文件无错。整个编译完成,软件会提示编译成功,如图 1-14 所示。

图 1-14 全编译成功界面

4、管脚分配

在前面选择好一个合适的目标器件(在这个实验中选择为EP2C35F672C8,)完成设计的分析综合过程,得到工程的数据文件以后,需要对设计中的输入、输出引脚指定到具体的器件管脚号码,指定管脚号码称为管 脚分配或管脚锁定。这里介绍两种方法进行管脚锁定。

1) 点击 A ssignments 菜单下面的 A ssignment Editor ,进入到引脚分配窗口。 如图 1-15 所示。

SOPC-IV 实验指导书 EDA 基础篇

13

图 1-15 进入引脚分配界面

首先将要分配管脚的信号放置在 T o 下方。双击 T o 下方的《New 》,如图 1-15所示则会出现如图 1-16所示界面。

图 1-16 信号选择对话框

选择 N ode Finder …进入如图 1-17 所示的 N ode Finder 对话框界面。按图 1-17中样例设置参数。在 Filter 窗口选择 Pins :all ,在 Named 窗口中输入“*”,点击 List 在 Nodes Found

窗口出现所有信号的名称,点击中间的按钮则Selected Nodes 窗口下方出现被选择的端口名称。双击 O K 按钮,完成设置。进 入管脚分配窗口,如图 1-18 所示。

SOPC-IV 实验指导书 EDA 基础篇

14

图 1-17 Node Finder 对话框

图 1-18 管脚分配

在图1-18中以锁定端口A 的管脚为例,其它端口的管脚锁定与其基本一 致。选择端口A 的对应 Assignment Name 待其变为蓝色,双击之,出现下拉菜 单选取如图 1-18所示的 Location (Accepts wildcards/groups )选项。选择端口 A 的对应 Value 栏,待其变为蓝色,依照表 1-2 和表 1-3 所示的硬件与 FPGA 的 管脚连接表(或附录)),输入对应的管脚名 AB8,按回车键,软件将自动将其改为 PIN_AB8,同时蓝色选择条会自动跳转到 Value 栏的下一行,这表明软件已经将输入端口 A 分配到 F PGA 的 A B8 引脚上,如图 1-19所示。

SOPC-IV 实验指导书 EDA 基础篇

15

图 1-19 给 A 端口进行管脚分配

用同样的方法,依照表 1-2 和表 1-3 所示的硬件与 FPGA 的管脚连接表 (或 附录

一)对其它端口进行管脚分配,如图 1-20 所示。

1-20 所有引脚

全部分配结束后的软件窗口

2) 点击 A ssignments 菜单下面的 P in Planner (也可直接点击工具栏

上的

引脚分配按钮

)出现如图 1-21 所示的所选目标芯片的管脚分布图。

图 1-21 目

标芯片的管脚分布图

SOPC-IV 实验指导书 EDA 基础篇

16

图 1-22 管脚分配对话框

与上面的方法相同,依照表 1-2 和表 1-3 所示的硬件与 FPGA 的管脚连接 表(或附录),如端口 A 对应的管脚为 AB8,则双击 AB8管脚出现如图 1-22 所示对话框。

在图 1-22 对话框中的 N ode Name 框中输入对应的端口名 A 或者通过下拉 菜单选取对应的端口名称 A ,点击 O K 按钮,完成对端口 A 的管脚分配。

用相同的方法,依照下表 1-4 对其它端口进行管脚分配,管脚分配完后,如下图 1-23 所示。

SOPC-IV 实验指导书EDA 基础篇

图1-23 所有引脚全部分配结束后的软件窗口

表1-4 端口管脚分配表

在图 1-23中,棕色标出的管脚为已被分配锁定的管脚。值得注意的是当管脚分配完之后一定要进行再进行一次全编译,以使分配的管脚有效。

5、对设计文件进行仿真

1)创建一个仿真波形文件,选择QUARTUSII软件 File>New,进行新建文件对话框。如图 1-24 所示。选取对话框的 Other File标签页,从中选取 Vector Waveform File,点击O K 按钮,则打开了一个空的波形编辑器窗口,如图1-25 所示。

图1-24 新建文件对话框图1-25 波形编辑器

2)设置仿真结束时间,波形编辑器默认的仿真结束时间为 1μS,根据仿真需要,可以自由设置仿真的结束时间。选择Q UARTUSII 软件的E dit>End T ime命令,

弹出线路束时间对话框,在Time框办输入仿真结束时间,点击OK按钮完成设置。

17

SOPC-IV 实验指导书EDA 基础篇

3)加入输入、输出端口,在波形编辑器窗口左边的端口名列表区点击鼠标右键,在弹出的右键菜单中选择 Insert Node or Bus…命令,在弹出的 Insert Node or Bus 对话框如图1-26 所示界面中点击N ode Finder…按钮。

图1-26 Insert Node or Bus 对话框

在出现的 Node Finder 界面中,如图 1-27 所示,在 Filter 列表中选择 Pins:all,在 Named 窗口中输入“*”,点击 List 在 Nodes Found 窗口出现所有信号的名称,点击中间的按钮则 Selected Nodes 窗口下方出现被选择的端口名称。双击OK按钮,完成设置,回到图 1-26 所示的 Insert Node or Bus 对话框,双击OK按钮,所有的输入、输出端口将会在端口名列表区内显示出来,如图1-28所示。

图1-27 Node Finder 对话框

18

SOPC-IV 实验指导书 EDA 基础篇

19

图 1-28 在波形编辑器中加入端口

4)编辑输入端口波形,即指定输入端口的逻辑电平变化,在如图1-28所示的波形编辑窗口中,选择要输入波形的输入端口如A 端口,在端口名显示区左边的波形编辑器工具栏中有要输入的各种波形,其按钮说明如图 1-29 所示。根据仿真的需要输入波形。完成后如图 1-30所示。最后选择软件的 File>Save 进行保存。

1-29 波形编辑器工具

SOPC-IV 实验指导书 EDA 基础篇

20

图 1-30 编辑输入端口波形

5)指定仿真器设置,在仿真过程中有时序仿真和功能仿真之分,在这里介绍功能仿真。在 QUARTUSII 软件中选择 Tool>Simulator Tool 命令,打开仿真器工具窗口,如图 1-31 所示。

图 1-31 仿真器工具窗口

按图 1-31上的提示,首先产生功能仿真网表文件,点击产生功能仿真网表的按钮 Generate Functional Simulation Netlist ,产生功能仿真网表,然后点击开始仿真的 START 按钮开始进行仿真,直到仿真进度条为 100%完成仿真。点击仿真报告窗口按钮 R eport ,观察仿真波形。如图 1-32 所示。

本文来源:https://www.bwwdw.com/article/k9eq.html

Top