资讯详情

一文讲解单片机、ARM、MCU、DSP、FPGA、嵌入式错综复杂的关系!

452ead6f018bd206c16b6788c51811b6.png

首先,嵌入式是一个概念。没有准确的定义。每本书都有自己的定义。但主要思想是一样的,即比较PC对于一般系统,嵌入式系统是一个结构简单的特殊系统,只保留硬件和软件所需的部分,并切割不必要的部分。因此,嵌入式系统一般具有便携性、功耗低、性能单一等特点。

然后,MCU、DSP、FPGA这些都属于嵌入式系统的范畴,用于实现某一目的。

MCU经过这么多年的发展,单片机不仅仅是普林斯顿结构的51,性能也有了很大的提高。因为MCU程序必须按顺序执行,因此适合控制,更多地应用于工业。而ARM这是专门设计的MCU由于先进的技术和适当的策略,过去两年单片机市场份额占有率巨大。ARM单片机有很多种,从低端开始M0(小家电)到高端A8、A9(手机和平板电脑)都很受欢迎,所以不是ARM单片机必须进入系统,关键取决于应用场合。

DSP叫做数字信号处理器,它的结构与MCU加快运算速度,突出运算能力。可以看作是超快的MCU。低端的DSP,如C2000系列主要用于电机控制,但是TI公司似乎称之为DSC(数字信号控制器)介于一个MCU和DSP之间的东西。高端的DSP,如C5000/C6000系列通常是需要大量操作的地方,如视频图像处理和通信设备。

FPGA它被称为现场可编程逻辑阵列,它本身没有任何功能,就像一张白纸。它想要的功能完全取决于编程人员的设计(它的所有过程都是硬件,包括VHDL和Verilog HDL程序设计也是硬件类,一般称为编写逻辑。)。如果你够NB,你可以把它变成MCU,也可以变成DSP。由于MCU和DSP内部结构设计良好,只能通过软件编程顺序处理,FPGA并行处理和顺序处理是最快的。

那么为什么MCU、DSP和FPGA会同时存在吗?那是因为MCU、DSP内部结构都是由IC设计师精心设计,在完成相同功能时,功耗和价格都比较FPGA要低的多。而且FPGA发展本身比较复杂,完成相同功能需要更多的人力和财力。所以三者各有优势,各有用武之地。但三者之间已经有了融合的趋势,ARM的M4系列增加了一个精简系列DSP核,TI达芬奇系列本身就是ARM DSP结构,ALTERA和XINLIX新推出的FPGA都包含了ARM核在里面。所以三者之间的关系越来越像三基色的三个圆。

总之,你有我,我有你。

单片机:电梯、空调等简单控制通常没有操作系统。

dsp:用于离散余弦变换、快速傅里叶变换等复杂计算,常用于图像处理,用于数码相机等设备。

arm:一家英国芯片设计公司,但不生产芯片。只销售知识产权。

fpga:现场可编程门阵列,用硬件描述语言(Verilog 或 VHDL)完成的电路设计可以通过简单的综合和布局快速烧录到 FPGA 测试是现代的 IC 技术主流设计验证。

嵌入式 与台式计算机相比,系统可以切割,形式不同,体积、功耗、成本有限,实时要求高,如示波器、手机、平板电脑、自动洗衣机、路由器、数码相机,这些设备,虽然没有台式机,但有一个或多个嵌入式系统工作。

根据对象系统的功能复杂性和计算处理的复杂性,提供不同的选择。对于一个简单的家用电器控制嵌入式系统,使用一个简单的8位单片机就足够了。它既便宜又好。对于手机和游戏机,必须使用32位ARM和DSP等芯片了。FPGA这是一种更倾向于硬件的实现方式。

因此,我们应该通过学习成为硬件工程师,从单片机开始,然后学习ARM和DSP之类。

单片机现在铺天盖地,种类繁多,让开发者应接不暇,发展相当迅速。从20世纪80年代开始,从当时的四位八位发展到各种高速单片机。

各厂商在速度、内存、功能等方面也参差不齐~~与此同时,涌现出一大批具有代表性的单片机制造商:Atmel、TI、ST、MicroChip、ARM…国内的宏晶STC单片机也是值得称赞的…

下面为大家带来51、MSP430、TMS、STM32、PIC、AVR、STC比较单片机之间的优缺点和功能……

当然,应用最广泛的8位单片机也是初学者最容易学习的单片机,最早由Intel由于其典型的结构和完善的总线专用寄存器集中管理,许多逻辑操作功能和丰富的控制指令系统被称为一代经典,为其他单片机的未来发展奠定了基础。

51单片机之所以成为经典,成为易上手的单片机主要有以下特点:

