Monday, April 28, 2008

책상 안 프로세서 탐험기

책상 아래에서 굴러다니던 서랍장을 뒤적이다 예전에 가지고 있던 프로세서 몇 개를 찾아 냈다. 자신들의 시대에선 나름대로 최강자였던 그놈들을 보니 다시금 감회가 새로와 한번 찬찬히 분석 해 보기로 했다.

일단 멋대로 순서로 보자면, 모토롤라의 MC68705, 인텔의 80186, 80286, 80386, 80387, 80486, 덤으로 후지쯔의 MBL8742가 있군. 프로세서, 코프로세서, 마이크로프로세서, 피엘디까지 종류도 다양하다. 한번 순서대로 맛을 볼까나~


1. Motorola MC68705 R3L

모토롤라의 MC68705는 흔히 마이컴이라 부르는 마이크로 프로세서이다. 억지로 붙이자면 16비트 MPU라고 볼 수 있을까? (CPU는 16비트 어드레싱을 하지만 내장 메모리는 8KB이기 때문에 13비트 어드레스 버스만을 사용한다) 일단 이놈은 특정 목적에 따라 프로그래밍을 해 넣어야 동작하는 범용 프로세서이기 때문에 원한다면 리모콘, 키보드, 전화기, 모뎀, 복사기나 로봇을 제어하는데 이용할 수 있다. 4채널의 8비트 A/D컨버터(아날로그 신호를 디지탈 신호로 변환 시키는 장치, 8비트니까 256단계로 분해할 수 있고 이런게 4개 달렸다)가 내장되어 센서 제어나 음향 관련 장치에도 이용할 수 있겠다.

[Motorola MC68705R3L, EPROM Package, 안에 다 보이지?]



아, 거의 십여년 전 사용해 본 프로세서이기 때문에 기억은 잘 나지 않지만, 그래도 직접 다뤄 봤다고 비중이 커지는 느낌이다. 가지고 있는 프로세서는 MC68705R3L EPROM CDIP타입이다. 일단 굉장히 오래전 제작된 제품이기 때문에(80년 이전) 녹도 슬고... 신세대 공학도는 이런 패키징의 프로세서를 못 보았을런지도 모른다.

- 잠깐, EPROM은 Erasable Programmable Read Only Memory의 약자로 지울수 있는 프로그램 가능한 읽기 전용 메모리라는 뜻이 되겠다. 주로 이놈은 쓸 때는 전용 라이터로, 지울때는 자외선을 이용한다. 그래서 지울 때 쓰라고 저런 석영으로 된 투명 창이 붙어 있다. 그리고 CDIP은 Ceramic Dual In-Line의 약자로 지네 발 처럼 칩 양쪽으로 다리가 달렸다는 이야기. 알아도 흥~ 몰라도 흥~ 넘어가시라 -


2. Intel 80186 - 80286

자 이제 좀 알만한 프로세서 나왔다. 특히 286은 다들 아실테지. AT컴퓨터~ 라고 80년대 좀 있는 집안 자제분들은 가보 마냥 다뤘던 그 놈. 이팔륙... 그런데 오? 186은 뭐냐?

사실 80186을 아시는 분들은 꾀나 이 세계에 관심이 있는 분들이지만, 실제로 프로세서를 본보진 못했을 것이다. 80186은 16비트 프로세서로 8086(XT용 CPU)에 외부 입출력용 IO기능을 포함한 뛰어난(?) 프로세서였으나 사실 80286이 먼저 개발되어 있었고 기반이 8086기반이었기 때문에 인기를 얻기는 힘들었다. 펜티엄이 판치는 지금 486 개량 CPU를 발표한들 누가 쓸라고 할까나?


[L2R, 80186, 80286-10 '82년분, 80286-10 '85년분, 외관상 같다]



그래서 80186은 개인용 컴퓨터에는 사용되지 않았고 산업용 로봇, 산업용 컴퓨터나 예전엔 작은 HPC(들고 댕기는 컴퓨러~)등에 사용되었다. 지금도 쓰냐고? 물론, 아직도 산업용 여러 장비에 활용되고 있다. 나도 좀 만져 봤고.. 손으로.. 흐흐.

- 80186 : 사진은 82년 생산 모델이다. 클럭속도 10MHz, 주소공간 1MB, 데이터버스는 내부외부 진정한 16Bit. 80188은 동일하지만 데이터버스가 외부 8Bit이다. -

- XT? : 우리가 알고 있는 XT컴퓨터는 8086 CPU를 사용하지 않았다. 외부 8Bit 주변기기를 사용하기 위해서 8088 CPU를 사용했다. 눈치 빠른 분 아셨겠지? 86은 16Bit, 88은 8Bit 오케? -


[이놈이 8086되시겠다]



80286은 두개나 가지고 있다. 하나는 82년도 생산분, 하나는 85년도 생산분. 이놈도 80186과 같은 16Bit CPU였지만 주소공간은 무려 16MB, 가상주소공간은 1GB나 접근 가능했던 당시엔 괴물 같은 CPU였다. 음, 이놈은 10MHz의 클럭속도구만. 이야.. 가상 메모리를 지원하지. 멀티 태스킹도 가능했지. 실제모드(Real MOde)와 보호모드(Protected Mode)도 지원했지... 얼마나 괴물 같았을까.. 당시엔 그런 개념도 별로 없었는데.

