[컴퓨팅이노베이션] #03- 트랜지스터: 생각하는 장치

in #kr-science7 years ago (edited)

컴퓨팅이노베이션 #01 - 폰노이만의 컴퓨터 구조 (부제: 공대생이 힘든 이유)
컴퓨팅이노베이션 #02 - 기억 소자에 대하여

지난 글에서 기억소자, 메모리소자에 대해 간단히 다뤄봤습니다. 글 중간에 은근 슬쩍~ ''트랜지스터라고 불리는 전기적 스위치''에 대해 언급한 부분이 있었는데요. 트랜지스터는 현재의 컴퓨터를 이루는 가장 기본 단위라고 볼 수 있는 중요한 소자입니다. 우리의 두뇌로 치면, 신경세포(neuron)에 해당되는 녀석입니다. 메모리는 신경세포간의 연접, 시냅스(synapse)라고 하는 부분에 해당하구요.

앞으로 세 부분으로 나누어 트랜지스터에 대해 소개해보려고 합니다.

  1. 생각하는 장치?
  2. 그래서 트랜지스터란?
  3. 트랜지스터와 무어의 법칙. 그리고 컴퓨터의 발전.

1. 생각하는 장치?

이제 '생각'에 대해서 생각해 봅시다. 우리는 외부에서 새로운 정보를 받아들이면 이를 어떤 판단의 근거로 사용하거나, 그 정보에 다른 정보를 가미해 새로운 정보를 만들어내는 ‘생각’을 합니다. 이를 단순화하자면, '생각'은 사고의 기초가 되는 어떤 신호에 따라 다른 종류의 정보를 담고있는 신호를 출력해 내는 과정이라고 볼 수 있을 듯 합니다.

메모리 때 했던 것처럼, 생각하는 장치를 상상해볼까요. 이 장치는 우선 1) 판단의 기초가 되는 정보(조건입력)를 받아들이는 입력단자를 하나 가지고 있어야 합니다. 2) 그리고 그 정보에 따라 출력(출력신호)이 달라지는 출력단자가 필요합니다. 3) 한편, 출력단자는 항상 상황에 맞는 신호를 출력 해야하는 만큼, 신호 전달 물질 혹은 에너지를 공급하는 단자(전원입력)가 하나 더 있어야겠네요. 이렇게 해서 메모리와 마찬가지로 이 '생각장치'는 3개의 단자가 필요하다는 결론이 나네요.

이 구조를 염두에 두고 상황에 맞는 생각이란 표현을 좀 더 구체화 해보겠습니다. 우선은 하나의 bit정보(0 또는 1두 가지 상태를 가지는 한 자리의 이진법 숫자)를 받아 하나의 bit신호를 출력하는 단순한 ‘생각장치’의 동작을 생각해보죠. 이 경우 가능한 조건정보는 0과 1 이고 , 마찬가지로 가능한 출력신호는 0과 1 밖에 없습니다. 이 정도의 경우의 수로는, 아주 단순한 생각만 표현할 수 있겠죠? ‘배고프면 밥을 먹고, 배부르면 그만 먹는다’ 정도의 생각처럼요.

‘생각장치’는 이 ‘밥먹기 문제’를 다음 같이 표현할 수 있어야 합니다. 배고프다는 조건입력이 들어오면(조건입력:배부름=0) 밥을 더 먹으라는 신호를 출력하고(출력신호:밥먹기 =1), 배가 부를 때는(조건 입력:배부름 =1) 밥을 그만 먹으라는 신호(출력신호:밥먹기 = 0)를 내보내야 합니다. 이를 아래 그림 왼쪽의 테이블로도 표현할 수 있겠네요.

signal.png

하지만, 조건입력이 항상 이진법을 따라야하는 건 아닙니다. 우리가 항상 죽을만큼 배고프거나 죽을만큼 배부른 것은 아니듯 말입니다. 이 경우에는 ‘배꼽시계가 울린다’와 같은 기준값이 있어서, 그 기준값보다 배가 고프면 밥을 먹고 이보다 배가 덜 고프면 밥을 안 먹는 등의 판단을 할 필요가 있겠습니다. 이 경우처럼, 연속적 조건입력을 갖는 ‘생각장치’는 '문턱신호값'이라는 기준값을 갖고 있어서, 오른쪽 그림처럼 조건입력이 문턱신호값보다 더 클 때 출력신호 1을 내보내고, 조건입력이 문턱신호값에 못 미칠 때는 출력신호 0을 출력할 수 있어야 하겠습니다.

thinkdevice.png

