嵌入式系统2(嵌入式系统简介)_第1页
嵌入式系统2(嵌入式系统简介)_第2页
嵌入式系统2(嵌入式系统简介)_第3页
嵌入式系统2(嵌入式系统简介)_第4页
嵌入式系统2(嵌入式系统简介)_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、西安电子科技大学计算机学院2嵌入式系统的硬件基础(处理器)嵌入式系统的硬件基础(处理器)嵌入式系统的软件基础嵌入式系统的软件基础嵌入式系统的设计方法嵌入式系统的设计方法西安电子科技大学计算机学院3计算机体系结构是机器语言程序员或编译计算机体系结构是机器语言程序员或编译程序编写者所看到的计算机的属性,即概程序编写者所看到的计算机的属性,即概念性结构与功能特性。念性结构与功能特性。 西安电子科技大学计算机学院4冯诺依曼理论:冯诺依曼理论:q数字计算机的数制采用二进制;q计算机应该按照程序顺序执行。 冯诺依曼体系结构:冯诺依曼体系结构:q人们把冯诺依曼的这个理论称为冯诺依曼体系结构;q从ENIAC到

2、当前最先进的计算机都采用的是冯诺依曼体系结构,所以冯诺依曼是当之无愧的数字计算机之父。冯诺依曼体系结构的要点:冯诺依曼体系结构的要点:q程序存储,程序执行。q输入、存储、运算、控制和输出西安电子科技大学计算机学院5冯冯诺依曼结构又称普林斯顿结构诺依曼结构又称普林斯顿结构q采用将程序指令存储器和数据存储器合并在一起的存储器结构;q程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置;q因此程序指令和数据的宽度相同。西安电子科技大学计算机学院6西安电子科技大学计算机学院7哈佛结构与冯哈佛结构与冯诺依曼结构的区别:诺依曼结构的区别:q使用两个独立的存储器模块,分别存储指令和数据,每个存储模块

3、都不允许指令和数据并存,以便实现并行处理;q使用独立的两条总线,分别作为CPU与每个存储器之间的专用通信路径,这两条总线之间毫无关联;q如51单片机 。q改进的哈佛结构采用一条独立的地址总线和数据总线访问两个独立的存储模块。西安电子科技大学计算机学院8西安电子科技大学计算机学院9控制器的主要任务就是根据不同的指令,控制器的主要任务就是根据不同的指令,不同的状态条件,在不同的时间,产生不不同的状态条件,在不同的时间,产生不同的控制信号,控制计算机的各部件协调同的控制信号,控制计算机的各部件协调的进行工作。的进行工作。q组合逻辑型 特点:快、复杂q存储逻辑型(基于微指令) 特点:慢、规整西安电子科

4、技大学计算机学院10流水线技术流水线技术q几个指令可以并行执行q提高了CPU的运行效率q内部信息流要求通畅流动西安电子科技大学计算机学院1111取指:从存储器装载指令;取指:从存储器装载指令;译码:对刚装载的指令进行识别;译码:对刚装载的指令进行识别;执行:处理指令并把结果写回相应的寄存器执行:处理指令并把结果写回相应的寄存器取指取指译码译码执行执行指令从存储器中取出对指令使用的寄存器进行译码从寄存器组中读出寄存器,执行移位和ALU操作,寄存器被写回到寄存器组中西安电子科技大学计算机学院12ADD r1 r2SUB r3 r2CMP r1 r3www.embedu.

5、org12在第一个周期,内核从存储器取出指令ADD;在第二个周期,内核取出指令SUB,同时对ADD译码;在第三个周期,ADD被执行,而SUB被译码,同时又取出CMP指令。西安电子科技大学计算机学院13CPU高速缓存控制器高速缓存主存储器数据数据地址数据地址微处理器的时钟频率比内存速度提高快得微处理器的时钟频率比内存速度提高快得多,高速缓存可以提高内存的平均性能多,高速缓存可以提高内存的平均性能西安电子科技大学计算机学院14高速缓存是一种小型、快速的存储器,它高速缓存是一种小型、快速的存储器,它保存部分主存内容的拷贝保存部分主存内容的拷贝统一统一Cacheq一般冯诺依曼结构采用独立独立Cache

