原理图输入设计方法课件_第1页
原理图输入设计方法课件_第2页
原理图输入设计方法课件_第3页
原理图输入设计方法课件_第4页
原理图输入设计方法课件_第5页
已阅读5页,还剩201页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第三章原理图输入设计方法EDA第三章原理图输入设计方法EDA3.1原理图设计方法原理图编辑流程准备:安装max+plusII并进入该环境3.1原理图设计方法原理图编辑流程STEP2:输入设计项目原理图/VHDL文本代码STEP3:存盘,注意VHDL文件取名!STEP4:将设计项目设置成ProjectSTEP8:选择目标器件

STEP12:硬件测试STEP9:引脚锁定并编译STEP7:功能仿真和波形分析STEP6:建立仿真波形文件STEP5:启动编译STEP11:编程下载/配置STEP1:建立工作库文件夹STEP10:时序仿真和延时分析STEP2:输入设计项目STEP3:存盘,注意STEP4:将1.建立一个新的原理图文件File>New选择GraphicEditorfile(gdf

格式文件)1.建立一个新的原理图文件File>New2.输入元件Max+plusII的内建函数较大规模器件库——mega_lpm,一些比较大的并可做参数设置的元件,使用中需要对其参数进行设置,称为参数可设置兆功能库.中规模器件库——mf,数字电路中一些中规模器件库,如74系列逻辑器件。基本元件库——prim,常用基本元件库,如AND、OR、VCC、GND、INPUT、OUTPUT2.输入元件Max+plusII的内建函数较大规模器件库——调出符号双击空白处单击右键->entersymbol调出符号双击空白处可以直接输入符号名,如input,and2,7474等符号库,第一行是用户的工作库(WorkLibrary)路径。点击任一个库的路径,都会在SymbolFiles下显示所有的符号文件名。最后点击“ok”可以直接输入符号名,如input,and2,7474等符号库元件的编辑移动旋转右键菜单Edit菜单删除复制简单的方法,“ctrl+移动”元件的编辑移动简单的方法:将两个元件的引脚处对齐,拖动一个元件,自动形成连线用鼠标画两个引脚的连线不能重叠连线不能进入元件的虚线框内部按下橡皮筋按钮连线简单的方法:按下橡皮筋按钮连线引脚的命名双击引脚名注意第一个字符必须为英文,以后可用下划线、数字等组合下划线前后要有字母或数字“/”“-”“%”都是非法的大小写的意义一样引脚的命名双击引脚名总线先画一条线->单击右键->Linestyle->粗线引脚名或总线名的规则为****[m..n]或者[n..m],其中m>n≥0,最多可以代表256个引脚名。一般采用[n-1..0]。总线先画一条线->单击右键->Linestyle->粗线节点引脚间的连线(细线)可以称为节点,节点是可以命名的,命名规则与引脚相同。如果不想连线太多,可以对本质上相连的节点取一致的名称选中一条细线,当有小■闪烁时,表示可以进行命名节点引脚间的连线(细线)可以称为节点,节点是可以命名的,命名3.保存文件注意最上面的标题栏:有可能不是Untitled1这里是指示环境的当前设计项目注意此时的文件名“Untitled1”3.保存文件注意最上面的标题栏:注意此时的文件名原理图输入设计方法课件注意为了方便同一个项目下的文件查找方便,最好事先特别建立一个目录为该项目的专用目录,目录下存放所有相关的文件文件的路径不能包含汉字,不能用空格保存的文件名不要和库文件名相同,如and2、7402等等注意4.将当前设计设置为工程文件将当前设计设置为工程文件新建一个Project4.将当前设计设置为工程文件将当前设计设置为工程文件新建一个5.编译Compile按下若有错误->双击Message栏中的红字5.编译Compile按下原理图输入设计方法课件正确注意:此时菜单栏中出现了Processing选项编译器网表cnf数据库建库逻辑综合逻辑分割适配rpt时序仿真网表文件snf装配正确注意:此时菜单栏中出现了Processing选项编译器网时序仿真与功能仿真时序仿真与功能仿真编译器网表cnf数据库建库功能仿真网表文件snf编译器网表cnf数据库建库功能仿真网表文件snf6.建立仿真文件创建仿真波形文件6.建立仿真文件创建仿真波形文件注意,波形文件(scf)的名称一定要与对应的原理图文件的名称(gdf)相同注意,波形文件(scf)的名称一定要与对应的原理图文件的名称原理图输入设计方法课件12341234原理图输入设计方法课件对单个输入端子设置波形波形为低电平波形为高电平波形为不确定态波形为高阻态波形反相为波形赋时钟值为波形赋计数器值对单个输入端子设置波形波形为低电平波形为高电平波形为不确定态对成组输入端子设置波形为群组信号赋值怎样合组?对成组输入端子设置波形为群组信号赋值怎样合组?7.启动仿真按下仿真按钮7.启动仿真按下仿真按钮设置仿真栅格单位的意义仿真栅格单位是设置时钟周期的最小单位,即时钟周期最小等于栅格单位,最大等于栅格单位的倍数。P46(思考题:如何设置GridSize?时钟信号周期如何设置?)仿真栅格单位GridSize:

