毕业论文——数字集成电路_第1页
毕业论文——数字集成电路_第2页
毕业论文——数字集成电路_第3页
毕业论文——数字集成电路_第4页
毕业论文——数字集成电路_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 引言当今社会是数字化的社会,也是数字集成电路广泛应用的社会。而数字集成电路本身也在不断地进行更新换代,不断的进步创新。它由早期的电子管、晶体管、小中规模集成电路,发展到超大规模集成电路(VLSIC,几万门以上)以及具有许多特定功能的专用集成电路(ASIC)。并且在现代高新电子产品的设计和生产中,数字集成电路技术和现代电子设计技术是相互促进、相互推动又相互制约的两个技术环节。前者的进步就表现在大规模集成电路加工技术,即半导体工艺技术的发展上;而后者的核心则是EDA(电子设计自动化)技术,它使得设计者的工作仅限于软件的方式,即利用硬件描述语言(本文只涉及到VHDL硬件描述语言)和EDA软件来完成对系统硬件功能的实现,避免了硬件电路在搭接时所出现的问题。1.1 ASIC技术促使可编程逻辑器件发展随着微电子技术的发展,设计与制造集成电路的任务已经不再由某个大规模的生产厂商来独自承担了,更甚至于系统设计师们都愿意自己设计专用集成电路(ASIC)芯片,而且希望ASIC的设计周期尽可能短,最好是在实验室里就能设计出合适的ASIC芯片,并且立即投入实际应用之中。也就是这种现场可用的思想促成了现场可编程逻辑器件(FPLD)的出现,其中应用最广泛的当属现场可编程门阵列(FPGA)和复杂可编程逻辑器件(CPLD)了。对于电子系统设计来说,在以前的很长一段时间里,设计某个电子控制系统大多数情况下是用指令少、功能单一的单片机,但是用其开发出来的硬件系统及其电路结构庞大而复杂、成本高、经常容易发生电路方面的故障,并且由于系统是针对某一个特定的功能而设计的,对今后系统的升级和功能扩展都非常困难。显然这样的单片机在某种程度上已经不能再满足设计要求了。而CPLD(或FPGA)芯片作为一种新兴的设计器件,在技术上与单片机相比有很多优势,光说其实现的工艺就有反熔丝技术、EPROM技术和EEPROM技术等。实现了电可擦除、电可改写和紫外线擦除,其输出结构是可编程的逻辑宏单元,因而它的设计具有很强的灵活性。这些PLD器件的一个共同特点,就是可以实现速度特性较好的逻辑功能,可见用这种CPLD芯片进行开发设计时,只需要增加少量的外围电路,并结合可控制它的丰富的指令集合,就可以获得功能强大的控制系统。又由于这种芯片内含有可下载程序固定接口和EEPROM、Flash。因此,开发出来的系统具有可升级性(内部程序可擦除,进行重新烧写),用户可以根据需要对其进行功能扩展,既可以缩短系统开发周期,又可以减少开资。利用EDA技术(CPLD/FPGA)进行电子系统设计的最终目标,是完成专用集成电路ASIC的设计和实现,而在电子科技高速发展的当今,再加上上述CPLD/FPGA(复杂可编程逻辑器件/现场可编程门阵列)的各种优点,它以成为实现这一途径的主流器件。其特点是直接面向用户,具有极大的灵活性和通用性,使用方便,硬件测试和实现快捷,开发效率高,成本低,上市时间短,技术维护简单,工作可靠性能好。例如Altera公司最新生产的MAXII系列PLD ,这是一种基于FPGA(LUT)结构,集成配置芯片的PLD,在本质上它就是一种在内部集成了配置芯片的FPGA,但由于配置时间极短,上电就可以工作,所以对用户来说,感觉不到配置过程,可以与传统的PLD一样使用,加上容量和传统PLD类似,所以Altera公司把它归作PLD。 还有像Lattice公司的XP系列FPGA,也是使用了同样的原理,将外部配置芯片集成到内部,在使用方法上和PLD类似,但是因为容量大,性能和传统与FPGA相同,也是LUT架构,所以Lattice仍把它归为FPGA之列。总之,由于以上的各种突出优点,CPLD或FPGA芯片已成为大多数电子设计工程师进行电子设计的首选器件。1.2 CPLD(FPGA)实现系统控制把以CPLD(或FPGA)芯片为核心,作为主控制器开发出来的各种测量及控制系统,作为家用电子产品的一个组成部分嵌入某个系统中,使其更具智能化、拥有更多功能,便于人们操作和使用,从而更具时代感,这也是家用电子产品的发展方向和趋势所在。有的家用电器领域要求增加显示、报警和自动诊断等功能。这就要求我们生产的产品具有自动控制系统。而所谓的自动控制功能的实现主要是由计算机来完成的,可用的方法主要有两种:离线控制和在线控制。离线控制包括利用计算机实现对控制系统总体的分析、设计、仿真及建模等工作;在线控制就是以计算机代替常规的模拟或数字控制电路,使控制系统“软化”,让计算机位于其中,并成为控制系统、测试系统及信号处理系统的一个组成部分。这类控制由于需要有像计算机一样的智能控制系统身处其中,因此对控制系统有体积小、功耗低、价格低廉以及控制功能强大等要求,而为了满足这些要求,就应当使用可编程逻辑器件的具体芯片来实现。例如:本文所研究的课题就是利用CPLD器件(EP1K100QC208-3)为主控芯片,来实现系统的整体功能的。然而,由于CPLD与控制对象联系密切,所以设计一个系统,不但对CPLD芯片的性能要求高,而且对设计者的要求也很高。他们不但要熟练掌握CPLD知识,而且还要了解控制对象,懂得传感器技术,具有一定的控制理论知识等。还拿本文所研究的课题为例,除了利用CPLD具体芯片外,还用到了传感器,A/D转换器以及放大显示电路等,才实现完成了系统总体功能检测室温显示,并实现报警。2 系统原理和部分方案比较一个完整的系统,必须经过系统整体原理分析和各部分的方案比较,选择最佳最优的实现方法,才能完美而立于不败之地。2.1 系统原理概述当今社会,随着现代测量、控制和自动化技术的发展,信息采集的方法越来越多,而在所有信息的采集途径中,用的最普遍、最基础的,就是传感器。如果把电子计算机比作人的“大脑”,那么传感器则酷似人的“五官”(视觉、嗅觉、味觉、听觉和触觉)了。其重要性则可一目了然,不过对传感器的要求可要比人的五官的要求高得多,并且传感器的种类也在日益增多,涉及到的范围也日益变广。如AD公司生产的模拟电压输出型的温度传感器TMP35/36/37,它主要应用于环境控制系统、过热保护、工业过程控制、火灾报警系统、电源系统监控以及仪器散热风扇的控制等。还有NATIONAL SEMICONDUCTOR生产的与微处理器相结合的测温及温度控制、管理的温度测量控制器LM80,它主要应用于个人计算机及服务器的硬件及系统的温度监控、办公室设备、电子测试设备等。以及MAXIN公司生产的主要应用于CPU冷却控制的PWM风扇控制器及遥控温度传感器MAX1669。因此,测量外界温度的方法有很多种,然而,由于热敏电阻及其放大电路受到环境的影响,在不同的条件下会出现不同的测温偏差,而TMP35/36/37,LM80,MAX1669这些传感器的造价又太高,在相同条件下,由于测温精度、处理精度等多方面的因素,不同的通道也会出现不同的偏差,因此必须采用一种灵活的修正方式,这便用到了电压型的温度传感器LM35D。它的线性好(10mV/),宽量程(0-100),精度高(+0.4 ),低成本,而且采集到的是电压型信号,易于处理,使得电路简单实用3。如上所述,本课题的设计就是利用温度传感器LM35D来采集温度信号的,随后将采集到的微弱模拟电压信号经过放大器OP07放大十倍后送入A/D转换器(ADC0804),将其转换为数字信号后,再传给CPLD芯片(这里用到的型号是EP1K100QC208-3),即该系统的核心部件,通过硬件描述语言(VHDL)编程进行信号处理,然后经过预先设置好的端口将数字信号传送给74LS138译码器以及驱动器CD4511和报警器,使LED八段数码管动态显示室温和实现报警。经实验调试,用该方法对0-100范围的温度测量时,测量误差为+0.4,可靠性好、抗干扰性能强。采用CPLD芯片作为核心监控器对外界温度进行测量,这样,既可以降低对温度传感器和放大电路的要求,从而降低成本,又可以针对不同外部环境或不同通道对温度显示的显示监控设定进行灵活修改,实现系统的升级。2.2 课题总体要求(1) 利用电压型温度传感器LM35D作为信息采集器件采集室温并产生10mv/的电压信号;(2) 利用OP07放大器将微弱的电压信号放大预先设置好的倍数,以驱动后面电路;(3) 利用A/D转换器将放大后的模拟信号转换为数字信号,供系统处理;(4) 将数字信号送入CPLD芯片进行处理;(5) 时时显示转换后的室温,进行监控;(6) 温度超过警戒温度时,进行报警。2.3 系统各部分方案比较2.3.1 信号采集方案比较在目前,信号采集有多种方法,而可用于本系统的温度的信号采集大致有三种方法,下面分别介绍各种方法的优缺点,讨论它们的可行性。 方案一:采用热敏电阻采集室内温度信号。用此方法可满足40-90的测量范围,但热敏电阻的精度、重复性及其可靠性都比较差,并且对于检测小于1的温度信号时,误差大、不可靠,所以此方法不可取。方案二:利用电流型温度传感器AD590采集室内温度信号。AD590具有较高精度和重复性(重复性优于0.1),其良好的非线性可以保证优于+0.2的测量精度,利用其重复性较好的特点,通过非线性补偿,可以达到+0.2测量精度。电流型温度传感器AD590是二端器件,它采用了一种独特的电路结构,利用最新的薄膜激光微调技术作最后的定标,因而具有很高的精度。且其灵敏度为1uA/K,具有很宽的工作电源电压范围和很高的输入阻抗。作为一种高阻电流源,我们不需要考虑其传输线上的电压信号损失和噪声干扰的问题,因此特别适合做远距离测量或控制应用。出于同样的道理,AD590也特别适用于多点温度测量系统,而不必考虑选择开关或CMOS多路转换开关所引入的附加电阻造成的误差。但是,由于AD590采集到的信号是电流信号,所以在将数据传给ADC0804模数转换器之前,必须先把电流信号转变成电压信号,在此期间不但造成了一定的信号损失,又影响了精度,这就要求我们在A/D转换器前设计一个信号保持电路。这样一来,用AD590来检测、采集室温的电路就显得很复杂。而且,在高精度测温电路中,还必须考虑AD590的输出电流不被分流影响,因此也放弃使用本方案。方案三:采用电压型温度传感器LM35D采集温度信号。LM35D是精密集成电路温度传感器,它的输出电压与摄氏温度线性成比例,比例关系是10mV/。并且,LM35D无需外部校准或微调来提供0.4的常用的室温精度,就把信号损失减少到了最小。而又因为它的线性性极好,所以编程时很容易实现。因此,对于本课题来说,选用此方案。2.3.2 模拟信号数字化处理方案 由于整个系统主要是处理数字信号而进行工作的,所以当由传感器采集到模拟信号后,必须先进行模数转换才能够使整个系统运行工作。而对于模数转换器件的选择,本课题用的是ADC0804,即系统采用ADC0804模数转换器作为模拟信号数字化的器件,进行数字化处理,为系统提供数字信号量的。2.3.3 信号处理方案本系统利用CPLD芯片进行信号处理。将经过A/D转换器转换后的数字信号送入CPLD芯片,进而根据已经编好的程序(程序见附录)处理温度的数字信息,进一步时时显示室内温度和报警,达到时时监控的目的。也就是说采用CPLD芯片作为系统信号处理主控制器。2.3.4 显示部分方案比较方案一:以前的电子工程师们进行电子设计时,大部分都使用单片机通过串口通信线TXD、RXD(P3.0、P3.1),再加移位寄存器74LS164来实现LED的显示功能,如图2-1所示。这样一来,使得每一个LED数码管都需要一片74LS164,使得电路比较麻烦,并且与单片机接口的编程程序不易实现,所以本课题放弃使用次方案。LEDLED74LS16474LS164 RXDTXD图2-1 通过串口通信线TXO 、RXD实现LED显示功能方案二:近年来,国内外有许多基于串行总线方式的LED显示器接口芯片不断出现,这些芯片与另一种功能更强、速度更快的控制芯片连接,可实现以往单片机不能实现的多种功能,并且具有占用I/O口线少,进行功能扩展方便,使用起来十分容易等特点,这就是用EDA技术来开发的CPLD芯片,因此本系统选用此方案。在选用CPLD芯片后,再选用3个共阴极的8段数码显示管(TOD5201AE)来实现动态显示,用CPLD已经编好的程序来驱动一片CD4511和一片74LS138就可以控制段码和位选,以实现温度显示的功能。2.3.5 系统报警方案设计在设计开始时,想要的系统功能之一,是想让在室温达到并超过警戒温度时,系统可实现报警,给人以提示。在此,可用一个风鸣器和一个三极管放大电路来实现报警功能。具体的电路分析,详述见下文中。3 系统整体硬件设计方案3.1 系统工作原理流程根据课题设计要求可知,该系统需要利用电压型温度传感器采集室内温度,产生10mV/的电压信号,随后,将该信号送入放大器进行放大,再把此放大后的信号送给A/D转换器进行模数转换,之后由CPLD芯片编程处理,即通过CPLD芯片编程设定上下限报警温度,并显示转换后的室温。具体流程图如图3-1所示。CPU控制电路A/D转换电路放大电路传感器控制电路译码驱动电路显示电路报警电路 图3-1 系统流程图在温度信号采集电路中采用方案三,使用线性成比例(10mV/)的电压型温度传感器采集信号,之后,将微弱电压信号经过整个硬件与软件系统放大100倍后的电压信号使其显示就是室温。首先,使采集到的电压信号经过放大电路放大十倍后送入A/D转换器(ADC0804)。在此,将ADC0804的基准电压设为2.5V,由于它为8位转换器,其内部转换关系将输入信号扩大50倍后,才将模拟信号转换为数字信号。之后,将转换后的数字信号传给CPLD芯片(EP1K100QC208-3),通过VHDL编程将扩大了500倍的信号缩小5倍,即可将输入的微弱电压信号最终放大100倍,现在的电压值便是室温值。然后经过设置的I/O口将数字信号传送给74LS138译码器以及驱动器CD4511和报警器,使LED八段数码管动态显示室温和实现报警,从而实现整个系统的设计功能。3.2 传感器及放大电路3.2.1 电压型温度传感器LM35D如图3-2所示,是一般传感器的工作原理方框图。敏感元件转换元件测量电路辅助电源非电量电量 图3-2 传感器原理框图本系统的设计所用的传感器为LM35D,它是LM35系列的一种,是精密集成电路温度传感器,其输出电压与摄氏温度线性成比例(10.0mV/),如图3-3所示其关系3。 U(V) 40 30 20 10 0 1 2 3 4 5 T()图3-3 传感器温度电压关系曲线因而LM35系列有优于用开尔文作为标准的线性温度传感器,在额定工作温度范围内精度为3/4。其密封适合用TO-46晶体管封装,也适合用塑料TO-92晶体管封装。其特性如下:(1) 直接用摄氏温度校准,线性+10.0mV/比例因数;(2) 在-55+150额定范围内保证0.5精度(在+25时);(3) 适用于遥控设备,因晶体片微调而低费用;(4) 工作在430V,小于60A漏泄电流,有较低自热,在静止空气中0.08;(5) 只有1/4非线性值,低阻抗输出,1mA负载时0.1。 LM35系列中的LM35D的工作电压为4V20V,故可直接用温控电路的电源,但要加一个隔离二极管及平滑电容C。LM35D测温范围0100,输出电压直接与摄氏温度成比例,灵敏度为10mV/。将其输出电压接2V直流电压挡数字万用表,可读出的分辨率为0.1的温度读数。例如:室内温度是28.7,那么其转换关系是 28.710 mV/=287mV (3.1)则表上的读数就为287mV,即反映室内温度:28.7。图3-4 LM35D的引脚及封装集成温度传感器LM35D是把测温传感器与放大电路做在一个硅片上,形成一个集成温度传感器,它的外形与封装如下图(见图3-4)。图3-4LM35D是一种输出电压与摄氏温度成正比例的温度传感器,精度为1。最大线性误差为0.5,静态电流为80uA。该器件如塑封三极管(TO-92)。该温度传感器最大的特点是使用时无需外围元件,也无需调试和较正(标定)。如下图所示(图3-5)是LM35D的典型测温电路及其转换电路的接口电路。图3-5 LM35D的典型测温电路及与转换电路接口 在图3-5中,经LM35D输出端输出的信号经过了由75的电阻和1uF的电容构成的积分滤波网络,可滤除其他的杂质信号,使采集到的与温度成比例(10mV/)的电压信号更加稳定,之后再将温度信号经过放大器送给ADC0804进行转换。3.2.2 放大电路设计图3-6 系统的放大电路部分如图3-6所示,为系统的放大电路部分,电压型温度传感器LM35D采集到的室温为很微弱的模拟量。例如:若室温为26,那么经LM35D采集后得到的电压信号为0.26 V,这样一个微弱的电压信号,既不利于处理又容易产生误差且不稳定。所以我们需要将此信号在整个硬件系统和软件系统中放大100倍(如前所述),之后将其送入驱动电路,即可在LED数码管上显示室温,达到目的。如图所示,在放大电路中,取R6为1K是为了好计算放大倍数,R5用20K的滑动变阻器使这个0.26 V的微弱电压信号可以在0-20的放大倍数范围内可调,在此,将其放大10倍,因此需要将R5调至10K。这样经放大器OP07放大后从第6脚输出的电压信号就为放大十倍的2.6V。这样就足以驱动后面的电路进行工作,达到系统设计的目的。3.3 A/D转换电路部分分析3.3.1 A/D转换器随着数字技术,特别是计算机技术的飞速发展与普及,在现代控制、通信及检测领域中,为提高系统的性能指标,对信号的处理无不广泛的采用了数字计算机。但由于系统的实际对象往往都是一些模拟量(如温度、压力、位移、图象等),所以要使计算机或数字仪表能识别和处理这些信号,首先就必须将这些模拟信号转变为数字信号,这样就需要一种能将模拟信号转化为数字信号的电路模数转换器(A/D转换器)。而为了将时间和幅值都连续的模拟信号转化为时间和幅值都离散的数字信号,一般要经过四个过程5,如图3-7所示。取 样保 持量 化编 码模拟信号数字信号图3-7 模数转换流程而在实际电路中,上述四个过程中有的是合并进行的。例如,取样和保持、量化和编码,往往都是在转化过程中同时实现的。具体介绍如下:(1) 取样与保持取样是将随时间连续变化的模拟量转换为时间离散的模拟量(这里要注意的是取样以后信号依然是模拟量)。取样的过程示意图如图3-8 所示。Vo(t)Vi(t)TGS(t)图3-8 取样过程图中的传输门受取样信号S(t)的控制,在S(t)的脉宽期间,传输门导通,输出信号Vo(t)为输入信号Vi(t),即Vo(t)=Vi(t),而在(Ts)期间,传输门关闭,输出信号Vo(t)=0。可见,取样就是在一个固定的时间点上采集一个模拟信号的具体值,而要将取样得来的模拟信号转换为数字信号得经过一段时间,所以有必要将取样电路每次取得的信号通过保持电路保持一段时间,以便给后续的量化编码提供一个稳定值,即使用保持电路使整个系统更加协调稳定。(2) 量化与编码数字信号不仅在时间上是离散的,而且在幅值上也是不连续的。任何一个数字量的大小只能是某个规定的最小数量单位的整数倍。为了将模拟信号转化为数字量,在A/D转化过程中,还必须将取样-保持电路的输出电压,按某种近似方式归化到与之相应的离散电平上。这一转化过程称为数值量化,简称量化。量化后的数值最后还必须用某一个代码表示出来,这个过程就叫做编码。经编码得到的代码就是A/D转换器的最后输出量,就是表示模拟信号大小的数字信号量。3.3.2 A/D转换器的选择近年来,A/D转换器随着半导体技术的不断发展而日新月异,各种性能优异的A/D转换器层出不穷。早期的A/D转换器与CPU接口一般采用并行总线方式,现在一些采用I2C、SPI 总线的新型A/D转换器相继被国外一些公司推出,极大地丰富了A/D转换器的种类。A/D转换器的位数与一个应用系统前向通道中被测量对象的精度有关。一般情况下,由于客观条件的影响,电路设计中A/D转换器的分辨率要高于被测量对象的信号最低分辨率。假如,我们要测量一组电源电压,其电压的输出范围是010V,如要求精确到0.1V,即分辨率为0.1/10=1%,那么在实际应用中我们选择分辨率为1/256=0.4%的8位A/D转换器便可满足要求。当然,A/D转换器的位数越多,分辨率也就越高,但是成本也就随之愈高。因此在实际电路的设计中,选择A/D转换器也不能一味强调位数,应该在满足系统性能指标的前提下,追求最高的性能价格比。目前,被广泛使用的A/D转换器种类很多,从接口协议上分为串行和并行两种方式。串行接口的A/D转换器占用较少的CPU外部I/O资源,主要采用的协议有SPI和I2C等方式,程序设计较并行接口略显繁琐,典型的芯片有TI公司的TLC25431543等等。并行接口的A/D转换器芯片目前仍占多数,流行的有ADC0804、ADC0809 、AD574等等。而本课题的设计使用的是ADC0804来完成模拟信号向数字信号转变的。下面就来介绍A/D 转换芯片的硬件设计方法。3.3.3 A/D转换电路图3-9 A/D转换电路如图3-9 所示,是A/D转换器ADC0804的硬件设计电路,其中ADC0804是逐次逼近型8位8通道A/D模数转换器。它的主要技术指标是:8位分辨率,1/2LSB的转换精度,转换时间典型值为100us(时钟频率为640KHZ时),电源电压为单电源5V。其引脚中DB0DB7为8位数字信号输出端(即转换后的数字量),VCC为电源端,GND为接地端,VREF为参考电压输入端,CLK是时钟信号输入端,第6脚接的是放大器送出的温度信号量。 信号从ADC0804的第6脚送入,R3与C3通过ADC0804的19脚(CLKR)接地与4脚(CLK)向内部电路提供时钟信号,以给ADC0804一个正确的时序,使其正确工作。如果从量程为0-100LM35D采集到最高温度100,那么由于LM35D灵敏度为10mV/以及经过放大器OP07后放大十倍,则传到ADC0804输入脚VI+的电压信号为10V,再经过ADC0804内部的输入电压与基准电压的公式(如下)放大50倍(此50倍为数字量的50倍): (Ui/VREF*2)*256 (3.2) 其中“*”符号表示乘的意思,Ui表示为输入电压,即VI+,VREF为ADC0804内部设定的基准电压(随时可以更改)。如下图(图3-10)是A/D转换过程: Ve Vx (1000)(0100)(0110)(0111) t 图3-10 A/D转换过程原理图 在硬件设计中,我们将基准电压(VREF)调至2.5V,将VI+=10V代入上公式则可得ADC0804的输出为10V电压的256/550倍,将其送入电路的信息处理部分CPLD芯片,再利用软件的方法将结果除以5便可达到最终的放大目的,之后送入驱动电路使其显示出最大温度为100。由于A/D转换器的分辨率为1/256=0.4%,我们将最高温度设为100的话,可得它的测量精度为100/256=0.4。那么如果将最高温度设为50,我们可得它的温度范围为0-50,测量精度为50/256=0.2。为了提高精度,我们将最高报警温度设为50。还如前面的例子,如果室温为26,那么经放大电路放大后传到ADC0804输入角VI+的电压信号为2.6V,将其代入上公式则可得ADC0804的输出为2.6V电压的256/550倍的二进制数,将其送入系统的主控制器,我们再利用软件的方法将结果除以5便可得送入驱动电路使其显示出的温度为26。在这个转换电路中,ADC0804起着两个作用,一是将模拟量转换为二进制的数字量,二是将此输入信号在放大电路放大10倍后再放大50倍。ADC0804由CPLD芯片预设控制端启动,它与CPLD的接口电路工作的流程图如图3-11所示。经ADC0804转换后的二进制数字信号通过DB0-DB7端口传CPLD芯片的预设输入端,供后面编程控制,使其缩小5倍,然后显示室温。CS端为ADC0804的片选信号端,低电平有效。、分别为写、读端,将其与CPLD芯片的写、读端相连。INTR端为中断口,当其为高电平时表示转换完成,之后,送中断信号给单片机,等待CPLD芯片发出信号接收转换好的数据。可见,在整个系统中,A/D转换电路起着至关重要的作用。它的设计好坏直接影响着整个系统的工作性能。通道、数据地址初始化启动ADC0804CS=0?数据区地址加一8个通道采集结束读A/D转化结果到数据存储区结束是是否否图3-11 ADC0804工作流程图3.4 系统主控制器选择3.4.1 CPLD(FPGA)概述集成电路的发展大大促进了EDA的发展,从而使电路设计从传统的“自上而下”的设计方法转变为“自下而上”的设计方法。设计师们都希望自己设计的芯片能够反映自己的思想,并且能够及时的投入生产使用,这都有益于可编程逻辑器件(PLD)的出现。现在应用最广泛的PLD主要是现场可编程门阵列(FPGA,Field programmable Gate Array)和复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)79。可编程逻辑器件(PLD,Programmable Logic Device)是ASIC的一个重要分支,其发展历程大致经历了以下几个阶段:(1) 20世纪70年代,熔丝编程的PROM和PLA器件是最早的可编程逻辑器件。(2) 20世纪70年代末,对PLA进行了改进,AMD公司推出PAL器件。(3) 20世纪80年代初,Lattice公司发明电可擦写的,比PAL使用更灵活的GAL器件。(4) 20世纪80年代中期,Xilinx公司提出现场可编程概念,同时生产出世界上第一块 FPGA芯片,并且,Altera公司推出EPLD器件,较之Gal器件具有更高的集成度,可用电或紫外线擦除。(5) 20世纪80年代末,Lattice公司又提出系统可编程技术,推出一系列具备系统可编 程能力的CPLD器件,能实现更复杂的逻辑功能。(6) 20世纪90年代,可编程逻辑集成电路技术进入飞速发展时期,器件的可用逻辑门超过百万门,并出现了内嵌发展功能模块(如加法器、乘法器、RAM、CPU核、DSP核、PLL等)的SOPC。总的说来,PLD器件是厂家作为一种通用型器件生产的半定制电路,用户可通过对器件编程实现所需要的逻辑功能。并且它是一种用户可配置的逻辑器件,其成本比较底,使用灵活,设计周期短,而且可靠性高,风险小,因而很快得到普及应用,发展非成迅速。从20世纪70年代发展到现在,PLD已经在各个方面的工艺上取得了突破和不断发展。经历了从PROM、PLA、PAL、GAL到CPLD(FPGA)、ispLSI等高密度的PLD发展过程。其中PAL和GAL都所于简单的PLD,它们结构简单,设计灵活,对开发软件的要求低,但是规模都很小,难以实现复杂的逻辑功能,所以随着技术的发展,种种弊端也暴露出来,因此,CPLD等一系列的复杂PLD迅速的发展起来,并向着高密度,高速度,低功耗以及结构体系更灵活、通用范围更广的方向发展。复杂可编程逻辑器件(CPLD,复杂PLD。统称将集成度达到一定程度的PLD器件叫做CPLD。),是20世纪80年代末Lattice公司提出的在线可编程(isp,In system programmability)技术以后,于20世纪90年代初出现的。它是在EPLD的基础上,采用E2CMOS工艺制作发展起来的。与EPLD相比,它增加了内部连线,对逻辑宏单元和I/O口都有重大的改进。CPLD至少包括三个部分:可编程逻辑宏单元,可编程I/O单元和可编程内部连线。典型的器件有Altera的MAX7000系列,Xilinx的7000和9500系列,Lattice的PLSI/ispLSI系列和AMD的MACH系列。随着数字逻辑系统功能复杂化程度的不断加大,集成芯片正朝着超大规模、高密度的方向发展。与此同时,人们发现一个超大规模的数字时序系统芯片在工作时从时间轴上来看,并不是每一瞬间系统的各个部分都在工作,而系统是各个局部模块功能在时间链上的总成。同时还发现,基于SRAM编程的CPLD/FPGA可以在外部逻辑的控制下,通过存储于存储器中不同的目标系统数据的重新下载,来实现芯片逻辑功能的改变。正是基于这个称之为静态系统重构的技术,有人设想利用芯片的这种分时复用特性,用较小规模的CPLD(或FPGA)芯片来实现更大规模的数字时序系统。在研究过程中人们却发现常规的SRAM的CPLD只能实现静态系统重构。因为该芯片功能的重新配置大约需要数毫秒到数十毫秒量级的时间;而在重新配置数据的过程中,旧的逻辑功能失去,新的逻辑功能尚未建立,电路逻辑在时间轴上断裂,系统功能无法动态连接。要实现高速的动态重构,要求芯片功能的重新配置时间缩短到纳秒量级,这就需要对CPLD的内部组成结构进行革新。在早期的CPLD中,由结构相同的逻辑阵列组成宏单元模块。对一个逻辑阵列单元来说,输入项由专用的输入端和I/O端组成,来自I/O端口输入项,可通过I/O结构控制模块的反馈选择,也可以由I/O端直接输入,也可以是本单元输出的内部反馈。所有的输出项都经过缓冲器驱动,并输出其输入的原码及补码。可以看出,早期CPLD中的逻辑阵列结构与PAL、GAL中的结构极为类似,只是用EPROM单元取代了PAL中的熔丝和GAL中的EEPROM单元。和GAL一样,CPLD可实现擦除和再编程功能。在基本结构中,每个或门有8个固定乘积项,也就是说逻辑阵列单元中的或门阵列是固定的、不可编程的,当遇到复杂的组合逻辑时,需要的乘积项可能超过8个,这就要用两个或多个逻辑单元来实现,致使器件的利用率不高。为此,目前的CPLD在逻辑阵列单元结构方面做了很大的改进,主要表现在以下两个方面:(1) 乘积项数目不同的逻辑阵列单元 对于复杂的逻辑器件来说,逻辑函数往往需要附加乘积项。以便利用其他宏单元以提供以提供所需的逻辑资源,还可以利用其结构中具有的共享和并联扩展乘积项。达到尽可能的少占资源,并且尽可能的加快工作速度的目的。(2) 具有两个或项输出的逻辑阵列单元每个逻辑阵列单元可以共享相邻单元中的乘积项,也可以使本单元中的两个或项都可用于相邻的两个单元中,这样,既提高了器件内部各单元的利用率,又可实现更为复杂的逻辑功能。CPLD的I/O口控制模块,根据器件的类型和功能的不同,可有各种不同的结构形式,但基本上每个模块都由输出极性转换电路、触发器和输出三态缓冲器三部分及于它们相关的选择电路组成。各个生产厂家可以根据不同的用途和使用对象的不同进行选择生产,以求达到最佳的生产和使用目的。3.4.2 CPLD芯片简介及器件选择CPLD(或FPGA)的主要生产厂家是Altera公司、Xilinx、Lattice等,各自都有自己的产品特点。(1) Altera公司CPLD的系列型号Altera公司多年来一直在PLD行业保持着领先地位,并在我国有着较多的用户,该公司的PLD器件具有高性能、高集程度、高性价比、低功耗等特点。主要型号有胶合(glue)逻辑类的MAX系列,低价位的ACEX系列、高速FLEX系列、高密度的APEX系列等。而后来又推出的EPM系列和EPF系列的集程度更是大大提高,性能更加优越。在众多的产品系列中,Altera公司推出的新型低成本CPLD器件ACEX系列的主要特点为:密度范围大,从1万到10万门(56,000到257,000系统门);配备锁相环(PLL)技术,与64位、66MHZ的PCI兼容;产品系列从原1.8v扩展至2.5v;提供系统速度超过115MHZ的高性能功能。所以,ACEX系列是许多设计者进行设计的优选器件。(2) Xilinx公司CPLD的系列型号Xilinx公司是在1985年首次推出CPLD器件的,随后不断的推出新的集程度更高、速度更快、价格更低的CPLD器件。其主要的CPLD器件以CoonRunner和XC9500两大系列为代表。其中XC9500系列被广泛应用于通信、网络和计算机等产品中。该系列器件采用快闪存技术,比E2CMOS技术工艺的速度更快,功耗更低。目前,Xilinx公司XC9500系列CPLD的tPD可达4ns,宏单元数可达288个,系统时钟可达200MHZ。XC9500系列器件支持PCI总线规范和JTAG边界扫描测试功能,具有在系统可编程(isp)能力。该系列有XC9500、XC9500XV和XC9500XL三种类型,内核电压分别为5V、2.5V、3.3V,也就如前所说,其功耗很低。(3) Lattice公司CPLD的系列型号Lattice公司是最早推出PLD器件的公司,20世纪90年代以来,Lattice公司首先发明了isp技术,并将E2CMOS与isp技术相结合,使CPLD的应用领域有了巨大的发展。其产品主要有ispLSI、ispMACH等系列。集程度在1万门到2.5万门之间。工作电压在3.3V,而其I/O口引脚可兼容5V、3.3V和2.5V等接口标准。可用于高位的数字系统中,准确率很高。其中ispLSI系列器件又分为四个系列:ispLSI1000系列、ispLSI2000系列、ispLSI6000系列和ispLSI8000系列。都可以满足复杂程度很高的逻辑功能设计。根据以上所述,各个厂家生产的CPLD芯片可谓各有各的优点,功能都很齐全,而在本系统的设计中,对CPLD芯片的选择是选用了Altera公司ACEX1K系列的EP1K100QC208-3。因为本人在平时的实践训练中用的多数都是此芯片,有较多的关于EP1K100QC208-3的资料可以查询,对EP1K100QC208-3的大多性能都有了一定的了解,用起来可以得心应手,并且与其他的CPLD芯片比起来,EP1K100QC208-3这一型号的优点也很多,功能也很强大,故选择该器件。3.4.3 EP1K100QC208-3简单介绍说明 EP1K100QC208-3(管脚图见附录2)是Altera公司生产的ACEX1K系列中的一个型号。它一共有208个管脚,其中I/O口有124个,GNDIN有20个,VCCIN有11个,VCCIO有14个,VCC_CLK和GND_CLK各有一个,另外还有时钟、数据输入、专用程序下载口等一共是37个。在此芯片上有如此多的I/O口,其目的就是为了方便用户可以任意定义信号的输入输出口,从而实现复杂的逻辑功能。这也是CPLD的复杂功能所在,更是EP1K100QC208-3的用途所在。3.5 报警电路图3-12 报警电路由于由CPLD芯片的预设输出口发出的电压信号非常微弱,因此,需要将其放大,才能带动蜂鸣器使其工作。R8用一个滑动变阻器使这个电压信号的放大倍数可调,此报警电路的输入引脚由CPLD芯片输出端给,我们在系统中设的下限报警温度为10,上限报警温度为30。在软件设计中,当由ADC0804采集到的温度超出1050的范围,令CPLD芯片的固定输出口为“1”,则可实现蜂鸣器报警,如图3-12所示。 3.6 译码、驱动电路图3-13 译码、驱动电路如图3-13中所示,译码器74LS138与共阴极LED数码管驱动器CD4511是由CPLD的输出口控制的,其中,P1、P2、P3与译码器的输入相接,C为高位,A为地位。对四个共阴极数码管实现位选。在一个控制测试系统中,对共阴极LED显示器的控制采用“接地方式”,即通过控制LED的“GND”引脚的电平高低来达到选通的目的,该引脚即通常所说的位选线。例如:我们想要让第三位数码管工作,那么需要使L3的位选线接低电平来达到目的,也就是使译码器输出中的Y3为0,其他为1。本系统中,我们采用动态显示方式,因此,需要不断的片选,而共阴极LED显示器的发光二极管负极接地,当发光二极管的正极为高电平时,发光二极管被点亮。这就需要用CD4511来驱动,例如:要显示0字形时,需要LED显示器的8个发光二极管“a,b,c,d,e,f,g”七个字段中的“a,b,c,d,e,f”亮,那么,就需要使CD4511输出中的A、B、C、D、E、F为高电平。这是CD4511芯片内部已设定好的,表3-1为CD4511芯片内部的二进制与输入与输出的对应关系列表。表3-1 CD4511输入输出逻辑对应关系D C B Adp G F E D C B A 0 0 0 00 0 1 1 1 1 1 10 0 0 10 0 0 0 0 1 1 00 0 1 00 1 0 1 1 0 1 10 0 1 10 1 0 0 1 1 1 10 1 0 00 1 1 0 0 1 1 00 1 0 10 1 1 0 1 1 0 10 1 1 00 1 1 1 1 1 0 00 1 1 10 0 0 0 0 1 1 11 0 0 00 1 1 1 1 1 1 11 0 0 10 1 1 0 0 1 1 13.7 显示电路(LED) 3.7.1 数码管的选择在一个控制应用系统中,显示是人机通道的重要组成部分。目前广泛使用的显示器件主要有LED(二极管显示器)、LCD(液晶显示器)和VFD(真空荧光管)等。LED显示器造价低廉,与核心控制设备接口方便灵活,技术上易于实现,但只能显示阿拉伯数字和少数字符,通常用于对显示要求不高的场合。LCD和VFD显示器成本较高,但可以显示包括汉字在内的多种字符,甚至是复杂的图形和曲线,并且耗电极省,可广泛用于各种终端设备,如PDA、手机、触摸屏等等。本文主要介绍LED显示方式,及本系统的选择显示方式。LED显示器的基本结构和原理:LED显示器采用发光二极管显示字段。一般的控制电路系统中经常采用的是八段显示器,即LED显示器中有8个发光二极管,代表“a,b,c,d,e,f,g”七个字段和一小数点“dp ”。再者LED有共阴和共阳两种结构。共阴极LED显示器的发光二极管负极接地,当发光二极管的正极为高电平时,发光二极管被点亮。而共阳极LED显示器正好相反,发光二极管正极相连,当二极管的负极为低电平时,发光二极管被点亮。在一个电子控制系统中,对共阴极LED显示器的控制采用“接地方式”,即通过控制LED的“GND”引脚的电平高低来达到选通的目的,该引脚即通常所说的位选线。共阳极LED显示器控制方式则相反。两种控制方式中,共阴极LED控制方式受系统器件功耗限制,只能用在小尺寸的LED显示器中。对于大尺寸LED显示器的控制(如大屏幕计时器)一般使用共阳极方式。 LED的显示和接口方式:LED数码管的显示有静态和动态两种方式。从接口上分又有并行和串行两种,这要视接口和驱动芯片而定。常用的并行LED接口芯片有8155、8255 以及键盘和显示专用芯片8279等。而与并行方式相比,串行方式仅占用CPU少数几根I/O口线便可实现LED显示功能。在静态显示方式中,多个LED显示器中的每一个段代码都与一个独立的8位并行口连接,公共端则根据LED的种类(共阴或共阳)连接到“GND”或“VCC ”上。假如有四位静态LED显示电路中,那么每个LED的段代码都要有独立的并行8位I/O口线控制,可以在同一时间内显示不同的字符。静态LED显示方式的优点是编程容易,但功耗大,占用CPU的I/O口线较多,成本也较高。因此在电子设计系统中较多使用的还是动态显示方式。所谓动态显示,实质上就是各个不同的LED显示器按照一定的顺序轮流显示。它利用了人眼的“视觉暂留现象”,只要多个LED显示器的选通扫描速率足够快,人眼就觉察不到数码管的闪烁现象。在动态扫描方式下,所有LED段选线并联在一起,只由一个8位的I/O口控制,而各个LED的位选线则由另外一组I/O口控制。动态LED显示方式的优点是功耗较低,占用CPU的I/O线少,外围接口简单,所以本系统便是采用了动态LED显示方式。3.7.2 显示电路设计由于测量室温的精度为0.2,因此,显示中会出现小数点,在这里我们选用四个数码管,第一个备用,因为本系统选用的测温元件为LM35D,测温范围为0100,当不需要很大精度时,可以通过软件将显示范围调到0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论