文档库 最新最全的文档下载
当前位置:文档库 › 作业1——EDA与集成电路设计

作业1——EDA与集成电路设计

作业1——EDA与集成电路设计
作业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为参数,

VDS10。并在特性曲线中标出饱和区与线性区的夹断点。

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大作业

信号发生器的设计 要求: (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个采样点

EDA技术大作业 全自动洗衣机控制器

《EDA技术》大作业 电子钟电路设计要求: 1、准确计时,以数字形式显示时、分、秒的时间; 2、小时为24进制,分与秒的计时要求为60进制; 3、具有校时功能;、整点报时。4 :姓名:学号武启明1893130125 :班级科学:专业与光电信息131 工程

安徽科技学院数理与信息工程学院物电系 EDA全自动洗衣机控制器 1设计目的 《EDA技术与应用》课程是电子信息工程、自动控制、计算机科学与工程等 专业的技术课之一,具有很强的工程实践性。通过本次课程设计来掌握现代硬件数字电路的软件化设计的基本方法、掌握应用VHDL及EDA 工具开发设计各种电路的基本方法,以及对现代电子设计自动化技术有一定的了解,会把所学的专业知识更好的用到实践中去。 2设计的主要内容和要求 (1)设计一简易全自动洗衣机控制器。该控制器由两大状态A和B组成, 每个状态分三个子状态,每个状态分别由选择A和选择B控制。其中A为步进选择按纽,每步跳转一个子状态、B也为步进选择按纽,但每步选择B中的所有组合中的一种。 (2)过程启动由启动/暂停键控制(暂停键在过程启动后任意时间可暂停/恢复过程)。 (3)过程启动后洗衣机盖开启能任意控制。(4)能设置实现多次洗衣的功能。

3整体设计方案 本次设计大致可以分成两个模块来看待:控制端和工作端。 控制部分使用了三个进程来处理,进程一控制状态COUNT_M,进程二控制状态:当连顺出现一个,两个,COUNT_M,进程三控制开始和暂停。其中,COUNT_N. 三个高电平时分别表示强洗,标准,弱洗三种状态的洗衣过程。再者,COUNT_N:当出现一个,两个,三个高电平时分别表示洗涤,漂洗与甩干,甩干。其次,信号START控制洗衣机的暂停和重新启动。 工作部分使用了一个进程来处理,在该进程中主要处理强制开盖,洗衣的各 个状态。控制端中,中间变量SG是工作结束标志信号, DT是状态的中间变量。COOK为强开洗衣机盖子信号端,DCP输入状态中间信号。LOOK为时间到输出停机,当其输出为高电平时所有数据为0。然后等待下次洗涤始工作,直至再次按下 START 键,又从新开洗衣机正常工作过程。与暂停后的再次启动不同。ST 为时间计数的中间变量。整体设计方案如下:

(完整word版)EDA计算器设计大作业

计算器设计 专业:电子信息工程 设计者:

摘要 本文介绍了一个简单的计算器的设计,该设计采用了现场可编程逻辑器件FPGA设计,并基于VHDL语言实现加减乘除功能,并用十进制显示在数码管上。系统由计算部分、输入部分、选择部分、输出部分组成,计算部分为加法器、减法器、乘法器和除法器组成。使用Altera公司的QuartusII开发软件进行功能仿真并给出仿真波形,并下载到试验箱,用实验箱上的按键开关模拟输入,用数码管显示十进制计算结果。通过外部按键可以完成四位二进制数的加、减、乘、除四种运算功能,其结果简单,易于实现。 关键字:VHDL,计算器,QuartusII

目录 一.实验目的 (4) 二、流程图 (4) 三.顶层原理图 (5) 四、各个模块 (6) (1)加法器模块 (6) 1、封装元件 (6) 2、加法器程序 (7) 3、仿真结果 (7) (2)减法器模块 (8) 1、封装元件 (8) 2、减法器程序 (9) 3、仿真结果 (10) 4、硬件运行结果 (11) (3)乘法器模块 (12) 1、封装元件 (12) 2、乘法器的设计思想 (12) 3、乘法器程序 (13) 4、仿真结果 (14) 5、硬件运行结果 (14) (4)除法器模块 (15) 1、封装元件 (15) 2、除法器设计思想 (15) 3、除法器程序 (16) 4、仿真结果 (16) 5、硬件运行结果 (17) (5)8位除法器 (18) 1、封装元件 (18) 2、8位除法器设计思想 (18) 3、8位除法器程序 (19) 4、仿真结果 (21) (6)数码管七段译码电路 (22) 1、封装元件 (22) 2、共阴极七段显示码十六进制转换表 (22) 3、七段译码器程序 (23) 4、仿真结果 (23) (7)选择模块 (24) 1、封装元件 (24) 2、程序 (25) 五、管脚锁定 (25) 六、小结与收获 (26)

西电EDA大作业多功能彩灯

EDA设计报告彩灯控制器 (老师:宗汝) 班级: 学号: 姓名:

一.设计要求 设计能让一排灯(8只)自动改变显示花样的控制系统。可将实验板上的一排发光二极管作为彩灯用。控制器应有两种控制方式: ◆规则变化。变化节拍有0.5秒和0.25秒两种,交替出现,每种节拍可有8种花样,各执行一或二个周期后轮换。 彩灯变化方向有单向移动,双向移动,跳跃移动等。 ◆随机变化。变化花样相同,但节拍及花样的转换都随机出现。 二.设计方案 (1).分频模块。要产生快慢两种节拍,则首先需要有分频器模块,0.5秒和0.25秒两种则可选择四分频和八分频。通过按键进行选择切换。则clk为输入时钟信号,需经分频器分频并输入到LED显示电路;clr为复位清零信号,高电平有效,有效时,电路无条件的回到初始状态;OPT为频率快慢选择信号,低电平节奏快,高电平节奏慢; (2)LED显示模块。经过分频的时钟信号输入LED显示电路中,使电路有规律的输出按照设定的各种花样变化。xuan为选择彩灯变化花样信号,便于改变彩灯花样。而最后就是输出彩灯变化花样led。 三.系统程序设计 分频器模块: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity FENPINQI is port( clk:in std_logic; clr:in std_logic; opt:in std_logic; clkout:out std_logic ); end FENPINQI; architecture arc of FENPINQI is signal clk_tmp: std_logic; signal counter: std_logic_vector(1 downto 0); begin process(clk,clr,opt) begin if clr='1' then --清零 clk_tmp<='0'; counter<="00"; elsif clk'event and clk='1' then

EDA大作业 课程设计 简易计算器

在掌握常用数字电路功能和原理的基础上,根据EDA技术课程所学知识,利用硬件描述语言Verilog HDL、EDA软件Quartus II和硬件平台Cyclone/Cyclone II FPGA进行电路系统的设计。本次实验我完成的内容是简单计算器的设计,下面我简单的进行一下原理的阐述。 设计一个简单计算器,输入为8位二进制数,分别用两位数码管显示,输出的计算结果为16位二进制数,并用四位数码管显示,能够实现+、-、 *、/ 四种运算,其中除法的结果显示分为商和余数两部分,分别用两位数码管显示。为了完成要求的效果显示,我先设计了一个简单的四则运算器,为了使其结果能清楚的看到,所以计算器模块和一个7段数码管模块连接。实验要求,输入分别用两位数码管显示,输出用四位数码管显示,所以用一个3—8译码器和数码管连接,通过开关控制,形成动态显示。从左向右,依次是第一位数码管显示a的高四位,第二位数码管显示a的低四位;第三位数码管显示b的高四位,第四位数码管显示b的低四位;第五位数码管到第八位数码管显示输出的结果。通过改变时钟,使其看起来像同时显示在数码管上。

设计流程如下图,分别用两个数码管表示八位二进制数,用一个case 语句表示输入数值采用哪种运算方式,分别用00,01,10,11表示加,减,乘,除。用3—8译码器选择从哪个数码管输出。 硬件流程图 输出结果 A. B 的显示 软件流程图 LED 灯接线部分显示: 中心控制 复位 编码 数码管输出 输入A 输入B 运算选择C 输出out L E D 8 L E D 7 L E D 6 L E D 5 L E D 4 L E D 3 L E D 2 L E D 1

eda大作业.

班级 021039 学号 02103121 EDA报告 题目 VHDL设计初步 学院电子工程学院 专业信息对抗技术 学生姓名 导师姓名

目录 第一章实验部分(秒表) (2) 1、程序设计: (2) 2、程序代码 (2) 3、程序调试 (4) 第二章习题部分 (8) 习题一 (8) 习题二 (8) 习题三 (10) 习题四 (11) 习题五 (12) 习题六 (14) 习题七 (17)

第一章实验部分(秒表) 1、程序设计: 秒表显示共有6位,两位显示分,两位显示秒,十分秒和百分秒各一位。设计时使用一个计数器,随着时钟上升沿的到来循环计数,每计数一次,百分秒位加一,通过百分秒位满十进位来控制十分位的计数,十分位满十进位,依次类推,实现秒表计数。 为实现秒位的计时精确,百秒位必须以0.01秒的时间间隔计数,即时钟的频率是100Hz。为此,本设计采用3MHz的时钟频率通过分频得到100Hz的时钟频率,再送给控制时钟以得到比较精确的CLK信号。其中,时钟信号CLK为3MHz 的时钟频率,分频后得到的时钟为CLK2,输出引脚CLK2和输入引脚CLK2在外部相连,实现将分频后的时钟送入。 2、程序代码 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY MIAOBIAO IS PORT (CLK,CLK1,STA,POS,STO,RST: IN STD_LOGIC; CQ1,CQ2,CQ3,CQ4,CQ5,CQ6 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0); CLK2:OUT STD_LOGIC ); END MIAOBIAO; ARCHITECTURE BEHAV OF MIAOBIAO IS BEGIN PROCESS(CLK) --由频率为3MHz的时钟产生频率为100Hz的时钟VARIABLE NUM:INTEGER RANGE 0 TO 15000;--定义计数器 VARIABLE Q:STD_LOGIC;