规定每个栅格的最小时间单位,时间值显示在每个栅格竖线的上方。设置仿真栅格单位的意义仿真栅格单位是设置时钟周期的最小单位,GridSizeOptions->Gridsize输入网格值,默认100nsGridSizeOptions->输入网格值,默认100n设置仿真终止时间的意义仿真终止时间EndTime:规定何时终止施加输入向量。系统默认为1us,对简单逻辑电路足够了,但复杂电路需要仿真的时间远远超过1us,要人工重新设置。

(如何设置EndTime?)设置仿真终止时间的意义仿真终止时间EndTime:规定EndTimeFile->EndTime输入仿真截止时间,默认1usEndTimeFile->输入仿真截止时间,默认1us

设置观察时间范围的意义观察时间范围TimeRange:规定仿真波形的可观察范围,要求TimeRange<=EndTime。(如何设置TimeRange

?)设置观察时间范围的意义观察时间范围TimeRange:规TimeRangeView->TimeRange输入可见的时间范围TimeRangeView->输入可见的时间范围8.选择器件8.选择器件再次编译!再次编译!9.引线端子适配按下9.引线端子适配按下原理图输入设计方法课件原理图输入设计方法课件分配引脚方法一:鼠标拖动分配引脚方法一:鼠标拖动方法二:锁定方法Assign->Pin/Location/Chip方法二:锁定方法原理图输入设计方法课件注意分配引线端子后一定要重新编译同理,对原理图做任何修改后,也一定要重新编译注意分配引线端子后一定要重新编译同理,对原理图做任何修改后,原理图输入设计方法课件10.时序仿真和延时分析10.时序仿真和延时分析11.器件编程(下载)11.器件编程(下载)12.器件测试GW48系列实验开发系统12.器件测试GW48系列实验开发系统创建自己的元件首先先检查自己的元件有无错误Save&Check创建自己的元件首先先检查自己的元件有无错误3.21位全加器设计1位加法器的功能:实现两个1位二进制数相加半加器全加器只考虑本位两个一位二进制数A和B相加,而不考虑低位进位既有本位两个一位二进制数A和B相加,又有低位进位Ci3.21位全加器设计1位加法器的功能:实现两个1位二进1位半加器的真值表ABSCo0000011010101101表中的A和B分别表示两个相加的一位二进制数,S是本位和,Co是进位位。1位半加器的真值表ABSCo0000011010101101S=AB+AB=A+BCo=ABS=AB+AB=A+B1位全加器的定义全加:将本位两个1位二进制数和来自低位的进位位相加令A和B分别为两个相加的1位二进制数,Ci是来自低位的进位位;S是本位和;Co是进位位。1位全加器的定义全加:将本位两个1位二进制数和来自低位的进位全加器的真值表CiABSCo0000000110010100110110010101011100111111全加器的真值表CiABSCo0000000110010100S的卡诺图S的卡诺图原理图输入设计方法课件Co的卡诺图

