Skip to content

Behavior of table_print_detected? #7

Description

@scottj97

In the included demo code, it seems the table_print_detected logic is never activated. The table that gets printed in producer.sv does not go through this custom_report_server at all, it seems.

I'm trying to understand what the intended behavior is. I tried modifying the producer.sv so it uses `uvm_info to print the table, like so:

`uvm_info("producer", $sformatf("Sending %s",p.get_name()), UVM_MEDIUM)                                              
`uvm_info("scottj", p.sprint(), UVM_HIGH) // instead of p.print()

And now the table_print_detected logic is activated, but the output is a little messed up:

   UVM_INFO @      0ns  Sending producer2-0 :producer
   UVM_INFO @      0ns  ---------------------------------------                                                               
Name         Type           Size  Value
---------------------------------------
producer2-0  packet         -     -
  addr       integral       32    'h1a
  initiator  producer #(T)  -1    @1942
---------------------------------------  :scottj
                          top.producer2, producer.sv(69)
   UVM_INFO @      0ns  Starting. :producer

As you can see, the first line is not lined up with the rest of the table. (Even with +UVM_REPORT_DEFAULT, it is similarly misaligned.)

I can see that without the table_print_detected logic, the word wrapping messes up the table far more, so it is useful, but I'm curious if this is really the intended behavior?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions