8비트 컴퓨터 만들기 Ben Eater Part.3(ALU)
https://www.youtube.com/watch?v=mOVOS9AjgFs
ALU
ALU 파트는 상당히 짧다.
레지스터 3개 만드는거 보면서 ALU 나타나면 재밌겠다 생각했는데, 바로 등장!
값을 변칙적으로 통제할 수 있는 우리 계산기다 ~~ ㅎㅎ
ALU는 Arithmetic Logic Unit의 줄임말로 계산기다.
보통 여러 계산을 수행하지만, 아쉽게도 여기에는 더하기랑, 빼기 밖에 없다.
기능이 단순한 만큼 ALU 파트도 짧다.
이걸로 어떻게 컴퓨터가 동작이 되는 지, 프로그래밍 파트가 점점 기대된다.
위 사진을 보면 유추되듯, A Register와 B Register에게서 입력을 받고 계산해서 버스로 전달하는 식이다.
버스로의 출력이 있기에, ALU에는 Enable 플래그있다.
Enable 말고도 Subtract 플래그도 있는데, 이게 High일 경우 B Register에 음수를 취한다. 단순히 말하면 A - B를 한다는 말.
구조도
가산기의 원리를 알려주지 않을까 했는데, 그런 것 따위 다른 영상을 보라며 넘겼다.
(음 ,, 그 정도는 넘겨도 되긴 할 듯?)
핵심 부분이기도 한 가산기를 바로 칩으로 사용해버리니 그다지 설명할 것도 없다.
B Register에 xor 게이트를 두어 Subtract 플래그가 세워지면 B Register 부호를 바꾼다는 정도.
xor 게이트가 이런 점에도 쓰인다는 건 처음 알아서 참신했다.
마무리
그 다음 영상은 제작 영상이고 그 다음 영상은 트러블슈팅 영상이라 포스팅은 이 정도만 해도 충분하겠다.
ALU는 기능이 많이 없어서 간단!
다음은 RAM이다.