Co的卡诺图原理图输入设计方法课件原理图底层电路设计原理图由若干个元件组合而成,当有些元件是多个简单元件的组合电路时,为了精确仿真组合元件的特性,必须单独设计组合元件的原理图设计,这种设计称为底层电路设计。原理图底层电路设计原理图由若干个元件组合而成,当有些元件是多原理图顶层电路设计当所有的底层元件多设计完毕并生成包装好的单一元件后,再设计一个总原理图,把所有的底层元件调出来,进行导线连接、仿真、编程下载,这种设计称为顶层电路设计。原理图顶层电路设计当所有的底层元件多设计完毕并生成包装好的单分层设计的好处增强设计的可读性,避免在设计中出现大量复杂的组合逻辑影响检查和测试效率有利于进行模块复制,需要复制的电路模块可以先封装成底层元件,再在顶层设计中重复调用分层设计的好处分层设计的要点在底层文件设计完成后执行File|CreateDefaultSymbol命令并编译在顶层文件中,调用底层设计时分层设计的要点分层设计的要点在底层文件设计完成后执行File|CreateDefaultSymbol命令并编译在顶层文件中,调用底层设计时顶层文件不能与底层文件名字相同分层设计的要点原理图输入设计方法课件仿真的要求:所有输入情况都要考虑到,即按照真值表设置仿真波形仿真的要求:所有输入情况都要考虑到,即按照真值表设置仿真波形技巧:选中合组的引脚,单击右键,选择EnterGroup技巧:选中合组的引脚,单击右键,选择EnterGroupCiABSCo0000000110010100110110010101011100111111CiABSCo000000011001010011011003.3数字电子钟设计3.3.160进制计数器设计1、六进制计数器设计(1)数据选择器设计2选1的数据选择器的输入输出引脚如下:控制线1条定义为s;数据输入线2条定义为d0,d1;数据输出线1条定义为y;其真值表如表3-2所示:表3-22选1数据选择器真值表控制线输出线sy0d01d13.3数字电子钟设计3.3.160进制计数器设计1设计电路图如图3-28所示:图3-282选1数据选择器电路图设计电路图如图3-28所示:图3-282选1数据选择器(2)六进制计数器的真值表