1.从内部硬件到软件,有一个完整的位置操作系统,称为位置处理器,处理对象不是字节或字节,而是位置。它不仅可以处理电影中某些特殊功能寄存器的位置,如传输、位置、清除、测试等,还可以进行位置的逻辑操作,其功能非常完整,使用方便。

2. 同时在片内RAM该区间还特别开放了一个双功能地址区间,使用非常灵活,这无疑为用户提供了极大的便利,

3. 乘法和除法指令也给编程带来了便利。很多八位单片机都没有乘法功能,所以编一段程序调用乘法非常不方便。

缺点:(虽然是经典,但缺点还是很明显的)

1.AD、EEPROM其他功能需要扩展,增加了硬件和软件的负担

2. 虽然I/O脚使用简单,但高电平时没有输出能力,这也是51系列单片机最大的软肋

3. 运行速度太慢,尤其是双数据指针,如果能够改进,可以给编程带来极大的便利

4. 51保护能力差,芯片容易烧坏

目前广泛应用于教学场合和性能要求低的场合

最常用的设备:8051和80C51

MSP430系列单片机是德州仪器1996年推出的16位超低功耗混合信号处理器。最大的亮点是功耗低,速度快。汇编语言使用灵活,搜索网站的方式多,指令少,使用方便。这主要是因为它将许多模拟电路、数字电路和微处理器集成到芯片上,以提供单片解决方案。其快速发展和应用范围的扩大主要取决于以下特点…

1.强大的处理能力,采用精简指令集(RISC)结构丰富,寻址方式丰富( 7 种源操作数寻址, 4 种目操作数寻址),简单 27 条内核指令和大量模拟指令;大量的寄存器和片内数据存储器可以参与各种操作;还有高效的查表指令;处理速度高,在 8MHz 晶体驱动下指令周期为 125 ns 。这些特性保证了可编制的高效源程序

