IBM 1620

IBM 1620 모델 I, 레벨 H

IBM 1620은 1959년 10월 21일 IBM이 발표한 컴퓨터이며 저렴한 "과학용 컴퓨터"로 광고되었다 대략 총 2000개 기기가 생산된 이후 1970년 11월 19일 종료되었다. 1620의 수정판이 IBM 1710과 IBM 1720 산업 프로세스 제어 시스템의 CPU로 사용되었으며 이것들은 공장 장비의 실시간 프로세스 제어에 충분할만큼 신뢰성이 있는 것으로 간주된 최초의 디지털 컴퓨터가 되었다.

코어 메모리 사이클 타임은 초기 모델 I의 경우 20밀리초, 모델 II의 경우 10밀리초였다. 모델 II는 1962년 선보였다.

아키텍처

메모리

IBM 1620 모델 I은 코어 메모리를 사용하는 가변 "워드" 길이의 십진수(BCD) 컴퓨터였다. 모델 I 코어는 각 자릿수가 6비트로 저장되는 20,000개의 십진수를 저장할 수 있었다. 40,000자리를 저장할 수 있는 IBM 1623 저장 장치 모델 1이나 60,000자리를 저장할 수 있는 1623 모델 2를 사용하면 더 많은 메모리를 추가할 수 있다.

모델 II는 더 빠른 코어를 사용하여 메모리 사이클 시간을 절반으로 줄인 IBM 1625 코어 저장 메모리 유닛을 배포했는데, 이는 모델 I(내부 또는 1623 메모리 유닛)에 비해 10μs(즉, 사이클 속도가 100kHz로 상향 조정됨)였다.

두 모델 모두 5자리 주소로 10만 개의 십진수를 처리할 수 있었지만, 6만 개의 십진수를 넘는 기계는 출시된 적이 없다.

메모리 접근

메모리는 동시에 두 개의 십진수 숫자에 접근되었다(숫자 데이터의 경우 짝수-홀수 숫자 쌍, 텍스트 데이터의 경우 하나의 영숫자). 각 10진수는 6비트로 구성되었으며, 홀수 패리티 Check 비트, Flag 비트, 그리고 다음 형식의 숫자 값을 나타내는 4개의 BCD 비트로 구성되었다.:

  C F 8 4 2 1

Flag(지연) 비트는 여러 용도로 사용되었다.

  • 최하위 유효 숫자에서는 음수를 나타내는 데 사용되었다(부호 있는 크기).
  • 숫자의 최상위 유효 숫자를 나타내는 데 사용되었다(워드마크).
  • 5자리 주소의 최하위 자릿수에서는 간접 주소로 설정되었다(모델 I의 옵션이며, 1620 모델 II에서는 표준이다). 다단계 간접 주소 지정을 사용할 수 있었다(이 머신은 무한 간접 주소 지정 루프에 빠질 수도 있었다).
  • 5자리 주소의 중간 3자리 숫자(1620 II)는 7개의 인덱스 레지스터 중 하나를 선택하도록 설정되었다.

유효한 BCD 숫자 값 외에도 세 가지 특수 숫자 값이 있다(계산에 사용할 수 없음):

  C F 8 4 2 1
      1 0 1 0  –  레코드 마크 (레코드의 가장 오른쪽 끝, 이중 단검 기호(‡)로 인쇄됨)
      1 1 0 0  –  숫자 공백(펀치 카드 출력 서식을 위한 공백)
      1 1 1 1  –  그룹 마크 (디스크 I/O를 위한 레코드 그룹의 가장 오른쪽 끝)

명령어는 고정 길이(12자리 십진수)였으며, 두 자리 "명령 코드", 다섯 자리 "P 주소"(일반적으로 목적지 주소), 그리고 다섯 자리 "Q 주소"(일반적으로 소스 주소 또는 소스 즉시 값)로 구성되었다. B(분기) 명령어와 같은 일부 명령어는 P 주소만 사용했으며, 이후 스마트 어셈블러에는 일곱 자리 분기 명령어(op 코드, P 주소, 그리고 다음 명령어가 짝수 자릿수에서 시작해야 했기 때문에 한 자리 추가)를 생성하는 "B7" 명령어가 포함되었다.

고정 소수점 데이터 "워드"는 두 자리 십진수부터 다른 용도로 사용되지 않는 메모리 전체까지 어떤 크기든 될 수 있었다.

부동 소수점 데이터 "워드"(하드웨어 부동 소수점 옵션 사용)는 4자리 소수점에서 102자리 소수점(가수의 경우 2자리에서 100자리, 지수의 경우 2자리)까지 어떤 크기든 가능하다.

포트란 II 컴파일러는 포트란 소스 앞에 고정된 형식으로 "소스 프로그램 제어 카드"를 추가하여 이러한 유연성을 제한적으로 제공했다.

