ALU의 명령어코드가 0이면 and게이트 1이면 or게이트 2면 덧셈 이렇게만드려는데

mux로 연결해서 mux에서 명령어받아서 각각 and , or ,fulladder의 결과값을 출력하려는데

각각 and ,or , fulladder 모듈은 만들었어요

 

mux를 always문으로 해야되겠죠?

그런데 각각 만든 모듈의 출력값을 mux의 출력값으로 어떻게 나타내나요..ㅜ

예를들어

 

module andgate(a,b,result); //and게이트

input a,b;

output result

assign result = a & b;

endmodule

 

해두고

mux(op,a,b,result); //mux

input[1:0] op; // 0,1,2 중 선택

input a,b;

output result;

always@(op) // op는 명령어 0이면 and , 1이면 or ,2이면 fulladder

begin

if (op == 0)

result = andgate(a,b,result);

end

endmodule

 

머 이런식으로 하려는데

 

에러가 자꾸뜨네여 ㅡㅜ