嵌入式系统原理 第2章嵌入式系统开发技术
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2018/11/10 华中科技大学计算机学院 2
图2-1 嵌入式系统的组成结构
玻璃配料: 参考资料\GLASS BATCHING.doc
2018/11/10 华中科技大学计算机学院 3
2.1.1 硬件层
硬件层主要由嵌入式微处理器,存储器SDRAM、ROM、 Flash等,电源电路、时钟电路、复位电路、存储器控制电路 组成嵌入式基本系统. 根据需要选定通用设备接口和I/O接口(A/D、D/A、开关、 键盘按钮、传感器、LED/LCD等)等组成.形成完整的嵌入 式系统. 专用集成电路芯片(ASIC, Application Specific Integrated Circuit),如打印机控制器,硬盘控制器等. 可编程阵列芯片(FPGA和CPLD) FPGA(Field Programmable Gate Array),即现场可编程 门阵列
第2章 嵌入式系统开发技术
嵌入式系统的设计开发与一般计算机系统硬软件设 计方法有很大不同.知识面同时覆盖硬件,软件,应用 对象的特性(如机械方面,电机传动方面等).本章讨论 下面问题: 1. 嵌入式系统的结构分析 2. 嵌入式系统的设计方法 3. 嵌入式系统开发技术 4. 嵌入式系统的调试技术 5. 嵌入式系统的开发技术的发展趋势及其挑战
2018/11/10 华中科技大学计算机学院 4
2.1.1 硬件层-可编程芯片(FPGA)
FPGA (Field-Programmable Gate Array),即现场可编 程门阵列 . FPGA以硬件描述语言(Verilog 或 VHDL)所完成的电路 设计,可以经过简单的综合与布局,快速的烧录至 FPGA 上 进行测试,是现代 IC 设计验证的技术主流。 FPGA中的可编辑元件可以被用来实现一些基本的逻辑门电 路(比如AND、OR、XOR、NOT)或者更复杂一些的组合 功能比如解码器或数学方程式。 在大多数的FPGA里面,这些可编辑的元件里也包含记忆元 件例如触发器(flip-flop)或者其他更加完整的记忆块。 进一步阅读资料:参考资料\CPLD、FPGA、及IP核参考文献 \FPGA介绍.doc
2018/11/10 华中科技大学计算机学院 7
2.1.2 中间层-嵌入式系统硬件初始化
系统初始化可以分为3个主要环节,依次为:片级初始化、板 级初始化和系统级初始化。 片级初始化: 完成嵌入式微处理器的初始化,包括设置嵌入式微处 理器的核心寄存器和控制寄存器、嵌入式微处理器核心工作模式和 嵌入式微处理器的局部总线模式等。片级初始化把嵌入式微处理器 从上电时的默认状态逐步设置成系统所要求的工作状态。这是一个 纯硬件的初始化过程。(F28XXDSP,内核先上电,外围后上电) 板级初始化: 完成嵌入式微处理器以外的其他硬件设备的初始化。 另外,还需设置某些软件的数据结构和参数,为随后的系统级初始 化和应用程序的运行建立硬件和软件环境。这是一个同时包含软硬 件两部分在内的初始化过程。 系统初始化: 该初始化过程以软件初始化为主,主要进行操作系统 的初始化。BSP将对嵌入式微处理器的控制权转交给嵌入式操作系 统,由操作系统完成余下的初始化操作,包含加载和初始化与硬件 无关的设备驱动程序,建立系统内存区,加载并初始化其他系统软 件模块,如网络系统、文件系统等。最后,操作系统创建应用程序 环境,并将控制权交给应用程序的入口。
2018/11/10 华中科技大学计算机学院 5
2.1.1 硬件层-可编程芯片(CPLD)
CPLD(Complex Programmable Logic Device)复杂可编 程逻辑器件,属于规模大,结构复杂的大规模集成电路范围。 是一种用户根据各自需要而自行构造逻辑功能的数字集成电 路。 CPLD的基本设计方法是借助集成开发软件平台,用原理图、 硬件描述语言等方法,生成相应的目标文件,通过下载电缆 (“在系统”编程)将代码传送到目标芯片中,实现设计的 数字系统. CPLD主要是由可编程逻辑宏单元(MC,Macro Cell)围绕 中心的可编程互连矩阵单元组成。 其中MC结构较复杂,并具有复杂的I/O单元互连结构,可 由用户根据需要生成特定的电路结构,完成一定的功能。 由于CPLD内部采用固定长度的金属线进行各逻辑块的互连, 所以设计的逻辑电路具有时间可预测性,避免了分段式互连 结构时序不完全预测的缺点。 进一步阅读: 参考资料\CPLD、FPGA、及IP核参考文献 \CPLD介绍.doc
2018/11/10 华中科技大学计算机学院 1
2.1 嵌入式系统的结构分析
ห้องสมุดไป่ตู้
一个嵌入式系统一般都由嵌入式计算机系统和执行 装置(被控对象)组成.见P16 图2-1 而嵌入式计算机系统一般包括:硬件层,中间层,(系统) 软件层, 应用软件层(功能层) 执行装置也称为被控对象,它接受系统发出的控制命 令,执行规定的操作或任务.如手机中的微型电机,机 床等设备中的伺服电机, 冶炼中的热电耦,石油化工 企业用的流量计,铁路信号连锁控制器等. 本章分别介绍嵌入式计算机系统中的1. 硬件层;2. 中间层;3. 系统软件层;以及4. 应用软件层
2018/11/10 华中科技大学计算机学院 6
2.1.2 中间层
硬件层与软件层之间为中间层,也称为硬件抽象层(Hardware Abstract Layer,HAL)或板级支持包(Board Support Package, BSP)。 中间层将系统上层软件与底层硬件分离开来,使系统的底层驱动程序与硬 件无关,上层软件开发人员无需关心底层硬件的具体情况,根据BSP 层 提供的接口即可进行开发。该层一般包含相关底层硬件的初始化、数据的 输入/输出操作和硬件设备的配置功能。BSP具有以下两个特点。 硬件相关性:因为嵌入式实时系统的硬件环境具有应用相关性,而作为上 层软 件与硬件平台之间的接口,BSP需要为操作系统提供操作和控制具 体硬件的方法。 操作系统相关性:不同的操作系统具有各自的软件层次结构,因此,不同 的操作系统具有特定的硬件接口形式。 BSP是一个介于操作系统和底层硬件之间的软件层次,包括了系统中大部 分与硬件联系紧密的软件模块。 设计一个完整的BSP需要完成两部分工作:嵌入式系统的硬件初始化以及 BSP功能,设计硬件相关的设备驱动。
图2-1 嵌入式系统的组成结构
玻璃配料: 参考资料\GLASS BATCHING.doc
2018/11/10 华中科技大学计算机学院 3
2.1.1 硬件层
硬件层主要由嵌入式微处理器,存储器SDRAM、ROM、 Flash等,电源电路、时钟电路、复位电路、存储器控制电路 组成嵌入式基本系统. 根据需要选定通用设备接口和I/O接口(A/D、D/A、开关、 键盘按钮、传感器、LED/LCD等)等组成.形成完整的嵌入 式系统. 专用集成电路芯片(ASIC, Application Specific Integrated Circuit),如打印机控制器,硬盘控制器等. 可编程阵列芯片(FPGA和CPLD) FPGA(Field Programmable Gate Array),即现场可编程 门阵列
第2章 嵌入式系统开发技术
嵌入式系统的设计开发与一般计算机系统硬软件设 计方法有很大不同.知识面同时覆盖硬件,软件,应用 对象的特性(如机械方面,电机传动方面等).本章讨论 下面问题: 1. 嵌入式系统的结构分析 2. 嵌入式系统的设计方法 3. 嵌入式系统开发技术 4. 嵌入式系统的调试技术 5. 嵌入式系统的开发技术的发展趋势及其挑战
2018/11/10 华中科技大学计算机学院 4
2.1.1 硬件层-可编程芯片(FPGA)
FPGA (Field-Programmable Gate Array),即现场可编 程门阵列 . FPGA以硬件描述语言(Verilog 或 VHDL)所完成的电路 设计,可以经过简单的综合与布局,快速的烧录至 FPGA 上 进行测试,是现代 IC 设计验证的技术主流。 FPGA中的可编辑元件可以被用来实现一些基本的逻辑门电 路(比如AND、OR、XOR、NOT)或者更复杂一些的组合 功能比如解码器或数学方程式。 在大多数的FPGA里面,这些可编辑的元件里也包含记忆元 件例如触发器(flip-flop)或者其他更加完整的记忆块。 进一步阅读资料:参考资料\CPLD、FPGA、及IP核参考文献 \FPGA介绍.doc
2018/11/10 华中科技大学计算机学院 7
2.1.2 中间层-嵌入式系统硬件初始化
系统初始化可以分为3个主要环节,依次为:片级初始化、板 级初始化和系统级初始化。 片级初始化: 完成嵌入式微处理器的初始化,包括设置嵌入式微处 理器的核心寄存器和控制寄存器、嵌入式微处理器核心工作模式和 嵌入式微处理器的局部总线模式等。片级初始化把嵌入式微处理器 从上电时的默认状态逐步设置成系统所要求的工作状态。这是一个 纯硬件的初始化过程。(F28XXDSP,内核先上电,外围后上电) 板级初始化: 完成嵌入式微处理器以外的其他硬件设备的初始化。 另外,还需设置某些软件的数据结构和参数,为随后的系统级初始 化和应用程序的运行建立硬件和软件环境。这是一个同时包含软硬 件两部分在内的初始化过程。 系统初始化: 该初始化过程以软件初始化为主,主要进行操作系统 的初始化。BSP将对嵌入式微处理器的控制权转交给嵌入式操作系 统,由操作系统完成余下的初始化操作,包含加载和初始化与硬件 无关的设备驱动程序,建立系统内存区,加载并初始化其他系统软 件模块,如网络系统、文件系统等。最后,操作系统创建应用程序 环境,并将控制权交给应用程序的入口。
2018/11/10 华中科技大学计算机学院 5
2.1.1 硬件层-可编程芯片(CPLD)
CPLD(Complex Programmable Logic Device)复杂可编 程逻辑器件,属于规模大,结构复杂的大规模集成电路范围。 是一种用户根据各自需要而自行构造逻辑功能的数字集成电 路。 CPLD的基本设计方法是借助集成开发软件平台,用原理图、 硬件描述语言等方法,生成相应的目标文件,通过下载电缆 (“在系统”编程)将代码传送到目标芯片中,实现设计的 数字系统. CPLD主要是由可编程逻辑宏单元(MC,Macro Cell)围绕 中心的可编程互连矩阵单元组成。 其中MC结构较复杂,并具有复杂的I/O单元互连结构,可 由用户根据需要生成特定的电路结构,完成一定的功能。 由于CPLD内部采用固定长度的金属线进行各逻辑块的互连, 所以设计的逻辑电路具有时间可预测性,避免了分段式互连 结构时序不完全预测的缺点。 进一步阅读: 参考资料\CPLD、FPGA、及IP核参考文献 \CPLD介绍.doc
2018/11/10 华中科技大学计算机学院 1
2.1 嵌入式系统的结构分析
ห้องสมุดไป่ตู้
一个嵌入式系统一般都由嵌入式计算机系统和执行 装置(被控对象)组成.见P16 图2-1 而嵌入式计算机系统一般包括:硬件层,中间层,(系统) 软件层, 应用软件层(功能层) 执行装置也称为被控对象,它接受系统发出的控制命 令,执行规定的操作或任务.如手机中的微型电机,机 床等设备中的伺服电机, 冶炼中的热电耦,石油化工 企业用的流量计,铁路信号连锁控制器等. 本章分别介绍嵌入式计算机系统中的1. 硬件层;2. 中间层;3. 系统软件层;以及4. 应用软件层
2018/11/10 华中科技大学计算机学院 6
2.1.2 中间层
硬件层与软件层之间为中间层,也称为硬件抽象层(Hardware Abstract Layer,HAL)或板级支持包(Board Support Package, BSP)。 中间层将系统上层软件与底层硬件分离开来,使系统的底层驱动程序与硬 件无关,上层软件开发人员无需关心底层硬件的具体情况,根据BSP 层 提供的接口即可进行开发。该层一般包含相关底层硬件的初始化、数据的 输入/输出操作和硬件设备的配置功能。BSP具有以下两个特点。 硬件相关性:因为嵌入式实时系统的硬件环境具有应用相关性,而作为上 层软 件与硬件平台之间的接口,BSP需要为操作系统提供操作和控制具 体硬件的方法。 操作系统相关性:不同的操作系统具有各自的软件层次结构,因此,不同 的操作系统具有特定的硬件接口形式。 BSP是一个介于操作系统和底层硬件之间的软件层次,包括了系统中大部 分与硬件联系紧密的软件模块。 设计一个完整的BSP需要完成两部分工作:嵌入式系统的硬件初始化以及 BSP功能,设计硬件相关的设备驱动。