数字电子技术基础EDA大作业2终结报告(2016秋)

EDA大作业二终结报告 █████████████一、预习报告 二、阐述设计思路

1、键盘读入模块 键盘读入模块的作用是向下一模块(控制模块)传递按键是否按下以及按键值为多少。根据矩阵键盘的原理,检测行线上的电平值,可以判断矩阵键盘中有无按键按下。当检测到有按键被按下之后,对列线的电平值进行跑马灯式扫描(S1、S2、S3、S4状态,分别指扫描第1、2、3、4列的信号),若检测到某列有低电平则(进入S5状态)可以由当前的行线电平值和列线电平值确定所按键的值。对于长按键的设计,当检测到有按键时进入S5状态(有按键按下的状态),检测到按键还在被按下状态(行线电平值不为1111)的话,则不进行下一次扫描,直到检测到按键被松开(行线电平值为1111)时,进行下一次扫描(进入S0状态)。对于按键防抖的设计,当检测到行线电平值不为1111时,进入S1、S2、S3、S4状态时都再一次进行行线电平值的判断,如果此时行线电平值没有回到1111,则可以认定这次按键是有效的;若此时检测到行线电平值回到1111,则可以认定这是一个抖动,然后回到S0状态。对于是否有按键按下的输出(key_ready),定义中间变量flag1、flag2、flag3以及按键按下标志flag,flag1是flag的延时,flag2是flag的上升沿检测结果,flag3是flag2的延时,flag2在有按键输出的时候只保持一个时钟周期,由于采用非阻塞式赋值,在有按键按下时flag3会产生一个时钟周期的高电平,作为有按键按下的标志(也可以直接以key_busy作为下一级输入,不过要取key_busy得下降沿,不符合同步电路的设计要求)。 键盘读入模块状态机示意图 2、控制模块 控制模块的作用是根据键盘读入模块读入的值进行处理,向显示模块传递要在数码管上显示的数字。状态转化图如下。