上周期输出控制线输入值输出q2q1q0clkclrnloadend2d1d0q2q1q0ⅹⅹⅹⅹ0ⅹⅹⅹⅹⅹ000ⅹⅹⅹ↑10ⅹabcabcq2q1q0↑110ⅹⅹⅹq2q1q0000↑111ⅹⅹⅹ001001↑111ⅹⅹⅹ010010↑111ⅹⅹⅹ011011↑111ⅹⅹⅹ100100↑111ⅹⅹⅹ101101↑111ⅹⅹⅹ000(2)六进制计数器的真值表上周期输出控制线输入值输出q2(3)6进制计数器设计利用数字电路设计方法可设计出各触发器的D输入端的驱动方程分别为:(3)6进制计数器设计利用数字电路设计方法可设计出各触发器根据以上驱动方程可设计出图3-29所示的电路图。根据以上驱动方程可设计出图3-29所示的电路图。(4)仿真6进制计数器建立波形仿真文件,设置输入信号,如图3-30所示,可以看出,输出信号符合设计要求。(4)仿真6进制计数器2.六十进制计数器设计(1)六十进制计数器的真值表控制端十位预置个位预置十位输出个位输出clkclrnldnendb[2..0]da[3..0]qb[2..0]qa[3..0]ⅹ0ⅹⅹⅹⅹ00↑10ⅹbaba↑110ⅹⅹq(不变)↑111ⅹⅹq=q+1(最高数到59)2.六十进制计数器设计(1)六十进制计数器的真值表控制(2)六十进制计数器设计(2)六十进制计数器设计(3)仿真六十进制计数器(3)仿真六十进制计数器3.3.2十二进制进制计数器设计1、十二进制计数器真值表控制端十位预置个位预置十位输出个位输出clkclrnldnendbda[3..0]qbqa[3..0]ⅹ0ⅹⅹⅹⅹ00↑10ⅹbaba↑110ⅹⅹq(不变)↑111ⅹⅹq=q+13.3.2十二进制进制计数器设计1、十二进制计数器真2.十二进制计数器设计(1)2进制计数器的设计2.十二进制计数器设计(1)2进制计数器的设计运用10进制计数器74160器件与2进制计数器可以完成12进制计数器的设计(2)十二进制计数器设计运用10进制计数器74160器件与2进制计数3.仿真12进制计数器3.仿真12进制计数器3.3.3数字电子钟顶层电路设计1.数字电子钟顶层电路设计时针十位时针个位分针十位分针个位秒针十位秒针个位数据预置端hbha[3..0]mb[2..0]ma[3..0]sb[2..0]sa[3..0]时钟输出端qhbqha[3..0]qmb[2..0]qma[3..0]qsb[2..0]qsa[3..0]计数器进制12进制计数器60进制计数器60进制计数器显示数字00--1100--5900--593.3.3数字电子钟顶层电路设计1.数字电子钟顶层电路原理图输入设计方法课件2.仿真数字钟2.仿真数字钟3.4利用LPM兆功能块的电路设计3.4.1常用LPM兆功能块分类宏单元注释门单元函数Lpm_and参数化与门Lpm_bustri参数化三态缓冲器Lpm_clshift参数化组合逻辑移位器Lpm_constant参数化常数产生器Lpm_decode参数化解码器Lpm_inv参数化反向器Lpm_mux参数化多路选择器busmux参数化总线选择器mux多路选择器Lpm_or参数化或门Lpm_xor参数化异或门3.4利用LPM兆功能块的电路设计3.4.1常用LPM算术运算函数Lpm_abs参数化绝对值运算Lpm_add_sub参数化加/减法器Lpm_compare参数化比较器Lpm_counter参数化计数器Lpm_mult参数化乘法器存储函数Lpm_ff参数化D触发器Lpm_latch参数化锁存器Lpm_ram_dq输入/输出分开的参数化RAMLpm_ram_io输入/输出复用的参数化RAMLpm_rom参数化ROMLpm_shiftreg参数化移位寄存器用户定制函数Csfifo参数化先进先出队列Csdpram参数化双口RAM算Lpm_abs参数化绝对值运算Lpm_add_sub参数化3.4.2基于LPM-COUNTER的数据分频器设计data[]:置入计数器的并行数据输入。clock:上升沿触发计数时钟输入。clk_en:高电平使能所有同步操作输入信号。cnt_en:计数使能控制,但不影响其他控制信号,如sload、sset、sclr等。updown:计数器加减控制输入。cin:最低进位输入aclr:异步清零输入aset:异步置位输入sload:在clk的上升沿同步并行数据加载输入。Q[]:计数输出。cout:计数进位或借位输出。LPM_WIDTH:计数器位宽。3.4.2基于LPM-COUNTER的数据分频器设计da原理图输入设计方法课件原理图输入设计方法课件3.4.3制作一个兆功能模块3.4.3制作一个兆功能模块原理图输入设计方法课件原理图输入设计方法课件原理图输入设计方法课件3.5波形输入设计3.5.1创建波形设计新文件并指定工程名称3.5波形输入设计3.5.1创建波形设计新文件并指定工3.5.2创建输入、输出和隐埋节点3.5.2创建输入、输出和隐埋节点NodeNameDefaultValueI/OTypeNodeTypeSecondaryInputsspeedxBuriedMachineReset=resetClock=clkGet_ticket0OutputPinRegisteredClock=clkNodeNameDefaultValueI/OType3.5.3编辑隐埋状态机节点波形(1)在菜单栏中选择Option/GridSize命令,弹出GridSize对话框,在其中输入“30.0ns”,即把网格尺寸设置为30ns。(2)单击“Speed”节点的“Value”区,选中它的整个波形。(3)在菜单栏中选择Edit/Overwrite/StateName命令,或是直接单击波形编辑器窗口左侧的按钮,这时会弹出OverwriteStateName对话框,如图3-46所示。3.5.3编辑隐埋状态机节点波形(1)在菜单栏中选择(4)在StateName文本框中输入“legal”,单击OK按钮,整个波形都被状态名“legal”覆盖。(5)结合波形编辑器窗口左侧的按钮和窗口滚动条使波形300ns~540ns之间的区域显示出来。(6)单击波形编辑器窗口左侧的波形编辑按钮,鼠标指针的形状也发生了相应变化。参考波形编辑器窗口内上方的“时间”区域,在“Speed”节点波形的300ns处按下鼠标,拖动到540ns处松开,这之间的区域被选中,同时(OverwritestateName)对话框自动弹出。(7)在(statename)文本框中输入“warning”,单击OK按钮确认,300ns-540ns之间的波形区域被状态名“warning”所覆盖。(4)在StateName文本框中输入“legal”,单击(8)重复步骤(5)-(7),用状态名“ticket”覆盖540ns-660ns之间的波形区域。(9)单击波形编辑器窗口左侧的按钮,可以查看全部波形区域,如图3-47所示。(8)重复步骤(5)-(7),用状态名“ticket”覆盖53.5.4编辑输入和输出节点波形(1)单击波形编辑器窗口左侧的波形编辑按钮后,用鼠标指针拖动选中“accel_in”节点波形中270ns-330ns之间的区域,松开鼠标左健后这一段区域会自动变成高电平(与初始的低电平相对)。当状态机“speed”处于“legal”状态时遇到“accel_in”的高电平,会转变成“warning”状态,表示第1次超速。(2)重复步骤(1)中的操作,将“accel_in”节点波形中510ns-570ns之间的区域也变成高电平,当状态机“speed”处于“warning”状态时遇到“accel_in”的高电平,会转变成“ticket”状态,表示由于第2次超速而得到罚单3.5.4编辑输入和输出节点波形(1)单击波形编辑器窗(3)按下ESC键,或是单击(波形编辑器)窗口左侧的按钮,使鼠标指针恢复选择状态,拖动鼠标选中“accel_in”节点波形国630ns-690ns之间的区域,选择菜单栏中的(Edit)/(overqrite)/(undefined(x))命令,或直接单击(波形编辑器)窗口左侧的按钮,使这一段变成不定状态。(4)“reset”节点波形不用作任何修改,保持为低电平。(5)选中“clk”节点的整个波形,方法可以是单击“clk节点的“Name”、“Type”和“Value”中任何一个区域。选择菜单栏中的Edit/Overwrite/clock命令,或者直接单击波形编辑窗口左侧的按钮,这时将会弹出OverwriteClock对话框如图3-48所示,在MultipliedBy对话框中输入“2”,单击OK按钮确认。(3)按下ESC键,或是单击(波形编辑器)窗口左侧的按钮(6)编辑输出节点“get_ticket”的波形,使其540ns~660ns之间的区域变为高电平,它对应着状态机“Speed”的“ticket”状态,表示得到罚单,至此所有节点波形都已编辑完成,如图3-49所示。(6)编辑输出节点“get_ticket”的波形,使其543.5.5查看波形情况(1)在鼠标指针处于选择状态时,点击波形区域的0ns处,或者拖动参考柄,将指针移到波形的起点处。(2)按键盘的“”键,可使参考指针跳至下一个逻辑电平跳变沿处,也可通过选择菜单栏中的Utilities/FindNextTransition命令来实现本步操作。(3)重复移动参考指针到每个跳变沿处,跳变沿的逻辑电平值或状态名将显示在Value区。3.5.5查看波形情况3.5.6保存文件并检查错误在菜单栏中选择File/Project/Save&Check命令保存当前文件并检查语法错误,系统会自动启动编译器并给出检查报告。检查通过后关闭编译器,返回文本编辑器窗口。3.5.7创建默认的功能模块在菜单栏中选择File/CreateDefaultSymbol命令,将当前设计文件创建成同名的一个功能模块3.5.6保存文件并检查错误第三章原理图输入设计方法EDA第三章原理图输入设计方法EDA3.1原理图设计方法原理图编辑流程准备:安装max+plusII并进入该环境3.1原理图设计方法原理图编辑流程STEP2:输入设计项目原理图/VHDL文本代码STEP3:存盘,注意VHDL文件取名!STEP4:将设计项目设置成ProjectSTEP8:选择目标器件

