EDA实验指导书.docx
《EDA实验指导书.docx》由会员分享,可在线阅读,更多相关《EDA实验指导书.docx(53页珍藏版)》请在冰豆网上搜索。
EDA实验指导书
目录
第一部分实验开发系统概述及使用说明1
第一章EDA实验系统1
第二章EDA/SOPC实验系统7
第二部分实验部分10
实验一EDA工具基本操作与应用10
实验二计数器设计24
实验三串入/并出移位寄存器实现26
实验四四人抢答器设计28
实验五序列检测器设计29
实验六DDS信号源的设计30
实验七交通灯控制器设计31
实验八数字钟设计32
实验九出租车计费器设计33
实验十频率计的实现34
附录——FPGA接口对照表35
第一部分实验开发系统概述及使用说明
第一章EDA实验系统
一、实验系统概述
此系列实验系统针对数字电路设计CPLD/FPGA及模拟电路设计技术有一总体上的概念。
其中II、III型均为数字电路设计实验开发系统,IV、V型为数、模混合可编程器件实验开发系统。
这些系列设备都能不同程度地满足高校的现代电子技术EDA教学和数字电路及其它相关实验课程的要求。
由于可编程器件的设计灵活性,其系统更能满足高校的相关课程设计,毕业设计及大学生电子设计竞赛等。
对于程度较高的同学,本系统极其丰富的功能单元和可搭接的灵活性,使他们完全能够做出超出大纲要求的具有复杂性和创造性的综合实验。
同时该系统也是从事教学及科研的广大教师和电子工程师的理想开发工具。
希望读者能从中得到裨益,并提出宝贵的改进意见。
二、配套软件
Max+plusII10.0基础版(商业版见报价单及相关资料说明)
1.运行环境Win95/982.层次化设计支持
3.原理图输入 支持 4.文本输入支持
5.AHDL输入支持 6.VHDL输入支持
7.原理图设计宏库基本库 8.仿真和时序分析支持
9.逻辑综合支持
10.硬件编程/下载支持
11.支持芯片
Max7000全系列(如7000A、7000B、7000E、7000S等)和Max9000系列等
Flex6000、8000、10K(如10K系列的10K10、20、30、50、10K100等)、10KE系列等
三、系统硬件组成
(一)IV型实验箱结构组成:
1.CPLD/FPGA适配器板:
标准配置是本公司的EPF10k10或MAX7128接口板。
主要负责整个系统与不同公司不同类型的芯片实现通讯,下载接口是数字芯片的下载接口(DIGITALJTAG),主要用于CPLD/FPGA芯片的数据下载。
该适配器板目前我公司提供有Altera、Lattice、Xilinx公司的不同门数的芯片。
也可根据客户需求专门订做。
2.扫描驱动类接口:
1)8位八段数码管显示输出
系统的显示采用8位8段共阴极数码管(高电平有效),所对应的接口序号为:
8位段驱动接口:
a、b、c、d、e、f、g、Dp;
8位位驱动采用3-8译码产生,对应的接口为:
SEL0~SEL2,悬空为高电平,其具体的对应关系如下表所示:
LED数码管显示接口及对应的显示状态
接口序号
数码管
SEL2
SEL1
SEL0
状态
1
1
1
第1位亮
1
1
0
第2位亮
1
0
1
第3位亮
1
0
0
第4位亮
0
1
1
第5位亮
0
1
0
第6位亮
0
0
1
第7位亮
0
x
X
第8位亮
2)4×8键盘输入
本矩阵键盘为4×8键盘,其接口电路原理图如图Y-5所示,I/O口分别为KIN0、KIN1、KIN2、KIN3、SEL0、SEL1、SEL2,其中SEL0、SEL1、SEL2位于16×16点阵区。
3)16×16位发光二极管(LED)点阵
E2PROM(2864),用来保存字符数据信息,接口序号为:
数据线:
D0~D7;地址线:
A0~A11;片选线:
/CE;读有效信号线:
/OE;写有效信号线:
/WE。
16×16点阵显示,各驱动接口为:
第一行到第十六行对应的为L0~L15,第一列到第十六列驱动采用3-8译码,对应的接口为SEL0~SEL3。
具体对应关系见下表:
点阵显示接口对应关系表
SEL3
SEL2
SEL1
SEL0
点亮列号
1
1
1
1
第1列
1
1
1
0
第2列
1
1
0
1
第3列
1
1
0
0
第4列
1
0
1
1
第5列
1
0
1
0
第6列
1
0
0
1
第7列
1
0
0
0
第8列
0
1
1
1
第9列
0
1
1
0
第10列
0
1
0
1
第11列
0
1
0
0
第12列
0
0
1
1
第13列
0
0
1
0
第14列
0
0
0
1
第15列
0
0
0
0
第16列
3.通用数字式接口
1)18个按键开关。
2)18个拨码开关。
3)12红、黄、绿发光二极管按交通灯形式排列。
4)8位直线排列LED等。
4.模拟器件及接口
1)扬声器(高电平TTL驱动)。
2)AD558数/模转换(8位,0~5V电压输出)。
有两种输出方式。
第一种,将短路子接在左侧的两个铜柱上,D/A转换输出到D/A OUT区域的6个孔输出;第二种,将短路子接在右侧的两个铜柱上,D/A转换输出接到LM358的同相输入端。
3)LM358单电源二运放。
与AD558配合,将AD558的输出接到LM358的同相输入端,作为他的同相输入信号;在LM358的右上脚,有TEST IN 模块,他的信号可作为LM358的反相输入端。
5.模拟信号源模块
模块中第一排端口为输入口,第二排端口为输出口,分别说明如下:
DiffIN:
需差分转换信号输入口;
MuxIN1:
需叠加信号1输入口;
MuxIN2:
需叠加信号2输入口;
DiffOUT+:
差分信号正极性输出端口,为DiffIN差分后的信号;
DiffOUT-:
差分信号负极性输出端口,为DiffIN差分后的信号;
MuxOUT:
叠加信号输出端口,为MuxIN1与MuxIN2相加后的信号;
SIN_OUT312KHz:
正弦信号312KHZ输出端口;
6.支持模拟可编程器件
支持Lattice公司的Pac10、20、80芯片组,并增添了单片机和一些信号源。
本系统适合做数摸混合电路实验及单片机和可编程器件系统实验,还可方便的扩展部分接口实验等。
7.其它:
1)E2PROM2864
2)连线若干。
3)双时钟源(从4MHZ~1HZ)。
4)可变电阻器,产生可变的模拟电压量(0~5V)。
5)支持JTAG方式的下载编程接口。
6)可扩展单元(类似面包板)。
EDA-IV实验箱结构框图如下:
图1EDA-IV型实验箱结构框图
图2EDA-IV型实验箱结构图
1、单片机接口模块
本单片机为开放性设计,可自由下载程序,对整个系统无任何影响。
可以实现CPLD/FPGA与单片机的接口实验,以及高级的FPGA开发,其对应的接口为:
P0口:
D0~D7;P1口:
P10~P17;
P2口:
P20~P27;复位信号输出:
RESET
P3口分别对应为:
/RD、/WR、RXD、TXD、T0、T1、INT0、INT1
其他接口为:
ALE、PSEN
RESET复位端口提供一高电平脉冲。
2、可调数字信号源
时钟信号源可产生从1.2Hz~20MHz之间的任意频率。
该电路采用全数字化设计,提供的最高方波频率为20MHz,最低频率为1.2Hz,并且频率可以在这个范围办内随意组合变化。
整个信号源共有六个输出口(CLK0~CLK5),每个输出口输出的频率各不相同,通过JP1~JP11这11组跳线来完成设置的,其中:
CLK0输出口的频率通过JP7(CLK0)来设置的,这样输出的时钟频率种类为20MHz、10MHz、5MHz、2.5MHz、1.25MHz;
CLK1输出口的频率通过JP1(F_SEL1)及JP8(CLK1)来设置,输出频率对应的关系为:
FCLK1=20MHz×F_SEL1×CLK1
CLK2输出口的频率通过JP1(F_SEL1)、JP2(F_SEL2)及JP9(CLK2)来设置,输出频率对应的关系为:
FCLK2=20MHz×F_SEL1×F_SEL2×CLK2
CLK3输出口的频率通过JP1(F_SEL1)、JP2(F_SEL2)、JP3(F_SEL3)及JP10(CLK3)来设置,输出频率对应的关系为:
FCLK3=20MHz×F_SEL1×F_SEL2×F_SEL3×CLK3
CLK4输出口的频率通过JP1(F_SEL1)、JP2(F_SEL2)、JP3(F_SEL3)、JP4(F_SEL4)及JP11(CLK4)来设置,输出频率对应的关系为:
FCLK4=20MHz×F_SEL1×F_SEL2×F_SEL3×F_SEL4×CLK4
CLK5输出口的频率通过JP1(F_SEL1)、JP2(F_SEL2)、JP3(F_SEL3)、JP4(F_SEL4)、JP5(F_SEL5)及JP6(CLK5)来设置,输出频率对应的关系为:
FCLK5=20MHz×F_SEL1×F_SEL2×F_SEL3×F_SEL4×F_SEL4×CLK5
比如要得到1.2Hz的信号,短路子的设置如下:
JP1F_SEL1:
1/16
JP2F_SEL2:
1/16
JP3F_SEL3:
1/16
JP4F_SEL4:
1/16
JP5F_SEL5:
1/16
JP6F_SEL6:
1/16
JP7CLK0:
1.25M
信号输出CLK5。
四、CPLD/FPGA可编程器件的设计过程
可编程器件的设计过程与单片机开发的过程类似,同样包括程序的编辑、编译适配、仿真调试及下载实现的几个部分,具体流程如下图所示。
五、硬件安装及使用说明
本实验开发系统在出厂时均已按用户要求配备好了相关的主芯片适配器、编程电缆、实验指导书、连接导线及相关软件。
II、III、IV型实验箱均自带开关电源,用户只需接入220V电源即可。
本实验装置无需用户添加其它设备,仅需与计算机连接便可进行所有实验。
硬件安装及使用中需要注意的几个步骤如下:
1、打开实验箱,检查并核实设备完好及附件齐全;
2、检查下载编程电缆标识:
不同公司的编程电缆是不同的,如Altera公司的编程电缆
出厂时标有Altera字样、Lattice公司的的电缆有两种:
一种是数字器件编程电缆,标有Lattice字样;另一种是模拟芯片编程电缆,其上标有PAC字样,其它厂家类似。
使用时一定要注意编程电缆不能混用,否则程序不能正确下载。
同一厂家的CPLD/FPGA芯片的下载电缆是一样的。
3、安装下载编程电缆:
确保欲安装的下载电缆与当前实验箱上适配器芯片相一致,然后将其25针的接插头连接到计算机的并行口上,另一端连接到实验箱的JTAG编程座上,并确保电缆两断接触良好。
注意,IV型实验箱上有两个编程接口,一个是数字编程接口,标有DIGITAL字样、一个是模拟芯片编程接口,标有ANALOG字样,注意不要接错。
I、II、III型实验箱均只有一个数字芯片编程接口,位于实验箱的左上角。
4、开启实验箱电源,电源指示灯亮。
本电源为5V开关电源,有短路及自恢复等功能。
如电源指示灯不亮,请检查是否已接入220V电源或由其它原因所致。
5、硬件安装结束,并打开实验箱电源,此时便可进行软件编程下载。
程序正常下载时其编程接口旁边的状态指示灯处于闪烁状态,如不能正确下载请检查是硬件问题还是软件设置问题?
如不能最终排除故障请急时与我们联系。
6、实验时严禁带电接插,以防损坏电路芯片。
如有异常要急时切断电源并排除故障。
第二章EDA/SOPC实验系统
EDA/SOPC实验系统是集EDA和SOPC开发为一体的综合性实验系统,它不仅可以独立完成几乎所有的EDA设计,也可以完成大多数的SOPC系统。
采用Altera公司的Cyclone系列的12万门FPGA为核心,整个系统采用模块化设计,各个模块之间可以自由组合,使得该实验系统的灵活性大大提高。
同时实验系统还提供了丰富的接口模块,供人面机交互,从而大大增加了实验开发者的乐趣,满足了普通高等院校、科研人员等的需求。
开发工程师可以使用VHDL语言、VerilogHDL语言、原理图输入等多种方式,利用Altera公司提供的QuartusII及Nios软件进行编译,下载,并通过EDA/SOPC实验系统进行结果验证。
实验系统提供多种人机交互方式,如键盘阵、按键、拨档开关输入;七段数码管、大屏幕图形点阵LCD显示;串口通信;VGA接口、PS2接口、USB接口、Ethernet接口等,利用Altera公司提供的一些IP资源和Nios32位处理器,用户可以在该实验系统上完成不同的SOPC设计。
EDA/SOPC实验系统提供的资源有:
◆Altera公司的EP1C6Q240C8,12万门级FPGA,另外可以选配更高资源的FPGA。
◆FPGA配置芯片采用可在线编程的EPC2,通过JTAG口和简单的跳线即可完成设计的固化。
◆1个数字时钟源,提供48MHZ、12MHZ、1MHZ、100KHZ、10KHZ、1KHZ、100HZ、10HZ、2HZ和1HZ等多个时钟。
◆1个模拟信号源,提供频率和幅度可调的正弦波、三角波和方波。
◆两个串行接口,一个用于SOPC开发时的调试,另一个可以完成其它的通信。
◆1个VGA接口。
◆1个PS2接口,可以接键盘或鼠标。
◆1个USB接口,利用PDIUSBD12芯片实现USB协议转换。
◆1个Ethernet接口,利用RTL8019芯片实现TCP/IP协议转换。
◆基于SPI接口的音频CODEC模块。
◆1个输入、输出探测模块,供数字信号的观察。
◆16个LED显示。
◆8个拨档开关输入。
◆8个按键输入。
◆1个4×4键盘阵列。
◆8个七段管显示。
◆1个扬声器模块。
◆1个交通灯模块。
◆1个直流电机模块。
◆1个高速AD和1个高速DA。
◆240×128大屏幕图形点阵LCD显示。
◆存储器模块提供256K×32Bit的SRAM和2M×8Bit的FLASHROM。
下面就部分模块作简要介绍。
FPGA模块
FPGA采用Altera公司的Cyclone系列的EP1C6Q240C8,该芯片采用240脚的PQFP封装,提供185个IO接口。
该芯片拥有5980个Les;20个M4KRAMBlock;总共可以提供92160Bit的RAM;另外芯片内部还自带有2个锁相环,可以在高速运行的时候保证系统时钟信号的稳定性。
FPGA与实验箱上提供的各个模块都已经连接好,这样就避免了实验过程中繁琐的连线以及由于连线造成的不稳定的后果。
配置模块
配置芯片采用要在线多次编程的EPC2,该芯片通过JTAG下载,即可完成FPGA设计的固化。
这样就避免了用户需要多条电缆或者需要编程器才能完成固化的任务,同时也方便了用户只需一条电缆即可完成FPGA的配置和EPC2的编程。
时钟模块
时钟的产生由有源晶振产生48MHZ的时钟信号,再由CPLD分频完成多种时钟信号的产生。
时钟信号已经在系统板上连接到FPGA的全局时钟引脚,只需要通过时钟模块的简单跳线,即可完成FPGA时钟频率的选择。
USB模块
USB模块采用Philips公司的PDIUSBD12芯片,它通常用作微控制器系统中实现与微控制器进行通信的高速通用串行接口,它还支持本地的DMA传输。
PDIUSBD12完全符合USB1.1版的规范,它还符合大多数器件的分类规格:
成像类、海量存储器件、通信器件、打印设备以及人面接口设备。
另外,该芯片还集成了许多特性,包括SoftConnetTM、GoodLink、可编程时钟输出、低频晶振和终止寄存器集合,所有这些特性都为系统显著的节约了成本,同时使USB功能在外设上的应用变得容易。
存储器模块
实验系统上提供了256K×32Bit的SRAM和2M×8Bit的FLASHROM,其中SRAM主要是为了在开发SOPC时存放可执行代码和程序中用到的变量,而FLASH则是用来固化调试好的SOPC代码等。
SRAM选用两片ISSI公司的IS61LV25616(256K×16Bit)进行数据线并联从而扩展为256K×32Bit的存储区;FLASHROM采用AMD公司的AM29LV017D,其容量为2Mbyte。
Ethernet模块
Ethernet模块采用的TCP/IP转换芯片为RTL8019AS芯片,该芯片是一款高集成度、全双工以太网控制器,内部集成了三级省电模式,由于其便捷的接口方式,所以成了多数系统设计者的首选。
RTL8019AS支持即插即用标准,可以自动检测设备的接入,完全兼容EthernetII以及IEEE802.310BASE5、10BASE2、10BASET等标准,同时针对10BASET还支持自动极性修正的功能,另外该芯片还有很多其他功能。
高速AD/高速DA
本实验系统中采用的高速AD为TLC5510,TLC5510是一个8位高速AD,其最高转换速率可到20MSPS,单5V供电,被广泛应用于数字电视、医疗图像、视频会议等高速数据转换领域。
高速DA采用TLC5602,该芯片也是一个8位高速AD,其最高转换速率可到33M,足以满足一般数据处理的场合。
240×128图形点阵LCD
240×128图形点阵LCD可以用来显示图形、曲线、文本、字符等等,显示模块内嵌有T6963C控制器,在该LCD显示模块上已经实现了行列驱动器及显示缓冲区RAM的接口,同时也硬件设置了液晶的结构:
单屏显示、80系列的8位微处理器接口、显示屏长度为30个字符、宽度为16个字符等。
第二部分实验部分
实验一EDA工具基本操作与应用
说明:
本书将以实验一为例详细介绍altera公司max+plusII及QUARTUSII软件的基本应用,其它实验将不再赘述。
读者在通过本实验后将对max+plusII软件及CPLD/FPGA的设计与应用有一个比较完整的概念和思路。
此书因篇幅有限,仅仅介绍了max+plusII及QUARTUSII软件的最基本、最常用的一些基本功能,相信读者在熟练使用本软件以后,你定会发现该软件还有好多非常方便、快捷、灵活的设计技巧与开发功能。
一、实验目的
1、通过一个简单的D触发器的设计,让学生掌握MAXPLUS及QUARTUSII设计工具进行电子设计的基本流程。
2、初步了解可编程器件设计的全过程。
二、主要仪器设备
EDA实验系统一台,EDA/SOPC实验系统一台
三、实验步骤
(一)MaxplusII软件的基本操作与应用
1、设计输入
(1)软件的启动:
进入Altera软件包,打开
MAX+plusII10.0软件,如图1-1所示。
图1-1
(2)启动File\New菜单,弹出设计输入选择窗口,如下图1-2所示:
图1-2
(3)选择TextEditorfile,单击ok按钮,打开文本编辑器,进入文本设计输入电路编辑状态,并输入D触发器VHDL程序代码,如下图1-3所示:
图1-3
2、电路的编译与适配
(1)选择芯片型号
选择当前项目文件欲设计实现的实际芯片进行编译适配,点击Assign\Device菜单选择芯片,如下图1-4对话筐所示。
如果此时不选择适配芯片的话,该软件将自动把所有适合本电路的芯片一一进行编译适配,这将耗费你许多时间。
该例程中我们选用CPLD芯片来实现,如用7000S系列的EPM7128SLC84-15芯片;同样也可以用FPGA芯片来实现,你只需在下面的对话窗口中指出具体的芯片型号即可。
图1-4
(2)编译适配
启动MAX+plusII\Compiler菜单,按Start开始编译,并显示编译结果,生成下载文件。
如果编译时选择的芯片是CPLD,则生成*•pof文件;如果是FPGA芯片的话,则生成*•sof文件,以备硬件下载编程时调用。
同时生成*•rpt报告文件,可详细查看编译结果。
如有错误待修改后再进行编译适配,如下图1-5所示。
注意,此时在主菜单栏里的Processing菜单下有许多编译时的选项,视实际情况选择设置。
图1-5
如果说你设计的电路顺利地通过了编译,在电路不复杂的情况下,就可以对芯片进行编程下载,直到设计的硬件实现,至此你已经完成了一个EDA的设计与实现的整个过程。
如果你的电路有足够的复杂,那么其仿真就显得非常必要。
3、电路仿真与时序分析
MaxplusII教学版软件支持电路的功能仿真(或称前仿真)和时序分析(或称后仿真)。
众所周知,开发人员在进行电路设计时,非常希望有比较先进的高效的仿真工具出现,这将为你的设计过程节约很多时间和成本。
由于EDA工具的出现,和它所提供的强大的(在线)仿真功能迅速地得到了电子工程设计人员的青睐。
(1)启动MaxplusII\Wavefromeditor菜单,进入波形编辑窗口,如下图1-6所示。
图1-6
(2)将鼠标移至空白处并单击右键,出现如下图1-7所示对话窗口。
图1-7
(3)选择Enternodesfromsnf选项并按左键确认,出现下图1-8所示对话筐,单击
和
按钮,选择欲仿真的I/O管脚。
图1-8
(4)单击OK按钮,列出仿真电路的输入、输出管脚图,如下图1-9所示。
在本
电路中,D触发器的输出为灰色,表示未仿真前其输出是未知的。
图1-9
(5)准备为电路输入端口添加激励波形,如下图1-10所示。
图1-10
(6)选择仿真时间:
视电路实际要求确定仿真时间长短,如下图1-11所示。
在本实验中,我们选择软件的默认时间10us。
图1-11
(7)保存激励信号编辑结果:
使用File\Save或关闭当前波形编辑窗口时均出现下图1-12对话筐,注意此时的文件名称不要随意改动,单击OK按钮保存激励信号波形。
图1-12
(8)打开MaxplusII\Simulator菜单,弹出其对话窗口,如下图1-13所示。
图1-13
(9)确定仿真时间,EndTime为“1”的整数倍。
单击Start开始仿真,如有出错报告,请查找原因,一般是激励信号添加有误。
本电路仿真结果报告中无错误、无警告,如下图1-14所示。
图1-14
(10)观察电路仿真结果,请单击激励输出波形文件
图标,如下图1-15所示。
图1-15
(11)从上图可见,我们所设计的D触发器顺利地通过了仿真,设计完全正确。
4、管脚的重新分配与定位
启动MAX+plusII\FloorplanEditor菜单命令,(或按
快捷图标)出现如图1-16所示的芯片管脚自动分配画面(读者可在芯片的空白处试着双击鼠标左键,你能发现这样操作可在芯片和芯片内部之间进行切换,可观察芯片内部的逻辑块等)。
图1-16
FloorplanEditor显示的是该设计项目的管脚分配图。
这是由软件自动分配的。
用户可随意改变管脚分配,以方便与你的外设电路进行匹配。
管脚编辑过程如下:
1、按下窗口左边的手动分配图标
,所有管脚将会出现在
窗口。
2、用鼠标按住某输入/输出端口,并拖