이제 ‘생각장치’에 대한 많은 것이 결정되었습니다. '생각장치'는 3개의 단자를 갖고 있어서, 하나의 단자(소스, Source)에 지속적으로 신호 출력을 위한 전원을 공급하고, 다른 단자(게이트, Gate)에는 조건입력을 전달하여 이 것이 문턱신호값을 넘으면 출력단자(드레인, Drain)를 통해 신호를 출력할 수 있어야 합니다. 이 ‘생각장치’의 가장 간단한 예로는 수도꼭지를 예로 들 수 있습니다. 꼭지(게이트)를 열 때, 물의 수도관(소스)로부터 수돗물이 전달되서 수도꼭지의 입구(드레인)로 나오기 때문입니다.

logic.png

수도꼭지가 생각을 한다는 말에 의심부터 듭니다. 하지만 수도꼭지는 정말 많은 생각을 담을 수 있는 장치입니다. 우선, ‘그리고(AND)’와 ‘또는(OR)’와 같은 논리 관계는 여러개의 수도꼭지를 이용하면 쉽게 표현할 수 있습니다. AND를 표현하기 위해선 수도꼭지 2개를 일렬로 연결해서 두 개의 꼭지를 다 열어야만 물이 나오게 하면 됩니다. OR를 표현하고 싶으면, 두 수도꼭지를 나란히 배열해서, 둘 중 하나만 열려도 배수관으로 물이 나오게 하면 되구요. 각종 더하기, 빼기, 곱하기, 나누기도 가능할 것이, 모든 산술 계산은 앞서 설명한 논리 연산들의 집합으로 환원할 수 있거든요. (궁금하시면 요 링크로~)

vacuum_tube.png

하지만, 여기서 그칠 수 없습니다. ‘사고장치’를 여러 개의 수도꼭지로 만들려면 어마어마한 양의 물, 파이프라인을 만드는데 필요한 비용과 공간이 필요하기 때문이죠. 그래서 값싸고 작은 사고 장치를 만들기 위해 많은 이들이 노력했습니다. 그 첫번째 산물이 진공관입니다. 3개의 단자가 달린 진공관은 두 단자 사이에 흐르는 전자의 흐름을 다른 단자를 이용해 전기장을 형성하고 제어합니다. 수도꼭지에 비교하자면, 진공관은 물 대신 전자를, 꼭지 대신 전기장을 사용한 셈이죠. 하지만, 이 진공관은 말그대로 ‘진공’을 형성해야하는 만큼 그 소형화에 난항을 겪었습니다. 진공관으로 만든 최초의 컴퓨터인 에니악은 정말 커도 너무 크죠.

Classic_shot_of_the_ENIAC.jpg

이 문제를 해결하기 위해, 트랜지스터가 출동합니다. 반도체의 주재료인 실리콘은 모래를 정제하는 것인만큼 재료를 구하기도 쉽고, 아주 작은 양의 전류로 신호를 주고받을 수 있어 에너지적으로도 진공관 대비 훨씬 효율적입니다. 트랜지스터가 좋다는 말만 잔뜩 써둔다고 해서 이해가 되는 것이 아닌 만큼, 다음 글에서 그 기본적인 구조와 동작 원리를 살펴보겠습니다.


덧) 스팀잇의 여러 글을 접하다 보면, 많은 분들이 '친절한 글쓰기'를 위해 많은 고민을 하신다는 생각이 들었습니다. 본인의 전문분야를 전문용어로 도배하는데 그치는 것이 아니라, 일상의 언어로 글을 풀어쓰고 여러 분들과 소통하기 위해 노력하는 모습을 보면 저도 모르게 조금씩 배우게 되는 것 같습니다. 이제 세번째 글 올리는 초짜이지만, 경험이 더해갈 수록 스팀잇의 재미를 더 느끼게 되는 것 같습니다. :)

Sort:  

이미 충분히 쉽고 재밌게 설명하시는 것 같은데요? ^^;
기초 설명으로서 너무 충분합니다. :)

과분한 칭찬 감사합니다!!
올려놓고 나서도 계속 신경쓰며 눈에 띄는 비문을 고치고, 전문용어를 풀어쓰는 작업을 하게 되는 것 같습니다. 아직 스팀을 잘 이해하진 못하지만, 일주일이 지나면 수정할 수 없다는 점이 꽤 긴장하게 만드는 요소같기두 하구요 ㅎㅎ 감사합니다 ^^

pairplay 가 kr-dev 컨텐츠를 응원합니다! :)

감사합니다~!!!

Congratulations @doctoreecs! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 1 year!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Do not miss the last post from @steemitboard:

The Steem blockchain survived its first virus plague!
Vote for @Steemitboard as a witness to get one more award and increased upvotes!