2014-04-12 2 views
0

이것은 파일 또는 동작 모델의 1/4입니다.하지만 파일에서이 오류가 계속 발생합니다. 내가 Verilog에서 올바르게하고 있습니까?방향이없는 포트 선언 verilog

"방향이없는 포트 선언은 시스템 Verilog에서만 지원되므로이 기능을 지원하려면 -sverilog 플래그로 컴파일해야합니다."

module NSG_function 
(
     input x, [1:0] q, // current_state, 
     output [1:0] d // next_state 
); 

assign d[1] = ~x&q[0]&q[1] | x&~q[0]&q[1] | x&q[0]&~q[1]; 
assign d[0] = ~x | ~q[0]&q[1]; 

endmodule 

답변

3

귀하의 문제는 입력 q 함께.
input x,과 같은 행에 넣어도 q를 배열로 선언하므로 고유 한 입력 선언이 필요합니다.

module NSG_function 
(
     input x, 
     input [1:0] q, // current_state 
     output [1:0] d // next_state 
); 

assign d[1] = ~x&q[0]&q[1] | x&~q[0]&q[1] | x&q[0]&~q[1]; 
assign d[0] = ~x | ~q[0]&q[1]; 

endmodule 
+1

감사합니다. 그것은 그것을 고쳤다. – user2318083

2

당신은 아마 각 신호에 대한 input를 지정해야합니다

input x, 
input [1:0] q, // current_state, 
+1

네가 맞아요. – user2318083