一、Overflow: 当数据发生溢出时,开发人员有三种处理方法:
当选择 saturate(饱和)模式时,将数据饱和在正的最大值或负的最小值,也就是当我们数据发生溢出时候,我们只得到我们在极限时候的数据,而对溢出无视。有符号四位数据: +7(0111) ~ -8(1000)
当选择 wrap 模式时, 做绕回处理,即最大值加1结果是最小值,最小值减1得到最大值;也就是溢出时候直接给上一位进位。有符号四位数据:本来最大是 0111(+7),发生溢出变为 1000(-8)
当选择 Flag as error 模式时,将数据溢出标记到 simulink 的错误报告中。
二、Quantization: 当出现量化误差时,开发人员有两种处理方式:
当选择 Round(四舍五入) 模式时,将数据四舍五入到最接近的开发人员定义精度可表示的数值上;
当选择 Truncate(截短) 模式时,直接将开发人员定义精度无法表示部分数值丢弃。
二进制 十进制
4 bits in / 4 bits out
当选择 saturate(饱和)模式时,将数据饱和在正的最大值或负的最小值,也就是当我们数据发生溢出时候,我们只得到我们在极限时候的数据,而对溢出无视。有符号四位数据: +7(0111) ~ -8(1000)
当选择 wrap 模式时, 做绕回处理,即最大值加1结果是最小值,最小值减1得到最大值;也就是溢出时候直接给上一位进位。有符号四位数据:本来最大是 0111(+7),发生溢出变为 1000(-8)
当选择 Flag as error 模式时,将数据溢出标记到 simulink 的错误报告中。
二、Quantization: 当出现量化误差时,开发人员有两种处理方式:
当选择 Round(四舍五入) 模式时,将数据四舍五入到最接近的开发人员定义精度可表示的数值上;
当选择 Truncate(截短) 模式时,直接将开发人员定义精度无法表示部分数值丢弃。
For Example
二进制 十进制
4 bits in / 4 bits out

本文探讨了在MATLAB Simulink中,Gateway模块的参数设置,如'wrap'和'saturate',如何影响仿真结果。通过举例说明,当设置采样时间为0.01s,sine波频率为1Hz,幅值为140,仿真时间为2s时,两种不同设置下的仿真输出图示差异。
最低0.47元/天 解锁文章
1302

被折叠的 条评论
为什么被折叠?



