CPU의 작동원리

Psj·2021년 8월 18일
6

컴퓨터구조

목록 보기
1/2


CPU는 트랜지스터라고하는 반도체로 만들어졌습니다.

먼저 트랜지스터가 어떻게 작동하는지 알아보겠습니다.


반도체는 주로 실리콘으로 만들어집니다.
실리콘은 최외각 전자가 4개로 다른 원자들과 전자를 공유하며 단단하게 결합하고있습니다.


원자는 최외각 전자가 8개일때 가장 안정한 구조를 이루는데 이렇게 단단하게 결합되어 있으면 전자가 이동하지않아서 전류가 흐르지 않게됩니다.
이처럼 순수한 실리콘은 전류가 통하기 어렵습니다.

이때문에 실리콘보다 전자가 1개 많거나 또는 1개 적은 원소를 첨가해 전류를 통하게 만들어줍니다.


전자가 하나 부족한 원소를 넣으면 이처럼 빈 구멍이 생깁니다.
위 그림에서 보면 이 빈 구멍을 채우기 위해서 전자가 오른쪽에서 왼쪽으로 이동하게 되는데

상대적으로 구멍은 왼쪽에서 오른쪽으로 이동한것처럼 보입니다.


전자가 오른쪽에서 왼쪽으로 이동하면 구멍은 반대로 이동하게되고 이 구멍이 이동하는 방향이 전류가 흐르는 방향입니다.
그리고 이 구멍은 마치 양전하를 가진 입자처럼 행동하는데 양전하를 띈 구멍이라는 의미로 양공이라고 부릅니다.


이번에는 실리콘에 전자가 1개 많은 원소를 첨가해보겠습니다.
그러면 1개많은 남는 전자가 자유롭게 이동하면서 전류를 흐르게 해줍니다.

이처럼,
전자가 1개 적은 원소를 첨가한 반도체를 Positive의 P를 따서 P형 반도체라부르고
전자가 1개 많은 원소를 첨가한 반도체를 Negative의 N을 따서 N형 반도체라고 부릅니다.

이 P형반도체와 N형반도체를 서로 붙여보겠습니다.
P형반도체에는 양전하를 띈 양공이 있고 N형 반도체에는 자유전자가 있습니다.


여기서 P형반도체와 N형반도체를 결합하기전 각각의 반도체의 원자는 그 자체로 중성상태인걸 기억해야합니다.

두 반도체를 연결하여 연결된 경계면을 보면 N형반도체의 전자들은 P형반도체의 양공에 이끌려 결합하게됩니다.

중성상태인 P형반도체가 -극을 띄는 전자를 받으면 음전하를 띄게됩니다.
반대로 중성상태였던 N형반도체가 -극을 띄는 전자를 뺏기면 양전하를 띄게됩니다.

이렇게 전자들이 어느정도 이동하게 되면 P형 반도체의 경계는 음전하를 띄게 되어 N형 반도체의 전자들이 P형 반도체의 경계의 음전하들의 반발력으로 인해 더이상 이동하지 못하게됩니다.

반대로 N형 반도체의 경계는 양전하를 띄게되어 P형반도체의 +극을 띄는 양공이 N형 반도체의 경계의 양전하의 반발력으로 인해 더이상 이동하지 못하게됩니다.


이렇게 더이상 이동가능한 전하들이 없어지게 되는 이곳을 공핍영역이라고 합니다.



이렇게 각 반도체의 경계에 서로 다른 전하를 가진면이 생기게 되고 +에서 -쪽으로 전기장이 생성됩니다.

만약 전지의 방향을 위와같이 연결하면 양전하를 띄는 양공이 전지의 -쪽으로 이동하고
음전하를 띄는 자유전자가 전지의 +쪽으로 이동하여 공핍영역이 더욱 확대되어 전하의 이동이 없어지게됩니다.


전지의 방향을 바꿔주면 양전하를 띄는 양공은 전지의 양극에 대한 반발력으로 전지의 음극쪽으로 이동하고 음전하를 띄는 자유전자또한 전지의 음극에 대한 반발력으로 전지의 양극쪽으로 이동하게 됩니다.

이때 양공과 자유전자가 움직이며 반도체가 접하는 공핍영역을 만날지라도 인공적으로 걸어주는 전압이 워낙 세다보니 공핍영역의 반발력을 무시하고 넘어갈수 있게됩니다.

이렇게되면 전류가 흐르게되는것입니다.


이렇게 전류가 흐르도록 연결한것을 순방향으로 연결했다고합니다.


전류가 흐르지못하게 연결한것을 역방향으로 연결했다고 합니다.

이제 P형반도체 2개 사이에 N형반도체를 얇게 만들어 끼워넣고 전지를 각각 순방향과 역방향으로 연결해 놓겠습니다.


