第2章嵌入式系统开发过程课件

上传人:痛*** 文档编号:241673307 上传时间:2024-07-14 格式:PPT 页数:32 大小:329.50KB
返回 下载 相关 举报
第2章嵌入式系统开发过程课件_第1页
第1页 / 共32页
第2章嵌入式系统开发过程课件_第2页
第2页 / 共32页
第2章嵌入式系统开发过程课件_第3页
第3页 / 共32页
点击查看更多>>
资源描述
第2章 嵌入式系统开发过程第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程主要内容1 13 32 24 4嵌入式系统设计方法嵌入式系统设计方法嵌入式嵌入式软件的开发流程软件的开发流程嵌入式系统嵌入式系统的调试的调试板极支持包板极支持包第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程2.1嵌入式系统设计方法嵌入式系统设计方法2.1.1嵌入式系统设计方法的嵌入式系统设计方法的演变演变2.1.2嵌入式系统的嵌入式系统的开发流程开发流程第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程2.1.1嵌入式系统设计方法的演变o1基于基于PCB和和ICE的设计方法的设计方法o2基于基于EDA(PLD)和和EOS的设计方法的设计方法o基于基于IP核的系统及设计方法核的系统及设计方法第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程1基于PCB和ICE(电路仿真)的设计方法o其步骤是其步骤是先抽象后具体先抽象后具体 抽象设计:抽象设计:将系统功能细分为若干功能模块将系统功能细分为若干功能模块 在对功能模块进行硬件和软件功能实现的分配在对功能模块进行硬件和软件功能实现的分配 具体设计包括具体设计包括:硬件设计和软件设计:硬件设计和软件设计 硬件设计:主要根据性能参数要求对各功能硬件设计:主要根据性能参数要求对各功能 模块所需要的元器件进行选择和组合模块所需要的元器件进行选择和组合PCB 软件设计主要包括任务分析,编码调试等软件设计主要包括任务分析,编码调试等-ICE第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程2、基于EDA(PLD)和EOS的设计方法o主要是硬件设计的进步主要是硬件设计的进步 旧方法:旧方法:选择和使用选择和使用标准通用集成电路器件标准通用集成电路器件 新方法:新方法:自己设计和制作自己设计和制作部分专用的集成电路器部分专用的集成电路器件,有各种件,有各种EDAEDA工具软件提供支持工具软件提供支持 (一万门一下用一万门一下用CPLD,CPLD,以上用以上用FPGA)FPGA)o软件设计的进步软件设计的进步 旧方法:无操作系统旧方法:无操作系统 新方法:基于操作系统设计,简化多任务,实时,新方法:基于操作系统设计,简化多任务,实时,复杂软件的设计复杂软件的设计 第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程3、基于IP核的系统级设计方法o集成系统(集成系统(SOC)CPU,I/O接口,存储器,实时操作系统,接口,存储器,实时操作系统,应用软件集成在一个芯片上,统一描述,统应用软件集成在一个芯片上,统一描述,统一设计一设计第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程2.1.2嵌入式系统的嵌入式系统的开发流程开发流程 1、需求分析阶段-2体系机构设计阶段-3生成代码阶段-4固化阶段-5系统集成,测试阶段第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程一、需求分析阶段一、需求分析阶段 嵌嵌入入式式系系统统应应用用需需求求中中最最为为突突出出的的是是注注重重应应用用的的时效性。时效性。需求分析阶段的主要任务是:需求分析阶段的主要任务是:1、分析客户需求,搞清楚需要完成的任务,、分析客户需求,搞清楚需要完成的任务,2、分类整理需求、分类整理需求 功能性需求功能性需求 接口设计;输入输出信号,操作方式界面接口设计;输入输出信号,操作方式界面 非功能性需求非功能性需求 性能性能 成本成本 功耗功耗 系统尺寸和重量系统尺寸和重量第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程二、体系结构设计阶段o作用:描述系统如何实现所述的功能和非功作用:描述系统如何实现所述的功能和非功能需求。能需求。对硬件,软件功能划分对硬件,软件功能划分 对系统软硬件进行选型(处理器选择,对系统软硬件进行选型(处理器选择,操作系统选择,接口选择等等)操作系统选择,接口选择等等)第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程三、生成代码阶段o需要完成的工作:需要完成的工作:代码编程代码编程、交叉编译和链交叉编译和链接接、交叉调试交叉调试和和测试测试等。等。1、代码编程、代码编程 一般采用的方法是一般采用的方法是先在通用先在通用PC上编程上编程,然,然后通过后通过交叉编译链接交叉编译链接,将程序做成目标平台,将程序做成目标平台上可以运行的二进制代码格式。最后将程序上可以运行的二进制代码格式。最后将程序下载到目标平台上下载到目标平台上的特定位置,在目标板上的特定位置,在目标板上启动运行这段二进制代码。启动运行这段二进制代码。第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程2、交叉编译和链接交叉编译和链接 嵌入式集成开发环境都支持交叉编译、链接嵌入式集成开发环境都支持交叉编译、链接。交交叉叉编编译译链链接接生生成成两两种种类类型型的的可可执执行行文文件件:调调试用的可执行文件试用的可执行文件和和固化的可执行文件固化的可执行文件。第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程3、交叉调试(远程调试)、交叉调试(远程调试)具有以下特点:具有以下特点:o调试器和被调试的程序运行在不同的机器上。调试调试器和被调试的程序运行在不同的机器上。调试器运行在器运行在PC或工作站上,而被调试程序运行在各或工作站上,而被调试程序运行在各式的专用目标机上;式的专用目标机上;o 调试器通过某种通信方式与目标机建立联系,如调试器通过某种通信方式与目标机建立联系,如串口、并口、网络、串口、并口、网络、JTAG或者专用的通信方式;或者专用的通信方式;o 在目标机上一般具有某种调试代理,这种代理能在目标机上一般具有某种调试代理,这种代理能与调试器一起配合完成对目标机上运行程序的调试。与调试器一起配合完成对目标机上运行程序的调试。这种代理可以是某种能支持调试的硬件,也可以是这种代理可以是某种能支持调试的硬件,也可以是某种软件;某种软件;o 目标机可以是一种仿真机。通过在宿主机上运行目标机可以是一种仿真机。通过在宿主机上运行目标机的仿真软件,仿真一台目标机,使整个调试目标机的仿真软件,仿真一台目标机,使整个调试工作只在一台计算机上进行。工作只在一台计算机上进行。第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程4、测试 看系统是否满足规格说明书和用户给定的功能要求,是否完成系统参数要求第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程四、固化阶段固化阶段o嵌入式应用软件调试完成以后,产生固化到目标环嵌入式应用软件调试完成以后,产生固化到目标环境的可执行代码,再烧写到目标环境的境的可执行代码,再烧写到目标环境的Flash中。中。o 固化的可执行代码与调试的可执行代码不同固化的可执行代码与调试的可执行代码不同 固化用的代码无调试用的信息固化用的代码无调试用的信息 固化用的代码无法执行硬件的启动和初始化,固化用的代码无法执行硬件的启动和初始化,所以启动模块必须包含在固化代码中。所以启动模块必须包含在固化代码中。启动模块和固化代码都定位到目标环境的启动模块和固化代码都定位到目标环境的Flash中,有别于调试过程中都在目标机的中,有别于调试过程中都在目标机的RAM中运行中运行第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程2.2设计实例GPS导航仪o需求分析阶段需求分析阶段(做什么)做什么)o体系机构设计阶段(如何做)体系机构设计阶段(如何做)o生成代码阶段、固化阶段o测试阶段第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程1、需求分析(用户)、需求分析(用户)功能功能 针对高速公路上的开车用户和类似用户针对高速公路上的开车用户和类似用户 系统展示主要道路和其他标志系统展示主要道路和其他标志用户界面用户界面 LCD:400*600 控制按钮不多于三个控制按钮不多于三个 按下按钮屏幕弹出菜单,供用户选择按下按钮屏幕弹出菜单,供用户选择性能性能 地图应地图应平滑平滑滚动,系统应在滚动,系统应在15秒那显示当前地秒那显示当前地图图第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程成本成本 每个设备成本不高于每个设备成本不高于200-500元元功耗功耗 四节四节5号电池供电,可持续号电池供电,可持续8小时小时物理尺寸和重量物理尺寸和重量 设备应该可以非常舒适的放在手上设备应该可以非常舒适的放在手上第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程需求分析(表格化)第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程2、体系机构设计阶段、体系机构设计阶段GPS导航仪基本构成:导航仪基本构成:接收到的接收到的GPS卫星数据卫星数据 地图数据地图数据 操作键盘操作键盘 LCD显示器显示器第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程工作框图第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程硬件体系结构包括:硬件体系结构包括:CPU核(核(ARM)存储器控制器存储器控制器-FLASH,SDRAM串口,串口,LCD控制器控制器GPS接受模块(串口接口)接受模块(串口接口)键盘(键盘控制)键盘(键盘控制)LCDSD卡(存储地图数据)卡(存储地图数据)第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程2.3 嵌入式系统的调试嵌入式系统的调试方法:嵌入式系统的调试方法:1 1源程序模拟器方式源程序模拟器方式2 2监控器方式监控器方式3 3仿真器方式仿真器方式嵌入式嵌入式系统的调试过程:系统的调试过程:第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程v 源程序模拟器方式源程序模拟器方式 在在PCPC机上,通过软件手段模拟执行为某种嵌入式处理机上,通过软件手段模拟执行为某种嵌入式处理器编写的源程序的测试工具。器编写的源程序的测试工具。注意注意:模拟器的功能毕竟是以一种处理器模拟另一种处模拟器的功能毕竟是以一种处理器模拟另一种处理器的运行,在指令执行时间、中断响应、定时器等方理器的运行,在指令执行时间、中断响应、定时器等方面很有可能与实际处理器有相当大的差别。另外,它无面很有可能与实际处理器有相当大的差别。另外,它无法仿真嵌入式系统在应用系统中的实际执行情况。法仿真嵌入式系统在应用系统中的实际执行情况。第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程v 监控器方式监控器方式 监控器监控器(Monitor)Monitor)调试方式需要目标机与宿主机调试方式需要目标机与宿主机协调。协调。监视程序监视程序第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程1、首先建立物理连接、首先建立物理连接 在宿主机和目标机之间通过串口、以太口等在宿主机和目标机之间通过串口、以太口等建立物理连接建立物理连接 2、建立逻辑连接、建立逻辑连接 在宿主机上运行调试器,目标机运行监控程在宿主机上运行调试器,目标机运行监控程序和被调试程序,宿主机通过调试器与目标序和被调试程序,宿主机通过调试器与目标机的监控器建立通信连接。机的监控器建立通信连接。注:监视方式只能调试应用程序,不能调试目标机的操作系统第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程v 仿真器方式仿真器方式 是是在在微微处处理理器器的的内内部部嵌嵌入入额额外外的的控控制制模模块块。当当特特定定的的触触发发条条件件满满足足时时,系系统统将将进进入入某某种种特特殊殊状状态态。在在这这种种状状态态下下,被被调调试试的的程程序序暂暂时时停停止止运运行行,宿宿主主机机的的调调试试器器通通过过微微处处理理器器外外部部特特设设的的通通信信口口访访问问各各种种寄寄存存器器、存存储储器器资资源源,并执行相应的调试指令。并执行相应的调试指令。优势:优势:1 1、不占用目标平台的通信端口、不占用目标平台的通信端口 2 2、能调试目标操作系统的启动过程、能调试目标操作系统的启动过程 一一般般高高档档的的微微处处理理器器都都带带JTAG JTAG(Joint(Joint Test Test Action Action Group,Group,联联合合测测试试行行动动组组)接接口口,它它是是一一种种边边界界扫扫描描标标准准,只需只需5 5根引脚就可以实现在线仿真的功能。根引脚就可以实现在线仿真的功能。第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程2.4 板级支持包 由由于于嵌嵌入入式式系系统统中中采采用用微微处处理理器器微微控控制制器器的的多多样样性性,嵌嵌入入式式操操作作系系统统的的可可移移植植性性显显得得更更加加重重要要。所所以以有有些些嵌嵌入入式式操操作作系系统统的的内内核核明明确确分分成成两两层层,上上层层一一般般称称为为“内内核核”,而而低低层层则则称称为为“硬硬件件抽抽象象层层”,底底层层的的缩缩写写是是HALHAL,也也有有的的厂厂商商(如如VxWorksVxWorks的的提提供供者者WindRiverWindRiver公公司司)把把硬硬件件抽抽象象层层称称为为BSPBSP,即即板板级级支支持持包包(Board Board Support Support Package)Package)。板板级级支支持持包包是是操操作作系系统统与与目目标标应应用用硬硬件件环环境境的的中中间间接接口口,它它是是软软件件包包中中具具有有平平台台依依赖赖性性的的那那一一部部分分。板板级级支支持持包包将将实实时时操操作作系系统统和和目目标标应应用用环环境境的的硬硬件件连连接接在在一一起起,它它不不可可避避免免地地使使用用了了硬硬件件设设备备的的特特性性,具具有有很很强强的的硬硬件件相相关关性性。板板级级支支持持包包中中包包含含了了大量与处理器和设备驱动相关的代码和数据结构。大量与处理器和设备驱动相关的代码和数据结构。板级支持包的主要功能包括两部分:板级支持包的主要功能包括两部分:在系统启动时,对硬件进行初始化。在系统启动时,对硬件进行初始化。为驱动程序提供访问硬件的手段。为驱动程序提供访问硬件的手段。第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程o 在对硬件进行初始化时,板级支持包一般应完成以下工在对硬件进行初始化时,板级支持包一般应完成以下工作:作:o(1)将系统代码定位到)将系统代码定位到CPU将要跳转执行的内存入口处,将要跳转执行的内存入口处,以便硬件初始化完毕后以便硬件初始化完毕后CPU能够执行系统代码。能够执行系统代码。o(2)根据不同)根据不同CPU在启动时的硬件规定,板级支持包要负在启动时的硬件规定,板级支持包要负责将责将CPU设置为特定状态。设置为特定状态。o(3)对内存进行初始化,根据系统的内存配置将系统的内存)对内存进行初始化,根据系统的内存配置将系统的内存划分为代码、数据、堆栈等不同的区域。划分为代码、数据、堆栈等不同的区域。o(4)如果有特殊的的启动代码,板级支持包要负责将控制权)如果有特殊的的启动代码,板级支持包要负责将控制权移交给启动代码。移交给启动代码。o(5)如果应用软件中包含一个嵌入式操作系统,板级支持包)如果应用软件中包含一个嵌入式操作系统,板级支持包要负责将操作系统需要的模块加载到内存中。要负责将操作系统需要的模块加载到内存中。o(6)如果应用软件中包含一个嵌入式操作系统,板级支持包)如果应用软件中包含一个嵌入式操作系统,板级支持包还要在操作系统初始化之前,将硬件设置为静止状态,以免还要在操作系统初始化之前,将硬件设置为静止状态,以免造成操作系统的初始化失败。造成操作系统的初始化失败。第第2 2章章 嵌入式系统开发过程嵌入式系统开发过程o 在为驱动程序提供访问硬件的手段时,板在为驱动程序提供访问硬件的手段时,板级支持包一般应完成以下工作:级支持包一般应完成以下工作:o(1)将驱动程序提供的)将驱动程序提供的ISR(中断服务程序)(中断服务程序)挂载到中断向量表上。挂载到中断向量表上。o(2)创建驱动程序初始化所需要的设备对象,)创建驱动程序初始化所需要的设备对象,板级支持包将硬件设备描述为一个数据结构。板级支持包将硬件设备描述为一个数据结构。o(3)为驱动程序提供访问硬件设备寄存器的函)为驱动程序提供访问硬件设备寄存器的函数。数。o(4)为驱动程序提供可重用性措施。例如将与)为驱动程序提供可重用性措施。例如将与硬件关系紧密的处理部分在板级支持包中完成,硬件关系紧密的处理部分在板级支持包中完成,驱动程序直接调用板级支持包提供的接口,这样驱动程序直接调用板级支持包提供的接口,这样驱动程序就与硬件无关。驱动程序就与硬件无关。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!