6、q一般哈佛结构采用西安电子科技大学计算机学院15是指微处理器一次执行指令的数据宽度是指微处理器一次执行指令的数据宽度显然,在工作频率相同的情况下显然,在工作频率相同的情况下 ,位宽越,位宽越宽,速度越快宽,速度越快西安电子科技大学计算机学院16指令集是指令集是CPU所能执行的所有指令的集合所能执行的所有指令的集合q复杂指令集q精简指令集 西安电子科技大学计算机学院17CISC:复杂指令集(:复杂指令集(Complex Instruction Set Computer)q 具有大量的指令和寻址方式q 大多数程序只使用少量的指令就能够运行RISC:精简指令集(:精简指令集(Reduced Inst

7、ruction Set Computer)q 只包含最有用的指令q 确保数据通道快速执行每一条指令q 使CPU硬件结构设计变得更为简单西安电子科技大学计算机学院1820与与80的问题的问题q20的简单指令利用率达到80q80的复杂指令的使用概率只有20指令复杂度对处理器指令复杂度对处理器VLSI实现性能的影响实现性能的影响qCISC中指令长度不统一,高性能的VLSI实现难度大软硬件的协同设计问题软硬件的协同设计问题qCISC多采用微指令技术,q增强指令系统的功能,简化了目标软件的设计,但增加了硬件(微程序)复杂度q程序执行时间不一定短西安电子科技大学计算机学院19硬连线的指令译码逻辑硬连线的指

8、令译码逻辑qRISC指令格式和长度固定,指令类型少,功能简单,寻址方式少,译码控制器可采用规则的硬布线逻辑(组合逻辑型)qCISC大多使用微码ROM进行指令译码(存储逻辑型)减少指令和寻址方式的种类减少指令和寻址方式的种类大多数指令单周期执行大多数指令单周期执行分开的分开的Load/Store结构的存取指令结构的存取指令固定指令格式固定指令格式西安电子科技大学计算机学院20编译器处理器生成代码CISCCISC强调硬件的复杂性更高的复杂性编译器处理器生成代码RISCRISC注重编译器的复杂性更高的复杂性西安电子科技大学计算机学院21CISC 复杂RISC 简单西安电子科技大学计算机学院22指指

9、标标RISCCISC指令集指令集一个周期执行一条指令,通一个周期执行一条指令,通过简单指令的组合实现复杂过简单指令的组合实现复杂操作;指令长度固定操作;指令长度固定指令长度不固定,执行需要指令长度不固定,执行需要多个周期多个周期流水线流水线每周期前进一步每周期前进一步指令的执行需要调用微代码指令的执行需要调用微代码的一个微程序的一个微程序寄存器寄存器更多通用寄存器更多通用寄存器用于特定目的的专用寄存器用于特定目的的专用寄存器Load/Store结构结构独立的独立的Load/Store指令完成指令完成数据在寄存器和外部存储器数据在寄存器和外部存储器之间的传输之间的传输处理器能够直接处理存储器处理

10、器能够直接处理存储器中的数据中的数据西安电子科技大学计算机学院23处理器管芯面积小处理器管芯面积小开发时间少,开发成本低开发时间少,开发成本低容易实现高性能容易实现高性能西安电子科技大学计算机学院24与与CISC比,代码密度低比,代码密度低不能执行不能执行X86代码代码给优化编译程序带来了困难给优化编译程序带来了困难嵌入式系统硬件的核心部件是各种处理器嵌入式系统硬件的核心部件是各种处理器相对于通用处理器的特征相对于通用处理器的特征q体积小、集成度高、价格较低q可扩展性好q对实时多任务有很强的支持能力 能完成多任务 较短的中断响应时间q存储区保护能力强 包括功能强大的存储管理部件q功耗低q大多采

11、用RISC指令集西安电子科技大学计算机学院25ARM(Advanced RISC Machines)q全球领先的RISC微处理器M68KqMotorola公司的68000,主要应用在工控领域PowerPCqIBM公司的嵌入式处理器MIPSq高性能、高处理能力的高端嵌入式处理器X86qIntel推出的X86系列嵌入式处理器,如386EX西安电子科技大学计算机学院26西安电子科技大学计算机学院27将众多功能集成实现一个完整的系统将众多功能集成实现一个完整的系统让多个功能同时执行让多个功能同时执行让外部事件都能立即得到处理让外部事件都能立即得到处理友好的人机交互友好的人机交互保持程序具有扩展性保持程

12、序具有扩展性西安电子科技大学计算机学院28任务任务q完成某一单一功能的程序单任务程序单任务程序q整个系统只处理一个单一功能q最典型的就是一个死循环多任务程序多任务程序q最简单:轮询多任务程序q其它多任务程序西安电子科技大学计算机学院29前后台程序结构前后台程序结构事件触发结构事件触发结构操作系统操作系统西安电子科技大学计算机学院30前台前台q中断实现q处理对时间要求严格事件、突发事件后台后台q轮询多任务实现q处理对时间要求不严格事件西安电子科技大学计算机学院31消除阻塞消除阻塞q任何一个任务都不能阻塞CPUq可以用节拍的方式实现定时、延时等时间相关的操作消除前后台之间的直接关联性消除前后台之间

13、的直接关联性q使用缓冲区函数重入函数重入q前后台程序重叠调用同一函数临界代码(不可分割代码)临界代码(不可分割代码)q例如关中断西安电子科技大学计算机学院32状态机状态机q软件工程中一种极其有效的软件建模方式q不同于流程图,可以描述软件并发行为基于状态机的程序建模基于状态机的程序建模正传状态暂停2暂停1反传状态2S定时到2S定时到1S定时到1S定时到西安电子科技大学计算机学院33未按下短按状态长按状态键按下按键释放/短键入FIFO2S定时到首次长键入FIFO按键释放0.25S定时到连续长键入FIFO西安电子科技大学计算机学院34在状态中判断事件(事件查询)在状态中判断事件(事件查询)q在当前状

14、态下,根据不同的事件执行不同的功能(动作)q再做状态转移在事件中判断状态(事件触发)在事件中判断状态(事件触发)q在每个事件的中断(或查询到事件发生)函数内,判断当前状态q根据当前状态执行不同动作q做相应状态转移嵌入式领域中,操作系统最最重要的作用嵌入式领域中,操作系统最最重要的作用是实现多任务运行是实现多任务运行系统根据一定的规则使用系统根据一定的规则使用CPU(中央处理(中央处理单元)在多个任务之间转换、调度单元)在多个任务之间转换、调度应用程序被分解成多个任务应用程序被分解成多个任务任务间的通信、同步、资源复用等问题由任务间的通信、同步、资源复用等问题由操作系统处理操作系统处理复杂的应用

15、程序层次化复杂的应用程序层次化嵌入式领域常用实时操作系统(嵌入式领域常用实时操作系统(RTOS)西安电子科技大学计算机学院35西安电子科技大学计算机学院36软实时软实时RTOSq嵌入式Linux qWinCE硬实时硬实时RTOSqVxWorksqOSEqNuclear著名的著名的open RTOSquc/OSqRTEMS自主知识产权的自主知识产权的RTOSqHOPENqDelta OS西安电子科技大学计算机学院373.1 嵌入式系统的嵌入式系统的开发流程开发流程q单片机系统 早期由于计算机技术的限制,嵌入式系统开发的基本思路是根据需求分析先设计硬件,硬件设计完成之后再进行相应软件的开发。西安电

16、子科技大学计算机学院38传统的嵌入式系统开发方法传统的嵌入式系统开发方法 经过需求分析和总体设计,系统划分为硬件子系统和软件子系统两个独立部分,随后分别对两个部分进行设计、开发、调试和测试,最后进行软硬件集成。课程内容以传统开发方法为例课程内容以传统开发方法为例西安电子科技大学计算机学院39嵌入式系统的软硬件协同设计嵌入式系统的软硬件协同设计 随着微电子技术的发展,SoC成为当前嵌入式系统的主要形式之一,面向SoC的软硬件系统设计强调软件与硬件设计的并行性和相互反馈,提高了设计抽象的层次。西安电子科技大学计算机学院40系统描述系统描述q采用一种或多种系统级描述语言对所需设计的嵌入式系统的功能和

17、性能进行全面的描述,是建立系统软硬件模型的过程。软硬件划分软硬件划分q从系统需求出发,依据一定的指导原则和分配算法对硬件/软件功能进行合理划分。协同综合协同综合q根据系统描述和软硬件划分的结果,在已有的设计规则和既定的设计目标下,决定系统中软件和硬件部分以及其接口的具体实现方法。协同仿真与验证协同仿真与验证q在硬件生产出来以前,通过仿真的手段验证软硬件集成方面的问题。西安电子科技大学计算机学院41软硬件协同设计的特点软硬件协同设计的特点q采用并行设计和协同设计的思想,提高了设计效率,缩短了设计周期。q采用统一的工具描述,可合理划分系统软硬件,分配系统功能,在性能、成本、功耗等方面进行权衡折中,

18、获取更优化的设计。q支持多领域专家的协同开发。软硬件协同设计不仅是一种设计技术,同时也是一种新的设计方法和思想,它的核心思想是沟通软件设计和硬件设计,避免系统中关系密切的两部分设计过早独立。西安电子科技大学计算机学院42嵌入式系统的基本设计过程嵌入式系统的基本设计过程q需求分析q规格说明q体系结构设计q硬件构件、软件构件q系统调试与集成西安电子科技大学计算机学院43移动地图由移动地图由GPS获取获取位置信息,位置信息,在本地数据库中取出在本地数据库中取出地图信息并绘制地图地图信息并绘制地图经度: 108 54E 纬度: 34 13N西安电子科技大学计算机学院44功能功能:车载使用,显示主要道路

19、和地标信息:车载使用,显示主要道路和地标信息用户接口用户接口:4英寸屏幕、英寸屏幕、 最多三个按键、使用弹出最多三个按键、使用弹出式菜单式菜单性能性能:地图平滑滚动、开机时间不超过:地图平滑滚动、开机时间不超过1s、 15s内内定位定位成本成本:市场价:市场价$120,成本价约,成本价约$30物理尺寸和重量物理尺寸和重量:适合手持:适合手持功耗功耗:4节节AA电池至少可连续运行电池至少可连续运行8小时小时西安电子科技大学计算机学院45西安电子科技大学计算机学院46规格说明包括下列构件规格说明包括下列构件q从GPS卫星接收到的数据q地图数据q用户界面q必须执行的满足客户需求的操作q保持系统运行所

20、需的后备动作(如操作GPS接收机)西安电子科技大学计算机学院47GPS接收器搜索引擎渲染用户接口数据库显示西安电子科技大学计算机学院48GPS接收器CPUI/O面板显示帧缓冲存储器西安电子科技大学计算机学院49数据库搜索显示控制时钟用户界面像素GPS接口程序西安电子科技大学计算机学院50西安电子科技大学计算机学院51嵌入式系统通常是一个专门执行某项任务的目标嵌入式系统通常是一个专门执行某项任务的目标平台,意味着系统设计要高度优化,所以必须为平台,意味着系统设计要高度优化,所以必须为这些设计找到适合的处理器元件(这些设计找到适合的处理器元件(CPU)。)。选择处理器是个复杂的工作,它不是一个简单

21、选择处理器是个复杂的工作,它不是一个简单 “优化优化”的问题,最终的选择必须通过四道关键的问题,最终的选择必须通过四道关键评估评估q是否便于实现q是否能提供足够的性能q是否有合适的操作系统支持q是否有大量合适的开发工具支持西安电子科技大学计算机学院52微处理器与微控制器微处理器与微控制器q很多嵌入式系统用微控制器代替微处理器。微处理器是不带任何附加端口或支持设备的CPU,而微控制器进行了特殊设计,使之在实际应用中只需添加最少的补充资源芯片与封装芯片与封装q设计人员在传统微处理器与微控制器之间进行选择时仍然受到很大限制。现在,至少对于市场容量大的产品,可以考虑用SoC(System-on-Chi

22、p)来实现,也可以使用具有IP(Intellectual Property)的标准部件或半定制设计来实现西安电子科技大学计算机学院53西安电子科技大学计算机学院54集成度更高的微控制器有明显的优点集成度更高的微控制器有明显的优点q硬件成本低: 一个部件代替多个部件q可靠性高:更少分立电路模块、更少互联q性能更好: 为适应环境,系统部件进行了优化q更快:信号只在芯片内部传输q电磁辐射更少:快速的信号不会从大型PC板上发射出去西安电子科技大学计算机学院55你需要一个操作系统吗?你需要一个操作系统吗? q用一个 32 位的处理器实现一个相对复杂的项目,那么可能就需要多任务 ,必然需要一个操作系统。开

23、发或者购买开发或者购买 q为了省钱可以自己开发吗?答案是肯定的;但是有很多问题需要考虑(时间,开发成本)。开源或者商业开源或者商业 q开源明显的优点是免费,缺点是缺乏验证以及在支持新的外设方面的问题。 易用性易用性 西安电子科技大学计算机学院56标准标准 qPOSIX 提供了一个标准的用户软件接口,如果达到这个标准,在理论上,将有助于用户更快的学习一个新的 RTOS 以及提供更为易用的接口。 性能性能 q RTOS 代码的大小、中断延迟、 任务调度时间等软件包软件包 qTCP/IP 协议栈 、USB协议栈、Flash控制等调试工具调试工具西安电子科技大学计算机学院57硬件需求分析硬件需求分析

24、q主要进行硬件设计需求分解,包括硬件功能需求、性能指标、可靠性指标、可制造性需求及可测试性等需求;对硬件需求进行量化,并对其可行性、合理性、可靠性等进行评估 。硬件总体设计硬件总体设计 q总体上进一步划分各单板的功能以及硬件的总体结构描述,规定各单板间的接口及有关的技术指标。 硬件开发及过程控制硬件开发及过程控制 q主要有原理图及详细设计、PCB设计、初样研制/加工及调试等。系统联调系统联调 q在结构电源,单板软硬件都已完成开发后,即可进行联调;系统联调是验证设计目的是否达到的唯一方法。 西安电子科技大学计算机学院58软件需求分析软件需求分析q对用户需求分类整理,包括功能需求、操作界面需求及应用环境需求等。软件系统设计软件系统设计q数据流分析、任务划分以及定义任务间的接口代码生成代码生成q编码q交叉编译和链接q交叉调试q测试程序固化程序固化西安电子科技大学计算机学院59测试测试q设计测试用例,找出可能的错误q质量保证的关键因素调试调试q测试发现错误后消除错

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论