Wire 타입
Coddy Verilog 여정의 기초 섹션에 포함된 레슨 — 90개 중 6번째.
Verilog에서는 우리가 어떤 유형의 신호를 사용하는지 선언해야 합니다. 가장 일반적인 유형은 wire입니다.
wire는 컴포넌트 간의 물리적 연결을 나타냅니다. 회로의 실제 전선과 같습니다.
- 와이어는 값을 저장할 수 없습니다 - 단순히 값을 통과시킬 뿐입니다
- 와이어는
assign문과 함께 사용됩니다 - 와이어는 모듈들을 서로 연결하는 데 사용됩니다
Wire 선언
wire a; // 단일 비트 wire
wire b, c; // 한 줄에 여러 개의 wireWire의 작동 방식
module wire_example;
wire x;
reg y;
assign x = y; // x는 항상 y를 따릅니다
endmodulex는 y에 연결되어 있습니다. y가 변경될 때마다 x는 즉시 변경됩니다.
Wire는 일반적으로 입력과 출력을 연결하는 데 사용됩니다:
module and_gate(
input a, // 'a'는 기본적으로 wire입니다
input b, // 'b'는 기본적으로 wire입니다
output c // 'c'는 기본적으로 wire입니다
);
assign c = a & b; // c는 이 할당(assignment)에 의해 구동됩니다
endmodule이 예제에서 a, b, 그리고 c는 모두 와이어입니다.
와이어는 회로의 서로 다른 부분들을 함께 연결하는 "접착제"입니다!
챌린지
수행할 작업:
temp라는 이름의 wire를 추가하세요
치트 시트
Wire는 컴포넌트 간의 물리적 연결을 나타냅니다. 와이어는 값을 저장할 수 없으며, 단지 값을 전달할 뿐입니다.
wire a; // 단일 비트 와이어
wire b, c; // 한 줄에 선언된 여러 개의 와이어와이어는 assign 문과 함께 사용됩니다. 소스가 변경될 때마다 와이어는 즉시 업데이트됩니다:
wire x;
assign x = y; // x는 항상 y를 따릅니다모듈의 입력과 출력은 기본적으로 와이어입니다:
module and_gate(
input a, // 기본적으로 와이어
input b, // 기본적으로 와이어
output c // 기본적으로 와이어
);
assign c = a & b;
endmodule직접 해보기
module simple(
input a,
input b,
output c
);
assign c = a & b;
// 여기에 wire temp를 선언하세요
endmodule이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.