vmm_data_macros_utils.sv File Reference

Go to the source code of this file.

Defines

#define vmm_data_member_scalar_count(__name, __count)
#define vmm_data_member_scalar_pack(__pack, __maxbits, __count, __offset)
#define vmm_data_member_scalar_unpack(__unpack, __maxbits, __count, __offset)
#define vmm_data_member_scalar_packint(__pack, __index, __st, __endian)
#define vmm_data_member_scalar_unpackint(__unpack, __index, __st, __endian)
#define vmm_data_member_update_offset(__offset, __count)
#define vmm_data_member_enum_set_name(__name, __stemp, __index)


Define Documentation

#define vmm_data_member_enum_set_name ( __name,
__stemp,
__index   ) 

Value:

\
     if ( __stemp == __name.name()) begin \
                   __name = __name; \
                   __index =0; \
          end \
     else begin \
              while ( __stemp != __name.name()) begin \
                   __name = __name.next(); \
                   if ( __index > __name.num() ) \
                       break; \
                   __index++; \
               end \
           end

Definition at line 68 of file vmm_data_macros_utils.sv.

#define vmm_data_member_scalar_count ( __name,
__count   ) 

Value:

\
      __count = $bits(__name)/8; \
      if ($bits(__name)%8 ) __count++;

Definition at line 23 of file vmm_data_macros_utils.sv.

#define vmm_data_member_scalar_pack ( __pack,
__maxbits,
__count,
__offset   ) 

Value:

\
         for (int i=0; i < __count; i++) begin \
         __pack[__offset+i] = __maxbits[i*8 +: 8]; \
      end

Definition at line 29 of file vmm_data_macros_utils.sv.

#define vmm_data_member_scalar_packint ( __pack,
__index,
__st,
__endian   ) 

Value:

\
   if ( __endian) begin \
           {__pack[__st],__pack[__st+1],__pack[__st+2],__pack[__st+3]} = __index; \
   end \
   else begin \
           {__pack[__st+3],__pack[__st+2],__pack[__st+1],__pack[__st]} = __index; \
   end

Definition at line 43 of file vmm_data_macros_utils.sv.

#define vmm_data_member_scalar_unpack ( __unpack,
__maxbits,
__count,
__offset   ) 

Value:

\
         for (int i=0; i < __count; i++) begin \
          __maxbits[i*8 +: 8] = __unpack[__offset+i]; \
      end

Definition at line 36 of file vmm_data_macros_utils.sv.

#define vmm_data_member_scalar_unpackint ( __unpack,
__index,
__st,
__endian   ) 

Value:

\
   if ( __endian) begin \
           __index = {__unpack[__st],__unpack[__st+1],__unpack[__st+2],__unpack[__st+3]}; \
   end \
   else begin \
           __index = {__unpack[__st+3],__unpack[__st+2],__unpack[__st+1],__unpack[__st]}; \
   end

Definition at line 53 of file vmm_data_macros_utils.sv.

#define vmm_data_member_update_offset ( __offset,
__count   ) 

Value:

\
    __offset = __offset + __count;

Definition at line 63 of file vmm_data_macros_utils.sv.


Intelligent Design Verification
Intelligent Design Verification
Project: VMM, Revision: 1.0.1
Copyright (c) 2008 Intelligent Design Verification.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
A copy of the license is included here:
http://www.intelligentdv.com/licenses/fdl.txt
doxygen
Doxygen Version: 1.5.6
Sat Oct 18 11:32:19 2008
Find a documentation bug? Report bugs to: bugs.intelligentdv.com Project: DoxygenFilterSV