Surelog icon indicating copy to clipboard operation
Surelog copied to clipboard

Fix ArianeElab2 test issue with default tag assign

Open alaindargelas opened this issue 4 years ago • 3 comments

alaindargelas avatar Oct 21 '21 04:10 alaindargelas

Need to flatten the tag pattern:

package pack;

  typedef enum logic [1:0] {
    DISABLED, 
    PARALLEL 
  } unit_type_t;

  typedef unit_type_t [0:4][0:1] fmt_unit_types_t;
  
  typedef struct packed {
    fmt_unit_types_t UnitTypes;
  } implementation_t;

  localparam implementation_t DEFAULT_NOREGS = '{
    UnitTypes:  '{'{default: PARALLEL}, 
                  '{default: DISABLED}}  
  };

endpackage // pack

alaindargelas avatar Oct 26 '21 05:10 alaindargelas

Back on this issue

alaindargelas avatar Aug 30 '23 05:08 alaindargelas

Correct test:

package pack;

  typedef enum logic [1:0] {
    DISABLED, 
    PARALLEL 
  } unit_type_t;

  typedef unit_type_t [0:4][0:1] fmt_unit_types_t;
  
  typedef struct packed {
    fmt_unit_types_t UnitTypes;
  } implementation_t;

  localparam implementation_t DEFAULT_NOREGS = '{
    UnitTypes:  '{'{default: PARALLEL}, 
                  '{default: DISABLED}, 
                  '{default: DISABLED}, 
                  '{default: DISABLED},
                  '{default: PARALLEL}}  
  };

endpackage // pack

module top();
  import pack::*;
  initial $display("%d", DEFAULT_NOREGS.UnitTypes[4][1]);
  
  
endmodule

alaindargelas avatar Aug 30 '23 05:08 alaindargelas