大家好,我是华维林北。
今天我来了解一下MCU四大平台,MCU是micro control unit的缩写。
这四大平台分别是单片机,DSP,ARM和FPGA。
一般电子信息类的童鞋在本科学习阶段都多多少少有接触过这四大平台,但是即使研究生读完以后,大家也说不清楚这四大平台都有什么样的特点,更不用说当你接到一个任务之后,到底应该适用哪个平台来实现完成你的任务,绝大多数童鞋也是没有头绪的。
所以这一期我(华维林北)对这四个平台进行一个总结,把它们的特点,优缺点,以及能胜任什么样的任务告诉大家。
在讲之前呢,我默认各位童鞋们对这四大平台基本上是怎么回事是有一定简单了解的。
首先看单片机,单片机是绝大多数电子信息类学科的童鞋必修的一门课程。
优点:它的结构特别的简单,单片机是最早出现的一种微控制器,它的结构简单之后就带来了三个优点
第1,它的体积可以做得非常小,目前见过的最小的单片机是F51单片机,它的尺寸只有3x3毫米这么小,有16个引脚,它用在一个光模块儿里头,第2,它的价格可以做得非常的低廉,比如说各位童鞋去找Arduino Micro的板子,它连芯片带外围器件一共才十几块,所以它可以做到非常便宜。第3,它可以做到功耗低,比如说很多的单片机,我们做低功耗设计的时候,可以把它静态待机电流控制在10nA以下,这样的话,我们用一个纽扣电池就可以让它待机很久。
由于单片机出现的非常早,并且它的开发也相对的简单,我们有一个集成开发环境就可以开发了,并且有大量现成的历程和资源可以供我们调用。因此它的开发时间和上手时间都是非常短的,而且单片机现在有非常多的现成的接口,比方说I2C,SPI,这两个接口一般用来接一些传感器,一些屏幕这些东西,都是可以的。还有AD可以读一些模拟量信号,读一些电位器的旋钮,还有PWM信号输出控制一些电机和舵机的转动。
所以我们可以看单片机是非常适合用作做控制,读出一些传感器的信号,然后再用传感器的信号判断之后来控制电机的转动,单片机是非常非常适合做这类事情的。
缺点:
第1,单片机的运行速度比较低,当然这里说的是传统意义上的单片机,它的运行速度一般只有十几m到几十m,目前为止还有新型的单片机,比方说esp32这样的优秀的单片机,它最高的运行速度是可以运行到200多m,普通的话也可以达到80m。
第2,单片机虽然接口丰富,但是接口又不够丰富,它只能接一些低速的传感器的接口,很难接上高速的通用的接口。
比方说,Usb OTG啊,网口,MIPI接口,SATA接口,这样的接口一般来说它是没有的。
那USB OTG是什么东西呢?
USB设备一般分主设备和从设备,主设备叫host,从设备叫外围设备叫peripheral。
比方说电脑主机上面的usb口就是一个host接口,U盘的接口就是一个peripheral,叫外围接口。
OTG是既可以做主接口,又可以做从接口,比方说手机既可以读U盘,又可以接到电脑上让电脑去读它的数据,所以这叫Usb OTG接口,一般的单片机是不具备的。
Q:有些童鞋可能就会说Arduino上面就有usb接口。
A:那个接口是实际上是一个usb转成一个RS232的一个串口,它并不是一个真正的usb接口,它只是转成串口,方便使用的一个接口,网口更不用说,虽然也有串口转网口这样的东西,但是它没法利用网络的这种高速传输的特点,没法进行千兆网口这样100兆字节的数据传输,单片机也是基本上不可以的。
MIPI接口接摄像头和SATA绝大多数的单片机也是不行的。
当然高端的单片机我们就不算在哪了,绝大多数单片机是连不了这种高速信号接口的。
那么我们现在给单片机进行一个总结。
它适合干嘛?
单片机特别适合干控制,读一些外围的模拟量,甚至接收上位机的信号之后,让它控制一个屏幕的显示,控制一个电机的转动,控制一个加热装置,控制一个开关的打开和关闭,这些都是非常适合的。
它不适合做什么呢?
不适合做算法,由于它处理的速度比较慢,并且一般都是冯诺依曼结构,它的吞吐量也不够,也不适合做数据传输,它没有高速的数据接口,所以数据传输这块也不行啊,它读的信号一般都是低速的,发出去的信号也是低速的,因此它也不可能做高速的数据处理,因为它没有高速的数据输入和输出,它也没有一个处理的速度,所以当要处理一个高速的大量的数据,高速的采样这些东都是不可以的。
下面来聊一下DSP,DSP的全称叫做digital signal processor,数字信号处理器。
DSP有什么特点?
DSP是为了实现数字滤波器,这是它最基本的一个功能。
为了实现数字滤波器,我们要知道,数字滤波器的实现实际上是要在两个采样点之间对缓存的数据进行一次卷积,就是一位乘加运算,这个运算量是非常大的。
DSP为了实现数字滤波器的功能,就必须得具备一个高吞吐量的特点,所以绝大多数甚至可以说所有的DSP处理器使用的都是哈佛结构。
哈佛结构和冯诺依曼结构它们之间是什么样的关系和特点,各位童鞋自己线下找资料看一下,我在这就不多说聊了。
另外DSP的处理速度一定要高,它的高体现在两个方面。
第一方面是主频高,比方说TI公司,也就是德州仪器公司,它们在2006年左右实现的那个6000系列的DSP芯片就已经达到了1G的主频,在05,06年的时候一个微控制器能达到1G主频的速度,这是非常夸张的一个参数了。
第二方面是,主屏高还不行,只有硬件加速了,它才能运算的快,作为DSP来讲,它得能完成硬件卷积运算,为了完成硬件卷积运算,DSP内部一般集成了这三类,硬件首先累加器,然后要有硬件乘法器,之后它要有桶形移位寄存器,当你了解了数字卷积的概念之后就知道为什么要有这三个器件了,有了这个三个器件之后,卷积的速度就大大加快了。
总结一下DSP,它适合做什么和不适合做什么?
DSP特别适合处理单路的串行数字信号,不是数字信号的话加个ad,把它采样成数字信号之后再处理的话就比较好了,它特别适合在两个采样点之间进行卷积运算,从而实现一个实时的数字滤波器。另外DSP也适合运行各种各样的数字信号处理的算法。
DSP不适合做低端控制,当然如果说这个控制里涉及到大量的数字信号处理和运算的时候,那么它也是适合的。绝大多数的DSP芯片,它的接口是没有单片机丰富的,使用起来也没有单片机方便。如果是低端控制的话,使用DSP的功耗要比单片机高,实现起来要比单片机复杂,并且在编程方面也不如单片机有那么多的资源,高端控制除外。
由于时间关系,剩下的华维林北会安排在下一篇文章,关注我,每天分享一些相关知识

