基于MSI芯片74160设计模为100计数器.docx
《基于MSI芯片74160设计模为100计数器.docx》由会员分享,可在线阅读,更多相关《基于MSI芯片74160设计模为100计数器.docx(16页珍藏版)》请在冰豆网上搜索。
基于MSI芯片74160设计模为100计数器
基于MSI芯片74160设计模为100的计数器
一、实验目的:
基于MSI芯片74160,利用QuartusII软件设计并实现一个计数器的逻辑功能,通过电路的仿真和硬件验证,进一步了解计数器的特性和功能。
二、实验原理:
利用集成计数器MSI芯片的清零端和置数端实现归零,能够按自然态序进行计数的N进制计数器的方式。
集成计数器中,清零、置数均采纳异步方式的有74LS163;均采纳异步方式的有74LS193、74LS197、74LS192;清零端采纳异步方式、置数端采纳同步方式的有74LS16一、74LS160。
74161/74160功能真值表
输入
输出
CLRN
LDN
ENT
ENP
CP
D
C
B
A
QD
QC
QB
QA
RCO
0
X
X
X
X
X
X
X
X
0
0
0
0
0
1
0
X
X
↑
D
C
B
A
D
C
B
A
1
1
1
1
↑
X
X
X
X
步进计数
1
1
0
X
X
X
X
X
X
保持
1
1
X
0
X
X
X
X
X
保持
0
表1
图1
3、实验环境:
PC机(Windowsxp,QuartusII)
4、实验内容:
依照第五章相关内容,完成计数器的实际,包括原理图输入、编译、综合、适配、仿真,并将此计数器电路设计成一个硬件符号入库。
最后利用两个MSI芯片74160完成一个模为60的计数器的设计,包括原理图的输入、编译、综合、适配、仿真。
五、实验步骤:
S“开始”菜单“所有程序”中的“Altera”程序框当选择“QuartusII”如图1所示:
S
EDA工具中的任何一项设计都是一项工程(PROJECT),应第一为此工程成立一个放置与此工程相关的文件的文件夹,此文件夹将被EDA软件默以为工作库(WORKLIBRARY).一样不同的设计项目最好放在相应的文件夹中,注意,一个设计项目能够包括多个设计文件夹。
本项目中的文件夹取名为counter_100,途径为:
E:
/数字逻辑/作业/7/。
注意:
文件夹名不能用中文,且不可带空格。
S
(1)打开QuartusII,选择File|New命令。
在New窗口中(如图2所示)的DeviceDesignFile当选择硬件设计文件类型为BlockDiagram/SchematicFile,然后在框图设计文件编辑窗中输入源程序图1的文件。
图2
(2)放置元件
在原理图空白处双击鼠标,跳出Symbol选择窗口(或单击右键选择Inster→Symbol…),显现元件对话框图2
图3
为了设计一名全加器,可参考图1,别离调入元件input、output、与门AND4、MSI芯片74160,并连接好。
然后别离在input和output的PINNAME上双击使其变黑,再用键盘别离输入各引脚名:
CLRN,CLK(时钟),CO(输出),Q[7..0](两个74160共8个输出)。
和Q[0]到Q[7]输出。
(3)文件存盘
从菜单File当选择Saveas命令,选择适才为自己工程成立的目录E:
/数字逻辑/作业/7/,将设计好的图文件取名为:
counter_100(注意后缀是.bdf),并存盘在E:
/数字逻辑/作业/7/目录内,如图4所示。
图4
S
(1)单击File/NewProjectWizard,弹出“工程设置”对话框,如图5
图5
第1行的E:
/数字逻辑/作业/7/表示工程所在的工作库文件夹,第2行表示该工程的工程名,此工程名能够取任何其他的名,也能够用顶层文件实体名作为工程名;第3行是当前工程顶层文件的实体名(此处输入的顶层文件实体名与以后的设计文件实体名相同,默许的顶层文件名与工程名相同),此处即为counter_100。
(2)加入设计文件
单击Next按钮,在弹出的对话框中单击File栏中的“…”,将于工程相关的所有文件加入工程中,单击Add按钮进入此工程,即可得如图6所示的情形。
图6添加设计文件
(3)选择目标芯片(用户必需选择与开发板相应的FPGA器件型号):
这时弹出选择目标芯片的窗口,第一在Family栏选择目标芯片系列,在此选择Cylone系列,如图7所示。
再次单击Next按钮,选择此系列的具体芯片EP1C6Q240C8,那个地址EP1C6表示Cylone系列及此器件的规模,Q表示PQFP封装,C8表示速度级别。
图7选择目标芯片
(4)选择仿EDA工具:
设计中可能用到的EDA工具有时序分析工具、仿真工具和综合工具。
单击图7中Next按钮,可从弹出的窗口当选择EDA工具类型,若是都选None,表示选QuartusII中自带的EDA工具。
(5)单击Next按钮后进入下一步。
弹出“工程设置统计”窗口,如图8所示。
图8工程设计统计
(6)终止设置。
最后单击Finish按钮,即表示已设定好此工程,并显现counter_100的工程治理窗口(亦称CompilationHierarchies窗口),该窗口要紧显示该项目的层次结构和各层次的实体名,如图9所示。
完成设置后能够看到窗口左上角显示所设工程途径的转变。
QuartusII将工程信息文件存储在工程配置文件(.qsf)中。
它包括设计文件、波形文件、SignalTapII文件、内存初始化文件,和组成工程的编译器、仿真器的软件构件设置等有关QuartusII工程的所有信息。
图9
S
QuartusII默许把所有编译结果放在工程根目录中,为了让QuartusII像VisualStudio等IDE一样把编译结果放在一个单独的目录中,需要指定编译结果的输前途径。
单击菜单项Assignment→settings,选中CompilationprocessSetting选项卡,勾选右边的SaveProjectoutputfilesinspecifieddirectory,输入途径(releaseordebug),如以下图:
QuarterII编译器是由一系列处置模块组成,这些模块负责对设计项目检错,逻辑综合、结构综合、输出结果的编辑配置,和时序分析。
单击菜单项选择项Processing→Start→StartAnalysis&Synthesis执行分析与综合项目检错(或Ctrl+K),若是仅仅需要检测语法,那么执行Analysis&Elaboration(分析与解析),但这一步生成的数据并非对应FPGA器件的物理结构,生成的网表中节点的名称也不与FPGA器件的Cell名称对应。
更多情形下直接执行StartAnalysis&Synthesis。
执行分析与综合后,生成的数据库对应FPGA器件的物理结构,映射后的数据库包括FPGA底层Cell的位置信息和Cell的时序信息。
上面所有工作做好后,执行QuartusII主窗口的Processing菜单的StarCompilation选项,启动全程编译。
编译好后的工程治理窗口如图10所示。
图10
编译进程中应注意工程治理窗下方的Processing栏中的编译信息。
若是编译有错,启动编译后下方Processing栏会显示出来,可双击错误提示,即弹出对应用深色标记的相关错误位置,再次编译直至排除所有错误。
在图10中单击Report可取得如图11所示的界面,此界面左上角是工程治理窗口,单击其中各项可了解编译和分析结果。
如单击FlowSummary,将在右栏显示此工程的硬件耗用报告:
TimingAnalyzer项,那么能看到当前工程所有相关时序特性的报告。
图11
该工程编译通事后,必需对其功能和时序性能进行仿真检测,以验证设计结果是不是知足设计要求。
整个时序仿真测试流程一样有成立波形文件、输入信号节点、设置波形参数、编辑输入信号、波形文件存盘、运行仿真器和分析仿真波形等步骤。
现给出以.vwf文件方式的仿真测试流程的具体步骤如下:
(1)成立仿真波形文件
选择QuartusII主窗口主窗口的File菜单的New选项,在弹出的文件类型编辑对话框中,选择Verification/DebuggingFiles中的VectorWeaveformFiles项,单击OK按钮,打开波形文件编辑窗口。
单击File→SaveAs,即显现如图12所示:
图12
(2)设置仿真参数
选择Assigment中的settings对话框,能够进行如仿真鼓励文件、毛刺检测、功耗估量、输出等设置,一样情形下选默许值。
如图13所示:
图13
此题中整个仿真时刻区域蛇为10µs、时刻轴周期为100ns,其设置步骤是在Edit菜单当选择EndTime,在弹出窗口中Time出填入10,单位选择µs,同理在GrideSize中TimePeriod输入50ns,单击OK按钮,设置终止。
(3)输入工程的信号节点
单击Edit→Insert→InsertNodeorBUS…,即可弹出如图14的对话框,单击NodesFound选项,在NodesFound对话框Filter项当选择Pins:
All,然后单击List按钮,在下方的窗口中显现设计中的工程的所有窗口的引脚名,选择欲观看信号节点,用中间的“≥”将需要观看的信号选到右边,如图15所示,单击OK按钮,回到InsertNodeorBUS对话框,再单击OK按钮即可,如图16所示。
图14.
图15
图16
(4)设计输入信号波形
单击图16窗口的输入信号CP使之变成蓝色条,再单击右键,选择Value设置中的Clock对话框(如图17所示),设置其周期为50ns,同理别离设置其他信号的波形,波形编辑结果如图19所示。
双击图16所示输出信号CO、Q[7..0],将弹出信号输出格式设置对话框图18所示,在对话框的Radix中有6当选择,将在后续实验中要用到。
图17图18
图19
(5)启动仿真器,观看结果
所有设置完成后,选择“File”中的“SaveAs”项,将波形文件以默许名存盘后,即可启动仿真器Processing|StartSimulation,直到显现Simulationwassuccessful,仿真终止。
中默许的Simulationmode为Timing(时序仿真)仿真波形输出文件SimulationReport将自动弹出如图20所示,通过该图可查看实际设计的电路运行时是不是知足延时要求。
注意,QuartusII的仿真波形文件中,波形编辑文件(*.bdf)与波形仿真报告输出文件(SimulationReport)是分开的,而MaxplusII的鼓励波形编辑文件与波形仿真报告输出文件是合二为一的。
图20
(6)包装元件入库
分析仿真结果正确无误后,选择File→Create/update→CreateSymbolFileforCurrentFile,将当前文件变成了一个包装好的单一元件(),并放置在工程途径指定的目录中以备后用。
(1)确信引脚编号
为在实验系统上验证设计的正确性,完成硬件测试,必需进行用于实现设计电路的输入和输出端口与目标芯片引脚之间连接关系的引脚锁定工作。
关于GW48EDA实验平台,若是目标期间是EP1C6Q240C8,选择实验平台上的实验电路模式4,管脚分派如表2所示:
输入输出管脚分派表(模式)
信号名
管脚名PIN
对应器件名称
CLRN
1
按键8(PIO8)
CP
2
按键7(PIO9)
CO
3
发光二级管(PIO10)
Q[7..0]
168、167、166、165、164、163、162、161
数码管7、8(PIO47~40)
表2
(2)引脚锁定(手工分派)
在Assingment菜单中,选Pins项,弹出对话框Pins编辑窗(如图21所示),在该对话框Location栏中按表2选中右方的Pin。
如图21所示,完成引脚锁定工作后,还要再次对设计文件进行编译,排错并产生编译下载文件()。
下面给出其的配置进程。
1将GW48EDA开发实验平台的下载电缆与运算机的并行接口LPT1连接在一路,打开
实验平台电源开关,按模式开关选择.
2执行QuartusII项中的Programmer命令,弹出Programmer命令窗口后,选Option项中的硬件设置项HardwareSetup,在此窗的下拉窗当选ByteBlaster(MV)项单击OK按钮即可。
此编程方式对应运算机的并行口下载通道,“MV”是混合电压的意思。
单击Configure按钮,将模为100的计数器编程下载文件()下载到目标文件EP1C6Q240C8中,若是连线无误,应显现报告配置完成的信息提示。
图21
对管脚较多的时候咱们能够用qsf文件进行引脚锁定,利用qsf文件进行引脚锁定只需要全程编译一次即可(StatCompilation),方式如下:
用记事本打开,将以下命令添加到文件中即可完成引脚锁定。
Set_location_assigmentPIN_1-toCLRN
Set_location_assigmentPIN_2-toCP
Set_location_assigmentPIN_3-toCO
Set_location_assigmentPIN_168-toQ[7]
Set_location_assigmentPIN_167-toQ[6]
Set_location_assigmentPIN_166-toQ[5]
Set_location_assigmentPIN_165-toQ[4]
Set_location_assigmentPIN_164-toQ[3]
Set_location_assigmentPIN_163-toQ[2]
Set_location_assigmentPIN_162-toQ[1]
Set_location_assigmentPIN_161-toQ[0]
或修改*.CSV文件进行引脚锁定:
在主菜单顶用Assignment→ImportAssignment……菜单项选择择文件名为自动导入引脚配置文件,如引脚配置文件中含有大量本实验没有效到的引脚,在编译时将会显现大量警告,现在删除多余引脚即可。
(3)全程编译。
完成引脚锁定后,执行StarCompilation,生成sof目标文件。
(4)编译下载。
单击菜单项Tools→Programmer打开程序下载环境,选择USB-Bluster下载方式,将文件列表中Program/Configure属性勾上,单击Star按钮,开始下载程序,完成后下载程序显示为100%。
(5)硬件测试。
在开发板上波动按键7,按键8可观测到计数后在数码管和发光二极管上的输出结果。
六、总结分析
对应实验任务要求的仿真和硬件验证,选择实验箱上的。
CLK时钟信号选用CLOCK其管脚号是PIN_2,,输出选用数码管7、8和发光二级管D1~D8来显示。
然后进行逻辑分析和波形实时仿真。
对应实验任务要求了解计数器的特性和功能,实现了用原理图方式将模为100的计数器设计完成。
通过对模为100的计数器设计的实验中把握了一些大体的EDA实验的知识。
也知道了关于做EDA实验必然要认真认真,从实验结果中能够看出这次实验很成功,通过这次实验熟练把握了QuartusII的设计流程,也了解到一些关于计数器的分析和测试方式。