MCU架构介绍

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

技术文库

欲打印此文章,从您的浏览器菜单中选择“文件”后再选“打印”。

MCU 架构介绍

上网时间: 2001年03月14日

Microcontroller(微控制器)又可简称MCU或μC,也有人称为单芯片微控制器(Single Chip Microcontroller),将ROM、RAM、CPU、I/O集合在同一个芯片中,为不同的应用场合做不同组合控制.微控制器在经过这几年不断地研究,发展,历经4位,8位,到现在的16位及32位,甚至64位.产品的成熟度,以及投入厂商之多,应用范围之广,真可谓之空前.目前在国外大厂因开发较早,产品线广,所以技术领先,而本土厂商则以多功能为产品导向取胜.但不可讳言的,本土厂商的价格战是对外商造成威胁的关键因素.

由于制程的改进,8位MCU与4位MCU价差相去无几,8位已渐成为市场主流;针对4位MCU,大部份供货商采接单生产,目前4位MCU大部份应用在计算器、车表、车用防盗装置、呼叫器、无线电话、CD Player、LCD驱动控制器、LCD Game、儿童玩具、磅秤、充电器、胎压计、温湿度计、遥控器及傻瓜相机等;8位MCU大部份应用在电表、马达控制器、电动玩具机、变频式冷气机、呼叫器、传真机、来电辨识器(Caller ID)、电话录音机、CRT Display、键盘及USB等;16位MCU大部份应用在行动电话、数字相机及摄录放影机等;32位MCU大部份应用在Modem、GPS、PDA、HPC、STB、Hub、Bridge、Router、工作站、ISDN电话、激光打印机与彩色传真机;64位MCU大部份应用在高阶工作站、多媒体互动系统、高级电视游乐器(如SEGA的Dreamcast及Nintendo的GameBoy)及高级终端机等。

而在MCU开发方面,以架构而言,可分为两大主流;RISC(如HOLTEK HT48XXX系列)与CISC(如华邦W78系列). RISC (Reduced Instruction Set Computer) 代表MCU的所有指令都是利用一些简单的指令组成的,简单的指令代表 MCU 的线路可以尽量做到最佳化,而提高执行速率,相对的使得一个指令所需的时间减到最短。HOLTEK的HT46XX(A/D MCU系列) HT47XX(R to F MCU系列) HT48XX(一般I/O MCU系列)

HT49XX(LCD MCU系列) 便是采用 RISC 结构来设计。不管是 RISC 或是 CISC(Complex Instruction Set Computer),设计MCU的目的便是为人类服务的,对于 RISC 来说,因为指令集的精简,所以许多工作都必须组合简单的指令,而针对较复杂组合的工作便需要由『编译程序』(compiler) 来执行,而 CISC MCU 因为硬件所提供的指令集较多,所以许多工作都能够以一个或是数个指令来代替,compiler 的工作因而减少许多。

以一个数值运算程序来说,使用 CISC 指令集的MCU运算对于一个积分表达式可能只需要十个机器指令,而 RISC MCU在执行相同的程序时,却因为CPU 本身不提供浮点数乘法的指令,所以可能需要执行上百个机器指令 (但每一个指令可能只需要 CISC 指令十分之一的时间),而由程序语言转换成机器指令的动作是由程序语言的 Compiler 来执行,所以在 RISC MCU的Compiler 便会较复杂 。因为同样一个高级语言 A=B*C 的运算,在 RISC MCU转换为机器指令可能有许多种组合,而每一种组合的『时间/空间』组合都不尽相同。

所以 RISC 与 CISC 的取舍之间,似乎也是MCU硬件架构与软件(Compiler) 的平衡之争,应该没有绝对优势的一方,只能说因应不同的需求而有不同的产品,例如工作单纯的打印机核心 MCU,便适合使用效能稳定,但单位指令效率较佳的 RISC MCU.

微控制器(MCU)的基本架构

微控制器产品架构由早期以累积器为基础的CPU,演进至现今含精简指令(RISC)或同时含RISC、DSP如Motorola的68356,也有如DEC的SAIIC、与Hitachi的SH-DSP系列等之32位嵌入式微控制器 ,每一系列产品又因应不同的应用与接口需求 ,衍生出不同规格的产品 。微控制器产品以特性做为区分的标准与市场统计的依据 ,区分为4位 、8位 、以及16/32位等三大类 。各厂商依其不同功能组合 ,发展出系列性的微控制器产品 ,如NEC供应PD75X的4位系列 ,Toshiba供应47CXX的4位系列 、HOLTEK供应

HT48CXX的8位系列 、及Intel之MCS-96的16位系列等。

以下就微控器的基本架构做介绍,如下先介绍MCU架构方块图。

MCU架构方块图

程序内存

程序内存(Program ROM)在微控制器中是只读而不可写入之记忆单元,此内存主要用来放置使用者所开发之程序,而其性质乃属于不常更动或永不变动之资料,微控制器之动作便是依据储存于此区之程序指令运作。在8位单芯片中常见的程序内存容量有0.5K、IK、2K、4K 及8K,而通常应用在微控制器的程序内存有下列几种方式,见(表一):

表一

另外关于程序保密部分,不论是加密或保险丝烧断保护 ,都是为了防止程序被未授权之使用者窥看、窃取(如反组译程序 、修改内容 、盗取程序等)。程序保密这个功能选择只在提供OTP、开窗型包装、EEPROM 及 Flash ROM上使用,因为这些IC可借由烧录器来回读取程序代码,在Mask版本则不需要进行程序保密的步骤 。

随机存取内存

随机存取内存(Random Access Memory;RAM),亦称为读/写内存(Read-Write Memory),常是被用来暂时存放资料、或是程序执行存放资料的地方,用途相当广泛。以HOLTEK 8位微控制器为例,其容量有64、96、160及224个Byte选择。

累积器

累积器(Accumulator),是MCU的运作中枢 ,80%的指令都与累积器有关 ;资料可以被存放在累积器中,直到总线或其它单元准备接受它、或直到程序需要它为止 。

缓存器

缓存器(Register)是MCU内部用来暂时存放资料的地方,每个缓存器的功能各不相同,但却有一共同的特性,就是可以直接读/写,因其位于MCU的内部,故减少了一些不必要的等待及寻址时间,另外有些MCU的I/O Port,也以缓存器型态来直接存取控制。

堆栈及堆栈指针

堆栈(Stack)及堆栈指针(Stack Pointer),堆栈就和盘子一样,一个一个由下往上堆,而取出时则由上一个一个往下拿,不能由中间抽出,因此又称为后进先出队列(Last-In-First-Out Queues)」。功能如下;

一. 暂时存放PC(Program Count)的值,适用于"子程序呼叫”,或中断发生时将PC的值暂时储存起来;

二. 可视为缓存器使用,以Push,Pop来完成;

三. 有些MCU其Stack Level数是固定的(如HOLTEK μC系列),有些则可自定。

运算逻辑单元

相关文档
最新文档