嵌入式系统3-嵌入式系统设计-系统级设计.pdf

上传人:qwe****56 文档编号:71060908 上传时间:2023-01-31 格式:PDF 页数:61 大小:2.51MB
返回 下载 相关 举报
嵌入式系统3-嵌入式系统设计-系统级设计.pdf_第1页
第1页 / 共61页
嵌入式系统3-嵌入式系统设计-系统级设计.pdf_第2页
第2页 / 共61页
点击查看更多>>
资源描述

《嵌入式系统3-嵌入式系统设计-系统级设计.pdf》由会员分享,可在线阅读,更多相关《嵌入式系统3-嵌入式系统设计-系统级设计.pdf(61页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、嵌入式系统设计嵌入式系统设计章节内容章节内容?软件工程方法?嵌入式系统常用硬件?嵌入式系统系统级设计方法?嵌入式系统软硬件协同设计方法?嵌入式系统需求分析?嵌入式系统概要设计?嵌入式系统详细设计?嵌入式系统编码?嵌入式系统测试?嵌入式系统实例系统级设计方法系统级设计方法OSIOSI 7 7层嵌入式模式层嵌入式模式Data LinkData LinkPhysicalPhysicalNetworkNetworkTransportTransportSessionSessionPresentationPresentationApplicationApplicationHardwareSoftwareH

2、ardware Abstraction Layer嵌入式系统硬件流程嵌入式系统硬件流程FeasibilityFeasibilityResearchResearchSpecifications(Functional,Block,Test)Specifications(Functional,Block,Test)PCB Design(DFT&DFM)&FabricationPCB Design(DFT&DFM)&FabricationASIC/FPGADesign(DFT)ASIC/FPGADesign(DFT)SoftwareDesign(DFT)SoftwareDesign(DFT)PCB T

3、estingPCB TestingASIC/FPGA TestingASIC/FPGA TestingSoftware TestingSoftware TestingSystem TestingSystem TestingAssumption:Designing Hardware From ScratchPCBPCB设计流程设计流程SchematicSchematicBill of MaterialsBill of MaterialsNetlistNetlistBoard Outline DwgBoard Outline DwgMech DefsMech DefsElec DefsElec D

4、efsCreate OutlineImport ComponentsImport NetsDefine Routing Rules Create OutlineImport ComponentsImport NetsDefine Routing Rules Place ComponentsPlace ComponentsPlace ReviewPlace ReviewCritical RoutingCritical RoutingRouting ReviewRouting ReviewComplete RoutingComplete RoutingRouting ReviewRouting R

5、eviewBoard MarkingsBoard MarkingsDesign VerificationDesign VerificationFinal ApprovalFinal ApprovalDesign DeliveryDesign DeliveryNote:DFT&DFMTo Be IncludedSpecifications(Functional,Block,Test)Specifications(Functional,Block,Test)FeasibilityFeasibilityASIC/FPGAASIC/FPGA设计流程设计流程Note:DFT&DFMTo Be Inclu

6、dedFeasibilityFeasibilitySpecifications(Functional,Block,Test)Specifications(Functional,Block,Test)HDL RTL CodeHDL RTL CodeHDL RTL Test benchHDL RTL Test benchSimulationSimulationSynthesisSynthesisClock Tree InsertionClock Tree InsertionPlace and RoutePlace and RouteLayoutLayoutPost Layout Simulatio

7、nPost Layout SimulationTape-Out to FabTape-Out to FabSi Sample TestingSi Sample TestingFull ProductionFull Production嵌入式系统设计过程嵌入式系统设计过程ConceptConceptSpecificationSpecificationHW/SWHW/SWPartitioningPartitioningHardware ComponentsHardware ComponentsSoftware ComponentsSoftware ComponentsEstimation Esti

8、mation-ExplorationExplorationHardwareHardwareSoftwareSoftwareDesignDesign(Synthesis,Layout,(Synthesis,Layout,)DesignDesign(Compilation,(Compilation,)Validation and Evaluation(area,power,performance,Validation and Evaluation(area,power,performance,)以前的设计方法(框图)以前的设计方法(框图)说明说明?需求分析,看看用户需要解决哪些问题?选择处理器和相

9、应的硬件?硬件的设计(包括,原理图和PCB)?系统调试?系统的硬件是不是没有问题?调试软件,处理器的初始化,中断,外设等都需要?自己编程序控制。基于嵌入式平台的开发方法基于嵌入式平台的开发方法设计过程中发生修改的代价设计过程中发生修改的代价嵌入式系统设计内容嵌入式系统设计内容?计算机设计Computer design?系统级设计System-level design?生命周期Life-cycle?商业模型Business model?设计原则Design culture生命周期生命周期?部件成本可以在优化系统生命周期费用时确定下来?采用通用零部件可以降低系统成本?系统验证对于安全性要求高的系统

10、,如果嵌入式系统中发生任何变化,都需要重新验证通过提高设计水平避免重复验证的成本计算机设计计算机设计?实时性,反应性?小尺寸,轻重量?安全性和可靠性?苛刻环境适应性?低成本计算机设计计算机设计?实时性:硬实时软实时固定实时?响应性:任务的并发任务调度分解:将系统分解为多个小部分,这些子系统通过某些机制相互通信计算机设计计算机设计?安全性和可靠性嵌入式系统的错误可能带来严重的人员受伤或财产损失解决方法:硬件冗余以及分布式冗余算法缺点:由于冗余带来的成本未必能够被市场接受计算机设计计算机设计?苛刻环境的适应性某些环境无法预测或控制:温度,湿度,光线,电力供应,水,火,重力等等?低价格价格是嵌入式系

11、统中非常重要的一个考虑因素价格因系统的规模而定系统级设计系统级设计?产品功能嵌入式系统的成功建立在功能之上而不是采用何种CPU或某种硬件通过不同的软件提供不同的功能?系统安全性和可靠性任何嵌入式系统都必须考虑安全性和可靠性硬件级别:通过硬件冗余来保护系统软件级别:软件试图或者纠正某个软件错误或者最小化软件错误带来的影响,同时继续运行。系统级设计系统级设计?物理系统的控制嵌入式系统之间通常支持内部互联或外部控制机械特性A/D 转换信号流电源管理生命周期生命周期嵌入式系统生命周期嵌入式系统生命周期Deployment软件生命周期软件生命周期Final TestSystem TestUnit Tes

12、tCodeLow Level DesignHigh Level DesignArchitectureRequirementsWhere the Performance Problems OriginateWhere the Performance Problems Become Visible软件生命周期的实时性软件生命周期的实时性DeploymentFinal TestSystem TestUnit TestCodeLow Level DesignHigh Level DesignArchitectureRequirementsSelect Architecture Known to Sup

13、port Real-TimeIdentify Performance RequirementsSeparate Performance Requirements Among Elements Identify Synchronization MechanismsCheck Locks Named&Coded Correctly Watch for Anomalies Under LoadAnalysis&SimulationEnsure Correct Synchronization嵌入式系统生命周期嵌入式系统生命周期?售后支持和维修任何的修改都将影响到以后的维护嵌入式系统都必须能够在很短时间

14、(某些情况下,至多几个小时)内维修完毕对系统的生命周期考虑对设计造成影响:必须维护大量的产品服务记录,以便改进以及避免某类错误嵌入式系统生命周期嵌入式系统生命周期?需求分析?概要设计?详细设计?开发与测试?生产系统设计评估系统设计评估?系统工程过程被当做开发低成本的、有竞争力的产品,系统最好的途径。?在系统工程过程中一个必须的技术处理步骤就是系统设计评估。?系统设计评估应当位于系统工程过程中,而不是孤立存在的;系统设计评估当系统设计发生变化时启动,用来实现持续的设计改进。系统设计评估系统设计评估?设计就是合成的过程(合成,将现有的部件组合成一个新的合并体)。?设计的改变是一个项目,评估是预期设

15、计的修改如果被采用后所带来的优缺点。嵌入式系统生命周期嵌入式系统生命周期?升级延长产品生命周期:通过升级软件以及更换硬件来实现功能的升级.通过更换更高级更快速的处理器提高系统的速度在更换更高级更快速的处理器时可能需要删除不合适的软件?零部件可持续供应如果系统部件无法从市场上采购到,则系统需要重新设计商业模型商业模型?设计和生产费用当系统规模很小的情况下,设计费用必须详细考虑当系统规模很大的情况下,生产费用必须详细考虑当系统规模很小的情况下,CAD工具可以帮助降低系统的费用当系统规模很大的情况下,人工优化更加高效?循环周期设计循环在很多情况下,决定因素并不是电子技术的发展?产品系列嵌入式产品通常

16、不是单一产品,而是由多种价格和多种功能构成一个产品系列另一视角另一视角软件系统结构分析软件系统结构分析?程序模块的自主性主程序和若干中断子程序是可以自主运行的程序模块而普通子程序是不能自主运行的可以将普通子程序看作主调程序模块的一部分因此整个系统程序设计就是完成主程序设计和若干个中断子程序设计的过程?程序模块的功能性系统软件通常包含以下模块自检模块初始化模块监控模块显示输出模块信息采集模块数据处理模块控制决策模块信号输出模块通讯模块时钟模块等系统资源的安排系统资源的安排?芯片硬件资源的安排端口引足、中断资源、定时器/计数器、其它功能部件(如串行口、A/D、PWM、比较器、看门狗等)?RAM资源

17、的分配片内RAM用来存放各种变量、标志、堆栈、数据、处理中的临时结果等等片外RAM主要用来存放数据块程序模块的组织安排程序模块的组织安排?自检和初始化模块安排在主程序中系统上电后执行?时钟模块固定安排在定时中断子程序中?通讯模块通常安排在通讯中断子程序中?监控、显示、信息采集、数据处理、控制、决策、输出等模块可安排在主程序中,也可以安排在各种中断子程序中。建议全部安排在若干中断子程序(如定时中断子程序)中,使主程序的无限循环无事可做,进入节电睡眠模式。从而使低级中断子程序不需要保护现场,并可提高系统可靠性自检模块的设计自检模块的设计?程序代码自检执行校验算法判断程序代码是否改变?数据存储器自检

18、进行非破坏性读写校验判断是否正常?A/D通道自检测试已知信号判断是否正常?D/A通道自检输出已知数字量用A/D通道来检测其转换结果是否正常?显示自检显示固定内容判断是否正常?蜂鸣器自检响一声判断是否正常初始化模块的设计初始化模块的设计?外部硬件初始化对各种外部芯片设定明确的初始状态?功能部件初始化对片内功能部件设定明确的初始状态?堆栈初始化设置堆栈空间初始化堆栈指针?变量初始化为各种变量和指针设置初始值(默认值)初始化模块的设计初始化模块的设计?软件标志初始化为所有软件标志设置初始状态?系统时钟初始化设置初始时间?数据区初始化通常是清零时钟模块的设计时钟模块的设计?时钟源硬件时钟芯片或者软件定

19、时器?定时周期的决定由系统最小时间分辨率来确定?时钟单元的安排由系统时间动态变化范围来确定?时钟的设置与校对通过键盘操作来完成时钟模块的设计时钟模块的设计?系统时钟的使用触发与系统时间相关的任务?计时器的使用测试某任务执行的时间任务启动时清零任务执行时与时钟一起运行任务结束时停止读取结果?闹钟的使用控制某任务的时间间隔任务启动时置初始值,任务执行时由时钟进行倒计时计时结束则停止任务通讯模块的设计通讯模块的设计?波特率的设置与信道质量有关通讯双方共同约定?通讯协议(帧结构)的设计由通讯内容来决定一般包含地址码帧长变长帧命令码数据校验码?通讯缓冲区其长度应该能够存放下最长帧工作时和一个指针进行配合

20、完成一帧数据的收发通讯模块的设计通讯模块的设计?通讯过程如果采用查询模式可一次接收或发送完一帧内容为提高系统效率最好采用中断模式一次中断只接收或发送一个字节?通讯命令的执行最好在监控模块中执行信息采集模块的设计信息采集模块的设计?采样周期的选择由采样对象的频率特性决定?数字信号的采集光电隔离重复采集?模拟信号的采集使用合适的数字滤波算法?多路信号的采集当定时间隔远小于采样周期时可采用一路A/D 器件对各路信号轮回进行采样当定时间隔与采样周期相当时必须采用多路A/D 器件对各路信号同时进行采样?随机信号的采集由随机信号产生外部中断在该中断子程序中进行采集数据处理模块的设计数据处理模块的设计?数据

21、格式的选择用汇编语言编程时采用定点数格式还是采用浮点数格式,用C语言编程时采用整数格式还是采用实数格式,应该由数据的变化范围和分辨率来确定。?数据格式的转换用汇编语言编程时,应该进行人机交互格式与内部运算格式之间的转换,可调用相关子程序来完成。?数据处理过程先编制若干相关标准运算子程序,然后将各种复杂运算分解为若干标准运算,通过调用这些标准运算子程序来实现数据处理的目标。为提高可靠性,尽可能使用子程序库中的子程序。为提高效率,尽可能使用迭代算法。控制决策模块的设计控制决策模块的设计?控制决策模块的位置安排在信息采集模块和数据处理模块之后,信号输出模块之前。?控制决策算法的选择根据控制对象的特性

22、和系统控制指标的要求来选择常用算法,有PID 算法及其变形算法、模糊控制算法,对于简单系统,也可以采用“乒乓”控制算法。?控制决策模块的输出用来对对象进行逻辑控制(如通断控制、启停控制等)的决策结果一般用软件标志来表示,用来对对象进行程度控制(如温度控制,流量控制)等的决策结果为一个数据,必须转换成D/A 整形数据器件对应的整形数据。信号输出模块的设计信号输出模块的设计?输出信号的缓冲控制决策模块的运算结果不直接控制对象,而是存放在内存的输出缓冲区中,由本模块来执行输出。将“输出”从决策模块中独立出来以后,就可以实现一次决策多次输出,提高可靠性。?异步决策同步捆绑输出不同的输出控制信号在不同的

23、情况下决策产生,在不同时刻存入输出缓冲区。本模块执行时一并捆绑输出。?按状态输出控制决策模块不产生各个独立的逻辑控制信号,而是产生系统状态信号,本模块按状态查表来输出一组逻辑控制信号,可保证输出的合理性,避免事故。显示模块的设计显示模块的设计?显示输出集中处理将系统所有的显示输出全部集中到本模块中,可以避免分散编程时产生的冲突。?显示数据的获取该模块通过查询系统的状态信息(状态编码和各种状态标志)可以判断出应该显示哪些数据,在预定的位置找到这些数据,并将其转换成显示所需要的格式。?显示内容的刷新当某显示内容发生变化时,可置位“申请刷新”标志由本模块来检测该标志,并刷新显示,然后清除该标志。为保

24、证显示内容正确,即使没有“申请”,也应该定时刷新。监控模块的设计监控模块的设计?监控模块的任务获取键盘操作信息并解释之,调度执行相应模块,完成预定任务。遥控操作也可以合并到监控模块中进行解释执行。?监控模块的地位整个软件系统的骨架?监控模块的实质保证系统在运行过程中的因果关系符合设计要求。其中“因”包括内因(系统当前状态)和外因(操作)“果”包括执行的操作和状态的变化。?监控模块的设计过程系统状态分析,系统状态转移分析。状态编码、键盘编码、模块编码、生成监控框架。监控模块的风格监控模块的风格?顺序编码的监控模块查表风格。将系统的“因果”关系变成表格,用“因”作为表格的索引,用“果”作为表格的内

25、容。?特征编码的监控模块判断分支风格。用“因”作为判断条件,即根据系统的当前状态和操作者的按键来进行分支,形成一棵“判断树”,将“果”作为“树叶”,执行对应的模块并更新系统的状态。?菜单驱动的监控模块在使用CRT 屏的或大屏幕点阵液晶设备中,采用菜单工作方式,这时系统的状态信息由“菜单树”中的节点位置来表示。监控结构可以采用上面两者之一。硬件抗干扰设计硬件抗干扰设计?抗串模干扰的措施光电隔离、硬件滤波、过压保护、调制解调技术、高品质稳压电源、数字信号采用负逻辑传输。?抗共模干扰的措施平衡对称输入、选用高质量的运算放大器、良好的接地系统、系统接地点的正确联接方式、屏蔽。软件抗干扰设计软件抗干扰设

26、计?数字信号的输入多次采样,符合判断?数字信号的输出状态关联、重复输出?模拟信号的输入数字滤波?模拟信号的输出功率驱动(低阻输出)?系统抗干扰技术看门狗、后台睡眠、软件陷井、重要信息的备份、掉电保护、热启动时的系统恢复技术。硬件容错设计硬件容错设计?硬件冗余系统级冗余双机系统部件级冗余?故障测试系统在原系统的电路中增加若干检测电路,配合检测软件,可随时对系统的运行状态进行监测,使系统具有故障自诊断功能。软件容错设计软件容错设计?输入界面的容错设计提示合理性检查?输出界面的容错设计精度合理单位信息?堆栈空间留有余地?资源冲突的预防完整独占地访问一个资源?其它软件标志的生命周期子程序的资源占用数据处理算法的优化

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