EDA大作业实验报告

一、选题目的 大二学过数电之后大三接触EDA数电逻辑设计,老师上课主讲EDA中的VHDL 语言设计部分,上课听讲感觉认真编写程序,借助程序调试,功能/时序的波形仿真,结果应该不会有太偏的问题,个人感觉关键是在FPGA板上下载运行最好是现象明显直观,涉及的运算单元少的实验,所以我选择做流水灯,感觉老师布置的流水灯的题目要求太多了,我就算自定义一个流水灯吧,希望徐老师不要怪我能力有限。 二、设计目标 设计能让一排灯(8只)自动改变显示花样的控制系统。可将实验板上的一排发光二极管作为彩灯用。八个彩灯的变化方式有8种,分别实现1:从右向左灭灯2:从左向右灭灯 3:从右向左亮灯4:从左向右亮灯 5:从两侧向中间灭灯(两侧各一个) 6:从两侧向中间灭灯(两侧各两个) 7:从右侧向左侧亮灯(一侧两个) 8:交叉闪烁 按照实际生活中常见的流水灯变化,设计的这8种花形变化实现自动循环变化。 三、实现方案(包括原理框图和VHDL设计流程图)

四、设计过程(包括关键模块的仿真结果)VHDL library IEEE; use IEEE.STD_LOGIC_1164.all; useIEEE.STD_LOGIC_unsigned.all; entity led1 is port( sysclk: in std_logic; dout: out std_logic_vector(7downto 0) ); end led1; architecturejgt of led1 is signalcnt : std_logic_vector ( 7 downto 0); --variable count:integer RANGE 0 TO 7; signal count : std_logic_vector(5 DOWNTO 0); begin process(sysclk) begin if ( sysclk'event and sysclk = '1') then cnt<= cnt + 1; if (cnt = "11110111") then cnt<= "00000000" ; count<=count+1; end if ; end if; end process; process (count) begin case count is when "000000" =>dout<= "11111110"; when "000001" =>dout<= "11111101"; when "000010" =>dout<= "11111011"; when "000011" =>dout<= "11110111"; when "000100" =>dout<= "11101111"; when "000101" =>dout<= "11011111"; when "000110" =>dout<= "10111111"; when "000111" =>dout<= "01111111"; when "001000" =>dout<= "10111111"; when "001001" =>dout<= "11011111"; when "001010" =>dout<= "11101111"; when "001011" =>dout<= "11110111"; when "001100" =>dout<= "11111011";

eda大作业

——EDA技术与Verilog HDL 交 通 灯 设 计 学院:电子信息学院 专业:电气工程及其自动化 班级: 学号: 姓名:

目录 前言--------------------------------------------------------------------1 一、设计任务------------------------------------------2 二、题目分析与整体构思---------------------------------2 三、硬件电路设计--------------------------------------3 四、程序设计------------------------------------------7 五、设计创新-----------------------------------------12 六、心得体会-----------------------------------------13 七、参考文献-----------------------------------------13

前言 伴随着社会的发展以及人类生活水平的提高,汽车的数量在D的DEA技术的发展和应用领域的扩大与深入,EDA技术在电子信息,通信,自动,控制及计算机应用等领域的重要性日益突出。随着技术市场与人才市场对DEA的不断的增加,交通的问题日益突出,单单依靠人力来指挥交通已经不可行了,所以,设计交通灯来完成这个需求就显的越加迫切了.为了确保十字路口的行人和车辆顺利、畅通地通过,往往采用电子控制的交通信号来进行指挥。以下就是运用数字电子设计出的交通灯:其中红灯亮,表示该条路禁止通行;黄灯亮表示停车;绿灯亮表示允许通行。 一﹑设计任务 1.1设计要求: 设计一个十字路口的交通灯控制系统,用实验平台上的LED发光二极管显示车辆通过的方向(东西和南北各一组),用数码管显示该方向的剩余时间。要求:工作顺序为东西方向红灯亮45秒,前40秒南北方向绿灯亮,后5秒黄灯亮。然后南北方向红灯亮45秒,前40秒东西方向绿灯亮,后5秒黄灯亮。依次重复。有紧急事件时允许将某方向一直开绿灯或者开红灯,另外允许特定情况两方向均为红灯,车辆禁行,比如十字路口恶性交通事故时,东西,南北两个方向均有两位数码管适时显示该方向亮灯时间。 二、题目分析与整体构思 (1)该交通灯控制器应具备的功能 设东西和南北方向的车流量大致相同,因此红、黄、绿灯的时长也相同,定为红灯45sec,黄灯5sec,绿灯40sec,同时用数码管指示当前状态(红、黄、绿)剩余时间。另外,设计一个紧急状态,当紧急状态出现时,两个方向都禁止通行,指示红灯。紧急状态解除后,重新计数并指示时间。 (2) 实现方案 一从题目中计数值与交通灯的亮灭的关系如图(1)所示

(完整版)EDA大作业

EDA技术实践报告十进制加法计数器 姓名:王浩 学号: 121104109 专业:电气自动化 班级: 12级自动化二班 日期: 2014.6.20

目录 第1章前言 (1) 1.1摘要 (1) 第2章设计说明 (2) 2.1设计思路 (2) 2.2模块介绍 (2) 2.3真值表 (3) 第3章原理图 (5) 第4章波形仿真图 (10) 第5章管脚锁定及连线 (11) 第6章总结 (13)

第一章前言 本次课程设计介绍了一种基于数字电子技术的十进制加法器实现了如下功能: 1.用四个数码管显示加数与被加数和结果 2.设置加数和被加数。当加数和被加数超过9时显示“E”,计算结果显示为“EE” 3.分别用四个拨码开关控制加数与被加数 4.当加数、被加数超过9时,蜂鸣器报警5秒 EDA技术,就是以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为实验工具,通过有关的开发软件,自动完成用软件的方式设计的电子系统到硬件系统的逻辑编译、逻辑化建、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形成集成电子系统或专用集成芯片的一门新技术。 利用EDA技术进行电子系统的设计,具有以下几个特点:1.用软件的方式设计硬件;2.用软件方式设计的系统到硬件系统的转换是由有关的开发软件自当完成的;3.设计过程中可用有关软件进行仿真;4.系统可现场编程,在线升级;5.整个系统可集成在一个芯片上,体积小,功能低,可靠性高。因此,EDA技术是现代电子设计的发展趋势。 1.1摘要 此次设计是十进制加法器,用74238进行加法部分,根据BCD码加法运算规则,当俩数相加的结果小于或等于9时,相加结果与二进制数相加结果一致,当相加结果大于9时,相当于按二进制数相加所得的结果再加6. 当加数或被加数超过九时,数码管显示E,结果显示EE。蜂鸣器报警5秒钟。 关键字:十进制加法器,数码管显示,蜂鸣器报警

西电eda大作业

EDA实验报告 班级:021211班 指导老师:杨明磊

实验一:QUARTUS II软件使用及组合电路设计 仿真 一、实验目的: 学习QUARTUS II软件的使用,掌握软件工程的建立、VHDL源文件的设计和波形仿真等基本内容; 二、实验内容: 1.四选一多路选择器的设计 首先利用QuartusⅡ完成4选1多路选择器的文本编辑输入(mux41a.vhd)和仿真测试等步骤,给出仿真波形。 (1)、功能及原理 原理:数据选择器又称为多路转换器或多路开关,它是数字系统中常用的一种典型电路。其主要功能是从多路数据中选择其中一路信号发送出去。所以它是一个多输入、单输出的组合逻辑电路。 功能:当选择控制端s10=00时,输出a y=;s10=01时,输出b y=;s10=10时,输出c y=;s10=11时,输出d y=。 (2)、逻辑器件符号 (3)、VHDL语言

(4)、波形仿真 (5)、仿真分析 由波形可知:当s10=00时,y的波形与a相同; 当s10=01时,y的波形与b相同; 当s10=10时,y的波形与c相同; 当s10=11时,y的波形与d相同; 与所要实现的功能相符,源程序正确。 2、七段译码器程序设计仿真 (1)、功能及原理 7段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利

用VHDL译码程序在FPGA或CPLD中实现。实验中的数码管为共阳极,接有低电平的段发亮。例如当LED7S输出为 "0010010" 时,数码管的7个段:g、f、e、d、c、b、a分别接0、0、1、0、0、1、0,于是数码管显示“5”。 (2)、逻辑器件符号 (3)、VHDL语言

西电EDA满分大作业

EDA报告 题目 VHDL设计初步 学院电子工程学院 专业 学号 导师姓名朱燕

目录 第一章实验部分(流水灯) (3) 1、程序设计: (3) 2、程序代码........................................................................................... 错误!未定义书签。 3、程序调试........................................................................................... 错误!未定义书签。 第二章习题部分............................................................................................. 错误!未定义书签。 习题一..................................................................................................... 错误!未定义书签。 习题二..................................................................................................... 错误!未定义书签。 习题三..................................................................................................... 错误!未定义书签。 习题四..................................................................................................... 错误!未定义书签。 习题五..................................................................................................... 错误!未定义书签。 习题六..................................................................................................... 错误!未定义书签。 习题七..................................................................................................... 错误!未定义书签。 引言 随着大规模集成电路技术和计算机技术的不断发展,在涉及通信、国防、航天、医学、工业自动化、计算机应用、仪器仪表等领域的 电子系统设计工作中,EDA技术的含量正以惊人的速度上升;电子类 的高新技术项目的开发也逾益依赖于EDA技术的应用。即使是普通的电子产品的开发,EDA技术常常使一些原来的技术瓶颈得以轻松突破,从而使产品的开发周期大为缩短、性能价格比大幅提高。不言而喻,EDA技术将迅速成为电子设计领域中的极其重要的组成部分。

EDA大作业

EDA技术课程大作业 设计题目:移位相加8位硬件乘法器的设计 学生姓名:曲毅 学号:0990******* 专业班级:通信1101

移位相加8位硬件乘法器电路设计 1. 设计背景和设计方案 1.1设计背景 纯组合逻辑构成的乘法器虽然工作速度比较快,但过于占用硬件资源,难以实现多位乘法器,基于PLD器件外接ROM九九表的乘法器则无法构成单片系统,也不实用。这里介绍由八位加法器构成的以时序逻辑方式设计的八位乘法器,具有一定的实用价值,而且由FPGA构成实验系统后,可以很容易的用ASIC大型集成芯片来完成,性价比高,可操作性强。 1.2设计方案 此设计是由八位加法器构成的以时序逻辑方式设计的八位乘法器,它的核心器件是八加法器。所以关键是设计好八位加法器方案一八位直接宽位加法器,它的速度较快,但十分耗费硬件资源,对于工业化设计是不合理的方案二:由两个四位加法器组合八位加法器,其中四位加法器是四位二进制并行加法器它的原理简单,资源利用率和进位速度方面都比较好。综合各方面的考虑,决定采用方案二。由8位加法器构成的以时序逻辑方式设计的8位乘法器乘法通过逐向移位加原理来实现,从被乘数的最低位开始,若为1,则乘数左移与上一次和相加;若为0,左移后以全零相加,直至被乘数的最高位。 本乘法器结构框图如下: 图1 基本结构框图 本乘法器原理图如图2所示:由五个模块组成。其中ARICTL是乘法运算控制电路,它的START信号上的上跳沿与高电平有2个功能,即16位寄存器清零和被乘数A[7..0]]向移位寄存器SREG8B加载;它的低电平则作为乘法使能信号,乘法时钟信号从ARICTL的CLK 输入。当被乘数被加载于8位右移寄存器SREG8B后,随着每一时钟节拍,最低位在前,由低位至高位逐位移出。当为1时:一位乘法器ANDARITH打开,8位乘数B[7..0]在同一节

