'마이컴 잡지'에 해당되는 글 9건

  1. 2021.02.25 마이컴 1993년 5월호 - 신기술 시리즈, 펜티엄 프로세서





마이컴 1993년 5월호 - 신기술 시리즈

펜티엄 프로세서



작년 한해는 CPU 업계에 많은 일이 있었고, 새롭게 등장한 CPU 후발 업체들이 주목을 받았던 한 해였 다. AMD와 인텔 사이에는 CPU 아키텍처 기술 문제로 소송이 벌어졌었고, 저가의 다량 공급을 시도하는 사이릭스가 CPU를 선보였다. 


이런 상황에서 인텔은 92년 초, 원래 92년 후반기에 586 CPU를 발표하겠다던 계획을 수정, 그 발표 시기를 계속 늦춰 많은 사용자들은 586 CPU의 등장을 오랫동안 기다려 왔다.  


인텔은 마침내 올 3월에 들어서야 새세대 컴퓨터를 이끌어 나갈 새로운 칩 펜티엄을 발표했는데, 개인용 컴퓨터의 성능을 워크스테이션 수준까지 높여줄 것으로 기대된다.




펜티엄이란

지금까지 인텔 칩들은 1978년 8086칩 이후로 모두 X86 형식으로 표시되어 왔었다. 따라서 이번 펜티엄 칩 역시 i586 CPU라 이름지어질 것으로 예상했으나, 인텔은 펜티엄 칩을 계기로 칩 명칭에 대폭적인 변 화를 가져왔다.  


인텔이 칩의 명칭을 바꾼 가장 큰 이유는 타사 제품과 인텔 CPU의 구별이 불가능했기 때문이다. AMD나 사이릭스같은 칩 경쟁사에서는 성능이 비슷한 칩에 대해 그 성능을 나타내 주기 위해 386이나 486이라는 명칭으로 부르고 있다. 


이에 따라 원래 386이나 486칩 명칭이 인텔 상품의 고유 명사였으나, 점차 보통 명사화하여 비슷한 성능대의 시스템은 통상적으로 386 시스템이니 486 시스템이니 하고 부르게 되었다. 더구나 경쟁 업체의 CPU는 가격면에 있어 인텔에 비해 저가 정책을 펴나감에 따라 인텔의 제품을 차별화할 필요가 생기게 된 것이다.


이번 5세대 칩 이름이 펜티엄이라고 결정된 것은 작년 가을이었다. 펜티엄이란 무슨 뜻인가 알아보기로 한다.


PENTIUM - PENT : 5라는 숫자를 의미

           - I : Intel사를 뜻함

           - UM : 부품을 뜻하는 희랍 어원


펜티엄이 이렇게 큰 관심을 모으고 있는 이유는 다음과 같다. 펜티엄 칩은 지금까지 선보인 칩 중에서 CPU 처리 속도가 가장 빨라 1초 동안에 112MIPS(Million Instructions Per Second : 1초 당 백만개의 명령 어)를 처리할 수 있는 강력한 시스템을 제공할 수 있다. 


일반 사용자들은 모두 펜티엄의 도입으로 PC에서 워크스테이션의 성능을 구현할 것으로 기대하고 있으며, 점차 워크스테이션과 일반 개인용 컴퓨터의 기준이 모호해질 것으로 보고 있다.




펜티엄 기술의 특징

펜티엄 칩은 486DX 칩에 비해 190% 이상의 성능 향상이 이루어진 것으로 보고 있는데, 486 CPU와는 다른 여러가지 기술적 특징을 갖고 있다(표 1). 


펜티엄 칩의 특징을 살펴보면, 우선 수퍼 스칼라 디자인과 2중 파이프 라인으로 명령이 처리되어 486의 단일 파이프 라인 명령어 처리보다 그만큼 처리 속도가 빨라졌다.  


또 부동 소수점 처리 기술이 향상되었고, 내부 캐시 메모리가 각 8킬로바이트씩 두 개가 내장되어 있으며, 브랜치의 예상이 가능해 브랜치가 처리 도중에 끊기더라도 큰 문제 없이 해당 브랜치 명령을 처리할 수 있다. 이제 이런 기술적 특징들을 좀 더 자세히 알아보기로 하겠다.



수퍼스칼라 아키텍처

펜티엄 프로세서의 수퍼 스칼라 아키텍처(Superscalra Architecture)는 2개의 파이프라인 (dual-pipe lined) 아키텍처로 디자인되어 있는데, 클럭 사이클당 1개 이상의 명령을 실행함으로써 그만큼 실행 속도를 높일 수 있다. 


