| module CAN_matrix_signals { // header |
| |
| import from General_Types all // header |
| import from CAN_matrix_general_types all // header |
| |
| |
| // instead of distinguishing between padding and no padding code generation, |
| // always tghe padded soulution could be used. |
| |
| |
| // for Bit types without padding |
| // type BIT<bitssize>_MSB <signal_name>_signal_type with { variant "BITORDER(msb)" }; |
| type BIT11_MSB BIT11_signal_type with { variant "BITORDER(msb)" }; |
| type BIT5_MSB BIT5_signal_type with { variant "BITORDER(msb)" }; |
| |
| // for n-Bit types with k-Bit padding |
| //type INT_BIT<n>_MSB <signal_name>_signal_type with |
| //{ variant "ALIGN(right)" |
| // variant "FIELDLENGTH(<(n+k)>)" // 9 (used) +2 (padding) = 11 |
| // variant "BITORDER(msb)" |
| //}; |
| type INT_BIT9_MSB BIT_BIT9_PADDED_2_signal_type with |
| { variant "ALIGN(right)" |
| variant "FIELDLENGTH(11)" // 9 (used) +2 (padding) = 11 |
| variant "BITORDER(msb)" |
| }; |
| |
| // for integer types without padding |
| // type INT_BIT<bitssize>_MSB <signal_name>_signal_type with { variant "BITORDER(msb)" }; |
| type INT_BIT11_MSB INT_BIT11_signal_type with { variant "BITORDER(msb)" }; |
| type INT_BIT5_MSB INT_BIT5_signal_type with { variant "BITORDER(msb)" }; |
| |
| // for n-Bit integer types with k-Bit padding |
| //type INT_BIT<n>_MSB <signal_name>_signal_type with |
| //{ variant "ALIGN(right)" |
| // variant "FIELDLENGTH(<n>+<k>)" // n (used) +k (padding) = 11 |
| // variant "BITORDER(msb)" |
| //}; |
| |
| type INT_BIT9_MSB INT_BIT9_PADDED_2_signal_type with |
| { variant "ALIGN(right)" |
| variant "FIELDLENGTH(11)" // 9 (used) +2 (padding) = 11 |
| variant "BITORDER(msb)" |
| }; |
| |
| // for Byte types without padding |
| // type OCT<bytesize> <signal_name>_signal_type with { variant "BITORDER(msb)" }; |
| type OCT1 OCT1_signal_type with { variant "BITORDER(msb)" }; |
| type OCT2 OCT2_signal_type with { variant "BITORDER(msb)" }; |
| |
| } with { encode "RAW" } //footer |