순방향 전지의 양전하 반발력으로 인해 양공은 N형반도체를 타고 들어오게 되는데 순방향의 접압을 더욱 높여주면 양전하 반발력이 더욱강해지고 역방향의 전압을 높여주면 흐르는 전류의양도 많아 얇은 N형 반도체를 넘어 반대편 역방향전지의 음전하쪽으로 넘어가 전류가 흐르게 됩니다.

이처럼 전압을 이용해 전류를 흐르게 할수도 흐르지 못하게 할수도 있게하는 스위치작용을하는 반도체를 트랜지스터라고 합니다.

트랜지스터는 이렇게 생겼고 이 트랜지스테에는 PNP 또는 NPN 반도체가 들어있습니다.
여기서 가운데 도선에 특정 전압을 걸어주면 전류가 흐르게됩니다.


트랜지스터는 이런 그림으로 표현하는데
가운데에 전압을 걸어주면 전류가 흐르는것을 추상화한 표현입니다.

이런 트랜지스터를 이용하면 Logic Gate라고 하는 논리회로를 만들수있습니다.



이렇게 2개의 트랜지스터에 둘다 전압이 걸렸을때 전류가 통하는것을 AND게이트라고합니다.




이렇게 트랜지스터를 위아래로 연결하여 1개의 트랜지스터에만 접압이 걸리거나 양쪽모두 접압이 걸렸을때 전류가 통하는것을 OR게이트라고 합니다.


이번엔 이렇게 출력선을 앞으로 당겨주면 전압이 걸렷을때 출력선에 전류가 흐르지않습니다.

전압이 걸리지 않으면 출력선에 전류가 흐르게됩니다.

이것이 바로 입력과 출력이 바뀌게 되는 NOT게이트입니다.


위의 3가지 논리연산을 이용해 XOR게이트를 만들수 있습니다.

1과 0(참과 거짓)을 사용하는 컴퓨터는 2진수로 계산을 하게됩니다.

이진법의 '10'은 10진법의 2가 됩니다.


이진법의 덧셈을 회로로 만들어 보겠습니다.
입력값은 1 1, 1 0, 0 1, 0 0 입니다.

이때 출력되는 값은 합만 발생하는경우도 있지만 올림수가 발생하는 경우도 있습니다.
그래서 출력값은 합과 올림수 두가지가 있습니다.

이렇게 이진수의 덧셈을 했다고 했을때 합은 0 1 1 0 이고
올림수는 맨마지막에 1과 1을 더했을때만 발생하게되어 0 0 0 1 이 됩니다.

이 표를 합과 올림수로 나누면 아래와같이됩니다.

표를 나누어 확인해보니 합의 표는 XOR게이트와 같고
올림수의 표는 AND게이트와 같은것을 확인할수 있게됩니다.


이것을 이용해서 이렇게 회로를 구축하면 간단한 덧셈을 할수있는 더하기게이트를 만들수 있습니다.

실제로 모든 수를 계산할수있는 더하기게이트는 이것보다 훨씬복잡하지만 이런식으로 트랜지스터를 이용해서 논리회로를 구축해 간다는것을 표현해 보았습니다.

CPU에는 ALU(Arithmetic Logic Unit)이라는 산술논리장치가 있습니다.
산술은 더하기 빼기 등 산수를 계산하고
논리장치는 AND나 OR같은 논리를 연산하는 역할을 합니다.
앞에서 보았던 논리게이트를 이용해서 산술논리장치(ALU)를 만들게 됩니다.





CPU는 아주 작지만 CPU내에는 수십억개의 트랜지스터가 들어가있습니다.
하지만 위 그림과같은 형태로는 작은 CPU내에 수십억개의 트랜지스터를 넣을수 없습니다.

그렇기 때문에 CPU에는 기존의 트랜지스터 형태가 아닌 이렇게 생긴 Mosfet이라고 불리는 트랜지스터가 0.1나노미터 크기로 들어가있습니다.

Mosfet의 몸통은 N형반도체와 P형반도체로 이루어져있고 위에는 전류가 흐를수있는 금속이 있습니다.

Mosfet의 가운데 금속에 전압을 걸어주면 전기장이 형성되고 이 힘으로 양공들은 아래로 밀려나고 전자들은 위쪽으로 몰리게 됩니다.
그리고 이 고농도로 밀집된 전자들은 전자가 이동할수 있는 통로가 됩니다.

이 상태에서 양측의 금속에 전압을 걸어주면 +전기장에 이끌린 전자들이 이동하면서 전류가 흐르게 됩니다.

간단히 말해서 가운데 전압을 걸어주면 ON이 되고

그렇지 않으면 OFF가 된다고 할 수 있습니다.

CPU는 이런 모스펫들이 모여 많은 논리게이트를 이루고 연산을 수행하고 있는것입니다.

내용 출처 : https://www.youtube.com/watch?v=Fg00LN30Ezg&t=1110s

profile
Software Developer

0개의 댓글