SDS 시그마 시리즈

섬네일|right|캘리포니아주 마운틴뷰에 위치한 컴퓨터 역사 박물관에 있는 SDS 시그마 5 컴퓨터의 전면 패널
SDS 시그마 시리즈()는 1966년 미국의 사이언틱 데이터 시스템스가 도입한 3세대 컴퓨터 시리즈이다. 이 시리즈의 첫 번째 기계는 16비트 시그마 2와 32비트 시그마 7이며, 시그마 7은 SDS가 출시한 최초의 32비트 컴퓨터였다. 당시 과학 분야에서 시그마 7의 유일한 경쟁자는 IBM 시스템/360이었다.

시그마 5, 6, 7, 8, 9는 워드 주소 지정 시스템으로, 메모리 크기는 K(킬로워드) 단위로 표시된다. 예를 들어, 시그마 5의 기본 메모리는 16K이다. 최대 물리 메모리는 17비트 또는 128K인 명령어 주소 필드의 길이에 의해 제한되지 않는다. 왜냐하면 메모리 매핑을 사용하여 유효 주소를 확장할 수 있기 때문이다. 맵 레지스터의 너비로 인해 최대 물리 메모리는 512K였다. 오늘날의 기술에서는 이 정도의 메모리는 사소한 양이지만, 시그마 시스템은 작업을 탁월하게 수행했다.

CII 10070 컴퓨터는 시그마 7의 리뱃징 버전이었고, 업그레이드되었지만 여전히 호환되는 아이리스 50 및 아이리스 80 컴퓨터의 기반이 되었다. 1973년부터 도입된 제록스 500 시리즈 컴퓨터 또한 최신 기술을 사용하여 시그마 시스템의 호환성 업그레이드 버전이었다.

1975년, 제록스는 컴퓨터 사업부를 허니웰에 매각했으며, 허니웰은 한동안 시그마 라인에 대한 지원을 계속했다.

섬네일|2014년 미국 워싱턴주 시애틀의 리빙 컴퓨터 박물관에 있는 XDS 시그마 9 및 관련 장비
시그마 9는 원래 소매 가격에 가깝게 팔리는 기계 중 가장 긴 수명을 가진 기록을 보유하고 있을 수도 있다. 시그마 9 컴퓨터는 1993년에도 여전히 사용되고 있었다. 2011년, 워싱턴주 시애틀의 리빙 컴퓨터 박물관은 서비스 회사(Applied Esoterics/George Plue Estate)로부터 시그마 9를 인수하여 작동시켰다. 이 시그마 9 CPU는 1985년 11월 앤드루스 대학교가 구매하여 미시간으로 가져갈 때까지 미시시피 남부 대학교에 있었다. 1990년 2월, 앤드루스 대학교는 키스 칼킨스를 통해 이를 애리조나주 플래그스태프의 Applied Esoterics에 판매하고 배달했다. 키스 칼킨스는 2012/2013년에 박물관을 위해 시그마 9를 작동시키고 2014년 12월에 CP-V 운영 체제를 가동했다. 다른 여러 시스템 구성 요소는 Marquette, Samford, Xerox/Dallas와 같은 다른 사용자 사이트에서 가져왔다.

 모델 
출처:

 32비트 시스템 

 16비트 시스템 

 명령어 형식 
32비트 시그마 시스템의 메모리 참조 명령어 형식은 다음과 같다.

 +-+--------------+--------+------+---------------------------+
 |*| Op Code | R | X | Reference address |
 +-+--------------+--------+------+---------------------------+
bit 0 1 7 8 1 1 1 1 3
 1 2 4 5 1

Bit 0 indicates indirect address.
Bits 1-7 contain the operation code (opcode)
Bits 8-11 encode a register operand (0:15)
Bits 12-14 encode an index register (1:7). 0 indicates no indexing.
Bits 16-31 encode the address of a memory word.

시그마 9의 경우, 실제 확장 주소 지정이 활성화되면 참조 주소 필드는 상위 비트가 0인지 1인지에 따라 다르게 해석된다.

 +-+--------------+--------+------+-+-------------------------+
 | | | | |0| Address in 1st 64K words|
 |*| Op Code | R | X +-+-------------------------+
 | | | | |1| Low 16 bits of address |
 +-+--------------+--------+------+-+-------------------------+
bit 0 1 7 8 1 1 1 1 1 3
 1 2 4 5 6 1

상위 비트가 0이면 주소의 하위 16비트는 주 메모리의 첫 64K 워드 내의 위치를 참조한다. 상위 비트가 1이면 주소의 하위 16비트는 프로그램 상태 이중 워드의 비트 42-47에 있는 확장 주소로 지정된 64K 워드 블록 내의 위치를 참조하며, 이 확장 주소는 참조 주소의 하위 16비트와 연결되어 워드 주소를 형성한다.