EDA技术与VHDL语言课程大作业设计

EDA技术与VHDL语言课程大作业 设计题目:电子分频器 姓名:李露 班级:自动化10(2) 学号: 208

目录 1. 设计背景 2. 设计方案 计数器模块 任意偶数分频模块 任意奇数分频模块 设计思路 3. 数字分频器模块的VHDL源程序 任意偶数分频的VHDL源程序() 任意奇数分频的VHDL源程序() 4. 源程序总体描述 5. 波形仿真图 6. 总结 7. 参考文献 1.设计背景 EDA技术作为计算机硬件设计中的关键设计技术之一,是每一位将来希望从事涉及电子系统与集成电路设计研究领域工作的人所必须掌

握的一门技术。时序逻辑电路作为其主要设计与研究的电路类型之一,在EDA中占据着重要的位置,而时钟信号在时序逻辑电路有占据着重要的位置,它决定了时序逻辑单元中的状态何时更新。时钟信号作为一种有固定周期并与运行状态无关的信号量,在边沿触发机制中,只有上升沿或下降沿才是有效信号,才能控制逻辑单元状态量的改变。为满足不同的时序电路要求,对时钟信号进行分频也显得格外重要 基于EDA技术的数控分频器设计,采用的是用软件的方法设计硬件的EDA (电子设计自动化)技术。作为EDA技术重要组成部分的VHDL硬件描述语言是一种符合IEEE工业标准的建模语言。用它设计的数控分频器可作为一个模块,移植到很多数字电路系统中,且极易修改,只要修改程序中的某几条语句,就可使最大分频系数得到改变。整个设计过程简单、快捷。可从根本上减少硬件调试的时间,为总体设计完成争取宝贵的时间。 2. 设计方案 计数器模块 通过计数器来记录clk的信号个数,分别有以上升沿计数和以下降沿计数。偶数计数器可采用以上升沿计数,即每当clk从0变为1时记一个数,下降沿计数是当clk从1变为0时记一个数 任意偶数分频模块 定义一个计数器对输入时钟进行计数,在计数的前一半时间里,输出高电平,在计数的后一半时间里,输出低电平,这样输出的信号就是占空比为50%的偶数分频信号。例如,6分频,计数值为0~2输出高电平,计数值为3~5输出低电平。

