EDA2011年考试样卷

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

填空题1,、硬件描述语言(HDL)是EDA技术的重要组成部分,是电子系统硬件行为描述、结构描述、数据流描述的语言。它的种类很多,如VHDL、VerilogHDL、AHDL。2、CPLD是寄语乘积项的可编程结构,即由可编程的与阵列和固定的或阵列来完成功能。面FPGA采用查找表LUT结构的可编程结构。3、VerilogHDL的数字可以用二进制、十进制、八进制和十六进制4仲不同数制来表示。4、在VerilogHDL中还存在两种特殊的取值,高阻态(Z或者z)和不定态(X或者x)。5、VerilogHDL模块的I/O声明模块端口定义中各端口数据流动方向,包括输入(input)、输出(output)和双向(inout)。6、FPGA由可编程逻辑块(CLB)、可编程互连单元(I/O)和可编程互连三种可编程电路和一个SRAM结构的配置存储单元组成。7、摩尔状态机中,其输出只是当前状态值的函数,并且仅在时()()沿到来时才发生变化。8、EDA数字系统工程设计流程包括:设计准备、设计输入、设计实现、器件编程与配置、设计验证。9、对综合而言,VerilogHDL的wire型变量的取值可以是0、1、x和z。10、如果VerilogHDL操作符的操作数只有1个,称为单目操作;如果操作符的操作数有2个,称为双目操作;如果操作符的操作数有3个,称为三目操作。11、QuartusⅡ的编程系在设计文件包括引脚锁定和编程下载两个部分。12、VerilogHDL中,register型变量有reg、integer、rea和time4种。13、VerilogHDL的模块短空定义用来声明电路设计模块的输入端口和输出端口。14、VerilogHDL的功能描述是用来描述设计模块的内部结构和模块端口间的逻辑关系。15、在VerilogHDL中,赋值语句有门基元、连续赋值、过程赋值和非阻塞赋值4种。16、VerilogHDL的连续赋值语句的关键字是assign,赋值符号是=。17、在VerilogHDL中,结构描述包括门级(GateLevel)和开关级(SwitchLevel)两种抽象级别。18、VerilogHDL的always块语句中的语句是顺序语句,always块本身却是并行语句。19、在VerilogHDL模块中,任务用来单独完成某项具体任务,并被模块或其他任务调用。20、在VerilogHDL的语句中,系统对表达式的值进行判断,若值为0,则按假处理;若为1,则按真处理。21、一个完整的VerilogHDL设计模块包括:端口定义、I/O声明、信号类型声明和功能描述4个部分。22、Verilog模块可以非为两种类型:一种是未了让模块最终能生成电路的结构,另一种只是为了测试所设计电路的逻辑功能是否正确。23、在VerilogHDL中,使用posedge关键字声明事件是由输入信号的上升沿触发的;使用negedge关键字声明事件是由输入信号的下降沿触发的。简单题1.元件例化语句的作用是什么?答:元件例化语句作用:把已经设计好的设计实体称为一个元件成个模块,它可以被高层次的设计引用,是使VerilogHDL设计构成自上而下层次设计的重要途径。2.VerilogHDL的操作符有哪几类?答:VerilogHDL提供了丰富的运算操作符,其中包括逻辑操作符、算术操作符、关系操作符、等式操作符、条件操作符、位操作符、缩位操作符、移位操作符和拼接操作符等9类。3.简述层次结构设计的优点。答:层次化设计是一种模块化的设计方法,设计人员对设计的描述由上而下逐步展开,符合常规的思维习惯;由于顶层设计与具体的器件和工艺无关,因此易于在个种可编程逻辑器件中间进行移植。层次化的设计方法可以使多个设计人员同时进行操作,有利于对设计任务进行合理的分配并用系统工程的方法对设计进行管理。4.在数字系统设计中锁定引脚的作用是什么?答:将设计文件中的输入、输出信号定位到所选期间的具体物理管脚。5.简述自顶而下的设计指思想。答:自顶而下的设计指的是将一个大规模的数字电路系统从功能上化为若干个不相交的子模块,每个子模块又可以根据需要在功能上化为若干个二级子模块,依此类推,直到功能模块小到比较容易实现为止。6.简述使用always描述组合逻辑电路的规则答:在描述组合逻辑电路时,always在使用上有以下几个特点(或者说是规则);1)在敏感列表中使用电平敏感事件,不要使用边沿敏感。2)为变量赋值的使用阻塞赋值,不要使用非阻塞赋值。另外,在always块内被赋值的变量必须为寄存器型变量。因此尽管在组合逻辑中不包含任何记忆单元,但是如果变量需要在always块内被赋值,就必须定义为寄存器型,这并不表示所描述的数字电路系统中包含有记忆元件。7.系统任务$stop和$finish的区别是什么?答:系统任务$stop和$finish的区别是,系统任务$stop用于暂停仿真,系统任务$finish用于结束仿真。$stop使仿真进入一种交互模式,设计者可以在此模式下对设计进行调试。当设计者想要暂停仿真来检查信号的值时,可以使用这个系统函数。系统任务$finish用于结束仿真。8.VerilogHDL的基本单元——模块主要包括哪些内容?主要作用是什么?答:模块(module)是VerilogHDL对数字电路系统建模的基本单元,每个模块包括模块名称、端口列表、端口类型列表、内部变量定义以及逻辑功能描述等几个部分。模块名称:模块取一个和其功能相关的名字端口列表:模块的输入和输出端口端口类型列表:定义各个端口的方向如(输入端口、输出端口和双向端口)内部变量定义:内部变量可以使程序变得更有条理逻辑功能描述:是一个模块的主体,它描述了模块的输出信号和输入信号的逻辑关系。9.使用timescale编译器指令的目的是什么?举出一个实例答:timescale1ns/100ps此语句说明时延时间单位为1ns并且时间精度为100ps(时间精度是指所有的时延必须被限定在0.1ns内)。如果此编译器指令所在的模块包含上面的连续赋值语句,#2代表2ns。10.UDP代表什么?答:用户定义原语(UDP)。创建的灵活性:用户定义的原语既可以是组合逻辑原语,也可以是时序逻辑原语。11.写出两个基本逻辑门的名称。答:基本逻辑门,例如and、or和nand等都内置在语言中12.VerilogHDL中的两类主要数据类型是什么?答:VerilogHDL中有两类数据类型:线网数据类型和寄存器数据类型。线网类型表示构件间的物理连线,而寄存器类型表示抽象的数据存储元件。13.阻塞性赋值和非阻塞性赋值有何区别?答:阻塞赋值使用“=”为变量赋值,在赋值结束以前不可以进行其他操作,在赋值结束后继续后面的操作。这个过程就好像阻断了程序的运行,因而被成为阻塞赋值。连续的阻塞赋值操作是顺序完成的。非阻塞赋值使用“=”为变量赋值,在执行到赋值语句时,仅仅对“=”右侧的表达式的值进行评估,但并不马上执行赋值,然后继续执行后面的操作。这个过程就好像没有阻断程序的运行,因而被成为非阻塞赋值。连续的非阻塞赋值操作是同时完成的。多条阻塞赋值语句是顺序执行的,而多条非阻塞语句是并行执行的,这就是两者的区别。14.VerilogHDL支持哪三种基本描述方式?答:行为描述方式(过程化结构建模),数据流方式(连续赋值语句方式),结构化方式(使用门和模块实例语句描述建模)。15.可以使用VerilogHDL描述一个设计的时序吗?答:VerilogHDL可以清晰的建立时序模型,故可以使用VerilogHDL描述一个设计的时序。16.在数据流描述方式中使用什么语句描述一个设计?答:设计的数据流行为使用连续赋值语句进行描述17.什么是硬件描述语言?它的主要作用是什么?答:硬件描述语言HDL(HardwareDescriptionLanguage)是一种用形式化方法来描述数字电路和系统的语言。数字电路系统的设计者利用这种语言可以从上层到下层(从抽象到具体),逐层描述自己的设计思想,用一系列分层次的模块来表示极其复杂的数字系统。18.目前常用的HDL硬件描述语言有几种,各有什么特点?答:目前常用的HDL主要有:VHDL、VerilogHDL、SystemVerilog、SystemC;VerilogHDL成为某层电路建模与设计中最流行的硬件描述语言;VHDL是在高层次上描述系统和元件的行为建模工具;SystemVerilog主要定位于集成电路的实现和验证流程,并为系统级设计流程提供了强大的链接能力;SystemC主要用于ESL(电子系统级)建模与验证。19.什么是综合?有哪些类型?综合在电子设计自动化中的地位是什么?答:在电子设计领域中综合的概念可以表示为:将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程。有以下几种类型:(1)从自然语言转换到VHDL语言算法表示,即自然语言综合。(2)从算法表示转换到寄存器传输级(RegisterTransportLevel,RTL),即从行为域到结构域的综合,即行为综合。(3)从RTL级表示转换到逻辑门(包括触发器)的表示,即逻辑综合。(4)从逻辑门表示转换到版图表示(ASIC设计),或转换到FPGA的配置网表文件,可称为版图综合或结构综合。综合在电子设计自动化中的地位是核心地位。综合器具有更复杂的工作环境,综合器在接受VHDL程序并准备对其综合前,必须获得与最终实现设计电路硬件特征相关的工艺库信息,以及获得优化综合的诸多约束条件信息;根据工艺库和约束条件信息,将VHDL程序转化成电路实现的相关信息。20.IP是什么?IP与EDA技术的关系是什么?答:IP是知识产权核或知识产权模块,用于ASIC或FPGA/CPLD中的预先设计好的电路功能模块,在EDA技术开发中具有十分重要的地位。美国著名的Dataquest咨询公司将半导体产业的IP定义为:“用于ASIC或FPGA/CPLD中的预先设计好的电路功能模块”。IP分为软IP、固IP、硬IP:软IP:用VHDL等硬件描述语言描述的功能块,并不涉及用什么具体电路元件实现这些功能;软IP通常是以硬件描述语言HDL源文件的形式出现。固IP:完成了综合的功能块,具有较大的设计深度,以网表文件的形式提交客户使用。硬IP:提供设计的最终阶段产品:掩模21.wire型变量与reg型变量有什么本质区别,它们可用于什么类型语句中?答:书上P261~262线网(wire)表示硬件单元之间的连接,就像在真实的电路中一样,线网由其连接器件的输出端连续驱动。线网不能储存值,而且它必须受到驱动器(例如门或连续赋值语句,assign)的驱动。如果没有驱动源,则线网的值为z。reg寄存器用来表示存储元件,它保持原有的数值,通过赋值语句可以改变寄存器储存的值,其作用与改变触发器储存的值相当。reg类型数据的默认初始值为不定值x。定义为Net型的变量常被综合为硬件电路中的物理连接,其特点是输出的值紧跟输入值的变化而变化,因此常被用来表示以assign关键词引到的组合电路描述。Register类型变量必须放在过程语句中,如initial、always引导的语句中,通过过程赋值语句(包括阻塞与非阻塞语句)完成赋值操作,换言之,在always、initial等过程结构内被赋值的变量必须定义为Variable类型。22.阻塞赋值和非阻塞赋值有何区别?答:Verilog中,用普通等号“=”作为阻塞式赋值语句的赋值符号,如y=b。Verilog中,用普通等号“=”作为非阻塞式赋值语句的赋值符号,如y=b。阻塞式赋值的特点是,一旦执行完当前的赋值语句,赋值目标变量y即刻获得来自等号右侧表达式的计算值。如果在一个块语句中含有多条阻塞式赋值语句,则当执行到其中某条赋值语句时,其他语句将禁止执行,即如同被阻塞了一样。非阻塞式赋值的特点是必须在块语句执行结束时才整体完成赋值操作。非阻塞的含义可以理解为在执行当前语句时,对于块中的其他语句的执行情况一律不加限制,不加阻塞。这也可以理解为,在begin_end块中的所有赋值语句都可以并行运行。23.简

1 / 11
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功