微控制器MCU四大平台你了解多少?(一)相关推荐

  1. CC1310F128RSMR Sub-1GHz射频微控制器 - MCU 433MHz 868MHz 915MHz ULP Wireless MCU

    CC1310F128RSMR Sub-1GHz射频微控制器 - MCU 433MHz 868MHz 915MHz ULP Wireless MCU CC1310设备是德州仪器公司生产的一款性价比高.超 ...

  2. R5F100AAA100SP#V0低功耗16位微控制器MCU RENESAS

    描述 R5F100AAA100SP#V0 R5F100AAA Renesas 16位微控制器 - MCU RL78 / G13 RENESAS MCU 真正的低功耗平台(低至66μA/ MHz,RTC ...

  3. SPC5645SF1VLT微控制器-MCU 32位

    SPC5645SF1VLT 描述 说明 框图 功能列表 低功耗运行 176 LQFP封装引脚排列 描述 产品类别:32位微控制器 - MCU RoHS指令:是的 核心:e200z4d 数据总线宽度:3 ...

  4. R5F1006CASP#X0 16位微控制器MCU RL78 / G13 MCU低功耗 通用应用RENESAS

    描述 R5F1006CASP#X0 16位微控制器 - MCU RL78 / G13 MCU 32 + 4/2 20pin SSOP T&R RL78 / G13 RENESAS MCU 真正 ...

  5. 32位微控制器 (MCU)STM32G081KBU6 128KB 闪存 32QFN

    STM32G0 32位微控制器 (MCU) 适合用于消费.工业和家电领域的应用,并可随时用于物联网 (IoT) 解决方案.这些微控制器具有很高的集成度,基于高性能ARM® Cortex®-M0+ 32 ...

  6. R5F102A8ASP#V0 16位微控制器 - MCU RL78G12 8+2/768B 30SSOP R5F102A8ASP#30

    16位微控制器 - MCU RL78G12 8+2/768B 30SSOP R5F102A8ASP#30 核心:RL78 数据总线宽度:16位 最大时钟频率:24 MHz 程序存储器大小:8 kB 数 ...

  7. 微控制器MCU片上资源分类总结

    1.概述 MCU,微控制单元(Micro Controller Unit),又称为单片型计算机.单片机,将中间处理器(CPU)进行频率和规格的缩减,并将内存(memory).Timer.UART.SP ...

  8. ARM微控制器-MCU基础及CPU运行过程(堆栈/中断/寄存器操作)

    目录 为什么计算机能读懂1和0? 一. CPU的基本结构和运行机制 1. 一个基本的MCU内部结构 2. MCU Structure 3. 分析其中的CPU: 一个完整的CPU: 4. 堆栈 5. 堆 ...

  9. CH573/CH571低功耗集成BLE 32位微控制器MCU

    目录 简介 1. 系统框图 2. 芯片特性 3. CH57系列选型参考 应用领域 简介 CH573是集成BLE无线通讯的32位RISC微控制器.片上集成低功耗蓝牙BLE 通讯模块.全速USB主机和设备 ...

  10. R7F0C908B2DFP-C#AA0微控制器MCU 16位RL78 RENESAS

    概述 R7F0C908B2DFP-C#AA0 16位RL78 CISC 48KB闪存2.5V / 3.3V / 5V 32引脚LQFP托盘 MCU 16位RL78 CISC 48KB闪存2.5V / ...

