数字电路系统设计自动化实验讲义.docx

上传人:b****5 文档编号:30707668 上传时间:2023-08-19 格式:DOCX 页数:74 大小:2.15MB
下载 相关 举报
数字电路系统设计自动化实验讲义.docx_第1页
第1页 / 共74页
数字电路系统设计自动化实验讲义.docx_第2页
第2页 / 共74页
数字电路系统设计自动化实验讲义.docx_第3页
第3页 / 共74页
数字电路系统设计自动化实验讲义.docx_第4页
第4页 / 共74页
数字电路系统设计自动化实验讲义.docx_第5页
第5页 / 共74页
点击查看更多>>
下载资源
资源描述

数字电路系统设计自动化实验讲义.docx

《数字电路系统设计自动化实验讲义.docx》由会员分享,可在线阅读,更多相关《数字电路系统设计自动化实验讲义.docx(74页珍藏版)》请在冰豆网上搜索。

数字电路系统设计自动化实验讲义.docx

数字电路系统设计自动化实验讲义

 

数字电路系统设计自动化

实验讲义

 

 

电子科学与技术系

2007.10.3

实验须知………………………………………………………………………………………………………………………2

实验一MAX+PLUSII原理图输入设计方法初步……………………………………………4

实验二 有时钟使能的两位十进制计数器设计…………………………………………16

实验三 含异步清0和同步时钟使能的4位加法计数器设计………………19

实验四 数控分频器的设计…………………………………………………………………………………23

实验五混合输入方法设计一位全加器…………………………………………………27

实验六1位全加器VHDL文本输入设计…………………………………………………33

实验七7段数码显示译码器设计…………………………………………………………………36

实验八D/A接口电路与波形发生器电路设计……………………………………………39

实验九A/D采样控制器的设计……………………………………………………………………44

实验十 点阵显示电路的设计…………………………………………………………………………………47

实验十一 移位相加4位硬件乘法器电路设计………………………………………………50

附录实验箱简介……………………………………………………………………………………………54

实验须知

一、实验的教学目的和要求

1、实验教学目的

(1)进行实验基本技能的训练,巩固、加深并扩展EDA设计的基本理论知识,培养解决实际问题的能力。

(2)培养实事求是、严肃认真、踏实细致的科学作风和良好的实验习惯,为将来从事科学实验、研究和生产实践打下坚实的基础。

2、实验教学要求

(1)学习工具软件MAX+plusII的基本使用方法;

(2)学习EDA设计的常用方法;

(3)利用EDA设计常用电子电路;

(4)学习实验数据的处理、分析。

二、实验方法

1、实验前的准备

(1)实验前必须认真阅读本实验教材和实验箱有关使用说明,做到明确实验目的、要求、内容、方法、步骤和有关注意事项,并复习与实验相关的理论知识;

(2)进入实验室后,不要急于联接线路,应先检查实验所用的实验箱是否正常,熟悉其技术性能和使用方法。

发现实验箱有故障时,应立即告知指导教师检查处理,以保证实验顺利进行。

2、实验过程

(1)按照实验讲义的要求认真完成电路的编辑(图形输入法或VHDL输入法)、编译、排错。

(2)完成有关功能的仿真。

(3)进行元件封装。

(4)下载程序。

(5)进行程序调试和测试。

(6)注意观察实验中出现的各种现象,并记录和做出分析。

3、结束实验

(1)实验结束后不要急于拆除线路,应认真检查实验结果,确认无遗漏或其他问题,并经指导教师检查同意后,方可拆除线路,整理实验设备,填写实验登记卡,由指导教师和实验员签名后方可离开实验室。

(2)实验者有保护仪器设备的义务。

实验器材和工具不得擅自拿出实验室;若损坏仪器设备,应如实报告指导教师,按实验室有关规定办理登记手续(如属违反仪器设备操作规程或随意乱动与实验无关设备而损坏的,应负赔偿责任)。

三、实验报告

必须依时缴交实验报告。

