Academy
English한국어

1 / 24 · 개념

비트·신호·포트 읽기

회로의 입력과 출력, 1비트 값의 의미를 읽습니다.

학습 목표

  • 입력과 출력을 포트 선언에서 구분하기
  • 데이터 신호와 선택 신호의 역할 설명하기

회로의 경계부터 읽기

module의 포트는 회로 바깥과 연결되는 신호입니다. input은 바깥에서 값을 받는 방향이고, output은 회로가 계산한 값을 내보내는 방향입니다. a와 b는 선택할 데이터이고 sel은 둘 중 어느 쪽을 사용할지 정합니다.

이 코스의 a, b, sel은 각각 1비트입니다. 값이 0인지 1인지만 다루며, sel이 1이라는 말은 데이터가 1이라는 뜻이 아니라 b를 고른다는 뜻입니다.

신호방향역할
a / binput데이터
selinput선택
clkinput클록
youtput조합 출력
sampled_youtput저장된 관찰값

선언과 저장 동작은 다르다

logic은 신호의 자료형입니다. logic으로 선언했다고 모든 신호가 레지스터가 되지는 않습니다. 이 예제에서 y는 assign 식으로 계산되고, sampled_y만 상승 에지에서 저장됩니다.

코드를 읽을 때는 먼저 포트의 방향과 폭을 표시한 뒤, 그 신호에 값을 주는 문장을 찾으세요. 회로의 모양은 선언 이름보다 실제 대입과 클록 조건에서 드러납니다.

RTL 코드 발췌
input logic a, b, sel;
output logic y;
assign y = sel ? b : a;

직접 생각해 보기

a=1, b=0, sel=1이면 y는 무엇일까요?

해설 보기

sel=1은 b를 선택하므로 y=0입니다. 선택 신호의 값과 선택된 데이터의 값을 구분하세요.

선택은 이 브라우저에만 적용됩니다. 언제든 푸터에서 변경할 수 있습니다.