1、实 习 报 告1、目的和要求1、熟悉在 EDA 平台上进行数字电路集成设计的整个流程。2、掌握 Quartus软件环境下简单 VHDL 文本等输入设计方法。3、熟悉 VHDL 设计实体的基本结构、语言要素、设计流程等。4、掌握利用 Quqrtus的波形仿真工具验证设计的过程。5、学习使用 JTAG 接口下载逻辑电路到可编程芯片,并能调试到芯片正常工作为止。2、内容1、学习并掌握 VHDL 设计实体的基本结构、语言要素、设计流程等。2、了解在 EDA 平台上进行数字电路集成设计的整个流程,熟悉 Quartus软件环境下简单 VHDL 文本等输入设计方法,掌握利用 Quqrtus的波形仿真工具验证
2、设计的过程。3、理解 RS 触发器的设计原理,采用 QuartusII 集成开发环境,利用 VHDL硬件描述语言进行设计。 4、使用 JTAG 接口下载 vhdl 代码到可编程芯片(本次课程设计中使用的是EP2C8Q208C8 套件) ,并调试到芯片正常工作为止。1实 习 报 告3、 过程(1)理解 RS 触发器设计的原理基 本 rs 触 发 器 可 由 两 个 与 非 门 G1、 G2 的 输 入 、 输 出 端 交 叉 连 接 而 构成 , 它 有 两 个 输 入 端 R、 S 和 两 个 输 出 端 Q、 Q 非 。它 的 输 入 输 出 具 有 以 下 关 系 : 当 R 端 无 效
3、(1), S 端 有 效 时 (0), 则Q=1,Q 非 =0,触 发 器 置 1; 当 R 端 有 效 (0)、 S 端 无 效 时 (1), 则 Q=0,Q 非 =1,触 发 器 置 0; 当 R、 S 端 均 无 效 时 , 触 发 器 状 态 保 持 不 变 ; 当 R、 S 端 均 有效 时 , 触 发 器 状 态 不 确 定 。(2)建立新的工程项目打开 Quartus II 软件,进入集成开发环境,点击 FileNew projectwizard 建立一个工程项目,输入工作目录和项目名称,如下图一所示。图一 项目的建立建立文本编辑文件:在软件主窗口单击 file 菜单后,单击 n
4、ew 选项,选择VHDL 选项,单击 OK,进行文本编辑输入源程序 rschq.vhd,代码如下所示。2实 习 报 告library ieee;use ieee.std_logic_1164.all;entity rscfq isport(r,s:in std_logic;q,qb:out std_logic);end rscfq;architecture art of rscfq issignal q_temp,qb_temp:std_logic;beginprocess(r,s)beginif(s=1and r=0)thenq_temp=0;qb_temp=1;elsif(s=0and r
5、=1) thenq_temp=1;qb_temp=0;elseq_temp=q_temp;qb_temp=qb_temp;end if;end process;q=q_temp;qb=qb_temp;end art;完成文本编辑后,点击保存,注意保存时的文件名要与实体名一致,否则编译时会出错。3实 习 报 告编译工程项目:在 Quartus II 主页面下,选择 ProcessingStart Compilation或点击工具栏上的按钮启动编译,直到出现“Full Compilation Report”对话框,点击 OK 即可。(3)对编辑的文本文件进行波形仿真在软件主窗口单击 file 菜单
6、后,单击 new 选项,选择 Vector Waveform File选项,单击 OK。在出现的波形仿真窗口中,按鼠标右键,在弹出菜单中选择 Insert Node or Bus,出现如下图二所示的窗口。图二 节点加入工具框在图二窗口中选择 Node Finder,将打开 Node Finder 对话框,如下图三所示。在 Filter 中选择 Pins:all,点击 List 按钮,在出现的图中左栏中选择需要进行仿真的端口通过中间的按钮加入到右栏中,点击 OK,端口加入到波形文件中。选择一段波形,通过左边的设置工具条,给出需要的值,设置完成激励波形,并进行保存。图三 Node Finder 对
7、话框4实 习 报 告完成激励设置之后,设置功能仿真:选择Assignment Timing Analysis Settings-Simulator SettingsSimulation mode 选择Functional, 生成网络表ProcessingGenerate Functional Simulation Netlist。然后点击快捷按钮 ,开始仿真,完成后得到波形如下图四所示,根据分析,功能符合设计要求。从波形仿真可以看到从输入到输出有一定的延时,大概在7ns左右。图四 波形仿真结果(4)使用 JTAG 接口下载 vhdl 代码到可编程芯片(本次课程设计中使用的是 EP2C8Q208
8、C8 套件) ,并调试到芯片正常工作为止。进行硬件验证的步骤如下:选择所用的 FPGA 器件EP2C8Q208C8,以及进行一些配置。选择配置器件EPCS4,设置不需要使用的 IO 功能为 AS inputs ,tri-ststed 。点击两次OK,回到主界面。配置 FPGA 引脚:在进行硬件验证时,采用两个按键作为输入,对应输入r、s 端,在配置管脚的时候将输入脚至为 82,77;输出分别对应 LED 的D7,D8。D7,D8 在 EP2C8Q208C8 套件中对应的管脚为 102,101。在 Quartus 软件主界面下,选择 AssignmentsPins,按照上面的管脚进行配置,配置完
9、成的管脚如下图五所示。图五 配置好的管脚完成管脚配置之后,对工程进行再次编译。在 Quartus 软件主界面下,选择 ProcessingStart Compilation 或点击工具栏上的按钮启动编译,直到出现5实 习 报 告“Full Compilation Report”对话框,点击 OK 即可。完成编译,点击 按钮,出现如下图六所示的窗口,选择下载设计程序。Sof 文件到目标 FPGA,下载采用 JTAG 方式(由于配置芯片擦写次数有限,实验均采用 JTAG 下载方式)。图六 硬件下载文件窗口下载完成之后,在 EP2C8Q208C8 套件上进行验证。按键(key)按下时接地,即此时相当
10、于输入 0,当不按下时,相当于输入 1。设置的四个输入按键为 s1-s4,按照程序的设定进行验证,可以得到如下图七所示的硬件验证结果。6实 习 报 告7实 习 报 告图七 硬件验证结果硬件验证图说明:在进行硬件验证时,一共进行了四种验证,即以上的四张图。第一张是在刚开始没有任何输入的情况下,Q 与 Q 非均为高电平;第二张表示 r=0,s=1,此时 D7=0,D8=1,即 Q=0,Q 非=1;第三张表示 r=1,s=0,此时 D7=1,D8=0,即 Q=1,Q 非=0;第四张表示 r=0,s=0,此时 D7=1,D8=0,即 Q=1,Q 非=0,是对上一状态的保持。根据以上分析,可以知道本次设计满足设计要求,符合设计的功能。8