명령어의 워드 주소에는 바이트 주소를 계산하기 위해 두 개의 0비트가 추가된다.

바이트를 참조하는 명령어의 경우, 인덱스 레지스터의 비트 13-31이 바이트 주소에 더해져 유효 주소를 형성한다.

하프워드를 참조하는 명령어의 경우, 인덱스 레지스터의 비트 14-31에는 0비트가 추가되고, 그 값은 바이트 주소에 더해져 유효 주소를 형성한다. 이 주소의 하위 비트는 항상 0이다.

워드를 참조하는 명령어의 경우, 인덱스 레지스터의 비트 15-31에는 두 개의 0비트가 추가되고, 그 값은 바이트 주소에 더해져 유효 주소를 형성한다. 이 주소의 하위 두 비트는 항상 0이다.

더블워드를 참조하는 명령어의 경우, 인덱스 레지스터의 비트 16-31에는 세 개의 0비트가 추가되고, 그 값은 바이트 주소에 더해져 가상 주소를 형성한다. 이 주소의 하위 세 비트는 항상 0이다.

 기능 
 CPU 
시그마 시스템은 성능 범위를 제공했으며, 가장 느린 시그마 5부터 가장 빠른 시그마 9 모델 3까지 대략 두 배로 증가했다. 예를 들어, 32비트 고정 소수점 곱셈 시간은 7.2에서 3.8 μs 범위였고, 64비트 부동 소수점 나누기 시간은 30.5에서 17.4 μs 범위였다.

대부분의 시그마 시스템은 16개의 범용 레지스터 블록을 두 개 이상 포함했다. 블록 전환은 단일 명령어(LPSD)로 이루어져, 레지스터를 저장하고 복원할 필요 없이 빠른 컨텍스트 전환을 제공했다.

 메모리 
시그마 시스템의 메모리는 개별 바이트, 하프워드, 워드 또는 더블워드로 주소 지정할 수 있다.

시그마 5와 시그마 8을 제외한 모든 32비트 시그마 시스템은 가상 메모리를 구현하기 위해 메모리 맵을 사용했다. 다음 설명은 시그마 9에 적용되며, 다른 모델은 약간의 차이가 있다.

워드의 유효 가상 주소는 17비트 너비이다. 가상 주소 0부터 15까지는 해당 범용 레지스터를 참조하기 위해 예약되어 있으며 매핑되지 않는다. 그 외의 경우, 가상 메모리 모드에서는 주소의 상위 8비트(가상 페이지 번호라고 불림)가 256개의 13비트 메모리 맵 레지스터 배열의 인덱스로 사용된다. 맵 레지스터에서 가져온 13비트와 가상 주소의 나머지 9비트가 실제 메모리에 접근하는 데 사용되는 주소를 형성한다.

접근 보호는 별도의 256개의 2비트 접근 제어 코드 배열을 사용하여 구현되며, 가상 페이지(512워드)당 하나씩, 해당 페이지에 대한 읽기/쓰기/실행 또는 접근 금지 조합을 나타낸다.

독립적으로, 실제 메모리의 첫 128k 워드에 대한 256개의 2비트 접근 제어 레지스터 배열은 프로그램 상태 이중 워드의 2비트와 함께 "잠금 및 키" 시스템으로 작동한다. 이 시스템은 페이지를 "잠금 해제"로 표시하거나 키를 "마스터 키"로 허용한다. 그렇지 않으면 메모리 페이지를 참조하기 위해 PSD의 키가 접근 레지스터의 잠금과 일치해야 했다.

 진단 시설 
모든 프레임은 후면 프레임 랙에 장착된 PT14/PT15 쌍으로부터 HF 전력을 입력받는 PT16B 전원 공급 장치로 구동되었다. PT16은 스위치를 통해 전압(+4, +8 및 -4)을 5% 증가 또는 감소시켜 고장난 부품을 증폭하도록 마진을 조정할 수 있었다. 제어 패널에는 같은 이유로 기본 클럭 속도를 증가 또는 감소시킬 수 있는 스위치도 있었다. 이들은 유지보수 직원이 사용하기 위한 것이었다.

