### 青岛科技大学嵌入式系统原理复习资料
#### 一、重点知识点解析
**1. 软硬件裁剪**
- **软件裁剪**:根据应用需求,选择必要的功能模块,移除不必要的组件和服务,使操作系统更加精简高效。
- **硬件裁剪**:依据应用环境和功能需求,选择合适的接口、外设、处理器等硬件资源,以减少成本、降低功耗。
**2. 嵌入式系统的可靠性保障**
- **硬件方面**:采用看门狗定时器(Watchdog Timer)确保系统稳定运行,即使在发生异常情况下也能自动重启。
- **软件方面**:利用软件备份或双机热备等机制增强系统的容错能力。
**3. 为何需要嵌入式操作系统**
- **提高程序可移植性**:使应用程序与底层硬件分离,简化移植过程。
- **简化资源管理**:通过统一管理硬件资源,如处理器、内存、外设等,使得开发人员能够专注于功能实现。
- **加速开发流程**:提供丰富的API和工具链支持,便于快速开发和调试应用。
- **发挥处理器性能**:合理调度任务,优化资源分配,提升系统整体性能。
**4. 片上系统(SoC)**
- **定义**:将一个完整的计算机系统集成在一块芯片上,通常包括CPU、存储器、外设接口等核心组件。
- **优势**:高集成度带来更小的体积、更低的功耗以及更好的性能表现。
**5. ARM9以上无内置存储器的原因**
- **技术限制**:随着处理器功能日益强大,对存储容量的需求也随之增加,但芯片面积有限,难以在单个芯片上集成大量内存。
- **外部扩展**:通过外接存储器来满足大容量数据存储的需求,同时保证系统的灵活性和扩展性。
**6. 冯·诺依曼体系结构与哈佛结构的区别**
- **冯·诺依曼体系结构**:
- **特点**:程序和数据共用同一存储空间,共享同一套地址空间。
- **优势**:结构简单,易于实现。
- **局限性**:存储带宽受限,不利于并行处理。
- **哈佛结构**:
- **特点**:程序存储器和数据存储器完全独立,分别有自己的地址空间和数据通路。
- **优势**:支持同时读取指令和数据,有利于提高处理速度和数据吞吐率。
- **应用场景**:广泛应用于嵌入式系统和数字信号处理器中。
**7. AHB与APB总线**
- **AHB**(Advanced High-performance Bus):
- **用途**:高速设备间的通信,如CPU、DMA控制器等。
- **特性**:支持多主模式,具备较高带宽和较低延迟。
- **APB**(Advanced Peripheral Bus):
- **用途**:低速外设间的通信,如UART、I2C等。
- **特性**:单一主控制器,通常由APB桥作为接口连接至AHB总线。
**8. Thumb指令集的重要性**
- **优点**:提供16位指令编码,相比传统32位指令,占用空间更小,有助于减少代码大小,节省存储空间。
- **适用场景**:适用于对存储空间有严格要求的应用场合,如嵌入式系统。
**9. ARM处理器的七种工作模式及其应用**
- **管理模式**(用于操作系统初始化和异常处理)
- **用户模式**(普通程序执行模式)
- **系统模式**(与用户模式相似,用于特权操作)
- **未定义模式**(处理未知指令)
- **预取中止模式**(处理数据访问错误)
- **数据中止模式**(处理数据访问错误)
- **IRQ模式**(处理外部中断)
每种模式都有特定的用途,比如管理系统资源、处理异常情况等。
**10. 寄存器结构**
- **R13**(Stack Pointer, SP):堆栈指针,用于跟踪栈顶位置。
- **R14**(Link Register, LR):链接寄存器,保存返回地址。
- **R15**(Program Counter, PC):程序计数器,指向当前指令的位置。
- **CPSR**/ **SPSR**:当前程序状态寄存器/备用程序状态寄存器,记录处理器的状态信息。
**11. 汇编语言的大体架构**
- **代码段**:存放指令序列。
- **数据段**:存放变量和常量。
- **初始化段**:存放已初始化的全局变量。
- **未初始化段**:存放未初始化的全局变量。
**12. SSH及交叉编译过程**
- **步骤**:
1. 在宿主机上使用交叉编译工具(如arm-linux-gcc)编译源代码。
2. 通过SSH登录目标机。
3. 使用SCP命令将编译好的文件传送到目标机。
4. 在目标机上设置文件权限。
5. 执行可执行文件。
**13. 四种堆栈结构**
- **空堆栈**:栈指针指向下一个待压入数据的位置。
- **满堆栈**:栈指针指向最后一个有效数据项。
- **增堆栈**:写入数据后栈指针值增大。
- **减堆栈**:写入数据后栈指针值减小。
**14. Linux修改文件权限**
- **命令**:`chmod <mode> <file>`,其中`<mode>`为权限模式,如`777`表示所有用户均可读写执行。
- **示例**:`chmod 777 index.html`,使`index.html`文件对所有用户都具有读、写和执行权限。
**15. 嵌入式Linux系统安装**
- **NAND Flash**:适合存放操作系统,因其具备大容量和较好的读写性能。
- **NOR Flash**:适合存放引导程序和小容量代码,因其具有较快的读取速度和随机访问能力。
**16. 设计方案**
- **硬件设计**:主要包括ARM核心板和底板的设计,确保足够的处理能力和外设接口。
- **软件设计**:选择合适的嵌入式操作系统,构建合理的软件体系架构(如轮询模式、前后台模式等)。
- **需求分析**:明确系统功能需求和技术指标,如远程监控、数据采集周期等。
**17. 需求分析**
- **功能需求**:确定系统必须完成的核心功能,如数据采集、远程控制等。
- **非功能需求**:考虑性能、功耗、尺寸、价格等因素。
- **具体实例**:对于远程监控系统,需要确定触摸屏尺寸、分辨率、操作界面布局、远程通信协议等细节。
嵌入式系统原理涉及软硬件设计、操作系统选型、通信协议等多个方面,需要综合考虑系统性能、成本和可靠性等因素,才能设计出满足实际需求的解决方案。