可编程数字ASIC设计_实验指导书.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
可编程数字ASIC设计_实验指导书

长春建筑学院 《可编程数字ASIC设计》课程 实 验 指 导 书 电气信息学院 FPGA系列实验一 ——点亮 LED 1. 实验任务 点亮发光二极管。通过这个实验,熟悉并掌握 CPLD/FPGA 开发软件 Quartus II 的使用方法和开发流程以及 Verilog HDL 的编程方法。 2. 实验环境 硬件实验环境为 FPGA实验开发系统。 软件实验环境为 Quartus II 13.0 开发软件。 3. 实验原理 FPGA 器件同单片机一样,为用户提供了许多灵活的独立的输入/输出 I/O 口(单元)。FPGA 每个 I/O 口可以配置为输入、输出、双向、集电极开路和三态门等各种组态。作为输出口时,FPGA 的 I/O 口可以吸收最大为 24mA 的电流,可以直接驱动发光二极管 LED 等器件。通过原理图可知如果要点亮这八个 LED,所以只要正确分配并锁定引脚后,在相应的引脚上输出相应高电平“1”,就可实现点亮该发光二极管的功能。开发板均采用输出“1”点亮 LED 的模式,以后就不再另作说明。 4. 实验程序 (1) 利用连续赋值 assign 语句来实现(文件名 led.v) module led1 (led); //模块名 led output[7:0] led; //定义输出端口 assign led=8 endmodule (2) 利用过程赋值语句来实现(文件名 led1.v) module led1(led); //模块名 led1 output[7:0]led; //定义输出端口 reg[7:0]led; always begin led= 8 end endmodule 5. 实验步骤 (1)建立新工程项目: 打开 Quartus II 软件,进入集成开发环境,点击 File→New project wizard 建立一个工程项目 led。 (2)建立文本编辑文件: 点击 File→New...,在该项目下新建 Verilog HDL 源程序文件 led.v,输入试验程序中的源程序代码保存后选择工具栏中的按钮启动编译,若在编译中发现错误,则找出并更正错误,直到编译成功为止。 (3)选择器件型号及引脚的其他设置: 选择所用的 FPGA 器件,以及进行一些配置。选择配置器件 EPCS4,设置不需要使用的 IO 功能为 As inputs,tri-stated。点击两次 ok,回到主界面。 (4)配置 FPGA 引脚: 在 Quartus II 软件主页面下,选择 Assignments→Pins 或选择工具栏上按钮,配置 led[0]---led[7]以及 clk 的引脚。 (5)编译工程项目: 在 Quartus II 主页面下,选择 Processing→Start Compilation 或点击工具栏上的按钮启动编译,直到出现“Full Compilation Report”对话框,点击 OK 即可。 (6)波形仿真:由于本次试验比较简单,波形仿真将在后面实验详细讲解。 (7)下载设计程序到目标 FPGA。 6. 实验现象 第一个实验终于完成了,看到实验板上的 8 个 LED 灯间隔点亮,是不是特有成就感!只要动手,一切都这么简单!让我们进行下面的实验吧!以后的实验将会更精彩! FPGA系列实验二——LED 闪烁灯 1. 实验任务 让实验板上的 8 个 LED 周期性的闪烁。通过这个实验,熟悉并掌握采用计数与判断的方式来实现分频的 Verilog HDL 的编程方法以及 Quartus II 软件的使用方法和开发流程。 2. 实验环境 硬件实验环境为 FPGA实验开发系统。 软件实验环境为 Quartus II 13.0 开发软件。 3. 实验原理 开发套件板载 50MHz 的时钟源,假如我们直接把它输入到发光二极管 LED,由于人眼的延迟性,我们将无法看到 LED 闪烁,认为它一直亮着。如果我们期望看到闪烁灯,就需要将时钟源的频率降低后再输出。本实验采用计数与判段的方式来实现降低时钟源的频率。计数电路可用计数器实现,每来一个时钟脉冲 CLK,计数器就加 1,而每当判断出计数器达到某个数值时,把输出状态求反,就使得 8 个 LED 的亮灭反转一次,即:周期性的输出高电平“1”和低电平“0”。这样设计相当于把 50MHz 的时钟源分频后输出。如果最终要使得 LED 1S 闪烁一次,即输出 1Hz 的时钟

文档评论(0)

文档精品 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6203200221000001

1亿VIP精品文档

相关文档