实验指导书.docx
- 文档编号:25228873
- 上传时间:2023-06-06
- 格式:DOCX
- 页数:52
- 大小:483.86KB
实验指导书.docx
《实验指导书.docx》由会员分享,可在线阅读,更多相关《实验指导书.docx(52页珍藏版)》请在冰豆网上搜索。
实验指导书
计算机类相关专业实践指导书
数字系统的设计与实验
主编朱理望
XXXX大学计算机科学与工程学院
目录
第一章MAX+PLUSII开发软件简介................................3
1.1MAX+PLUS软件的功能................................................3
1.1.1MAX+PLUSII的组成.................................................3
1.1.2MAX+PLUSII的VHDL设计资源.......................................5
1.2应用MAX+PLUSII的设计流程........................................6
1.3MAX+PLUSII的安装方法.............................................6
1.3.1MAX+PLUSII的基本安装.......................................6
1.3.2WIN2000系统下编程器驱动程序的安装方法..............................7
第二章H17F0S实验台的硬件资源...................................8
2.1整体布局...........................................................8
2.2平台资源介绍.........................................................9
第三章应用MAX+PLUS进行电路设计..............................13
3.1设计输入..............................................................13
3.1.1图形化设计输入方法..................................................13
3.1.2文本设计(VHDL)输入方法.............................................14
3.2设计仿真..............................................................14
3.3定时分析..............................................................14
3.4器件端口分配.........................................................14
3.5生成电路目标文件.....................................................15
3.6设计验证..............................................................15
第四章设计与实验之例..............................................16
实验一开发软件的使用与设计/实验的基本方法.........................16
实验二数据选择器......................................................26
实验三三—八译码器...........................................28
实验四串—并转换电路...............................................30
实验五十进制计数器...................................................32
第五章设计与实验习题..............................................35
习题一原码反码发生器...................................................35
习题二4舍5入电路.....................................................36
习题三四—十六译码器................................................37
习题四全加器的设计.....................................................38
习题五串行移位寄存器...................................................39
习题六特征码检测器....................................................40
习题七8位乘法器........................................................41
习题八六十进制计数器..................................................42
习题九数字钟的设计......................................................45
习题十频率计的设计......................................................47
第一章MAX+PLUS开发软件简介
MAX+PLUS是由Altera公司开发的适用于数字电路系统设计的工具软件,是一个综合性的DDA(数字系统设计自动化)开发平台。
1.1MAX+PLUS软件的功能
MAX+PLUS的全称是MultipleArrayMatrixandProgrammableLogicUserSystem。
它提供了一个与结构无关的设计环境,支持图形化设计、AHDL、VHDL及VerilogHDL三种硬件描述语言作为设计输入,具备输入、编译、逻辑综合、目标文件下载等设计过程的各项功能,支持的FPGA器件为Altera公司FLEX,MAX,CLASIC等系列,目前的版本为MAX+PLUSII10.21。
1.1.1MAX+PLUSII的组成
MAX+PLUSII包括设计输入、项目编译、项目校验、器件编程以及信息处理五个功能模块,
如图一所示:
设计输入项目编译
文本图形编译器数据库
编辑器编辑器网表提取器建库器
符号波形逻辑适配
编辑器编辑器综合器器
信息处理
和
层次显示
项目校验器件编程
时间编程
分析器器
图一MAXPLUSII的组成
1.1.2MAX+PLUSII的VHDL设计资源
提供了完整的支持VHDL语言IEEE标准std1076-1993的IEEE库和STD库,另外Altera公司为MAX+PLUSII提供了具有丰富地IP模块的ASIC库和图形化设计子电路。
1)IEEE库
(1)STD_LOGIC_1164程序包
maxplus2\vhdl93\ieee\std1164.vhd
maxplus2\vhdl93\ieee\std1164b.vhd
(2)STD_LOGIC_UNSIGED程序包
maxplus2\vhdl93\ieee\unsigned.vhd
maxplus2\vhdl93\ieee\unsignb.vhd
(3)STD_LOGIC_ARITH程序包
maxplus2\vhdl93\ieee\arith.vhd
maxplus2\vhdl93\ieee\arithb.vhd
(4)STD_LOGIC_SIGNED程序包
maxplus2\vhdl93\ieee\signed.vhd
maxplus2\vhdl93\ieee\signb.vhd
2)STD库
(1)STANDARD程序包
maxplus2\vhdl93\ieee\std1164.vhd
(2)TEXTIO程序包
maxplus2\vhdl93\ieee\textio.vhd
3)ASIC库
(1)megacore程序包
maxplus2\vhdl93\Altera\megacore.
(2)vhd
maxplus2程序包
maxplus2\vhdl93\Altera\maxplus2.vhd
4)子电路
(1)逻辑门
maxplus2\maxp2lib\prim
(2)74系列器件
maxplus2\maxp2lib\mf
(3)参数化宏模块
maxplus2\maxp2lib\mega_lpm
1.2应用MAX+PLUSII的设计流程
应用MAX+PLUSII进行电路设计的流程如下图所示:
设计输入
编译项目修改设计
仿真与定时分析
目标文件下载至FPGA
测试
图二电路设计流程图
1.3MAX+PLUSII的安装方法
Altera公司为MAX+PLUSII软件提供了多则版本,各种版本在功能的开放程度(范围)上有所不同,详细的区别可查阅有关资料,或访问Altera公司网站:
下面以基本MAX+PLUSII(V10.21)为例讲述主要的安装步骤:
1.3.1MAX+PLUSII(V10.21)的安装
MAX+PLUSII(V10.21)的基本安装的步骤如下:
1、解压maxplusii_102_pc.zip压缩文件(已解压则不用解压);
2、运行解压后的autorun.exe文件,选择第一项进行安装;
3、运行maxplusii_1021_pc.exe文件;
4、将解压后产生的max2win.exe文件拷贝至c:
\maxplus\目录下,并覆盖原文件;
5、将解压后产生的license.dat文件拷贝至c:
\max2key\目录下;
6、运行maxplus软件,在option选项中选择licensesetup选项,装入刚拷贝的license文件。
1.3.2WIN2000系统下编程器驱动程序的安装方法
1.进入“控制面板”,点击“添加/删除硬件”,点击“下一步”、“下一步”;
2.在显示的窗口中点击“添加新设备”,点击“下一步”;
3.在显示的窗口中选择“否,我想从列表选择硬件(O)”,点击“下一步”;
4.选择“硬件类型”为“声音、视频和游戏控制器”;点击“下一步”;
5.点击“从磁盘安装(H)…”,找到\maxplus2\driver\win2000\win2000.inf,然后点击“打开”,“确定”,(“是”),再选择“AlteraByteBlaster”;
6.点击“下一步”、“下一步”、“是”和“确定”等,最后“完成”。
(在[控制面板][系统][硬件][设备管理器][声音、视频和游戏控制器]中
查看应有“AlteraByteBlaster”项目)
第二章H17F0S实验台的硬件资源
H17F0S实验台是进行数字系统设计与实验的硬件平台,由实现数字电路的FPGA芯片(Altera公司产品F10K20TI144)、下载接口、时钟电路、输入按键、输出器件(发光二极管和数码管)及其驱动电路等部分构成,为数字系统设计与实验提供了较为丰富硬件资源。
2.1整体布局
实验台主板如下图所示:
图一实验平台主板
FLEX10K20芯片,总共144个引脚,其中有多达102个数据输出输入引脚,其他的引脚用于别的功能。
设计时,102个脚中的70个固定到特定的显示灯或是按键上,还有32个脚位不固定,没有连接到特定的设备上,可以自由连线,作为以后增加教学资源时的补充;共设计了24个显示灯、8个数码管、16个带显示灯的开关、10个带自锁的按键开关、4个时钟。
这些显示灯、数码管、开关、按键和时钟输入的旁边,都详细标明了与其相连的芯片引脚号,这样,在引脚分配时一目了然。
实验台主板的布局方框图如图二所示。
图二实验台主板的布局方框图
2.2平台资源介绍
1.主芯片(FPGA)
中间小板上是ALTERA公司FPGA芯片,为FLEX10K系列的EPF10K20TI144(工业级),系统容量20,000逻辑门,FLEX10K20采用重复可构造的CMOSSRAM工艺,把连续的快速通道互连与独特的嵌入式阵列结构相结合,同时也结合了众多编程器的优点来完成普通阵列的宏功能。
它具有低功耗、高密度、内部连接灵活等特点。
芯片引脚分布如图三所示。
该FPGA芯片有102个I/O脚,其它的为电源输入引脚和与编程、下载等功能有关的引脚。
芯片引脚的功能描述见表一。
图三FLEX10K20芯片引脚排列图
表一FLEX10K20芯片引脚功能
引脚名
状态
配置方式
引脚类型
描述
MSEL0、MSEL1
--
所有
输入
00:
AS
10:
PPS
11:
PPA
nSTATUS
--
所有
双向漏极开路
命令状态下器件的状态输出位
nCONFIG
--
所有
输入
配置控制输入,低电平使FLEX10K
复位,在由低到高的跳变过程中启动配置
CONF_DONE
--
所有
双向漏极开路
状态输出
DCLK
--
AS、PS、PPS
输入
为外部数据源提供时钟
nCE
--
所有
输入
使能输入,为低时使能输入配置过程
nCEO
--
专用于多片器件
输出
FLEX10K配置完成后,输出为低
2.输入按键
1)脉冲按键10个(不自锁,不带显示灯)
编号k9~k0,对应芯片引脚:
pin59、60、62、63、64、65、67、68、69、70;
2)电平按键16个(自锁,带显示灯)
A7~A0,对应芯片引脚:
pin72、73、78、79、80、81、82、83;
B7~B0,对应芯片引脚:
pin86、87、88、89、90、91、92、95;
该按键的显示灯可以在X、Y、Z三组输出显示灯不够用的情况下,作为显示输出用。
这时,不要将按键按下,显示灯的亮灭由设计的电路输出决定。
灯亮表示输出为1,反之则为0。
3.时钟输入
共有4个,位于实验平台的左上角。
4个时钟对应的输入引脚如下:
CLK1对应芯片引脚:
pin55CLK2对应芯片引脚:
pin125;
CLK3对应芯片引脚:
pin128CLK4对应芯片引脚:
pin122;
每个时钟输入都有8个跳线选择时钟频率,相邻两个跳线之间是两分频的关系,即上一个跳线输出的时钟频率是下一个跳线输出的时钟频率的两倍,频率逐级降低。
4个时钟能够得到的时钟分频分别是:
CLK1:
Q0-Q7CLK2:
Q5-Q12
CLK3:
Q11-Q18CLK4:
Q17-Q24
其中,Q0是所使用的晶体的振荡频率。
注意:
当某个时钟引脚在设计中如果没有使用,请将其频率选择跳线断开。
4.输出
1)显示灯(发光二极管)24个
X7~X0,对应芯片引脚:
pin41、39、38、37、36、33、32、31;
Y7~Y0,对应芯片引脚:
pin30、29、28、27、26、23、22、21;
Z7~Z0,对应芯片引脚:
pin20、19、18、17、13、12、10、9;
2)七段数码管8个
段选a、b、c、d、e、f、g、h,如图四所示。
对应芯片引脚:
pin51、49、48、47、46、44、43、42;
g
a
fb
ec
d•h
a~h分别对应的数码管的段
图四数码管的段
位选L7~L0,对应芯片引脚:
pin96、97、98、99、100、101、102、8,从左到右分别选中八个数码管。
位选和段选都是高有效,比如要L7的a段点亮,则必须同时将51脚(a段段选)和96脚(L7位选)置高。
5.下载接口
1)JTAG(边界扫描)模式的下载接口一个,该口通过并口下载电缆和打印机并口相连。
该下载口在MAX+PLUSII环境下,将*.SOF配制文件下载到芯片。
2)PS(被动串行)模式下载接口一个。
6.电源
提供直流:
7~9V/250mA
第三章应用MAX+PLUS进行电路设计
应用MAX+PLUSII软件平台进行电路设计可分为设计输入(包括编译)、设计仿真、定时分析、器件端口分配、生成电路目标文件、设计验证等六个步骤。
3.1设计输入
3.1.1图形化设计输入方法
1建立设计项目(名称)(FileProjectName)
建立新文件(FileNew“GraphicEditorFile”)
2输入图元和宏功能符号
A.在工作区中选定图元或符号的放置位置
B.选定图元或符号
SymbolEnterSymbol在SymbolLibraries选择文件夹选定图元或符号
C.放置图元或符号并设置有关属性和参数
3连接图元和符号
4为引脚和节点命名
5设置图形编辑选项
6保存文件
7将工程指向当前文件(FileProjectSetProjectToCurrentFile)
8编译(MAX+PLUSII菜单下Compile命令)
9创建一个默认的逻辑符号(FileCreateDefaultSymbol)
10创建一个默认的引用文件(FileCreateDefaultIncludeFile)
3.1.2文本设计(VHDL)输入方法
1建立设计项目(名称)[可以省略]
2建立新文件(FileNew“TextEdtiorFile”)
3编辑VHDL程序
4保存文件
5将工程指向当前文件(FileProjectSetProjectToCurrentFile)
6编译(MAX+PLUSII菜单下Compile命令)
3.2设计仿真
1.打开一个设计文件
2.将工程指向当前文件
3.编译
4.建立波形仿真文件(FileNew“WaveformEdtiorFile”)
5.设定仿真时长(FileEndTime)
6.设置输入、输出端口(NodeEnterNodeFormSNF…List”=>”“OK”)
7.设置输入端口的信号波形
8.保存波形仿真文件(与设计文件同名,扩展名为SCF)
9.打开仿真器(MAX+PLUSII菜单下Simulator命令)
10窗口中点击“Start”进行仿真,点击“OpenSCF”查看波形仿真结果,注意输出与输入之间存在延时。
3.3定时分析
1.打开定时分析器(MAX+PLUSII菜单下“TimingAnalyzer”命令)。
2.在菜单“Analysis”中选择一种分析方法(DelayMatrixh,Setup/HoldMatrix,RegisteredProfermance)。
3.在窗口中点击“Start”进行定时分析,点击“确定”查看定时分析结果,源端(Source)为输入端口,目的端(Destination)为输出端口。
3.4器件端口分配
按以下方法将所设计的电路端口定义分配到FPGA器件实际的引脚:
1.点击MAX+PLUSII\Floorplaneditor进入FPGA端口分配编辑器环境。
2.点击Assign选择器件:
DeviceFamily选择FLEX10K
Devices选择EPF10K20TC144-3
3.点击Layout选中以下两项:
Deviceview
CurrentAssignmentsFloorplan
4.根据实验台提供的输入/输出资源,将电路使用的输入/输出端口分配至FPGA器件的I/O端口(内部节点不需分配),从而使电路端口与实验台资源连接起来。
操作方法是:
双击UnassignedNodes&栏中的电路端口名,将其拖动至FPGA器件的相应引脚。
[实验台的资源的作用:
自锁按键提供输入电平,弹性按键提供脉冲,指示灯和数码管用作显示输出信号,这些器件在实验台上已与FPGA相应引脚固定连接。
(引脚号在器件的周围)]
5.电路工作所需的时钟信号的连接
只能连接(分配)至FPGA器件的4个引脚:
P122,P128,P125,P55,具体的时钟频率值由跳线器的位置决定。
其中,Q0最高为16MHZ,Q1=
Q0,Q2=
Q1,依次类推,Q24为0.95367HZ。
3.5生成电路目标文件
将电路端口分配至FPGA器件的I/O端口(引脚)之后,再进行编译(第二次编译)和工艺映射(MAX+PLUSII菜单下Compile命令),生成电路的目标文件。
3.6设计验证
1.将实验台下载电缆与PC机并口(打印口)连接;
2.点击MAX+PLUSII\Programmer进入编程器环境;
3.在Options菜单下点击HardwareSetup,将HardwareType设置为ByteBlaster[MV]
4.在File菜单下点SelectPorgrammingfiles找到相应的目标文件(FLEX系列器件的目标
文件为SOF文件,SOF-SRAMObjectFile。
编译器为MAX7000系列器件生成的工程目标文件是POF文件,POF—ProgrammerObjectFile)
5.点击Programmer对话框中的Configure将目标文件写入FPGA器件。
至此,设计的电路已由FPGA实现,通过实验台可以进行实际操作以验证电路是否具有了所要求的功能,如果各项功能均符合设计任务书的要求,全部设计工作就已经完成。
第四章设计与实验之例
本章给出以VHDL语言描述为主要设计方法,运用MAX+PLUS软件工具和H17F0S实验台进行数字电路系统设计与实验的若干实例。
实验一开发软件的使用与设计/实验的基本方法
一.实验目的
1.熟悉MAX+PLUSII的编译环境,掌握该集成环境各个菜单项的使用。
2.了解MAX+PLUSII的VHDL程序设计输入方法,初步了解该软件的仿真环境。
3.初步运用VHDL编程,体会硬件描述语言的先进性。
二.实验内容
1.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 指导书