3.1) 了解模拟电路与数字电路的主要基本概念(如:输入/输出阻抗、增益、频率特性、滤波、时钟、逻辑电平的含义、同步与异步、复位、置数、使能等);
3.2) 掌握基本的门电路和触发器用法,熟悉状态机的概念和用法; 3.3) 了解振荡与复位电路设计方法、如DSP、FPGA、ARM核等芯片的常用振荡与复位电路;
3.4) 掌握利用HDL语言设计简单组合与时序电路的设计方法; 第4章 嵌入式C语言与汇编语言基础知识
4.1) 了解嵌入式C语言程序设计的基础知识(如:数据类型、运算符、表达式、程序设计方法、常用语句、数组、指针、文件等),并能够进行简单的编程;
4.2) 了解ARM汇编指令、汇编语言的编程、以及汇编语言与C语言混合编程的方法;
第5章 嵌入式系统开发环境构建
5.1) 了解嵌入式系统开发环境的构建方法、常用工具的使用;
5.2) 了解嵌入式系统硬件环境的搭建方法、并能根据实际项目要求自己构建开发环境;
5.3) 熟悉嵌入式开发软件工具的基本使用(如IAR EWARM等); 5.4) 了解和熟悉开发工具的使用与硬件调试方法、开发工具的选用、嵌入式系统开发方法;
5.5) 熟悉嵌入式系统硬件的基本调试方法、嵌入式系统主要硬件模块的软件调试方法,如:SDRAM、NAND/NOR FLASH、I/O、中断、看门狗软件复位、A/D转换、LCD控制器、键盘设计、UART接口调试、IIC设计; 第6章 Linux系统的使用与Linux 开发环境的建立
6.1) 了解和熟悉嵌入式操作系统概念、Linux基本命令、Linux文件与目录系统、Linux安装、基于文本模式的开发平台、GCC构建和基本知识、GCC编译器的使用、编写Makefile文件、GDB调试等。熟悉编辑器的使用(如vi、vim、emacs等);
11
6.2) 了解构建Samba服务器方法、熟悉配置和使用Samba服务器、配置和使用NFS服务器; 第7章 Linux Shell编程
7.1) 了解Shell程序设计、流程控制、Bash的调试及内部命令; 第8章 嵌入式Linux系统构架
8.1) 了解GNU跨平台开发链的建立、嵌入式Linux内核、嵌入式Linux根文件系统;
8.2) 了解根文件系统的构建、根文件系统的设置; 第9章 嵌入式Boot Loader结构框架
9.1)了解Boot Loader 的安装位置、启动Boot Loader、Boot Loader 与主机间的通信、U-Boot的运行过程、U-Boot的移植、Linux的引导; 第10章 ARM-Linux 微处理器
10.1) 了解ARM-Linux微处理器的寄存器结构、指令结构、内存管理单元MMU、ARM-Linux的虚拟存储实现、ARM中异常中断的种类、ARM处理器对异常中断的响应及返回过程; 第11章 ARM-Linux进程调度
11.1) 了解Linux进程的调度时间、Linux进程的创建、运行与消亡; 第12章 ARM-Linux系统启动及初始化
12.1) 了解内核数据结构的初始化、外设的初始化、Shell的启动、Linux模块的载入与卸载、ARM-Linux内核的裁减; 第13章 嵌入式多线程编程
13.1) 了解Linux线程的概念、多线程编程同步、对接口应用的编程; 第14章 嵌入式Web服务器
14.1) 了解嵌入式Web服务器系统结构、嵌入式应用接口技术、Web服务器构建与移植;
第15章 Qt/Embedded程序设计
15.1) 了解Qt的基本介绍、Qt的环境配置、Qt/Embedded事件驱动、嵌入式GUI的移植、Qt的图形界面的应用、Qt的基础实验;
12
第16章 技术报告的写作方法与科技英语阅读
16.1) 熟悉技术报告的写作方法、嵌入式系统中软件设计文档的写作要领,能读懂嵌入式英文文档;
(三)、SOPC理论考试内容
1、考核目标
要求掌握从事嵌入式系统开发所必须的基本知识:
·了解嵌入式系统发展历史,嵌入式系统的概念; ·掌握FPGA的结构及特点;
·掌握VHDL/Verilog HDL设计语言; ·掌握QuartusII的设计流程; ·掌握NiosII软核的体系结构; ·掌握NiosII的开发环境; ·掌握SOPC系统设计思想;
·了解基于NiosII的μC/OS-Ⅱ操作系统设计; ·了解基于NiosII的μCLinux设计;
通过本考试的合格人员能根据项目设计的实际要求,合理划分SOPC的软硬件设计,并按照系统总体设计规格说明书在以FPGA作为硬件核心环境下,进行可综合的硬件设计,在NiosII软核为核心的环境下,编写基于NiosII 软核的C语言应用程序,从而实现软硬件协同设计,开发出符合系统设计要求的合理可行的FPGA/SOPC系统;具有助理工程师的实际工作能力和业务水平。
2、考核大纲
第1章 嵌入式系统设计的基本概念、应用、发展趋势
1.1)了解嵌入式系统的概念、基本组成、特点及其应用; 1.2)了解嵌入式处理器类型以及主要的厂家;
1.3)了解嵌入式操作系统,嵌入式系统的开发流程等主要内容; 第2章 FPGA基本知识
13
2.1)掌握可编程逻辑设计技术; 2.2)了解FPGA/CPLD基本结构;
2.3)了解常用芯片Altera低成本FPGA—CycloneII的参数指标; 2.4)掌握FPGA/CPLD的设计流程; 2.5)掌握FPGA/CPLD的常用工具; 第3章 Verilog HDL/VHDL语言设计
3.1)熟练掌握并使用Verilog HDL/VHDL语法知识;
3.2)掌握组合电路设计,如:编码器、译码器、数据选择器、多位数值比较器、半加器与全加器、D触发器;
3.3)掌握时序电路设计,如:寄存器、加减法计数器、顺序脉冲发生器、序列信号发生器、分频器;
3.4)熟练使用Verilog HDL/VHDL语言编写接口实验,如:七段数码扫描显示、矩阵键盘接口、LCD控制器、A/D转换、D/A转换;
3.5)设计综合实验,如:交通灯的控制、数字钟、步进电机驱动控制、直流电机PWM控制、正弦信号发生器; 第4章 QuartusII开发流程
4.1)了解QuartusII软件的使用方法;
4.2)掌握QuartusII设计输入、综合、布局布线、仿真、编程与配置; 第5章 SOPC系统设计基础
5.1)掌握SOPC系统的设计思想; 5.2)掌握SOPC系统的设计流程;
5.3)熟练掌握使用SOPC Builder工具定制NiosII系统的硬件开发过程; 5.4)掌握NiosII的体系结构;
5.5)掌握NiosII IDE设计工具编写简单应用程序的软件开发过程; 5.6)掌握QuartusII、SOPC Builder和NiosII三种工具的配合使用,能够完成简单的基础实验; 第6章 NiosII标准系统的建立
6.1)掌握目标板的建立过程及目的;
14
6.2)掌握Flash存储器的编程,学习烧写Flash; 6.3)掌握建立NiosII标准系统的整个过程; 第7章 NiosII软件开发环境及编程基础
7.1) 熟练掌握Nios IDE界面操作;
7.2)了解程序开发体系,并能够熟练配置系统参数;
7.3)了解嵌入式 C语言程序设计的基础知识(如:数据类型、运算符、表达式、程序设计方法、常用语句、数组、指针、文件等),并能够编写简单的应用程序;
第8章μC/OS-Ⅱ和μCLinux概述
8.1)了解μC/OS-Ⅱ操作系统的基本概念; 8.2)掌握在NiosII IDE中如何使用μC/OS-Ⅱ; 8.3)了解μCLinux基本概念; 第9章 应用系统设计实践
9.1)掌握SOPC系统的设计过程并能够设计简单的应用系统,如用pio核和 timer核产生50KHz的方波。
(四)、软件理论(Windows CE)考试内容
1、 考核目标
要求掌握从事嵌入式系统开发所必须的基本知识:
·了解Windows CE操作系统的整体架构 ·熟悉使用各种开发工具
·熟悉Windows CE中如何进行系统编程 ·熟悉使用各种调试诊断工具
·掌握使用Platform Builder裁减操作系统 ·掌握使用构建系统的内部细节实现高级功能 ·熟悉配置操作系统初始化步骤
·掌握向ARM硬件平台移植Windows CE操作系统
15