EDA移位寄存器
- 格式:ppt
- 大小:250.00 KB
- 文档页数:11


EDA/SOPC技术实验讲义
陕西科技大学
电气与信息工程学院
目 录
4 第一章 EDA_VHDL实验/设计与电子设计竞赛
4 1-1、 应用QuartusII完成基本组合电路设计
5 1-2. 应用QuartusII完成基本时序电路的设计
6 1-3. 设计含异步清0和同步时钟使能的加法计数器
7 1-4. 7段数码显示译码器设计
8 1-5. 8位数码扫描显示电路设计
9 1-6. 数控分频器的设计
10 1-7. 32位并进/并出移位寄存器设计
10 1-8. 在QuartusII中用原理图输入法设计8位全加器
11 1-9. 在QuartusII中用原理图输入法设计较复杂数字系统
11 1-10. 用QuartusII设计正弦信号发生器
13 1-11. 8位16进制频率计设计
16 1-12. 序列检测器设计
16 1-13. VHDL状态机A/D采样控制电路实现
18 1-14. 数据采集电路和简易存储示波器设计
19 1-15. 比较器和D/A器件实现A/D转换功能的电路设计
20 1-16 移位相加硬件乘法器设计
24 1-17 采用流水线技术设计高速数字相关器
24 1-18 线性反馈移位寄存器设计
25 1-19 乐曲硬件演奏电路设计
28 1-20 乒乓球游戏电路设计
32 1-21 循环冗余校验(CRC)模块设计
33 1-22. FPGA步进电机细分驱动控制设计(电子设计竞赛赛题)
34 1-23. FPGA直流电机PWM控制实验
一、填空
1、阻塞和非阻塞的区别
阻塞性赋值 “=”
仅适用于过程结构
含义:在当前的赋值操作完成前阻塞,或停止语句的执行
顺序赋值的特点
非阻塞性赋值“<=”
同步赋值操作,具有并行执行的特点
举例:
课本172页
2、always 和initial语句,reg和wire的区分
initial语句不可综合,主要用于仿真程序中的初始化
always 语句属于可综合语句,主要引导行为描述语句
initial过程语句结构没有敏感信号列表,即不带触发条件
always 过程语句要求将过程语句中的所有输入信号都放在敏感信号列表中
initial过程中的块语句沿时间方向轴只执行一次
always 可以自动执行无限次 3、设计流程
系统级描述(C语言,MATLAB语言)
|
行为级/RTL(HDL语言描述)
|
综合工具→结构级描述/网表←元件库
|自动化工具
电路/MOS管
|
物理版图
4、未声明的信号,默认为wire;多bit信号必须声明wire
5、多bit数据,wire [3:0]
6、标识符(信号名,模块符)首字母不能是数字
7、并行语句(assign,initial);串行语句(case,if else)
8、FPGA(LET)和CPLD(与非阵列)如何实现可编程
FPGA的编程是基于SRAM查找表的编程单元;掉电后编程信息立即丢失。
CPLD是基于电可擦除存储单元的EEPROM或Flash技术。
9、触发器和锁存器的区别
触发器是边沿触发
锁存器是电平触发
10、触发器没有复位,初始状态为X
11、同步和异步的区别及电路图
12、timescale
`timescale 1ns/1ps 1ns属于仿真时间单位 1ps属于精度
13、什么是寄存器传输级设计
14、综合的概念
15、什么情况会综合出锁存器
参考50页
不完整的条件分支和不完整的输出赋值会导致综合出锁存器
1 第一章 设计内容与设计方案
1.1课程设计内容
控制8个LED进行花样性显示。
设计4种显示模式:s0,从左到右逐个点亮LED;s1,从右到左逐个点亮LED;s2,从两边到中间逐个点亮LED;s3,从中见到两边逐个点亮LED。
4种模式循环切换,复位键(rst)控制系统的运行停止。数码管显示模式编号。
可预置彩灯变换速度,4档快、稍快、中速、慢速,默认工作为中速。
1.2设计方案
在掌握常用数字电路功能和原理的基础上,根据EDA技术课程所学知识,以及平时实验的具体操作内容,利用硬件描述语言HDL,EDA软件QuartusⅡ和硬件平台cycloneⅡFPGA进行一个简单的电子系统设计,
本次课程设计采用Verilog HDL硬件描述语言编写控制程序,应用Quartus Ⅱ软件实现仿真测试。采用FPGA芯片对LED灯进行控制,使其达到流水跑马灯显示的效果,LED灯采用共阳极接法,当给它一个低电平时,LED点亮,我们利用移位寄存器使各输出口循环输出高低电平,达到控制的目的。
2 第二章 设计原理
2.1设计原理及设计流程
本次试验我所完成的内容是跑马灯的设计,下面我简单的进行一下原理的阐述。
跑马灯课程设计的要求是控制8个LED进行花样显示,设计四种显示模块:第一种显示是从左向右逐个点亮LED。第二种显示:从右向左逐个点亮LED。第三种显示:从两边向中间逐个点亮LED。第四种显示:从中间到两边逐个点亮LED。四种显示模式循环切换,并带有一位复位键控制系统的运行停止。为了完成要求的效果显示,由于要求比较简单,所以不用分为很多模块来具体控制,所以我先择利用移位寄存器来完成灯的点亮,我们将LED灯采用共阳极接法,当给于低电平时点亮,那么当我们需要点亮某位LED灯时,只需在该位上赋予低电平即可,比如:如果我们要实现8个数码灯从左到右依次点亮,那么我们就可以给这8个数码灯分别赋值10000000,经过一段时间的延时后再给其赋值01000000,再经过一段时间延时后再给其赋值00100000,依次类推,则最后一种赋值状态为00000001,这样就得到了相应的现象。同理,要实现数码灯从右向左依次点亮,从中间向两端依次点亮,从两端向中间依次点亮都可以采用这样赋值的方法。为了达到四种显示模式循环切换的目的,可以将以上的所有赋值语句以顺序语句的形式置于进程中,这样在完成了一种显示方式后就会自动进入下一种设定好的显示模式,如此反复循环。当需要程序复位时,只需按下rst键即可,程序不管走都那里,执行那条语句,只要确定复位键按下时,程序立刻返回到程序执行语句的第一步,程序接着进行新的循环点亮。
实验一 EDA工具基本操作与应用
一、实验目的
1、通过一个简单的D触发器的设计,让学生掌握QUARTUSII设计工具进行电子设计的基本流程。
2、初步了解可编程器件设计的全过程。
二、主要仪器设备
EDA实验系统一台,EDA/SOPC实验系统一台
三、 实验步骤
QUARTUSII软件的基本操作与应用
1、运行QUARTUSII软件。
2、选择File/New Project Wizard,新建一个工程,并点击Next。
图:1-1
3、指定工作目录及工程顶层设计实体名称,如图1-1所示,并点击2次Next。
4、选择FPGA器件,如图1-2所示,并点击Finish,工程文件建立结束。
图:1-2
5、点击File/New,新建一个VHDL文件,如图1-3所示。
图:1-3
6、点击Ok,并保存,无需任何修改,点击Ok即可。
7、按照自己的想法在新建的VHDL文件中编写VHDL程序,如D触发器程序代码,如图1-4所示。
图:1-4
8、代码书写结束后,选择Processing/Start Compilation对编写的程序代码进行编译,直至编译通过,否则对程序代码进行修改。
9、编译通过后,选择File/New,在弹出的对话框中点击Other Files,选择Vector Waveform
File,并点击OK,建立一个波形文件,如图1-5所示,保存波形文件。
图:1-5
10、在波形文件加入输入输出端口,如图1-6所示。
图:1-6
11、对加入到波形文件中的输入端口进行初始值设置,并点击Processing/Start Simuliation进行仿真。查看仿真结果是否符合要求。
12、仿真无误后,选择Assignments/Assing Pins对实验中用到的管脚进行绑定分配,如图1-7所示。
图1-7
13、对于复用的引脚,需做进一步处理,使其成为通用I/O。
14、最后再编译一次,编译无误后,用下载电缆通过JTAG接口将对应的dff2.sof文件下载到FPGA中。