2.在运算速度方面 8MHz 在晶体的驱动下实现 125ns 指令周期 位数据宽度, 125ns 一些算法(如指令周期和多功能硬件乘法器(可以乘加),可以实现数字信号处理(如 FFT 等)

3.超低功耗,MSP430 单片机功耗超低的原因是它在降低芯片的电源电压和灵活可控的运行时钟方面有其独特之处。电源电压采用 1.8~3.6V 因此,它可以在那里 1MHz 在时钟条件下运行时, 芯片的电流会在 200~400uA 时钟关闭模式的最低功耗约为 0.1uA

1.个人觉得不容易上手,不适合初学者入门,资料少。只能去官网找

2.它占据了很大的指令空间,因为它是一个16位单片机,程序词为单位,有些指令实际上占据了6个字节。虽然程序表面上很简单, 但与pic单片机占用了很大的空间

广泛应用于低功耗、超低功耗的工业场多

最常用的器件:MSP430F系列、MSP430G2系列、MSP430L09系列

这里也提一下TMS虽然系列单片机不是主流。由TI推出的8位CMOS单片机,多种存储模式,多种外围接口模式,适用于复杂的实时控制场合。虽然没STM32那么优秀,也没有MSP430那么张扬,但是TMS370C该系列单片机通过整合先进的外围功能模块和各种芯片的内存配置,提供高性价比的实时系统控制。同时采用高性能硅栅CMOS EPROM和EEPROM技术实现。低工作功耗CMOS技术,工作温度范围广、噪声抑制、高性能、外设功能丰富,使TMS370C该系列单片机在汽车电子、工业电机控制、计算机、通信和消费方面有一定的应用。

由ST厂商推出的STM32系列单片机,业内朋友都知道,这是一款性价比高的系列单片机,应该没有一款,功能强大。专门设计的嵌入式应用程序是专门为高性能、低成本、低功耗而设计的ARM Cortex-M内核,外设一流:1μs的双12位ADC,4兆位/秒的UART,18兆位/秒的SPI等等,在功耗和集成方面也有不错的表现,当然和MSP430的功耗略逊一筹,但这并不影响工程师对它的热情,由于其简单的结构和易用的工具以其强大的功能而闻名于行业…其强大的功能主要体现在:

1.内核:ARM32位Cortex-M3CPU,最高工作频率为72MH,1.25DMIPS/MHz,单周期乘法和硬件除法

2.存储器:片上集成32-512KB的Flash存储器。6-64KB的SRAM存储器

3.时钟、复位和电源管理:2.0-3.6V的电源供电和I/O接口的驱动电压。POR、PDR和可编程的电压探测器(PVD)。4-16MHz的晶振。内嵌出厂前调校的8MHz RC振荡电路。内部40 kHz的RC振荡电路。用于CPU时钟的PLL。带校准用于RTC的32kHz的晶振

4、调试模式:串行调试(SWD)和JTAG接口。最多高达112个的快速I/O端口、最多多达11个定时器、最多多达13个通信接口

使用最多的器件:STM32F103系列、STM32 L1系列、STM32W系列

PIC单片机系列是美国微芯公司(Microship)的产品,共分三个级别,即基本级、中级、高级,是当前市场份额增长最快的单片机之一,CPU采用RISC结构,分别有33、35、58条指令,属精简指令集,同时采用Harvard双总线结构,运行速度快,它能使程序存储器的访问和数据存储器的访问并行处理,这种指令流水线结构,在一个周期内完成两部分工作,一是执行指令,二是从程序存储器取出下一条指令,这样总的看来每条指令只需一个周期,这也是高效率运行的原因之一,此外PIC单片机之所以成为一时非常热的单片机不外乎以下特点:

1.具有低工作电压、低功耗、驱动能力强等特点。PIC系列单片机的I/O口是双向的,其输出电路为CMOS互补推挽输出电路。I/O脚增加了用于设置输入或输出状态的方向寄存器,从而解决了51系列I/O脚为高电平时同为输入和输出的状态。

2.当置位1时为输入状态,且不管该脚呈高电平或低电平,对外均呈高阻状态;置位0时为输出状态,不管该脚为何种电平,均呈低阻状态,有相当的驱动能力,低电平吸入电流达25mA,高电平输出电流可达20mA。相对于51系列而言,这是一个很大的优点

3.它可以直接驱动数码管显示且外电路简单。它的A/D为10位,能满足精度要求。具有在线调试及编程(ISP)功能。

其专用寄存器(SFR)并不像51系列那样都集中在一个固定的地址区间内(80~FFH),而是分散在四个地址区间内。只有5个专用寄存器PCL、STATUS、FSR、PCLATH、INTCON在4个存储体内同时出现,但是在编程过程中,少不了要与专用寄存器打交道,得反复地选择对应的存储体,也即对状态寄存器STATUS的第6位(RP1)和第5位(RP0)置位或清零。数据的传送和逻辑运算基本上都得通过工作寄存器W(相当于51系列的累加器A)来进行,而51系列的还可以通过寄存器相互之间直接传送,因而PIC单片机的瓶颈现象比51系列还要严重,这在编程中的朋友应该深有体会

使用最多的器件:PIC16F873、PIC16F877

AVR单片机是Atmel公司推出的较为新颖的单片机,其显著的特点为高性能、高速度、低功耗。它取消机器周期,以时钟周期为指令周期,实行流水作业。AVR单片机指令以字为单位,且大部分指令都为单周期指令。而单周期既可执行本指令功能,同时完成下一条指令的读取。通常时钟频率用4~8MHz,故最短指令执行时间为250~125ns。AVR单片机能成为最近仍是比较火热的单片机,主要的特点:

1.AVR系列没有类似累加器A的结构,它主要是通过R16~R31寄存器来实现A的功能。在AVR中,没有像51系列的数据指针DPTR,而是由X(由R26、R27组成)、Y(由R28、R29组成)、Z(由R30、R31组成)三个16位的寄存器来完成数据指针的功能(相当于有三组DPTR),而且还能作后增量或先减量等的运行,而在51系列中,所有的逻辑运算都必须在A中进行;而AVR却可以在任两个寄存器之间进行,省去了在A中的来回折腾,这些都比51系列出色些

2.AVR的专用寄存器集中在00~3F地址区间,无需像PIC那样得先进行选存储体的过程,使用起来比PIC方便。AVR的片内RAM的地址区间为0~00DF(AT90S2313) 和0060~025F(AT90S8515、AT90S8535),它们占用的是数据空间的地址,这些片内RAM仅仅是用来存储数据的,通常不具备通用寄存器的功能。当程序复杂时,通用寄存器R0~R31就显得不够用;而51系列的通用寄存器多达128个(为AVR的4倍),编程时就不会有这种感觉。

3.AVR的I/O脚类似PIC,它也有用来控制输入或输出的方向寄存器,在输出状态下,高电平输出的电流在10mA左右,低电平吸入电流20mA。这点虽不如PIC,但比51系列还是要优秀的…

1.是没有位操作,都是以字节形式来控制和判断相关寄存器位的

2.C语言与51的C语言在写法上存在很大的差异,这让从开始学习51单片机的朋友很不习惯

3.通用寄存器一共32个(R0~R31),前16个寄存器(R0~R15)都不能直接与立即数打交道,因而通用性有所下降。而在51系列中,它所有的通用寄存器(地址00~7FH)均可以直接与立即数打交道,显然要优于前者。

使用最多的器件:ATUC64L3U、ATxmega64A1U、AT90S8515

说到STC单片机有人会说到,STC也能算主流,估计要被喷了~~我们基于它是国内还算是比较不错的单片机来说。STC单片机是宏晶生产的单时钟/机器周期的单片机,说白了STC单片机是51与AVR的结合体,有人说AVR是51的替代单片机,但是AVR单片机在位控制和C语言写法上存在很大的差异。而STC单片机洽洽结合了51和AVR的优点,虽然功能不及AVR那么强大,但是在AVR能找到的功能,在STC上基本都有,同时STC单片机是51内核,这给以51单片机为基础的工程师们提供了极大的方便,省去了学习AVR的时间,同时也不失AVR的各种功能…

STC单片机是高速、低功耗、超强抗干扰的新一代8051单片机51单片机,指令代码完全兼容传统8051,但速度快8~12倍,内部集成MAX810专用复位电路。4路PWM 8路高速10位A、D转换,针对电机电机 的供应商控制,强干扰场合,成为继51单片机后一个全新系列单片机…

1.下载烧录程序用串口方便好用,容易上手,拥有大量的学习资料及视频,最著名的要属于杜老师的那个视频了,好多对单片机有兴趣的朋友都是通过这个视频入门的,同时具有宽电压:5.5~3.8V,2.4~3.8V, 低功耗设计:空闲模式,掉电模式(可由外部中断唤醒)

2.STC单片机具有在应用编程,调试起来比较方便;带有10位AD、内部EEPROM、可在1T/机器周期下工作,速度是传统51单片机的8~12倍,价格也较便宜

3.4 通道捕获/比较单元,STC12C2052AD系列为2通道,也可用来再实现4个定时器或4个外部中断,2个硬件16位定时器,兼容普通8051的定时器。4路PCA还可再实现4个定时器,具有硬件看门狗、高速SPI通信端口、全双工异步串行口,兼容普通8051的串口,同时还具有先进的指令集结构,兼容普通8051指令集

PS:STC单片机功能虽不及AVR、STM32强大,价格也不及51和ST32便宜,但是这些并并不重要,重要的是这属于国产单片机比较出色的单片机,但愿国产单片机能一路长虹…

使用最多的器件:STC12C2052AD

主要针对S08,S12这类单片机,当然Freescale单片机远非于此。Freescale系列单片机采用哈佛结构和流水线指令结构,在许多领域内都表现出低成本,高性能的的特点,它的体系结构为产品的开发节省了大量时间。此外Freescale提供了多种集成模块和总线接口,可以在不同的系统中更灵活的发挥作用!Freescale单片机的特有的特点如下:

1.全系列:从低端到高端,从8位到32位全系列应有尽有,其推出的8位/32位管脚兼容的QE128,可以从8位直接移植到32位,弥补单片机业界8/32 位兼容架构中缺失的一环

2.多种系统时钟模块:三种模块,七种工作模式。多种时钟源输入选项,不同的mcu具有不同的时钟产生机制,可以是RC振荡器,外部时钟或晶振,也可以是内部时钟,多数CPU同时具有上述三种模块!可以运行在FEI,FEE,FBI,FBILP,FBE,FBELP,STOP这七种工作模式

3.多种通讯模块接口:Freescale单片机几乎在内部集成各种通信接口模块:包括串行通信接口模块SCI,多主I2C总线模块,串行外围接口模块 SPI,MSCAN08控制器模块,通用串行总线模块(USB/PS2)

4.具有更多的可选模块:具有LCD驱动模块,带有温度传感器,具有超高频发送模块,含有同步处理器模块,含有同步处理器的MCU还具有屏幕显示模块OSD,还有少数的MCU具有响铃检测模块RING和双音多频/音调发生器DMG模块

5.可靠性高,抗干扰性强,多种引脚数和封装选择

6.低功耗、也许Freescale系列的单片机的功耗没有MSP430的低,但是他具有全静态的“等待”和“停止”两种模式,从总体上降低您的功耗!新近推出的几款超低功耗已经与MSP430的不相上下!

使用最多的器件:MC9S12G系列

如果真要在这些单片机中分个一二三等,那么如果你想跟随大众,无可厚非51单片机还是首选;如果你追求超高性价比,STM32将是你理想选择;如果你渴望超低功耗,MSP430肯定不会让你失望;如果你想支持国产,STC会让你兴奋…

未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)大脑研究计划,构建互联网(城市)大脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。每日推荐范围未来科技发展趋势的学习型文章。目前线上平台已收藏上千篇精华前沿科技文章和报告。

  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

标签: ps2继电器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台