*ffkks

1열의 *, ff는 부동 소수점 수의 가수에 대한 자릿수(02~28 허용), kk는 고정 소수점 수의 자릿수(04~10 허용)를 나타내고, s는 현재 컴퓨터가 아닌 경우 코드를 실행할 컴퓨터의 메모리 크기를 지정한다. 2, 4 또는 6은 20,000 또는 40,000 또는 60,000자리의 메모리를 지정한다.

이 기계에는 프로그래머가 접근할 수 있는 레지스터가 없었다. 모든 작업은 메모리에서 메모리로 이루어졌다(1620 II의 인덱스 레지스터 포함).

'아키텍처의 어려움 문단 참고'

잘못된 문자

모델 I은 타자기의 키릴 문자 Ж(zh로 발음)를 올바른 패리티를 가진 범용 무효 문자로 사용했다(잘못된 패리티는 오버스트라이크(기존의 문자 위에 다른 문자를 중첩시켜 원래의 문자를 대체) "–"로 표시). 일부 1620 시스템에서는 1960년대 후반에 인기를 끌었던 제임스 본드 소설에 사용된 것처럼 SMERSH라고 불렸다. 모델 II는 새로운 문자 ❚("pillow"라고 함)를 올바른 패리티를 가진 범용 무효 문자로 사용했다.

아키텍처의 어려움

IBM 1620의 아키텍처는 과학 및 엔지니어링 커뮤니티에서 매우 인기가 있었지만, 컴퓨터 과학자 에츠허르 데이크스트라는 "IBM 1620 데이터 처리 시스템 리뷰"인 EWD37에서 설계의 여러 가지 결함을 지적했다. 여기에는 해당 기기의 분기 및 전송 명령어와 분기 백 명령어가 중첩된 서브루틴 호출을 한 단계만 허용하여, 여러 단계로 구성된 코드의 프로그래머가 이 "기능"을 사용하는 것이 가장 효과적인 곳을 스스로 결정하도록 강제하는 것이 포함된다. 그는 또한 이 기계의 종이 테이프 판독 지원 장치가 기록 마크가 포함된 테이프를 제대로 읽을 수 없다는 것을 보여주었다. 기록 마크는 저장소에서 읽은 문자를 종료하는 데 사용되기 때문이다. 이로 인해 1620은 레코드 마크가 있는 테이프를 간단한 방식으로 복제할 수 없다. 레코드 마크가 나타나면 펀치 명령어가 EOL 문자를 펀칭하고 종료한다. 하지만 이는 심각한 문제는 아니었다.

  • 데이터는 메모리 끝에 복사되고 WN 대신 DN 명령어를 사용하여 그대로 펀칭될 수 있다.
  • 테이프는 일반적으로 오프라인으로 복제되었다.

대부분의 1620 설비에서는 종이 테이프 대신, 더 편리한 펀치 카드 입출력을 사용했다.

1620의 후속 모델인 IBM 1130은 완전히 다른 16비트 바이너리 아키텍처를 기반으로 했다(1130 제품군은 1620 주변 장치 중 하나인 IBM 1627 드럼 플로터를 그대로 사용했다).

소프트웨어

IBM 1620 SPS 카드

IBM은 1620에 다음 소프트웨어를 제공했다.

모니터는 1620 SPS IId, 포트란 IId 및 DUP(디스크 유틸리티 프로그램)의 디스크 기반 버전을 제공했다. 두 모니터 시스템 모두 20,000자리 이상의 메모리와 하나 이상의 1311 디스크 드라이브가 필요했다.

PDF 형식의 IBM 1620 관련 매뉴얼 모음이 비트세이버스(bitsavers)에 있다.

주목할만한 용도

베얼 N. 허프, NASA 본부(FOB 10B, 워싱턴 DC)는 IBM 1620 모델 II를 사용하여 포트란에서 고정된 제미니 캡슐 – 에지나(Agena) 로켓 모듈 2체 문제의 3차원 시뮬레이션을 프로그래밍했다. 당시에는 탄성 고정으로 인한 충돌 가능성 때문에 우주에서 두 물체를 함께 고정하는 것이 안전한지 완전히 이해되지 않았다. 동일한 컴퓨터를 사용하여 제미니 비행의 궤도를 시뮬레이션하여 각 궤도의 프린터 아트 차트를 제작했다. 이러한 시뮬레이션은 하룻밤 동안 실행되었고 다음 날 데이터를 검토했다.

1963년에 IBM 1620이 IIT 칸푸르에 설치되었고, 이는 인도의 소프트웨어 역량을 강화하는 데 결정적인 역할을 했다.

1964년 호주국립대학에서 마틴 워드는 IBM 1620 모델 I을 사용하여 얀코 그룹(Janko group) J1의 차수를 계산했다.

