실습 언어 선택
문제는 각 과정의 장 순서를 따릅니다. 작성 중인 코드와 완료한 문제는 이 브라우저에 저장됩니다.
BSV
규칙으로 설계하는 동시 회로
규칙과 인터페이스로 동시 동작을 설계합니다.
- 만드는 것
- 갱신이 원자적 rule로 표현되는 카운터와 상태 기계
- 인터페이스의 method로 동작을 드러내고 서로 결합하는 모듈
- 준비 조건을 컴파일러가 스케줄하는 FIFO 파이프라인
- 준비 개념
- 레지스터, 클록 에지, 조합 회로가 무엇인지 알면 충분합니다. 다른 HDL 경험은 필요하지 않습니다.
Verilog
신호와 클록으로 배우는 RTL 설계
신호와 RTL로 조합 회로와 순차 회로를 설계합니다.
- 만드는 것
- 연속 대입과 벡터로 만드는 조합 논리 블록
- 리셋이 있는 클록 레지스터와 상태 기계
- 입력을 인가하고 결과를 출력하며 파형을 남기는 테스트벤치
- 준비 개념
- 이진수와 클록의 개념을 알면 충분합니다. 다른 HDL 경험은 필요하지 않습니다.
Chisel
하나의 회로에서 하드웨어 생성기까지
Scala 기반 생성기로 매개변수화한 회로를 설계합니다.
- 만드는 것
- Chisel 하드웨어 타입으로 포트와 논리를 구성한 모듈
- 레지스터, Bundle, Vec을 연결한 순차 설계
- 매개변수화한 클래스 하나로 여러 회로를 만드는 생성기
- 준비 개념
- 레지스터와 클록 에지를 알면 충분합니다. Scala 문법은 각 장에서 필요한 지점에 설명합니다. 다른 HDL 경험은 필요하지 않습니다.