STEP12:硬件测试STEP9:引脚锁定并编译STEP7:功能仿真和波形分析STEP6:建立仿真波形文件STEP5:启动编译STEP11:编程下载/配置STEP1:建立工作库文件夹STEP10:时序仿真和延时分析STEP2:输入设计项目STEP3:存盘,注意STEP4:将1.建立一个新的原理图文件File>New选择GraphicEditorfile(gdf

格式文件)1.建立一个新的原理图文件File>New2.输入元件Max+plusII的内建函数较大规模器件库——mega_lpm,一些比较大的并可做参数设置的元件,使用中需要对其参数进行设置,称为参数可设置兆功能库.中规模器件库——mf,数字电路中一些中规模器件库,如74系列逻辑器件。基本元件库——prim,常用基本元件库,如AND、OR、VCC、GND、INPUT、OUTPUT2.输入元件Max+plusII的内建函数较大规模器件库——调出符号双击空白处单击右键->entersymbol调出符号双击空白处可以直接输入符号名,如input,and2,7474等符号库,第一行是用户的工作库(WorkLibrary)路径。点击任一个库的路径,都会在SymbolFiles下显示所有的符号文件名。最后点击“ok”可以直接输入符号名,如input,and2,7474等符号库元件的编辑移动旋转右键菜单Edit菜单删除复制简单的方法,“ctrl+移动”元件的编辑移动简单的方法:将两个元件的引脚处对齐,拖动一个元件,自动形成连线用鼠标画两个引脚的连线不能重叠连线不能进入元件的虚线框内部按下橡皮筋按钮连线简单的方法:按下橡皮筋按钮连线引脚的命名双击引脚名注意第一个字符必须为英文,以后可用下划线、数字等组合下划线前后要有字母或数字“/”“-”“%”都是非法的大小写的意义一样引脚的命名双击引脚名总线先画一条线->单击右键->Linestyle->粗线引脚名或总线名的规则为****[m..n]或者[n..m],其中m>n≥0,最多可以代表256个引脚名。一般采用[n-1..0]。总线先画一条线->单击右键->Linestyle->粗线节点引脚间的连线(细线)可以称为节点,节点是可以命名的,命名规则与引脚相同。如果不想连线太多,可以对本质上相连的节点取一致的名称选中一条细线,当有小■闪烁时,表示可以进行命名节点引脚间的连线(细线)可以称为节点,节点是可以命名的,命名3.保存文件注意最上面的标题栏:有可能不是Untitled1这里是指示环境的当前设计项目注意此时的文件名“Untitled1”3.保存文件注意最上面的标题栏:注意此时的文件名原理图输入设计方法课件注意为了方便同一个项目下的文件查找方便,最好事先特别建立一个目录为该项目的专用目录,目录下存放所有相关的文件文件的路径不能包含汉字,不能用空格保存的文件名不要和库文件名相同,如and2、7402等等注意4.将当前设计设置为工程文件将当前设计设置为工程文件新建一个Project4.将当前设计设置为工程文件将当前设计设置为工程文件新建一个5.编译Compile按下若有错误->双击Message栏中的红字5.编译Compile按下原理图输入设计方法课件正确注意:此时菜单栏中出现了Processing选项编译器网表cnf数据库建库逻辑综合逻辑分割适配rpt时序仿真网表文件snf装配正确注意:此时菜单栏中出现了Processing选项编译器网时序仿真与功能仿真时序仿真与功能仿真编译器网表cnf数据库建库功能仿真网表文件snf编译器网表cnf数据库建库功能仿真网表文件snf6.建立仿真文件创建仿真波形文件6.建立仿真文件创建仿真波形文件注意,波形文件(scf)的名称一定要与对应的原理图文件的名称(gdf)相同注意,波形文件(scf)的名称一定要与对应的原理图文件的名称原理图输入设计方法课件12341234原理图输入设计方法课件对单个输入端子设置波形波形为低电平波形为高电平波形为不确定态波形为高阻态波形反相为波形赋时钟值为波形赋计数器值对单个输入端子设置波形波形为低电平波形为高电平波形为不确定态对成组输入端子设置波形为群组信号赋值怎样合组?对成组输入端子设置波形为群组信号赋值怎样合组?7.启动仿真按下仿真按钮7.启动仿真按下仿真按钮设置仿真栅格单位的意义仿真栅格单位是设置时钟周期的最小单位,即时钟周期最小等于栅格单位,最大等于栅格单位的倍数。P46(思考题:如何设置GridSize?时钟信号周期如何设置?)仿真栅格单位GridSize:

