2014-10-07 5 views
1

아래 표시된 명령을 사용하여 Questasim에서 트랜잭션 클래스의 내용을 인쇄합니다. UVM_INFO가 16 진수 값을 반환합니다.

`uvm_info("VALUES", tx.sprint(), UVM_LOW); 

내 거래의 내용

그들 중 A, B, ANS .ALL이 비트 있습니다 입니다. 그러나 문제는 십진수가 아닌 16 진수로 인쇄한다는 것입니다. 이 같은 보여주는

ans integral 8 'h1c

당신은 당신의 UVM 클래스를 등록 할 때 UVM_DEC 플래그를 활성화해야

ans integral  8  'd28 

답변

5

로 표시하는 방법 : 인해 비 효율성에

`uvm_object_utils_begin(your_class) 
`uvm_field_int(ans, UVM_ALL_ON | UVM_DEC) 
`uvm_object_utils_end 
+0

그 작업 하지만 작은 문제가 하나 있습니다 ... 'd12 대신에 몇 번만 표시됩니다. 12. 대부분이 7보다 큰 모든 숫자에 대해서. – Vineeth

0

을 uvm_field_macros 중에서 convert2string() 메소드를 겹쳐 쓰고 원하는대로 형식을 지정하는 것이 가장 좋습니다.