实验报告是实验工作的全面总结,要用简明的形式将实验结果完整和真实地表达出来。

实验报告要求简明扼要、字迹工整、数据处理方法正确、图表整齐清晰(用铅笔及绘图仪器绘制,不得徒手描绘)和科学分析实验结果。

实验报告包括以下内容:

1、实验题目

2、实验目的

3、实验原理

简述实验所依据的理论或实验方法,列写出相关的计算公式,画出实验线路图。

4、实验仪器设备

记录实验仪器设备的名称、型号、规格参数等。

5、实验内容

6、实验结果

根据实验原始记录,整理实验数据,计算结果,绘出仿真图形。

7、分析讨论

对实验中观察到的现象和实验结果进行分析讨论,并回答指导教师提出的问题。

实验一 MAX+PLUSII 原理图输入设计方法初步

一、实验目的

1、学习工具软件MAX+plusII的基本使用方法;

2、学习用MAX+plusII原理图输入设计方法编辑电路。

二、实验内容

虽然本实验介绍的是基于MAX+plusII的原理图输入设计方法,但其基本设计流程是具有一般性,因而,设计的基本方法也完全适合于其它EDA工具软件。

作为实验准备,本节将结合利用D触发器设计一个二分频器的过程来介绍MAX+plusII进行原理图输入设计的基本方法和流程。

一)、编辑输入并存盘文件

1、建立文件目录

首先应该建立好工作库目录,以便设计工程项目的存储。

作为示例,在此设立目录为:

E:

\myproject,作为工作库,以便将设计过程中的相关文件存储在此。

任何一项设计都是一项工程(Project),都必须首先为此工程建立一个放置与此工程相关的所有文件的文件夹,此文件夹将被EDA软件默认为工作库(WorkLibrary)。

一般不同的设计项目最好放在不同的文件夹中,注意,一个设计项目可以包含多个设计文件。

可利用WINDOWS资源管理器,新建一个文件夹。

假设本项设计的文件夹取名为myproject,在E盘中,路径为:

E:

\myproject。

注意,文件夹不能用中文名字。

2、启动MAX+plusII

MAX+plusII启动后,选择菜单“File”“New…”,出现如图1-1所示的对话框,在框中选中“GraphicEditorfile”,按“OK”按钮,即选中了原理图编辑方式。

出现的“Untitled-GraphicEditor”原理图编辑窗,如图1-2。

3、调入元件

在图1-2所示图形编辑区单击鼠标右键,选择弹出菜单中的“EnterSymbol”即出现如图1-3所示的“EnterSymbol”对话框。

在“symbolName”对话框中输入元件号符名,可直接输入所需元件。

也可以从有关元件库中选择,如图1-3所示。

4、连接电路图

将所有元件调入工作区,调整好元件位置,并按原理图连接好电路,如图4所示。

连接时将鼠标的箭头指向要连接的元件脚端,当箭头变为十字时按下鼠标左键并拖到要连接的另一元件脚,此时松开左键,即可将元件连上。

5、保存电路

电路连接好并检查无误后,即可将电路保存到设定的E:

\myproject目录下。

注意文件名不能用中文,并且要注意文件的扩展名,此处为.gdf。

二)、设定为当前工程

为了使Max+plusII能对输入的设计项目按设计者的要求进行各项处理,在编译/综合之前,需要设置此文件为顶层文件(最上层文件),或称当前工程文件:

Project,或者说将此项设计设置成工程。

选择菜单“File”Project“SetProjecttoCurrentFile”,当前的设计工程即被指定为Project。

也可以通过选“File”“Project”“Name”,在跳出的“ProjectName”窗中指定E:

\myproject下的D2.gdf为当前的工程。

设定后可以看见MAX+plusII主窗左上方(图1-4)的工程项目路径指向为:

“e:

\myproject\d2.gdf”。

这个路径指向很重要!

如果设计项目由多个设计文件组成,则应该将它们的主文件,即顶层文件设置成Project。

如果要对其中某一底层文件进行单独编译、仿真和测试,也必须首先将其设置成Projcet。