EDA期末大作业设计

EDA 课程设计报告 题 目 简易电子琴 组 员 王维婷(3110403128) 郑雅亿(3110403131) 专业班级 电子信息工程112班 宁波理工学院

一、实验目的 1.学习利用数控分频器、键盘实验。 2.理解PS/2键盘的基本原理。 二、实验原理 本实验利用键盘的数字按键部分来控制电子琴的C调,DO RA,MI,FA,SO,LA,SI,分别用0,1,2,3,4,5,6,7来进行控制。们使用了键盘的介入来进行控制。 组成乐曲的每个音符的发音频率值及其持续的时间是乐曲能连续演奏所需的2个基本要素,首先让我们来了解音符与频率的关系。乐曲的12平均率规定:每2个八度音(如简谱中的中音1与高音1)之间的频率相差1倍。在2个八度音之间,又可分为12个半音,每2个半音的频率比为。另外,音符A(简谱中的低音6)的频率为440Hz,音符B到C之间、E到F之间为半音,其余为全音。由此可以计算出简谱中从低音1至高音1之间每个音符的频率,如图所示。 简谱中音符与频率的关系 如图所示,为PS/2键盘的接口引脚图。 下图为PS/2键盘的通信时序图。

主系统由4个模块组成:TOP是顶层设计文件,其内部有三个功能模块:Tone.VHD、Speaker.VHD、enc16_4.VHD.、PS2VHDL.VHD、clkdiv10.VHD、clkdiv50.VHD以及PULSE12.VHD 模块TONE是音阶发生器,当4位发声控制输入INDEX中某一位为高电平时,则对应某一音阶的数值将从端口TONE输出,作为获得该音阶的分频预置值;同时由CODE输出对应该音阶简谱的显示数码,如‘5’,并由HIGH输出指示音阶高8度显示。由例6-28可见,其语句结构只是类似与真值表的纯组合电路描述,其中的音阶分频预置值,如Tone <= 1290是根据产生该音阶频率所对应的分频比获得的。 简易电子琴电路结构 模块SPEAKER中的主要电路是一个数控分频器,它由一个初值可预置的加法计数器构成,当模块SPEAKER由端口TONE获得一个2进制数后,将以此值为计数器的预置数,对端口CLK12MHZ输入的频率进行分频,之后由SPKOUT向扬声器输出发声。 模块NOTETABS,用于控制音乐的暂停与播放,产生节拍控制(INDEX数据存留时间)和音阶选择信号,即在NOTETABS模块放置一个乐曲曲谱真值表,由一个计数器的计数值来控制此真值表的输出,而由此计数器的计数时钟信号作为乐曲节拍控制信号,从而可以设计出一个纯硬件的乐曲自动演奏电路。 试完成此项设计,并在EDA实验系统上的FPGA目标器件中实现之。 5、实验内容:编译适配以上4个示例文件,给出仿真波形,最后进行下载和硬件测试实验。建议使用实验电路模式“3”,用短路帽选择“CLOCK9”的输入频率选择12MHz,此信号作为系统输入信号CLK12MHZ;CLK8HZ与clock2相接,接受4Hz 频率;键盘按键0-7作为输入信号控制各音阶。 三、实验代码 enc16_4 library ieee ; use ieee.std_logic_1164.all ; entity enc16_4 is port ( I : in std_logic_vector(7 downto 0);--输入的待编码信号 Y : out std_logic_vector(3 downto 0)) ;--编码输出 end enc16_4; architecture one of enc16_4 is SIGNAL L: STD_LOGIC_VECTOR(7 DOWNTO 0);