最新文章

  1. 多大、谷歌大脑获ICML 2021杰出论文奖,田渊栋、陆昱成获荣誉提名!
  2. 针对Selenium环境搭建的一些小解说
  3. python 百分比数据_如何使用python计算数据列相对于另一列的百分比排名
  4. 【Todo】Java8新特性学习
  5. ajax jsonp img
  6. ajax请求成功和失败方法_创新需要反馈和失败的新方法
  7. 力扣977,有序数组的平方(JavaScript)
  8. 2017年终总结,开始写博客的第一年
  9. Vue3警告:[Vue warn] Extraneous non-emits event listeners (changeParentProps) were passed to component
  10. AB罗克韦尔plc指示灯详解
  11. [改善Java代码]由点及面,一叶知秋----集合大家族
  12. 数据库中LIMIT和 OFFSET的理解
  13. IDEA-局部变量、成员变量
  14. Python实现斗地主
  15. iOS APP:简单粗暴的自制下拉刷新
  16. c++之gbk和utf8编码转换
  17. Unity-动画-动画回调函数接口StateMachineBehaviour
  18. badboy和jmeter的下载安装及使用
  19. 计算机数学方法记录图像原理,图像处理原理技术与算法
  20. 开关电源芯片都分为那些类型?

热门文章

  1. 利用UrlRewrite,asp.net动态生成htm页面
  2. 网络工程师HCIE-RS-ipv6第一节:IPv6地址(原理+实验)
  3. 三十、K8s供应链安全1-准入控制器
  4. 十一、K8s 健康性检查
  5. C++ 从入门到入土(English Version)Section 6: Pointers and Call by Reference
  6. jumpserver开源堡垒机部署安装
  7. axios 简单常用笔记
  8. day09面向对象+
  9. Adminers 1.0.7 正式发布,MySQL 管理客户端
  10. PHP表单header post get