为了获得与目标器件对应的,精确的时序仿真文件,在对文件编译前必须选定最后实现本设计项目的目标器件,在Max+plusII环境中主要选Altera公司的FPGA或CPLD。

在设定工程文件后,应该选择用于编程的目标芯片:

选择菜单“Assign”“Device…”,在弹出的对话框中的“DeviceFamily”下拉栏中,例如选择FLEX10K,此窗口(图1-5)的DeviceFamily是器件序列栏,应该首先在此栏中选定目标器件对应的序列名,如FLEX10K对应的是EPF10K10LC84-4系列。

为了选择EPF10K10LC84-4器件,应将此栏下方标有ShowonlyFastestSpeedGrades的勾消去,以便显示出所有速度级别的器件。

完成器件选择后,按OK键。

在设计中,设定某项设计为工程应该注意以下3方面的问题:

1、如果设计项目由多个.gdf文件组成,应先对各低层次文件(元件),如或门或半加器分别进行编辑、设置成工程、编译、综合、乃至仿真测试并存盘后以备后用。

2、最后将定顶层文件(存在同一目录中)设置为工程,统一处理,这时顶层文件可根据例化语句自动调用底层设计文件。

3、在设定顶层文件为工程后,底层设计文件原来设定的元件型号和引脚锁定信息自动失效。

元件型号的选定和引脚锁定情况始终以工程文件(顶层文件)的设定为准。

同样,仿真结果也是针对工程文件的。

所以在对最后的顶层文件处理时,仍然应该对它重新设定元件型号和引脚锁定(引脚锁定只有在最后硬件测试时才是必须的)。

如果需要对特定的底层文件(元件)进行仿真,只能将某底层文件(元件)暂时设定为工程,进行功能测试或时序仿真。

三)、编译和排错

选菜单“MAX+plusII”“Compiler”菜单(图1-6),在按“START”键运行编译前,还需要作一件事,即在进入编辑窗(图1-6),选择Processing项,选“FitterSetting”,进入如图1-7的窗口,消去最上的“UseQuartusFitter…”的勾。

最后按“START”键,运行编译器。

如果图中有错,在编译时出现了如图1-8所示的出错信息指示。

有时尽管只有1、2个小错,但却会出现大量的出错信息,确定错误所在的最好办法是找到最上一排错误信息双击,就能发现在出现文本编译窗中闪动的光标附近找到错误所在。

纠正后再次编译,直至排除所有错误。

注意闪动的光标指示错误所在只是相对的,有的错误比较复杂,很难用此定位。

四)、时序仿真

接下来应该测试设计项目的正确性,即逻辑仿真,具体步骤如下:

1、建立波形文件。

在图1-2中选择File项及其New,再选择New窗中的WaveformEditer..项,打开波形编辑窗,如图1-9。

2、输入信号节点。

在图1-9所示的波形编辑窗的上方选择Node项,在下拉菜单中选择输入信号节点项EnterNodesfromSNF。

在弹出的窗口(图1-10)中首先点击List键,这时左窗口将列出该项设计所有信号节点。

由于设计者有时只需要观察其中部分信号的波形,因此可利用中间的“=>”键将需要观察的信号选到右栏中,然后点击OK键即可将测试节点信号CLK(I)和QOUT(O)输入仿真波形编辑窗。

3、设置波形参量。

图1-11所示的波形编辑窗中已经调入了分频器的所有节点信号,在为编辑窗口的CLK输入信号设定必要的测试电平之前,首先设定相关的仿真参数,如图1-11所示,在Options选项中消去网格对齐SnaptoGrid的选择(消去勾),以便能够任意设置输入电平位置,或设置输入时钟信号的周期。

4、设定仿真时间宽度如图1-12,1-13所示。

选择File项及其Endtime选项,在Endtime选择窗中选择适当的仿真时间域,如可选80us(80微秒),以便有足够长的观察时间。

5、加上输入信号。

图1-14显示了波形编辑窗口各按钮的功能。

