资源预览内容
第1页 / 共30页
第2页 / 共30页
第3页 / 共30页
第4页 / 共30页
第5页 / 共30页
第6页 / 共30页
第7页 / 共30页
第8页 / 共30页
第9页 / 共30页
第10页 / 共30页
亲,该文档总共30页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
2020/10/15,1,基于模型的设计(MBD)Model-Based Design,DSP代码自动生成技术,2020/10/15,2,Model Based Design,基于模型设计是一种流程,较之传统软件开发流程而言,使开发者能够更快捷、以更少的成本花费进行开发。 适用范围包括信号处理,控制系统,通信行业。表述系统的模型是整个开发流程的中心,贯穿需求,设计,实施与测试。模型本身就是一个可执行的规格书,开发者修改优化模型就是对设计的修缮,无需到实施之后通过测试再进行系统验证,可以通过仿真在早期设计时期就及时进行正确性验证,并且在实施阶段,特别是对于嵌入式软件,代码由模型生成。,MBD简介,2020/10/15,3,MBD的实际应用,4,Copyright 2014 FUJITSU LIMITED,传统的软件开发流程,5,Copyright 2014 FUJITSU LIMITED,基于模型的设计,2020/10/15,6,MATLAB与CCS配置,1.在matlab 中键入xmakefilesetup ,弹出“gmake”对话框,图1 gmake设置,前提假设CCS5安装路径如下: CCS Installation: D:TIccsv5 CCSV5安装路径 Code geeneration Tools: D:TIccsv5toolscompilerc2000 ,编译器的路径 如果其它路径,则需要在下边的应用中相应的路径中更改路径。,2020/10/15,7,MATLAB与CCS配置,将display operational configuration only的勾选去掉,然后在configuration的下拉中选择ticcs_c2000_ccsv5,如果没有,则点击右上角的New,然后分别在Make Utiliy、Complier、Linker、Archiver、Prebuild、Postbuild、Execute填入一下内容,2020/10/15,8,MATLAB与CCS配置,Complier :,Complier: D:/ti/ccsv5/tools/compiler/c2000_6.2.0/bin/cl2000 Arguments :-ID:/ti/ccsv5/tools/compiler/c2000_6.2.0/include -fr|MW_XMK_DERIVED_PATH_REF|,Make Utiliy:,Make Utility : D:PROGRA1MATLABR2013abinwin32gmake (这个路径是Matlab的编译路径) Arguments : -f |MW_XMK_GENERATED_FILE_NAMER| |MW_XMK_ACTIV_BUILD_ACTION_REF|,2020/10/15,9,MATLAB与CCS配置,Linker,Linker: D:/ti/ccsv5/tools/compiler/c2000_6.2.0/bin/cl2000 Arguments : -o |MW_XMK_GENERATED_TARGET_REF|,Archiver,Archievr: D:/ti/ccsv5/tools/compiler/c2000_6.2.0/bin/ar2000 Arguments: -r |MW_XMK_GENERATED_TARGET_REF|,2020/10/15,10,Execute 执行编译,Execute Tool: D:ticcsv5ccs_basescriptingbindss.bat Arguments :D:PROGRA1MATLABR2013atoolboxidelinkextensions ticcsccsdemosrunProgram.js D:tiXDS100v2.ccxml |MW_XMK_GENERATED_TARGET_REFE|,MATLAB与CCS配置,2020/10/15,11,图2 TLC文件选择,MATLAB与CCS配置,2020/10/15,12,在target hardware resources中IDE/Tool Chain ,选择Texas Instruments Code Composer Studio v5 (makefile generation only). 注意:首先备份配置,因为这会覆盖已有的配置。然后设置board为C2000,processor为 F28335,图3 configuration parameters/Code generation设置,MATLAB与CCS配置,2020/10/15,13,检查是否配置成功,在workspace键入checkEnvSetup(ccsv5,F28335, setup),这时如果没有配置成功,系统会自动弹出如下图对话框,提示选择安装路径等,此过程和xmakefilesetup的设置相似,只不过此处是设置系统环境变量,这样才能让软件通过系统变量找到相关软件的路径,如果配置成功显示如下图, checkEnvSetup(ccsv5,f28335, check),检查配置 checkEnvSetup(ccsv5,f28335, setup),设置环境变量,图4 环境变量检查以及设置,MATLAB与CCS配置,2020/10/15,14,checkEnvSetup(ccsv5,F28335 eZdsp, setup) 1. Checking CCSv5 (Code Composer Studio) version Required version: 5.0 or later Required for : Code Generation Your Version : 5.5.0 # Setting environment variable TI_DIR to D:ticcsv5 2. Checking CGT (Texas Instruments C2000 Code Generation Tools) version Required version: 5.2.1 to 6.0.2 Required for : Code generation Your Version : 6.2.0 # Setting environment variable C2000_CGT_INSTALLDIR to D:ticcsv5toolscompilerc2000_6.2.0 The version found for CGT differs from the one used for our software validation. Use it at your own risk. 3. Checking DSP/BIOS (Real Time Operating System) version Required version: 5.33.05 to 5.41.11.38 Required for : Code generation Your Version : 5.42.01.09 # Setting environment variable CCSV5_DSPBIOS_INSTALLDIR to D:tibios_5_42_01_09 The version found for DSP/BIOS differs from the one used for our software validation. Use it at your own risk. 4. Checking XDC Tools (eXpress DSP Components) version Required version: 3.16.02.32 or later Required for : Code generation Your Version : 3.24.05.48 5. Checking Flash Tools (TMS320C28335 Flash APIs) version Required version: 2.10 Required for : Flash Programming Your Version : 2.10 # Setting environment variable FLASH_28335_API_INSTALLDIR to D:titidcsc28Flash28_APIFlash28335_API_V210,MATLAB与CCS配置,2020/10/15,15,MBD流程,1.模型搭建 2.软件在换测试(SIL): ert .tlc嵌入式C代码, 3.硬件在环测试(PIL):idenlink_ert .tlc 4.DSP代码自动生成,2020/10/15,16,应用于嵌入式开发的模型往往需要选择固定步长的解算器,而不选用变步长的解算器 这是因为微控制器的时钟信号是以固定频率的周期工作,虽然可以实现倍频和分频, 往往在一个应用的过程中每个基础时钟信号是保持不变的。,Solver options Type: Fixed-step Solver:discrete Fixed-step,Solver设置,2020/10/15,17,文档自动生成设置,2020/10/15,18,TI C2000系列DSP模块,2020/10/15,19,ADC模块,2020/10/15,20,ePWM模块,2020/10/15,21,GPIO模块,2020/10/15,22,Memory Copy模块,2020/10/15,23,DSP代码自动生成视频演示,24,Copyright 2014 FUJITSU LIMITED,使用Profiler Report来了解模型每个环节的时间消耗和调用次数。 报告中会提示模型执行时间,调用函数清单和每个函数调用的详细效率分析信息 使用注意: 1.如果算法模型使用Model Referrence引用,那么需要使该模型在Normal模式 2.在进行Profiler时并不分析Model Referrence内部,需要单独分析,模型效率分析,MBD进阶,25,Copyright 2014 FUJITSU LIMITED,未经过任何优化的代码可读性不强 1.为模型增加信号名 2.通过信号线属性配置存储数据类型 3.关联数据对象与模型信号(gcs)命令可自动关联,代码自动生成提高可读性,1.将模型转换为子系统 2.在Block Parameter中配置为原子子系统 3.Code Generation页面定义函数名与文件名,代码自动生成结构化,26,Copyright 2014 FUJITSU LIMITED,2020/10/15,27,为什么要基于模型设计?,MathWorks公司CEOJack Little,基于模型的设计至少可以给我们带来四个方面的好处: 1. 图形化设计 明确、清晰、唯一,便于交流、便于维护。 2. 早期验证 软件开发过程中,bug的引入难以避免,能否尽快发现bug对整个开发过程至关重要。 3. 代码的自动生成(最容易关注的优势 ) a.代码都不用写了。“码农”从此跟我无关,原本需要一个月时间写完的代码,现在可能只要一个上午或者两个小时就可以搞定。 b.代码质量高。MBD生成的代码在各种效率上(RAM、ROM、执行时间等)不比大学毕业后工作了5年的工程师差。 4. 文档自动化 对于文档,我说两点: a.工程师大多不愿意写文档; b.开发过程中文档又是不可缺少的。 (引自MATLAB中文论坛: ,2020/10/15,28,主要参考资料,1、基于模型设计是肯定可以解决任何问题的(能够解决的),如果这种方法都不能搞定,传统方法那更是望尘莫及了 2、入门比较痛苦,要坚持! 3.凤凰网的军事节目报道,F22摔的那三驾都是由于飞行员不按操作规程驾驶造成的,即软件故障造成的!-这
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号