즉 파이프라인으로 거의 동시에 여러 개의 명령을 처리할 수 있어 두 배의 처리 속도를 낼 수 있는 것이다.


펜티엄 프로세서의 파이프라인은 명령 가져오기, 명령 해석, 어드레스 생성, 실행, 기록의 5단계로 정수 명령을 실행한다. 


하나의 명령이 명령 가져오기 단계를 지나 명령 해석 단계로 진입하는 동안 그 파이프라인은 다른 작업을 수행할 수 있다.



코드 캐시 및 데이터 캐시의 분리  

인텔 486 마이크로프로세서가 한 개의 8K 캐시를 가지고 있는데 반해, 펜티엄 프로세서는 2개의 캐시가 내장되어 있다. 


각각 8K 씩으로 코드 캐시와 데이터 캐시로 분리되어 있다. 펜티엄 프로세서의 캐시는 다이렉트 맵트(Direct-Mapped : 캐시 메모리 통채로 이용하는 방식) 캐시보다 발달한 2중 세트 연결(2-Way Set-Associative) 캐시이다.  


펜티엄 프로세서 캐시는 32바이트 라인으로 구성되어 있으며, 캐시 회로가 캐시 전체를 검색하지 않고 2 개의 32바이트 라인만을 검색한다. 즉 캐시 메모리를 두 개로 나누어 2중으로 캐시 메모리에 들어오는 데이터나 명령을 처리하는 것이다. 


이미 가득찬 캐시에 명령이나 데이터를 저장할 필요가 있을 때, 캐시 회로는 LRU 알고리듬에 따라 가장 오래전에 사용된 정보를 버리고 그 공간을 새로운 정보로 직접 대체한다.


데이터 캐시는 파이프라인별로 1개씩, 모두 2개의 인터페이스를 갖고 있어 싱글 클럭 사이클로 2개의 작업을 수행할 수 있도록 해준다. 


데이터 캐시에서 데이터가 지워질 때 변경된 내용은 주 메모리에 기록된다. 이를 라이트 백(Write Back) 캐싱이라 한다. 라이트 백 캐싱은 프로세서가 캐시 및 주 메모리에 동시에 데이터를 기록하는 라이트 드로우(WriteThrough) 캐싱보다 우수한 성능을 제공한다.



브랜치 예측

펜티엄 프로세서는 또한 브랜치 예측(Branch Prediction)을 위해 브랜치 타겟 버퍼(BTB)라는 소형 캐시를 사용함으로써 성능을 향상시킨다. 


즉 한 개의 명령이 한 개의 브랜치에 전달될 때 BTB는 그 명령과 사용된 브랜치의 주소를 기억하고 있 다. BTB는 이 정보를 사용하여 그 명령이 다음에 사용될 때, 어떤 방법으로 브랜치에 전달될 것인지를 미리 예측하게 된다. 


이렇게 함으로써 원하는 브랜치를 검색하는데 필요한 시간을 절약할 수 있으며, BTB가 정확한 예측을 하게 되면 브랜치는 지체없이 실행되고 성능도 향상된다.



고성능 부동 소수점 유니트

펜티엄 프로세서의 부동 소수점 유니트는 인텔 486 마이크로프로세서의 부동 소수점 유니트와 전혀 다르게 도안되었다. 펜티엄 프로세서의 부동 소수점 유니트는 8단계의 파이 프라인으로, 매 클럭 사이클마다 한 개의 부동 소수점 연산을 실행할 수 있다.


부동 소수점 유니트 파이프 라인의 첫 4단계는 정수 파이프 라인과 같다. 나머지 4단계에서는 2단계의 부동 소수점 실행 (Floating Point Execute), 레지스터 파일에 결과 기록, 그리고 에러 리포트 과정이 수행된다. 


펜티엄 프로세서의 부동 소수점 유니트는 ADD, MUL, LOAD 등 많이 사용되는 연산 명령의 속도를 3배까지 향상시켜 주는 새로운 알고리 듬을 가지고 있다.



고성능 64비트 데이터 버스

펜티엄 프로세서는 인텔 486 컴퓨터와 마찬가지로 내부적으로 32비트 버스를 사용한다. 그러나 메모리와 연결된 외부 데이터 버스는 64비트로 데이터를 전송하므로 싱글 버스 사이클로 전송되는 데이터 양이 2배로 늘어나게 된다. 


펜티엄 프로세서는 싱글 버스 사이클로 데이터 캐시에 256비트의 데이터를 제공하는 버스트 모드(Burst Mode)를 포함, 몇가지 유형의 버스 사이클을 지원한다. 