1966년에 ITU는 IBM 1620과 리노필름 사진식자기를 사용하여 워싱턴 이브닝 스타(Washington Evening Star)에서 컴퓨터를 통한 조판을 위한 1963년 시스템에 대한 설명 필름을 제작했다.

1964년에 IBM 1620이 아이슬란드 대학교에 설치되어 아이슬란드 최초의 컴퓨터가 되었다.

대중문화

각주

  1. 1 2 3 4 “1620 Data Processing System”.
  2. ↑ “Some Key Dates in IBM's Operations in Europe, the Middle East and Africa (EMEA)” (PDF).
  3. 1 2 “The IBM 1620: Just The Right Machine for Chula's Statistics Department”. 2017년 12월 22일에 원본 문서에서 보존된 문서. 2017년 12월 20일에 확인함.
  4. ↑ "... arranged as a 100x100 array of 12-bit locations, each holding 2 decimal digits. (Each decimal digit was encoded in binary using 6 bits.)"
  5. ↑ Oddur Benediktsson (2009). 〈FORTRAN II – the First Computer Language Used at the University of Iceland〉 (PDF). 《History of Nordic Computing 2》. IFIP Advances in Information and Communication Technology 303. 149–155쪽. doi:10.1007/978-3-642-03757-3_16. ISBN 978-3-642-03756-6. 2017년 12월 22일에 원본 문서 (PDF)에서 보존된 문서.
  6. ↑ John Impagliazzo; Timo Järvi; Petri Paju (2009). 《History of Nordic Computing 2: Second IFIP WG 9.7 Conference》. ISBN 978-3642037573.
  7. ↑ 1960년대 후반에 설계되어 대폭 수정된 하드웨어를 사용하여 10만 자릿수를 처리하는 단일 기계에 대한 설명도 있다.
  8. ↑ "The main memory was logically arranged as 20,000 6-bit words. Each word comprised four BCD data bits, a "flag" bit, and an odd parity check bit. Though this was its logical arrangement, physically memory was a 100x100 array of 12-bit ferrite core words, which causes a few quirks in the instruction set. All instructions occupied 12 consecutive digits of memory, and were required to start at an even address so that the two-digit opcode could be read in one 12-bit physical word." “The IBM 1620 Model 1 – Physics @ SMU”.
  9. ↑ E.W. Dijkstra Archive: A review of the IBM 1620 Data Processing System (EWD 37)
  10. ↑ “Basic Programming Concepts and The IBM 1620 Computer” (PDF). 2015년 7월 20일에 원본 문서 (PDF)에서 보존된 문서. The punched card is the most widely used media for communication with machines
  11. ↑ "Similar demands for small to medium scientific computers resulted in the IBM 1620 and its successor the IBM 1130." James L. Peterson; Werner Rheinboldt (2014). 《Computer Organization and Assembly Language Programming》. ISBN 978-1483268590.
  12. ↑ “Subject: GOTRAN ON THE IBM 1316 DISK STORAGE PACK (Serial No. K7402)”. 2006년 2월 21일에 원본 문서에서 보존된 문서. 2006년 3월 3일에 확인함.
  13. ↑ “Index of /pdf/ibm/1620”. 2006년 2월 11일에 원본 문서에서 보존된 문서. 2006년 4월 6일에 확인함.
  14. ↑ Personal recollections of Donald N. Huff, son of Vearl N. Huff
  15. ↑ Jayant K Singh, The Spark, Icct 2021, IIT Kanpur
  16. ↑ Zvonimir Janko, A new finite simple group with abelian Sylow subgroups, Proc. Natl. Acad. Sci. USA 53 (1965) 657-658
  17. ↑ “I.T.U. - Story of Technology”. International Typographical Union. 1966.
  18. ↑ “Ský - Fyrstu tölvurnar”. 《www.sky.is》. 2021년 11월 2일에 원본 문서에서 보존된 문서. 2021년 11월 2일에 확인함.
  19. ↑ Spicer, Dag (July–September 2005), “The IBM 1620 Restoration Project” (PDF), 《IEEE Annals of the History of Computing》 27 (3): 33–43, doi:10.1109/MAHC.2005.46, S2CID 710051, 2010년 9월 2일에 확인함[깨진 링크]
  20. ↑ "THRUSH is developing an 'ultimate computer'..." “The Man from U.N.C.L.E. - The Ultimate Computer Affair (TV Episode)”. 《IMDb》. October 1965.
  21. ↑ The IBM 1316 was the removable disk pack to the IBM 1311 disk drive of the IBM 1620, which explains the following: "“The Man from U.N.C.L.E.” movie's full of technological anachronisms ... Back in 1963, when the movie took place, there were disk packs available like the 10-pound IBM 1316." “The Man from U.N.C.L.E." movie's full of technological anachronisms”.

외부 링크