规定每个栅格的最小时间单位,时间值显示在每个栅格竖线的上方。设置仿真栅格单位的意义仿真栅格单位是设置时钟周期的最小单位,GridSizeOptions->Gridsize输入网格值,默认100nsGridSizeOptions->输入网格值,默认100n设置仿真终止时间的意义仿真终止时间EndTime:规定何时终止施加输入向量。系统默认为1us,对简单逻辑电路足够了,但复杂电路需要仿真的时间远远超过1us,要人工重新设置。

(如何设置EndTime?)设置仿真终止时间的意义仿真终止时间EndTime:规定EndTimeFile->EndTime输入仿真截止时间,默认1usEndTimeFile->输入仿真截止时间,默认1us

设置观察时间范围的意义观察时间范围TimeRange:规定仿真波形的可观察范围,要求TimeRange<=EndTime。(如何设置TimeRange

?)设置观察时间范围的意义观察时间范围TimeRange:规TimeRangeView->TimeRange输入可见的时间范围TimeRangeView->输入可见的时间范围8.选择器件8.选择器件再次编译!再次编译!9.引线端子适配按下9.引线端子适配按下原理图输入设计方法课件原理图输入设计方法课件分配引脚方法一:鼠标拖动分配引脚方法一:鼠标拖动方法二:锁定方法Assign->Pin/Location/Chip方法二:锁定方法原理图输入设计方法课件注意分配引线端子后一定要重新编译同理,对原理图做任何修改后,也一定要重新编译注意分配引线端子后一定要重新编译同理,对原理图做任何修改后,原理图输入设计方法课件10.时序仿真和延时分析10.时序仿真和延时分析11.器件编程(下载)11.器件编程(下载)12.器件测试GW48系列实验开发系统12.器件测试GW48系列实验开发系统创建自己的元件首先先检查自己的元件有无错误Save&Check创建自己的元件首先先检查自己的元件有无错误3.21位全加器设计1位加法器的功能:实现两个1位二进制数相加半加器全加器只考虑本位两个一位二进制数A和B相加,而不考虑低位进位既有本位两个一位二进制数A和B相加,又有低位进位Ci3.21位全加器设计1位加法器的功能:实现两个1位二进1位半加器的真值表ABSCo0000011010101101表中的A和B分别表示两个相加的一位二进制数,S是本位和,Co是进位位。1位半加器的真值表ABSCo0000011010101101S=AB+AB=A+BCo=ABS=AB+AB=A+B1位全加器的定义全加:将本位两个1位二进制数和来自低位的进位位相加令A和B分别为两个相加的1位二进制数,Ci是来自低位的进位位;S是本位和;Co是进位位。1位全加器的定义全加:将本位两个1位二进制数和来自低位的进位全加器的真值表CiABSCo0000000110010100110110010101011100111111全加器的真值表CiABSCo0000000110010100S的卡诺图S的卡诺图原理图输入设计方法课件Co的卡诺图

