AnsweredAssumed Answered

MISRA compliant uint16_t, int16_t storage format

Question asked by MisterB on Jul 4, 2011
Latest reply on Aug 16, 2011 by StuartS

Hi,

 

there is a 16 bit low precision floating point type available on SHARC platforms. According to the programming reference manual, data shall be allocated with data type "signed short int" for this low precision floating point data type. A clear storage type (like int16_t) must be specified in a MISRA rule. The int16_t storage type is not available on the SHARC platform, when I included <misra_types.h>. For this reason I created my own uint16_t storage type in a user defined header.

 

To my knowledge, the 16 bit storage type on SHARC only depends on the memory section in the linker description file (.ldf) and not on the compiler. "signed short int" can be allocated in 16 bit or 32 bit memory space. "Signed long int" can be also allocated in 16 bit or 32 bit memory space.

 

How can this 16 bit type issue be handled MISRA compliant in a standardized way? In which MISRA standard header file can I find this 16 bit data type for SHARC?

 

I used VisualDSP++ version 5.0.8. Will the 16 bit type be better supported in future releases?

 

Best regards,

 

Michael

Outcomes