5.7 KiB
1. 计算机的发展
1.1. 电子管计算机
ENIAC长30.48米,宽6米,高2.4米,占地面积约170平方米,30个操作台,重达30英吨,耗电量150千瓦,造价48万美元。它包含了17,468根真空管(电子管)7,200根水晶二极管,1,500 个中转,70,000个电阻器,10,000个电容器,1500个继电器,6000多个开关,计算速度是每秒5000次加法或400次乘法,是使用继电器运转的机电式计算机的1000倍、手工计算的20万倍。
ENIAC的编程通过改变电缆连接的方式进行,那时几乎所有的程序员都是女性。
1.2. 计算机核心技术的发展
电子管又叫做阴极射线管,是ENIAC的核心。
1947发面了晶体管(一般使用半导体材料硅/锗为材料,后来锗材料因为物理特性的原因几乎很少用了)代替电子管,使得计算机的功耗和体积大大降低,同时运算速度大大提升。
集成电路,英文为Integrated Circuit,缩写为IC;顾名思义,就是把一定数量的常用电子元件,如电阻、电容、晶体管等,以及这些元件之间的连线,通过半导体工艺集成在一起的具有特定功能的电路。是20世纪50年代后期到60年代发展起来的一种新型半导体器件。它是经过氧化、光刻、扩散、外延、蒸铝等半导体制造工艺,把构成具有一定功能的电路所需的半导体、电阻、电容等元件及它们之间的连接导线全部集成在一小块硅片上,然后焊接封装在一个管壳内的电子器件。其封装外壳有圆壳式、扁平式或双列直插式等多种形式。集成电路技术包括芯片制造技术与设计技术,主要体现在加工设备,加工工艺,封装测试,批量生产及设计创新的能力上。
1.3. 现有主流计算机的计算能力
13th Gen Intel(R) Core(TM) i7-13700K
- 核心:6.38GFLOPS/Core 64亿浮点/核心/秒
- CPU:500亿~2000亿/秒
- 频率 3~6G
- 晶体管数量 估计 20亿~50亿
- 功耗 65W
2. 嵌入式系统的概念和特点
计算机系统分类(P2)
- 通用计算机按照高速运算和海量存储的技术方向发展。
- 嵌入式系统则向低功耗、高可靠性和便携性等方向发展
2.1. 什么是嵌入式
IEEE定义:用于控制、监视或者辅助操作机器或设备装置。
通用定义:嵌入到对象体系中,以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗等严格要求的专用计算机系统。
2.2. 嵌入式系统的特点(p2)
- 嵌入性
- 专用性
- 计算机系统
2.3. 问题:
你身边的电子设备,那些是嵌入式的,哪些是非嵌入式的?
- 笔记本
- 服务器
- 手机?
- 手表?
- 空调
- 电视?
- 洗衣机
- 冰箱
- 蓝牙耳机
- 遥控器
3. 嵌入式系统的组成(p3)
虚线上的是软件部分,下部是硬件部分。硬件部分分为核心部分和外围电路;软件部分的操作系统是可选的。
问题:为什么需要操作系统,没有操作系统行不行?
3.1. 嵌入式硬件(p3-p4)
- 嵌入式处理器(MPU/MCU):一般来说,MPU的通用能力更好、性能更好;MCU 的性能较低、功耗更低,型号更多,满足专用的领域。例如以前学过的8051就是典型的MPU。
问题:8051 的基本性能和外设?
8051 可以用来做什么?
- DSP 数字信号处理器
3.1.1. 片上系统(SOC)
片上系统(SOC):集成度更高,除了MPC/MCU,集成了信号处理(DSP),音频、视频、存储等附加功能,更便于小型化和专用化。
3.1.2. ARM处理
ARM公司负责设计处理计内核,其他公司购买内核设计,并在内核的基础上增加功能后完成自己的芯片。
系列:Cortex-A、Cortex-R、Cortex-M,性能从高到底。Cortex-A系列用于手机、平板、甚至服务器领域;Cortex-R通用的高性能嵌入式,用于汽车、网络产品片、仪器、家电等领域;Cortex-M是低功耗系列,用于手表、物联网传感器等小型化、低功耗的领域。
3.1.3. 外围电路(p5)
- 环境感知
- 通信类
- 存储类
- 人机交互类
3.2. 嵌入式系统软件(p6)
- 驱动程序
- 操作系统
- 应用程序
4. 嵌入式系统的开发流程
4.1. 编程模式(p7)
4.1.1. 前后台程序(裸机编程)
该方式适合简单的应用。
后台系统:一个死循环,在循环中调用不同的功能函数完成操作;
前台系统:多个中断服务,用于处理系统的异步事件和实时性要求高的任务。
4.1.2. 嵌入式操作系统
适合复杂的应用,更方便的管理任务间的切换,同时也需要较多的资源(RAM、ROM、CPU)。
4.2. 程序开发方式(P8)
- 寄存器方式:以前的8051编程方式,需要了解每个寄存器的具体地址,通过寄存器的读写、位操作等完成功能的开发;
- 库函数方式:使用函数和预定义常量来简化寄存器的操作,其底层还是寄存器的操作。