Menu
Coddy logo textTech

Recap - ALU Design

Coddy Verilog 여정의 기초 섹션에 포함된 레슨. 90개 중 57번째.

challenge icon

챌린지

ALU(산술 논리 장치)는 두 개의 inputs을 받아 연산을 수행하고 하나의 output을 생성하는 디지털 회로입니다. 두 inputs에 대해 select 신호를 기반으로 산술 및 논리 연산을 수행합니다. select 신호는 실행할 하나의 연산을 선택합니다.

작동 방식

select연산Output
2'b00덧셈a + b
2'b01뺄셈a - b
2'b10비트 ANDa & b
2'b11비트 ORa | b

case 문을 사용하여 간단한 ALU를 빌드하세요.

수행할 작업:

  1. 이름이 alu인 module을 Create
  2. inputs Add: a(4비트), b(4비트), select(2비트)
  3. output Add: result(4비트, reg 유형)
  4. always @(*) block Add
  5. 그 안에 case (select) 문 Add
  6. 2'b00, 2'b01, 2'b10, 2'b11에 대한 네 가지 case Add
  7. result = 0으로 설정하는 default case Add
  8. endcaseendmodule로 닫기

직접 해보기

// TODO: alu 모듈 생성 

  // TODO: 입력 추가 (a, b, select)
  
  // TODO: 출력 추가 (result)

  // TODO: always @(*) 블록 추가
  
  // TODO: case (select) 추가
  
  // TODO: case 2'b00: result = a + b; 추가
  
  // TODO: case 2'b01: result = a - b; 추가
  
  // TODO: case 2'b10: result = a & b; 추가
  
  // TODO: case 2'b11: result = a | b; 추가
  
  // TODO: default: result = 0; 추가
  
  // TODO: endcase 추가

// TODO: endmodule 추가

기초의 모든 레슨

직접 연습해 보세요: 온라인 Verilog 컴파일러