在图1-15仿真波形中,分频器输入时钟周期为10us时变信号。

由图可见QOUT与CLK是2分频关系。

注意,仿真波形文件的建立,一定要十分注意仿真时间区域的设定,以及时钟信号的周期设置,否则即使设计正确也无法获得正确的仿真结果。

如图1-15所示,设定了比较合理的仿真时间区域和信号频率。

6、波形文件存盘。

选择File项及其Saveas选项,按OK键即可。

存盘窗(图1-16)中的波形文件名是默认的(这里是D2.scf),所以直接存盘即可。

7、运行仿真器。

选择MAX+plus II项及其中的仿真器Simulator选项,点击跳出的仿真器窗口(图1-17)中的Start键。

图1-15是仿真运算完成后的时序波形。

注意,刚进入图1-15的窗口时,应该将最下方的滑标拖向最左侧,以便可观察到初始波形。

8、观察分析波形。

还可以进一步了解信号的延时情况。

图1-15右侧的竖线是测试参考线,它与鼠标箭头间的时间差显示在窗口上方的Interval小窗中。

由图可见输出与输入波形间有一个小的延时量。

9、为了得到更准确的时间延迟值,可打开MAX+plusII菜单下的“TimeAnalyzer”进行时间分析,可得到如图1-18的分析结果界面。

按下start键后即可得到分析结果。

五)、硬件测试

为在实验系统上验证设计的正确性,完成硬件测试。

首先通过选择“MAX+plusII”“Compiler”菜单,进入编辑窗,然后在“Assign”项中选“Pin/Location/Chip”选项,在跳出的窗口中的NodeName项中输入引脚CLK,这时“PinType”项会出现“Input”指示字,表明CLK的引脚性质是输入,否则将不出现此字。

此时在“PIN”项内输入引脚号如“43”,再点击右下方的Add项,此引脚即设定好了;以同样方法分别锁定引脚QOUT(图1-19),再点击上方的OK。

关闭“Pin/Location/Chip”窗后,应点击编译窗的“Start”,将引脚信息编辑进去。

编程下载和硬件测试的步骤如下:

(1)选"MAX+PLUS"项中的“Programmer”项,跳出Programmer窗后,选Options项中的硬件设置项“HardwareSetup”,在此窗的下拉窗中选“ByteBlaster(MV)”项,点击OK即可。

(2)将实验板连接好,接好电源,点“Configure”,即进行编程下载。

下载方式设定:

选择MAX+plusII项及其中的编程器Programmer选项,跳出如图1-20左侧所示的编程器窗口,然后选择Options项的HardwareSetup硬件设置选项,其窗口如图1-20左侧所示。

在其下拉菜单中选ByteBlaster(MV)编程方式。

此编程方式对应计算机的并行口下载通道,“MV”是混合电压的意思,主要指对ALTERA的各类芯核电压(如5V、3.3V、2.5V与1.8V等)的FPGA/CPLD都能由此下载。

此项设置只在初次装软件后第一次编程前进行,设置确定后就不必重复此设置了。

下载:

如图1-20,点击Configure键,向EPF10K10下载配置文件,如果连线无误,应出现图1-21报告配置完成的信息提示。

此时可在输入端输入1KHZ的信号,并用双踪示波器观测输入、输出端的波形,并比较其频率关系。

到此为止,完整的设计流程已经结束。

VHDL文本输入的设计可参考这一流程。

六)、设计流程归纳

图1-22所示的是利用MAX+plusII进行设计的一般流程,因此对原理图输入设计和文本方式的硬件描述语言设计输入都能适用。

七)、补充说明

为了使以上的各设计步骤表达得更为简洁和浅显易懂,一些需要详细说明的内容未能提及,故在此作为补充说明详述如下:

图1-6编译窗口各功能项目块含义如下:

CompilerNetlistExtractor:

编译器网表文件提取器,该功能块将输入的原理图文件或HDL文本文件转化成网表文件并检查其中可能的错误。