Co的卡诺图原理图输入设计方法课件原理图底层电路设计原理图由若干个元件组合而成,当有些元件是多个简单元件的组合电路时,为了精确仿真组合元件的特性,必须单独设计组合元件的原理图设计,这种设计称为底层电路设计。原理图底层电路设计原理图由若干个元件组合而成,当有些元件是多原理图顶层电路设计当所有的底层元件多设计完毕并生成包装好的单一元件后,再设计一个总原理图,把所有的底层元件调出来,进行导线连接、仿真、编程下载,这种设计称为顶层电路设计。原理图顶层电路设计当所有的底层元件多设计完毕并生成包装好的单分层设计的好处增强设计的可读性,避免在设计中出现大量复杂的组合逻辑影响检查和测试效率有利于进行模块复制,需要复制的电路模块可以先封装成底层元件,再在顶层设计中重复调用分层设计的好处分层设计的要点在底层文件设计完成后执行File|CreateDefaultSymbol命令并编译在顶层文件中,调用底层设计时分层设计的要点分层设计的要点在底层文件设计完成后执行File|CreateDefaultSymbol命令并编译在顶层文件中,调用底层设计时顶层文件不能与底层文件名字相同分层设计的要点原理图输入设计方法课件仿真的要求:所有输入情况都要考虑到,即按照真值表设置仿真波形仿真的要求:所有输入情况都要考虑到,即按照真值表设置仿真波形技巧:选中合组的引脚,单击右键,选择EnterGroup技巧:选中合组的引脚,单击右键,选择EnterGroupCiABSCo0000000110010100110110010101011100111111CiABSCo000000011001010011011003.3数字电子钟设计3.3.160进制计数器设计1、六进制计数器设计(1)数据选择器设计2选1的数据选择器的输入输出引脚如下:控制线1条定义为s;数据输入线2条定义为d0,d1;数据输出线1条定义为y;其真值表如表3-2所示:表3-22选1数据选择器真值表控制线输出线sy0d01d13.3数字电子钟设计3.3.160进制计数器设计1设计电路图如图3-28所示:图3-282选1数据选择器电路图设计电路图如图3-28所示:图3-282选1数据选择器(2)六进制计数器的真值表