시그마 9에는 "SNAP" 레지스터라고 불리는 일련의 레지스터도 있었다. 이 레지스터들은 각 클럭 틱에서 시스템 내부의 다양한 레지스터 상태를 수집했다. 예를 들어, 다양한 명령어를 테스트하는 주요 CPU 진단(9Auto, 9Suffix)은 "스냅 데이터"를 포함하는 9트랙 테이프와 함께 제공되었다. 이를 통해 진단은 오류 감지 시 "스냅 모드"에서 명령어를 실행하여 시스템이 한 번에 한 CPU 단계씩 명령어를 반복하고 스냅 레지스터에 실제 데이터를 수집하여 스냅 테이프의 올바른 예시 스냅 데이터와 비교할 수 있었다. 이런 방식으로 엔지니어는 레지스터 비트가 실패하는 위치와 기타 다른 실패 유형을 빠르게 확인할 수 있었다.

 주변 장치 
입출력은 IOP (Input-output processor)라고 불리는 제어 장치를 사용하여 수행된다. IOP는 메모리로의 8비트 데이터 경로를 제공한다. 시스템은 최대 8개의 IOP를 지원하며, 각 IOP는 최대 32개의 장치 컨트롤러를 연결할 수 있다.

IOP는 선택기 I/O 프로세서(SIOP) 또는 멀티플렉서 I/O 프로세서(MIOP)가 될 수 있다. SIOP는 초당 최대 1.5메가바이트(MBPS)의 데이터 속도를 제공하지만, 한 번에 하나의 장치만 활성화할 수 있다. 저속 주변 장치를 지원하도록 설계된 MIOP는 한 번에 최대 32개의 장치를 활성화할 수 있지만, 총 데이터 속도는 0.3 MBPS에 불과하다.

 대용량 저장 장치 
섬네일|left|커버가 열리고 디스크가 유지보수를 위해 당겨져 나온 RAD
RAD(랜덤 액세스) 디스크로 알려진 주요 대용량 저장 장치는 512개의 고정 헤드와 크고(약 600mm/24인치 직경) 수직으로 장착된 디스크가 비교적 낮은 속도로 회전한다. 고정 헤드 배열 덕분에 접근 속도는 상당히 빠르다. 용량은 1.6에서 6.0메가바이트까지 다양하며 임시 저장에 사용된다. 영구 저장을 위해 대용량 다중 플래터 디스크가 사용된다.

 통신 
시그마 7611 문자 지향 통신 서브시스템(COC)은 1개에서 7개까지의 라인 인터페이스 유닛(LIU)을 지원한다. 각 LIU는 단방향, 반이중, 또는 전이중 모드로 작동할 수 있는 1개에서 8개의 라인 인터페이스를 가질 수 있다. COC는 "저속에서 중속 문자 지향 데이터 전송을 위해 고안되었다."

선택 사항인 통신 입출력 프로세서(CIOP)는 128개까지의 통신 회선을 128에서 9600 보드의 속도로 처리했다. 제어 및 회선 상태를 위해 1K의 전용 메인프레임 메모리를 사용했다.

 시스템 제어 장치 
시스템 제어 장치(SCU)는 시그마 CPU, 주변 장치 및 아날로그 회로 장치, 그리고 다양한 종류의 라인 프로토콜에 인터페이스할 수 있는 "마이크로프로그래밍 가능한 데이터 프로세서"였다. SCU는 32비트 워드 길이의 수평 마이크로 명령어를 실행한다. 시그마 시스템에서 실행되는 교차 어셈블러를 사용하여 SCU용 마이크로 프로그램을 생성할 수 있다.

 카네기 멜런 시그마 5 
카네기 멜런 대학교가 소유했던 시그마 5 컴퓨터는 2002년 컴퓨터 역사 박물관에 기증되었다. 이 시스템은 모니터, 제어 패널 및 프린터가 있는 5개의 풀사이즈 캐비닛으로 구성되어 있다. 아마도 작동 중인 마지막 시그마 5일 것이다.

시그마 5는 16 킬로워드의 자기코어 메모리를 포함하여 미화 30만 달러에 판매되었으며, 추가로 5만 달러를 내면 메모리를 32kW로 업그레이드할 수 있었다. 하드 디스크 드라이브의 용량은 3 메가바이트였다.

 32비트 소프트웨어 
 운영 체제 
시그마 5 및 8 시스템은 메모리 맵 기능이 없다. 시그마 5는 기본 제어 모니터(BCM)와 일괄 처리 모니터(BPM)를 지원한다. 시그마 8은 실시간 일괄 모니터(RBM)뿐만 아니라 BPM/BTM도 실행할 수 있다.

나머지 모델은 처음에는 일괄 처리 모니터(BPM)를 실행했으며, 나중에 시분할 옵션(BTM)이 추가되었다. 이 통합 시스템은 일반적으로 BPM/BTM이라고 불렸다. 범용 시분할 시스템(UTS)은 1971년에 출시되어 훨씬 향상된 시분할 기능을 지원했다. UTS의 호환 가능한 업그레이드(또는 이름 변경)인 제어 프로그램 V(CP-V)는 1973년부터 출시되어 실시간, 원격 일괄 처리 및 트랜잭션 처리를 추가했다. 전용 실시간 OS인 실시간 제어 프로그램(CP-R)도 시그마 9 시스템에서 사용할 수 있었다. IBM DOS/360 대체용으로 개발된 제록스 운영 체제(XOS)는 시그마 6/7/9 시스템에서도 실행되었지만, 실제 인기를 얻지는 못했다.

 타사 운영 체제 