该模块还负责连接顶层设计中的多层次设计文件;此外还包含一个内置的,用于接受外部标准网表文件的阅读器。

DatabaseBuilder:

基本编译文件建立器,该功能块将含有任何层次的设计网表文件转化成一个单一层次的网表文件,以便进行逻辑综合。

LogicSynthesizer:

逻辑综合器,对设计项目进行逻辑化简、逻辑优化和检查逻辑错误。

综合后输出的网表文件表达了设计项目中底层逻辑元件最基本的连接方式和逻辑关系。

逻辑综合器的工作方式和优化方案可以通过一些选项来实现。

Partitioner:

逻辑分割器,如果选定的目标器件逻辑资源过小,而设计项目较大,该分割器则自动将设计项目进行分割,使得它们能够实现在多个选定的器件中。

Fitter:

适配器,适配器也称结构综合器或布线布局器。

它将逻辑综合所得的网表文件,即底层逻辑元件的基本连接关系,在选定的目标器件中具体实现。

对于布线布局的策略和优化方式也可以通过设置一些选项来改变和实现。

TimingSNFExtractor:

时序仿真网表文件提取器,该功能块从适配器输出的文件中提取时序仿真网表文件,留待对设计项目进行仿真测试用。

对于大的设计项目一般先进行功能仿真,方法是在Compiler窗口下选择Processing项中的FunctionalSNFExtractor功能仿真网表文件提取器选项。

Assembler:

装配器,该功能块将适配器输出的文件,根据不同的目标器件,不同的配置ROM产生多种格式的编程/配置文件,如用于CPLD或配置ROM用的POF编程文件(编程目标文件);用于对FPGA直接配置的SOF文件(SRAM目标文件);可用于单片机对FPGA配置的Hex文件,以及其它TTFs、Jam、JBC和JEDEC文件等。

三、实验仪器设备和材料清单

微型计算机 ZYE1502D型EDA实验箱 EPF10K10LC84-4下载板

四、实验报告要求

  根据以上的实验内容写出实验报告,包括实验目的、实验原理、电路原理图、软件编译、仿真波形图、硬件测试实验过程和结果。

五、思考题

  用D触发器设计一个4分频电路。

实验二两位十进制计数器的设计

一、实验目的

学习时序电路的设计、仿真和硬件测试,进一步熟悉MAX+plusII设计软件的使用。

二、实验原理

1、实验电路原理图

频率计的核心元件之一是含有时钟使能及进位扩展输出的十进制计数器。

为此这里拟用一个双十进制计数74390和其它一些辅助元件来完成。

电路原理图如图2-1所示。

图中,74390连接成两个独立的十进制计数器,脉冲信号clk通过一个与门进入74390的计数器1的时钟输入端1CLKA,与门的另一端由计数使能信号enb控制:

当enb='1'时允许计数;enb='0'时禁止计数。

计数器1的4位输出q[3]、q[2]、q[1]和q[0]并成总线表达方式即q[3..0],由图2-1左下角的OUTPUT输出端口向外输出计数值,同时由一个4输入与门和两个反相器构成进位信号进入第2个计数器的时钟输入端2CLKA。

第2个计数器的4位计数输出是q[7]、q[6]、q[5]和q[4],总线输出信号是q[7..4]。

这两个计数器的总的进位信号,即可用于扩展输出的进位信号由一个6输入与门和两个反相器产生,由cout输出。

clr是计数器的清零信号。

2、计数器电路实现

在此首先从实现图2-1所示的电路的绘制和测试开始,为此可以在实验一的步骤2中用鼠标双击“EnterSymbol”窗中SymbolLibraries栏的e:

\maxplus2\max2lib\mf的宏功能元件库,于是可以在SymbolFiles栏中看到绝大多数74系列的元件(图2-2)。

这些器件的详细功能及其它们的逻辑真值表可以通过查阅“Help”选项来获得。

为了查阅74390的功能,可如图2-3所示,在Help菜单中选Old-StyleMacrofunctions项,然后选Counters项。