64비트 데이터 버스는 펜티엄 프로세서가 초당 528 메가바이트 속도로 메모리에 데이터를 주고 받을 수 있도록 해준다. 이것은 50MHz 인텔 486의 최고 전송율(초당 160메가바이트)보다 3배 이상 우수한 것이다.


(클릭하면 원본 이미지를 볼수 있습니다)



멀티프로세싱

2개 이상의 펜티엄 프로세서를 결합한 멀티프로세싱 애플리케이션들은 펜티엄 프로세서의 수퍼스칼라 아키텍처, 별도의 코드 캐시와 데이터 캐 시, 외부 캐시를 콘트롤하는 칩세트와 복잡한 데이터 통합 기능에 의해 지원된다.  


한 개의 프로세서가 다른 프로세서에 저장되어 있는 데이터를 액세스할 때, 그 프로세서는 정확한 데이터를 받게 된다. 그리고 데이터가 수정되 면 그 데이터를 액세스하는 모든 프로세서들은 수정된 버전을 받을 수 있다.


펜티엄 프로세서는 한 개 이상의 프로세서가 동시에 메모리 내에 같은 지역을 액세스할 때 인터페이스가 필요없도록 설계되었다. 또한 본래 프로그램된 것과 같은 순서로 실행되어야 하는 애플리케이션을 지원하기 위해 메모리 액세스 오더링 (Access Ordering)을 제공하게 된다. 


이 오더링은 싱글 프로세서 시스템용 소프트웨어가 멀티프로세싱 환경에서도 정확하게 운용되도록 해준다.



메모리 페이지 크기의 선택  

펜티엄 프로세서는 전통적인 메모리 페이지 크기인 4킬로바이트를 지원하게 되고, 4메가바이트까지 지원 할 수 있는 옵션을 제공한다. 


이러한 선택 기능은 복잡한 그래픽 애플리케이션, 프레임 버퍼 및 운영체계 커넬 등과 같은 애플리케이션에서 페이지 교체 빈도를 줄이기 위해 특히 유용하다.



에러 검출 및 FRC  

클라이언트 / 서버 네트워크 환경의 증가와 더불어 긴급하고 중요한 애플리케이셔들이 더욱 빠른 속도로 확산됨에 따라 중요한 데이터를 보호하는 문제가 점점 더 중요해지고 있다. 


펜티엄 프로세서는 그동안, 메인 프레임급 디자인에서나 제공되었던 에러 검출 및 FRC(Functional Redundancy Checking) 기능을 갖고 있어 데스크톱을 기반으로 한 네트워크에서 데이터를 완전하게 유지시켜 준다.


내부 에러 검출 회로가 내부의 코드 및 데이터 캐시, Translation Lookaside Buffers, 마이크로 코드 및 브랜치 타겟 버퍼상에 패리티 (Parity) 비트를 발생시킴으로써 사용자와 시스템에 아무런 영향을 주지 않고 에러 검출이 가능하도록 해 준다.  


한편, FRC는 2개의 펜티엄 프로세서가 매스터 / 체커로 운용될 수 있는, 긴급하고 중요한 애플리케이션을 위해 적합하다. 만일 2개의 프로세서 간에 불일치가 발견되면 시스템이 알아차리게 된다.



지금까지 펜티엄 프로세서의 기술적 특징과 향상된 기능들을 살펴보았다. 하지만 486의 168 커넥션 핀에서 펜티엄의 273으로 그 수가 증가 했다 해도 칩의 인스트럭션 세트, 일반 목적, 세그먼트 레지스터 정의, 데이터 타입과 어드레싱 모드 등은 모두 386/486 모델을 그대로 따른 것이다. 


또한 펜티엄의 내부 도안은 32비트로 작동하고 I/O만 64비트로 처리된다. 그러므로 명실상부한 64비트 CPU로 보기는 어려울 것이다.  


하여튼 고성능 CPU가 발표됨에 따라 시스템도 586 시스템이 등장하게 되었다. 이제 펜티엄을 채용한 CPU는 실로 소프트웨어 개발자나 대량의 데이터를 처리해야 하는 전문인에게 필요한 시스템이 될 것이다. 


또한 워크스테이션과 개인용 컴퓨터라는 경계가 불분명해짐으로써 고성능 사용자 환경이 구축될 것이다.





 이글은 지금은 없어진 컴퓨터 잡지, 마이컴 1993년 5월호 기사에서 발췌한 내용입니다

글이 마음에 드시면 아래 공감버튼 살짝 눌러주세요.

공감과 댓글은 저에게 큰 힘이 됩니다. 










728x90
반응형
Posted by 전화카드
,