MATLAB Answers

SIMULINK Datatype mysmatch error

7 ビュー (過去 30 日間)
Lucas Augusto Tansini
Lucas Augusto Tansini 2020 年 6 月 11 日
回答済み: Mark McBroom 2020 年 6 月 14 日
Hello all!
I'm quite new to SIMULINK model-design and i have stumbled into an error, and I though I might ask for help here, since there may be a better way to handle this implementation.
Currently, I'm implementing this piece of (a fft benchmark) C code into SIMULINK Model-based design:
for ( i=rev=0; i < NumBits; i++ )
{
rev = (rev << 1) | (index & 1);
index >>= 1;
}
So far, this what I've got:
However, i got these two datatype mismatch error,
Data type mismatch. Input port 2 of 'fftModel/iteratorNumSamples /For Iterator Subsystem/Bitwise Operator' expects a signal of data type 'uint32'. However, it is driven by a signal of data type 'ufix32_E1'.
Data type mismatch. Output port 1 of 'fftModel/iteratorNumSamples /For Iterator Subsystem/Shift Arithmetic' is a signal of data type 'ufix32_E1'. However, it is driving a signal of data type 'uint32'.
To fix this, I thought into putting a Data Type Conversion block, but this block changes the code behavior. Is there an easy way to fix this?
Thanks in advance.

  0 件のコメント

Sign in to comment.

回答 (1 件)

Mark McBroom
Mark McBroom 2020 年 6 月 14 日
In Shift Arithmetic block, make sure the "Binary points to shift" is set to zero.

  0 件のコメント

Sign in to comment.


Translated by