向原理图编辑窗中调入宏功能元件可以如图2-2所示,直接在上端的SymbolName栏中键入器件的名称,如74390等,然后点击OK键即可。

如果要了解74390内部的情况,可以用鼠标在其上双击。

最后根据图2-1在原理图编辑窗中完成该电路的全部绘制。

绘制过程中应特别注意图形设计规则中信号标号和总线的表达方式。

若将一根细线变成以粗线显示的总线,可以先将其点击使其变成红色,再选Option选项中的LineStyle;若在某线上加信号标号,也应该在该线某处点击使其变成红色,然后键入标号名称,标有相同标号的线段可视作连接线段,但可不必直接连接。

对于以标号方式进行总线连接可以如图2-1那样。

例如一根8位的总线bus1(7..0)欲与另3根分别为1、3、4位的连线相接,它们的标号可分别表示为bus1(0),bus1(3..1),bus1(7..4)。

3、保存文件

4、设为当前工程

5、编译

6、波形编辑

7、波形仿真

按照实验一步骤完成上述过程。

图2-4是仿真波形的结果,由波形图可见,图2-1电路的功能完全符合原设计要求:

当clk输入时钟信号时,clr信号具有清0功能,当enb为高电平时允许计数,低电平时禁止计数;当低4位计数器计到9的向高4位计数器进位,另外由于图2-4中没有显示高4位计数器计到9,故看不到count的进位信号。

8、下载测试

按下表进行元件封装

Clk

Clr

Enb

Q7

Q6

Q5

Q4

Q3

Q2

Q1

Q0

Cout

1

54

58

16

11

10

9

8

7

6

5

27

开关、按键的位置

AS1:

(2)、(3)、(4)档拨向上(ON);

(1)档拨向下

LJ1:

跳线按2、3脚

TJ1:

设为1HZ

上述步骤完成后,按实验一步骤下载测试。

注意观察数码管的数值变化。

三、实验仪器设备和材料清单

微型计算机 ZYE1502D型EDA实验箱 EPF10K10LC84-4下载板

四、实验报告要求

  根据以上的实验内容写出实验报告,包括实验目的、实验原理、电路原理图、软件编译、仿真波形图、硬件测试实验过程和结果。

五、思考题

  用JK触发器设计一个十进制计数电路,并在实验箱上完成硬件测试。

实验三含异步清0和同步时钟使能的4位加法计数器的设计

一、实验目的

学习时序电路的设计、仿真和硬件测试,学习用VHDL编程设计电路。

二、实验原理

图3-1是一含计数使能、异步复位和计数值并行预置功能4位加法计数器,图中间是4位锁存器;rst是异步清信号,高电平有效;clk是锁存信号;D[3..0]是4位数据输入端。

当ENA为'1'时,多路选择器将加1器的输出值加载于锁存器的数据端;当ENA为'0'时将"0000"加载于锁存器。

三、实验内容

1、启动MAX+plusII后,选择菜单“File”“New…”,出现如图3-2所示的对话框,在框中选中“TextEditorfile”,按“OK”按钮,即选中了VHDL编辑方式。

出现的“Untitled-TextEditor”VHDL编辑窗,如图3-3。

2、在VHDL编辑窗口输入VHDL参考程序,检查无误后保存文件。

选择菜单“FileSave”,即出现如图3-4所示的“SaveAs”对话框。

首先在

“Directories”目录框中选择自己已建立好的存放本文件的目录E:

\MYPROJECT(用鼠标双击此目录,使其打开),然后在“FileName”框中键入文件名CNT4B.VHD,按“OK”按钮,即把输入的文件放在目录E:

\MYPROJECT中了。

注意文件名为CNT4B.VHD。

在VHDL程序中,文本存盘的文件名必须与文件的实体名一致。

且如果后缀正确,存盘后对应该语言的文件中的主要关键词都会改变颜色。

3、按照给出的参考程序,在MAX+plusII上进行编辑、编译、综合、适配、仿真。

说明例中各语句的作用,详细描述示例的功能特点,给出其所有信号的时

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1