EDA大作业格式与范例

五邑大学信息工程学院 EDA技术 课程名称:EDA技术 设计题目:基于Verilog HDL语言的 可整点输出学号系统 院系:信息工程学院 班级: 设计者: 学号: 指导教师:刘战 设计时间:2013.06.09 五邑大学

电子系统EDA 目录 第一章引言 (3) 1.1 状态机简介 (3) 1.2 状态检测 (3) 1.3V erilog HDL硬件描述语言简介 (4) 1.4V erilog HDL硬件描述语言主要功能简介 (4) 第二章状态检测机设计 (6) 2.1 状态检测机设计要求 (6) 2.2 状态检测机设计思路 (6) 2.3 利用Quartus II软件仿真实现 (6) 2.3.1 电路变量分析 (6) 2.3.2 新建工程moore (7) 2.3.3 设计输入 (7) 2.3.4 Verilog语言描述 (7) 2.3.5 仿真电路图 (8) 2.3.6 状态装换图 (9) 2.3.7创建波形文件 (9) 2.3.8Quartus II仿真设置 (10) 2.3.9仿真结果 (10) 第三章总结 (11) 参考文献 (12)

第一章引言 1.1状态机简介 有限状态机是绝大部分控制电路的核心结构。有限状态机是一种概念性机器,它能采取某种操作来响应一个外部事件。具体采取的操作不仅能取决于接收到的事件,还能取决于各个事件的相对发生顺序。之所以能做到这一点,是因为机器能跟踪一个内部状态,它会在收到事件后进行更新。为一个事件而响应的行动不仅取决于事件本身,还取决于机器的内部状态。另外,采取的行动还会决定并更新机器的状态。这样一来,任何逻辑都可建模成一系列事件/状态组合。 状态机可归纳为4个要素,即现态、条件、动作、次态。这样的归纳,主要是出于对状态机的内在因果关系的考虑。“现态”和“条件”是因,“动作”和“次态”是果。详解如下: ①现态:是指当前所处的状态。 ②条件:又称为“事件”,当一个条件被满足,将会触发一个动作,或者执行一次状态的迁移。 ③动作:条件满足后执行的动作。动作执行完毕后,可以迁移到新的状态,也可以仍旧保持原状态。动作不是必需的,当条件满足后,也可以不执行任何动作,直接迁移到新状态。 ④次态:条件满足后要迁往的新状态。“次态”是相对于“现态”而言的,“次态”一旦被激活,就转变成新的“现态”了。 状态机可以分为以下两种类型: Moore型:输出是当前状态的函数。 Mealy型:输出是当前状态和输入的函数。 Mealy型状态机输出的变化先于Moore型状态机。具体来说,Mealy型状态机的输出在输入变化的时候立刻发生变化;而Moore型状态机在输入变化后,还必须等到时钟的到来,时钟使状态发生变化时才导致输出的变化,所以比Mealy型状态机要多等待一个时钟周期。 1.2状态检测 所谓状态检测,就是直接对分组的数据进行处理,并且结合前后分组的数据进行综合判断,然后决定是否允许该数据包通过。 状态检测技术的发展由来已久,早期的电报即可看作是基于状态检测的通讯手段。近年来,随着计算机技术与互联网的不断发展,数据传送量已经变得越来越大,如何保证接收到的数据准确无误,已经受到人们越来越多的关注。为了解决这一问题,科学家和工程师们已经研发出了很多种检错与纠错码,而这些技术

