EDA作业
EDA仿真作业题及要求
EDA 仿真作业仿真作业题及要求题及要求题及要求一、 仿真作业仿真作业要求要求要求EDA 仿真作业共3次,由课代表按时收齐交给助教由课代表按时收齐交给助教((分别于第5、9、13周周周周二二交,打印打印结果并书写报告结果并书写报告结果并书写报告交给助教交给助教交给助教))。
请用Multisim 软件仿真软件仿真。
仿真实验报告应包括题目仿真实验报告应包括题目、、分析分析计算计算计算结果结果结果、、仿真结果及仿真结果及分析分析分析、、仿真中遇到的问题仿真中遇到的问题、、收获和体会收获和体会。
二、 第一次仿真作业第一次仿真作业题题:共3题,请于第5周周周周二二与习题作业一起交与习题作业一起交实验实验目的目的目的::掌握基本元器件电路的分析方法,熟悉仿真软件环境,掌握仿真软件的基本测量手段(用万用表的交流和直流档测量电压电流量、用示波器测量和观察信号、用IV 分析仪测半导体器件的特性曲线),熟悉仿真软件的基本分析方法(直流扫描分析方法)。
1、仿真题1-1(3分):用IV 分析仪(IV Analyzer)测量二极管的伏安特性和晶体管的输出特性。
2、仿真题1-2(3分):教材习题1.17。
3、仿真题1-3(4分):教材习题1.18。
三、 第二次仿真作业题第二次仿真作业题::共3题,请于第9周周周周二二与习题作业一起交与习题作业一起交。
实验目的实验目的::熟悉晶体管和场效应管基本放大电路性能参数的测试、调试、设计方法,理解放大电路静态工作点对动态参数的影响;培养提出问题、分析问题、解决问题的能力;熟悉仿真软件的基本分析和测量方法。
1、仿真题2-1(3分):电路如图2-1所示,已知晶体管型号为2N2222A (模型参数中的BF 即β=220,RB 即r bb’=0.13Ω),电源电压为V CC =12V ,R s =1k Ω,负载R L =5k Ω,电容C 1=C 2=10µF ,输入电压u s 为峰值为2V 、频率为2kHz 的正弦波。
EDA习题
第一章绪论作业1、EDA的英文全称是什么?EDA的中文含义是什么?答:EDA的英文全称是Electronic Design Automation;中文含义是电子设计自动化。
5、FPGA和CPLD各包含几个基本组成部分?答:FPGA和CPLD均包含三个部分:可编程逻辑单元阵列、可编程互连、可编程I/O单元。
CPLD内部的可编程逻辑单元以乘积项阵列为主,而FPGA内部采用LUT加寄存器结构。
6、FPGA和CPLD各有什么特点?二者在存储逻辑信息方面有什么区别?在实际使用中,在什么情况下选用CPLD?在什么情况下选用FPGA?答:特点:CPLD内部的可编程逻辑单元以乘积项阵列为主,触发器数量相对FPGA要少,规模和复杂度较低。
FPGA内部采用LUT加寄存器结构,触发器数量多,规模和复杂度较高。
在存储逻辑信息方面,CPLD主要采用PROM存储信息;FPGA主要采用SRAM存储信息。
在实际使用中,一般规模逻辑设计,以控制功能为主的情况下优先选用CPLD。
对于复杂逻辑设计,需要存储大量数据的情况下优先选用FPGA。
10、对于目标器件为FPGA/CPLD的VHDL设计,其工程设计包括几个主要步骤?每步的结果是什么?答:主要设计步骤:(1)设计输入:采用HDL语言、原理图、状态图等方式,结果为设计的源代码。
(2)逻辑综合:将RTL级描述转换为优化过的具有特定工艺的门级实现,产生网表文件。
(3)目标器件的布线/适配:将综合器产生的网表文件映射到目标器件中,产生最终的下载文件。
(4)目标器件的编程/下载,得到具有特定功能的电路。
(5)硬件仿真、测试,11、名称解释逻辑综合、逻辑适配、行为仿真、功能仿真、时序仿真答:逻辑综合:将RTL级描述转换为优化过的具有特定工艺的门级实现,即网表文件。
逻辑适配:将综合器产生的网表文件映射到目标器件中,产生最终的下载文件。
行为仿真:将源程序直接送到VHDL仿真器中所进行的仿真。
功能仿真:将综合后的网表文件送到VHDL仿真器中所进行的仿真。
eda作业
eda一、如图1所示,电路为二级电压串联负反馈的放大电路,其中Vs为V AC/SOURCE,其属性设置为默许值。
三极管Q2N3904的模型参数为默许值。
试用EWB软件作如下的分析:(1)求直流工作点;(2)求无负反馈(即无电阻Rf)时的输入电阻、输出电阻、电压增益和上限截止频率;(3)当电阻Rf别离为6.2kΩ、15kΩ和30kΩ时的反馈深度,并总结反馈深度对放大电路性能的阻碍。
(25分)Re1300Rb420kRs 200Rf6.2kVcc12VdcCe210uCe110uR55kQ2Q2N3904Cb22.2uRb3300kVoutQ1Q2N3904Vs1Vac 0VdcCb12.2uVinRe2680Rb1300kCb32.2u Re3820Rc15.1kR2b20kRc25.1kIb=1.11uA, Ic=126.121uA, Uce=11.242;图二Ui=986.856mV, Ii=77.076uA, Uo=3.118V; Ri=Ui/Ii=986.856mV/77.076uA=12.8K。
Uo1=5.193V;Ro=(Uo1/Uo-1)*R5=3.4KA=Uo/Ui=3.118V/986.856mV=3.15;Af=2.462V/987.371mV=2.5Af=2.803V/987.371mV=2.8Af=2.947V/986.945mV=3反馈深度1+AF=A/Af;由上可得:Af减小二级电压串联负反馈:Ri=Ri/(1+Af);Ro=Ro*(1+Af);使的Ri减小Ro增大;二、设计题。
设计一个水温操纵系统。
(40分)大体要求:一升水由1kW的电炉加热,要求水温能够在必然范围内由人工设定,并能在环境温度降低时实现自动调整,以维持设定的温度大体不变。
达到的性能指标:①温度设定范围:40~90℃,最小区分度为1℃;②操纵精度:温度操纵的静态误差≤1℃;③用十进制数码显示实际水温;④能打印实测水温值;⑤具有通信能力,可接收其他数据设备发来的命令,或将结果传送到其他数据设备。
EDA大作业
EDA大作业信号发生器的设计要求:(1) 产生方波、三角波、锯齿波、正弦波(2)产生波形的模式可选(3)频率为10KHz设计方案:1.总体设计思路1.1 设计步骤此设计将按模块式实现,据设计要求,设计总共分四大步份完成:(1)产生波形(四种波形:方波、三角波、矩形波和锯齿波)信号;(3)频率为10KHZ幅度固定;1.2设计思想利用VHDL编程,依据基本数字电路模块原理进行整合。
系统各部分所需工作时钟信号由输入系统时钟信号得到。
总体设计框图如下图1所示:波形输出2. 方案论证2.1方案采用VHDL语言来编程,然后下载文件到FPGA来实现。
VHDL语言是电子设计领域的主流硬件描述语言,具有很强的电路描述和建模能力,能从多个层次对数字系统进行建模和描述,从而大大降低了硬件设计任务,提高了设计效率和可靠性,要比模拟电路快得多。
该方案是利用FPGA具有的静态可重复编程和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改,极大地提高了电子系统设计的灵活性和通用性,设计图如图2。
图2 FPGA总体设计图(需要修改) 通过FPGA软件扫描方式将波形数据读出传输给DAC0832(为8分辨率的D/A转换集成芯片)产生波形输出。
这种方法在软、硬件电路设计上都简单,且与我们的设计思路紧密结合。
㈠3硬件选择4软件设计4.1.1 波形产生模块本设计用VHDL语言根据傅立叶函数采集点进行扫描,分别产生正弦波、三角波和矩形波。
以下介绍各种常用周期信号的傅立叶函数展开式。
4.1.3正弦波(1)设计思想正弦波发生分为两个步骤,即正弦波幅值采样存储和正弦波波形的还原输出。
幅值采样是将一个周期正弦波进行64等分,如图3所示,将64个采样点进行量化处理,量化值=255*sin360/64(V),将64点量化值存入存储器ROM。
正弦波形的产生是通过循环反复将存储器中的64点采样值通过DAC0832进行还原输出,得到幅值正比于64点采样值的正弦波。
EDA作业
1.简单PLD器件包括哪几种类型的器件?他们之间有什么相同点和不同点?答:PLD器件一般可分为4种:PROM、PLA、PAL、GAL器件相同点:简单PLD的典型结构是由与非门阵列、或门阵列组成,能够以“积之和”的形式实现布尔逻辑函数,因为其任意一个组合逻辑都可以用“与或”表达式来描述,所以能够完成大量的组合逻辑功能,并且具有较高的速度和较好的性能。
不同点:PROM:(1)与阵列固定,或阵列可编程(2)当输入的数目太大时,器件功耗增加,巨大阵列开关时间也会导致其速度缓慢,但其价格低,易于编程,没有布局、布线问题,性能完全可以预测。
PLA:(1)与阵列和或阵列都可编程(2)由于与阵列可编程,使得PROM中由于输入增加而导致规模增加的问题不复存在,从而有效地提高芯片的利用率,其用于含有复杂的随机逻辑值换的场合是较为理想,但其慢速特性和相对高的价格妨碍了它被广泛使用。
PAL:(1)或阵列固定,与阵列可编程(2)与阵列可编程特性使输入项可以增多,而固定的或阵列又使器件得以简化。
在这种结构中,每个输出是若干乘积项之和,乘积项数目有时固定的。
其结构对于大多数逻辑函数是有效的,同时此结构也提供了较高的性能和速度,一度成为PLD发展史的主流。
GAL:其吸收先进的浮栅技术,并与CMOS的静态RAM结合,成了E2PROM 技术,从而使GAL具有了可电擦写、可重复编程、可设置加密功能。
GAL的输出可由用户来定义,他的每个输出端都集成着一个可编程的输出逻辑宏单元。
2.Altera公司MAX7000系列CPLD有什么特点?MAX7000系列是高密度、高性能的CMOS CPLD,采用先进的0.8umCMOS EEPROM技术制造,它提供600~5000可用门,引线端子到引线端子的延时为6ns,计数器频率可达151.5MHz,它主要有逻辑阵列块、宏单元、扩展乘积项、可编程连线阵列和I/O控制模块组成。
EDA作业
信号发生器设计1.设计原理分频网络:根据已有时钟信号的频率、实际产生信号的频率以及D/A转换器时钟频率的需求,决定分频网络分频系数的设计。
信号产生:用计数器直接产生波形信号输出,或者采用查找表方式产生波形信号,用计数器产生存储器的地址,在存储器中存放波形信号输出的数据。
信号控制:控制模块可以用数据选择器实现,用6选1数据选择器实现对6种信号的选择。
D/A控制器:按照D/A转换器的时序要求,D/A控制器产生D/A转换器的控制信号,将波形数据经过D/A控制器送入D/A转换器,将数字信号转换为模拟信号,产生模拟信号输出。
D/A转换器TLC7528是2路、8位的数字/模拟转换器,通过运放NE5532实现电流电压转换,模拟信号分别从J1,J2和VGA输出,其内部包含两个数据锁存器,通过数据输入端DB0~DB7传送,控制输入端决定数据存入哪个数据锁存器。
通过状态机实现FPGA对TLC7528的控制,按要求依次输出控制信号。
FPGA 的dac输出信号与TLC7528的相连,FPGA的data输出信号与TLC7528的数据输入端相连,FPGA的cs和wr输出信号分别与TLC7528的CS和WR 相连。
信号产生:递增锯齿波利用计数器产生递增锯齿波信号。
设计复位信号reset使输出清零,高电平有效;reset为低电平时,在输入时钟信号clk的作用下,设计一个8位二进制加法计数器,输出信号依次从全0变为全1,计为全1后恢复为全0,不断循环,从而产生递增锯齿波信号输出。
正弦波信号利用ROM产生正弦波信号。
首先用计数器产生存储器的地址,接着读取存放在存储器中的正弦波信号数据。
2.实现过程信号发生器的设计:采用混合描述的层次化设计方案,在调用这些子模块,采用原理图方式实现信号发生器的系统电路连接。
子模块的设计有:a.递减锯齿波signal2的设计实现b. 三角波signal3的设计实现c. 阶梯波signal4的设计实现d. 方波信号signal5的设计实现e.正弦信号signal6的设计实现f.数据选择器mux61设计实现: 数据选择器的选择端信号sel[2..0]共3位,数据端共6组,每组信号均是8位,分别是d1[7..0]、…、d7[7..0],输出信号q[7..0]。
电子科大20春《EDA技术》在线作业1答案44916
电子科大20春《EDA技术》在线作业1红字部分为答案!单选题1.在VHDL中,结构体内部是由()语句组成的。
A.顺序B.并行C.顺序和并行D.任何2.库(LIBRARY)包括哪几大类A.IEEE 库、STD 库、面向ASIC的库、用户定义库B.IEEE 库、STD 库、WORK库、用户定义库C.IEEE 库、STD 库、WORK库、面向ASIC的库、用户定义库D.STD 库、WORK库、面向ASIC的库、用户定义库3.下面哪一条命令是MAXPLUSII在时序仿真时执行加载节点的命令()。
A.file- set project to current fileB.assign-pin/location chipC.node-enter node from SNFD.file-create default symbol4.在元件例化语句中,用_______符号实现名称映射,将例化元件端口声明语句中的信号与PORT MAP ()中的信号名关联起来。
A.=B.:=C.<=D.=>5.EAB中RAM的大小可灵活配置,Altera FLEX 10K 系列器件中的EAB作RAM用时,有哪几种配置模式A.512x8,1024x4,2048x2,4096x1B.256x8,512x4,1024x2,2048x1C.256x4,512x2,1024x1D.256x16,512x8,1024x4,2048x26.下列关于变量的说法正确的是A.变量是一个局部量,它只能在进程和子程序中使用。
B.变量的赋值不是立即发生的。
C.在进程的敏感信号表中,既可以使用信号,也可以使用变量。
D.变量赋值的一般表达式为目标变量名表达式。
7.进程语句的启动条件是A.wait语句或敏感信号量B.wait语句C.敏感信号量D.wait语句或且敏感信号量8.VHDL数据对象有A.常量、变量。
17春福师《EDA技术》在线作业二
2017秋17春福师《EDA技术》在线作业二一、多选题(共10 道试题,共20 分。
)1. SPLD器件分为几类()。
A. PROMB. PLAC. PALD. GAL正确答案:2. 基于EDA技术的设计中,通常有两种设计思路()。
A. 自顶向下B. 自底向上C. 自前向后D. 自后向前正确答案:3. IP核一般分为哪几种()。
A. 硬核B. 固核C. 软核D. 以上全不对正确答案:4. TOP-down设计一般分为哪几个层次()。
A. 系统级B. 功能级C. 门级D. 开关级正确答案:5. 常用的综合工具有哪些()。
A. FPGA ExpressB. FPGA compilerC. Synplify Pro正确答案:6. 衡量仿真器性能的重要指标有哪些()。
A. 仿真速度B. 仿真的准确性C. 仿真的易用性正确答案:7. 状态机常用的编码方式有()。
A. 顺序编码B. 格雷编码C. 约翰逊编码D. 一位热码正确答案:8. 基于FPGA/CPLD器件的数字系统设计流程包括哪些阶段()。
A. 设计输入B. 综合C. 布局布线D. 仿真和编程正确答案:9. ASIC电路特点描述正确的是()。
A. 周期长B. 投入高C. 功耗低D. 省面积正确答案:10. 常用的集成FPGA/CPLD开发工具有哪些()。
A. MAX+plus IIB. Quartus IIC. ISED. ispLEVER正确答案:福师《EDA技术》在线作业二二、判断题(共40 道试题,共80 分。
)1. 硬件综合器和软件程序编译器没有本质区别。
A. 错误B. 正确正确答案:2. V erilog语言即适合可综合的电路设计,也可胜任电路与系统的仿真。
A. 错误B. 正确正确答案:3. V erilog HDL支持循环语句。
A. 错误B. 正确正确答案:4. V erilog HDL和VHDL目前还都不是IEEE标准。
A. 错误B. 正确正确答案:5. PLD器件的设计往往采用层次化的设计方法,分模块,分层次地进行设计描述。
作业1——EDA与集成电路设计
作业1:MOS管的传输特性注:请统一用A4大小纸上交作业,作业有效期为一周。
1.1判断在下列条件下NMOS所工作的区域。
已知V tn=0.7V,且衬底端接GND。
(1)V GS=3.3V,V DS=3.3V;(2)V GS=0V,V DS=3.3V;(3)V GS=1.5V,V DS=0.5V;(4)V GS=2V,V DS=−0.5V;1.2已知一个CMOS半导体工艺中,L min=0.8μm,t ox=15nm,μn=550cm2/Vs,V tn=0.7V,(1)计算出C ox和k n; (C ox=εox/t ox,εox为氧化物的介电常数=3.9x8.85x10−14F/cm) (2)用此工艺制作一个NMOS管,W/L=16μm/0.8μm,若此时工作电流I D=100μA,并且工作在饱和区,那么此时的过驱动电压V ov,V GS,以及能工作在饱和区的最小V DS(min)为多少?(3)同样的NMOS,若此时电压V DS非常小导致NMOS以一个1000Ω的电阻工作,请问此时的V ov,V GS为多少?1.3画出MOS晶体管的ID~VGS曲线,以以下两个参数为变量:(a)以VDS为参数,VDS1<VDS2<VDS3;(b)以VBS为参数,VBS=0与VBS>0。
并在特性曲线中标出饱和区与线性区的夹断点。
1.4一个NMOS管的参数为W=10um,L=1um, k n=194uA/V2,λ=0.024V−1,t ox=80Å,ϕf=0.3V,V t0=0.6V,N A=5x1015atoms/cm3,忽略速率饱和效应,假定V SB=0,试分别绘出V GS=0.5V,1.5V,3V时的I D−V DS特性曲线。
V DS取0到3V;1.5W/L=50/0.5,|ID|=0.5mA,计算NMOS和PMOS饱和区的跨导和输出阻抗,以及本征增益。
规定本征增益为g m r0。
表1:MOS管的一级SPICE模型。
EDA作业
EDA作业1.三人表决电路设计输入用拨码开关sw1-sw8输出用LED显示。
LED引脚定义(8bit LEDs)set_location_assignment PIN_AB20 -to led_down[0]set_location_assignment PIN_AD24 -to led_down[1]set_location_assignment PIN_AB23 -to led_down[2]set_location_assignment PIN_AB18 -to led_down[3]set_location_assignment PIN_Y21 –to led_down[4]set_location_assignment PIN_AD16 -to led_down[5]set_location_assignment PIN_U24 –to led_down[6]set_location_assignment PIN_T23 –to led_down[7]8位拨码开关定义(8bit Switch)set_location_assignment PIN_AA16 -to sw[0]set_location_assignment PIN_Y13 -to sw[1]set_location_assignment PIN_W10 -to sw[2]set_location_assignment PIN_V10 -to sw[3]set_location_assignment PIN_Y11 -to sw[4]set_location_assignment PIN_V13 -to sw[5]set_location_assignment PIN_V24 -to sw[6]set_location_assignment PIN_AB15 -to sw[7]实验5:分频器设计一:设计一个分频器,首先对系统时钟分频,形成2Hz的信号,然后依次点亮8个LED,形成流水灯。
19春福师《EDA技术》在线作业一
(多选题)1: 按照处理的HDL语言类型,仿真器可以分为()。
A: Verilog HDL仿真器B: VHDL HDL仿真器C: 混合仿真器标准解答:(多选题)2: 用PLD器件实现设计的优势有哪些()?A: 周期短B: 投入少C: 风险小D: 对于成熟的设计往往采用PLD标准解答:(多选题)3: 目前常用的硬件描述语言为:()。
A: VerilogB: VHDLC: 和 VCD: VB标准解答:(多选题)4: 常用的综合工具有哪些()。
A: FPGA ExpressB: FPGA compilerC: Synplify Pro标准解答:(多选题)5: 目前的EDA技术主要特点有哪些()。
A: 使用普及B: 应用广泛C: 工具多样D: 软件功能强大标准解答:(多选题)6: ASIC电路特点描述正确的是()。
A: 周期长B: 投入高C: 功耗低D: 省面积标准解答:(多选题)7: 下面哪些是专业提供PLD器件厂商()。
A: XilinxB: AlteraC: LatticeD: Micsoftware标准解答:(多选题)8: 常用的集成FPGA/CPLD开发工具有哪些()。
A: MAX+plus IIB: Quartus IIC: ISED: ispLEVER标准解答:(多选题)9: TOP-down设计一般分为哪几个层次()。
A: 系统级B: 功能级C: 门级D: 开关级标准解答:(多选题)10: 状态机常用的编码方式有()。
A: 顺序编码B: 格雷编码C: 约翰逊编码D: 一位热码标准解答:(判断题)11: 数字设计流程中的设计输入的表达方式一般有原理图方式和HDL文本方式两种。
A: 错误B: 正确标准解答:(判断题)12: IP核中的软核与生产工艺无关,不涉及物理实现,为后续设计留有很大空间。
A: 错误B: 正确标准解答:(判断题)13: 有限状态机可以认为是组合逻辑和寄存器逻辑的特殊组合。
EDA作业
数字电路与逻辑设计(EDA)作业1.画出下例实体描述对应的原理图符号元件:ENTITY buf3s IS -- 实体1:三态缓冲器PORT (input : IN STD_LOGIC ; -- 输入端enable : IN STD_LOGIC ; -- 使能端output : OUT STD_LOGIC ) ; -- 输出端END buf3x ;ENTITY mux21 IS --实体2: 2选1多路选择器 PORT (in0, in1, sel : IN STD_LOGIC;output : OUT STD_LOGIC);END ENTITY mux22.图中所示的是4选1多路选择器,试分别用IF_THEN语句和CASE语句的表达方式写出此电路的VHDL程序。
选择控制的信号s1和s0为STD_LOGIC_VECTOR类型;当s1='0',s0='0';s1='0',s0='1';s1='1',s0='0'和s1='1',s0='1'分别执行y<=a、y<=b、y<=c、y<=d。
Library ieee;use ieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitymux4_1isport(s:instd_logic_vector(1 downto 0);a,b,c,d:instd_logic;y:out std_logic);endmux4_1;architecture arc of mux4_1issignal s1,s0:std_logic;begins1<=s(1);s0<=s(0);process(s1,s0)beginif(s1='0' and s0='0') then y<=a;elsif(s1='0' and s0='1') then y<=b;elsif(s1='1' and s0='0') then y<=c;elsif(s1='1' and s0='1') then y<=d;else null;end if;end process;end arc;libraryieee;use ieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitymux4_1isport(s:instd_logic_vector(1 downto 0);a,b,c,d:instd_logic;y:out std_logic);endmux4_1;architecture arc of mux4_1isbeginprocess(s)begincase s iswhen "00" => y<=a;when "01" => y<=b;when "10" => y<=c;when "11" => y<=d;when others => null;end case;end process;end arc;3.图中所示的是双2选1多路选择器构成的电路MUXK,对于其中MUX21A,当s='0'和'1'时,分别有y<='a'和y<='b'。
[答案][福建师范大学]2021春《EDA技术》在线作业二-1
1.常用的集成FPGA/CPLD开发工具有哪些()。
[答案:ABCD]A.MAX+plus IIB.Quartus IIC.ISED.ispLEVER2.EDA技术发展阶段描述正确的是()。
[答案:ABC]A.CAD阶段B.CAE阶段C.EDA阶段D.以上都不对3.状态机常用的编码方式有()。
[答案:ABCD]A.顺序编码B.格雷编码C.约翰逊编码D.一位热码4.基于EDA技术的设计中,通常有两种设计思路()。
[答案:AB]A.自顶向下B.自底向上C.自前向后D.自后向前5.用PLD器件实现设计的优势有哪些()?[答案:ABC]A.周期短B.投入少C.风险小D.对于成熟的设计往往采用PLD6.衡量仿真器性能的重要指标有哪些()。
[答案:ABC]A.仿真速度B.仿真的准确性C.仿真的易用性7.常用的综合工具有哪些()。
[答案:ABC]A.FPGA ExpressB.FPGA compilerC.Synplify Pro8.TOP-down设计一般分为哪几个层次()。
[答案:ABCD]A.系统级B.功能级C.门级D.开关级9.下面哪些是专业提供PLD器件厂商()。
[答案:ABC]A.XilinxB.AlteratticeD.Micsoftware10.综合有哪几种形式()。
[答案:ABC]B.逻辑综合C.将逻辑门表示转换到版图表示11.把适配后生成的编程文件装入到PLD器件中的过程称为下载。
()[答案:A]A.正确B.错误12.Verilog HDL和VHDL目前还都不是IEEE标准。
()[答案:B]A.正确B.错误13.IP核中的软核与生产工艺无关,不涉及物理实现,为后续设计留有很大空间。
()[答案:A]A.正确B.错误14.Verilog HDL中的常量主要有:整数,实数和字符串。
()[答案:A]A.正确B.错误15.在IC设计领域中,IP核一般完成某种功能的设计模块。
()[答案:A]A.正确B.错误16.混合仿真器就是能同时支持Verilog和VHDL的仿真器。
EDA作业1-秒表
EDA作业一--秒表循环一、设计任务及要求1. 设计数码管显示的秒表。
2. 能够准确的计时并显示。
3. 开机显示00.00.00。
4. 用户可以随时清零、暂停、计时。
5. 最大记时59.59.99分钟,最小精确到0.01秒。
二、设计总体框图秒表计时器常常用于体育竞赛及各种其他要求有较精确时间的各领域中。
其中启/停开关的使用方法与传统的机械计时器相同,即按一下启/停开关,启动计时器开始计时,再按一下启/停开关计时终止。
而复位开关可以在任何情况下使用,即使在计时过程中,只要按一下复位开关,计时应立即终止,并对计时器清零。
具体框图见附录一。
三、硬件电路设计与程序设计本设计采用模块化设计,共分为顶层文件、控制毫秒模块(msecond)、控制秒模块(second)、控制分钟模块(minute)、LED模块(alert)、数码管扫描模块(zhishi)、分频器模块(fenpin)六个模块。
其中LED模块可以去掉,不影响秒表正常运行以下对各个模块一一描述。
1、分频器模块系统的输入时钟为4100HZ,用来驱动显示电路;同时输入时钟通过41分频,可以产生100HZ的频率来驱动计数电路,即为0.01秒,程序见附录二。
2.控制毫秒模块对这个功能模块用一个进程语句描述。
clk、reset和调秒的setsec(暂停\启动)为输入信号程序见附录二。
3.控制秒模块程序见附录二4.控制分模块程序见附录二5.数码管模块该模块的功能是选择个计数端口来的数据,当相应的数据到来时数据选择器选择器数据后输出给数码管,并由数码管显示。
程序见附录二四、编译仿真下面使用Quartus II对本设计进行编译和仿真。
首先创建工程,使用文本编辑器输入本设计的所有模块的源程序,把G-1DE.vhd设为顶层文件。
把本设计中的所有设计文件添加进工程后,先对每个模块进行编译纠错,然后把各个模块连接在一起保存然后在全程编译,通过之后就可以进行仿真。
先进行软件仿真每一部分的仿真从略,下面只说明系统的整体仿真波形。
EDA应用大作业《串行通信》
四川工程职业技术学院电子信息工程09-1班《EDA应用》大作业串行通信第3组:杨国勋、李开宏、彭国明2011.10目录一、设计任务 (1)二、硬件设计 (1)1、硬件电路图 (1)2、整体模块 (2)三、软件设计 (2)1、主程序模块 (2)2、发送模块 (5)3、接收模块 (7)四、实验结果 (9)五、开发工具 (10)1、硬件 (10)2、软件 (10)六、项目总结 (10)1、遇到的问题 (10)2、解决的办法 (10)七、参考文献 (10)一、设计任务综合运用所学基本知识,通过在FPGA开发板子完成与计算机进行RS232串口通信,计算机上的软件可以使用串口通信调试软件进行数据发送或接收数据。
根据设计要求,应把系统分成4个模块来完成,这四个模块分别是:时钟模块(向系统各部分提供各种频率的时钟信号)收发模块(进行串行通信的发送和接收)显示模块(显示通信的数据格式)控制模块(控制系统的工作)二、硬件设计1、硬件电路图2、整体模块三、软件设计1、主程序模块module uart_test(clock,key,rdata,wen,sdata,seg,dig);input clock; //系统时钟(48MHz) input[2:0] key; //按键输入(KEY1~KEY3) input[7:0]rdata; //接收到的数据output wen; //发送数据使能output[7:0]sdata; //要发送的数据output[7:0]seg; //数码管段码输出output[7:0]dig; //数码管位码输出//I/O寄存器reg[7:0]sdata;reg[7:0]seg;reg[7:0]dig;//内部寄存器reg[16:0]count; //时钟分频计数器reg[2:0]dout1,dout2,dout3,buff; //消抖寄存器reg[1:0] cnt; //数码管扫描计数器reg[3:0]disp_dat; //数码管扫描显存reg div_clk; //分频时钟wire[2:0]key_edge; //按键消抖输出//时钟分频部分always @(posedge clock)beginif (count < 17'd120000)begincount <= count + 1'b1;div_clk <= 1'b0;endelsebegincount <= 17'd0;div_clk <= 1'b1;endend//按键消抖部分always @(posedge clock)beginif(div_clk)begindout1 <= key;dout2 <= dout1;dout3 <= dout2;endend//按键边沿检测部分always @(posedge clock)beginbuff <= dout1 | dout2 | dout3;endassign key_edge = ~(dout1 | dout2 | dout3) & buff;//2位16进制数输出部分always @(posedge clock) //按键1 beginif(key_edge[0])sdata[7:4] <= sdata[7:4] + 1'b1;endalways @(posedge clock) //按键2beginif(key_edge[1])sdata[3:0] <= sdata[3:0] + 1'b1;endassign wen = key_edge[2]; //按键3//数码管扫描显示部分always @(posedge clock) //定义上升沿触发进程beginif(div_clk)cnt <= cnt + 1'b1;endalways @(posedge clock)beginif(div_clk)begincase(cnt) //选择扫描显示数据2'd0:disp_dat = sdata[7:4]; //第一个数码管2'd1:disp_dat = sdata[3:0]; //第二个数码管2'd2:disp_dat = rdata[7:4]; //第七个数码管2'd3:disp_dat = rdata[3:0]; //第八个数码管endcasecase(cnt) //选择数码管显示位2'd0:dig = 8'b01111111; //选择第一个数码管显示2'd1:dig = 8'b10111111; //选择第二个数码管显示2'd2:dig = 8'b11111101; //选择第七个数码管显示2'd3:dig = 8'b11111110; //选择第八个数码管显示endcaseendendalways @(disp_dat)begincase(disp_dat) //七段译码4'h0:seg = 8'hc0; //显示04'h1:seg = 8'hf9; //显示14'h2:seg = 8'ha4; //显示24'h3:seg = 8'hb0; //显示34'h4:seg = 8'h99; //显示44'h5:seg = 8'h92; //显示54'h6:seg = 8'h82; //显示64'h7:seg = 8'hf8; //显示74'h8:seg = 8'h80; //显示84'h9:seg = 8'h90; //显示94'ha:seg = 8'h88; //显示a4'hb:seg = 8'h83; //显示b4'hc:seg = 8'hc6; //显示c4'hd:seg = 8'ha1; //显示d4'he:seg = 8'h86; //显示e4'hf:seg = 8'h8e; //显示f endcaseendendmodule2、发送模块module send(clk,clkout,Datain,TXD,TI,WR);input WR;input [7:0]Datain; //发送的一字节数据input clk;output clkout;output TXD,TI; //串行数据,发送中断reg[9:0]Datainbuf,Datainbuf2; //发送数据缓存reg WR_ctr,TI,txd_reg;reg [3:0]bincnt; //发送数据计数器reg [15:0] cnt;wire clk_equ;parameter cout = 5000;/*************波特率发生进程****************************/ always@(posedge clk)beginif(clk_equ)cnt = 16'd0;elsecnt=cnt+1'b1;endassign clk_equ = (cnt == cout);assign clkout = clk_equ;/*************读数据到缓存进程****************************/ always@(posedge clk)beginif(WR)beginDatainbuf={1'b1,Datain[7:0],1'b0};//读入数据,并把缓存组成一帧数据,10位WR_ctr = 1'b1; //置开始标志位endelse if(TI==0)WR_ctr = 1'b0;end/*************主程序进程****************************/ always@(posedge clk)beginif(clk_equ)beginif(WR_ctr==1||bincnt<4'd10) //发送条件判断,保证发送数据的完整性beginif(bincnt<4'd10)begintxd_reg = Datainbuf2[0]; //从最低位开始发送Datainbuf2 = Datainbuf>>bincnt; //移位输出bincnt = bincnt+4'd1; //发送数据位计数TI = 1'b0;endelsebincnt = 4'd0;endelsebegin //发送完毕或者处于等待状态时TXD和TI为高txd_reg = 1'b1;TI = 1'b1;endendendassign TXD = txd_reg; //TXD连续输出endmodule3、接收模块module rec(clk,clkout,Dataout,RXD,RI);input clk,RXD;output clkout,RI;output [7:0] Dataout; //并行数据输出reg StartF,RI;reg [9:0] UartBuff; //接收缓存区reg [3:0]count,count_bit;reg [15:0] cnt;reg [2:0]bit_collect; //采集数据缓存区wire clk_equ,bit1,bit2,bit3,bit;parameter cout = 312;//时钟是48M所以16*9600的分频数为312.5,这里取整数/*************波特率发生进程****************************/ always@(posedge clk)beginif(clk_equ)cnt = 16'd0;elsecnt=cnt+1'b1;endassign clk_equ = (cnt == cout);assign clkout = clk_equ;assign bit1 = bit_collect[0]&bit_collect[1]; assign bit2 = bit_collect[1]&bit_collect[2]; assign bit3 = bit_collect[0]&bit_collect[2]; assign bit = bit1|bit2|bit3;always@(posedge clk)beginif(clk_equ)beginif(!StartF) //是否处于接收状态beginif(!RXD)begincount = 4'b0; //复位计数器count_bit = 4'b0;RI = 1'b0;StartF = 1'b1;endelse RI = 1'b1;endelsebegincount = count+1'b1; //位接收状态加1if(count==4'd6)bit_collect[0] = RXD; //数据采集if(count==4'd7)bit_collect[1] = RXD; //数据采集if(count==4'd8)beginbit_collect[2] = RXD; //数据采集UartBuff[count_bit] = bit;count_bit = count_bit+1'b1;//位计数器加1if((count_bit==4'd1)&&(UartBuff[0]==1'b1))//判断开始位是否为0beginStartF = 1'b0; //标志开始接收endRI = 1'b0; //中断标志位低endif(count_bit>4'd9) //检测是否接收结束beginRI = 1'b1; //中断标志为高标志转换结束StartF = 1'b0;endendendendassign Dataout = UartBuff[8:1]; //取出数据位endmodule四、实验结果(1) 在工作状态下,若用户按下K1按键,则数码管1上的数字加 1(0~F循环);(2) 在工作状态下,若用户按下K2按键,则数码管2上的数字加 1(0~F循环);(3) 在工作状态下,若用户按下K3按键,则把数码管1和2上的数字通过串口发送到串口调试软件的接收窗口;(4) 在工作状态下,若用户通过串口调试软件在发送窗口发送数字,则在数码管7和8上显示相应的数字。
电子科大20新上《EDA技术》在线作业3_
(单选题)1: 下面哪种语句不是并行语句
A: wait语句
B: process语句
C: 块语句
D: 生成语句
正确答案: A
(单选题)2: VHDL程序基本结构包括
A: 实体、子程序、配置
B: 实体、结构体、配置、函数
C: 结构体、状态机、程序包和库
D: 实体、结构体、程序包和库
正确答案: D
(单选题)3: 仿真是对电路设计的一种()检测方法。
A: 直接的
B: 间接的
C: 同步的
D: 异步的
正确答案: B
(单选题)4: 常用的硬件描述语言有
A: VHDL、Verilog、c语言
B: ABEL、c++
C: VHDL、Verilog、ABEL
D: 汇编语言、ABEL、VHDL
正确答案: C
(单选题)5: 在VHDL中,用语句( )表示检测clock的上升沿。
A: clock'EVENT
B: clock'EVENT AND clock='1'
C: Clok='0'
D: clock'EVENT AND clock='0'
正确答案: B
(单选题)6: VHDL常用的库是
A: IEEE
B: STD
C: WORK
D: PACKAGE
正确答案: A
(单选题)7: 一般把EDA技术的发展分为CAD、CAE和()三个阶段。
A: CAM。
eda作业题答案
2011-2012作业题答案:1-5 IP 在EDA技术的应用和发展中的意义是什么?答:IP是知识产权或知识产权模块的意思,在EDA技术开发中具有十分重要的地位。
它是用于ASIC或FPGA中预先设计好的功能模块。
当前IP核是为了易于重用而按嵌入式应用专门设计的。
IP核按照“四最”目标进行优化的:芯片面积最小,运算速度最快、功耗消耗最低,工艺容差最大“。
同时IP要符合标准。
由于IP是成熟、优化、标准的单元,使用它们可以提高效率减少风险。
1-6 叙述EDA的FPGA/CPLD设计流程,以及涉及的EDA工具及其在整个流程中的作用。
答:EDA的FPGA/CLPD设计流程:图形输入/HDL文本输入、综合、适配,时序仿真与功能仿真,编程下载、硬件测试。
EDA工具:QUARTUS当Entity muxk1 Isport(a1,a2,a3,s0,s1: In std_logic;outy: Out std_logic); End muxk1;Architecture abmux Of muxk1 IsSignal tmp: std_logic;Beginp1: process (a2,a3,s0)BeginCase s0 isWhen …0‟ => tmp <= a2;When …1‟ => tmp <= a3;When others => Null;End Case;End process;p2: Process (a1,tmp,s1)BeginCase s1 isWhen …0‟ => outy <= a1;When …1‟ => outy <= tmp;When others => Null;End Case;End Process;End abmux;Library ieee;Use ieee.std_logic_1164.all;Entity muxk isPort(a1,a2,a3,s0,s1: In Std_logic;outy: Out Std_logic); End muxk;Architecture abmux Of muxk isSignal tmp: Std_logic;Beginp1: Process (a2,a3,s0)BeginIf s0='1' Thentmp <= a2;Elsetmp <= a3;End If;End Process;p2: Process (a1,tmp,s1)BeginIf s1='1' Thenouty <= a1;Elseouty<= tmp;End if;End Process;End abmux;3-12 分别给出图3-20所示的6个RTL图的VHDL 描述,注意其中的D 触发器和锁存器的表述。
电科21春《EDA技术》在线作业3【标准答案】
20春《EDA技术》在线作业3
试卷总分:100 得分:100
一、单选题 (共 20 道试题,共 100 分)
1.EDA设计流程包括( )、设计输入、设计处理和器件编程四个步骤。
A.设计准备
B.总体设计
C.详细设计
D.设计数据
答案:A
2.请在下例的语句中选择所需的符号____。
signal a,b,c : std_logic;c____a+b after 10ns;
A.:=
B.<=
C.==
D.=
答案:B
3.下面关于信号和变量的比较,错误的是()。
A.信号赋值可以有延迟时间
B.变量赋值无时间延迟
C.变量可以看作硬件的一根连线
D.进程对信号敏感
答案:C
4.基于下面技术的PLD器件中允许编程次数最多的是()。
A.FLASH
B.EEPROM
C.PROM
D.SRAM
答案:D
5.MAX+PLUS的文本文件类型是(后缀名)是
A.*.scf
B.*.vhd
C.*.gdf
D.*.sof
答案:B
6.关于数组A的定义如下:signal A:bit_vector(7 downto 0);那么,A=“00110101”,A(7 downto 5)=_____________。
A.’010
B.‘001
C.‘011。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
EDA作业
学号:20091001680 班级:072095-11 姓名:刘云
第五章习题作业
5-8设计一个7人表决电路,参加的表决的7人,同意为1,不同意为0,同意者过半则表决通过,绿指示灯亮;表决不通过则红指示灯亮。
图1 .bdf条件
图2 RTL综合图
第五章实验
5-4(3)完成半加器和全加器的设计
Full_adder的VHDL语言:
LIBRARY ieee;
USE ieee.std_logic_1164.all;
LIBRARY work;
ENTITY f_adder IS
PORT(cin : IN STD_LOGIC;
bin : IN STD_LOGIC;
ain : IN STD_LOGIC;
count : OUT STD_LOGIC;
sum : OUT STD_LOGIC);
END f_adder;
ARCHITECTURE bdf_type OF f_adder IS COMPONENT or2a
PORT(a : IN STD_LOGIC;
b : IN STD_LOGIC;
c : OUT STD_LOGIC);
END COMPONENT;
COMPONENT h_adder
PORT(a : IN STD_LOGIC;
b : IN STD_LOGIC;
co : OUT STD_LOGIC;
so : OUT STD_LOGIC);
END COMPONENT;
SIGNAL SYNTHESIZED_WIRE_0 : STD_LOGIC; SIGNAL SYNTHESIZED_WIRE_1 : STD_LOGIC; SIGNAL SYNTHESIZED_WIRE_2 : STD_LOGIC; BEGIN
b2v_inst : or2a
PORT MAP(a => SYNTHESIZED_WIRE_0,
b => SYNTHESIZED_WIRE_1,
c => count);
b2v_inst1 : h_adder
PORT MAP(a => ain,
b => bin,
co => SYNTHESIZED_WIRE_0,
so => SYNTHESIZED_WIRE_2);
b2v_inst2 : h_adder
PORT MAP(a => SYNTHESIZED_WIRE_2,
b => cin,
co => SYNTHESIZED_WIRE_1,
so => sum);
END bdf_type;
f_adder适配图
f_adde r原理输入图
f_adder时序仿真图
h_adder的VHDL语言:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY H_ADDER IS
PORT(a,b :IN STD_LOGIC;
co, so:OUT STD_LOGIC);
END ENTITY H_ADDER;
ARCHITECTURE FH1 OF H_ADDER IS
BEGIN
so <=NOT(a XOR (NOT B));
co <=a AND b;
END ARCHITECTURE FH1;
RTL综合图
第六章习题作业
6-8判断下面三个程序中是否有错误,若有则指出错误所在,并给出完整程序程序1:
Signal A, EN : std_logic;
Process(A, EN)
Variable B:std_logic;
Begin
if EN = l then B<=A; end if; --将“B<=A”改成“B:=A”
end process;
程序2:
Architecture one of sample is
variable a,b,c:integer;
begin
c<=a+b; --将“c<=a+b”改成“c:=a+b”
end;
完整程序:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity mux21 is
port(clk:in integer range 10 downto 0;
d:out integer range 20 downto 0);
end mux21;
architecture one of mux21 is
begin
process (clk)
variable a,b:integer range 10 downto 0 ;
variable c :integer range 20 downto 0 ;
begin
if clk = 1 then
b:=5;
c:=a+b;
d<=c;
else c:=a-b;d<=c;
end if;
end process;
end architecture one;
RTL综合图
仿真图
程序3:
library ieee;
use ieee.std_logic_1164.all;
entity mux21 is
port(a,b:in std_logic; sel:in std_logic;c:out std_logic;); --将“;)”改成“)” end sam2; --将“sam2”改成“entity mux21” architecture one of mux2l is
begin --增加“process(a,b,sel) begin” if sel= '0' then c:=a; else c:=b; end if; --应改成“if sel= '0' then c<=a;
else c<=b; end if;”
--增加“end process;”
end two; --将“two”改成“architecture one”
library ieee;
use ieee.std_logic_1164.all;
entity mux21 is
port (a,b:in std_logic;
sel:in std_logic;
c :out std_logic);
end entity mux21;
architecture one of mux21 is
begin
process(a,b,sel)
begin
if sel= '0' then c<=a; else c<=b; end if;
end process;
end architecture one;
RTL综合图
仿真图
第六章实验
6-4 32位并进/并出移位寄存器设计
仅用例6-8一个8位移位寄存器,再增加一些电路,如4个8位锁存器等,设计成为一个能为32位二进制数进行不同方式移位的移位寄存器。
这个电路模型十分容易用到CPU的设计中。
程序:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity move_32 is
port( clk,rst,load,mve :in std_logic;
din :in std_logic_vector(31 downto 0);
qh,qb :out std_logic);
end move_32;
architecture one of move_32 is
begin
process(clk,rst,load,mve)
variable reg32: std_logic_vector(31 downto 0); begin
if rst='1' then
reg32:=(others=>'0');
elsif clk'event and clk='1' then
if load='1' then
reg32:=din;
elsif mve='1' then
reg32(30 downto 0):=reg32(31 downto 1);
else reg32(31 downto 1):=reg32(30 downto 0); end if;
end if;
qb<=reg32(0);
qh<=reg32(31);
end process;
end one;
RTL综合图
仿真图。