IT equipment/1950

파일럿 에이스 [Pilot ACE | 1950]

AICAT 2025. 6. 2. 21:21
반응형

 

 

 파일럿 ACE(자동 계산 엔진)는 영국에서 제작된 최초의 컴퓨터 중 하나이다. 1950년대 초에 국가 물리 실험실(NPL)에서 제작되었으며, 초기의 일반 목적 저장 프로그램 컴퓨터 중 하나로, 같은 시기에 제작된 맨체스터 마크 1 및 EDSAC과 같은 다른 영국 설계와 함께한다. 이것은 앨런 튜링이 설계한 전체 ACE의 예비 버전으로, 튜링은 건설이 완료되기 전에 NPL을 떠났다고 한다.

 

파일럿 ACE는 튜링의 전체 ACE 설계를 축소한 버전으로 제작되었다. 튜링이 NPL을 떠난 후(부분적으로는 ACE 구축의 진전을 보지 못해 환멸을 느꼈기 때문이다) 제임스 H. 윌킨슨이 프로젝트를 인수했다. 도널드 데이비스, 해리 허스키, 마이크 우드거가 설계에 참여하였다. 파일럿 ACE는 1950년 5월 10일에 첫 프로그램을 실행하였고, 1950년 11월에 언론에 공개되었다.

 

원래 프로토타입으로 의도되었지만, 그 기계가 특히 그 당시 다른 컴퓨팅 장치의 부족을 고려할 때 유용한 자원이 될 가능성이 있다는 것이 분명해졌다. 운영적 사용을 실용적으로 만들기 위한 몇 가지 업그레이드 후, 1951년 말에 서비스에 들어갔으며 다음 몇 년 동안 상당한 운영 서비스를 보았다. 파일럿 ACE가 유용했던 이유 중 하나는 과학 계산에 필요한 부동 소수점 산술을 수행할 수 있었기 때문이다. 윌킨슨은 이 과정에 대한 이야기를 전한다.

 

처음 제작되었을 때, 파일럿 ACE는 그 당시 다른 컴퓨터와는 달리 곱셈이나 나눗셈을 위한 하드웨어가 없었다. (하드웨어 곱셈은 나중에 추가되었다.) 파일럿 ACE는 고정 소수점 곱셈과 나눗셈을 소프트웨어로 구현하여 시작했다. 곧 고정 소수점 산술이 좋지 않은 아이디어라는 것이 분명해졌다. 숫자가 빠르게 범위를 벗어났기 때문이다. 파일럿 ACE가 부동 소수점 산술을 수행할 수 있도록 새로운 소프트웨어를 작성하는 데는 얼마 걸리지 않았다. 이후 제임스 윌킨슨은 전문가가 되어 부동 소수점 계산의 반올림 오류에 관한 책을 집필하였고, 이 책은 결국 잘 팔렸다.

 

 

파일럿 ACE는 약 800개의 진공관을 사용하였다. 주 기억은 원래 128개의 32비트 단어 용량을 가진 수은 지연선으로 구성되어 있었으며, 나중에 352개의 단어로 확장되었다. 1954년에는 4096단어의 드럼 메모리가 추가되었다. 기본 클럭 주파수인 1메가헤르츠는 초기 영국 컴퓨터 중 가장 빠른 것이었다. 명령어 실행 시간은 메모리 내 위치에 크게 의존하였다(지연선 메모리 사용으로 인해). 덧셈은 64에서 1024 마이크로초가 소요될 수 있었다.

 

이 기계는 매우 성공적이어서, DEUCE라는 상업 버전이 제작되어 잉글리시 일렉트릭 컴퍼니에 의해 판매되었다. 파일럿 ACE는 1955년 5월에 종료되었으며, 오늘날까지 과학 박물관에 보관되고 있다.

 

1954년에 자기 드럼이 설치되면서 행렬을 다루는 프로그램을 실행하기 위한 제어 프로그램 개발의 길이 열렸다. 브리티시 항공사의 J. M. 한의 권유에 따라 브라이언 W. 먼데이가 일반 해석 프로그램(GIP)을 개발하였다. 이 프로그램은 "브릭"이라 불리는 프로그램 모음을 실행하는 데 필요한 단순한 코드워드만 요구하였다. 각 브릭은 동시 방정식 집합을 풀거나, 행렬을 역전시키거나, 행렬 곱셈을 수행하는 등의 단일 작업을 수행할 수 있었다. 이 개념은 새롭지 않았지만, GIP의 독특한 점은 행렬의 경계를 지정하지 않는 코드워드의 단순성에 있었다. 경계는 드럼에 저장된 행렬에서 가져왔으며, 경계는 두 번째 및 세 번째 요소로 저장되었다. 행렬이 카드에 구멍 뚫려 있을 때는 첫 두 요소로 경계를 지정하였다. 따라서 프로그램이 작성되면, 프로그램을 변경할 필요 없이 다양한 크기의 행렬을 자동으로 실행할 수 있었다. GIP는 1954년에 실행되었으며, 파일럿 ACE의 후계기인 DEUCE를 위해 다시 작성되었다.

 

GIP와 함께 사용될 브릭은 M. 우드거가 작성하였으며, 그는 배열 요소를 저장하기 위한 독특한 방법인 "블록 플로팅"을 고안하였다. 일반적인 부동 소수점을 사용하면 각 요소에 두 개의 단어가 필요했을 것이다. 그래서 타협으로 모든 배열 요소에 대해 단일 지수를 사용하였다. 따라서 각 요소에 대해 단어 하나만 필요하였다. 가장 큰 요소만 정규화되었고, 작은 요소들은 그에 맞게 스케일 조정되었다. 작은 요소와 관련된 정밀도의 손실이 있었지만, 요소들이 서로 10배 이내에 있을 때는 그리 크지 않았다. 지수는 행렬과 함께 차원과 함께 저장되었다.

반응형