423403367_3_EDA大作业2 显示和输入2011

EDA大作业二扫描显示和扫描输入 一、目的 1.学习使用硬件描述语言设计电路。 2.提高调试简单数字系统的能力。 二、任务1 设计一个数码管的动态扫描显示电路,在4位动态扫描数码管上显示作业一中的十进制数计算结果。 具体内容及步骤: 1.编写testbench文件用modelsim对作业一中的4位加法器做功能仿真和时序仿真。 2.用硬件语言设计一个分频器,建议将系统时钟50MHz分频至250Hz左右。 3.利用学习机上的2-4译码器,在4位动态扫描数码管上显示作业一中的十进制数计算结果。 4.编写testbench文件用modelsim对分频器做功能仿真和时序仿真。 三、任务2 使用状态机电路设计一个4×4矩阵键盘信号检测电路,且识别出的按键数字能显示在4位动态扫描数码管上。 具体内容及步骤: 1.编写testbench文件用modelsim做功能仿真和时序仿真。 2.将输入按键的二进制编码显示在发光二极管上。 3.设计译码电路,将学习机4×4矩阵键盘上标注的数字显示在4位动态扫描数码管上。 A、B、C、D用十六进制数表示,*和#号对应十六进制的E和F。 四、验收步骤 整个project下载实现全部功能后,才能开始验收。请同学们首先按以下步骤自查,做的过程中可以答疑,但每人只有一次验收机会。 1.分频器仿真 2.状态机电路仿真 3.数码管显示电路的仿真 4.数码管显示电路下载及功能演示 5.矩阵键盘检测电路的仿真 6.矩阵键盘检测电路下载及功能演示

