描述
包含大于52位输出的System Generator设计似乎不正确。在输出通过Gateway Out块后,在Matlab / Simulink环境中检查输出时会出现问题。是什么造成的?
解
在Sysgen设计中使用网关输出块时,固定点数据将在Simulink环境中转换为浮点双数据。浮点双精度的小数部分的范围为52位。因此,如果使用网关输出块转换任何大于52位的输出,则可能发生数据不匹配。可以使用WaveScope工具在Sysgen设计内部监视定点数据,该工具是Sysgen Blockset的一部分。
如果设计要求输出大于53位,则一种可能的解决方法是将输出分成上下总线,然后使用两个单独的网关输出,每个小于53位。然后可以使用缩放和数据类型转换块在Simulink环境中组合两个总线。可以使用数据类型转换块将双浮点数据转换为固定点,然后可以通过两个幂来缩放上部总线并将其添加到下部总线以执行串联。此方法需要Simulink固定点块集。
没有回复内容