0. 前言🔥🔥🔥
本文仅绍软考中级——嵌入式系统设计师的考试大纲,具体考试知识点将在后续文章中分章节介绍。希望大家都能顺利通过考试(拿到证书😄)。
1. 考试大纲框架
软考中级嵌入式系统设计师考试主要考核考生在嵌入式系统设计领域的综合能力,包括但不限于以下几个方面的知识点:计算机组成原理与接口技术、嵌入式操作系统原理及应用、数据结构与算法分析、计算机网络基础、软件工程及项目管理等理论知识。
同时,注重考查嵌入式系统的硬件设计和软件开发技能,如电路原理图设计、PCB设计、嵌入式编程(C/C++)、系统集成与测试等实践操作能力。此外,还会考察考生对新兴技术趋势的理解及其在嵌入式领域应用的能力。通过这些内容的考核,确保考生不仅掌握扎实的理论基础,还具备解决实际问题的能力。
2. 考试大纲
考试科目1:嵌入式系统基础知识(单选题)
-
计算机系统基础知识
-
1.1 数制及其转换
- 1.1.1 二进制、八进制、十进制和十六进制等常用数制及其相互转换
-
1.2 数据的表示
- 1.2.1 数值的原码、反码、补码、移码表示,定点数和浮点数,精度和溢出
- 1.2.2 字符、汉字、声音、图像的编码方式
- 1.2.3 校验方法和校验码(奇偶校验码、海明校验码、循环冗余校验码等)
-
1.3 算术运算和逻辑运算
- 1.3.1 二进制数运算方法
- 1.3.2 逻辑代数的基本运算和逻辑表达式的化简
-
1.4 计算机组成及主要部件的基本工作原理
- 1.4.1 CPU 的组成和基本工作原理
- 1.4.2 常用 I/O 设备、通信设备的性能以及基本工作原理
- 1.4.3 I/O接口的功能、类型和特点
-
1.5 计算机体系结构
- 1.5.1 CISC、RISC、流水线技术和超标量等
- 1.5.2 多处理机、并行处理和分布处理等
- 1.5.3 冯·诺依曼结构与哈佛结构
-
1.6 可靠性与系统性能评测基础知识
-
1.6.1 诊断与容错
- 故障检测
- 容错技术与容错控制
-
1.6.2 系统可靠性的分析与评价
- 系统可靠性的定义
- 串联系统的特点及可靠性度量
- 并联系统的特点及可靠性度量
- N 模冗余系统等可靠性模型的特点
-
1.6.3 计算机系统性能的评测方法
- 平均无故障时间的定义及计算
- 平均修复时间的定义及计算
- 可用性的定义及计算
-
-
-
嵌入式系统硬件基础知识
-
2.1 数字电路基础
- 2.1.1信号特性与信号转换
- 2.1.2组合逻辑电路和时序逻辑电路
- 2.1.3可编程逻辑器件
-
2.2 嵌入式微处理器基础
-
2.2.1 嵌入式微处理器的结构和类型
- 常用 8 位、16 位、32 位、64 位处理器的体系结构特点
- 常用 DSP 处理器的体系结构特点
- 同构多核处理器的体系结构特点
- 异构多核处理器的体系结构特点
-
2.2.2 嵌入式微处理器的异常与中断
- 异常
- 陷阱
- 故障
- 终止
- 中断
- 硬中断、软中断
- 可屏蔽中断、不可屏蔽中断
- 断优先级
- 中断嵌套
- 异常
-
-
2.3 嵌入式系统的存储体系
- 2.3.1 存储系统的层次结构
- 2.3.2 内存管理单元(MMU)
- 2.3.3 RAM 和 ROM 的种类
- 2.3.4 高速缓存(Cache)
- 2.3.5 其他存储设备
-
2.4 嵌入式系统 I/O 接口的基本原理与结构
- 2.4.1 GPIO、PWM 接口的基本原理与结构
- 2.4.2 A/D、D/A 接口的基本原理与结构
- 2.4.3 键盘、显示、触摸屏、声控屏等接口的基本原理与结构
- 2.4.4嵌入式系统的音频和视频接口
- 2.4.5 输入输出控制
-
2.5 定时器和计数器
- 2.5.1 定时器和计数器的工作原理
- 2.5.2 定时器的设计
- 2.5.3 计数器的设计
-
2.6 嵌入式系统总线及通信接口
- PCI、PCI-E、EISA、VME、CPCI、PCMCIA 等的基本原理和特点
- USB、串口、红外、并口、SPI、IIC、1394、CAN 等的基本原理和特点
- 以太网、WLAN、蓝牙、Zigbee、AFDX、FC 等的基本原理和特点
- Select IO、Rapid IO 等高速串行通信接口的基本原理和特点
- 3G、4G、5G 等通信接口的基本原理和特点
-
2.7 嵌入式系统电源分类及管理
-
2.8 电子电路设计
-
2.8.1 电子电路设计基础知识
- 电子电路设计原理
- 电子电路设计方法及步骤
- 电子电路可靠性设计
-
2.8.2 PCB 设计基础知识
- PCB 设计原理
- PCB 设计方法及步骤
- 多层 PCB 设计的注意事项及布线原则
- PCB 的可靠性设计(电磁兼容)
-
2.8.3 电子电路测试基础知识
- 电子电路测试方法
- 硬件可靠性测试
-
-
-
嵌入式系统软件基础知识
-
3.1 嵌入式系统软件基础知识
- 3.1.1 嵌入式软件分类
- 系统软件
- 支撑软件
- 中间件
- 可配置组件
- 应用软件
- 3.1.2 嵌入式系统初始化
- 系统引导(Bootloader)
- 板级支持包(BSP)
- 3.1.3 无操作系统支持的嵌入式软件体系结构
- 3.1.4 有操作系统支持的嵌入式软件体系结构
- 3.1.5 嵌入式支撑软件(嵌入式文件系统、嵌入式数据库、分布式对象系统、GUI 等)
- 3.1.1 嵌入式软件分类
-
3.2 嵌入式操作系统基础知识
-
3.2.1 嵌入式操作系统基本概念
-
3.2.2 处理器管理
- 多道程序
- 分区、进程、线程、任务的概念
- 任务管理
- 任务调度
- 优先级反转(优先级反转、优先级继承、优先级天花板等)
- 任务间通信(共享内存、消息、邮箱、管道、信号量)
- 同步与互斥(竞争条件、临界区、互斥、信号量、死锁等)
- 高可靠性操作系统的分区调度和分区通信等
-
3.2.3 存储管理
- 存储管理方式
- 分区存储管理(固定分区、可变分区、内存保护等)
- 地址重定位(逻辑地址、物理地址、地址映射等)
- 页式存储管理
- 虚拟存储技术(程序局部性原理、虚拟页式存储管理、页面置换算法等)
-
3.2.4 设备管理
- 物理设备、逻辑设备、虚拟设备等
- 设备分类(字符设备、块设备、网络设备)
- 设备管理方式(设备文件、设备控制、设备无关性、中断处理、缓冲技术、假脱机技术等)
- 设备驱动程序
-
3.2.5 文件系统
- 文件和目录
- 文件的结构和组织
- 存取方法与存取控制
- 常见嵌入式文件系统(FAT、RAMFS、ROMFS、JFFS、YAFFS、EXT 等)
- 网络文件系统
-
3.2.6 操作系统移植
- 硬件配置、板级支持包移植、驱动移植、系统配置、交叉编译、部署与测试等
-
-
3.3 嵌入式系统程序设计
-
3.3.1 嵌入式软件开发基础知识
- 嵌入式软件开发模式、开发环境、开发工具等的选择
-
3.3.2 嵌入式程序设计语言
- 编译器和解释器的基础知识
- 汇编语言(指令系统、寻址方式、伪指令等)
- 混合编程
- 过程式语言(过程/函数、参数传递、变量、递归、动态内存分配、数据类型等)
- 面向对象语言(对象/类、数据抽象、继承、多态、重载等)
- 嵌入式 C/C++程序设计要求
-
3.3.3 嵌入式软件开发环境
- 宿主机与目标机
- 编辑器、交叉工具链(编译器、链接器、调试器)、模拟器
- 集成开发及仿真环境
- 开发辅助工具
-
3.3.4 嵌入式软件开发过程
- 嵌入式软件需求分析
- 嵌入式软件设计
- 编码(编程规范、代码审查)
- 软件集成
- 测试(测试环境、测试用例、测试方法、测试工具)
- 下载和运行
- 第三方测试与验证
-
3.2.5 嵌入式应用软件移植
- 无操作系统的软件移植
- 有操作系统的软件移植
-
-
-
嵌入式系统的项目开发与维护知识
-
4.1 系统开发过程及其项目管理
-
4.1.1 系统开发生命周期各阶段的目标和任务
- 项目描述、可行性分析、需求分析、总体设计、详细设计、编码和单元测试、集成测试、运行维护
-
4.1.2 系统开发的项目管理基础知识及其常用管理工具
- 开发过程管理知识及工具
- 成本管理知识及工具
- 风险管理知识及工具
- 质量管理知识及工具
-
4.1.3 系统开发方法(略)
-
4.1.4 系统开发工具与环境(略)
-
-
4.2 系统分析知识
- 4.2.1 需求分析
- 4.2.2 系统分析的目的和任务
- 4.2.3 系统分析方法
-
4.3 系统设计知识
- 4.3.1 系统设计方法
- 4.3.2 系统架构及概要设计
- 4.3.3 系统详细设计(程序结构设计、模块接口设计、算法设计、数据结构设计、用户界面设计等)
- 4.3.4 软硬件协同设计方法
- 软硬件的功能划分
- 单任务流图的软硬件协同设计方法
- 多分支系统任务流图的软硬件协同设计方法
- 并行系统任务流图的软硬件协同设计方法
-
4.4 系统实施知识
- 4.4.1 软硬件平台搭建
- 4.4.2 系统调试与测试
-
4.5 系统运行和维护知识
- 4.5.1 系统运行管理
- 4.5.2 系统维护信息管理
- 系统维护的目的与任务
- 系统维护的内容:硬件设备维护、程序维护、数据维护等
- 系统维护的类型:完善性维护、适应性维护、正确性维护、预防性维护等
- 4.5.3 系统评价
-
-
嵌入式系统的安全性知识
-
5.1 安全性基本概念
- 网络安全、信息安全、系统安全等基础知识
- 防治计算机病毒、防范计算机犯罪、防入侵、防灾等
- 保障完整性与可用性的措施
- 风险管理与控制(风险分析、风险类型、风险控制手段)
-
5.2 嵌入式系统的安全性设计
- 硬件安全性设计
- 软件安全性设计
-
-
标准化知识
- 6.1 标准化的概念和标准化机构
- 6.2 国际标准、国家标准、行业标准、企业标准基本知识
- 6.3 代码标准、文件格式标准、安全标准、软件开发规范和文档标准知识
- 6.4 嵌入式系统相关标准
-
信息化和知识产权基础知识
- 7.1 信息化基础知识
- 全球信息化趋势、国家信息化战略、企业信息化战略和策略
- 信息化意识,有关的法律、法规
- 远程教育、电子商务、电子政务等基础知识
- 企业信息资源管理基础知识
- 7.2 知识产权基础知识
- 专利法、商标法、商业秘密权对软件的保护
- 与软件相关的法律、法规方面的基础知识
- 著作权法、软件保护条例及软件著作登记的基础知识
- 软件著作权主体与客体、权利内容、权利归属、侵权责任,分析侵权行为
- 7.1 信息化基础知识
-
嵌入式系统发展趋势
- 8.1 嵌入式系统硬件发展趋势(可穿戴设备、智能终端、机器人等)
- 8.2 嵌入式系统软件发展趋势
- 8.3 物联网系统
- 8.4 大数据、云计算、边缘计算等
-
计算机专业英语
- 阅读理解嵌入式系统相关领域的英文资料
考试科目 2:嵌入式系统设计(简答题)
-
嵌入式系统开发过程
-
1.1 系统开发过程管理
- 1.1.1 生命周期、成本及工作量估计
- 1.1.2 风险管理
- 1.1.3 开发模型
- 1.1.4 质量管理
- 1.1.5 配置管理
- 1.1.6 软件成熟度模型
-
1.2 需求分析
- 1.2.1 用户需求
- 1.2.2 系统定义
- 1.2.3 需求规格说明书
- 1.2.4 需求评审
-
1.3 系统设计
- 1.3.1 系统方案设计
- 1.3.2 系统功能划分
- 1.3.3 软硬件协同设计
- 1.3.4 硬件设计
- 1.3.5 软件设计
-
1.4 系统开发环境
- 1.4.2 开发平台
- 1.4.3 开发工具
-
1.5 系统测试
- 1.5.1 测试环境
- 1.5.2 测试计划(内容、方法、标准、过程、检验)
- 1.5.3 硬件测试
- 1.5.4 软件测试
- 1.5.5 软硬件联合测试
-
1.6 系统评价
-
1.7 系统维护
-
1.8开发文档
-
-
嵌入式系统硬件设计
-
2.1 嵌入式系统硬件基本结构
-
2.1.1 嵌入式微处理器结构
-
2.1.2 数字信号处理器(DSP)结构
-
2.1.3 异常及中断处理
-
2.1.4 DMA 技术
-
2.1.5 多处理器系统
- 多处理器系统特点
- 多处理器系统构建技术(多处理器、单处理器多核)
-
2.1.6 总线
- 总线形态和用户接口
-
2.1.7 数字电路
- 组合逻辑电路与时序逻辑电路设计
- 可编程逻辑器件(FPGA/CPLD)的系统设计
-
-
2.2 硬件描述语言(VHDL/Verilog HDL 等)
-
2.3 大规模集成电路系统设计
-
2.4输入/输出接口
- 2.4.1 接口的特性(机械、电气、功能、规程)
- 2.4.2 接口设计
- 2.4.3 接口应用
- GPIO 接口
- USB 接口
- 串行接口
- 并行接口
- A/D、D/A 转换接口
- 高速串行接口(Rapid IO,Select IO)
- 音、视频接口
- 显示接口
- 射频接口
- 通信标准和协议
-
2.5 电源设计
-
2.6 低功耗设计
-
2.7 可靠性与安全性设计
- 2.7.1 冗余设计
- 2.7.2 可维护性设计
- 2.7.3 系统容错与恢复设计
-
2.8 系统仿真
-
-
嵌入式系统软件设计
-
3.1 嵌入式程序设计语言
- 3.1.1 汇编语言程序设计
- 3.1.2 嵌入式 C 语言程序设计
- 3.1.3 面向对象程序设计
- 使用 C++、Java 等语言进行嵌入式程序设计
-
3.2 系统软件设计
- 3.2.1 系统初始化设计
- 3.2.2 硬件抽象层(HAL)、板级支持包(BSP)设计
- 3.2.3 设备驱动程序设计
- 3.2.4 嵌入式系统软件的移植
-
3.3 嵌入式操作系统
- 3.3.1 处理器管理
- 任务(进程、线程等)定义与调度
- 任务的同步与通信
- 3.3.2 存储管理
- 3.3.3 异常处理
- 3.3.4 常见嵌入式操作系统
- Linux、Windows CE、VxWorks、Android、μC/OS II、麒麟、天脉、锐华等
- 3.3.1 处理器管理
-
3.4 嵌入式支撑系统
- 3.4.1 嵌入式系统中间件
- 3.4.2 嵌入式文件系统
- 3.4.3 嵌入式系统数据库
- 3.4.4 嵌入式系统图形用户接口(GUI)
- 3.4.5 嵌入式网络程序设计
-
-
嵌入式实时系统与分布式系统设计
- 4.1 实时系统的分析与设计
- 4.2 分布式系统设计
- 4.2.1 分布式系统设计原理
- 4.2.2 分布式系统设计方法
- 4.2.3 分布式系统的通信技术
- 4.2.4 分布式系统应用
-
嵌入式系统应用
- 嵌入式系统在通信、交通、工业控制、航空、航天、航海、智能家居等领域的应用