EDA课程设计论文
论文题目:EDA概述及计数器设计
设计者: 牟俸呈
指导老师:包明
学 号: 10907990416
专业班级:109079904
中 国 · 重 庆
2011 年 4月
目录
1. 摘要,关键字………………………………………………………3
2. 正文…………………………………………………………………4
2.1 EDA技术的基本特征………………………………………………4
2.2EDA技术的基本设计方法…………………………………………………5
2.3设计任务及要求……………………………………………………………7
2.4程序的编辑…………………………………………………………7
2.5用QUARTUS II软件进行模拟仿真…………………………………8
2.6收获体会、存在问题和进一步的改进意见等…………………………8
3.参考文献………………………………………………………………8
EDA概述及VHDL语言实现计数器的设计
[摘要]: 随着基于PLD的EDA技术的发展和应用领域的扩大与深入,EDA技术在电子信息、通信、自动控制及计算机应用等领域的重要性日益突出。本文详细介绍EDA课程设计任务——计数器的设计的详细设计过程及结果,并总结出心得体会。
[关键字]:EDA技术;VHDL语言;计数器
EDA技术作为现代电子设计技术的核心,它依赖强大的计算机,在EDA工具软件平台上,对以硬件描述语言HDL为系统逻辑描述手段完成的设计文件,自动地完成逻辑编译、逻辑简化、逻辑分割、逻辑综合,以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能。介绍在QUARTUS II软件环境下开发基于VHDL语言计数器的设计。
2.1 EDA技术的基本特征
EDA代表了当今电子设计技术的最新发展方向,它的基本特征是:设计人员按照“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片专用集成电路(ASIC)实现,然后采用硬件描述语言(HDL)完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件,这样的设计方法被称为高层次的电子设计方法。下面介绍与EDA基本特征有关的几个概念。
1.“自顶向下”的设计方法10年前,电子设计的基本思路还是选用标准集成电路“自底向上”地构造出一个新的系统,这样的设计方法就如同一砖一瓦建造金字塔,不仅效率低、成本高而且容易出错。
高层次设计是一种“自顶向下”的全新设计方法,这种设计方法首先从系统设计入手,在顶层进行功能方框图的划分和结构设计。在方框图一级进行仿真、纠错,并用硬件描述语言对高层次的系统行为进行描述,在系统一级进行验证。然后,用综合优化工具生成具体门电路的网络表,其对应的物理实现级可以是印刷电路板或专用集成电路。由于设计的主要仿真和调试过程是在高层次上完成的,这既有利于早期发现结构设计上的错误,避免设计工作的浪费,又减少了逻辑功能仿真的工作量,提高了设计的一次成功率。
2.ASIC设计现代电子产品的复杂度日益提高,一个电子系统可能由数万个中小规模集成电路构成,这就带来了体积大、功耗大、可靠性差的问题。解决这一问题的有效方法就是采用ASIC芯片进行设计。ASIC按照设计方法的不同可分为全定制ASIC、半定制ASIC和可编程ASIC(也称为可编程逻辑器件)。
设计全定制ASIC芯片时,设计师要定义芯片上所有晶体管的几何图形和工艺规则,最后将设计结果交由IC厂家去进行掩模制造,做出产品。这种设计方法的优点是芯片可以获得最优的性能,即面积利用率高、速度快、功耗低,而缺点是开发周期长,费用高,只适合大批量产品开发。
半定制ASIC芯片的版图设计方法分为门阵列设计法和标准单元设计法,这两种方法都是约束性的设计方法,其主要目的就是简化设计,以牺牲芯片性能为代价来缩短开发时间。
可编程逻辑芯片与上述掩模ASIC的不同之处在于:设计人员完成版图设计后,在实验室内就可以烧制出自己的芯片,无须IC厂家的参与,大大缩短了开发周期。
可编程逻辑器件自70年代以来,经历了PAL、GAL、CPLD、FPGA几个发展阶段,其中CPLD/FPGA属高密度可编程逻辑器件,目前集成度已高达200万门/片,它将掩模ASIC集成度高的优点和可编程逻辑器件设计生产方便的特点结合在一起,特别适合于样品研制或小批量产品开发,使产品能以最快的速度上市,而当市场扩大时,它可以很容易地转由掩模ASIC实现,因此开发风险也大为降低。
上述ASIC芯片,尤其是CPLD/FPGA器件,已成为现代高层次电子设计方法的实现载体。
3.硬件描述语言硬件描述语言(HDL)是一种用于设计硬件电子系统的计算机语言,它用软件编程的方式来描述电子系统的逻辑功能、电路结构和连接形式,与传统的门级描述方式相比,它更适合大规模系统的设计。例如一个32位的加法器,利用图形输入软件需要输入500至1000个门,而利用VHDL语言只需要书写一行“A=B+C”即可。而且VHDL语言可读性强,易于修改和发现错误。早期的硬件描述语言,如ABEL、HDL、AHDL,由不同的EDA厂商开发,互不兼容,而且不支持多层次设计,层次间翻译工作要由人工完成。为了克服以上不足,1985年美国国防部正式推出了高速集成电路硬件描述语言VHDL,1987年IEEE采纳VHDL为硬件描述语言标准(IEEESTD-1076)。
VHDL是一种全方位的硬件描述语言,包括系统行为级、寄存器传输级和逻辑门级多个设计层次,支持结构、数据流和行为三种描述形式的混合描述,因此VHDL几乎覆盖了以往各种硬件描述语言的功能,整个自顶向下或自底向上的电路设计过程都可以用VHDL来完成。VHDL还具有以下优点:(1)VHDL的宽范围描述能力使它成为高层次设计的核心,将设计人员的工作重心提高到了系统功能的实现与调试,而花较少的精力于物理实现。(2)VHDL可以用简洁明确的代码描述来进行复杂控制逻辑的设计,灵活且方便,而且也便于设计结果的交流、保存和重用。(3)VHDL的设计不依赖于特定的器件,方便了工艺的转换。(4)VHDL是一个标准语言,为众多的EDA厂商支持,因此移植性好。
4.EDA系统框架结构EDA系统框架结构(Framework)是一套配置和使用EDA软件包的规范。目前主要的EDA系统都建立了框架结构,如Cadence公司的DesignFramework,Mentor公司的FalconFramework,而且这些框架结构都遵守国际CFI组织制定的统一技术标准。框架结构能将来自不同EDA厂商的工具软件进行优化组合,集成在一个易于管理的统一的环境之下,而且还支持任务之间、设计师之间以及整个产品开发过程中的信息传输与共享,是并行工程和自顶向下设计方法的实现基础。
2.2EDA技术的基本设计方法
EDA技术的每一次进步,都引起了设计层次上的一次飞跃,图1示出EDA技术设计层次的飞跃。物理级设计主要指IC版图设计,一般由半导体厂家完成,对电子工程师没有太大的意义,因此本文重点介绍电路级设计和系统级设计。
1.电子工程师接受系统设计任务后,首先确定设计方案,并选择能实现该方案的合适元器件,然后根据具体的元器件设计电路原理图。接着进行第一次仿真,其中包括数字电路的逻辑模拟、故障分析,模拟电路的交直流分析、瞬态分析。在进行系统仿真时,必须要有元件模型库的支持,计算机上模拟的输入输出波形代替了实际电路调试中的信号源和示波器。这一次仿真主要是检验设计方案在功能方面的正确性。仿真通过后,根据原理图产生的电气连接网络表进行PCB板的自动布局布线。在制作PCB板之前还可以进行PCB后分析,其中包括热分析、噪声及窜扰分析、电磁兼容分析、可靠性分析等,并可将分析后的结果参数反标回电路图,进行第二次仿真,也称为后仿真。后仿真主要是检验PCB板在实际工作环境中的可行性。
由此可见,电路级的EDA技术使电子工程师在实际的电子系统产生前,就可以全面地了解系统的功能特性和物理特性,从而将开发风险消灭在设计阶段,缩短了开发时间,降低了开发成本。
2.系统级设计进入90年代以来,电子信息类产品的开发明显呈现两个特点:一是产品复杂程度提高;二是产品上市时限紧迫。然而,电路级设计本质上是基于门级描述的单层次设计,设计的所有工作(包括设计输入、仿真和分析、设计修改等)都是在基本逻辑门这一层次上进行的,显然这种设计方法不能适应新的形势,一种高层次的电子设计方法,也即系统级设计方法,应运而生。
高层次设计是一种“概念驱动式”设计,设计人员无须通过门级原理图描述电路,而是针对设计目标进行功能描述。由于摆脱了电路细节的束缚,设计人员可以把精力集中于创造性的方案与概念的构思上,一旦这些概念构思以高层次描述的形式输入计算机,EDA系统就能以规则驱动的方式自动完成整个设计。这样,新的概念就能迅速有效地成为产品,大大缩短了产品的研制周期。不仅如此,高层次设计只是定义系统的行为特性,可以不涉及实现工艺,因此还可以在厂家综合库的支持下,利用综合优化工具将高层次描述转换成针对某种工艺优化的网络表,使工艺转化变得轻而易举。系统级设计的工作流程见图3。首先,工程师按照“自顶向下”的设计方法进行系统划分。其次,输入VHDL代码,这是高层次设计中最为普遍的输入方式。此外,还可以采用图形输入方式(框图,状态图等),这种输入方式具有直观、容易理解的优点。第三步是,将以上的设计输入编译成标准的VHDL文件。第四步是进行代码级的功能仿真,主要是检验系统功能设计的正确性。这一步骤适用大型设计,因为对于大型设计来说,在综合前对源代码仿真,就可以大大减少设计重复的次数和时间。一般情况下,这一仿真步骤可略去。第五步是,利用综合器对VHDL源代码进行综合优化处理,生成门级描述的网络表文件,这是将高层次描述转化为硬件电路的关键步骤。综合优化是针对ASIC芯片供应商的某一产品系列进行的,所以综合的过程要在相应的厂家综合库支持下才能完成。第六步是,利用产生的网络表文件进行适配前的时序仿真,仿真过程不涉及具体器件的硬件特性,是较为粗略的。一般的设计,也可略去这一仿真步骤。第七步是利用适配器将综合后的网络表文件针对某一具体的目标器件进行逻辑映射操作,包括底层器件配置、逻辑分割、逻辑优化、布局布线。第八步是在适配完成后,产生多项设计结果:(1)适配报告,包括芯片内部资源利用情况,设计的布尔方程描述情况等;(2)适配后的仿真模型;(3)器件编程文件。根据适配后的仿真模型,可以进行适配后的时序仿真,因为已经得到器件的实际硬件特性(如时延特性),所以仿真结果能比较精确地预期未来芯片的实际性能。如果仿真结果达不到设计要求,就需要修改VHDL源代码或选择不同速度和品质的器件,直至满足设计要求;最后一步是将适配器产生的器件编程文件通过编程器或下载电缆载入到目标芯片FPGA或CPLD中。如果是大批量产品开发,则通过更换相应的厂家综合库,轻易地转由ASIC形式实现。综上所述,EDA技术是电子设计领域的一场革命,目前正处于高速发展阶段,每年都有新的EDA工具问世。广大电子工程人员掌握这一先进技术,这不仅是提高设计效率的需要,更是我国电子工业在世界市场上生存、竞争与发展的需要。
2.3.设计任务及要求
1、设计内容
选用合适的可编程逻辑器件及外围电子元器件,设计一个从0到自己学号后三位的循环计数器,利用EDA软件(QUARTUS Ⅱ)进行编译及仿真
2、设计要求
(1)能够实现循环计数
(2)当到学号后三位时跳转并不出现后三位的数字
2.4程序的编辑
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY COUNT IS
PORT(CLK,CLR :IN STD_LOGIC;
CON :OUT STD_LOGIC;
Y :OUT STD_LOGIC_VECTOR(11 DOWNTO 0));
END COUNT;
ARCHITECTURE A OF COUNT IS
SIGNAL q1 :STD_LOGIC_VECTOR(3 DOWNTO 0);
SIGNAL q2 :STD_LOGIC_VECTOR(3 DOWNTO 0);
SIGNAL q3 :STD_LOGIC_VECTOR(3 DOWNTO 0 );
BEGIN
P1:PROCESS(CLK,CLR)
BEGIN
IF CLR='1' THEN q1<="0000";q2<="0000";q3<="0000";CON<='0';
ELSIF (CLK'EVENT AND CLK='1') THEN
IF q1="0101" AND q2="0001" AND q3="0100"
THEN CON<='1'; q1<="0000"; q2<="0000";q3<="0000";
ELSIF q1="1001" THEN q1<="0000" ;CON<='0';
IF q2="1001" THEN q2<="0000" ;q3<=q3+1;CON<='0';
ELSE q2<=q2+1;CON<='0';
END IF;
ELSE q1<=q1+1;CON<='0';
END IF;
END IF;
Y<=q3&q2&q1;
END PROCESS;
END A;
2.5.用QUARTUS II软件进行模拟仿真及方针截图
用QUARTUS II模拟仿真所得截图如上,当数字到416后出现高电平并且不出现416
2.6.收获体会、存在问题和进一步的改进意见等。
从这次EDA设计中,可以看出我们已经可以初步的独立写一些简单的程序,但是在程序的细节方面的处理还有待提高。另一方面,我们更加对EDA从实践上更有深刻认识。从实践中发现问题,分析问题,解决问题在这次设计中很大的体现出来,提高了我们的能力和自信。
[参考文献]
包明 EDA技术与可编程器件的应用 第一版 北京航空航天大学出版社, 2007.3
赵明福 EDA技术基础 北京大学出版社 2007
第二篇:EDA课程设计之机器猫论文
数字电子技术课程设计实验报告
一、实验目的
本产品具有机、电、声、光、磁结合的特点,通过制作本产品完成从仿真到安装实践的全程训练过程。由学生完成从电路原理仿真验证,到元器件检测、焊接、安装、测试产品的全过程,达到培养同学们工程实践能力的目的。
二、工作原理
1.基本框图
2. 555构成的单稳态触发电路的工作原理
555定时器的功能主要由两个比较器C1和C2决定,比较器的参考
电压由分压器提供,在电源和地之间加VCC电压,并让VM悬空时,上比较器C1的参考电压为2/3VCC,下比较器C2为1/3VCC。
单稳态触发器特点:
〃两个工作状态:稳态和暂稳态
〃在外界触发脉冲作用下,能从稳态翻转到暂稳态,在暂稳态维持一段时间后,在自动返回稳态。
〃暂稳态维持时间的长短取决于电路本身的参数,与触发脉冲的宽度和幅度无关。
a单稳态触发电路 b工作波形
1稳态时,无触发信号:VI?1(?VCC
即可,VC2?1)3?V?1若通电后Q?0?TD导通?VC?0?C1?Q?0保持V?1?C2
2若通电后Q?1?TD截止?C充电至VC?VCC3 ?VC1?1?VC1?0?Q?0?TD导通?C放电???Q?0保持V?1 ?C2触发时VI
?V?11只要VI降至VCC,则?C1?Q?1,TD截止?C开始充电3?VC2?0
21当 VC充至VCC时(假定此时VI已经回到高于VCC)33
?VC1?0?VC1?1 则??Q?0,TD导通?C开始放电至0?Q?0保持V?1V?1?C2?C2
暂稳态输出的宽度
tw?RClnVCC?0?RCln32VCC?VCC3
tW=RCln3≈1.1RC
3.机器猫工作原理
(1)该装臵主要由声控检测电路、光控检测电路、磁控检测电路、触发电路、单稳态电路、开关组成。声敏元件麦克风V1与电阻R1、R2,组成声敏取样电路,主要是将声信号转变为电信号,为单稳态电路提供触发信号。光敏三极管、干簧管可以将光信号、磁场信号转变为电信号,为单稳态电路提供触发信号。
(2)声控工作原理
平时,声敏元件麦克风V1没有声音激发时,其导电率很低,且呈高阻抗,使得Q1反偏截止,电源通过R10加在Q2的基极上Q2截至,IC1的2脚输入高电平,处于复位状态,3脚输出低电平,M1关断,则电机没有工作,机器猫保持静止状态。
当声敏元件麦克风V1处在一定的声波之中时,其内部会产生一系列电子密度的变化,因而麦克风V1电阻变得很小。这时,声波检测信号通过C1直接耦合到Q1的基极上而导通,并且反向,再通过C3直接耦合到Q2的基极,与通过R10的电压叠加变成高电平,Q2导通,使得ICI等元件组成的单稳态电路2脚输入从高电平跳变为低电平,IC1被触发翻转,3脚输出高电平,M1开通,电动机开始工作,机器猫便开始行走了,同时行走的时间将延长到单稳态触发器的延时时间。
当IC1的3脚输出高电平可以带动电机工作的同时,D2被导通,将直接加到Q3的基极上,Q3被导通,进而Q2被截止,IC1的2脚输入由低电平跳为高电平。IC1处于复位状态。
由于声波的延续,使得声敏元件麦克风V1连续不断地受到声波的作用,则IC1的2脚会不断得到触发, 3脚持续输出高电平,这时该电路将一直驱动电机M1工作,机器猫会持续行走,直到声波消失。
(3)光控、磁控工作原理
当光敏三极管或干簧管被激发时,他们可以直接将光信号、磁信号转变为电信号,使得IC1等元件组成的单稳态电路2脚由高电平跳变为低电平,从而IC1被触发翻转,3脚输出高电平,M1开通,电动机开始工作,机器猫便开始行走了,同时行走的时间将延长到单稳态触发器的延时时间。
当IC1的3脚输出高电平可以带动电机工作的同时,D2被导通,将直接加到Q3的基极上,Q3被导通,进而Q2被截止,IC1的2脚输入由低电平跳为高电平。IC1处于复位状态。由于光信号、磁信号的延续,使得光敏接收管和干簧管连续不断地受到光信号、磁信号的作用,则IC1的2脚会不断得到触发,且3脚持续输出高电平,这时该电路将一直驱动电机M1工作,机器猫会持续行走,直到光信号或磁信号消失为止。
三、焊接与安装:
(1) 元器件检测
全部元器件安装前必须进行测试(见下表1)。
(2) 印制板焊接
按图8所示位臵,将元器件全部卧式焊接(参见下图)注意二极管、三极管及电解电容的极性。
<
(a)三极管 (b)电解电容 (c)二极管、电阻
图10
表1
四、整机装配与调试
在连线之前,应将机壳拆开,避免烫伤及其他损害,并保存好机壳和螺钉。
注意:电机不可拆!
参考下列步骤进行连线: (J1~J6的长度参考材料单)
①电动机:打开机壳,电动机(黑色)已固定在机壳底部。电动机负极与电池负极有一根连线,改装电路,将连在电池负极的一端焊
下来,改接至线路板的“电动机-”(M-),由电动机正端引一根线J1到印制板上的“电动机+”(M+)。音乐芯片连接在电池负极的那一端改接至电动机的负极,使其在猫行走的时候才发出叫声。
②电源:由电池负极引一根线J2到印制板上的“电源-”(V-)。“电源+”(V+)与“电机+”(M+)相连,不用单独再接。
③磁控:由印制板上的“磁控+、-”(R+、R-)引两根线J3、J4,分别搭焊在干簧管(磁敏传感器)两腿,放在猫后部,应贴紧机壳,便于控制。干簧管没有极性。
④红外接收管(白色):由印制板上的“光控+、-”(I+、I-)引两根线J5、J6搭焊到红外接收管的两个管腿上,其中一条管腿套上热缩管,以免短路,导致打开开关后猫一直走个不停。红外接收管放在猫眼睛的一侧并固定住。应注意的是:红外接收管的长腿应接在“I-”上。
⑤声控部分:屏蔽线两头脱线,一端分正负(中间为正,外围为负)焊到印制板上的S+、S-;另一端分别贴焊在麦克风(声敏传感器)的两个焊点上,但要注意极性,且麦克易损坏,焊接时间不要过长。焊接完后麦克安在猫前胸。
⑥通电前检查元器件焊接及连线是否有误,以免造成短路,烧毁电机发生危险。尤其注意在装入电池前测量“电源-”(V-)。“电源+”间是否短路,并注意电池极性。
⑦静态工作点参考值:
⑧组装:简单测试完成后再组装机壳,注意螺钉不宜拧得过紧,以免塑料外壳损坏。装好后,分别进行声控、光控、磁控测试,均有“走——停”过程即算合格。
五、心得体会
在这次的实验课中我做的是机器猫。因为没有塑料外壳,所以做这个实验要将上届师兄师姐做好的机器猫拆开,掏空里面的电路板,留下外壳备用。拆机器猫的时候我很小心,每个零件都统一放在一个盒子里,但天有不测风云,最后组装完成时竟然发现多了两个螺钉。因此我又拆开装了一遍,发现还是多了两个螺钉。不过机器猫还是能跑的,所以只能作罢了。拆完机器猫后我便开始焊元件了。经过一个多小时的奋战,我把机器猫做好了,接下来便是测试阶段了。接上电源后,小猫能走会叫,我心里很高兴。可是过一会儿我就高兴不起来了:小猫不会停!我想应该是声控部分出错了。可检查了好久都没发现什么错误。于是我开始怀疑麦克风是否有问题。我便换了一个麦克风,这次小猫能停下来了!我那叫高兴啊!在这次的实验课中我学到了很多焊接知识,也使自己的手更加灵活,更提高了自己的工程实践能力。
参考文献 :
1)“数字电子技术基础”清华大学 阎石主编
2)“电子技术基础” 康华光主编
3)“现代电子线路和技术实验简明教程” 孙肖子主编