(基于ARM的)微机原理与接口技术概论笔记
这个专栏就是在ARM架构的树莓派4B上完成的
关于这个课
1:你航仪光学院的这个课2011年就有了基于ARM的微机原理与接口技术这个课了,且在不断的改革与更新.
2:学了《微机原理与接口技术》和修计算机 组装便宜的计算机 挑选计算机没有啥关系,但是可以学到计算机的基本组成和原理,如何工作,如何与外界交互(接口技术),assembler language.
3:如何学好这个课:和航类C语言程序设计一样按时交作业和debug 实验做好记录.
微型计算机概述
微型计算机应用有空间站和无人驾驶等.
计算机的发展:电子管->晶体管->集成电路->大规模集成电路
1946 第一台计算机 ENIAC 手动接线编程 BUG这个词从这里来的
1958 IBM公司第一台晶体管计算机 32KB RAM 穿孔卡片编程
第1代 1971-1973: Intel 4004/8008 4位机/8位机
第2代 1974-1978 8080/8085 Z80 8位机 工业控制智能 仪器仪表
第3代 1978-1981 8086 80286 16位机 早期个人计算机
第4代 1984-1999 80386 80486 32位机 可以解决很多问题
第5代 1999-现在 Intel/AMD 多核 64位机 (树莓派有4个64位ARM核)
速度更快 容量更大 功能更强
如果换成128位 256位? 处理器时钟有上限,发热等问题不能解决.
Moore定律失效?
微型计算机分类
角度有很多 很难明确分类
从应用角度说:服务器(server) 个人计算机(personal computer) 嵌入式(embedded,数量其实是最大的)
微型计算机 的基本结构
硬件:
微型计算机:
微处理器(microcontroller):算术逻辑单元(ALU) 控制单元(CU) 寄存器阵列(RA)
内存储器:ROM(PROM EPROM EEPROM),RAM(SRAM DRAM)
输入输出接口(并行IO 串行IO)
总线(bus):(地址总线ABUS 数据总线DBUS 控制总线CBUS)
外界设备:
外部设备:键盘 鼠标 打印机等;外存储器 硬盘
过程 控制IO通道
冯诺依曼结构(普林斯顿结构)
输入设备 输出设备 存储器 运算器 控制器
程序需准备好,所有的用二进制,程序和数据存放在相同的存储器中的不同地址.
运算器是核心 控制器从存储器取指令,控制所有的其他部件.控制器和运算器合起来(再加上指令译码器等)就是微处理器.寄存器(register)不是存储器
处理器是核心.
ALU加工处理数据
CU组织内部部件
包括程序计数器 指令寄存器
RA包括通用寄存器和专用寄存器.
总线是实在的线 BUS("公共汽车") 就是要去SHARE的 64位机就有64根线 控制器来协调
地址总线用于寻址,通常是单向的,主设备发出.
控制总线的数据总线是双向的.
指令集:
复杂指令集(CISC,complex instuction set computer)
长度可变 硬件复杂
优点:指令丰富,一个指令可以做复杂的运算 缺点:随发展执行效率低,硬件利用低
简单指令集(RISC,reduced instruction set computer)
长度固定 编译器复杂
优点:指令集简单 有限 规范 寄存器用的多 单周期指令 缺点: 依赖编译器优化
计算机做的事情:
取指令,PC值加,如果不停机就继续译码执行
执行1个指令的步骤:取指 译码 执行
指令的流水线技术 不同指令的取指 译码 执行可以并行执行
ARM7TDMI有3级流水线