上周期输出控制线输入值输出q2q1q0clkclrnloadend2d1d0q2q1q0ⅹⅹⅹⅹ0ⅹⅹⅹⅹⅹ000ⅹⅹⅹ↑10ⅹabcabcq2q1q0↑110ⅹⅹⅹq2q1q0000↑111ⅹⅹⅹ001001↑111ⅹⅹⅹ010010↑111ⅹⅹⅹ011011↑111ⅹⅹⅹ100100↑111ⅹⅹⅹ101101↑111ⅹⅹⅹ000(2)六进制计数器的真值表上周期输出控制线输入值输出q2(3)6进制计数器设计利用数字电路设计方法可设计出各触发器的D输入端的驱动方程分别为:(3)6进制计数器设计利用数字电路设计方法可设计出各触发器根据以上驱动方程可设计出图3-29所示的电路图。根据以上驱动方程可设计出图3-29所示的电路图。(4)仿真6进制计数器建立波形仿真文件,设置输入信号,如图3-30所示,可以看出,输出信号符合设计要求。(4)仿真6进制计数器2.六十进制计数器设计(1)六十进制计数器的真值表控制端十位预置个位预置十位输出个位输出clkclrnldnendb[2..0]da[3..0]qb[2..0]qa[3..0]ⅹ0ⅹⅹⅹⅹ00↑10ⅹbaba↑110ⅹⅹq(不变)↑111ⅹⅹq=q+1(最高数到59)2.六十进制计数器设计(1)六十进制计数器的真值表控制(2)六十进制计数器设计(2)六十进制计数器设计(3)仿真六十进制计数器(3)仿真六十进制计数器3.3.2十二进制进制计数器设计1、十二进制计数器真值表控制端十位预置个位预置十位输出个位输出clkclrnldnendbda[3..0]qbqa[3..0]ⅹ0ⅹⅹⅹⅹ00↑10ⅹbaba↑110ⅹⅹq(不变)↑111ⅹⅹq=q+13.3.2十二进制进制计数器设计1、十二进制计数器真2.十二进制计数器设计(1)2进制计数器的设计2.十二进制计数器设计(1)2进制计数器的设计运用10进制计数器74160器件与2进制计数器可以完成12进制计数器的设计(2)十二进制计数器设计运用10进制计数器74160器件与2进制计数3.仿真12进制计数器3.仿真12进制计数器3.3.3数字电子钟顶层电路设计1.数字电子钟顶层电路设计时针十位时针个位分针十位分针个位秒针十位秒针个位数据预置端hbha[3..0]mb[2..0]ma[3..0]sb[2..0]sa[3..0]时钟输出端qhbqha[3..0]qmb[2..0]qma[3..0]qsb[2..0]qsa[3..0]计数器进制12进制计数器60进制计数器60进制计数器显示数字00--1100--5900--593.3.3数字电子钟顶层电路设计1.数字电子钟顶层电路原理图输入设计方法课件2.仿真数字钟2.仿真数字钟3.4利用LPM兆功能块的电路设计3.4.1常用LPM兆功能块分类宏单元注释门单元函数Lpm_and参数化与门Lpm_bustri参数化三态缓冲器Lpm_clshift参数化组合逻辑移位器Lpm_constant参数化常数产生器Lpm_decode参数化解码器Lpm_inv参数化反向器Lpm_mux参数化多路选择器busmux参数化总线选择器mux多路选择器Lpm_or参数化或门Lpm_xor参数化异或门3.4利用LPM兆功能块的电路设计3.4.1常用LPM算术运算函数Lpm_abs参数化绝对值运算Lpm_add_sub参数化加/减法器Lpm_compare参数化比较器Lpm_counter参数化计数器Lpm_mult参数化乘法器存储函数Lpm_ff参数化D触发器Lpm_latch参数化锁存器Lpm_ram_dq输入/输出分开的参数化RAMLpm_ram_io输入/输出复用的参数化RAMLpm_rom参数化ROMLpm_shiftreg参数化移位寄存器用户定制函数Csfifo参数化先进先出队列Csdpram参数化双口RAM算Lpm_abs参数化绝对值运算Lpm_add_sub参数化3.4.2基于LPM-COUNTER的数据分频器设计data[]:置入计数器的并行数据输入。clock:上升沿触发计数时钟输入。clk_en:高电平使能所有同步操作输入信号。cnt_en:计数使能控制,但不影响其他控制信号,如sload、sset、sclr等。updown:计数器加减控制输入。cin:最低进位输入aclr:异步清零输入aset:异步置位输入sload:在clk的上升沿同步并行数据加载输入。Q[]:计数输出。cout:计数进位或借位输出。LPM_WIDTH:计数器位宽。3.4.2基于LPM-COUNTER的数据分频器设计da原理图输入设计方法课件原理图输入设计方法课件3.4.3制作一个兆功能模块3.4.3制作一个兆功能模块原理图输入设计方法课件原理图输入设计方法课件原理图输入设计方法课件3.5波形输入设计3.5.1创建波形设计新文件并指定工程名称3.5波形输入设计3.5.1创建波形设计新文件并指定工3.5.2创建输入、输出和隐埋节点3.5.2创建输入、输出和隐埋节点NodeNameDefaultValueI/OTypeNodeTypeSecondaryInputsspeedxBuriedMachineReset=resetClock=clkGet_ticket0OutputPinRegisteredClock=clkNodeNameDefaultValueI/OType3.5.3编辑隐埋状态机节点波形(1)在菜单栏中选择Option/GridSize命令,弹出GridSize对话框,在其中输入“30.0ns”,即把网格尺寸设置为30ns。(2)单击“Speed”节点的“Value”区,选中它的整个波形。(3)在菜单栏中选择Ed

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论