附录1:Quartus II调用modelsim仿真流程 Quartus II 9.0自带的仿真工具采用画波形图的方法,虽然直观和易于入门,但无法描绘复杂的激励;难于定位准确的时间标记;仿真时间长;只适合测试小工程文件。在Quartus II 10.0以后的版本中已经没有画波形图的仿真工具,取而代之的是第三方仿真工具modelsim。 modelsim使用测试文件(testbench)描述激励源,可以产生各种激励源,模拟各种现实情况,而且仿真速度远高于画波形图法。但modelsim使用较为复杂和繁琐,本节介绍一种简化的使用方法。 1.1 testbench文件 测试文件(testbench)是一个软件测试平台,用以仿真、测试硬件电路功能。其源代码可以用verilog或者VHDL编写。 下面用2选1数据选择器的测试文件为例,介绍testbench写法规则。 图1.1给出了用VHDL写的2选1数据选择器模块和它的测试文件。测试文件写法规则如下: 1.无对外接口。因为仿真文件没有器件连接要求,所以文件中只写实体名,不需要定义端口,如图1.1b第4、第5行所示。 2.申明要测试的器件。在结构体中使用原件例化语句(component)申明要测试的器件,注意端口名称要与被测试文件的一致,如图1.1b第13 ~ 18行所示。 3.编写测试向量。在写进程语句(process)之前需要描述例化元件和结构体中信号线(signal)的连接关系,并给例化元件起标识名,本例中标识名是mux_instance 。如图1.1b 第21 ~ 26行所示。

汽车尾灯控制器的设计(EDA大作业)

EDA技术课程大作业 设计题目:汽车尾灯控制器的设计 学生姓名: 学号: 专业班级: 2012年6月2日

汽车尾灯控制器的设计 1. 设计背景和设计方案 1.1 设计背景 随着社会的发展,科学技术也在不断的进步,状态机的应用越来越广泛。现代交通越来越拥挤,安全问题日益突出,在这种情况下汽车尾灯控制器的设计成为解决交通安全问题一种好的途径。 伴随着集成电路和计算机技术的飞速发展,EDA技术应运而生,它是一种高级、快速、有效的电子设计自动化技术。EDA将大量的电路功能集成到一个芯片中,并且可以由用户自行设计逻辑功能,提高了系统的集成度和可靠性。运用EDA技术可以方便、快捷设计电路系统。本次设计就是运用EDA技术,根据状态机原理实现了汽车尾灯常用控制。 1.2 设计方案 1.2.1 系统设计要求 根据现代交通规则,汽车尾灯控制器应满足以下基本要求: (1). 汽车正常使用是指示灯不亮 (2). 汽车右转时,右侧的一盏灯亮 (3). 汽车左转时,左侧的一盏灯亮 (4). 汽车刹车时,左右两侧的指示灯同时亮 (5). 汽车夜间行驶时,左右两侧的指示灯同时一直亮,供照明使用 1.2.2 系统组成及原理图 汽车尾灯控制器就是一个状态机的实例。当汽车正常行驶时所有指示灯都不亮;当汽车向右转弯时,汽车右侧的指示灯RD1亮;当汽车向左侧转弯时,汽车左侧的指示灯LD1亮;当汽车刹车时,汽车右侧的指示灯RD2和汽车左侧的指示灯LD2同时亮;当汽车在夜间行驶时,汽车右侧的指示灯RD3和汽车左侧的指示灯LD3同时一直亮。通过设置系统的输入信号:系统时钟信号CLK,汽车左转弯控制信号LEFT,汽车右转弯控制信号RIGHT,刹车信号BRAKE,夜间行驶信号NIGHT

相关文档
相关文档 最新文档