모형을 불러오는 중
이 기기에서는 3D를 띄울 수 없습니다. 아래 안내 단계를 글로 볼 수 있습니다.
1 / 20 4비트 수 두 개와 LED 다섯 개 앞줄에는 4비트 수 두 개가 있습니다. 지금 A 는 0111(7), B 는 1001(9)입니다. 빛이 게이트 20개를 지나 LED 가 10000(십진수로 16)을 가리킬 때까지 지켜보세요. 스위치를 누르면 그 비트가 바뀌고, 회로 슬라이더로 다른 회로를 고를 수 있습니다.
끌어서 돌리고, 휠이나 두 손가락으로 확대하세요.
안내 부품 조작
01 4비트 수 두 개와 LED 다섯 개 앞줄에는 4비트 수 두 개가 있습니다. 지금 A 는 0111(7), B 는 1001(9)입니다. 빛이 게이트 20개를 지나 LED 가 10000(십진수로 16)을 가리킬 때까지 지켜보세요. 스위치를 누르면 그 비트가 바뀌고, 회로 슬라이더로 다른 회로를 고를 수 있습니다.
02 스위치와 전구 가장 단순한 회로부터 봅니다. 스위치 X 가 점퍼 하나로 LED 에 이어져 있어서 LED 는 스위치 상태를 그대로 따라갑니다. 1이면 켜지고 0이면 꺼집니다.
03 트랜지스터도 스위치입니다 이번에는 X 가 트랜지스터의 베이스로 갑니다. 베이스에 작은 전류가 들어가면 나머지 두 다리 사이로 큰 전류가 흘러 LED 가 켜집니다. 논리 회로에서는 트랜지스터를 완전히 켜거나 완전히 끈 상태로만 씁니다.
04 트랜지스터로 만든 게이트 게이트는 출력이 규칙을 따르도록 트랜지스터 몇 개를 이은 것입니다. AND 는 두 입력이 모두 1일 때만 1을 냅니다. 모형 아래에서 NOT, OR, NOR 를 골라 LED 와 진리표를 맞춰 보세요.
05 가장 싼 게이트, NAND NAND 는 AND 의 답을 뒤집은 게이트입니다. CMOS 로 만들면 트랜지스터 4개면 되어 AND 보다 2개 적고, NAND 만으로 다른 게이트를 모두 만들 수 있습니다. 「칩마다 트랜지스터 수」를 켜면 개수가 보입니다.
06 XOR 은 둘 중 하나만일 때 XOR 은 두 입력이 다를 때 1을 냅니다. 마지막 줄인 1과 1이 0이 되는 것은 이진수 1 + 1의 합 비트와 같고, 1은 다음 자리로 넘어갑니다.
07 반가산기 같은 두 스위치를 받는 XOR 과 AND 입니다. A 와 B 가 모두 1이면 XOR 은 합 0, AND 는 자리올림 1을 내어 이진수 10(십진수로 2)이 됩니다. 이 둘은 비트 두 개를 더하는 일만 합니다.
08 전가산기 덧셈 중간의 자리에는 입력이 셋입니다. 두 비트와 아래 자리에서 올라온 자리올림입니다. 두 번째 반가산기가 자리올림을 더하고, OR 이 두 갈래 자리올림을 하나로 모읍니다. 1 + 1 + 1은 합 1, 자리올림 1입니다.
09 4비트와 느린 자리올림 기판은 15 + 0에서 시작합니다. B0 이 1로 바뀌면 자리올림이 비트 0부터 비트 4까지 비트마다 지연 두 번씩 걸려 번져 갑니다. 지연 하나를 1.2초로 늦춰 두었으니 8번째 지연에서 LED 가 16에 멈춥니다.
10 8비트는 두 배 걸립니다 같은 전가산기를 여덟 번 이었습니다. 255 + 1은 자리올림을 모든 비트로 보내고, 기판이 멈추기까지 게이트 지연 16번이 걸립니다. 비트가 하나 늘 때마다 두 번씩 늘어납니다.
11 자리올림을 미리 계산하기 자리올림 예측 가산기는 모든 자리올림을 입력에서 바로 구합니다. 자리마다 자리올림을 넘겨주는지(P), 새로 만드는지(G)를 봅니다. 같은 15 + 1이 지연 4번 만에 멈추고, 대신 게이트는 20개가 아니라 26개가 듭니다.
12 더해서 빼기 SUB 를 켜면 XOR 게이트 한 줄이 B 의 비트를 모두 뒤집고, 올림 입력이 1을 더합니다. 이것이 B 의 2의 보수이므로 5 − 7은 1110, 부호 있는 수로 읽으면 −2가 됩니다.
13 어느 수가 더 클까 비교기는 비트마다 같은지 보고, A 와 B 가 처음 달라지는 가장 높은 비트를 찾습니다. 1001과 0101은 비트 3에서 처음 다르고 거기서 A 가 1이므로 A > B 가 켜집니다.
14 넷 중 하나 고르기 선택 비트 두 개가 어느 데이터 입력을 Y 로 보낼지 정합니다. AND 게이트는 한 번에 하나만 열립니다. 여러 신호 중 하나를 전선 하나로 보낼 때마다 멀티플렉서를 씁니다.
15 비트를 숫자로 획 일곱 개는 저마다 AND 게이트 몇 개와 OR 하나로 된 식을 가집니다. 1001은 a, b, c, d, f, g 를 켜서 9를 그립니다. 이 디코더는 A 부터 F 까지도 그립니다.
16 기억하는 회로 NOR 게이트 두 개가 서로의 출력을 받습니다. S 에 1을 주면 Q 가 1이 되고, S 를 다시 0으로 돌려도 Q 는 1로 남습니다. R 을 켜면 지워집니다. 이 고리가 가장 단순한 메모리입니다.
17 클록 에지에서만 NAND 게이트 여섯 개로 D 플립플롭을 만듭니다. D 는 언제든 바뀔 수 있지만 Q 는 CLK 가 0에서 1로 올라가는 순간에만 D 의 값을 받습니다. 「클록 한 번」을 누르고 게이트가 비트를 넘기는 모습을 보세요.
18 펄스 세기 플립플롭 네 개가 수를 들고 있고, 작은 덧셈 회로가 그 수에 1을 더한 값을 준비합니다. 클록 펄스마다 다음 수가 들어가서 LED 가 0000, 0001, 0010 … 1111까지 셉니다.
19 회로 하나로 연산 넷 ALU 는 덧셈, 뺄셈, AND, OR 를 나란히 계산하고 멀티플렉서가 그중 하나를 Y 로 보냅니다. 연산 비트 두 개가 어느 것을 보낼지 고릅니다. 12 AND 10은 1000(십진수로 8)입니다.
20 직접 해 보기: NAND 로 XOR 기판에 NAND 게이트 네 개가 있고, 지금은 AND 처럼 이어져 있습니다. 조작 아래 실험 칸에서 게이트마다 입력을 골라 네 줄 모두 XOR 과 같아지게 만들어 보세요.
회로 기판 62 × 36 cm 기판입니다. 실크 인쇄가 회로에 따라 바뀝니다. 스위치와 LED 이름, 게이트 번호, 블록을 두른 상자가 찍힙니다. 입력 스위치 앞쪽 가장자리의 토글 스위치입니다. 파란색은 A, 빨간색은 B, 검은색은 그 밖의 입력, 짙은 빨강은 클록입니다. 스위치 LED 스위치마다 뒤에 작은 초록 LED 가 있어서 내보내는 비트를 보여 줍니다. 1이면 켜지고 0이면 꺼집니다. 게이트 칩 칩 하나에 게이트 하나가 들어 있고 위에 기호가 찍혀 있습니다. 가장 많은 ALU 는 59개입니다. 숫자 표는 출력이 마지막으로 바뀐 지연이나 게이트의 트랜지스터 수를 보여 줍니다. 구리 배선 기판에 인쇄된 전선입니다. 1이 지나는 배선에 불이 들어오고, 새 1이 가는 중이면 점 하나가 배선을 따라 달립니다. 납땜 패드 핀과 배선 끝마다 있는 주석 패드입니다. 배선 두 개가 엇갈리는 곳은 실제 2층 기판이라면 비아로 넘어갑니다. 출력 LED 답을 보여 줍니다. 빨간 LED 는 합 비트, 주황은 자리올림, 초록과 파랑은 A > B 나 Q 같은 다른 출력입니다. 7세그먼트 표시기 막대 모양 LED 일곱 개(a~g)입니다. 디코더 회로가 십육진수 숫자를 그리는 막대를 켭니다. 트랜지스터 실험대에서 스위치로 쓰는 NPN 트랜지스터입니다. 가운데 다리로 작은 전류가 들어가면 나머지 두 다리 사이로 큰 전류가 흐릅니다.