MCU的介绍和细节
1971-1976
单片机发展的初级阶段。1971年11月Intel首先设计了每芯片2000个晶体管的4位微处理器Intel 4004,配以RAM、ROM和移位寄存器组成了第一个MCS-4微处理器,随后又推出了8位微处理器Intel 8008和其他公司相继推出的8位微处理器。
1976-1980
低性能单片机级。以1976年Intel公司推出的MCS-48系列为代表,采用单片结构,将8位CPU、8位并行I/O接口、8位定时器/计数器、RAM和ROM集成在一个半导体芯片上。虽然它的寻址范围有限(不超过4 KB),没有串行I/O,RAM和ROM容量小,中断系统简单,其功能简单。
1980-1983
高性能单片机级。现阶段推出的高性能8位单片机一般具有串口、多级中断处理系统和多个16位定时器/计数器。片内RAM和ROM容量增加,寻址范围可达64 KB。一些片内器件还具有模数转换接口。
1983-1980年代后期
16位单片机级。1983年,Intel推出了高性能16位单片机MCS-96系列。由于采用了最新的制造技术,芯片集成度达到了每个芯片120000个晶体管。
1990s
单片机在集成度、功能、速度、可靠性和应用领域向更高的水平发展。
根据单片机的特点,单片机的应用可分为单机应用和多机应用。在一个应用系统中,只用一个单片机,称为单机应用。单片机的应用范围包括:
(1)测控系统。各种简单的工业控制系统、自适应控制系统、数据采集系统等。可以用单片机构成,达到测量和控制的目的。
(2)智能仪器。用单片机改造原有的测控仪器,促进仪器向数字化、智能化、多功能、集成化、柔性化方向发展。
(3)机电一体化产品。单片机与传统机械产品的结合,简化了传统机械产品的结构,使控制智能化。
(4)智能界面。在计算机控制系统中,特别是在大型工业测控系统中,用单片机进行接口控制和管理,再加上单片机和上位机的并行工作,大大提高了系统的运行速度。
(5)智能民用产品。比如在很多产品中,比如家用电器、玩具、游戏机、视听设备、电子秤、收银机、办公设备、厨房设备等。单片机控制器的引入,不仅大大增强了产品的功能,提高了产品的性能,而且取得了良好的使用效果。
单片机多机应用系统可分为功能分配系统、并行多机处理和局域网系统。
(1)功能分配系统。多功能分布式系统是为满足工程系统各种外围功能要求而设计的多机系统。
(2)并行多计算机控制系统。并行多机控制系统主要解决工程应用系统的快速性问题,以形成大规模实时工程应用系统。
(3)本地网络系统。
单片机按适用范围可分为通用型和专用型。特殊型是为某一特定产品设计的,比如温度计用单片机,洗衣机用单片机等等。在通用单片机中,按字长可分为4位、8位和16/32位。虽然现在计算机的微处理器几乎都是32/64位,8位和16位的微处理器一直在缩水,但是单片机的情况就不一样了。8位单片机成本低,价格便宜,易于开发,性能能满足大部分需要。16/32位只在需要高速处理大量数据时才需要,但在一般工业领域,8位通用单片机仍然是目前应用最广泛的单片机。
到目前为止,我国单片机的应用和嵌入式系统的发展已经走过了20多年。随着嵌入式系统逐渐深入到社会生活的方方面面,单片机课程的教学有从传统的8位处理器平台向32位先进的RISC处理器平台转变的趋势,但8位计算机仍然难以被取代。国家经济建设、军事和家用电器等领域,尤其是手机、汽车导航设备、PDA、智能玩具、智能家电、医疗器械等行业都是我国急需MCU人才的行业。目前高端行业从事单片机开发应用的工程师超过65438+万人。但是,面对嵌入式系统产业化的趋势和我国大力推进“嵌入式软件工厂”建设的机遇,我国的嵌入式产品要想融入国际市场并形成产业,将急需大量的单片机应用人才,这为高职学生从事此类高科技行业提供了巨大的机遇。
主要类别按用途分类:
通用:所有可开发的资源(ROM、RAM、I/O、EPROM)都提供给用户。
特殊型:其硬件和指令是根据特定用途设计的,如录音机核心控制器、打印机控制器、电机控制器等。
根据基本操作对数据位进行分类:
根据总线或数据寄存器的宽度,单片机分为1、4、8、16、32甚至64位单片机。4位MCU大部分用于计算器、车载仪表、车载防盗器、寻呼机、无线电话、CD播放器、LCD驱动控制器、LCD游戏机、儿童玩具、体重秤、充电器、胎压计、温度计、遥控器和傻瓜相机。8位单片机多用于电表、电机控制器、电动玩具机、变频空调、寻呼机、传真机、CallerID、电话录音机、CRT显示器、键盘和USB。8位和16位微控制器主要用于一般控制领域,一般不使用操作系统。大多数16位微控制器用于手机、数码相机和录像机。32位MCU多用于调制解调器、GPS、PDA、HPC、STB、Hub、网桥、路由器、工作站、ISDN电话、激光打印机、彩色传真机。32位一般用于网络操作、多媒体处理等复杂处理场合。64位MCU主要用于高级工作站、多媒体交互系统、高级电视游戏设备(如SEGA的Dreamcast和任天堂的GameBoy)和高级终端。
8位单片机的工作频率在16~50MHz之间,强调简单高效和低成本。目前在MCU总市值中还是有一定地位的,很多MCU厂商也在继续为8位MCU开发节能设计,以满足绿色时代的产品开发需求。
16位MCU是主流规格,具有16位操作,16/24位寻址能力,频率为24~100MHz。有些16位MCU提供32位特殊指令。由于32位MCU的出现以及8位MCU的不断降价和低价优势,夹在中间的16位MCU的市场受到了不断的挤压,成为出货比例最低的产品。
32位MCU可以说是MCU市场的主流。单个MCU的价格在$ 1.5 ~ 4之间,工作频率大多在100 ~ 350 MHz之间,执行效率更好,应用类型也相当多样。但由于32位MCU的操作数和存储器长度的增加,相同功能的程序代码长度会比8/16位MCU增加30-40%,导致嵌入式OTP/FlashROM存储器的容量不能太小,芯片外部管脚数量急剧增加,进一步限制了32位MCU的成本降低能力。
嵌入式程序存储器类型
以51单片机为例(MCS-51单片机是国内应用最广泛的单片机),根据其内部存储器的类型,可以分为以下几种基本类型:
1.无ROM类型:8031
2.ROM类型:8051
3.EPROM类型:8751
4.EEPROM类型:8951
5.增强型:8032/8052/8752/8952/c 8051f
单片机按其存储器类型可分为非片上ROM型和片上ROM型两种。对于没有片内ROM的芯片,必须外接EPROM才能应用(典型芯片为8031)。带片上ROM的芯片分为片上EPROM(典型芯片为87C51)、MASK片上mask ROM(典型芯片为8051)、片上FLASH(典型芯片为89C51)等类型。一些公司还推出带有片上一次性可编程只读存储器(OTP)的芯片。MASKROM的MCU价格便宜,但程序在出厂时已经固化,适合程序固定的应用场合。FLASH ROM的MCU程序可以反复擦除,非常灵活,但价格较高,适合对价格不敏感的应用场合或开发用途。OTPROM的MCU价格介于前两者之间,同时具有一次性可编程能力,适用于既需要灵活性又需要低成本的应用场合,尤其适用于功能不断翻新、快速量产的电子产品。
由于MCU强调最大密度和最小芯片面积,以有限的程序代码实现控制功能,所以今天的MCU大多采用内置MaskROM、OTP ROM、EEPROM或Flash存储器来存储固件代码,MCU内置Flash存储器的容量从低阶4~64KB到高阶512KB~2MB不等。
存储器结构
单片机按其存储器结构可分为哈佛结构和冯?冯诺依曼结构。现在大多数单片机都是基于冯诺依曼结构,这种结构明确定义了嵌入式系统所必需的四个基本部分:一个中央处理器核、程序存储器(只读存储器或闪存)、数据存储器(随机存取存储器)、一个或多个定时器、用于与外围设备和扩展资源通信的输入/输出连接端口,所有这些都集成在一个集成电路芯片上。
指令结构
根据指令结构,单片机可分为CISC(复杂指令集计算机)和RISC(精简指令集计算机微控制器)。
技术原理单片机和温度传感器通过I2C总线连接。I2C总线占用两个单片机I/O口,两者之间的通信完全依靠软件。温度传感器的地址可以通过两个地址引脚设置,这使得在I2C总线上同时连接八个这样的传感器成为可能。在这个方案中,传感器的7位地址被设置为1001000。当单片机需要访问传感器时,首先要发出一个8位寄存器指针,然后发出传感器的地址(7位地址,低位是WR信号)。传感器中有三个寄存器可供MCU使用,8位寄存器指针用于确定MCU使用哪个寄存器。在这种方案中,主程序会不断更新传感器的配置寄存器,使得传感器工作在单步模式,每次更新都会测量温度。
要读取传感器测量寄存器的内容,MCU必须首先发送传感器地址和寄存器指针。MCU发出开始信号,然后发出传感器地址,然后将RD/WR引脚设置为高电平,以便可以读取测量值寄存器。
为了读取传感器测量寄存器中的16位数据,MCU必须与传感器进行两次8位数据通信。传感器上电时,默认测量精度为9位,分辨率为0.5°C/LSB(范围为-128.5°C至128.5°C)。该方案采用默认测量精度,可以根据需要重置传感器,将测量精度提高到12位。如果只需要一般的温度指示,比如恒温器,那么1°C的分辨率就可以满足要求。在这种情况下,可以忽略传感器的低8位数据,只有高8位数据才能满足分辨率1°c的设计要求,由于寄存器是按照先高8位再低8位的顺序读取的,所以低8位数据可以读取也可以不读取。仅读取高8位数据有两个优点。第一,可以缩短MCU和传感器的工作时间,降低功耗。第二是不影响分辨率指数。
MCU读取传感器的测量值后,会进行转换并显示在LCD上。整个处理过程包括:判断显示结果的符号,将二进制码转换成BCD码,并将数据传送到LCD的相关寄存器中。
数据经过处理并显示结果后,MCU将向传感器发送单步指令。单步指令将使传感器开始温度测试,然后自动进入等待模式,直到模数转换完成。MCU发出单步指令后,进入LPM3模式,此时MCU系统时钟继续工作,产生定时中断唤醒CPU。定时的长度可以通过编程来调整,以满足特定应用的需要。
20世纪最值得称赞的成就之间的主要区别是集成电路和电子计算机的发展。20世纪70年代微型计算机的出现给科学技术带来了深远的变化。70年代中期,从微机家族中分裂出一个小派别——单片机。随着4位单片机的出现,推出了8位单片机。MCS48系列尤其是MCS51系列单片机的出现,确立了单片机作为MCU的地位,引起了微机领域的新变化。当今世界,微处理器(MPU)和微控制器(MCU)已经形成了两个各具特色的分支。它们互不相同,但又相互融合、相互促进。不同于以运算性能和速度为特征的微处理器(MPU)的快速发展,微控制器(MCU)的标志是其控制功能的不断完善。
CPU(中央处理器)有三个分支,一个是DSP(数字信号处理/处理器),另外两个是MCU(微控制单元)和MPU(微处理器单元)。
MCU集成片上外设;MPU没有外围设备(如存储器阵列),是一个高度集成的通用结构的处理器,是一个没有集成外设的MCU。DSP运算能力强,擅长很多重复的数据运算,而MCU适合不同信息源的各种数据的处理、诊断和运算,重在控制,速度不如DSP。MCU不同于DSP的最大特点是通用性,体现在指令集和寻址方式上。DSP和MCU的结合就是DSC,最终会取代这两个芯片。
1.支持密集乘法运算
GPP不是为密集乘法设计的。甚至一些现代的GPP也需要多个指令周期来完成一次乘法。DSP处理器使用特殊的硬件来实现单周期乘法。DSP处理器还增加了一个累加器寄存器来处理多个乘积之和。累加器寄存器通常比其他寄存器宽,为了避免溢出,增加了称为结果位的额外位。同时,为了充分体现专用乘累加硬件的优势,几乎所有DSP指令集都包含显式MAC指令。
2.记忆结构
传统上,GPP使用冯诺依曼记忆结构。在这种结构中,只有一个存储空间通过一组总线(地址总线和数据总线)连接到处理器内核。通常,在一次乘法中会发生四次存储器访问,这至少需要四个指令周期。
大多数DSP采用哈佛结构,将存储空间分为两部分,分别存储程序和数据。它们有两组连接到处理器内核的总线,允许同时访问它们。这种安排使处理器存储器的带宽加倍,更重要的是,它同时为处理器内核提供数据和指令。在这种布局下,DSP可以实现单周期MAC指令。
典型的高性能GPP实际上包含两个片上高速缓存,一个是数据,另一个是指令,它们直接连接到处理器内核,以加快运行时的访问速度。物理上,这种片上双内存和总线的结构和哈佛的几乎一样。然而,从逻辑上讲,两者之间仍有重要的区别。
GPP使用控制逻辑来确定哪些数据和指令字存储在片上高速缓存中,其程序员并不指定它们(或者可能根本不知道它们)。相反,DSP使用多个片内存储器和多组总线来确保在每个指令周期内对存储体的多次访问。使用DSP时,程序员应该清楚地控制哪些数据和指令应该存储在片内存储器中。程序员在编写程序时必须确保处理器能够有效地使用它的双总线。
此外,几乎所有的DSP处理器都没有高速数据缓存。这是因为DSP的典型数据是数据流。也就是说,DSP处理器计算完每一个数据样本后,都被丢弃,几乎不被重用。
3.零开销循环
如果理解了DSP算法的同一个特性,即大部分处理时间都花在执行小循环上,就很容易理解为什么大多数DSP都有专门的零开销循环硬件。所谓零开销循环,就是处理器执行循环时,不需要花时间检查循环计数器的值,条件转移到循环的顶部,循环计数器减1。
相反,GPP回收是通过软件实现的。一些高性能GPP使用分支预测硬件,几乎达到了硬件支持的零开销循环的效果。
4.定点计算
大多数DSP使用定点计算,而不是浮点计算。虽然DSP的应用必须非常注重数字的准确性,但是用浮点来做应该会容易很多,但是DSP便宜也很重要。定点机器比相应的浮点机器更便宜(也更快)。为了在不使用浮点机器的情况下保证数字的准确性,DSP处理器在指令集和硬件上都支持饱和计算、舍入和移位。
5.特殊寻址方法
DSP处理器通常支持特殊的寻址模式,这对于常见的信号处理操作和算法非常有用。比如模(循环)寻址(对实现数字滤波器延迟线非常有用)和比特反向寻址(对FFT非常有用)。这些非常专业的寻址模式在GPP不常使用,只能通过软件实现。
6.执行时间预测
大多数DSP应用(如蜂窝电话和调制解调器)都是严格的实时应用,所有处理都必须在规定时间内完成。这就需要程序员准确地确定每个样本需要多少处理时间,或者至少知道最坏的情况下需要多少时间。如果打算用低成本的GPP来完成实时信号处理的任务,那么执行时间的预测大概不会是问题,因为低成本的GPP结构比较直接,更容易预测执行时间。然而,大多数实时DSP应用需要低成本GPP无法提供的处理能力。此时DSP相对于高性能GPP的优势在于,即使使用了带高速缓存的DSP,放入哪些指令也是由程序员(而不是处理器)决定的,所以很容易判断指令是从高速缓存中读取还是从内存中读取。DSP一般不使用动态特性,比如分支预测和推理执行。因此,从一段给定的代码中预测所需的执行时间是完全简单的。以便程序员可以确定芯片的性能极限。
7.定点DSP指令集
定点DSP指令集是按照两个目标来设计的:使处理器在每个指令周期内完成多个运算,从而提高每个指令周期内的计算效率。尽量减少存储DSP程序的内存空间(由于内存对整个系统的成本影响很大,所以在成本敏感型DSP的应用中,这个问题尤为重要)。为了实现这些目标,DSP处理器的指令集通常允许程序员在一条指令中解释几个并行操作。例如,一条指令包含MAC操作,即同时进行一次或两次数据移动。在一个典型的例子中,一条指令包含计算一段FIR滤波器所需的所有操作。这种高效率的代价是,它的指令集既不直观,也不好用(与GPP的指令集相比)。GPP程序通常不关心处理器的指令集是否好用,因为它们一般使用C或C++等高级语言。不幸的是,对于DSP程序员来说,主要的DSP应用程序都是用汇编语言编写的(至少部分是用汇编语言优化的)。原因有二:第一,大多数广泛使用的高级语言,如C,都不适合描述典型的DSP算法。其次,DSP结构的复杂性,如多存储空间、多总线、不规则指令集和高度专业化的硬件,使得为其编写高效的编译器很困难。即使C源代码被编译器编译成DSP的汇编代码,优化的任务依然很重。典型的DSP应用需要大量的计算和严格的开销,这使得程序的优化必不可少(至少对于程序最关键的部分)。因此,选择DSP的一个关键因素就是是否有足够多的程序员能够更好地适应DSP处理器的指令集。
8.开发工具的要求
由于DSP应用的是需要高度优化的代码,所以大多数DSP厂商都会提供一些开发工具来帮助程序员完成优化工作。例如,大多数制造商为处理器提供模拟工具,以准确模拟处理器在每个指令周期中的活动。这些是确保实时操作和代码优化的有用工具。GPP供应商通常不提供这样的工具,主要是因为GPP程序员通常不需要这个级别的详细信息。GPP缺乏精确到指令周期的仿真工具是DSP应用开发者面临的一个大问题:因为几乎不可能预测给定任务的高性能GPP所需的周期数,也就不可能解释如何提高代码的性能。
应用大会:单片机技术创新与嵌入式应用大会是一个关于单片机技术的交流与应用论坛,与高交会电子展同期进行。由深圳创意时代展览有限公司举办,内容通常安排国内专业人士上午进行单片机知识及创新应用演讲,下午进行论坛,自由畅谈交流技术及行业趋势。
第四届会议
时间:2065438+2002年8月21。
地点:深圳会展中心
相关展会:2012嵌入式系统展
会议全称:第四届单片机技术创新与嵌入式应用大会。
支撑媒体:电子展览网
主旨发言(上午):
从MCU到SoC
单片机技术的集成、开放与创新
嵌入式系统到32位MCU的无缝升级
更环保、更可靠的嵌入式设计等。
分论坛(下午)深入更多嵌入式应用市场;
分论坛1:家用电器/智能家居
分论坛2:人机界面/IPC
分论坛3:电机控制
第三届会议
将重点关注:嵌入式领域创新的关键以及中国企业产品升级和转型所需的MCU和嵌入式解决方案。
时间:2011年11月18。
地点:深圳
主办单位:第十三届深圳高交会电子展组委会。
主办单位:创意时代展览电子展览网
主题演讲(上午)包括:
多核微控制器的发展趋势
MCU到SoC
智能系统的安全性和可靠性等。
单片机!单片机!2011触角深入最新应用市场(下午):
分论坛1:家用电器/智能家居
分论坛2:智能测量
分论坛3:人机界面/IPC
分论坛4:电机控制
过去的回顾
2009年,460多名专业人员参加了培训。
2010年,有606名专业人员参加。
2010专业观众分析
单片机!单片机!2010吸引了来自IBM、西门子、EVOC、艾默生、TCL、创维、康佳、美的、中兴、联想、富士康、伟创力、比亚迪等数百家国内外知名企业的606名技术和管理人员
超过一半的专业观众是R&D的技术人员。
技术R&D人员占52%,其次是中高层管理人员占33%;少部分是市场/营销人员,占13%,其他占2%。
专业受众领域分布在参与者所在企业,消费电子占37%;工业电子占24%;嵌入式系统设计占22%;医疗电子占比19%;汽车电子和嵌入式软件开发,各占15%;家用电器14%;手机和通信11%;IT和网络10%;其他占9%。
2010专业观众场分布2010单片机专业观众分析