하지만 이를 뒷받침해 줄 운영체제가 없었는데, 그때는 아직 DOS의 시대였으니. (윈도 2.0, 3.0이 있었지만 이놈들도 신통찮은 도스 프로그램 수준 이었다.) 이때 MS의 개인용 컴퓨터 운영체제 시장을 우습게 쳐다보는 고수가 있었으니, 이름하여 IBM의 OS/2다. 이놈은 2001년 eComStation이란 이름으로 개명(?)되어 04년도에도 나온다는 이야기가 잠깐 있었는데... IBM에서도 안판다.

참고로 이 두놈은 LCC도 SOP도 아닌데, 패키징 방법이 뭔지 모르겠다. PGA는 절대 아녀.

3. Intel 80386, 80387, 486

뭐 여기서 부터는 아시는 분들 많을테니 대강 살펴보면, 80386(DX, 명시적이지 않으면 DX를 뜻 함)은 완벽한 32비트 프로세서로 내부 외부 공히 한번에 32비트의 데이터를 처리할 수 있다. 또한 4GB의 실주소공간과 64TB(1TB=1,000GB)의 가상주소공간을 다룰 수 있는 엄청난 프로세서였다. 더욱이 실모드, 보호모드 외 가상86모드(Virtual 86 Mode) 기능이 있어 여러개의 DOS프로그램을 실핼 밑 태스킹할 수 있었다. 우와! 음 혹시 알고 있을 386SX라는 모델은 외부 입출력을 16Bit로 이루어 가격을 떨군 모델이다.

80486은 우리가 586에서 펜티엄으로 부르기 시작한 프로세서군의 바로 직전 히트 모델이다. 그 종류도 다양했으며(486SX,SL,DX,DX2,DX4) 트랜지스터 집적도 백만 단위를 넘어서는 초고집적 프로세서였다. (그때는 진짜 대단한 기술이었는데) 대신 열도 많이 났기 때문에 이때부터 CPU에 냉각팬을 달아야 했지만.


[L2R, 80486DX2-50, 80386DX-20, 80387DX 10-33, MBL어쩌구]



사진을 보자면 좌상단에 80486DX2-50이 있고 그 우측에 80386DX-20, 그 하단에 80387DX가 있는데, 이놈은 80386 프로세서의 보조 프로세서(코프로세서, coProcessor로 불린다)로 정식 명칭은 부동소숫점연산처리용 보조 산술 프로세서 되시겠다. 80486엔 이놈이 내장되어 있고, 80386과 저가 정책으로 이놈이 빠진 80486-SX엔 추가 장착할 수 있도록 해 놓았다.

- 참고 : 80487은 보조 프로세서가 아니다. 사실 80486SX는 DX 생산공정 중 코프로세서 부분이 고장났을 경우나 임의로 작동을 멈추게 한 프로세서이다. 또한 80487은 프로세서 표면 마킹만 다르게 한 완전한 동작을 하는 80486DX프로세서이다. 따라서 SX 컴퓨터에 80487을 장착하면 80486SX는 동작을 멈추고 80487이 모든걸 대신하는 이상한 모양이 연출되었다 -

맨 우측 MBL8742H(후지쯔 인텔)은 MPU계열인데 잘 모른다. 이게 왜 내게 있는지 기억도 안나고 이놈의 자료는 거의 없다.

아. 이놈들 패키징은 어떻게 되어 있는지 아래쪽도 한번 볼까나?





일단 흔히 봐왔던 DIP형태의 MC68705(좌상단)과 MBL8742H(우상단), 이놈들은 쎄라믹이라 CDIP되겠다. C는 Ceramic의 머릿 글자.

그르고 많이 본 PGA(Pin Grid Array)가 보이네 그려. 이건 컴터 조립하신 분이면 다 봤을만한 그 다리 많이 붙어 있는... 나머지는 이름이 뭔지 모르겠고.

뭐 저기 금을 사용했다고 하니 저걸 다 녹여서 금을 추출하면 과연 깨알 만큼이나 나올런지 궁금하다.

아무튼 저 이후 프로세서들은 워낙에 빠른 인터넷의 발달로 다들 알고 계시리라. 요즈음은 초등학생도 AMD가 어쩌고 인텔이 어쩌고 하면서 프로세서 이름을 잘도 말한다. 자기 컴퓨터엔 뭐뭐는 넣어야 한다고 하고, 그래픽 카드는 어떤 어떤 놈들을 함께 연결해야 한다는 둥.

그러나 우주왕복선이나 인공위성은 286/386프로세서로 만들어진다고 한다. 그렇게 보면 과연 우리가 만들고 있는 어플리케이션들이 효율적으로 동작이 되는지 의심이 간다. 로드한 라이브러리의 5%만 사용하고 쓸데없는 동작을 위해 CPU resource의 절반을 소비할는지도.


크리에이티브 커먼즈 라이선스
Creative Commons License

No comments: