关闭

关闭

封号提示

内容

首页 EDA复习题答案.doc

EDA复习题答案.doc

EDA复习题答案.doc

上传者: 遺莣那段情 2017-10-19 评分 5 0 145 20 660 暂无简介 简介 举报

简介:本文档为《EDA复习题答案doc》,可适用于IT/计算机领域,主题内容包含EDA复习题答案EDA复习题一、单项选择题:(分)(大规模可编程器件主要有FPGA、CPLD两类下列对CPLD结构与工作原理的描述中正确的是C。AC符等。

EDA复习题答案EDA复习题一、单项选择题:(分)(大规模可编程器件主要有FPGA、CPLD两类下列对CPLD结构与工作原理的描述中正确的是C。ACPLD即是现场可编程逻辑器件的英文简称BCPLD是基于查找表结构的可编程逻辑器件C早期的CPLD是从GAL的结构扩展而来D在Altera公司生产的器件中FLEXK系列属CPLD结构(综合是EDA设计流程的关键步骤综合就是把抽象设计层次中的一种表示转化成另一种表示的过程在下面对综合的描述中C是错误的。A综合就是将电路的高级语言转化成低级的可与FPGACPLD的基本结构相映射的网表文件B综合可理解为将软件描述与给定的硬件结构用电路网表文件表示的映射过程并且这种映射关系不是唯一的C综合是纯软件的转换过程与器件硬件结构无关D为实现系统的速度、面积、性能的要求需要对综合加以约束称为综合约束。(IP核在EDA技术和开发中具有十分重要的地位IP分软IP、固IP、硬IP下列所描述的IP核中对于硬IP的正确描述为B。A提供用VHDL等硬件描述语言描述的功能块但不涉及实现该功能块的具体电路B提供设计的最终产品掩膜C以网表文件的形式提交用户完成了综合的功能块D都不是。(基于EDA软件的FPGACPLD设计流程为:原理图HDL文本输入B综合适配编程下载硬件测试。功能仿真时序仿真逻辑综合配置引脚锁定A(BCD(下面对利用原理图输入设计方法进行数字电路系统设计那一种说法是不正确的B。A原理图输入设计方法直观便捷但不适合完成较大规模的电路系统设计B原理图输入设计方法无法对电路进行功能描述C原理图输入设计方法一般是一种自底向上的设计方法D原理图输入设计方法也可进行层次化设计。(在VHDL语言中下列对进程(PROCESS)语句的语句结构及语法规则的描述中正确的是A。APROCESS为一无限循环语句敏感信号发生更新时启动进程执行完成后等待下一次进程启动。B敏感信号参数表中应列出进程中使用的所有输入信号C进程由说明部分、结构体部分、和敏感信号参数表三部分组成D当前进程中声明的信号也可用于其他进程。(嵌套使用IF语句其综合结果可实现A。A带优先级且条件相与的逻辑电路B条件相或的逻辑电路C三态控制电路D双向控制电路。(电子系统设计优化主要考虑提高资源利用率减少功耗即面积优化以及提高运行速度即速度优化指出下列那种方法不属于速度优化:A。A资源共享B流水线设计C寄存器配平D关键路径法(在一个VHDL设计中idata是一个信号数据类型为integer下面哪个赋值语句是不正确的D。Aidata<=##Bidata<=Cidata<=#A#EDidata<=B##下列EDA软件中哪一不具有时序仿真功能:D。AMaxPlusIIBQuartusIICModelSimCSynplifyD单项选择题:(分)可编程器件主要有FPGA、CPLD两类下列对CPLD结构与工作原理的描述中正确的是CD。ACPLD是基于查找表结构的可编程逻辑器件BCPLD即是现场可编程逻辑器件的英文简称C早期的CPLD是从GAL的结构扩展而来D在Xilinx公司生产的器件中XC系列属CPLD结构(综合是EDA设计流程的关键步骤综合就是把抽象设计层次中的一种表示转化成另一种表示的过程在下面对综合的描述中A是正确的。A综合就是将电路的高级语言转化成低级的可与FPGACPLD的基本结构相映射的网表文件B综合是纯软件的转换过程与器件硬件结构无关C为实现系统的速度、面积、性能的要求需要对综合加以约束称为强制综合。D综合可理解为将软件描述与给定的硬件结构用电路网表文件表示的映射过程并且这种映射关系是唯一的(IP核在EDA技术和开发中具有十分重要的地位IP分软IP、固IP、硬IP下列所描述的IP核中对于硬IP的正确描述为D。A提供用VHDL等硬件描述语言描述的功能块但不涉及实现该功能块的具体电路B提供设计的最总产品模型库C以网表文件的形式提交用户完成了综合的功能块D都不是。(基于EDA软件的FPGACPLD设计流程为:功能仿真D适配时序仿真编程下载硬件测试。原理图HDL文本输入时序仿真逻辑综合配置引脚锁定A(BCD(下面对利用原理图输入设计方法进行数字电路系统设计那一种说法是不正确的D。A原理图输入设计方法直观便捷但不适合完成较大规模的电路系统设计B原理图输入设计方法一般是一种自底向上的设计方法C原理图输入设计方法无法对电路进行功能描述D原理图输入设计方法也可进行层次化设计。(在VHDL语言中下列对进程(PROCESS)语句的语句结构及语法规则的描述中不正确的是D。APROCESS为一无限循环语句敏感信号发生更新时启动进程执行完成后等待下一次进程启动。B敏感信号参数表中不一定要列出进程中使用的所有输入信号C进程由说明部分、结构体部分、和敏感信号三部分组成D当前进程中声明的变量不可用于其他进程。(嵌套使用IF语句其综合结果可实现A。A带优先级且条件相与的逻辑电路B条件相或的逻辑电路C三态控制电路D双向控制电路。(电子系统设计优化主要考虑提高资源利用率减少功耗即面积优化以及提高运行速度即速度优化指出下列那种方法不属于速度优化:B。A流水线设计B串行化D关键路径法D寄存器配平(在一个VHDL设计中idata是一个信号数据类型为integer数据范围to下面哪个赋值语句是正确的C。Aidata:=Bidata<=#A#Cidata<=##EDidata:=B##下列EDA软件中哪一不具有逻辑综合功能:B。EMaxPlusIIFModelSimDQuartusIIDSynplify一、单项选择题,,分(IP核在EDA技术和开发中具有十分重要的地位提供用VHDL等硬件描述语言描述的功能块但不涉及实现该功能块的具体电路的IP核为。DA瘦IPB固IPC胖IPD都不是(综合是EDA设计流程的关键步骤在下面对综合的描述中是错误的。DA综合就是把抽象设计层次中的一种表示转化成另一种表示的过程B综合就是将电路的高级语言转化成低级的可与FPGACPLD的基本结构相映射的网表文件C为实现系统的速度、面积、性能的要求需要对综合加以约束称为综合约束D综合可理解为一种映射过程并且这种映射关系是唯一的即综合结果是唯一的。(大规模可编程器件主要有FPGA、CPLD两类下列对FPGA结构与工作原理的描述中正确的是C。AFPGA全称为复杂可编程逻辑器件BFPGA是基于乘积项结构的可编程逻辑器件C基于SRAM的FPGA器件在每次上电后必须进行一次配置D在Altera公司生产的器件中MAX系列属FPGA结构。(进程中的信号赋值语句其信号更新是C。A按顺序完成B比变量更快完成C在进程的最后完成D都不对。(VHDL语言是一种结构化设计语言一个设计实体(电路模块)包括实体与结构体两部分结构体描述。BA器件外部特性B器件的内部功能C器件的综合约束D器件外部特性与内部功能。(不完整的IF语句其综合结果可实现。AA时序逻辑电路B组合逻辑电路C双向电路D三态控制电路(子系统设计优化主要考虑提高资源利用率减少功耗(即面积优化)以及提高运行速度(即速度优化)指出下列哪些方法是面积优化。B流水线设计资源共享逻辑优化串行化寄存器配平关键路径法ABCD(下列标识符中是不合法的标识符。BAStateBmoonCNotAckDsignall(关于VHDL中的数字请找出以下数字中最大的一个:。AA##B##C##D#E#E(下列EDA软件中哪一个不具有逻辑综合功能:。BAMaxPlusIIBModelSimCQuartusIIDSynplify一、单项选择题:(分)(下列那个流程是正确的基于EDA软件的FPGACPLD设计流程:BA原理图HDL文本输入适配综合功能仿真编程下载硬件测试B原理图HDL文本输入功能仿真综合适配编程下载硬件测试C原理图HDL文本输入功能仿真综合编程下载适配硬件测试D原理图HDL文本输入功能仿真适配编程下载综合硬件测试(综合是EDA设计流程的关键步骤综合就是把抽象设计层次中的一种表示转化成另一种表示的过程在下面对综合的描述中是错误的。CA综合就是将电路的高级语言转化成低级的可与FPGACPLD的基本结构相映射的网表文件B为实现系统的速度、面积、性能的要求需要对综合加以约束称为综合约束C综合是纯软件的转换过程与器件硬件结构无关D综合可理解为将软件描述与给定的硬件结构用电路网表文件表示的映射过程并且这种映射关系不是唯一的。(CPLD的可编程是主要基于什么结构:。DA查找表(LUT)BROM可编程CPAL可编程D与或阵列可编程IP核在EDA技术和开发中具有十分重要的地位以HDL方式提供的IP被称为:。CA硬IPB固IPC软IPD都不是(流水线设计是一种优化方式下列哪一项对资源共享描述正确。CA面积优化方法不会有速度优化效果B速度优化方法不会有面积优化效果C面积优化方法可能会有速度优化效果D速度优化方法可能会有面积优化效果(在VHDL语言中下列对时钟边沿检测描述中错误的是。DAifclk’eventandclk=‘’thenBiffallingedge(clk)thenCifclk’eventandclk=‘’thenDifclk’stableandnotclk=‘’then(状态机编码方式中其中占用触发器较多但其实现比较适合FPGA的应用CA状态位直接输出型编码B顺序编码C一位热码编码D以上都不是(子系统设计优化主要考虑提高资源利用率减少功耗(即面积优化)以及提高运行速度(即速度优化)指出下列那种方法是速度优化。AA流水线设计B资源共享C逻辑优化D串行化(不完整的IF语句其综合结果可实现。AA时序电路B双向控制电路C条件相或的逻辑电路D三态控制电路(在一个VHDL设计中Idata是一个信号数据类型为stdlogicvector试指出下面那个赋值语句是错误的。DAidata<=“”Bidata<=b””Cidata<=X”AB”Didata<=””二、EDA名词解释写出下列缩写的中文(或者英文)含义:(分)CPLD:复杂可编程逻辑器件HDL:硬件描述语言JTAG:联合测试行动小组(边界扫描)ASIC:专用集成电路SOC:片上系统二、EDA名词解释写出下列缩写的中文(或者英文)含义:(分)SOPC:可编程片上系统LUT:查找表JTAG:联合行动测试组GAL:通用阵列逻辑EAB:嵌入式阵列快IP:知识产权(包)HDL:硬件描述语言二、EDA名词解释写出下列缩写的中文(或者英文)含义:(分)LPM参数可定制宏模块库RTL寄存器传输级UART串口(通用异步收发器)ISP在系统编程IEEE电子电气工程师协会ASIC专用集成电路LAB逻辑阵列块二、EDA名词解释写出下列缩写的中文(或者英文)含义:(分)SOC单芯片系统FPGA现场可编程门阵列LUT查找表EDA电子设计自动化Synthesis综合三、VHDL程序填空:(分)下面程序是带异步复位、同步置数和移位使能的位右移移位寄存器的VHDL描述试补充完整。libraryieeeuseIEEESTDLOGICallentitysregbisport(clk,rst:instdlogicload,en:instdlogicdin:inSTDLOGICVECTOR(downto)qb:outstdlogic)endsregbarchitecturebehavofSREGBissignalreg:stdlogicvector(downto)beginprocess(clk,RST,load,en)beginifrst=''then――异步清零reg<=others=>’’elsifclkeventandclk=then――边沿检测ifload=''then――同步置数reg<=dinelsifen=''then――移位使能reg(downto)<=reg(doento)endifendifendprocessqb<=reg――输出最低位endbehav三、VHDL程序填空:(分)下面程序是n输入与门的VHDL描述试补充完整。ieeeuseallentityandnis(n:integer)类属参数声明port(a:instdlogicvector(downto)c:outstdlogic)endbehavofis结构体声明beginprocess()int:stdlogic变量声明beginint:=变量赋初值forIina'length–downtoloop循环判断ifa(i)=''thenint:=''endifendloopc<=输出判断结果endprocessendbehav三、VHDL程序填空:(分)LIBRARYIEEE位分频器程序设计USEIEEESTDLOGICALLUSEIEEESTDLOGICUNSIGNEDALLENTITYPULSEISPORT(CLK:INSTDLOGICD:INSTDLOGICVECTOR(DOWNTO)FOUT:OUTSTDLOGIC)ENDARCHITECTUREoneOFPULSEISSIGNALFULL:STDLOGICBEGINPREG:PROCESS(CLK)VARIABLECNT:STDLOGICVECTOR(DOWNTO)BEGINIFCLKEVENTANDCLK=„THENIFCNT=""THENCNT:=D当CNT计数计满时输入数据D被同步预置给计数器CNTFULL<=''同时使溢出标志信号FULL输出为高电平ELSECNT:=CNT否则继续作加计数FULL<=''且输出溢出标志信号FULL为低电平ENDIFENDIFENDPROCESSPREGPDIV:PROCESS(FULL)VARIABLECNT:STDLOGICBEGINIFFULL'EVENTANDFULL=''THENCNT<=NOTCNT如果溢出标志信号FULL为高电平D触发器输出取反IFCNT=''THENFOUT<=''ELSEFOUT<=''ENDIFENDIFENDPROCESSPDIVEND三、VHDL程序填空:(分)下面程序是一个线,线优先编码器的VHDL描述试补充完整。LIBRARYIEEEUSEIEEESTDLOGICALLENTITYcoderISPORT(din:INSTDLOGICVECTOR(DOWNTO)output:OUTSTDLOGICVECTOR(DOWNTO))ENDcoderARCHITECTUREbehavOFCODERISSIGNALSIN:STDLOGICVECTOR(DOWNTO)BEGINPROCESS(DIN)BEGINIF(din()='')THENSIN<=""ELSIF(din()=)THENSIN<=""ELSIF(din()='')THENSIN<=""ELSIF(din()='')THENSIN<=""ELSIF(din()='')THENSIN<=""ELSIF(din()='')THENSIN<=""ELSIF(din()='')THENSIN<=""ELSIF(din()='')THENSIN<=""ELSIF(din()='')THENSIN<=""ELSESIN<=“”ENDIFENDPROCESSOutput<=sinENDbehav四、VHDL程序改错:(分)仔细阅读下列程序回答问题LIBRARYIEEEUSEIEEESTDLOGICALLENTITYLEDSEGISPORT(A:INSTDLOGICVECTOR(DOWNTO)CLK:INSTDLOGICLEDS:OUTSTDLOGICVECTOR(DOWNTO))ENDLEDSEGARCHITECTUREoneOFLEDSEGISSIGNALTMP:STDLOGICBEGINSYNC:PROCESS(CLK,A)BEGINIFCLK'EVENTANDCLK=''THENTMP<=AENDIFENDPROCESSOUTLED:PROCESS(TMP)BEGINCASETMPISWHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""ENDCASEENDPROCESSENDone在程序中存在两处错误试指出并说明理由:在MAXPlusII中编译时提示的错误为:Error:Line:Filef:uploadedamaxplusiimyprojsledsegvhd:Typeerror:typeinwaveformelementmustbe"stdulogic"Error:Line:Filef:uploadedamaxplusiimyprojsledsegvhd:VHDLsyntaxerror:expectedchoicesincasestatement修改相应行的程序(如果是缺少语句请指出大致的行数):错误行号:程序改为:SIGNALTMP:STDLOGICVECTOR(DOWNTO)错误行号:程序改为:WHEN""=>LEDS<=""WHENOTNERS=>LEDS<=""四、VHDL程序改错:(分)本题程序为EDA实验中的示例程序schvhd仔细阅读程序回答问题。对该程序进行编译时出现错误提示:“VHDLDesignFile“sch”mustcontainanentityofthesamename”这是什么原因,如何修改,libraryieeeuseieeestdlogicallentityschkisport(din,clk,clr:instdlogic串行输入数据位工作时钟复位信号ab:outstdlogicvector(downto)检测结果输出)endschkarchitecturebhvofschkissignalq:integerrangetosignald:stdlogicvector(downto)位待检测预置数begind=""位待检测预置数process(clk,clr)beginifclr=''thenq<=elseifclk'eventandclk=''thencaseqiswhen=>ifdin=d()thenq<=elseq<=endifwhen=>ifdin=d()thenq<=elseq<=endifwhen=>ifdin=d()thenq<=elseq<=endifwhen=>ifdin=d()thenq<=elseq<=endifwhen=>ifdin=d()thenq<=elseq<=endifwhen=>ifdin=d()thenq<=elseq<=endifwhen=>ifdin=d()thenq<=elseq<=endifwhen=>ifdin=d()thenq<=elseq<=endifwhenothers=>q<=endcaseendifendprocessprocess(q)beginifq=thenab<=""elseab<=""endifendprocessendbhv在上述程序代码中存在两处错误编译时出现如下提示试修改错误:Error:Line:Filef:edaschkvhd:VHDLsyntaxerror:unexpectedsignal“d”inConcurrentStatementPartError:Line:Filef:edaschkvhd:VHDLsyntaxerror:ifstatementmusthaveENDIF,butfoundPROCESSinstead错误行号:程序改为:d<=""错误行号:程序改为:elseifclk'eventandclk=''then修改问题的错误后如果编译时出现“CantopenVHDL“WORK””这样的错误提示。这又是什么原因如何修改,四、VHDL程序改错:(分)LIBRARYIEEEUSEIEEESTDLOGICALLUSEIEEESTDLOGICUNSIGNEDALLENTITYLEDCNTISPORT(CLR:INSTDLOGICCLK:INSTDLOGICLEDS:OUTSTDLOGICVECTOR(DOWNTO))ENDLEDCNTARCHITECTUREoneOFLEDCNTISSIGNALTMP:STDLOGICVECTOR(DOWNTO)BEGINCNT:PROCESS(CLR,CLK)BEGINIFCLR=''THENTMP<=ELSEIFCLK'EVENTANDCLK=''THENTMP<=TMPENDIFENDPROCESSOUTLED:PROCESS(TMP)BEGINCASETMPISWHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""WHEN""=>LEDS<=""WHENOTHERS=>LEDS<=(OTHERS=>'')ENDCASEENDPROCESSENDone在程序中存在两处错误试指出并说明理由:提示:在MAXPlusII上编译时报出的第一条错误为:Error:Line:File***ledcntvhd:Typeerror:typeinwaveformelementmustbe“stdlogicvector”第行错误:整数不能直接赋值给TMP矢量改正:TMP<=(OTHERS=>„)第行错误:ELSEIF缺少一条对应的ENDIF语句改正:将ELSEIF改为关键字ELSIF四、VHDL程序改错:(分)仔细阅读下列程序回答问题LIBRARYIEEEUSEIEEESTDLOGICALLENTITYCNTISPORT(CLK:INSTDLOGICQ:OUTSTDLOGICVECTOR(DOWNTO))ENDCNTARCHITECTUREbhvOFCNTISSIGNALQ:STDLOGICVECTOR(DOWNTO)BEGINPROCESS(CLK)BEGINIFRISINGEDGE(CLK)beginIFQ<THENQ<=QELSEQ<=(OTHERS=>'')ENDIFENDIFENDPROCESSQ<=QENDbhv在程序中存在两处错误试指出并说明理由:在MAXPlusII中编译时提示的第一条错误为:Error:Line:Filee:myworktestcntvhd:VHDLsyntaxerror:IfstatementmusthaveTHEN,butfoundBEGINinstead行IF语句对应的关键字是then而非begin行Q是矢量不能直接和整数相加需要使用重载函数修改相应行的程序(如果是缺少语句请指出大致的行数):错误行号:程序改为:BEGIN改为THEN错误行号:程序改为:USEIEEESTDLOGICUNSIGNEDALL五、VHDL程序设计:(分)设计一数据选择器MUX,其系统模块图和功能表如下图所示。试采用下面三种方式中的两种来描述该数据选择器MUX的结构体。SEL(:)SELCOUTAxorBAIN(:)AorBCOUT(:)AnorBMUXBIN(:)AnandBOTHERS“XX”(a)用if语句。(b)用case语句。(c)用whenelse语句。LibraryieeeUseieeestdlogicallEntitymymuxisPort(sel:instdlogicvector(downto)选择信号输入Ain,Bin:instdlogicvector(downto)数据输入Cout:outstdlogicvector(downto))Endmymux五、VHDL程序设计:(分)设计一数据选择器MUX,其系统模块图和功能表如下图所示。试采用下面三种方式中的两种来描述该数据选择器MUX的结构体。(a)用if语句。(b)用case语句。(c)用whenelse语句。LibraryieeeUseieeestdlogicallEntitymymuxisPort(sel:instdlogicvector(downto)选择信号输入Ain,Bin:instdlogicvector(downto)数据输入Cout:outstdlogicvector(downto))Endmymux五、VHDL程序设计:(分)设计一数据选择器MUX,其系统模块图和功能表如下图所示。试采用下面三种方式中的两种来描述该数据选择器MUX的结构体。(a)用if语句。(b)用case语句。(c)用whenelse语句。LibraryieeeUseieeestdlogicallEntitymymuxisPort(sel:instdlogicvector(downto)选择信号输入Ain,Bin:instdlogicvector(downto)数据输入Cout:outstdlogicvector(downto))EndmymuxArchitectureoneofmymuxisBeginProcess(sel,ain,bin)BeginIfsel=“”thencout<=ainandbinElsifsel=“”thencout<=ainxorbinElsifsel=“”thencout<=notainElsecout<=notbinEndifEndprocessEndoneArchitecturetwoofmymuxisBeginProcess(sel,ain,bin)BeginCaseseliswhen“”=>cout<=ainandbinwhen“”=>cout<=ainxorbinwhen“”=>cout<=notainwhenothers=>cout<=notbinEndcaseEndprocessEndtwoArchitecturethreeofmymuxisBeginCout<=ainandbinwhensel=“”elseAinxorbinwhensel=“”elseNotainwhensel=“”elsenotbinEndthree五、阅读下列VHDL程序画出原理图(RTL级):(分)libraryieeeuseieeestdlogicallentitylfsrisport(clk:instdlogicclr:instdlogicd:instdlogicmout:outstdlogic)endlfsrarchitecturertloflfsrissignalsreg:stdlogicbeginshiftp:process(clk,clr)variables:stdlogicbeginifclr=''thens:=elsifrisingedge(clk)thens:=sregxor(notd)endifsreg<=sendprocessmout<=sregendrtl六、根据原理图写出相应的VHDL程序:(分)六、根据原理图写出相应的VHDL程序:(分)六、根据原理图写出相应的VHDL程序:(分)LibraryieeeUseieeestdlogicallEntitymycirisPort(A,B,clk:instdlogicQout:outstdlogic)EndmycirArchitecturebehaveofmycirisSignalta,tb,tcBegintc<=tanandtbProcess(clk)BeginIfclkeventandclk=„thenTa<=ATb<=BEndifEndprocessProcess(clk,tc)BeginIfclk=„thenQout<=tcEndifEndprocessEndbehave六、写VHDL程序:(分)(设计一个译码器输入端口:din输入端位宽为位EN译码器输出使能高电平有效输出端口:xout译码器输出低电平有效LIBRARYIEEEUSEIEEESTDLOGICALLENTITYDECODEISPORT(DIN:INSTDLOGICVECTOR(DOWNTO)EN:INSTDLOGICXOUT:OUTSTDLOGICVECTOR(DOWNTO))ENDDECODEARCHITECTUREONEOFDECODEISBEGINPROCESS(DIN,EN)BEGINIFEN=„THENIFDIN=“”THENXOUT<=“”ELSIFDIN=“”THENXOUT<=“”ELSIFDIN=“”THENXOUT<=“”ELSIFDIN=“”THENXOUT<=“”ELSIFDIN=“”THENXOUT<=“”ELSIFDIN=“”THENXOUT<=“”ELSIFDIN=“”THENXOUT<=“”ELSEXOUT<=“”ENDIFENDIFENDPROCESSENDONE看下面原理图写出相应VHDL描述INPUTxinORDFFDFFOUTPUTyoutDQDQINPUTclkLIBARRYIEEEUSEIEEESTDLOGICALLENTITYMYCIRISPORT(XIN,CLK:INSTDLOGICYOUT:OUTSTDLOGIC)ENDMYCIRARCHITECTUREONEOFMYCIRISSIGNALA,B,CBEGINB<=XINORAPROCESS(CLK)BEGINIFCLKEVENTANDCLK=„THENA<=CC<=BENDIFENDPROCESSYOUT<=CENDONE七、综合题:(分)根据如下所示状态图及其状态机结构图回答问题ina=""ina=""ina=""ina=""andSSSSina=“”ina=""ina=""outa=""ina=""outa=""outa=""outa=""ina=""outa=""ina=""outa=""(a)CLKRESETCLKSIGNALoutaREGCOMRESETSIGNALinaoutaFSMina(c)(b)试判断该状态机类型并说明理由。改状态机可以为mealy型状态机当输入ina变化时可影响输出outa立即变化请问如何消除状态机输出信号毛刺,试列出至少两种方法并说明理由。方法添加辅助进程对输出数据进行锁存方法将双进程状态机改写为单进程状态机其输出也是锁存过了故能消除毛刺方法使用状态位直接输出型状态机编码方式其输出直接由当前状态输出也没有毛刺试由b、c两图中任选一图写出其完整的VHDL程序。LIBRARYIEEEUSEIEEESTDLOGICALLENTITYEXISPORT(CLK,RESET:INSTDLOGICINA:INSTDLOGICVECTOR(DOWNTO)OUTA:OUTSTDLOGICVECTOR(DOWNTO))ENDEXMOORE型状态机ARCHITECTUREONEOFEXISTYPESTATEIS(S,S,S,S)SIGNALCST:STATEBEGINPROCESS(CLK,RESET,INA)BEGINIFRESET=''THENCST<=SOUTA<=(OTHERS=>'')ELSIFRISINGEDGE(CLK)THENCASECSTISWHENS=>IFINA=""THENOUTA<=""ELSIFINA=""THENOUTA<=""ENDIFCST<=SWHENS=>IFINA=""THENCST<=SELSIFINA=""THENCST<=SENDIFOUTA<=""WHENS=>IFINA=""THENCST<=SELSIFINA=""THENCST<=SELSECST<=SENDIFOUTA<=""WHENS=>IFINA=""THENOUTA<=""ELSIFINA=""THENOUTA<=""ENDIFCST<=SWHENOTHERS=>CST<=SOUTA<=(OTHERS=>'')ENDCASEENDIFENDPROCESSENDONEMEALY型状态机ARCHITECTURETWOOFEXISTYPESTATEIS(S,S,S,S)SIGNALCST,NST:STATEBEGINREG:PROCESS(CLK,RESET)BEGINIFRESET=''THENCST<=SELSIFCLK'EVENTANDCLK=''THENCST<=NSTENDIFENDPROCESSCOM:PROCESS(CST,INA)BEGINCASECSTISWHENS=>NST<=SIFINA=""THENOUTA<=""ELSIFINA=""THENOUTA<=""ELSEOUTA<=""ENDIFWHENS=>OUTA<=""IFINA=""THENNST<=SELSIFINA=""THENNST<=SELSENST<=SENDIFWHENS=>OUTA<=""IFINA=""THENNST<=SELSIFINA=""THENNST<=SELSENST<=SENDIFWHENS=>IFINA=""THENOUTA<=""ELSIFINA=""THENOUTA<=""ELSEOUTA<=""ENDIFNST<=SWHENOTHERS=>NST<=SOUTA<=(OTHERS=>'')ENDCASEENDPROCESSENDTWO已知一个简单的波形发生器的数字部分系统框图如下图所示:图中DOWNCNT、MYROM都是在MAXPlusII中使用MegaWizard调用的LPM模块其VHDL描述中Entity部分分别如下:ENTITYDOWNCNTISPORT(clock:INSTDLOGICq:OUTSTDLOGICVECTOR(DOWNTO))ENDDOWNCNTENTITYmyromISPORT(address:INSTDLOGICVECTOR(DOWNTO)q:OUTSTDLOGICVECTOR(DOWNTO))ENDmyrom试用VHDL描述该系统的顶层设计(使用例化语句)。LibraryieeeUseieeestdlogicallEntitymysgisPort(clk:instdlogicToda:outstdlogicvector(downto))EndmysqArchitectureoneofmysqisSignaladdr:stdlogicvector(downto)ComponentlcntPort(clock:instdlogicQ:outstdlogicvector(downto))EndcomponentComponentlromPort(address:instdlogicvector(downto)Q:outstdlogicvector(downto))EndcomponentBeginU:lcntportmap(clock=>clk,q=>addr)U:lromportmap(address=>addr,q=>toda)Endone七、综合题:(分)(一)已知状态机状态图如图(a)所示完成下列各题:试判断该状态机类型并说明理由。该状态机为moore型状态机输出数据outa和输入ina没有直接逻辑关系outa是时钟clk的同步时序逻辑。根据状态图写出对应于结构图(b)分别由主控组合进程和主控时序进程组成的VHDL有限状态机描述LibraryieeeUseieeestdlogicallEntitymoorebisPort(clk,reset:instdlogicIna:instdlogicvector(downto)Outa:outstdlogicvector(downto))EndmoorebArchitectureoneofmoorebisTypemsstateis(st,st,st,st)Signalcst,nst:msstateBeginProcess(clk,reset)BeginIfreset=„thencst<=stElsifclkeventandclk=„thencst<=nstEndifEndprocessProcess(cst)BeginCasecstisWhenst=>ifina=“”thennst<=stElsenst<=stEndifOuta<=“”Whenst=>ifina=“”thennst<=stElsenst<=stEndifOuta<=“”Whenst=>ifina=“”thennst<=stElsenst<=stEndifOuta<=“”Whenst=>ifina=“”thennst<=stElsenst<=stEndifOuta<=“”Whenothers=>nst<=stEndcaseEndprocessEndone若已知输入信号如下图所示分析状态机的工作时序画出该状态机的状态转换值(currentstate)和输出控制信号(outa)若状态机仿真过程中出现毛刺现象应如何消除试指出两种方法并简单说明其原理。方法添加辅助进程对输出数据进行锁存方法将双进程状态机改写为单进程状态机其输出也是锁存过了故能消除毛刺方法使用状态位直接输出型状态机编码方式其输出直接由当前状态输出也没有毛刺

类似资料

该用户的其他资料

郭二庄煤矿采煤小运输质量标准化实施细则.doc

浅析园林景观铺地设计.doc

【小学 五年级英语】英语字母读音规则 共(7页).doc

英语国家知识之澳洲、加拿大.doc

国外图书馆联盟发展建设研究.doc

职业精品

精彩专题

用户评论

0/200
    暂无评论
上传我的资料

精选资料

热门资料排行换一换

  • 瘟疫论.pdf

  • 卫生易简方.pdf

  • 卫济宝书.pdf

  • 艳异__张爱玲与中国文学.pdf

  • 华为员工手册.pdf

  • 克孜尔石窟故事壁画与龟兹本土文化…

  • 荷包的形制和功能及变迁.pdf

  • 关于新疆_甘肃出土织绣物的考证丝…

  • 生命十二式原始广告书.pdf

  • 资料评价:

    / 39
    所需积分:0 立即下载

    意见
    反馈

    返回
    顶部