您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 国内外标准规范 > 微控制器(MCU)架构介绍
微控制器(MCU)架构介绍微控制器(Microcontroller)又可简称MCU或μC,也有人称为单芯片微控制器(SingleChipMicrocontroller),将ROM、RAM、CPU、I/O集合在同一个芯片中,为不同的应用场合做不同组合控制。微控制器在经过这几年不断地研究、发展,历经4位、8位,到现在的16位及32位,甚至64位。产品的成熟度,以及投入厂商之多、应用范围之广,真可谓之空前。目前在国外大厂因开发较早、产品线广,所以技术领先,而本土厂商则以多功能为产品导向取胜。但不可讳言的,本土厂商的价格战是对外商造成威胁的关键因素。由于制程的改进,8位MCU与4位MCU价差相去无几,8位已渐成为市场主流;针对4位MCU,大部份供货商采接单生产,目前4位MCU大部份应用在计算器、车表、车用防盗装置、呼叫器、无线电话、CDPlayer、LCD驱动控制器、LCDGame、儿童玩具、磅秤、充电器、胎压计、温湿度计、遥控器及傻瓜相机等;8位MCU大部份应用在电表、马达控制器、电动玩具机、变频式冷气机、呼叫器、传真机、来电辨识器(CallerID)、电话录音机、CRTDisplay、键盘及USB等;16位MCU大部份应用在行动电话、数字相机及摄录放影机等;32位MCU大部份应用在Modem、GPS、PDA、HPC、STB、Hub、Bridge、Router、工作站、ISDN电话、激光打印机与彩色传真机;64位MCU大部份应用在高阶工作站、多媒体互动系统、高级电视游乐器(如SEGA的Dreamcast及Nintendo的GameBoy)及高级终端机等。而在MCU开发方面,以架构而言,可分为两大主流;RISC(如HOLTEKHT48XXX系列)与CISC(如华邦W78系列).RISC(ReducedInstructionSetComputer)代表MCU的所有指令都是利用一些简单的指令组成的,简单的指令代表MCU的线路可以尽量做到最佳化,而提高执行速率,相对的使得一个指令所需的时间减到最短。HOLTEK的HT46XX(A/DMCU系列)HT47XX(RtoFMCU系列)HT48XX(一般I/OMCU系列)HT49XX(LCDMCU系列)便是采用RISC结构来设计。不管是RISC或是CISC(ComplexInstructionSetComputer),设计MCU的目的便是为人类服务的,对于RISC来说,因为指令集的精简,所以许多工作都必须组合简单的指令,而针对较复杂组合的工作便需要由『编译程序』(compiler)来执行,而CISCMCU因为硬件所提供的指令集较多,所以许多工作都能够以一个或是数个指令来代替,compiler的工作因而减少许多。图1:MCU架构方块示意图。程序内存程序内存(ProgramROM)在微控制器中是只读而不可写入之记忆单元,此内存主要用来放置使用者所开发之程序,而其性质乃属于不常更动或永不变动之资料,微控制器之动作便是依据储存于此区之程序指令运作。在8位单芯片中常见的程序内存容量有0.5K、IK、2K、4K及8K,而通常应用在微控制器的程序内存有下列几种方式,见(表一):表1:在微控制器的程序内存通常有几种方式。另外关于程序保密部分,不论是加密或保险丝烧断保护,都是为了防止程序被未授权之使用者窥看、窃取(如反组译程序、修改内容、盗取程序等)。程序保密这个功能选择只在提供OTP、开窗型包装、EEPROM及FlashROM上使用,因为这些IC可借由烧录器来回读取程序代码,在Mask版本则不需要进行程序保密的步骤。随机存取内存随机存取内存(RandomAccessMemory;RAM),亦称为读/写内存(Read-WriteMemory),常是被用来暂时存放资料、或是程序执行存放资料的地方,用途相当广泛。以HOLTEK8位微控制器为例,其容量有64、96、160及224个Byte选择。累积器累积器(Accumulator),是MCU的运作中枢,80%的指令都与累积器有关;资料可以被存放在累积器中,直到总线或其它单元准备接受它、或直到程序需要它为止。缓存器缓存器(Register)是MCU内部用来暂时存放资料的地方,每个缓存器的功能各不相同,但却有一共同的特性,就是可以直接读/写,因其位于MCU的内部,故减少了一些不必要的等待及寻址时间,另外有些MCU的I/OPort,也以缓存器型态来直接存取控制。堆栈及堆栈指针堆栈(Stack)及堆栈指针(StackPointer),堆栈就和盘子一样,一个一个由下往上堆,而取出时则由上一个一个往下拿,不能由中间抽出,因此又称为后进先出队列(Last-In-First-OutQueues)—LIFO。功能如下:一.暂时存放PC(ProgramCount)的值,适用于子程序呼叫”,或中断发生时将PC的值暂时储存起来;二.可视为缓存器使用,以Push,Pop来完成;三.有些MCU其StackLevel数是固定的(如HOLTEKμC系列),有些则可自定。运算逻辑单元。运算逻辑单元(AlgorithmLogicUnit;ALU),其功能在于执行算术指令及逻辑判断,除了产生结果之外,也产生相关的Flag(Zero、Carry、Borrow、Status),每一个MCU都不完全一样,尤其是CarryFlag一定要查看指令解说表。输入/输出(I/OPort)在单芯片微电脑应用系统中,I/O的扩充不是目的,而是为了提供外部设备一个输入/输出的信道,作为外界与MCU间的沟通管道。例如接键盘、显示器、驱动开关控制或测量等,在I/O扩充时必须考虑与之相连接的外围设备硬件电路特性,如:电位匹配、干扰抑制、驱动能力(如Source,Sink能力)等。微控制器在I/O埠方面备有多种电路形式,其中有多端口可以经由软件以位单位来设定输出/入方向。各埠附加大电流、高耐压的缓冲器,以直接驱动LED与高功率晶体管,以及做模拟讯号的输入之用。定时器、定时器定时器(TimeCounter)、定时器(Timer),由外加振荡晶体,经分频电路来提供MCU数种不同的时基(TimeBase)。常应用于:一.时钟之时基(如1sec、500ms、62.5ms、15.625ms等);二.PWM(PulseWidthModulation)之TimeBase;三.KeyScan;四.LEDScan;五.Frequencyoutput;六.PulseReading;七.APO(AutoPowerOFF)等。计数器计数器(EventCounter)专用于累计外部的事件个数,可能为Pulse或其它资料,也可用以产生正确的时间延迟。常应用于:一、另一种TimeBase,外加固定频率;二、计数器;三、可规划成另一种立即中断输入;四、计速器(SpeedMeter)、转速表(Tachometer)。中断中断(Interrupt)用来处理立即事件、或列为优先处理之事件,负责时间计数器超时中断、及外部事件产生中断请求等工作。大部分微控制器的中断处理系统是多层的,内设有中断优先级电路,以决定先后顺序。常应用于:一、MCU呈被动Standby状态(Halt-Stop),由外加信号来Wakeup;二、需要立即处理(传感器、开关、警报器、电源故障预警器);三、需要一个固定间隔来处理(Display,KeyScan,Read-TimeClock);微控制器上的外围资源看了这么多微控制器的的基本架构后,让我们继续来了解微控制器还可以加挂那些外围资源,以扩充、延伸其功能。串行输出(SerialI/O)微控制器内含SerialI/O是为了提供对外部外围Device的通讯管道,各家种类不同,常见的有以下几种:◆UART(UniversalAsynchronousReceiverTransmitter):Intel,Atmel;◆USART(UniversalSynchronous/AsynchronousReceiverTransmitter):Siemens;◆SPI(SerialPeripheralInterface):Motorola;◆SCI(SertalCommunicationsInterface):这是UART的加强版;◆I2Cbus(lnterIntegratedCircuitbus):Philips;◆Microwire/Plus:NationalSemiconductor;液晶驱动装置(LCDDriver)在显示接口上,LCD(LiquidCrystalDisplay)是常运用的显示装置,例如在一些多功能的电话、数字温度计、呼叫器、大哥大、掌上型游戏机以上皆可以发现它的踪迹。因此内含LCD驱动线路的微控制器运用相当广泛,有两种驱动方式可供选用:Segment和DotMatrix,例如:之前流行的宠物蛋是使用DotMatrix的LCD显示器;日系的微控制器厂商提供多样内含LCD驱动装置的微控制器可供选用,另外HOLTEKHT49XX系列也提供LCD驱动装置的微控制器。萤光管驱动装置(VFTDriver)LCD显示器在无光源或无背光的环境下,我们即无法读取显示器之内容,而VFT显示器可提供高亮度、且色彩多变化的视觉效果,常应用于高级的家电产品上,如:碟影机、DSP均衡器。要求炫丽输出效果的产品,在微控制器的选择上VFT(VacuumFluorescentTube)Driver是重要的资源之一。OSD对于电视及监视器人性化接口是不可缺少的功能之一,OSD(OnScreenDisplay)部分显示回路为接收水平同步信号(H-Sync)及垂直同步信号(V-Sync),再将信号透过RGB及Blanking将屏幕信息送出,其显示颜色至多可达八种。各微控制器指令执行速率会造成OSD的显示行数及字段的不同,显示行数由二行至数十行,字段则由15~26个字符或更多,通常执行速率较快者可显示较多的行数、字段,速率较慢者在显示上会有直接的受限。模拟转换数字接口(ADC)由于微控制器诸多应用上,需要侦测外部环境状况,做为处理数据上的参考,如在TV应用方面其调谐器(Tuner)之自动频率控制(AutoFrequencyControl)讯号,即为电压讯号,其它如温度之侦测也多是转换为电压讯号,所以模拟/数字转换(AnalogtoDigitalConverter)的应用在工业及消费电子上都很广泛。模拟之场合是如此频繁,所以各厂家提供模拟/数字之转换便成为一般之标准规格(如HOLTEKHT46XX系列),虽然如此,对于模拟/数字之分辨率各家差异很大,由3位~10位皆有,视各不同需求而异。虽然提供的转换信道有很多,通常内部仅有一个电路处理,靠选择器切换,对于时间考虑不是特别强调之应用上,不致有太大之影响。另外还有一种模拟/数字之转换方式,就是RtoF(ResistancetoFreguency),一般运用在温度/湿度之侦测,利用电阻/电容式Sensor的变化特性,转换成频率值,以此频率值来计算温度/湿度的相对性,此类的IC如HOLTEKHT47XX系列。数字转换模拟接口(DAC)在控制模拟组件需要模拟讯号,以微控制器而言,就必须内建数字/模拟转换(DigitaltoAnalogConverter)来因应.其内部由数字/模拟转换缓存器及一阶梯电阻构成,数字/模拟的分辨率各为8位.在一个8位/参考电压为5V的微控制器,假设一个数字值60转换成模拟值的计算方式是(60/256x5Volts)=1.171875V例如应用在锁相回路上,VCO(电压控制振荡器)即可用DAC做控制。另外VoiceIC也是利用原先将语音录制成数字资料,然后用DAC方式将数字资料音频转换还原模拟语音讯号。脉宽调变(PWM)其目的也是以数字输出搭配外围回路,达到模拟的效果,其组成有前置配器(Pre-divider)、计数器(Counter)、数据闩锁(DataLatches)、及比较电路(CompareCircuits)等。PWM(PulseWidthModulation)分辨率由程控,当然在一般的I/O埠亦可
本文标题:微控制器(MCU)架构介绍
链接地址:https://www.777doc.com/doc-7191259 .html