ARM微控制器与嵌入式系统

时间:2024-03-21 07:05:13


图灵机

  • 可计算性(calculability)是指一个实际问题是否可以使用计算机来解决,定义为“可以再有限步骤内被解决的问题”(数理逻辑)
  • 很多非数值问题(比如文字识别,图像处理等)都可以通过转化为数值问题来交给计算机处理
  • 1936年,Alan Turing在伦敦权威的数学杂志上发表了一篇划时代的重要论文《可计算数字及其在判断性问题中的应用》
  • 在这篇开创性的论文中,图灵给“可计算性”下了一个严格的数学定义,并提出著名的“图灵机”(Turing Machine)的设想。一台完全属于想象中的“计算机”!
  • “图灵机”想象使用一条无限长度的纸带子,带子上划分成许多格子。 机器的运作时按逐步进行的方式,每一步由三个不同的动作组成:
    (1)在任意确定时刻,读写头对准带子上的一个方格,根据该格上的内容和机器的状态决定自己的动作;
    (2)机器可以抹去带上的原有符号,使方格保持空白或者写上另外的符号(也可以与原来相同)
    (3)然后让带子通过读写头,朝两个方向之一移动一个方格
  • 机器的行为自始至终是由一个指令集所决定,它明确地指示机器每一步应该执行哪三个动作
  • 整个运作从读写头是读一个方格数据开始,一旦计算结束,机器就进入一个特别的停止状态。运算过程的任何结果都被记录在带子上
  • “图灵机”是一个虚拟的“计算机”,完全忽略硬件状态,考虑的焦点是逻辑结构
  • 图灵甚至还想象在带子上存储数据和程序,“万能图灵机”实际上就是现代通用计算机的最原始的模型
    ARM微控制器与嵌入式系统
  • 图灵的文章从理论上证明了制造出通用计算机的可能性
  • 几年之后,美国的阿坦纳索夫在1939年果然研究制造看世界上的第一台电子计算机ABC,其中采用了二进制,电路的开与合分别代表数字0与1,运用电子管和电路执行逻辑运算等
  • ABC是“图灵机”的第一个硬件实现,看得见摸得着
    ARM微控制器与嵌入式系统
  • 冯·诺依曼不仅在上个世纪40年代研制成功了功能更好、用途更为广泛的电子计算机,并且为计算机设计了编码程序,还实现了运用纸带存储与输入
    *“冯·诺依曼体系结构”指出了计算机分为控制器、运算器、存储器、输入设备、输出设备五大部件
    ARM微控制器与嵌入式系统

编码Encoding

  • 编码(Encoding)描述的是:为信息分配表示形式的过程
  • 选择一种合适的有效编码方案是一项真正的工程学挑战
    (1)机制、效率(所使用的比特数)
    (2)可靠性(噪声)
    (3)安全性(加密)

ASCII编码

  • American Standard Code for Information Interchange,基于英语字母序的码表系统
  • ASCII长久以来在计算机系统中广泛采用,是实质上的标准
  • ASCII采用7个bit来进行编码
    (1)数字0~9
    (2)英文字母:小写与大写
    (3)标点符号
    (4)32个非打印字符用来控制打印机
    ARM微控制器与嵌入式系统

从晶体管到概念CPU

ARM微控制器与嵌入式系统

  • 用电压幅值来代表0与1,常见的定义方式有
    TTL: VCC=5V±5%,0-0.7V为0,2.4-5V为1
    CMOS:VDD=3-8V(Lower to 1.8 or 0.9) 0-0.3VDD为0,0.7-1VDD为1
  • 4比特的概念CPU如下
    ARM微控制器与嵌入式系统
    ARM微控制器与嵌入式系统
    ARM微控制器与嵌入式系统

通用CPU

  • CPU不仅仅是运算单元:CPU是计算机/微控制器的核心,进行算术/逻辑运算
  • 通用CPU需要大量的外围辅助部件:
    内存:DDR2、DDR3
    硬盘
    主板
    显卡
    显示器
    鼠标键盘

微控制器MCU

  • 微控制器MCU不仅仅是一个简单的CPU:微控制器是一个完整的计算机系统,在单个芯片上包含了处理器、存储器和所有外设IO模块
  • 微控制器是一个片上计算机,对比PC中的处理器,微控制器更注重自完备(Self-sufficiency)和低成本。典型的微控制器包含了应用所需的全部存储器和接口,而PC的处理器需要其他的外部器件来提供这些需求
  • 微控制器MCU有哪些部件:
    CPU:从4位到8位到16位到32位到64位
    输入/输出接口:例如串口
    外设:例如定时器、信号转换电路(从CPU角度向外看)
    ARM:数据存储器
    ROM:程序存储器,例如EPROM、EEPROM、Flash
    时钟发生器、电压调节器等

ARM Cortex-M指令集

ARM微控制器与嵌入式系统

相关文章