2016-07-08 3 views
1

하나의 변수에 몇 개의 변수를 저장하여 문자열을 출력 할 수있는 방법을 찾고 있습니다.여러 개의 변수를 단일 16 진수 문자열로 저장

예를 들어, 변수가 있습니다.

int flow_val = "128"; 
int numb_val = "104"; 
int size_val = "256"; 

그 출력을 얻을 그것을 넣을 수있는 방법이 있다면 내가 볼을 찾고 있던

32'h8068_0100 

를 인쇄이

$display("32'h%0h%0h_%4h", flow_val, numb_val, size_val); 

같은 $display를 사용하여 그들을 함께 넣을 수 있습니다 hex_val과 같은 변수로 변환합니다. 나는 여러 가지 일을 시도해 왔지만 이것에 관해서는 아무것도 찾을 수 없습니다.

입력 해 주셔서 감사합니다.

답변

2

$sformatf을 사용할 수 있습니다. IEEE Std 1800-2012, 21.3.3 문자열에 데이터 서식 지정 단원을 참조하십시오.

module tb; 

int flow_val = 128; 
int numb_val = 104; 
int size_val = 256; 
string hex_val; 

initial begin 
    hex_val = $sformatf("32'h%0h%0h_%4h", flow_val, numb_val, size_val); 
    $display(hex_val); 
end 

endmodule 

/* 

Output: 

32'h8068_0100 

*/ 
+1

빠른 응답 감사합니다. 대답을 보면 너무 단순 해 보였습니다. 내가 그걸 놓쳤다는 것을 믿을 수 없어. –

관련 문제