- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 565619 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174909
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
& K- L! d. }/ |8 R7 v( e
建模规范
5 D5 [& s- L0 n建模其实很自由的一项编码方式,不要太多的语法知识,简单接触过后就可以搭建功能复杂的模型生成代码供工程使用了。但是不按照一定的规范建模,结果很可能搭出来的模型可读性差、执行效率低、代码臃肿。而建模规范去一条一条的学习,枯燥不说效率也很低下。比较好的方式可以直接借助于tool来建模使之搭建的更有水平,同时学习建模规范。
5 A7 F% ^9 n P1 Q8 U使用的工具就是model advisor中的 MAAB检查,
, v2 e1 p; e( s
; T# w- S3 Q4 q M![]()
! S- C# C+ E9 E& N- [% f. s5 W$ a界面如下:。 5 A. H! Z6 p @. `
![]()
( c, p. {( S/ n' `4 r% {# ^# l这里需要注意的是,warning项可以不修改,但必须作出说明。我比较关注的规则是Check for mixing basic blocks and subsystems,这个和架构有很大关系,对可读性有很大影响,主要的要求就是模型要有层次性,不同层级之间不允许值传递。其它具体的规则就不赘言了,我相信经过几次检查后会对建模习惯产生很大的影响的。
6 C: h1 `. d. |# H1 v# x补充另外一项检查Code Generation Advisor:
3 Y1 |" B3 Y/ x; e3 r7 s/ w1 N9 p, `5 X- J' w7 z# ?! i" u& @; E
。
* X' S' J j$ s4 h# \% m通过该检查可以进行如下优化
8 `& m( A$ l7 QExecution efficiency
7 a4 F+ n" K1 Q9 ` @2 WROM efficiency # E! ]$ p6 o: f. l) B9 r$ d
RAM efficiency
) N/ W0 N; r% w) I# O" A3 F. D2 zTraceability
h7 ^) r( e* {- H; _9 XSafety precaution ^% U% \( h. z2 t8 X+ y
Debugging % k$ y8 H- @+ _6 [% D4 R6 N) S" V
MISRA-C:2004 guidelines
- {4 L2 @7 _1 T$ @8 T( MPolyspace # t4 c* ?$ _* q* v1 ?
界面如下图 8 V. \5 o, y5 d
) g$ t' E* P- ` a% \9 g* T- r
。
( Q" S Y" @4 ]3 _% {这里需要说明的是有些优化是相冲突的,比如说既想保持高的执行效率,又想占用较少的空间,这往往是很难实现的。
* |/ k6 t/ Y f" g: H" {Note 0 F2 R3 m: N: b5 p$ f W$ x/ [
前面有提到过模型设置的问题,我相信通过几次advisor的检查,我们对设置的理解会更深刻一些,可以设置的更加符合我们的意图。
1 o* i, w# Q" X" v---------------------
3 u) I2 t4 q# d9 p8 q* k作者:modolllee * r" V+ o0 |7 v6 i8 C1 N
来源:CSDN 0 n/ O1 q7 I0 k a
. t4 a4 H, w7 x) L% p0 K7 f
0 N" O2 _3 i; l( ^; S+ T8 h
9 c7 M5 y, s' ]7 A5 Q5 y. R' C' q |
zan
|