There are many reasons for opting to implement the do_* methods as below instead of using the `uvm_field macros. See the SC-side definition of packet.Īlthough do_pack and do_unpack are the only methods required by UVMC, this example also implements do_copy, do_compare, do_print, and do_record. For any given N, the SV-side declaration should be bit var_name. The SV bit-vector and logic-vector types are mapped to any of the following SC built-in types: sc_bit, sc_logic, sc_bv, sc_lv, sc_int, sc_uint, sc_bigint, and sc_biguint, for any valid width, N. These types are analogous to the STL vector, list, and map types in C++. Use vector for an array of bytes whose elements can include the ‘0’ valueįixed arrays, queues, dynamic arrays, and associate arrays are supported as long as the element and key types are among the supported types. Shortreal and real translate to SC-side float and double, respectively. A compatible enumeration type must be defined on the SC side. User-defined enumeration types are packed by their numeric value. integralsīit, byte, shortint, int, longint long, and their unsigned counterparts. Defines a packet class containing a field for each of the data types supported by UVMC.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. Archives
December 2022
Categories |