일부 타사 운영 체제가 시그마 시스템에서 사용 가능했다. 그 중 하나는 GEM(Generalized Environmental Monitor의 약자)으로, "유닉스(UNIX)와 상당히 비슷하다"고 알려졌다. 다른 하나는 미시간 주립 대학교의 JANUS였다.

 응용 소프트웨어 
1978년 CP-V에서 사용 가능했던 제록스 소프트웨어(프로세서라고 불림)는 다음과 같다:
 터미널 실행 언어(TEL) 명령 언어
 제어 명령 인터프리터(CCI) TEL의 배치 버전
 파일 시스템 관리 프로세서 — 백업/복원(fill, fsave 및 fres)
 EASY — Fortran 및 BASIC을 위한 온라인 대화형 디버깅 환경
 확장 FORTRAN IV
 메타-심볼 매크로 어셈블러
 AP 어셈블러
 BASIC
 FLAG —FORTRAN 로드 앤 고
 ANS COBOL
 APL
 TEXT - 워드 프로세싱
 RPG
 시뮬레이션 언어(SL-l)  †
 LINK 원패스 연결 로더
 LOAD 투패스 오버레이 로더
 LYNX LOAD를 위한 단순화된 구문 프론트엔드
 GENMD 로드 모듈 편집기
 DELTA 기계어 디버거
 FORTRAN 디버그 패키지(FDP)
 COBOL 온라인 디버거
 EDIT — 주로 언어 소스 또는 데이터 파일을 위한 텍스트 편집기.
 주변 장치 변환 언어(PCL) — "피클"로 발음 — 데이터 이동/변환 유틸리티
 SYSGEN, ANLZ 덤프 분석기, 라이브러리 유지보수와 같은 기타 서비스 프로세서
 정렬/병합
 EDMS 데이터베이스 관리  †
 GPDS 범용 불연속 시뮬레이터  †
 CIRC 회로 분석,†
 MANAGE —범용 파일 관리 및 보고서 생성 시스템  †

† 프로그램 제품, 유료

 16비트 소프트웨어 
 운영 체제 
시그마 2 및 3을 위한 기본 제어 모니터(BCM)는 "배경에서 일부 일괄 처리 기능을 갖춘 완전한 실시간 기능"을 제공했다. 시그마 3은 RBM도 실행할 수 있었다.

 클론 
허니웰이 시그마 하드웨어 생산을 중단한 후 (제록스는 1975년 7월 대부분의 권리를 허니웰에 매각했다), 여러 회사들이 클론 시스템을 생산하거나 발표했다. 1979년에 도입된 Telefile T-85는 32비트 시그마의 상위 호환 드롭인 대체품이었다. Ilene Industries Data Systems는 호환되지 않는 I/O 아키텍처를 가진 시그마 9 클론인 MOD 9000을 발표했다. Realtime Computer Equipment, Inc.는 IBM 주변 장치도 사용할 수 있는 상위 호환 드롭인 대체품인 RCE-9를 설계했다. Modutest Mod 9는 Gene Zeitler(사장), Lothar Mueller(수석 부사장) 및 Ed Drapell이 재설계 및 제작했으며, 시그마 9와 100% 하드웨어 및 소프트웨어 호환성을 갖추었다. 이 제품은 Telefile, Utah Power and Light, Minnesota Power, 대만전력공사 및 Ohio College Library Center(OCLC)에 제조 및 판매되었다.
프랑스 회사 CII는 시그마 7 클론인 CII 10070, 아이리스 50, 아이리스 80을 생산했다.

2023년 현재 SIMH 에뮬레이터는 시그마 5, 6, 또는 7 시스템을 에뮬레이션할 수 있다. 시뮬레이터에서 실행할 수 있는 CP-V 버전 F00 사본이 있다.

 같이 보기 
 SDS 940

 각주 

 추가 자료 
 
 
 
 
 

 외부 링크 
 Living Computers: Museum + Labs의 온라인 시스템, 폴 앨런의 시분할 및 대화형 컴퓨터 컬렉션으로 가는 포털, CP-V를 실행하는 제록스 시그마 9 포함.

분류:메인프레임
분류:1966년 도입된 제품
분류:시분할 시스템
분류:16비트 컴퓨터
분류:32비트 컴퓨터