소련 미사일 방어 시스템의 탄생. 가장 위대한 소비에트 컴퓨터
레베데프의 독점
모든 의미에서 BESM-6이 큰 기계라는 것을 즉시 예약합시다. 따라서 그것에 대해 간략하게 쓰는 것은 효과가 없습니다. 자료가 풍부해서 거대한 기사를 세 부분으로 잘라야 했고, 각 부분은 이전 부분을 계속하므로 완전한 몰입을 위해서는 모든 것을 순차적으로 공부하는 것이 좋습니다.
1958년에 Lebedev는 그의 BESM의 두 가지 버전을 동시에 시리즈로 출시했습니다. 군용 고속 M-20과 민간용 저속 BESM-2입니다. 이 순간 그는 실제로 컴퓨터 제조업체 중 Kalashnikov와 유사한 전설적인 위치를 차지했습니다.
소비에트 연방은 썩어가는 자본주의보다 더 나쁜 독점을 사랑했지만 우리 나라에서는 다양한 부처에 속한 다양한 일반 디자이너의 학교가 일종의 기업 유사체였습니다.
ITMiVT 기계는 수백 대의 슈퍼 컴퓨터를 포함하여 총 수천 부의 소련 표준에 따라 거대한 순환으로 제작되었습니다. 그들은 Dubna, Arzamas, Moscow State University, MCC, A-135 미사일 방어 시스템, S-300 등 어디에나 있었지만 어디에 없었는지 나열하는 것이 더 쉽습니다.
Lebedev 학교는 영원하고 영구적인 AK와 마찬가지로 우리가 여전히 그들의 유산과 함께 살고 있는 독점을 달성했습니다.
ITMiVT는 어떻게 이 위치에 왔습니까?
1958년까지 Lebedev는 Vladimir Andreevich Melnikov와 Vsevolod Sergeevich Burtsev라는 두 명의 좋아하는 학생과 상속인을 갖게 되었습니다. 두 번째는 "Elbrus"와 관련하여 별도의 토론이 필요합니다. 지금은 Melnikov의 운명과 작업을 고려해 보겠습니다.
1951 년 MPEI에서 "수학 및 계산 장치 및 장치"전문 분야의 학생들이 첫 졸업을했으며 같은 해에 부서가 만들어졌습니다. 졸업은 학생들이 이미 "자동화 및 원격 제어"라는 전문 분야의 프레임워크 내에서 아날로그 컴퓨터 설계에 대해 교육을 받았기 때문에 이루어졌습니다. 그 당시에는 디지털 기계에 대한 이야기가 없었고, 비서실장인 G.M. Zhdanov는 그 세대의 거의 모든 과학자와 마찬가지로 아날로그 기계만 전문으로 1956년에 그의 교과서 "수학 기계 및 연속 작동 장치"를 출판했습니다.
이러한 보수주의에도 불구하고 Zhdanov는 컴퓨터 아키텍처 전문가, 특히 모스크바 전력 공학 연구소의 무선 공학 교수진을 졸업한 두 명의 졸업생인 우리의 오랜 친구 Kartsev와 Matyukhin을 교육했습니다. 그러한 사례에 대해 듣고 다른 많은 사람들은 제쳐두고 있지 않았습니다. Kitov, Rameev 및 당연히 국내 컴퓨터 공학의 전문가가되기위한 길을 막 시작한 Lebedev에게도 알려져 있습니다.
이미 언급했듯이 Lebedev는 우수한 전기 엔지니어였으며 처음에는 에너지 문제를 전문으로 했으며 MPEI의 전력 시스템 릴레이 보호 및 자동화 부서에서 근무하면서 네트워크 계산을 단순화하기 위해 1945년에 아날로그 기계를 제작하기도 했습니다.
1939년, 교수의 논문에 반대하여. AV Netushila(자동화 및 컴퓨터 공학부의 차기 학장) Lebedev는 "고속 펄스 카운터의 트리거 요소 분석"이라는 주제를 연구하고 디지털 컴퓨팅 셀의 다소 특이한 아키텍처에 대해 생각했습니다.
방어는 전쟁 후에야 이루어졌고 3년 후 Lebedev는 MESM을 건설하기 위해 키예프로 떠났습니다(그런데 Khrushchev는 당시 우크라이나 SSR의 공산당(볼셰비키) 중앙위원회 제XNUMX서기였습니다. 이것은 그들의 우정이 시작되었습니다). Lavrentiev가 그를 그곳에서 다시 모스크바로 데려갔을 때(사실 그 전에는 그를 모스크바에서 달성하기 어려운 전체 연구소의 이사직에 초대했습니다), Lebedev는 우리가 기억하는 대로 다음과 같은 스케치를 가지고 있었습니다. 대형 기계의 아키텍처.
BESM의 창설과 병행하여 그는 MPEI에서 계속 가르쳤고 그곳에서 첫 번째 졸업생인 대학원생 중에서 초기 팀을 모집하여 새 컴퓨터의 노드를 설계하는 임무를 맡겼습니다(이전에는 학생 졸업장 훨씬 더 재미있었습니다. 졸업 작품으로 유럽 최초의 컴퓨터 중 하나의 노드를 개발하는 것은 dacha 마을이 계산할 변압기 상자가 아닙니다.
1951년에 가장 저명한 사람들 중에는 V.A. 멜니코프와 V.S. Burtsev, 후자의 삶은 일반적으로 어려웠고 전쟁 중에 부모를 잃고 Lebedev를 아버지처럼 대했습니다. 이 쌍 외에도 A.G. 루쓰, I.D. 비준, A.S. 페도로프와 LA 올로프.
일반적으로 Lebedev에는 두 가지 매우 강력한 측면이 있습니다.
첫째, 그는 가능한 한 짧은 시간에 인적 자원을 확보하고 능숙하게 업무에 적응시키는 일류 조직자였습니다. 이것은 Brooke만이 그와 비교할 수 있습니다.
둘째, 외적인 심각성에도 불구하고 여기에서도 아무도 그와 비교할 수 없었습니다. Lebedev는 매우 매력적이고 침착하며 유연하고 재치있는 사람이었습니다. 가로 Kitov, Brook, Rameev, Kartsev, Yuditsky가 부족한 자질과 실제로 거의 모든 사람에게 Lebedev의 학교에 패한 국내 디자이너.
Lebedev는 그의 엄격한 지도하에 컴퓨터 개발을 일종의 컨베이어 벨트로 전환시킨 유일한 사람입니다. 그는 자신이 (그가 할 수 있는 한, 구식의 정신으로) 기본 논리 셀을 설계하고 명령 시스템(1940년대 정신에서 엄격하게 고전적이며 실제로 그는 그 중 20개만 발명했습니다. MESM / BESM / M-6, 두 번째는 BESM-XNUMX), 그리고 나머지는 모두 그의 학생들이 했고 실제로 기계를 제작했습니다.
그는 또한 소비에트 발전의 매우 중요한 부분인 참여자들과의 상호 작용을 담당했습니다.
Lebedev는 일종의 소련의 잡스였습니다. 그는 Korolev와 마찬가지로 소비에트 시스템의 모든 수준에서 거의 모든 것을 어디에서나 밀어내는 방법을 알고 있었지만 Korolev와 달리 너무 아름답고 미묘하여 돈을 벌지 못했습니다. 그의 죽음은 (다른 모든 디자이너들과 달리) 한 혈통이 아니었고, 그를 학교에서 잃은 사람들에게도 사랑받고 존경받았습니다.
그 결과 1951년 말까지 1번 연구소의 기초는 1953년까지 Lebedev의 BESM을 완성한 Moscow Power Engineering Institute의 졸업생들로 구성되었습니다. Melnikov는 제어 장치 개발에 참여했고 너무 성공적이어서 BESM-2를 조립할 때 BESM-6의 설계자이자 사실상 수석 설계자가 되었습니다.
BESM-6 개발의 초기 단계에 대해서는 거의 알려진 것이 없으며(6이 왜 5가 어디에 있었는지조차 명확하지 않음) 합리적인 참조는 1964년 이후에야 발견되었습니다.
비슷한 서양 건축물을 탐색하면 한 방울의 빛을 발산하는 데 도움이 될 수 있습니다.
IBM 7030 스트레치
1959년에는 과학 컴퓨팅을 위한 매우 강력한 상업용 컴퓨터인 IBM 7090이 출시되었고 최초의 두 가지 진정한 슈퍼컴퓨터인 IBM 7030 Stretch와 Remington Rand UNIVAC LARC가 등장했습니다. LARC 특수 발자국 역사 떠나지 않았지만 IBM 7030은 진정한 아이콘이 되었습니다.
우선, 초당 1,2만 작업을 초과하는 성능을 달성한 최초의 제품이었습니다. 1959년에는 XNUMXMIPS, 미친 수치였습니다. SMS 시스템을 사용하는 첫 번째 - 표준 모듈식 카드; 첫 번째, 계층적 하드웨어 설계의 기본 원리가 발견되고 적용되는 개발 과정에서 최적의 명령 시스템 개발에서 시작하여 표준 셀의 개별 모듈 구현으로 끝납니다.
Stretch는 표준 페라이트 메모리 모듈을 사용한 최초의 프로덕션 컴퓨터였으며, 또 다른 혁신인 오일 침지 냉각 기능이 있습니다. 또한 Stretch는 2개의 병렬 스레드에서 메모리를 읽고 쓸 수 있어 XNUMXMIPS 수준에서 RAM 작업 속도를 달성할 수 있었습니다. 프로세서).
8비트 바이트 및 32/64/22비트 기계어, 가장 편리하고 지금까지 표준이 된 주소 지정 가능한 메모리 셀)도 정확히 그 안에 나타났고 스트레치 프로세서는 Intel Core 이전에 완전히 50비트였습니다. 또한 컴퓨터에는 비트 필드 작업을 위한 하드웨어 지원이 있어 가변 길이의 데이터 유형으로 작업할 수 있습니다.
Stretch는 실수 산술, 정수 산술 및 영숫자 문자를 지원합니다. 또한 멀티프로그래밍과 이 프레임워크 내에서 메모리 보호 및 표준 인터럽트를 최초로 구현했습니다.
스트레치는 에미터 연결 논리 회로를 기반으로 하는 세계 최초의 초강력 및 우수한 냉각 기능을 필요로 했지만 최대한 빠른 속도로 다양한 형태의 ECL 논리가 1980년대까지 슈퍼컴퓨터 하드웨어의 표준이 되었습니다.
프로세서에서 XNUMX단계 표준 파이프라인의 첫 번째 사용(클래식 가져오기, 디코딩, 실행 단계). 컨베이어에 대해서는 아래에서 별도로 이야기하겠습니다. 세계 최초로 주변 장치와 함께 가장 유연하고 효과적인(저렴하지는 않지만) 보편적인 작업 구현이 적용되었으며 이는 오늘날까지 메인프레임의 주요 기능이 되었습니다.
특수 데이터 교환 보조 프로세서(ESC - 교환 특수 컴퓨터, 예, LARC에서는 여전히 명확한 용어 구분이 없었습니다. 예를 들어 두 프로세서를 각각 "컴퓨터"라고 하고 I/O 하위 시스템을 "프로세서")는 메인 스위치의 역할을 하여 32개의 I/O 채널과 RAM 간의 통신을 제공하여 중앙 프로세서의 부담을 덜어줍니다. 이 방식은 너무 효과적이어서 IBM S/360으로 마이그레이션했고 오늘날에도 여전히 대형 컴퓨터에서 사용되고 있습니다.
또한 Stretch의 가치는 모든 유형의 마그네틱 드라이브에서 타자기 및 펀처에 이르기까지 IBM의 방대한 장비 목록과 완벽하게 호환되며 채널 보조 프로세서 덕분에 이 모든 경제가 항상 완전히 병렬로 작동한다는 사실에 있었습니다. 원하는 케이블을 간단히 꽂기만 하면 연결되었습니다.
지원되지 않는 것을 벼락치기 위해 고생했던 소비에트 엔지니어(주변기기가 있는 대형 컴퓨터의 거의 모든 사소한 연결에는 괴물 같은 목발이 필요하기 때문에)는 스트레치를 설정하면 안도의 눈물을 흘릴 것입니다.
Stretch 명령 시스템은 엄청나게 진보적이었고 Gene Amdahl, Stephen Dunwell, Fred Brooks 및 John Cocke가 개발하는 동안 발견한 많은 아이디어가 말 그대로 현대 마이크로프로세서에 사용되었으며 표준이 되었습니다. . 그 중에는 명령어 사전 디코딩 및 피연산자 사전 인출(분기 예측을 기반으로 한 최초의 추측 실행 형태), 잘못된 전환 후 파이프라인 다시 로드, 고급 인덱스 레지스터 등이 있습니다.
Stretch 프로세서의 디코딩 및 예측 장치는 실제로 자체 파이프라인이 있는 별도의 컴퓨터였습니다. 이로 인해 공식적으로는 단일 프로세서로 남아 있지만 Stretch는 행렬 곱셈에 4개의 명령어만 필요했습니다. 무엇보다도 이 기계는 IBM 35보다 704배 더 강력하고 컴팩트한 것으로 판명되었으며 Stretch에는 동일한 기계가 필요했습니다. 185제곱미터의 홀 m. 거의 같은 양의 에너지를 소비했습니다.
일반적으로 이 기계의 장점을 설명하는 데 시간이 오래 걸리고, 가장 중요한 것은 이 모든 것이 1959년이라는 점이며, 이 모든 것이 당시의 오픈 소스와 UNIVAC LARC 디자인에 설명되어 있습니다.
이야기에서 가장 흥미로운 부분
그리고 이제 이야기의 가장 흥미로운 부분 - Lebedev는 소련 전문가 그룹의 일원으로 1959년 7090월 컴퓨터 엔지니어링의 고급 경험을 연구하기 위해 IBM에 미국에 도착합니다. XNUMX주 만에 소련 대표단은 MIT와 IBM 공장을 방문하여 과학 컴퓨터 XNUMX에 대해 알게 되었고 일반적으로 "컴퓨터 회사 - 대학 고객" 생산 및 상호 작용 조직에 대해 알게 되었습니다. 아마도 이 순간에 소련에서 동일한 것을 반복하는 슈퍼 아이디어가 형성되었을 것입니다. 과학 센터를 위해 통합된 강력한 컴퓨터 아키텍처를 생성합니다.
IBM의 역할은 ITMiVT가, Amdall과 Brooks의 역할은 Lebedev와 Melnikov가 담당했습니다. 미래의 BESM-6이 그 역할을 할 프로토 타입 자동차를 선택하는 것이 남아 있습니다.
그건 그렇고, Lebedev는 독일과 1965 년에도 일본과 그의 제자 Melnikov에서 인도와 중국의 여러 곳을 방문했으며 인도와 함께 성장한 것은 없었지만 중국에서는 중국 클론 BESM을 마스터하는 데 도움이되었습니다. 2 생산 중 ...
Stretch 복제에 대한 이야기는 없었습니다. 기계는 엄청나게 복잡했고 소련 산업계에서는 이를 끌어내지 않았을 것입니다. 또한 구현의 많은 세부 사항이 숨겨져 있었고 그 자체로 Lebedev가 목표로하고 소련이 실제로 필요로했던 약간 다른 틈새 시장을 차지했습니다.
소련은 강력하고(당시 연구소에 있던 그 어떤 것보다 훨씬 강력함) 보편적이며 대량으로 재생산될 수 있는 (상대적으로) 저렴한 과학 컴퓨터가 절실히 필요했습니다. 쿠르차토프 연구소, 모스크바 주립 대학, 바우만카, 두브나, 노보시비르스크, 아르자마스 등 원자력 연구와 관련된 많은 응용 분야가 있었습니다. BESM-2 및 M-20은 당기지 않았습니다. 모든 연구 센터는 최소 7090KIPS의 속도를 가진 자동차인 아날로그 200을 요구했습니다.
이 경우 Lebedev는 미국 출장을 갔고 고급 경험을 공부할 필요가 있음을 모두 이해했습니다.
이를 위해 과학 아카데미, 장관 및 Khrushchev가 가장 좋아하는 그는 자금을 녹아웃하고 팀을 구성했습니다. 분위기는 밝았고 모두가 상승했습니다. 소련은 과학 컴퓨터의 효과적인 개발 비밀을 배우고 마침내 동물원 "Minskov", "Nairi", "Uralov" 대신 자체 컴퓨터를 만들 것입니다. , 서로 양립 할 수 없으며 순환이 적고 강력하지 않습니다.
어떤 의미에서 Lebedev는 컴퓨터에서 Kalashnikov가 되기를 정말로 원했습니다. 수백 개로 찍힐 수 있는 소비에트 권력의 상징인 참조 구현을 만들기 위해서였습니다.
그는 그의 임무에 대처했습니까?
별로라고 해서 스포일러가 되지는 않습니다.
그렇다면 Lebedev는 왜 그리고 어디에서 실패했으며 BESM-6에 대한 신화는 어디에서 왔습니까?
이 질문에 답하려면 먼저 서쪽으로 더 가야 합니다.
그래서 1959년에 Lebedev는 자신의 아키텍처를 개발하기 시작했습니다. 단순한 대형 기계가 아니라 MESM 및 BESM과는 완전히 다른 원리에 기반을 둔 과학 슈퍼머신입니다. 7030.
누가 개발을 이끌 것입니까? 물론 BESM 및 BESM-2에서 자신을 입증 한 Melnikov는 의심의 여지가 없었습니다.
누가 단위인 Melnikovskaya 그룹을 개발할 것인지도 분명했습니다.
Lebedev는 항상 그렇듯이 조직 문제를 해결하여 당 노선을 따라 자금과 일반 지원을 중단하고 컴퓨터 엔지니어링의 세계 모델을 연구하고 새 기계에 대한 명령 시스템을 개발했습니다. 그리고 연구할 것이 있었습니다. 복사를 위한 프로토타입을 결정하는 것이 필요했습니다.
1946년, 미 해군은 전쟁 기간 동안 일본 해군 코드의 디코더를 작업하던 엔지니어들로 소규모 회사인 ERA(Engineering Research Associates)를 만들었습니다. 회사는 ERA 1103을 포함한 여러 민간 차량을 개발했지만 의회는 해군을 상업용 차량으로 비난했고 1952년 회사는 Remington Rand에 매각되었습니다. 그런 다음 Sperry(당시 이미 UNIVAC을 소유하고 있었음)는 Remington을 인수하고 Sperry UNIVAC의 컴퓨터 사업부를 분사하여 IBM 704 - UNIVAC 1103의 경쟁자로 재설계된 ERA를 출시했습니다.
CDC 1604
Sperry는 분명히 IBM 다음으로 시장에서 두 번째로 큰 기업이 되기로 결정한 대량 상용 메인프레임을 목표로 하고 있었고 1957년에 전직 군사 엔지니어 그룹이 그것에 질려버렸습니다. William Norris, Robert Perkins, William R. Keye, Howard Shekels, Robert Kisch 및 Seymour Roger Cray는 Sperry를 떠나 5달러의 칩을 가지고 전설이 된 그들의 회사인 Control Data Corporation을 등록했습니다.
수석 엔지니어는 역사상 가장 위대한 컴퓨터 설계자 중 한 명인 Cray로, 모든 슈퍼컴퓨터의 아버지라 불리는 아이러니가 없습니다.
그러나 그의 첫 번째 작업은 훨씬 간단한 기계인 CDC 1604였습니다. 돈이 부족하여 과학 및 상업용 컴퓨터로 제작되었습니다(신생 회사는 일반 트랜지스터에 대한 자금조차 없었고 Cray는 결함이 있는 것으로 프로토타입을 조립했습니다. 지역 라디오 부품점에서 저렴한 가격으로 구입할 수 있는 것), 그는 즉시 Cray의 천재성이 지닌 모든 놀라운 능력을 발견했습니다.
괴물 같은 과학적 IBM 1604보다 몇 배나 저렴한 CDC 7090는 그보다 빠른 것으로 밝혀졌으며 한동안 약 200KIPS의 성능으로 지구상에서 가장 강력한 범용 컴퓨터가 되었습니다.
CDC 1604는 가산기가 있는 1950년대 미국식 기계의 전형적인 아키텍처를 가지고 있었고 더 진보적인 범용 레지스터는 없었습니다. 프로그램 카운터 및 산술 보조 레지스터) 및 각각은 6개의 48비트 명령어를 포함하는 유니캐스트, 24비트 기계어였습니다. 기계에는 정수와 실수 산술이 있었습니다.
흥미로운 기능은 작업 표시였습니다. 배터리의 상위 1604비트는 DAC에서 읽고 콘솔에 내장된 진공관 앰프를 사용하여 스피커를 통해 재생할 수 있습니다. 이 구성표는 다양한 음향 효과 및 기계 작업자에게 경고하도록 프로그래밍할 수 있습니다. CDC XNUMX의 아키텍처와 실행 프로그램을 잘 아는 사람은 오류가 발생한 위치를 소리로 즉시 이해할 수 있었습니다.
그래서 프로토타입을 찾았습니다.
CDC 1604는 IBM 7090보다 저렴하고 빠르며 아키텍처가 더 단순했으며 1961년 만에 미국 연구소에 엄청난 양을 판매했습니다. 이것은 XNUMX년까지 Fortran 프로그램의 거대한 배열이 작성되었음을 의미했으며 그 중 핵 과학자들이 탐내는 소프트웨어가 가장 가치 있는 것으로 인식되었습니다.
하드웨어보다 프로그램을 망치는 것이 훨씬 쉽기 때문에 CDC 1604와의 바이너리 호환성을 달성하는 목표는 처음부터였습니다.
소련에서도 그들은 소프트웨어가 하드웨어보다 더 중요하다는 것을 이해하고 컴퓨터를 개발할 수 있지만 소프트웨어를 작성하는 데 수백만 시간을 투자할 수 있는 곳은 어디입니까?
1960년대에 혁명이 일어나기로 되어 있었습니다. 소련 컴퓨터는 미국 컴퓨터보다 열등하지 않은 많은 응용 프로그램과 함께 등장하기로 되어 있었습니다.
원칙적으로 그러한 계획은 성공할 가능성이 있었지만 Cray는 실패했습니다.
1604년 22월 1963일 CDC 6600 복제를 준비하던 중 Control Data는 역사상 가장 위대한 기계 중 하나인 CDC XNUMX을 발표했습니다.
IBM은 부끄러움을 느꼈고 아직 모든 고객에게 Stretch 제품을 배송하지 않았으며 Cray의 컴퓨터는 그를 컴퓨터 과학의 석기 시대로 보냈습니다. 전통적으로 IBM 괴물보다 훨씬 작고 저렴했으며 3,5메가플롭스 이상인 3배 더 빨랐습니다.
최초의 수퍼스칼라 프로세서, 10개의 주변 보조 프로세서, 최신 평면 실리콘 트랜지스터(400개!)에 코드우드 독점 기술을 사용하여 조립된 가장 컴팩트한 보드의 프레온 냉각(세계 최초), 고급 멀티태스킹 운영 체제 SIPROS(Simultaneous 운영 체제 처리) - 다음은 이 기계의 혁신 중 일부일 뿐입니다. 최초의 컴퓨터 구매자는 원자력 위원회와 기상청이었고 000년까지 1967대의 CDC 63이 엘리트 고객의 손에 들어갔고 당시 과학 연구의 중추가 되었습니다.
Atlant
이와 동시에, 그 당시의 세 번째 상징적인 슈퍼컴퓨터가 영국에 나타납니다. 이 유명한 Atlas는 모든 영국 컴퓨터 과학의 요람인 맨체스터 대학과 정부가 사용하도록 위임한 Ferranti 및 Plessey 회사가 공동으로 개발 및 생산한 것입니다. CDS 및 BESM과 같은 어려운 비즈니스에서 - 핵무기 생성.
Atlas는 상당히 오래된 게르마늄 바이폴라 트랜지스터를 기반으로 구축되었지만 IBM 7030 Stretch 및 CDC 6600과 함께 현대 기계의 세 번째 기둥이 된 매우 진보적인 아키텍처를 가지고 있습니다. 총 3개의 원본 Atlas가 제조되었고 2개의 업그레이드된 Atlas XNUMX Titans가 추가되었습니다. .
Atlas는 IBM 2/12/24비트 표준 대신 48/8/16비트 형식인 CDC에서도 사용된 두 번째로 널리 사용되는 컴퓨터 단어 체계를 사용했습니다. 32비트 기계어에는 부동 소수점 숫자 48개, 명령어 24개, 6비트 주소 또는 부호 있는 정수 XNUMX개 또는 XNUMX비트 문자 XNUMX개가 포함될 수 있습니다.
Atlas 혁신 중에는 감독자 (프로그램 카운터에 대한 자체 레지스터 128 개)와 가상 메모리 (본격)가 있었고 외부 장치와의 작업은 I / O와의 통신을위한 별도의 레지스터를 통해 매우 독창적 인 방식으로 구성되었습니다. 당시 인덱스 레지스터의 수는 이미 XNUMX개였습니다. 또한 Atlas 프로세서에는 평소와 같이 클럭되지 않고 준비 상태로 작동하는 고유한 비동기 파이프라인이 있었습니다.
이 때문에 성능을 평가하기 어려웠지만 테스트에 따르면 대략 Stretch에 해당했습니다(Atlas는 약 1,59μs에 두 개의 부동 소수점 수를 추가하고 Stretch는 1,38-1,5μs에 추가). CDC 1964이 등장한 6600년이 되어서야 Atlas가 크게 능가했으며 Cray는 나중에 Cray가 6600을 원래보다 훨씬 빨리 완성할 수 있는 아이디어를 낸 것이 이 기계의 프로토타입에 대한 설명임을 인정했습니다. 예정된.
또한 아키텍처의 독특한 부분이 소위되었습니다. extracodes - 이제 펌웨어라고 부를 수 있는 것은 IBM 머신의 속도와 기능을 능가하는 운영 체제를 구축하는 것을 가능하게 한 사람들이었습니다. 추가 코드는 사인, 로그 및 제곱근과 같이 하드웨어에서 구현하기에 너무 비효율적인 수학적 절차를 호출하는 데 사용되었습니다. 약 150개의 추가 코드가 감독자 기능을 담당하여 OS 작업의 생산성과 보안을 크게 향상시켰습니다.
영국 과학자들은 너무 친절해서 1963년에 소련을 방문했고 심지어 ITMiVT에서 Atlas 기계에 대한 몇 가지 개인 강의를 했으며 같은 해에 그들의 결과에 대한 작은 브로셔가 출판되었습니다. 결과적으로 BESM-6에 대한 작업은 백조, 암 및 창꼬리처럼 거칠게 진행되었습니다. 최종 버전에 포함된 원래 프로젝트의 많은 아키텍처 기능에서 알 수 있듯이 거대한 소프트웨어 라이브러리를 활용하기 위해 CDC 1604에서 다시 작성되기 시작했습니다.
두 경우 모두 기본 요소는 트랜지스터(1960년에는 정상이지만 1968년에는 가능한 한 이상함)였으며 주소 지정은 유니캐스트, 워드 너비는 48비트, 명령 길이는 24비트, 2개의 명령은 워드에 패킹되었습니다. 너비는 또한 48비트, 주소 너비는 15비트, 범용 레지스터 1 + 1 레지스터 누산기, 누산기 회로 추가, RAM의 양이 비트까지 일치 - 32.768 워드입니다.
당연히 이 모든 것은 우연의 일치가 아니었습니다. 그들은 CDC 1604에 초점을 맞춰 아키텍처를 설계하기 시작했습니다. 놀라운 점은 BESM-6 회로 기판의 크기가 인치(특히 6x8인치)였고 일반적으로 하드웨어만 있었습니다. 미터법. TEZ 자체의 아키텍처(기계가 조립되는 기본 모듈이라고 하는 일반적인 교체 요소)도 설치 밀도가 약 6배 낮음에도 불구하고 코드우드 보드를 염두에 두고 명확하게 개발되었습니다. 소련에서는 트랜지스터가 어려웠기 때문에 논리 자체가 다이오드였으며 트랜지스터는 신호를 증폭하고 반전시키는 용도로만 사용되었습니다. 그 결과 60개만 필요했지만 000개의 다이오드가 필요했습니다(CDC는 180개의 트랜지스터에 대해 조립됨).
그리고 Lebedev는 그의 상상력과 BESM-6600을 만드는 과정에서 나타난 Atlas 및 CDC 6 모두의 잘못으로 고통을 겪었습니다.
첫 번째부터 그는 엑스트라코드와 가상 메모리를 원했고 두 번째부터는 직교 명령 시스템을 갖춘 슈퍼스칼라 파이프라인 프로세서를 원했습니다. 많은 기술 솔루션도 거부되었습니다. 예를 들어, IBM 기계에서 실제로 성공한 주변기기와의 채널 작업 아이디어가 있습니다. 1960 년부터 1963 년까지 던지기가있었습니다. 한 차를 시작하고 두 번째 차를 계속하고 세 번째 차에 칩을 추가합시다.
결과적으로 뿔과 다리는 원래 CDC 1604 프로젝트에서 그대로 유지됩니다.
Lebedev는 정수-실수 ALU의 안정적인 연산을 달성할 수 없었기 때문에 기계에서 정수 산술을 버리고 실수 형식을 변경했습니다(1비트 부호, 11비트 순서, CDC 36의 경우 1604비트 가수, 7비트 순서, 1 비트 부호, BESM-40용 6비트 가수) 및 명령 구조(6비트 연산 코드, 3비트 인덱스 또는 전환 조건, CDC 15용 1604비트 주소 또는 피연산자 및 두 가지 가능한 옵션: 4비트 인덱스 레지스터, 6- 비트 opcode, 12비트 주소/피연산자, 또는 4비트 인덱스 레지스터, 4비트 opcode, BESM-15의 경우 6비트 주소/피연산자). 가상 메모리를 구성하려는 시도로 인해 인덱스 레지스터 수가 6개에서 15개로 확장되었습니다.
명령 시스템이 완전히 재설계되었습니다.
CDC 1604는 11개의 정수 명령어와 4개의 실수, 9개의 시프트 명령어, 8개의 논리 명령어, 15개의 메모리 명령어, 6개의 인덱스 산술 명령어, 4개의 점프 명령어 및 3개의 I/O 명령어, 총 57개의 명령어를 가지고 있습니다. BESM-6에는 실제 명령 12개, 시프트 명령 2개, 논리 명령 7개, 메모리 작업을 위한 명령 5개, 인덱스 산술 명령 8개, 점프 명령 7개 및 I/O 명령 41개(총 XNUMX개)가 있습니다.
BESM-6의 흥미로운 기능은 "CLEARING THE NUMBER OF UNITS" 및 "CLEARING THE HOMEPA OF UNITS"를 포함한 특수 비트 명령이었습니다. 이 팀은 CDC 6600에서 직접 추출한 것으로 소위 말하는 대표 팀입니다. "NSA 명령" - 암호 작성자의 편의를 위해 NSA의 요청에 따라 슈퍼컴퓨터 프로세서에 추가된 명령입니다.
예를 들어, 10100110의 수를 계산하는 명령은 popcount(예: popcount (4) = 1980)입니다. IBM Stretch 프로세서에 처음 등장한 후 XNUMX년대와 냉전이 끝날 때까지 모든 구형 CDC 및 Cray 머신에 내장되었습니다. 시대와 고전 슈퍼컴퓨터 ...
필요한 이유는 무엇입니까?
이진 인코딩에서 6600 문자열에서 해밍 거리를 계산합니다. NSA는 가로채는 메시지를 암호 해독하고 있었고 CDC 60에는 XNUMX비트 단어가 있었기 때문에 한 단어로 대부분의 관심 알파벳을 저장할 수 있었습니다.
암호 분석가는 메시지를 줄로 나누고 줄의 각 고유 문자를 단일 비트로 표시하고 popcount를 사용하여 해밍 거리를 계산하고 추가 암호 분석을 위한 해시로 사용했습니다. 불행히도, GRU 또는 KGB 중 적어도 하나의 BESM-6이 사용되었는지 여부는 알려져 있지 않습니다. 저자는 이것을 강력하게 의심하고 이 지침이 프레젠테이션 목적으로 변경되었다고 생각합니다.
"ASSEMBLY" 및 "DIASSEMBLY" 명령어는 마스크로 특정 비트를 선택하는 것으로, 인쇄된 문자의 적어도 일부 정상적인 입출력을 구성하기 위해 특별히 나사로 고정되어 있습니다. 천공 카드와 함께 작동하는 80x12 매트릭스. 단어를 텍스트 XNUMX진수 표현으로 변환하는 작업은 바이트당 XNUMX비트 그룹으로 분해하여 수행되었으며 GOST 인코딩에서 숫자 코드를 즉시 얻었습니다. 어셈블리에 의해 XNUMX진수의 텍스트 표현이 실제 숫자로 변환되었습니다.
당연히 소련 요소 기반에 Atlas 또는 CDC를 조립하는 것은 불가능했으며 패치와 목발을 많이 만들어야했습니다. 디자이너 중 한 명인 V.N. 소리:
[여기서 불행히도 Louth는 더 이상 거기에 있지 않았기 때문에 솔직하지 못하지만 소련을 포함하여 직렬 컴퓨터를 조립하는 데 사용되었습니다.
[또 꽤 괜찮은 실리콘도 있었지만...]
이 다이오드는 스위칭 시간이 짧았으며 트랜지스터보다 몇 배나 우수했습니다. 그러나 터널 다이오드를 기반으로 한 요소는 부하 용량이 좋지 않아 기계 회로가 복잡해져서 빨리 포기했습니다. 트랜지스터를 사용할 때의 어려움은 포화 모드에서 매우 느리게 작동하고, 입력 및 출력 신호의 레벨을 일치시켜야 하기 때문에 불포화 XNUMX극관이 있는 논리 게이트가 복잡하다는 것이었습니다. 어려울 뿐만 아니라 신뢰할 수 없습니다. 한동안 우리는 이 난국에서 벗어날 방법을 찾지 못했습니다. 그러나 적어도 컴퓨팅 기술의 요소에 대해 이전에는 전혀 그리고 어디에도 기술되지 않은 완전히 새로운 아이디어가 떠올랐습니다.
제 생각에는 A.A. 소콜로프. 아이디어의 본질은 다른 전원 회로에 전기적으로 연결되지 않은 잘 알려진 "전류 스위치" 요소에 자율 전원을 도입하는 것이었습니다. 예를 들어, 소형 전자 시계 배터리가 이러한 목적으로 사용될 수 있습니다.
트랜지스터의 컬렉터와 컬렉터 부하(저항) 사이에 배터리를 포함함으로써 스위치는 입력 및 출력 신호의 레벨이 일치하는 요소가 되었으며 자율 전원에 특별히 복잡한 요구 사항이 부과되지 않았습니다. 물론 배터리는 시간이 지남에 따라 방전되므로 설치할 수 없었으므로 실제 회로에서는 페라이트 링의 소형 변압기, XNUMX개의 반도체 다이오드 및 커패시터로 구성된 작은 정류기로 교체되었습니다.
이러한 정류기를 "중단 전원 공급 장치"(PPS)라고 합니다. 이미터 팔로워가 장착된 전류 스위치의 역상 출력은 AND, OR 논리 회로의 입력에서 작동할 수 있습니다. 다음 회로가 등장했습니다. 다이오드 저항 구성 요소에 기반한 수동 조합 논리
[그때쯤이면 전 세계가 TTL과 ECL로 전환했습니다.]
일반적으로 우리가 볼 수 있듯이 BESM-6의 첫 번째 버전의 요소 기반은 그 당시에도 (심지어 소련의 표준에 따르면 훨씬 더 놀랍습니다!) 괴물이었습니다. 그러나 그럼에도 불구하고 평소와 같이, 우리는 우리 자신이 만든 어려움을 얼마나 능숙하게 극복했는지 자랑스러워할 만한 충분한 이유가 있습니다.
결과
이 모든 결과는 CDC 1604와 유사하지만 핀치로 맛을 낸 Atlas 및 CDC 6600의 요소로 조립된 실제 돌연변이의 출현이었습니다. Lebedev의 고유한 비전과 하드웨어 구현을 도입하여 소련의 표준에도 불구하고 왜곡되었습니다.
1963년에 학생들은 ITMiVT에서 그 당시에는 별로 생각하지 못했던 트랜지스터 작업 기술을 연습하면서 미래 BESM-6의 노드를 모델링하기 시작했습니다. 그것은 모두 Lebedev의 어린 학생 (Melnikov보다 작은 구경)의 기억에 따르면 A.A.라는 사실로 끝납니다. Gryzlov, 그들은 단순히 트랜지스터에서 M-20의 노드를 구현하여 결과 생성을 BESM-3이라고 불렀습니다.
놀랍게도 우리가 이미 말했듯이 그의 이니셔티브는 그룹 책임자의 지원을 받아 미니 시리즈 출시를 달성했습니다. 이것이 Lebedev가 할 일이 없었던 ITMiVT 트리-BESM-4에 측면 새싹이 나타나는 방식입니다. . 회고록에 따르면 Lebedev 자신은 그러한 자의식에별로 만족하지 않았고 BESM-4에 신경 쓰지 않았고 그의 모든 관심과 힘은 BESM-6 프로젝트에 흡수되었지만 그는 젊음과 심지어 파티에서 몇 개의 레버를 눌러 기록적인 속도로 네 개의 작은 배치를 시작할 수 있었습니다.
1964년에 연구소는 이미 하나의 메모리 큐브만 있는 프로토타입 BESM-6을 조립했으며 논리 소자에는 더 느린 트랜지스터가 사용되었습니다. 1966년에 절반 용량의 랜덤 액세스 메모리(4개 대신 8개 큐브)가 있지만 설계 동기화 주파수에서 작동하는 최신 트랜지스터 및 다이오드에서 프로토타입이 이미 크게 디버깅되었으며 공장 테스트가 다음에서 수행되었습니다. 가을, 그리고 1967년 XNUMX월에 국가 시험이 종료되었습니다.
BESM-6은 1968년부터 1987년까지 양산되어 총 355대가 생산되었고, 1992년 Dubna에 있는 기계가 꺼지고, 1995년에 끝에서 두 번째(Mikoyan Design Bureau에서)가 꺼지고 해체되었지만, 마지막 ...
BESM-6 345호
BESM-6 No. 345는 1980년에 생산되었고, 1981년에 87286 부대(레닌그라드 지역 Sosnovy Bor)에 등록되었고, 1982년에 모스크바 전문 조립 부서 팀에 의해 설립되었으며, 1983년에 도입되었습니다. NITI의 전문가가 개발 한 복잡한 전체 규모 시뮬레이터 "Diana-Bars"의 중앙 컴퓨터로 사용됩니다. AP 알렉산드로바. 디버깅은 1986년까지 계속되었습니다.
그건 그렇고, 건축물과 장비의 품질에 대해 많은 것을 말해주는, 설치에 대한 일반적으로 소련의 부과적인 접근 방식에 주의를 기울이십시오. 기계 설치에는 1980년이 걸렸고, 서두르지 않은 소프트웨어 디버깅으로 또 10년이 걸렸고(XNUMX년대까지 이미 XNUMX년 동안의 경험과 소프트웨어가 축적되었다는 사실에도 불구하고!) 시뮬레이터와 함께 XNUMX년을 더 보냈고, 그 결과, 기계는 출시된 지 XNUMX(!)년이 지난 후에야 유용한 것을 계산할 수 있었습니다.
그리고 이것은 일반 설치 모드로 간주되었습니다! 동시에, 저주받은 자본주의는 적어도 두 달 동안 하나 또는 다른 기계의 설치가 지연된다는 발표가 무거운 벌금으로 계약을 파기하는 이유가 될 정도로 썩었습니다.
이 점에서 크레이-3의 운명은 1991년 리버모어가 인수할 예정이었지만, 연구소는 납품이 지연되고 계약 이행 불이행을 알게 되자 곧바로 계약을 해지하고 크레이에게 타격을 입혔다. 그의 슈퍼컴퓨터인 NCAR(미국 국립 대기 연구 센터)만 판매할 수 있을 정도로 명성을 얻었지만 과거의 장점에도 불구하고 군대와 연구소는 이 슈퍼컴퓨터를 사용하기를 거부했습니다.
1993년 NCAR에 Cray-3를 탑재했지만 XNUMX년여간 안정적인 운영을 하지 못하고 해체되면서 Cray Research가 부도가 났다.
소련에서는 이미 생산된지 13년이 된 직렬 컴퓨터라도 설치와 디버깅을 하면 XNUMX년의 서두르지 않은 마무리 작업이 쉽게 끝날 수 있었고 이것이 절대적인 규범으로 인식되었습니다. , 서두르지 않았다.
BESM-6 No. 345로 돌아가면 1986년에 발사되어 2008년까지...!
이것은 선과 악, 상식을 초월한 것입니다. 잠수함 승무원 시뮬레이터의 컴퓨터로 사용되었으며 지난 10년 동안 문자 그대로 정직한 인쇄할 수 없는 단어에 대해 작업해 왔으며 직원들은 공식 수명을 훨씬 넘어서 박물관의 고대 유물이 제대로 작동하도록 최선을 다하고 있습니다. .
희귀성의 추가 운명은 알 수 없습니다. 폴리 테크닉 박물관의 BESM-6이 그녀일 가능성이 있습니다. 아마도 노파는 고철 용광로에서 삶을 마감했을 것입니다.
동시에 Lebedev의 마법에주의를 기울이십시오. BESM-6 자체 개발에서 시리즈로 3 년이 지났고 순전히 객관적인 이유로 자동차 문서, 디버깅 등을 만지작 거리면서 Kartsev는 1,5년 동안 당 관리들에 의해 사무실에서 사무실로 옮겨져 그를 심장마비에 이르게 했으며, 그가 사망한 후 직원들이 M-13의 출시를 완료하는 데 XNUMX년이 더 걸렸습니다!
합계
그리고 마지막으로 불타는 질문, 그것이 일어났습니까?
소련 연구 기관의 요구 사항을 충족하는 틈새 컴퓨터를 만들 수 있었습니까? 필요한 모든 프로그램을 실행하는 CDC 1604와 동일합니까?
아아, 아니, 여기 Lebedev가 모든 것을 망쳤습니다.
한 번에 아키텍처의 세 가지 소스와 세 가지 구성 요소에 집중하려는 시도는 실패로 이어졌습니다. BESM-6은 자랑스럽게 별도의 아키텍처로 간주될 만큼 CDC 1604와의 호환성을 잃었고 탐나는 수백만 줄의 미국 코드 실행을 중단하기에 충분했습니다. 모두가 시작했습니다.
Lebedev는 너무 영리했고 결과적으로 바이너리 호환성을 달성할 수 없었습니다. 완벽하게 컴파일되고 CDC에서 작동하는 Fortran 프로그램은 BESM-6에서 가장 예상치 못한 곳에서 떨어졌습니다. 이를 수정하기 위해 그들은 전체 교과서와 논문(예: Borovin G.K., Komarov M.M., Yaroshevsky V.S. "Errors-traps when programming in Fortran")을 쓰기 시작했지만 귀중한 시간이 낭비되고 작업이 중단되었습니다.
그 결과 1966년 테스트 단계에서도 만감이 교차하는 가운데 거대한 프로젝트가 끝났다.
문제는 남아 있습니다. 지금 무엇을 해야 합니까?
결과는 다음과 같았다.
첫째, 더 이상 변태하지 않고 바이너리 호환성을 달성하기 위해 전체 서양 아키텍처를 간단하고 정확하게 복사하기로 굳게 결정했습니다. Lebedev 자신은 자신의 신용으로 실수를 깨닫고 더 이상 어떤 것도 설계하기를 열망하지 않았으며, 또한 과학 아카데미 회의에서 S/360을 빌리는 아이디어를 지지했습니다(이는 별도로 논의해야 함).
둘째, Melnikov는 더 이상 독립적으로 개발할 수 없습니다. BESM-10 프로젝트는 시작도 하지 않았고, 설명과 초안만 보존되어 있었고, 그가 죽을 때까지 담당했던 "Electronics SS BIS"는 Cray-1의 클론이 되는 것이었다.
셋째, 국가의 가장 중요한 핵 중심지인 더브나에서 미국 소프트웨어와 호환되는 것을 긴급히 납품할 필요가 있었고, 그 결과 외교가 개입되어 스위스와 같은 중립국을 통해 수출하거나 사거나 훔치려는 시도가 있었습니다. 실제 CDC 1604, 그리고 더 나은 - CDC 6600. 시도는 부분적으로만 성공했습니다.
CDC 1604는 미 해군이 사용했고 Minuteman I 발사를 통제하기 위해 사용되었기 때문에 군사용 기술이었지만 1968년까지 단종되고 구식이 되었기 때문에 Control Commission은 공급을 반대하지 않았습니다. 1968년(BESM-6과 동시에) CDC도 JINR에 정착했습니다.
특히 흥미로운 점은 CDC 회사 자체가 북한을 포함해 어느 곳에서도 판매하는 것을 반대하지 않았으며, 이사인 William Norris가 자신의 하원의원인 Richard T. Hanna에게 특별 서한을 보내 해당 회사를 공산주의자들과의 협력:
사회주의자를 포함한 모든 국가는 최첨단 기술을 더욱 발전시킬 수 있는 상당한 컴퓨터 하드웨어 기술 기반을 보유하고 있습니다. 컴퓨터 기술에서 미국의 주요 강점은 광범위한 애플리케이션을 위한 우수한 비용/성능 컴퓨터 시스템을 시장에 내놓을 수 있는 능력입니다. 이것은 주어진 응용 프로그램이나 응용 프로그램 그룹에 대해 성능에 관한 한 다른 국가에서 동등한 제품을 만들 수 없거나 미국에서 사용할 수 있는 것을 초과할 수 없다는 것을 의미하지 않습니다. 또한 내가 아는 한 소련이 적절한 컴퓨터 기술의 부족으로 인해 군사 프로젝트를 수행하는 것을 방해했다는 증거가 없습니다 ...
우리는 귀하의 위원회가 위의 사항을 검토하고 기록에 통합하는 것을 고려하기를 정중하게 요청합니다. 우리는 사회주의 국가들과의 이러한 잠재적 관계에 대한 보다 자세한 견해를 제공하고 행정부 및 의회 무역 이니셔티브 및 목표를 지지하는 이유를 설명하기 위해 귀하의 위원회에 출석하는 특권을 갖게 된 것을 기쁘게 생각합니다.
회장 William C. Norris의 편지
데이터 코퍼레이션을 하원의원으로
리차드 T. 한나, 1973.
기계와 함께 제공되는 제품에는 소스 코드가 포함된 Fortran이 포함된 컴파일러가 포함되어 있으며 Nikolai Nikolaevich Govorun이 이끄는 JINR 프로그래머 팀은 직접 작업을 거부했기 때문에 BESM-6에 영감을 받아 아날로그를 작성하려고 했습니다. .
결과적으로 나는 먼저 어셈블러(Lebedev의 니모닉이 있는 자동 코드가 너무 불편하여 실제로 사용되지 않음)를 작성한 다음 로더, 라이브러리 지원 및 논리적으로 Dubna라는 이름의 나머지 운영 체제를 작성해야 했습니다.
당연히 이것은 자부심을 가질만한 충분한 이유가되었습니다. 전문 프로그래머 부서의 힘든 작업은 물리학자와 아마추어 엔지니어가 수행했으며 결과는 일반적으로 만족 스러웠습니다.
이 이야기의 직접적인 연속은 다음 기사에서 우리를 기다리고 있습니다.
정보