KR20010034508A - 향상된 연관 메모리 및 스위치를 구비한 컴퓨터 - Google Patents

향상된 연관 메모리 및 스위치를 구비한 컴퓨터 Download PDF

Info

Publication number
KR20010034508A
KR20010034508A KR1020007009098A KR20007009098A KR20010034508A KR 20010034508 A KR20010034508 A KR 20010034508A KR 1020007009098 A KR1020007009098 A KR 1020007009098A KR 20007009098 A KR20007009098 A KR 20007009098A KR 20010034508 A KR20010034508 A KR 20010034508A
Authority
KR
South Korea
Prior art keywords
unit
control
input
output
group
Prior art date
Application number
KR1020007009098A
Other languages
English (en)
Inventor
로버트 엘. 에머랄드
Original Assignee
로버트 엘. 에머랄드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 로버트 엘. 에머랄드 filed Critical 로버트 엘. 에머랄드
Publication of KR20010034508A publication Critical patent/KR20010034508A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17356Indirect interconnection networks
    • G06F15/17368Indirect interconnection networks non hierarchical topologies
    • G06F15/17375One dimensional, e.g. linear array, ring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
    • G06F15/8015One dimensional arrays, e.g. rings, linear arrays, buses
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Multi Processors (AREA)
  • Information Transfer Systems (AREA)

Abstract

컴퓨터 시스템은 n 프로세서 유닛(1-n;n은 양의 정수), 제 1 스위치(2), 제 2 스위치(3), 버퍼링블록(5), 및 m 연관 메모리 모듈(4-m;m은 양의 정수)을 포함하고, 계산중에 데이터 플로 제어를 사용하고, 계산의 von Neumann원리를 사용하는 프로세싱 수단을 추가로 포함하여, 연관 메모리의 용량이 감소되고, 성능이 향상된다.

Description

향상된 연관 메모리 및 스위치를 구비한 컴퓨터{COMPUTER WITH IMPROVED ASSOCIATIVE MEMORY AND SWITCH}
종래의 컴퓨터 시스템은 프로세서, 및 스위칭 네트의 대응 입력부 및 출력부와 접속된 입력부 및 출력부 및 프로세서 디바이스의 그룹을 포함한다. 이러한 시스템은 계산 프로세스 체제에 대한 데이터 플로 제어를 사용한다. 프로세서 디바이스의 효율적인 로딩은 성능 레벨에 영향을 준다. 이것은 모든 부분의 루틴상에서의 병렬 명령 처리의 사용으로 달성되고, 계산의 프로그래밍된 체제에 의해 지지되며, 여기서, 초기 루틴은 각 노드가, 한 명령어가 다른 명령의 수행에 기능적으로 의존함을 나타내고 아크가 결과 전송의 방향을 한정하는 그래프로서 매핑된다. 스위칭 네트에 의해 이들끼리 서로 접속되는 각각의 한 세트의 프로세서 디바이스는 루틴의 고정된 국부부분을 프로세스한다. 프로세스 디바이스는 병렬로 동작하고, 프로세스된 루틴의 부분 사이에 필요한 동기화는 스위칭 네트를 통하여 디바이스 사이에 전송된 데이터 수단에 의해서 수행된다. 전체 루틴에 대해 각각의 프로세서 디바이스의 액세스의 부재, 및 국부적으로 프로세스된 부분의 상호동기의 필요성은 프로세서 디바이스의 작동시간의 비효율적인 손실을 생기게 하여, 시스템의 성능에 감소를 야기시킨다(미국특허 제4,814,978호).
본 출원에 개시된 발명과 가장 밀접한 종래의 컴퓨터 시스템은 N 프로세서, 제 1 및 제 2 스위치, N 모듈의 연관 메모리, 버퍼링 블록, 제 1 내지 제 3 정보 입력부, 제어 입력부, 및 제 1 및 제 2 정보 출력부를 포함한다. i번째 프로세서의 제 1 제어 출력부 및 어드레스 출력부는 제 1 그룹의 제어 입력부 중의 i번째 입력부와 대응적으로 접속되며, 제 1 스위치의 제 1 그룹의 어드레스 입력부 중의 i번째 입력부와 대응적으로 접속된다. i번째 프로세서 유닛의 제 1 및 제 2 정보 출력부는 제 1 스위치의 제 1 그룹의 정보 입력부 중의 i번째 대응 입력부와 접속된다. i번째 프로세서의 제 1 정보, 어드레스, 제어 및 제 2 정보, 어드레스, 제어 입력부는 시스템의 제 1 및 제 2 정보 입력부와 접속된다. 시스템의 제어 입력부는 제 1 스위치의 제어 입력부와 접속되며, i번째 프로세서의 제 3 제어 입력부와 접속된다. 제 1 스위치의 제어 출력부는 i번째 프로세서의 제 4 제어 입력부와 접속된다. 프로세서의 제 3 정보 출력부는 시스템의 제 1 정보 출력부와 접속된다. 제 2 스위치의 i번째 그룹의 교환 출력부중의 제 1 제어, 제 1 정보, 제 2 제어, 제 2 정보 출력부는 i번째 프로세서의 제 5 제어, 제 3 정보, 제 6 제어 및 제 4 정보 입력부와 대응 접속된다. 제 2 스위치의 제 1 그룹의 제어 출력부는 버퍼링 블록의 제 1 그룹의 제어 입력부와 접속된다. 제 2 스위치의 제 2 그룹의 제어 출력부는 버퍼링 블록의 제 2 그룹의 제어 입력부와 접속된다. 제 2 스위치 및 버퍼링 블록의 제어 입력부, 및 각 모듈의 연관 메모리의 제 1 제어 입력부는 시스템의 제어 입력부와 접속된다. 제 2 스위치의 제 1 및 제 2 그룹의 제어 입력부 중의 i번째 입력부는 i번째 프로세서의 제 2 및 제 3 제어 출력부와 대응 접속된다. i번째 프로세서의 제 7 및 제 8 제어 입력부는 버퍼링 블록의 제 1 및 제 2 그룹의 제어 출력부 중의 i번째 출력부와 대응 출력된다. 제 3 그룹의 제어 출력부 및 버퍼링 블록의 제 1 그룹의 정보 출력부는 제 3 그룹의 제어 입력부 및 제 2 스위치의 제 1 그룹의 정보 입력부와 대응접속된다. 버퍼링 블록의 제 2 그룹의 정보 출력부는 시스템의 제 2 정보 출력부와 접속된다. 제 2 스위치의 제 4 그룹의 제어 입력부는 버퍼링 블록의 제 4 그룹의 제어 출력부와 접속된다. 버퍼링 블록의 제 1 그룹의 정보 입력부 중의 i번째 입력부는 i번째 프로세서의 제 4 및 제 5 정보 출력부와 접속된다. i번째 프로세서의 버퍼링 블록의 제 4 제어 출력부는 제 3 그룹의 제어 입력부 중의 i번째 입력부와 접속된다. 버퍼링 블록의 제 3 그룹의 정보 출력부는 제 2 스위치의 제 2 그룹의 정보 입력부와 접속된다. 연관 메모리의 i번째 모듈의 제1 제어 출력부는 제 1 스위치의 제 2 그룹의 제어 입력부 중의 i번째 입력부와 접속된다. 제 1 스위치의 그룹의 정보 출력부 중의 i번째 출력부는 연관 메모리의 i번째 모듈의정보 입력부와 접속된다. 연관 메모리의 i번째 모듈의정보 및 제 2 제어 출력부는 제 2 그룹의 정보 입력부 중의 i번째 입력부, 및 버퍼링 블록의 제 4 그룹의 제어 입력부 중의 i번째 입력부와 접속된다. 버퍼링 블록의 제 3 그룹의 정보 입력부는 시스템의 제 3 정보 입력부와 접속된다. 그리고, 제 1 스위치의 그룹의 제어 출력부 중의 i번째 출력부는 연관 메모리의 i번째 모듈의 제2 제어 입력부와 접속된다. (PCT/RU 96/ 00347)
이러한 시스템은 임의의 내부-프로세서 교환없이도 정보 프로세싱을 제공하므로, 프로그램 프로세싱에 대한 시간을 단축시킨다. 더우기, 이러한 시스템은 시스템 동작의 전체적인 인터럽트 없이 하나 이상의 프로세서의 실패를 허용한다. 고레벨 성능은 실행중인 루틴에 요구되는 시간을 단축시키게 하는 프로세서의 증가된 로딩으로 인하여 달성된다. 높은 정도의 병렬화는 자동으로 달성되며, 프로세서 중의 각 루틴으로부터의 병렬 프로세스의 분배그룹에 대한 필요성이 제거된다.
그러나, 이러한 시스템은 고성능을 낮은 레벨의 내부 병렬화를 갖는 실행 루틴, 또는 루틴 부분에 제공하는 것을 실패한다. 예를 들면, 루틴 명령의 순차적인 수행은 데이터 프로세싱의 전통적인 von Neumann 원리를 사용하는 시스템만큼 효율적으로 실행되지 않는다.
더우기, 이러한 디바이스는 계산 프로세서, 및 데이터 및 결과를 저장하는 연관 메모리 하드웨어를 제어하는 데이터플로를 사용한다. 연관 메모리는 동시에 하드웨어의 제어 수단 기능을 수행한다. 따라서, 메모리 분배의 프로세스중 시간이 손실이 없기 때문에, 성능이 증가한다.
그러나, 시스템의 성능은 연관메모리에 직접 의존하며, 시간의 단위로, 연관메모리로부터의 데이터 출력의 속도에 의해 정의된다. 복수의 오퍼랜드가 출력되고, 시간단위로의 프로세싱 준비완료가 N=1/Tam으로 정의되며, 여기서, Tam은 데이터 출력의 조회 순간으로부터 연관 메모리의 작업 시간이다.
Tam 값은 연관 메모리의 용량(또는 크기)에 직접 의존한다. 연관 메모리의 크기가 증가할수록, 실행 루틴으로부터의 조회 시간으로부터 측정된 Tam은 커지기 때문에, 디바이스의 성능은 연관 메모리가 증가할수록, 감소하게 된다.
따라서, 저레벨의 내부 병렬화를 갖는 큰 용량의 실행루틴이 프로세스될 때, 디바이스가 고레벨 성능을 달성하는 것을 실패한다.
(발명의 개요)
본 발명의 목적은 연관 메모리의 용량을 감소시킴과 동시에, 계산의 데이터플로제어의 공통 사상을 위배함이 없이 계산의 von Neumann 원리에 따라서 데이터 프로세싱의 국부사용을 동시에 도입함으로써 성능을 증가시키는 것이다.
상기 문제는 이러한 방식으로 해결된다. 컴퓨터 시스템은 N 프로세서 유닛, 제 1 스위치, 제 2 스위치, N 모듈의 연관 메모리, 버퍼링 블록, 제 1 내지 제 3 정보 입력부, 및 제어 입력부 및 제 1 및 제 2 정보 출력부를 포함한다. i번째 프로세서 유닛(i=1...N)의 제 1 제어 출력부 및 어드레스 출력부는 제 1 스위치의 그룹의 어드레스 입력부 중의 i번째 입력부, 및 제 1 그룹의 제어 입력부 중의 i번째 입력부와 대응 접속된다. i번째 프로세서 유닛의 제 1 및 제 2 정보 출력부는 제 1 스위치의 제 1 그룹의 정보 입력부중의 i번째 입력부와 대응 접속된다. i번째 프로세서 유닛의 제 1 정보, 어드레스, 제어 입력부 및 제 2 정보, 어드레스, 제어 입력부는 시스템의 제 1 및 제 2 정보 입력부와 접속된다. 시스템의 제 1 제어 입력부는 제 1 스위치의 제어 입력부, 및 i번째 프로세서 유닛의 제 3 제어 입력부와 접속된다. 제 1 스위치의 제어 출력부는 i번째 프로세서 유닛의 제 4 제어 입력부와 접속된다. i번째 프로세서 유닛의 제 3 정보 출력부는 시스템의 제 1 정보 출력부와 접속된다.
제 2 스위치의 i번째 그룹의 교환 출력부 중의 제 1 제어, 제 1 정보, 제 2 제어, 제 2 정보 출력부는 i번째 프로세서 유닛의 제 5 제어, 제 3 정보, 제 6 제어, 제 4 정보 입력부와 대응 접속된다. 제 2 스위치의 제 1 그룹의 제어 출력부는 버퍼링 블록의 제 1 그룹의 제어 입력부와 접속된다. 제 2 스위치의 제 2 그룹의 제어 출력부는 버퍼링 블록의 제 2 그룹의 제어 입력부와 접속된다. 제 2 스위치 및 버퍼링 블록의 제어 입력부, 및 각 모듈의 연관 메모리의 제 1 제어 입력부는 시스템의 제어 입력부와 접속된다. 제 2 스위치의 제 1 및 제 2 그룹의 제어 입력부 중의 i번째 입력부는 i번째 프로세서 유닛의 제 2 및 제 3 제어 출력부와 대응 접속된다. i번째 프로세서 유닛의 제 7 및 제 8 제어 입력부는 버퍼링 블록의 제 1 및 제 2 그룹의 제어 출력부 중의 i번째 출력부와 대응 접속된다. 버퍼링 블록의 제 3 그룹의 제어 출력부 및 제 1 그룹의 정보 출력부는 제 2 스위치의 제 3 그룹의 제어 입력부 및 제 1 그룹의 정보 입력부와 대응 접속된다. 버퍼링 블록의 제 2 그룹의 정보 출력부는 시스템의 제 2 정보 출력부와 접속된다. 제 2 스위치의 제 4 그룹의 제어 입력부는 버퍼링 블록의 제 4 그룹의 제어 출력부와 접속된다. 버퍼링 블록의 제 1 그룹의 정보 입력부 중의 i번째 입력부는 i번째 프로세서 유닛의 제 4 및 제 5 정보 출력부와 접속된다. i번째 프로세서 유닛의 제 4 제어 출력부는 버퍼링 블록의 제 3 그룹의 제어 입력부 중의 i번째 입력부와 접속된다. 버퍼링 블록의 제 3 그룹의 정보 출력부는 제 2 스위치의 제 2 그룹의 정보 입력부와 접속된다. 연관 메모리의 i번째 모듈의 제1 제어 출력부는 제 1 스위치의 제 2 그룹의 제어 입력부 중의 i번째 입력부와 접속된다. 제 1 스위치의 그룹의 정보 출력부 중의 i번째 출력부는 연관 메모리의 i번째 모듈의정보 입력부와 접속된다. 연관 메모리의 i번째 모듈의정보 및 제 2 제어 출력부는 버퍼링 블록의 제 2 그룹의 정보 입력부 중의 그리고 제 4 그룹의 제어 입력부 중의 i번째 입력부와 접속된다. 버퍼링 블록의 제 3 그룹의 정보 입력부는 시스템의 제 3 정보 입력부와 접속된다. 그리고, 제 1 스위치의 그룹의 제어 출력부 중의 i번째 출력부는 연관 메모리의 i번째 모듈의 제2 제어 입력부와 접속된다.
N 프래그먼트 루틴 프로세싱 유닛, 제 1 추가 스위치, 제 2 추가 스위치, 및 추가 버퍼링 블록이 있다. 제 1 스위치의 제어 유닛은 i번째 프래그먼트 루틴 프로세싱 유닛의 제 1 제어 입력부와 접속된다. i번째 프래그먼트 루틴 프로세싱 유닛의 제 1 정보 입력부는 시스템의 제 1 정보 입력부와 접속된다.
시스템의 제어 입력부는 제 1 및 제 2 추가 스위치의, 추가 버퍼링 블록의, i번째 프래그먼트 루틴 프로세싱 유닛의 제 2 제어 유닛의 제어 입력부와 접속된다.
i번째 프래그먼트 루틴 프로세싱 유닛의 제 3 제어 입력부는 제 2 추가 스위치의 그룹의 제어 출력부 중의 i번째 출력부와 접속된다. 제 2 추가 스위치의 그룹의 정보 출력부 중의 i번째 출력부는 i번째 프래그먼트 루틴 프로세싱 유닛의 제 2 정보 입력부와 접속된다. i번째 프래그먼트 루틴 프로세싱 유닛의 제 3 정보 입력부는 제 1 추가 스위치의 i번째 그룹의 교환 출력부 중의 정보 출력부와 접속된다. 제 1 추가 스위치의 i번째 그룹의 교환 출력부 중의 제어 입력부는 i번째 프래그먼트 루틴 프로세싱 유닛의 제 4 제어 입력부와 접속된다. i번째 프래그먼트 루틴 프로세싱 유닛의 제 1 제어 출력부는 제 2 추가 스위치의 제 1 그룹의 제어 입력부 중의 i번째 입력부, 및 제 1 추가 스위치의 제 1 그룹의 제어 입력부 중의 i번째 입력부와 접속된다. 제 1 추가 스위치의 제 2 그룹의 제어 입력부는 추가 버퍼링 블록의 제 1 그룹의 제어 출력부와 접속된다. 추가 버퍼링 블록의 제 1 그룹의 정보 출력부는 제 1 추가 스위치의 그룹의 정보 입력부와 접속된다. 제 1 추가 스위치의 그룹의 제어 출력부는 추가 버퍼링 유닛의 제 1 그룹의 제어 입력부와 접속된다. 추가 버퍼링 유닛의 제 2 그룹의 제어 출력부는 제 2 추가 스위치의 제 2 그룹의 제어 입력부와 접속된다. 제 2 추가 스위치의 그룹의 어드레스 입력부와 그룹의 정보 입력부는 추가 버퍼링 블록의 제 2 그룹의 정보 출력부와 접속된다. 추가 버퍼링 블록의 제 2 그룹의 제어 입력부는 제 2 추가 스위치의 제어 출력부와 접속된다. 연관 메모리의 i번째 모듈의정보 출력부 및 제 2 제어 출력부는 추가 버퍼링 블록의 제 3 그룹의 제어 입력부 중의 그리고, 그룹의 정보 입력부 중의 i번째 입력부와 대응 접속된다. 그리고, i번째 프래그먼트 루틴 프로세싱 유닛의 제 2 제어, 어드레스, 정보 출력부는 제 1 스위치의 제 3 그룹의 제어, 제 2 그룹의 어드레스, 제 2 그룹의 정보 입력부 중의 i번째 입력부와 대응 접속된다.
더우기, 프래그먼트 루틴 프로세싱 유닛은 실행유닛, 출력 레지스터 유닛, 로딩 레지스터 유닛, 입력 레지스터 유닛, 제어 유닛, 및 제 1 스위치를 포함한다. 실행 유닛의 정보 출력부는 출력 레지스터 유닛의 정보 입력부와 접속된다. 출력 레지스터 유닛의 제 1 제어 입력부는 프래그먼트 루틴 프로세싱 유닛의 제 1 제어 입력부와 접속된다. 프래그먼트 루틴 프로세싱 유닛의 제 2 제어 입력부는 실행 유닛의 제 1 제어 입력부, 출력 레지스터 유닛의 제 2 제어 입력부, 제어 유닛의 제 1 제어 입력부, 출력 레지스터 유닛의 제 2 제어 입력부, 제어 유닛의 제 1 제어 입력부, 로딩 레지스터 유닛의 제 1 제어 입력부, 및 입력 레지스터 유닛의 제 1 제어 입력부와 접속된다. 입력 레지스터 유닛의 제 1 제어 출력부는 제어 유닛의 제 2 제어 입력부, 및 프래그먼트 루틴 프로세싱 유닛의 제 1 제어 출력부와 접속된다. 프래그먼트 루틴 프로세싱 유닛의 제 1 정보 입력부는 로딩 레지스터 유닛의 정보 입력부와 접속된다. 로딩 레지스터 유닛의 정보 출력부, 및 입력 레지스터 유닛의 정보 출력부는 실행 유닛의 정보 입력부와 접속된다. 실행 유닛의 제 2 제어 입력부는 출력 레지스터 유닛의 제 1 제어 출력부, 로딩 레지스터 유닛의 제 1 제어 출력부, 입력 레지스터 유닛의 제 2 제어 출력부와 접속된다. 입력 레지스터 유닛의 제 3 제어 출력부, 로딩 레지스터 유닛의 제 2 제어 출력부, 및 출력 레지스터 유닛의 제 2 제어 출력부는 실행 유닛의 제 3 제어 입력부와 접속된다. 실행 유닛의 제 1 제어 출력부는 로딩 레지스터 유닛의 제 2 제어 입력부, 입력 레지스터 유닛의 제 2 제어 입력부, 출력 레지스터 유닛의 제 3 제어 입력부와 접속된다. 출력 레지스터 유닛의 제 3 제어 출력부는 프래그먼트 루틴 프로세싱 유닛의 제 2 제어 출력부와 접속된다. 프래그먼트 루틴 프로세싱 유닛의 제 2 정보 입력부는 제 1 스위치의 제 1 정보 입력부와 접속된다. 제 1 스위치의 정보 출력부는 입력 레지스터 유닛의 정보 입력부와 접속된다. 입력 레지스터 유닛의 제 3 제어 입력부, 로딩 레지스터 유닛의 제 3 제어 입력부, 출력 레지스터 유닛의 제 4 제어 입력부는 실행 유닛의 제 2 제어 출력부와 접속된다. 실행 유닛의 제 3 제어 출력부는 입력 레지스터 유닛의 제 4 제어 입력부, 로딩 레지스터 유닛의 제 4 제어 입력부, 출력 레지스터 유닛의 제 5 제어 입력부와 접속된다. 출력 레지스터 유닛의 어드레스 및 정보 출력부는 프래그먼트 루틴 프로세싱 유닛의 어드레스 및 정보 출력부와 대응 접속된다. 프래그먼트 루틴 프로세싱 유닛의 제 3 제어 입력부는 제어 유닛의 제 3 제어 입력부와 접속된다. 제어 유닛의 제 4 제어 입력부는 프래그먼트 루틴 프로세싱 유닛의 제 4 제어 입력부와 접속된다. 프래그먼트 루틴 프로세서의; 제 3 정보 입력부는 제 1 스위치의 제 2 정보 입력부와 접속된다. 제 1 스위치의 제 1 및 제 2 제어 입력부는 제어 유닛의 제 1 및 제 2 제어 출력부와 대응 접속된다. 제어 유닛의 제 3 제어 출력부는 입력 레지스터 유닛의 제 5 제어 입력부와 접속된다. 입력 레지스터 유닛의 제 6 제어 입력부, 로딩 레지스터 유닛의 제 4 제어 입력부, 출력 레지스터 유닛의 제 6 제어 입력부는 실행 유닛의 제 4 제어 출력부와 접속된다. 실행 유닛의 제 5 제어 출력부는 출력 레지스터의 제 7 제어 입력부와 접속된다.
본 발명의 핵심은 프래그먼트 루틴 프로세싱 유닛, 제 1 및 제 2 추가 스위치, 및 추가 버퍼링 블록을 포함한다는 것이며, 대응 접속의 체제는 작업 용량에서의 감소에 의하여 연관 메모리의 교환 속도를 증가시키는 수단에 의해 메인 루틴을 프로세싱함에 있어서, 그리고, 계산의 von Neumann 원리의 수단에 의해 프래그먼트 루틴(저레벨의 내부 병렬화를 갖는 루틴)을 프로세싱함에 있어서 컴퓨터의 향상된 성능을 제공하여, 그 결과, 효율적으로 프로세스된 루틴 개수의 상당한 향상을 낳는다.
계산의 데이터플로 제어 원리는 실행되고 있는 전체 프로그램을 실행시키는데 사용된다. 메인 루틴은 계산 프로세스 상의 데이터 플로 제어의 원리를 사용하여 프로세스된다. 저레벨의 내부 병렬화를 갖는 프래그먼트 루틴이 추출된다. 삼각법 형식으로의 프래그먼트와 같은 계산의 국부 특성화 및 낮은 병렬화를 가지거나, 유사한 프래그먼트와 직접 접속되지 않는 다른 기능을 갖는 프래그먼트는 계산의 von Neumann 원리를 사용하여 프로세스된다. 프래그먼트 루틴의 프로세싱은 연관 메모리의 참여없이 수행되며 연관 메모리의 크기를 줄이는데 기여한다. 프로세서 유닛 중의 태스크(또는 프래그먼트 루틴)분배에 대한 작업 시간의 신속화는 최소화된다. 계산의 von Neumann 원리만을 사용하는 전통적인 멀티프로세서 시스템에 대조적으로, 개시된 시스템은 태스크의 분배를 위한 대응 연산 시스템을 요구하지 않는다.
본 발명은 컴퓨터 기술에 관한 것으로, 특히, 고성능 디지털 계산 시스템에서 특히 유용한 정보처리용 데이터플로 제어를 사용하는 계산 디바이스에 관한 것이다.
본 발명은 첨부된 도면 및 본 출원의 실시예에 의해서 설명될 것이다.
도 1은 본 발명의 시스템 다이어그램,
도 2는 도 1에 있는 시스템의 데이터플로 프로세서 유닛의 다이어그램,
도 3은 도 2에 있는 프로세서 유닛의 제 1 스위치 제어 유닛의 다이어그램,
도 4는 도 2에 있는 프로세서 유닛의 제 2 스위치 제어 유닛의 다이어그램,
도 5는 도 2에 있는 프로세서 유닛의 명령 프로세싱을 위한 실행 디바이스의 다이어그램,
도 6은 도 5에 있는 디바이스의 제어 유닛의 다이어그램,
도 7은 도 5에 있는 디바이스의 스위칭 블록의 다이어그램,
도 8은 도 7에 있는 스위칭 블록의 제어 유닛의 다이어그램,
도 9는 도 5에 있는 디바이스의 입력 레지스터 유닛의 다이어그램,
도 10은 도 5에 있는 디바이스의 명령 레지스터 유닛의 다이어그램,
도 11은 도 2에 있는 프로세서 유닛의 오퍼랜드 프로세싱을 위한 실행 디바이스의 다이어그램,
도 12는 도 11에 있는 디바이스의 제어 유닛의 다이어그램,
도 13은 도 11에 있는 디바이스의 입력 레지스터 유닛의 다이어그램,
도 14는 도 11에 있는 디바이스의 출력 레지스터 유닛의 다이어그램,
도 15는 도 1에 있는 시스템의 제 2 스위치의 다이어그램,
도 16은 도 15에 있는 스위치의 제어 유닛의 다이어그램,
도 17은 도 15에 있는 스위치의 스위칭 유닛의 다이어그램,
도 18은 도 16에 있는 유닛의 준비완료 세트 제어 유닛의 다이어그램,
도 19는 도 16에 있는 유닛의 스위칭 제어 블록의 다이어그램,
도 20은 도 19에 있는 블록의 우선순위 제어 유닛의 다이어그램,
도 21은 도 19에 있는 블록의 입력 문의 수신 유닛의 다이어그램,
도 22는 도 17에 있는 스위칭 유닛의 트랜스포머-수신기의 다이어그램,
도 23은 도 17에 있는 스위칭 유닛의 트랜스포머-송신기의 다이어그램,
도 24는 도 1에 있는 시스템의 버퍼링 블록의 다이어그램,
도 25는 도 24에 있는 버퍼링 블록의 버퍼링 유닛의 다이어그램,
도 26은 도 25에 있는 버퍼링 유닛의 버퍼의 다이어그램,
도 27은 도 26에 있는 버퍼의 제어 유닛의 다이어그램,
도 28은 도 1에 있는 시스템의 연관 메모리 모듈의 다이어그램,
도 29는 도 1에 있는 시스템의 제 1 스위치의 다이어그램,
도 30은 도 29에 있는 스위치의 제어 유닛의 다이어그램,
도 31은 도 30에 있는 제어 유닛의 전송 제어 유닛의 다이어그램,
도 32는 도 30에 있는 제어 유닛의 수신 제어 유닛의 다이어그램,
도 33은 도 30에 있는 제어 유닛의 스위칭 제어 유닛의 다이어그램,
도 34는 도 1에 있는 시스템의 프래그먼트 루틴 프로세싱 유닛의 다이어그램,
도 35는 도 34에 있는 프로세싱 유닛의 실행 유닛의 다이어그램,
도 36은 도 34에 있는 프로세싱 유닛의 출력 레지스터 유닛의 다이어그램,
도 37은 도 34에 있는 프로세싱 유닛의 입력 레지스터 유닛의 다이어그램,
도 38은 도 34에 있는 프로세싱 유닛의 제어 유닛의 다이어그램,
도 39는 도 1에 있는 시스템의 제 1 추가 스위치의 다이어그램,
도 40은 도 1에 있는 시스템의 제 2 추가 스위치의 다이어그램,
도 41은 도 1에 있는 시스템의 추가 버퍼링 블록의 다이어그램,
도 42는 도 41에 있는 추가 버퍼링 블록의 버퍼 유닛의 다이어그램,
도 43은 계산 그래프의 일반적인 외형도,
도 44는 정보 패키지 구조의 설명도,
도 45는 본 발명의 시스템의 데이터 플로 프로세서 부분의 구조도,
도 46은 본 발명의 시스템의 프래그먼트 루틴 프로세싱 유닛 부분의 구조도.
본 출원은 데이터 플로 프로세싱의 원리를 사용하는 계산 시스템의 새로운 구조를 도입한다. 특히, 본 시스템은 실행되고 있는 프로그램의 메인 루틴의 프로세싱하도록 데이터 플로 제어 프로세싱을, 그리고, 프래그먼트 루틴을 프로세스하도록 데이터 프로세싱의 von Neumann 원리를 사용한다.
계산의 데이터플로 제어 원리는 실행되고 있는 전체 프로그램을 실행시키는데 사용된다. 메인 루틴은 계산 프로세스 상의 데이터 플로 제어의 원리를 사용하여 프로세스된다. 저레벨의 내부병렬화를 갖는 프래그먼트 루틴이 추출된다. 삼각법 형식으로의 프래그먼트와 같은 계산의 국부 특성화 및 낮은 병렬화를 가지거나, 유사한 프래그먼트와 직접 접속되지 않는 다른 기능을 갖는 프래그먼트는 계산의 von Neumann 원리를 사용하여 프로세스된다. 프래그먼트 루틴의 프로세싱은 연관 메모리의 참여없이 수행된다.
데이터플로 시스템의 프로그램 구조는 노드, 및 노드를 접속하는 아크로 이루어진 그래프로서 설명된다. 노드는 연산을 나타내며, 아크는 시스템을 통과하는 토큰의 경로를 설명한다. 노드에 의해 나타낸 정보는 패킷으로 어셈블리된다.
정보의 토큰은 복수의 필드로 세부분할되는 단어이다. 필드는 데이터상에서 수행되는 연산을 나타내는 연산부호 필드, 프로세스될 정보를 나타내는 하나의 데이터 필드, 하나 이상의 수신지 또는 프로세싱 결과가 지시되는 노드를 나타내는 1 또는 2의 수신지 필드, 및 프로그램 실행의 문맥, 프로세싱 동안 식별을 위하여 사용되는 태그 또는 키 등을 나타내는 또 다른 필드를 포함한다. 키 또는 태그는 수행되고 있는 반복, 동일 노드 등에 대해 수신된 한 쌍의 개별 토큰을 식별하도록 사용된다.
또한, 정보의 패킷은 복수의 필드로 세부분할된 단어이다. 패킷은 하나 또는 두개의 데이터 필드를 포함할 수 있다.
따라서, 데이터플로 그래프에 따라서 기록된 프로그램은 데이터가 프로세싱동안에 전송되는 방향을 가르킨다. 각 노드는 입력 데이터를 프로세스하며, 시스템 출력부 또는 하나 이상의 노드에 수신된 하나이상의 결과를 산출한다.
도 1 및 도 45를 참조로, 개시된 시스템의 데이터 플로부분은 N프로세서 유닛(1-i), 제 1 스위치(2), 제 2 스위치(3), 버퍼링블록(5), 및 M 연관 메모리 모듈(4-i)을 포함하며, 여기서, N은 양의 정수(i=1,...N), M은 양의 정수(i=1,... M)이다.
버퍼링 블록(5)은 제 2 스위치(3)의 입력부상에 있는 입력문의의 부드러운 피크에 사용된다. 시작 프로세스의 버퍼링 블록(5)의 사용은 추가적인 기능이다.
일반적으로, 시스템의 데이터 플로부분은 적어도 하나의 프로세서, 적어도 하나의 연관 메모리 모듈, 적어도 하나의 제 1 스위치, 적어도 하나의 제 2 스위치를 포함한다. 버퍼링 블록의 기능은 예를 들면, 버퍼링 블록(5)과 같은 개별 버퍼링 수단, 및 예를 들면, 제 2 스위치와 같은 시스템의 다른 유닛에 편성된 버퍼링 수단에 의해서 수행될 수 있다.
하나이상의 프로세서 유닛을 가진 시스템에서, 각 프로세서 유닛의 설계 및 구성은 다른 모든 프로세서 유닛의 설계 및 구성과 동일한 것이 바람직하다. 이것은 일부 이점을 가지며, 예를 들면, 시스템에서의 하나 또는 수개의 프로세서가 실패한다면, 시스템은 사용자 또는 프로그래머에 의한 조정의 필요없이 여전히 연산할 수 있다. 각 프로세서 유닛은 더 작은 서브유닛으로 세부분할될 수 있는, 바꾸어 말해, 특정 실행 디바이스로 전용될 수 있는 국부 또는 커맨드 명령 메모리 유닛을 포함한다. 프로세서 유닛은 임의의 개수의 실행 디바이스를 포함할 수 있다. 바람직하게, 주어진 프로세서 유닛에서, 각 실행 디바이스는 특정 형태의 정보를 프로세싱하는데 가장 적합하다. 예를 들면, 각 프로세서 유닛은 두개의 실행 디바이스 및 각 실행 디바이스에 전용되는 국부 커맨드 명령 메모리 서브유닛을 포함할 수 있으며, 여기서 한 실행 디바이스는 프로세싱 제어 명령에 가장 적합하며, 다른 실행유닛은 프로세싱 오퍼랜드에 가장 적합하다.
실행되고 있는 프로그램의 전체 커맨드 명령 세트는 각 프로세서 유닛에 로딩된다. 바람직하게, 하나 이상의 실행 디바이스, 및 각 실행 디바이스에 전용되는 국부 메모리 서브유닛을 가진 프로세서 유닛에 있어서, 단지 주어진 실행 유닛에 의해서만 사용된 이들 명령은 그 실행 디바이스에 전용된 메모리 서브유닛에만 로딩된다. 프로세서 유닛에서 프로세싱되기 위해 수신된 패킷은 버퍼링 블록을 통하여 제 2 스위치로 향하게 된다. 버퍼링 블록은 패킷에 포함된 데이터의 타입을 근거로 하여 각 패킷을 식별한다. 식별된 패킷은 즉시 또는 후에 전송될 때까지 버퍼링에 저장된 후에 제 2 스위치로 향하게 된다. 예를 들면, 버퍼링 블록은 오퍼랜드를 포함한 패킷과, 제어 명령을 포함한 패킷을 구별할 수 있다. 다른 실시예에서, 버퍼링 블록은 수신 오퍼랜드 패킷 전용의 적어도 하나의 버퍼, 및 수진 제어 명령 전용의 적어도 하나의 버퍼를 포함할 수 있다.
제 2 스위치는 다음의 사용가능한 프로세스 유닛에 수신된 각 패킷을 순차적으로 분배한다. 바람직하게, 각 패킷은 다음의 사용가능한 프로세서 유닛에 향하게 될 뿐만 아니라, 패킷 타입을 근거로 하여 패킷의 프로세싱을 위해 가장 잘 사용되는 실행 디바이스로 특히 향하게 될 수 있다. 제 2 스위치에서 프로세서 유닛으로의 전송은 "프리 어드레스(free address)" 스위칭 체제에 의해 결정된다. 즉, 제어 신호는 제 2 스위치에서 프리 프로세서 유닛으로의 정보의 전송을 지시한다. 예를 들면, 전송은 프리 레지스터의 존재에 의해 지시될 수 있다.
실행 디바이스에서 수신된 패킷은 프로세스되고, 프로세싱의 결과가 얻어진다. 결과가 최종 결과라면, 즉 다른 노드로 수신되지 않는다면, 그 결과는 시스템의 출력부로 향하게 된다. 그 결과가 단일 입력 결과라면, 즉, 순차노드의 입력부에만 수신된다면, 그 결과는 추가 프로세싱을 위한 버퍼링 블록에 직접 전송된다. 그 결과가 두개의 입력 결과라면, 즉, 순차노드의 두개의 입력부중의 하나부에만 수신된다면, 그 결과는 추가 프로세싱을 위하여, 제 1 스위치 및 연관메모리를 통하여 버퍼링 블록에 간접 전송된다.
제 1 스위치에 의해 수신된 각 토큰은 추가 프로세싱을 위한 각 토큰의 쌍과 매칭되어야 한다. 제 1 스위치는 토큰의 쌍이 연관 메모리에 이미 저장되었는지를 결정하도록 수신된 각 토큰상에 있는 키를 사용한다. 만약 쌍이 발견된다면, 두개의 토큰이 패킷으로 함께 쌍을 이룬다. 패킷은 즉시, 또는 뒤에 전송될 때까지 연관 메모리에 저장된 후에 버퍼링 블록으로 향하게 된다. 만약 수신된 토큰 쌍이 발견되지 않는다면, 토큰은 토큰 쌍의 도착을 기다리기 위해 연관메모리로 향하게 되어 저장된다. 프로세서 유닛에서 연관 메모리 모듈로의 토큰의 전송은 "고정 어드레스" 스위칭 체제에 의해 결정된다. 즉, 시스템은 프로세서 유닛으로부터 연관 메모리 모듈로 정보를 전송하도록 고정 어드레스 스위칭 수단을 포함한다.
예를 들면, 연관 메모리 유닛은 하나이상의 모듈의 연관메모리를 포함할 수 있다. 이러한 경우에, 토큰은 토큰에 코드화된 키를 근거로 하여 연관 메모리의 특정 위치 및 모듈로 향하게 될 수 있다. 한 쌍의 각 토큰은 토큰의 쌍 이룸을 용이하게 하도록, 동일한 키로 코드화된다. 바람직하게, 모듈의 수는 해싱 함수를 사용하여 토큰상에서 코드화된 키로부터 결정된다. 또한, 바람직하게, 해싱 함수는 하드웨어에서 구현되며, 프로세서 유닛에 적용된다.
바람직하게, 제 2 스위치 및/또는 제 1 스위치는 스위칭을 용이하게 하도록 차원적인 또는 공간적인 광학 시스템과 같은 광학 시스템을 사용한다. 즉, 이러한 시스템은 스위칭을 용이하게 하는 적어도 하나의 광학 시스템을 포함하는 것이 바람직하다. 예를 들면, 각각의 제 1 스위치는 차원적인 광학 시스템을 포함한다. 차원적인 광학 시스템은 트랜스포머-전송기, 레이저 이미터, 광수신기(photo receiver), 및 트랜스포머-수신기를 포함한다. 광학 시스템은 제어식 디플렉터, 제 1 그룹의 렌즈 레스터, 제어식 광학 트랜스패어런시, 및 제 2 그룹의 광학 렌즈 레스터를 또한 포함할 수 있다. 패킷 또는 토큰은 입력 레지스터에 전송된다. 입력 레지스터로부터의 병렬코드는 병렬코드가, 레이저 이미터에 전송된 직렬코드로 변환되는 트랜스포머-전송기에 전송된다. 직렬코드에 대응하는 레이저 신호는 광학 시스템을 통하여 광수신기로, 그리고, 병렬코드가, 입력 레지스터에서 수신된 패킷 또는 토큰에 대응하는 병렬코드로 변환되는 광수신기에서 트랜스포머-수신기로 전달된다.
도 1 및 도 46을 참조로, 개시된 시스템의 프래그먼트 루틴 프로세싱 유닛부분은 프래그먼트 루틴 프로세서 유닛(6-1...6-N)의 그룹, 제 1 추가 스위치(7), 제 2 추가 스위치(8), 및 추가 버퍼링 블록(9)을 포함한다.
일반적으로, 개시된 시스템의 프래그먼트 루틴 프로세싱 유닛부분은 적어도 하나의 프래그먼트 루틴 프로세서 유닛, 적어도 하나의 제 1 추가 스위치, 적어도 하나의 제 2 추가 스위치(8), 및 적어도 하나의 추가 버퍼링 블록을 포함한다.
연관 메모리로부터의 패킷 출력이 프래그먼트 루틴의 프로세싱을 위한 개시 패키지가 될 때, 기능 필드의 비트는 버퍼 유닛(9)으로 전송된다. 다른 모든 관점에서, 프래그먼트(F)에 대한 개시 패키지 전송의 추가 태스크는 제 1 추가 스위치(7)를 통하여 버퍼 유닛(5)의 출력부로부터 프래그먼트 루틴 프로세싱 유닛(6-i)로 상기 패키지의 전송에 따라서 수행된다.
제 1 추가 스위치(7)는 프래그먼트 루틴 프로세서 유닛(6-1...6-N)의 그룹으로부터 제 1 프리 유닛(6-k)을 선택하는 기능을 한다.
프로세스된 각 패키지가 연관 메모리 모듈(4-1...4-N)에 주소화된 프로세서 유닛(1-1...1-N)과 대조적으로, 각각의 프래그먼트 루틴 프로세싱 유닛에서, 메인 루틴의 정의부분(프래그먼트)은 완전히 프로세스되고, 단지 최종 결과만이, 연관 메모리 모듈(4-1...4-N)에 전송된다.
(프로세싱의 von Neumann 원리에 대응하는) 루틴의 로딩은 컴퓨터 시스템의 초기 로딩 시에 수행된다. 실행 루틴의 프래그먼트의 명령 및 데이터는 메모리(495)에서 로딩된다.
프래그먼트(F)의 프로세싱 결과는 유닛(6-k)으로부터 제 1 스위치(2)로 전송된 다음, 프래그먼트(F)의 프로세싱을 위한 시작 명령이 발신되는 연관 메모리 모듈(4-j)로 다시 전송된다.
유닛(6-k)의 출력 포맷은 프로세서 디바이스(1-i)의 명령 프로세싱으로부터 산출된 반-패키지의 포맷과 동일하다. 이것은 실행 루틴의 공통 필드를 갖는 프래그먼트(F)의 프로세싱으로부터 생긴 데이터를 결합하게 한다.
본 발명을 구현하는 최상의 방법
컴퓨터 시스템(도 1)은 프로세서 유닛의 그룹(1-1...1-N), 제 1 스위치(2), 제 2 스위치(3), 연관 메모리 모듈의 그룹(4-1...4-N), 버퍼링 블록(5), 프래그먼트 루틴 프로세서 유닛의 그룹(6-1...6-N), 제 1 추가 스위치(7), 제 2 추가 스위치(8), 추가 버퍼링 블록(9)을 포함한다.
컴퓨터 시스템은 제 1, 제 2, 및 제 3 정보 입력부(10,11,12), 제어 입력부 (13), 제 1 및 제 2 정보 출력부(14-15), 메모리 제로아이징(프로그램 초기화를 제로로 함) 입력부(16)를 또한 포함한다.
도 45를 참조로, 각 프로세서 유닛(1-i)은 제 1, 제 2, 제 3, 제 4 정보 입력부(17,18,19,20), 제 1 및 제 2 어드레스 입력부(21-1, 21-2), 각각의 제 1 내지 제 8 제어 입력부(22-1...22-8), 제 1 내지 제 4 제어 출력부(23-1...23-4), 어드레스 출력부(24), 및 제 1 내지 제 5 정보 출력부(25-1..25-5)를 포함한다.
제 2 스위치(3)는 제어 입력부(26), 제 1 내지 제 4 그룹의 제어 입력부(27-1...27-N,28-1...28-N,29-1...29-N,30-1...30-N), 제 1 및 제 2 그룹의 정보 입력부(31-1-1...31-1-N,31-2-1...31-2-N), 제 1 및 제 2 그룹의 제어 출력부(32-1...32-N,33-1...33-N), 각각이 제 1 제어, 제 1 정보, 제 2 제어 및 제 2 정보 출력부(34-1-i,34-2-i,34-3-i,34-4-i)를 각각 포함하는 N 그룹의 교환 출력부를 포함한다.
버퍼링 블록(5)은 제어 입력부(35), 제 1 및 제 2 그룹의 제어 입력부(36-1...36-N,37-1...37-N), 제 1 그룹의 정보 입력부(38-1...38-N), 제 3 그룹의 제어 입력부(39-1...39-N), 제 2 그룹의 정보 입력부(40-1...40-N), 제 4 그룹의 제어 입력부(41-1...41-N), 및 제 3 그룹의 정보 입력부(42-1...42-N)를 포함한다. 버퍼링 블록(5)은 제 1 내지 제 3 그룹의 제어 출력부(43-1...43-N,44-1...44-N,45-1...45-N), 제 1 및 제 2 그룹의 정보 출력부(46-1...46-N,47-1...47-N), 제 4 그룹의 제어 출력부(48-1...48-N), 및 제 3 그룹의 정보 출력부(49-1...49-N)를 또한 포함한다.
각 연관 메모리 모듈(4-i)은 제 1 제어 입력부(50), 제로아이징 입력부(51), 정보 입력부(52), 제 2 제어 입력부(53), 제 1 제어 출력부(54), 정보 출력부(55), 및 제 2 제어 출력부(56)를 포함한다.
제 1 스위치(2)는 제어 입력부(57), 제 1 그룹의 제어 입력부(58-1...58-N), 및 제 1 그룹의 어드레스 입력부(59-1...59-N)를 포함한다. 제 1 스위치(2)는 또한 제 2 그룹의 제어 입력부(60-1...60-N), 제 1 그룹의 정보 입력부(61-1...61-N), 제 3 그룹의 제어 입력부(62-1...62-N), 제 2 그룹의 어드레스 입력부(63-1...63-N), 제 2 그룹의 정보 입력부(64-1...64-N), 제어 출력부(65), 정보 출력부 그룹(66-1...66-N), 및 제어 출력부의 그룹(67-1...67-N)을 포함한다.
도 46을 참조로, 각 프래그먼트 루틴 프로세싱 유닛(6-i)은 제 1 제어 입력부(68), 제 2 제어 입력부(69), 제 3 제어 입력부(70), 제 4 제어 입력부(71), 제 1 정보 입력부(72), 제 2 정보 입력부(73), 제 3 정보 입력부(74), 제 1 제어 출력부(75), 제 2 제어 출력부(76), 어드레스 출력부(77), 정보 출력부(78)를 포함한다.
제 1 추가 스위치(7)는 제어 입력부(79), 제 1 그룹의 제어 입력부(80-1...80-N), 제 2 그룹의 제어 입력부(81-1...81-N), 정보 입력부의 그룹(82-1...82-N), 제어 출력부의 그룹(83-1...83-N), N 그룹의 교환 출력부를 포함한다. 교환출력부의 각 그룹(i(i=1...N))은 제어 출력부(84-1-i) 및 정보 출력부(84-2-i)를 포함한다.
제 2 추가 스위치(8)는 제어 입력부(85), 제 1 그룹의 제어 입력부(86-1...86-N), 어드레스 입력부의 그룹(87-1...87-N), 제 2 그룹의 제어 입력부(88-1...88-N), 정보 입력부의 그룹(89-1...89-N), 제어 출력부(90), 정보 출력부의 그룹(91-1...91-N) 및 제어 출력부의 그룹(92-1...92-N)을 포함한다.
추가 버퍼링 블록(9)은 제어 입력부(93), 제 1 그룹의 제어 입력부(94-1...94-N), 제 2 그룹의 제어 입력부(95-1...95-N), 정보 입력부의 그룹(96-1...96-N), 제 3 그룹의 제어 입력부(97-1...97-N)를 포함한다. 더우기, 추가 버퍼링 블록(9)은 제 1 그룹의 제어 출력부(98-1...98-N), 제 1 그룹의 정보 출력부 (99-1...99-N), 제 2 그룹의 제어 출력부(100-1...100-N), 제 2 그룹의 정보 출력부(101-1...101-N)를 포함한다. 동기화 및 에너지 공급 회로는 도시생략한다.
각 프로세서 유닛(1-i;도 2)은 제 1 및 제 2 스위치(102,103), 제 1 및 제 2 스위치에 대한 각각의 제 1 및 제 2 추가 스위치(104,105), 명령 프로세싱에 대한 실행 디바이스(106), 및 오퍼랜드 프로세싱에 대한 실행 디바이스(107)를 포함한다.
스위치(102)는 제 1 및 제 2 제어 입력부(108-1,108-2), 제 1 내지 제 4 정보 입력부(109-1,109-2,109-3,109-4), 및 프로세서 유닛의 출력부(25-4,25-5)와 접속된 제 1 및 제 2 정보 출력부를 포함한다.
스위치(103)는 제 1 및 제 2 제어 입력부(111-1,111-2), 제 1 내지 제 6 정보 입력부(112-1,112-2,112-3,113-1,113-2,113-3), 및 프로세서 유닛의 출력부(24, 25-1,25-2)와 각각 접속된 제 1 내지 제 3 정보 출력부를 포함한다.
제 1 스위치 제어 유닛(104)은 제 1 및 제 2 제어 입력부(114,115), 제 1 내지 제 4 제어 출력부(116-1,116-2,117-1,117-2), 프로세서 유닛의 입력부(22-7,22-8)와 접속된 제 3 내지 제 4 제어 입력부, 및 프로세서 유닛의 출력부(23-4)와 접속된 제 5 제어 출력부를 포함한다.
제 2 스위치 제어 유닛(105)은 제 1 및 제 2 제어 입력부(118,119), 제 1 내지 제 4 제어 출력부(120-1,120-2,121-1,121-2), 프로세서 유닛의 입력부(22-4)와 접속된 제 3 제어 입력부, 및 프로세서 유닛의 출력부(23-1)와 접속된 제 5 제어 출력부를 포함한다.
명령 프로세싱을 위한 실행 디바이스(106)는 제 1 및 제 2 제어 입력부(122, 123), 제 1 및 제 2 제어 출력부(124,125), 제 3 제어 출력부(126), 어드레스 출력부(127), 제 1 및 제 2 정보 출력부(128.129), 프로세서 유닛의 출력부(25-3)와 접속된 제 3 정보 출력부, 프로세서 유닛의 입력부(17,19)와 각각 접속된 제 1 및 제 2 정보 입력부, 프로세서 유닛의 입력부(22-1,22-2,22-3)와 각각 접속된 제 3 내지 제 5 제어 입력부, 프로세서 유닛의 입력부(21-1)와 접속된 어드레스 입력부를 포함한다.
오퍼랜드 프로세싱을 위한 실행 디바이스(107)는 제 1 및 제 2 제어 입력부(130, 131), 제 1 내지 제 3 제어 출력부(132,133,134), 어드레스 출력부 (135), 제 1 및 제 2 정보 출력부(136.137), 프로세서 유닛의 출력부(25-3)와 접속된 제 3 정보 출력부, 프로세서 유닛의 입력부(18,20)와 각각 접속된 제 1 및 제 2 정보 입력부, 프로세서 유닛의 입력부(22-2,22-3,22-6)와 각각 접속된 제 3 내지 제 5 제어 입력부, 프로세서 유닛의 입력부(21-1)와 접속된 어드레스 입력부를 포함한다.
각 스위치 제어 유닛(104;도 3,105;도 4)은 "AND"소자(138,139), "OR"소자(140), 및 우선순위 코더(141)를 포함한다.
명령 프로세싱을 위한 실행 디바이스(106;도 5)는 제어 유닛(142), 출력 스위치(143), 스위칭 블록(144), 명령 레지스터 유닛(145), 명령 메모리(146), 산술 -논리 유닛(ALU;147), 로딩 스위치(148), 및 입력 레지스터 유닛(149)을 포함한다.
제어 유닛(142)은 제로아이징하는 입력부(150-1), 결과전송의 제어를 위한 제 1 및 제 2 입력부(150-2,150-3), 시작제어 입력부(150-4), 명령 타입 비트를 위한 입력부(150-5), 메모리 준비완료 스위치를 위한 입력부(150-6), ALU 결과 유효 신호를 위한 입력부(150-7), ALU 준비완료 신호를 위한 입력부(150-8), 명령 코드를 위한 입력부(150-9), 데이터 준비완료신호를 위한 제 1 및 제 2 출력부(151-1,151-2), 필드 스위칭 제어를 위한 출력(151-3), 제어 출력부(152-1...152-3), 데이터 수신의 제어를 위한 출력부(152-4), ALU 시작 제어 출력부(152-5) 및 명령 액세스 제어를 위한 출력부(152-6)를 포함한다.
출력 스위치(143)는 제 1 및 제 2 제어 입력부(153-1,153-2), 제 1 및 제 2 정보 입력부(153-3,153-4), 및 실행 디바이스(106)의 출력부(127,129)와 접속된 정보 출력부를 포함한다.
스위칭 블록(144)은 제어 입력부(154-1...154-12), 정보 입력부(155-1... 155-10, 156-1...156-4), 및 실행 디바이스(106)의 출력부(128)와 접속되고 스위치 (143)의 입력부(153-3,153-4)와 접속된 정보 출력부를 포함한다.
명령 레지스터 유닛(145)은 정보 입력부(157-1), 제어 입력부(157-2), 블록 (144)의 입력부(156-1...156-4)와 접속된 정보 출력부를 포함한다.
명령 메모리(146)는 로딩 제어 입력부(158-1), 정보 입력부(158-2), 어드레스 입력부(158-3), 판독 제어 입력부(158-4), 명령 레지스터 유닛(145)의 대응 입력부(157-1,157-2)와 접속되고 제어 유닛(142)의 대응 입력부(150-5,150-6)과 접속된 정보 및 제어 출력부를 포함한다.
(USSR 특허 제1367012호에 개시된 디바이스와 유사하게 만들어진) 산술-논리 유닛(ALU;147)은 명령 제어 입력부(159-1), 제 1 및 제 2 오퍼랜드 입력부(159-2, 159-3), 시작 제어 입력부(159-4), 제 1 및 제 2 정보 출력부(160-1,160-2), 및 제어 출력부(160-3)를 포함한다.
로딩 스위치(148)는 제 1 및 제 2 정보 입력부(161-1,161-2), 제 1 및 제 2 제어 입력부(161-3,161-4), 및 명령 메모리(146)의 어드레스 입력부(158-3)와 접속된 정보 출력부를 포함한다.
입력 레지스터 유닛(149)은 제어 입력부(162-1), 정보 입력부(162-2), 정보 출력부(163-1...163-11)를 포함한다.
제어 유닛(142;도 6)은 "AND"소자(164,165), 우선순위 코더(166), "AND" 소자(167...174), "OR"소자(175...177), 디코더(178), "AND"소자(179,181), "OR"소자 (182,183), "AND"소자(184...186), 제어 트리거(187...192), "AND"소자(193,198), "OR"소자(199), 및 "AND"소자(200,201)를 포함한다.
스위칭 블록(144;도 7)은 레지스터(202...212), 제어 유닛(213), 및 스위치 (214...219)를 포함한다.
제어 유닛(213; 도 8)은 "OR"소자(220...231), 제어 입력부(232...243) 및 제어 출력부(244...263)를 포함한다.
입력 레지스터 유닛(149;도 9)은 상태 워드 레지스터(264), 제 1 데이터 워드 레지스터(265), 제 2 데이터 워드 레지스터(266)를 포함한다.
명령 레지스터 유닛(145;도 10)은 제 1 및 제 2 연산 코드 레지스터(267, 268), 및 제 1 및 제 2 명령 수 레지스터(269,270)를 포함한다.
실행 디바이스(107;도 11)는 제어 유닛(271), 출력 스위치(272), 출력 레지스터 유닛(273), 명령 메모리(274), ALU(275), 로딩 스위치(276), 및 입력 레지스터 유닛(277)을 포함한다.
제어 유닛(271)은 제로아이징 입력부(278-1), 결과 전송을 위한 제 1 및 제 2 입력부(278-2,278-3), 시작 제어 입력부(278-4), 명령 타입 비트를 위한 입력부(278-5), 메모리 준비완료신호를 위한 입력부(278-6), 데이 유효 신호를 위한 입력부(278-7), ALU 준비완료 신호를 위한 입력부(278-8), 출력 스위칭 제어를 위한 제 1 및 제 2 출력부(279-2,279-2), 전송 제어를 위한 출력부(279-3), 수신 제어를 위한 출력부(279-5), 시작 제어를 위한 출력부(279-5), 및 실행 디바이스(107)의 출력부(132...134)와 접속된 제 1 내지 제 3 제어 출력부를 포함한다.
출력 레지스터 유닛(273)은 제어 입력부(280-1,280-2,280-3), 정보 입력부(280-4,280-5,280-6), 정보 출력부(281-1,281-2,281-3)를 포함한다.
스위치(272)는 실행 디바이스(107)의 출력부(135,137)와 접속된 정보 출력부, 유닛(271)의 출력부(279-1,279-2)와 접속된 제 1 및 제 2 제어 입력부, 출력 레지스터 유닛(273)의 출력부(281-2,281-3)과 접속된 제 1 및 제 2 정보 입력부를 포함한다.
명령 메모리(274), ALU(275), 및 로딩 스위치(276), 및 이들의 접속은 도 5에 도시되어 있는 실행 디바이스(106)에 있는 대응 디바이스(146,147,148)와 유사하다.
입력 레지스터 유닛(277)은 제어 및 정보 입력부(282-1,282-2), 및 정보 출력부(283-1...283-5)를 포함한다.
제어 유닛(271;도 12)은 "OR"소자(284-1,284-2), "AND"소자(285-1...285-4), "AND"소자(286-1,286-2), "OR"소자(287), "AND"소자(288-1,288-2), "OR"소자(289), 우선순위 코더(290), "AND"소자(291-1,291-2), "AND"소자(292), 트리거(293-1... 293-3,294-1... 294-3), "AND"소자(295-1...295-6), "OR"소자(296), 및 "AND"소자 (297)를 포함한다.
입력 레지스터 유닛(277;도 13)은 제 1 및 제 2 오퍼랜드 의 상태 워드 비트를 위한 레지스터(298,299-1,299-2)를 포함한다.
출력 레지스터 유닛(273;도 14)은 결과 레지스터(300), 명령 수 및 오퍼랜드 코드의 1 및 제 2 레지스터(301-1,301-2), 및 상태 속성 레지스터(302)를 포함한다.
제 2 스위치(3;도 15)는 제 1 및 제 2 제어 유닛(303-1,303-2) 및 제 1 및 제 2 스위칭 유닛(304-1,304-2)을 포함한다.
각 제어 유닛(303-1,303-2)은 제어 입력부(305), 제 1 내지 제 3 그룹의 제어 입력부(306-1...306-N,307-1...307-N,308-1...308-N)각각, 제 1 내지 제 4 그룹의 제어 출력부(309-1...309-N,310-1...310-N,311-1-1...311-N-N,312-1...312-N)를 포함한다.
각 스위칭 유닛(304-1,304-2)은 제 1 및 제 2 그룹의 제어 입력부(313-1-1...313-N-N,314-1...314-N), 정보 입력부의 그룹(315-1...315-N), 정보 출력부의 그룹(316-1...316-N), 제어 출력부의 그룹(317-1...317-N)을 포함한다.
각 제어 유닛(303-1,303-2;도 16)은 준비완료신호 형성 트리거(318-1...318-N), 준비완료 세트 제어 유닛(319), 및 스위칭 제어 블록(320)을 포함한다.
준비완료 세트 제어 유닛(319)은 N 쌍의 제 1 및 제 2 제어 출력부(321-1-1,321-2-1 내지 321-1-N,321-2-N), 제로아이징 입력부(322), 제 1 내지 제 3 그룹의 제어 입력부(323-1...323-N,324-1...324-N,325-1...325-N), 스위치 채널 수 비트의 N 그룹의 출력부(326-1-1...326-1-N 내지 326-N-1...326-N-N), 스위치 채널 수 비트의 N 그룹의 입력부(327-1-1...327-1-N 내지 327-N-1...327-N-N)을 포함한다.
스위칭 제어 블록(320)은 스위칭 채널 수 세팅의 N 그룹의 출력부(328-1-1...328-1-N 내지 328-N-1...328-N-N), 제 1 및 제 2 그룹의 제어 출력부(329-1...329-N,330-1...330-N), 제로아이징 입력부(331), N쌍의 제 1 및 제 2 제어 입력부(332-1-1 및 332-1-N 내지 332-2-1 및 332-2-N), 제어 입력부의 그룹(333-1...333-N), N 그룹의 스위칭 소자 제어 입력부(334-1-1...334-1-N 내지 334-N-1...334-N-N), 스위칭 채널 세팅의 N 그룹의 입력부(335-1-1...335-1-N 내지 335-N-1...335-N-N), 제 3 그룹의 제어 출력부(336-1...336-N)를 포함한다.
각 스위칭 유닛(304-1(304-2);도 17)은 고주파수 임펄스 발생기(337), 출력 레지스터의 그룹(338-1...338-N), 트랜스포머-수신기의 그룹(339-1...339-N), "OR"소자의 그룹(340-1...340-N), 광수신기의 그룹(341-1...341-N), 제 1 그룹의 광학 렌즈 래스터(342-1...342-N), 제어식 광학 트랜스페어런시(343), 제 2 그룹의 광학 렌즈의 래스터(344-1...344-N), 디플렉터의 그룹(345-1...345-N), 레이저 발진기의 그룹(346-1...346-N), 트랜스포머-송신기의 그룹(347-1...347-N), 입력 레지스터의 그룹 (348-1...348-N)을 포함한다.
준비완료 세트 제어 유닛(319;도 18)은 제 1 그룹의 "OR"소자(354-1...354-N), "AND"소자의 그룹(355-1...355-N), 제 2 그룹의 "OR"소자(356-1...356-N), 레지스터의 그룹(357-1...357-N), 제 3 그룹의 "OR"소자(358-1...358-N)를 포함한다.
스위칭 제어 블록(320;도 19)은 N 그룹의 이중-입력 "AND"소자(359-1-1...359-1-N 내지 359-N-1...359-N-N), N 그룹의 N-입력 "AND"소자(360-1-1...360-1-N 내지 360-N-1...360-N-N), N 그룹의 트리거(361-1-1...361-1-N 내지 361-N-1...361-N-N), 우선순위 제어 유닛(362), 및 입력 문의 수신 유닛(363)을 포함한다.
도 20을 참조로, 우선순위 제어 유닛(362)은 제로아이징 입력부(364), 제 1 내지 제 4 그룹의 제어 출력부(364-1-1...364-1-N,364-2-1...364-2-N,364-3-1...364-3-N,364-4-1...364-4-N), 출력 채널 액세스 제어의 N 그룹의 입력부(365-1-1...365-1-N 내지 365-N-1...365-N-N), 제 1 내지 제 3 그룹의 제어 입력부(366-1-1...366-1-N,366-2-1...366-2-N,366-3-1...366-3-N)를 포함한다.
우선순위 제어 유닛(362;도 20)은 제 1 및 제 2 우선순위 코더(367,368), "OR"소자(369), 제 1 및 제 2 그룹의 상태 트리거(370-1...370-N,371-1...371-N ), 제 1 그룹의 "OR"소자(372-1...372-N), 문의 트리거의 그룹(373-1...373-N), 제 1 그룹의 "AND"소자(374-1...374-N), 제 2 및 제 3 그룹의 "OR"소자(375-1...375-N,376-1...376-N), 제 2 그룹의 "AND"소자(377-1...377-N)를 포함한다.
유닛(363;도 21)은 스위치 그룹(378-1...378-N) 및 디코더 그룹(379-1...379-N)을 포함한다.
입력 문의 수신 유닛(363;도 21)은 스위칭 제어 블록(320)의 입력부(332-2-1...332-2-N)에 접속된 제어 입력부의 그룹, 스위칭 제어 블록(320)의 입력부(335-1-1...335-N-N)에 접속된, 출력 채널 수 비트의 N 그룹의 입력부, 우선순위 제어 유닛(362)와 접속된 제어 출력의 그룹을 포함한다.
각 트랜스포머-수신기(339-i;도 22)는 디코더(380), 카운터(381), "OR"소자(382) , 및 증폭기-포머(former)(383), 코더(386), 카운터(387), 및 "AND"소자(388)를 포함한다.
각 트랜스포머-송신기(347-i;도 23)는 직렬 코드의 정보 출력부(351), 제어 입력부(352), 변환 제어의 입력부의 그룹(352-1...352-N), 병렬 코드의 정보 입력부 그룹(353-1...353-N)을 포함한다.
버퍼링 블록(5;도 24)은 버퍼링 유닛(389-1...389-N)의 그룹을 포함한다.
각 버퍼링 유닛(389-i;도 25)은 제 1 내지 제 4 제어 출력부(390-1...390-4), 제 1 내지 제 3 정보 출력부(390-5...390-7), 제 1 및 제 2 제어 입력부(36-1...36-N,37-1...37-N)의 대응 입력부와 접속된 제 1 및 제 2 제어 입력부, 제어 입력부(35)와 접속된 제 3 제어 입력부, 제 3 및 제 4 그룹의 제어 입력부(39-1...39-N,41-1...41-N)의 대응 입력부에 접속된 제 3 및 제 4 제어 입력부, 제 1,제 2, 제 3 그룹의 정보 입력부(38-1...38-N,40-1...40-N,42-1...42-N)의 대응 입력부와 접속된 제 1 내지 제 3 정보 입력부를 포함한다.
각 버퍼링 유닛(389-i)은 제 1 및 제 2 버퍼(391-1,391-2)를 포함한다. 버퍼(391-1)는 명령 워드의 전송 및 임시저장용으로 사용되고, 버퍼(391-2)는 오퍼랜드 패킷의 전송 및 임시저장용으로 사용된다. 두 버퍼는 동일 구조 및 구성을 가지며, 내부 로직의 입력 패킷 타입의 식별수단에서만 단지 상이하다.
각 버퍼(391-1,391-2;도 26)는 제 1 및 제 2 제어 입력부(392-1,392-2), 제 1 및 제 2 정보 입력부(392-3,392-4), 제 3 및 제 4 제어 입력부(392-5,392-6), 외부 교환 입력부(392-7), 제 1 및 제 2 전송 제어 출력부(393-1,393-2), 정보 출력부(393-3), 및 외부 교환 출력부(393-4)를 포함한다.
각 버퍼(391-1,391-2)는 출력 스위치(394), "OR"소자의 그룹(394-1...394-5), "AND"소자(395-1...395-5), 레지스터 메모리 유닛(RMU;396) 및 대응 제어 유닛(397-1(397-2)), 입력 스위치(398), 및 제 1 및 제 2 입력 레지스터(399-1,399-2)를 포함한다.
각 제어 유닛(397-1,397-2)은 제어 출력부(400-1...400-12), 제로아이징 입력부(401-1), 패킷 코드의 제 1 입력부(401-2), 수신의 제 1 제어 입력부(401-3), 패킷 코드의 제 2 입력부(401-4), 수신의 제 2 및 제 3 제어 입력부(401-5,401-6), 제 1 내지 제 5 제어 입력부(402-1...402-5)를 포함한다.
각각의 제어 유닛(397-1,397-2;도 27)은 우선순위 코더(403), 카운터(403-1,403-2), 논리 "AND"소자(404-1...404-4), 트리거(405-1...405-3), 논리 "OR"소자 (406), 및 대응 그룹의 디코더(406-2-1...406-2-3)를 포함한다. 상기 그룹의 디코더는 입력 패킷 타입의 식별 기능을 수행하며, 이들은 내부 로직의 기능에서만 상이하고, 디코더의 그룹(406-1-1...406-1-3)은 명령 워드 패킷의 식별용으로 사용되며, 디코더의 그룹(406-2-1...406-2-3)은 오퍼랜드 패킷의 식별용으로 사용된다.
각 연관 메모리 모듈(4-i)은 버퍼 레지스터(407), 및 러시아 특허 제2035069호에 개시된 디바이스와 유사하게 만들어진 연관 메모리 유닛(AMU)(408)을 포함한다.
AMU(408)는 제 1 및 제 2 정보 출력부(409-1,409-2), 제 1 및 제 2 제어 출력부(410,411), 제 1 내지 제 3 제어 입력부(412-1...412-3), 제 1 및 제 2 정보 입력부(413-1,413-2)를 포함한다.
제 1 스위치(2;도 29)는 제어 유닛(414), 및 제 2 스위치(3)에 포함된 스위칭 유닛(304-1(304-2))과 유사하게 만들어진 스위칭 유닛(415)를 포함한다.
제어 유닛(414)은 교환 제어 출력부(416), 제어 출력부의 그룹(416-1...416-N), 채널 스위칭의 2N 그룹의 N 제어 출력부(417-1-1...417-1-N 내지 417-2N-1...417-2N-N), 수신 제어 출력부(418), 제로아이징 입력부(419), 제 1 및 제 2 그룹의 제어 입력부(420-1...420-N), 및 2N 쌍의 입력부를 포함한다. 각각의 2N 쌍의 입력부는 제어 입력부(419-1-i) 및 어드레스 입력부(419-2-i)를 포함한다.
스위칭 유닛(415)은 정보 출력부의 그룹(422-1...422-N), 정보 입력부의 그룹(423-1...423-2N), 스위칭 제어의 2N 그룹의 N 입력부(424-1-1...424-1-N 내지 424-2N-1...424-2N-N), 제어 출력부의 그룹(425-1...425-N), 수신 제어의 입력부의 그룹(426-1...426-N)을 포함한다.
제어 유닛(414;도 30)은 출력 문의 형성 트리거의 그룹(427-1...427-N), 전송 제어 유닛(428), 수신 제어 유닛(429), 스위칭 제어 유닛(430), 문의 수신 트리거의 그룹(431-1...431-2N), 디코더의 그룹(432-1...432-2N), 입력 레지스터의 그룹(433-1...433-2N), "AND"소자의 그룹(434-1...434-2N)을 포함한다.
전송 제어 유닛(428;도 31)은 제 1 그룹의 "OR"소자(449-1...449-N), "AND"소자의 그룹(450-1...450-N), 제 2 그룹의 "OR"소자(451-1...451-N)을 포함한다.
전송 제어 유닛(428;도 31)은 각각이 제 1 및 제 2 문의 세트 출력부를 포함하는 N쌍의 제어 출력부(435-1-1...435-1-N 내지 435-2-1...435-2-N), 제로아이징 입력부(436), N 그룹의 2N 인가 제어 입력부(437-1-1...437-1-N 내지 437-N-1...437-N-2N), 및 제 1 및 제 2 그룹의 제어 입력부(438-1...438-N,439-1...439-N)를 포함한다.
수신 제어 유닛(429;도 32)은 트리거(452), "OR"소자의 그룹(452-1...452-2N), 제 1 및 제 2 "OR"소자(453-1...453-2), 2N 그룹의 N "AND"소자(454-1-1...454-1-N 내지 454-2N-1...454-2N-N), 및 "AND"소자(455,456-1,456-2)를 포함한다.
수신 제어 유닛(429)은 제 1 제어 출력부(440), 수신 제어 출력부의 그룹(440-1...440-2N), 제 2 제어 출력부(441), 상태 전송의 제 1 및 제 2 입력부를 포함하는 2N쌍의 입력부(442-1-1,442-2-1 내지 442-1-2N...442-2-2N), 제어 입력부의 그룹(443-1...443-N), 제로아이징 입력부(444), N 그룹의 2N 클리어링 제어 입력부(445-1-1...445-1-2N 내지 445-N-1...445-N-2N)를 포함한다.
스위칭 제어 유닛(430;도 33)은 우선순위 코더의 그룹(457-1...457-N), 및 N 그룹의 2N "OR"소자(458-1-1...458-1-2N 내지 458-N-1...458-N-2N)를 포함한다.
스위칭 제어 유닛(430)은 N 그룹의 2N 제어 출력부(446-1-1...446-1-2N 내지 446-N-1...446-N-2N), 2N 그룹의 N 우선순위 제어 입력부(447-1-1...447-1-N 내지 447-2N-1...447-2N-N), 및 제어 입력부의 그룹(448-1...448-2N)을 포함한다.
각 프래그먼트 루틴 프로세싱 유닛(6-i;도 34)은 실행 유닛(459), 출력 레지스터 유닛(460), 로딩 레지스터 유닛(461), 입력 레지스터 유닛(462), 제어 유닛(463), 및 스위치(464)를 포함한다.
로딩 레지스터 유닛(461)은 제 1 내지 제 5 제어 입력부(474-1...474-5), 정보 입력부(475), 제 1 및 제 2 제어 출력부(476-1,476-2), 및 정보 출력부(477)를 포함한다.
입력 레지스터 유닛(462)은 제 1 내지 제 6 제어 입력부(478-1...478-6), 정보 입력부(479), 제 1 내지 제 3 제어 출력부(480-1...480-3), 및 정보 출력부(481)를 포함한다.
스위치(464)는 제 1 제어 입력부(489), 제 2 제어 입력부(490), 제 1 정보 입력부(491), 제 2 정보 입력부(492), 및 정보 출력부(493)를 포함한다.
실행 유닛(459;도 35)은 마이크로프로세서(494), 메모리(495), 및 교환 버스(496)를 포함한다. 이들 유닛에 대신해서, 타입 Intel 80386의 소자를 근거로 한 것 등의 표준 마이크로프로세서 세트가 사용될 수 있다.
실행 유닛(459)은 제 1 내지 제 3 제어 입력부(465-1...465-3), 정보 입력부(466), 정보 출력부(467), 및 제 1 내지 제 5 제어 출력부(468-1...468-5)를 포함한다.
출력 레지스터 유닛(460;도 36)은 제 1 및 제 2 레지스터(497,498), "AND"소자(499-1...499-3), 트리거(500), 제 1 디코더(501-1), 제 2 디코더(501-2), "OR"소자(502), 및 제 3 레지스터(503)를 포함한다.
출력 레지스터 유닛(460)은 제 1 내지 제 7 제어 입력부(469-1...469-7), 정보 입력부(470), 제 1 내지 제 3 제어 출력부(471-1...471-3), 어드레스 출력부(472), 및 정보 출력부(473)를 포함한다.
입력 레지스터 유닛(462;도 37)은 레지스터(504,505), "AND"소자(506), 디코더(507), 레지스터(508), 트리거(509), "OR"소자(510)를 포함한다.
로딩 레지스터 유닛(461)은 유사한 구조를 갖는다.
제어 유닛(463;도 38)은 "OR"소자(511), 우선순위 코더 (512), 트리거(513,514), "AND"소자(515,516), 및 "OR"소자(517,518)를 포함한다.
제어 유닛(463)은 제 1 내지 제 4 제어 입력부(482...485), 및 제 1 및 제 3 제어 출력부(486...488)를 포함한다.
제 1 추가 스위치(7;도 39)는 제어 유닛(519), 스위칭 입력부(520)를 포함한다.
제어 유닛(519)은 제어입력부(519), 제 1 그룹의 제어 입력부(522-1...522-N), 제 2 그룹의 제어 입력부(523-1...523-N), 제 3 그룹의 제어 입력부(524-1...524-N), 제 1 그룹의 제어 출력부(525-1...525-N), 제 2 그룹의 제어 출력부(526-1...526-N), N 제 3 그룹의 제어 출력부(527-1-1...527-1-N 내지 527-N-1...527-N-N), 제 4 그룹의 제어 출력부(528-1...528-N)를 포함한다.
스위칭 유닛(520)은 N 제 1 그룹의 제어 입력부(529-1-1...529-1-N 내지 529-N-1...529-N-N), 제 2 그룹의 제어 입력부(530-1...530-N), 정보입력부의 그룹 (531-1...531-N), 정보 출력부의 그룹(532-1...532-N), 제어 출력부의 그룹(533-1...533-N)을 포함한다.
제어 유닛(519) 및 스위칭 유닛(520)은 제어 유닛(303-1) 및 제 2 스위치(3;도 16-23을 볼 것)의 스위칭 유닛(304-1)의 대응 구조와 유사한 내부구조를 갖는다.
제 2 추가 스위치(8;도 40)는 제어 유닛(414) 및 제 1 스위치(2;도 29-33을 볼 것)의 스위칭 유닛(415)의 대응 구조와 유사한 내부구조를 갖는 제어 유닛(534) 및 스위칭 유닛(535)을 포함한다.
제어 유닛(534)은 제어 출력부(536), 제어 출력부의 그룹(537-1...537-N), N 그룹의 채널 스위칭 제어 출력부(538-1-1...538-1-N 내지 538-N-1...538-N-N), 수신 제어 출력부(539), 제로 세트 입력부(540), 제어 입력부(541-1-i) 및 어드레스 입력부(541-2-i)를 포함하는 N 쌍의 입력부, 제 1 그룹의 제어 입력부(542-1...542-N), 및 제 2 그룹의 제어 입력부(543-1...543-N)를 포함한다.
스위칭 유닛(535)은 정보 출력부의 그룹(544-1...544-N), 정보 입력부의 그룹(545-1...545-N), N 그룹의 스위칭 제어 입력부(546-1-1...546-1-N 내지 546-N-1...546-N-N), 제어 출력부의 그룹(547-1...547-N), 수신 제어 입력부의 그룹(548-1...548-N)을 포함한다.
추가 버퍼링 블록(9;도 41)은 버퍼 유닛의 그룹(549-1...549-N)을 포함한다.
각 버퍼 유닛(549-i;도 42)은 제 1 제어 출력부(550-1), 제 2 제어 출력부(550-2), 제 1 정보 출력부(550-3), 제 2 정보 출력부(550-4), 제 1 그룹의 제어 입력부(94-1...94-N)의 대응 입력부와 접속된 제 1 제어 입력부, 제 2 그룹의 제어 입력부(95-1...95-N)의 대응 입력부와 접속된 제 2 제어 입력부, 제어 입력부(93)와 접속된 제 3 제어 입력부, 제 3 그룹의 제어 입력부(97-1...97-N)의 대응 입력부와 접속된 제 4 제어 입력부, 정보 입력부의 그룹(96-1...96-N)의 대응 입력부와 접속된 정보 입력부를 포함한다.
각 버퍼링 유닛(549-i;도 42)은 제 1 및 제 2 버퍼(551-1,551-2)를 포함한다. 버퍼(551-1)는 임시 저장 및 프래그먼트 프로세싱의 시작 패키징의 전송용으로 사용되고, 버퍼(551-2)는 임시 저장 및 추가 어드레스의 패키지를 루틴의 프래그먼트로 전송하는데 사용된다. 각 버퍼는 대응 버퍼 유닛(389-i)의 버퍼(391-1,391-2)의 구조 및 구성과 유사한 동일한 구조 및 구성을 가지며, 단지 입력 패키지 타입(도 26-28을 볼 것)을 식별하는 내부 연산 논리 수단과는 상이하다.
데이터 플로 제어중인 계산 체제의 원리는 테스크를 해결하는 알고리즘이 계산 프로세서의 그래프로서 나타내짐으로 추정된다. 그래프는 데이터(오퍼랜드)상의 연산(명령), 및 데이터(결과)가 하나의 명령어에서 다른 명령어로 전송됨에 의한(도 43) 링크(방향)으로 구성된다.
그래프에 의해 정의된 순서에 따른 데이터 프로세싱은 프로세싱용으로 준비된 데이터가 명령 입력부에서 나올 때 수행된다. 특정 명령과 관련된 데이터 쌍의 완료는 키에 의해 데이터 쌍을 탐색하는 메모리에서 수행된다. 일반적으로 키는 명령 수 비트, 인덱스, 반복 등으로 구성된 코드이다. 용량 및 속도를 고려할 때, 상기 메모리의 가장 좋은 연산은 광학 소자의 사용을 기초로 하여 실현되며, 성능에서의 향상을 고려할 때, 전체 용량을 개별 모듈로 분할하는 것을 최적화한다.
각 명령은 커맨드(명령) 메모리에서의 할당용으로 사용될 수 있는 수(K-i), 연산의 코드(COP-i) 및 프로세싱의 결과가 관련된 "수신지 주소"(K-j)를 가진다.
더우기, 명령은 명령 타입 또는 프로세싱의 조건을 결정하는 속성(부호)을 갖는다. 명령은 얼마나 많은 오퍼랜드가 프로세스되는지에 의존하여, 연산 코드에 의해 결정된 이중-입력 또는 단일-입력이 될 수 있다. 명령은 또한 그 결과가 전송된 (얼마나 많은 명령 입력으로의) 수신지의 수에 의존하여, 이중-어드레스 또는 단일-어드레스가 될 수 있다. 예를 들면, 도 43에서, 명령(K1)은 단일입력 또는 이중 어드레스 입력이 될 수 있으며, 명령(K2,K-4)은 이중 입력, 단일 어드레스 명령이 되며, 명령(K3)은 단일 어드레스, 단일 입력 명령이 된다.
주어진 명령의 COP에 의해 결정된 연산은 수치 데이터(오퍼랜드) 및 보조(또는 서비스) 데이터(명령 워드)와 함께 수행될 수 있다. 제 1 기능 그룹의 명령은 산술 연산(오퍼랜드 프로세싱 연산)을 사용하고, 제 2 그룹은 명령 워드 프로세싱 연산을 사용한다.
그래프 프로세싱을 체제화하기 위해, 명령 및 데이터는 대응 그룹의 비트가 필요 기능 할당(도 44)을 갖는 필드를 형성하는 멀티 비트 워드로 구성된 정보 객체로서 나타내어진다.
정보 프로세싱은 오퍼랜드 패킷 및 명령 워드 패킷의 형식으로 정보를 수신하는 두개의 상이한 타입의 실행 디바이스에 의해 수행된다. 일반적으로 패킷은 상태 워드, 및 각각이 오퍼랜드이거나 보조데이터를 포함하는 두개의 데이터 워드를 포함한다. 단일 입력명령의 패킷은 상태 워드 및 하나의 데이터 워드만을 포함한다.
상태 워드(CC)는 다음의 기본 그룹의 기능 비트(필드)를 포함한다.
COP-오퍼랜드(또는 명령)의 코드
K-명령의 수
G-제너레이션 수
T-반복 수
I-인덱스
F-프래그먼트의 필드
NB-프래그먼트의 프로세싱 블록의 수
NF-프래그먼트의 수
상태워드의 기능 필드는 상이한 방법으로 사용된다. 특히, 연관 메모리 모듈에서의 데이터 탐색(검색)을 위한 비트의 키 그룹은 필드(K,G,T,I)에 의해서 결정된다. 프래그먼트의 입력 데이터를 탐색할 때, 필드(F)가 추가된다. 필드(COP)는 또한 명령 타입(단일- 또는 이중-어드레스, 단일-또는 이중-입력), 및 패킷 타입(명령 워드 또는 오퍼랜드의 패킷)을 표시하는 어떤 비트를 포함할 수 있다.
명령이 두개의 출력을 가지고 있다면, 이들의 프로세싱 결과는 출력의 전송을 위한 2 차원에 대응되는 두개의 상태 워드에 의해 수행된다.
수신지 명령의 타입을 결정하는 비트 그룹의 속성은 커맨드 메모리에 저장되며, 연산의 코드 및 수와 함께 검색된다.
마킹된 프래그먼트(F;도 43)의 부분이 되는 명령 및 데이터는 대응 프로세싱 유닛인 실행 유닛(459)의 메모리(495)에 저장되며, 연관 메모리의 공간을 점유하지 않는다.
컴퓨터 시스템(도 1,45,46)은 메인 실행 루틴 및 제 1 및 제 2 정보 입력부(10,11)를 통하여 로딩되고, 제 2 정보 출력부(15)를 통하여 프로세싱하는 결과를 복귀하는 프로그램의 마킹된 프래그먼트 루틴 모두를 실행한다. 시스템은 계산 프로세스의 데이터 플로 제어의 수단에 의해서 메인 실행 루틴을 그리고, 데이터 프로세싱의 von Neumann 원리의 수단에 의해서 마킹된 프래그먼트 루틴을 실행한다.
시스템은모든 준비된 명령을 동시에 프로세싱함으로써 그래프에 의해 대표되는 계산 프로세스의 자체 병렬화를 실현한다. 실행되고 있는 프로그램의 메인 실행 루틴을 위한 모든 명령은 각 프로세서 유닛(1-i)의 실행 디바이스(106,107)에 대한 커맨드(명령) 메모리(146,274)에 저장된다. 메모리(146)는 명령 워드 프로세싱을 위한 모든 명령을 포함하고, 메모리(274)는 오퍼랜드 프로세싱을 위한 모든 명령을 포함한다. 프래그먼트 루틴에 대한 명령 및 데이터는 실행 유닛(459;도 5,11,35)의 메모리(495)에 저장된다.
명령 로딩(도 5,11)은 실행 디바이스(106,107)에 대해 각각 제 1 및 제 2 정보 입력부(17,18)를 통하여 그리고, 로딩 스위치(148,276)를 통하여, 그리고, (도 35) 실행 유닛(459)에 대해 정보 입력부(466) 및 버스(496)을 통하여 수행된다.
시스템은 명령 워드 및 오퍼랜드의 시작 패킷을 외부시스템(도 1에 도시되지 않음)으로부터 입력부(12)를 통하여 전송함으로써 시작된다.
대응 제어 신호를 갖는 시작 패킷은 버퍼링 블록(5)의 제 3 그룹의 정보 입력부(42-1...42-N)중의 입력부에 전송된다. 사용된 입력부의 전체수는 특정 프로그램의 시작 조건에 의해서 결정된다.
버퍼링 블록(5)은 제 2 스위치(3)의 입력부상에 있는 입력문의의 피크를 부드럽게 하는데 사용된다.
시작 패킷 비트는 이경우에, 시작 기능을 안내하는 버퍼링 유닛(389-i)의 정보 입력부에 및 추가로 버퍼(391-1,391-2;도 25)의 외부 교환 입력부(392-7)상에 전송된다. 버퍼(391-1,391-2)로부터, 시작 패킷은 출력 스위치(394;도 26)의 제 4 정보 입력부에 전송된다. 출력 스위치(394)에서의 스위칭은 대응 신호가 제어 유닛(397-1(397-2))의 제어 출력부(400-12)로부터 "AND"소자(395-4)를 통하여 전송되는 제 4 제어 입력부를 통하여 제어된다. 이러한 제어 신호는 디코더(406-1-3)의 출력부에서, 시작 패킷의 타입을 결정하는 코드화된 비트 그룹이 전송되는 입력부에 형성된다(도 27). 시작 패킷의 타입에 의존하여, 스위치(394) 제어 신호는 (명령 워드 수신을 위한) 버퍼(391-1) 또는 (오퍼랜드 수신을 위한)버퍼(391-2)에서 형성될 것이다.
만약 시작 패킷이 오퍼랜드를 포함하고 있다면, 버퍼(391-2)의 출력(393-3)으로부터의 패킷의 비트는 (버퍼링 블록(5)의 제 3 그룹의 정보 출력부(49-1...49-N)중의 i번째 출력부 및 유닛(389-i)의 제 2 정보 출력부를 통하여) 제 2 스위치(3)의 제 2 그룹의 정보 입력부(32-2-1...32-2-N)중의 i번째 입력부에 전송된다.
버퍼링 블록(5)의 제 3 그룹의 정보 출력부(49-1...49-N)중의 i 번째 출력부상에 있는 정보는 교환 문의의 제어신호인 전송의 스트로브("유효"신호)에 의해 수행되고, 버퍼링 블록(5)의 제 4 그룹의 제어 출력부(48-1...48-N)중의 i 번째 출력부로부터 제 2 스위치의 제 4 그룹의 제어 입력부(30-1...30-N)중의 i 번째 입력부로 전송된다.
제 2 스위치의 주요 기능은 수신된 패킷을 제 2 스위치의 프리 출력부상으로 분배시키는 것이다.
제 4 그룹의 제어 입력부(30-1...30-N)중의 i 번째 입력부에, 그리고, 제 2 스위치의 제 2 그룹의 정보 입력부(31-2-1...31-2-N)중의 i 번째 입력부에 각각 전송된 전송 스트로브, 및 오퍼랜드 패킷의 비트는 제어 유닛(303-2)의 입력부(306-i), 및 스위칭 유닛(304-2)의 입력부(315-i)에 각각 전송된다(도 15,16,17).
스위칭 유닛(304-2)의 입력부(315-i)에 전송된 오퍼랜드 패킷 비트는 입력 레지스터(348-i)에 의해 수신되고, 수신 제어 신호는 제어 유닛(303-2)의 출력부 (312-i)에서 형성된다.
스위칭 유닛(304-2)의 입력부(315-i)로부터 정보 출력부(316-j)의 패킷피트의 전송을 포함하고, 그룹(338-1...338-N)으로부터의 "프리" 출력 레지스터에 대응하는 스위칭은 특정 광학 시스템의 보조로 수행된다.
레지스터(348-i)의 출력부로부터, 패킷 비트의 병렬 코드는 트랜스포머-전송기(347-i)의 입력부(353-1...353-N)에 전송된다. 출력부(351)상에서 형성된 직렬코드는 레이저 이미터(346-i)에 전송된다. (제어식 디플렉터(345-i), 광학 렌즈 래스터(344-1...344-N)의 그룹, 제어식 광학 트랜스패어런시(343), 광학 렌즈 래스터(342-1...342-N)의 그룹을 포함하는 광학 시스템을 통하여) 직렬 코드에 대응하는 레이저 신호는 광수신기(341-j)의 입력부에 전송된다. 광수신기(341-j)의 출력부로부터, 입력 패킷의 직렬 코드는 트랜스포머-수신기(339-j)의 정보 입력부(350-3)에 전송된다. 스위칭 유닛(304-2)의 315-i에서 패킷 입력부의 비트 그룹에 대응하는 병렬 코드는 레지스터(338-j)의 출력부상에서 형성된다. 그리고, 출력된 병렬 코드의 형성의 마지막을 결정하는 신호는 유닛(339-j)의 출력부(349)상에서 형성된다.
스위칭 유닛(304-2;도 17)은 임의의 출력부(315-1...315-N)로부터 임의의 출력부(316-1...316-N)로의 정보 전송을 제공한다. 전송은 "프리 어드레스" 스위칭 체제를 의미하는 레지스터 그룹(338-1...338-N)으로부터의 프리 레지스터에 의해 결정된다. 대응 정보 변환을 제어하고 특정 광학 시스템을 스위칭하는 신호는 제어 유닛(303-2;도 15)의 출력부(311-1-1...311-N-N)로부터 스위칭 유닛(304-2)의 입력부(313-1-1...313-N-N)로 전송된다(도 15). 전송의 스트로브가 제어 유닛(303-2)의 입력부(308-i)로부터 입력부(333-i)로 전송될 때, 상기 신호의 형성(도 16,19,20)은 스위칭 제어 블록(320)에서 수행된다. 트리거를 형성하는 준비 완료 신호의 그룹의 트리거(318-i)에서 형성된 패킷 전송의 스트로브는 제어 유닛(303-2;도 16)의 출력부(310-j)에 전송된다.
명령 워드 패킷 전송은 제 2 스위치(3) 및 버퍼링 블록(5)의 식별 기능 구조를 사용하여 동일한 방식으로 수행된다.
전송의 스트로브 및 오퍼랜드 패킷의 비트은 각각 제 2 스위치(3)의 출력부(34-3-j,34-4-j)를 통하여 프로세서 유닛(1-j;도 1,45,46)의 입력부(22-6,20)에, 그리고, 실행 디바이스(107;도 2)의 대응 입력부에 전송된다.
전송의 스트로브는 실행 디바이스(107)의 대응입력부를 통하여 제어 유닛(271;도 11)의 입력부(278-4)에 전송되고, 오퍼랜드 패킷의 비트는 입력 레지스터 유닛(277)의 정보 입력부(282-2)에 전송된다.
수신제어 신호가 입력 레지스터 유닛(277)의 입력부(282-1)에 수신된 후, 오퍼랜드 패킷(도 13)의 기능 필드는 상태 워드 레지스터(298) 및 오퍼랜드 레지스터(299-1,299-2)에 의해 수신된다. 명령 수의 비트는 입력 레지스터 유닛(277)의 출력부(283-1)로부터 로딩 스위치(276)의 제 1 정보 입력부를 통하여 커맨드(명령) 메모리(274)의 어드레스 입력부에 전송된다. 시작 제어 신호는 제어 유닛(271)의 출력부(279-5)로부터 커맨드 메모리(274)의 탐색(판독) 제어 입력부에 전송된다.
시작 제어 신호에 의해 수행된 오퍼랜드 코드 비트 및 오퍼랜드 비트는 입력 레지스터 유닛(277)의 출력부(283-2,283-3,283-4)로부터 ALU(275)의 대응 입력부에 전송된다. G,T,I의 기능 필드 비트는 출력 레지스터 유닛(273)의 입력부(280-6)에 전송된다. 계산 결과가 행선화된 오퍼랜드 코드 및 명령 수를 포함하는 기능 필드의 비트는 커맨드 메모리(274)의 정보 출력부로부터 출력 레지스터 유닛(273)의 입력부(280-5)에 전송된다. 이러한 결과는 유닛(273)의 입력부(280-4)에 전송된다.
출력 레지스터 유닛(273)의 입력부(280-1,280-2,280-3)는 ALU 결과를 레지스터(300)로 수신하는 것을 제어하는 대응 신호를 수신한다. 레지스터(301-1,301-2)는 순차 명령의 비트 필드(K,COP)를 수신한다. 그리고 레지스터(302)는 비트 필드(G,T,K), 및 현재 명령의 프로세싱(반-패킷)으로부터 생긴 기능 필드를 수신한다.
현재 명령 프로세싱(서브-패킷)의 결과의 기능 필드는 출력 레지스터 유닛(273)의 출력부(281-1,281-2,281-3)상에서 형성된다. 이들 필드는 계산 그래프에 의해 나타내어진 계산 원리를 반영하며, 실행 디바이스(107)의 제 1 정보 입력부(136)에, 그리고 출력 스위치(272)의 정보 입력부에 각각 전송된다. 출력 스위치(272)전송으로부터, 출력 레지스터에 의해 수신된 필드는 실행 유닛(107)의 제 2 정보 출력부, 및 어드레스 출력부(135)에 전송된다.
출력부(135)는 레지스터(301-1(301-2))상에 위치된 명령 수의 하위 비트의 그룹에 대응하는 정보 필드를 수신한다. 이러한 그룹의 비트는 연관 메모리 모듈의 수를 그룹의 모듈(4-1...4-N)과 식별하고, 서브-패킷이 연관 메모리 모듈상에 고르게 분배되게 한다.
출력 스위치(272)의 기능은 이중-어드레스 명령, 즉, 상이한 수와 오퍼랜드 코드를 갖는 두개의 다음 명령에 대한 입력 오퍼랜드인 프로세싱 결과, 명령의 존재에 의해 결정된다. 이러한 조건은 명령 수를 위한 두개의 출력 레지스터(301-1,301-2)를 가짐으로써 실현된다. 출력 레지스터의 내용은 스위치(272)를 통하여 출력부(135,137)에 순차 전송되고, 출력부(136)에 전송된 결과를 수반한다.
제어 신호는 제어 유닛(271)의 출력부(279-1,279-2)로부터 출력 스위치(272)의 제어 입력부에 전송된다.
출력 스위치(272) 제어 신호는 전송의 스트로브의 그리고 명령타입의 기능 필드가 커맨드 메모리(274)의 정보 및 제어 출력부로부터 제어 유닛(271)의 입력부(278-5,278-6)에 각각 전송된 후, 그리고, 결과의 순차 신호가 ALU의 정보 출력부로부터 입력부(278-7)에 전송된 후, 형성된다.
명령 타입의 기능 필드는 트리거(295-2...295-5)에 전송된(도 12) 다음 속성: 1A(단일 어드레스 명령), 2A(이중 어드레스 명령), 1I(단일 입력 명령), 2I(이중 입력 명령)을 포함한다. 트리거의 상태는 제어 유닛(271)의 출력부(279-1,279-2)상에서의 제어 신호의 형성에 영향을 준다. 단일 입력 또는 이중 입력 명령의 속성에 대응하는 전송 스트로브는 실행 디바이스(107;도 11)의 제 1 및 제 2 제어 출력부(132,133)상에서 형성된다. 그리고, 서브-패킷의 속성에 대응하는 기능 필드의 비트는 제 1 및 제 2 정보 출력부(136,137)상에서 형성된다.
도 2 를 참조로, 단일 입력 체제에서, 서브-패킷의 비트는 출력부(136,137)로부터 스위치(102)를 통하여 j번째 프로세서 유닛의 출력부(21-4,21-5)로 전송되고, 유닛(104)의 출력부(116-1,116-2)에 의해 제어된다. 다중 입력 체제에서, 서브-패킷의 비트는 출력부(136,137)로부터 스위치(103)를 통하여 j번째 프로세서 유닛의 출력부(25-1,25-2)로 전송되고, 유닛(105)의 출력부(120-1,120-2)에 의해 제어된다.
제어 신호는 유닛(104)의 입력부(115) 및 유닛(105)의 입력부(118)이 실행 디바이스(107)의 출력부(132,133)으로부터 각각 전송된 스트로브를 수신할 때, 형성된다. 연관 메모리 모듈의 수에 관한 정보는 단일 입력 명령의 실행이 제 2 오퍼랜드의 검색을 요구하지 않기 때문에, 실행 디바이스(107)의 출력부(135)로부터 프로세서의 어드레스 출력부(24)로 단지 이중 입력 명령 체제에서만 전송된다.
대응 실행 디바이스로부터의 결과 (오퍼랜드) 출력이 이중 입력 명령에 대해 하나가 될 때, 쌍 오퍼랜드에 대한 검색은 연관 메모리 모듈에서 구성된다. 특정 모듈(추가로 "어드레스"라 함)의 수는 프로세서 유닛의 출력부(24)상에 있는 비트그룹에 의해 결정된다. 연관 메모리 모듈의 그룹(4-1...4-N)에 액세스는 제 1 스위치(2;도 29)의 수단에 의해 실현된다.
여기서, 제 1 스위치(1)의 제 1 그룹의 제어 입력부(58-1...58-N), 제 2 그룹의 어드레스 입력부(59-1...59-N) 및 제 2 그룹의 제어 입력부(61-1...61-N)중의 j번째 입력부는 연관 메모리 모듈의 수를 표시하는 j 번째 프로세서 유닛의 출력부(23-1,24)로부터 그리고, 서브-패킷의 기능 필드를 표시하는 j 번째 프로세서 유닛의 출력부(25-1,25-2)로부터 비트(제어 신호)를 수신한다.
제어 유닛(414) 및 스위칭 유닛(415)을 포함하는 제 1 스위치(2)는 제 2 스위치(3)와 다르게, 데이터 전송 출력부를 연관 메모리 모듈의 할당된 수에 의해 결정된 때의 "고정" 어드레스에 제공한다.
스위칭 조건은 제어 유닛(414;도 30)에서 실현된다. 제어 유닛(414)의 입력부(419-1-j,419-2-j)는 제 1 스위치(2)의 입력부(58-j,59-j)로부터의 대응 제어 정보를 수신한다. 다음, 어드레스가 레지스터(433-j)에서 수신되고, 인가 트리거(431 -j)가 세팅되고, k 번째 연관 메모리 모듈에 대응하는 위치 코드가 디코더(432-j)의 k번째 출력부에서 형성되고 이들 신호가 스위칭 제어 유닛(430)의 입력부(448-1...448-N,447-1-1...447-N-N)에 전송되는 것으로 다음 연산이 수행된다. 스위칭 제어 신호는 스위칭 제어 유닛(430)의 출력부(446-1-1...446-N-N)에서 형성되고, 제어 유닛(414)의 출력부(417-1-1...417-N-N)에 전송된다.
상기 신호는 우선 순위 구조화의 역활을 하는 우선순위 코더(457-1...457-N;도 33)의 출력부에서 형성되어, 문의를 각각의 연관 메모리 모듈에 문의하는 것을 실현한다.
제어 유닛(414)의 출력부(417-1-1...417-N-N)로부터의 제어 신호는 스위칭 유닛(415)의 스위칭 제어 입력부의 그룹(414-1-1...414-N-N)에 전송된다. 스위칭 유닛(415)의 구조 및 기능은 제 2 스위치(3)의 스위칭 유닛(304-1,304-2)의 구조 및 기능과 전체적으로 유사하다. 스위칭 유닛(415)의 입력부(424-j-k)는 그룹(345-1...345-N-N;도 17)으로부터의 j 번째 디플렉터의 k 번째 입력부를 제어하는 신호를 수신하고, 제 1 스위치(2)의 출력부(66-k)는 제 1 스위치(2)의 정보 입력부(61-j)에서 수신된 비트 필드에 대응하는 비트 필드를 수신한다. 대응 전송 스트로브는 트리거(427-k;도 30)에서 형성되고, 제어 유닛(414)의 출력부(416-k)를 통하여 제 1 스위치(2)의 출력부(67-k)에 전송된다.
전송 스트로브 및 서브-패킷의 기능 필드의 비트는 제 1 스위치(2)의 출력부(66-k,67-k)로부터 연관 메모리 모듈(4-k)의 입력부(52,53)에 전송된다. (연관 탐색을 위한 키로서) 상태워드의 비트필드, 및 오퍼랜드 및 전송 스트로브의 비트필드는 각각 연관 메모리 유닛(AMU;408)의 입력부(413-1,413-2,413-3)에 전송된다. 상태 워드의 비트 필드는 또한 버퍼링 레지스터(407)의 정보 입력부에 전송된다. 버퍼링 레지스터(407)의 제어 입력부는 연관 메모리 모듈의 제 2 제어 입력부(53)로부터의 전송 스트로브를 수신한다.
서브-패킷(반-패킷)은 메모리에서 한 쌍의 스테이즈(stays)를 가지지 않는다.
AMU가 대응 쌍 오퍼랜드를 포함할 때, 제 1 및 제 2 오퍼랜드의 비트 필드는 출력부(409-1,409-2)에서 형성된다. 제 1 및 제 2 오퍼랜드의 비트 필드는 (레지스터(407)의 출력부에서의) 상태 워드의 비트 필드와 함께 연관 메모리 모듈(4-k)의 정보 입력부에 전송된다. 연관 메모리 모듈(4-k)의 제 2 제어 출력부(56)는 AMU(408)의 제 1 제어 출력부(410)에서 형성된 전송 스트로브를 수신한다. 연관 메모리 모듈(k)의 정보 출력부(51)에서 형성됨과 함께, 다음의 패킷은 버퍼링 블록(5)의 입력부(40-k)에, 다음, 버퍼링 유닛(389-k)의 대응 입력부에 전송된다. 유닛(389-k)의 입력부(41-k)는 연관 메모리 모듈(4-k)의 제 2 제어 입력부(56)으로부터 버퍼링 블록(5)의 대응 입력부를 통하여 전송 스트로브를 수신한다.
만약 수신된 패킷이 오퍼랜드 패킷이라면, 기능 필드 비트는 버퍼(391-2)의 레지스터 (399-2)에 의해 수신되고, 대응 수신 제어 신호는 제어 유닛(397-2)의 출력부(400-9)에서 형성된다.
레지스터(399-2)로부터의 패킷 출력의 비트 필드는 스위치(394)의 제 2 정보 입력부에 전송된다. 스위치(394)의 대응 정보 입력부는 AND소자(395-1)의 출력부로부터의 스위칭 제어 신호를 수신한다. 스위칭 제어 신호 및 패킷 비트 필드는 스위치(394)의 제 1 입력부에 전송되고, OR소자(394-1)의 출력부에서 완성된 전송 스트로브로서의 기능을 한다.
만약 스위치(3)의 스위칭 유닛(304-2)에서의 대응 입력 레지스터(348-k)가 프리상태이면, 스위치(3)의 입력부(31-2-k)는 스위치(394)의 제 1 출력부로부터 버퍼(391-2)의 출력부(393-3)를 통하여, 버퍼링 유닛(389-k)를 통하여, 그리고 블록(5)의 출력부(49-k)를 통하여 오퍼랜드의 패킷을 수신한다. 대응적으로, 전송 스트로브는 버퍼링 블록(5)의 출력부(48-k)로부터 스위치(3)의 입력부(30-k)에 전송되고, 다음 프로세싱 사이클이 실행된다.
스위치(3)에 의한 수신이 닫혀질 때, 유닛(304-2)에서의 레지스터(348-k)가 점유되는 경우와 마찬가지로, 신호 블록킹 전송이 스위칭 유닛으로부터 버퍼링 블록(5)의 입력부(37-k)에 전송된다. 신호 블록킹 전송은 유닛(389-k)의 대응 입력부를 통하여, 버퍼(391-2)의 입력부(392-1)에, 다음, 제어 유닛(397-2)의 입력부(402-2) 및 OR소자(394-5)의 입력부에 전송된다. OR소자의 출력부에서, 제어 신호가 형성된다. 제어 신호는 스위치(394)의 제 5 제어 입력부에 전송된다. 스위치(394)의 제 2 입력부로부터 수신된 정보는 스위치(394)의 제 2 출력부를 통하여 전송된 다음, 제어 유닛(397-2)의 출력부(400-11)로부터의 로딩신호에 의해 수반되고, RMU(396)의 입력부에 전송된다. RMU(396)에 로딩된 정보는 블록킹 신호가 버퍼링 블록(5)의 입력부(37-k)로부터 제거될 때까지 수행될 것이다. 신호가 제거될 때, 레지스터(399-1,399-2), 및 스위치(394)의 제 4 정보 입력부에서 정보가 존재하지 않으면, 패킷의 비트는 RMU(396)로부터 스위치(394)의 정보 입력부를 통하여 버퍼(391-2)의 출력부(393-3), 및 버퍼링 블록(5)의 대응 입력부(49-k)에, 그리고, 스위치(3)의 대응 입력부 및 출력부를 통하여 k번째 프로세서 유닛의 제 4 정보 입력부(20)에 전송된다.
실행 디바이스(107)에서 얻어진 결과가, 명령의 단일-입력에 의해 결정된 대응 쌍에 대한 검색을지 않는다면, 프로세싱 결과 및 전송의 대응 스트로브가 스위치(102) 및 제어 유닛(104;도 2)의 대응 출력부로부터 k번째 프로세서 유닛의 출력부(25-4,25-5,23-4)에 각각 전송된다. 결과의 비트 필드 및 대응 제어 신호는 이중-입력 명령의 결과와 유사하게 형성된다. 서브-패킷 비트 및 전송 스트로브는 버퍼링 블록(5)의 입력부(38-k,39-k)에 전송된다.
전송된 서브-패킷이 명령 워드라면, 버퍼(391-1)의 레지스터(399-1)에 의해 수신된다. 대응 제어 신호가 제어 유닛(397-1)의 출력부(410-8)에서 형성된다. 서브-패킷의 비트는 레지스터(399-1)의 출력부로부터 스위치(398)의 정보 입력부에 전송된다. 스위치(398)의 제 1 정보 출력부로부터 서브 패킷의 비트는 스위치(394)의 제 1 정보 입력부에 전송된다. 스위칭 제어의 대응 신호는 AND 소자(395-2)의 출력부에서 형성되고, 스위치(394)의 제 1 제어 입력부에 의해 수신된다. 제어 신호는 제어 유닛(397-1)의 출력부(400-4)로부터 AND 소자(395-2;도 26,27)의 입력부에 전송된다.
스위치(398)의 제 2 정보 출력부는 계산 결과를 외부 제어 시스템에 전송하는데 사용된다. 대응 제어 신호는 디코더(406-1)의 제 1 출력부에서 형성된다. 디코더(406-1)의 입력부는 서브-패킷의 타입을 결정하는 코드의 비트를 수신한다. 스위치(398)의 제 2 정보 출력부로부터의 정보는 제어 유닛(397-1)의 출력부(400-7)로부터의 전송의 스트로브와 함께, 버퍼(391-1)의 출력부(393-4)에, 그리고, 유닛(389-k)의 출력부(390-6) 및 블록(5)의 출력부(47-k)를 통하여 시스템의 제 2 정보 출력부(15)에 전송된다.
상태 워드의 기능 필드의 명령 시스템 연산에 의한 결정을 포함하여, 실행 디바이스(106)에서의 패킷의 비트 필드의 프로세싱은 스위칭 블록(144;도 5,7)에서 실현된다. 디코더(178)의 출력부에서 형성된 대응 제어 신호는 제어 유닛(142)의 출력부(152-3)를 통하여 스위칭 블록(144)의 입력부(154-1...154-12)에 전송된다. 블록(144)에서, 스위칭 그룹(214...219)의 제어 신호는 제어 유닛(213;도 7)의 출력부(244...263)에서 형성된다. 스위칭 블록(144)의 정보 입력부는 입력 레지스터 유닛(149)의 출력부(163-2...63-11)로부터 전송된 상태워드의 기능 필드의 비트를 수신한다. 레지스터(202...212)상에서 형성된 상태 및 데이터 워드의 변형 필드는 블록(144)의 정보 출력부를 통하여 출력 스위치(143)의 입력부(153-3,153-4)에 전송되고, 스위치(143)의 출력부로부터 실행 디바이스(106)의 어드레스 및 제 2 정보 출력부(127)에 전송된다.
기능 필드의 변형 연산에 추가로, 실행 디바이스(106)는 (예를 들면, 명령의 두개의 입력부의 데이터 값 사이의, 또는 개별 기능 비트 그룹의 값 사이의) 상관관계를 결정하는 연산을 수행한다. 이러한 연산은 ALU(147)에서 실행된다.
나머지부분에 대하여, 실행 디바이스(106)의 기능 유닛의 작업은 실행 디바이스(107)의 대응 유닛의 작업과 유사하다. 전송 스트로브 및 다음의 계산 사이클의 초기화에 대한 결과 패킷 기능 필드의 비트는 k번째 프로세서 유닛의 대응 제어 및 정보 출력부(23-4,25-4,25-5,23-1,25-1,25-2)상에서 형성된다. 각 프로세서 유닛은 임의의 다른 (N-1) 프로세서 유닛과의 상호 동기화없이 명령을 프로세싱한다.
연관 메모리의 k-번째 블록의 정보 출력부(55)상에서 형성된 다음 패키지가 프래그먼트(F)에 정의된 루틴의 국부부분의 프로세싱에 대한 시작 패키지라면, 기능 필드의 비트는 추가 버퍼링 유닛(9)의 버퍼(551-2)에 전송된다(도 1;41,42,45,46을 볼 것). 다른 태양에 있어서, 프래그먼트(F)에 대한 시작 패키지 전송의 추가 태스크는 패키지의 상기 전송에 따라서, 버퍼 유닛(5)의 출력부로부터 제 1 추가 스위치(7)를 통하여 프로세서 디바이스(1-k)의 제 3 및 제 4 정보 입력부(19,20) 및 프래그먼트 루틴 프로세싱 유닛(6-i)의 제 3 정보 입력부(74)에 수행된다.
제 1 추가 스위치(7)는 프래그먼트 루틴 프로세싱 유닛의 그룹(6-1...6-N)으로부터 제 1 프리 유닛(6-k)을 선택하는 기능을 한다.
프래그먼트 루틴 프로세싱 유닛(6-i)의 제 3 정보 입력부(74) 및 제 4 제어입력부(71)는 정보 패키지의 기능 필드의 비트, 및 제 1 추가 스위치(7)의 k 번째 그룹의 교환 출력부 중의 정보 및 제어 출력부(84-2-k,84-1-k)로부터의 전송의 수행 스트로브를 대응적으로 수신한다. 제어 유닛의 출력부(486,487)상에서 수신된 출력 제어 신호의 방향하에서, 유닛(6-k)의 입력부(74)로부터의 정보는 스위치(464)의 출력부(493)를 통하여 입력 레지스터 유닛(462)의 입력부(479)에 전송된다. 입력 레지스터 유닛(462)의 입력부(478-5)는 제어 유닛(463)의 출력부(488)로부터 전송의 스트로브를 수신한다. 프로세서 유닛(1-1...1-N)에 대조적으로, 프로세싱된 각 패키지는 연관 메모리 모듈(4-1...4-N)에 어드레스되고, 각 프래그먼트 루틴 프로세싱 유닛에서, 메인 루틴의 정의 부분(프래그먼트)은 완전히 프로세싱되고, 단지 최종 결과만이 연관 메모리 모듈(4-1...4-N)에 전송된다.
(프로세싱의 von Neumann 원리에 대응하는) 루틴의 로딩은 컴퓨터 시스템의 초기 로딩시에 수행된다. 명령 및 데이터는 시스템의 제 1 정보 입력부(10), 및 프래그먼트 루틴 프로세싱 유닛(6-i)의 제 1 정보 입력부(72)를 통하여 로딩 레지스터(461)의 입력부(475)에 전송된다. 다음, (실행 유닛(459)의 명령 시스템에 대응하는) 명령의 기능 필드의 비트 및 데이터는 유닛(461)의 출력부(477)로부터 유닛(459)의 정보 입력부(466)에 전송되고, 유닛(459)의 출력부(476-1,476-2)로부터 입력부(465-2,465-3)로의 각각 인터럽션의 신호에 의해 수행된다.
교환 버스(496)를 통하여, 마이크로프로세서(494)의 제어하에, 실행 루틴의 프래그먼트의 데이터 및 명령은 메모리(495)에 로딩된다.
유닛(462)의 입력부(479)가 프래그먼트의 시작 패키지를 수신하고, 입력부(478-5)가 전송의 대응 스트로브를 수신한 후, 레지스터(504,505)는 오퍼랜드를 수신하고, 레지스터(508)는 F의 상태 워드 필드를 수신한다. 전송의 스트로브가 입력부(478-5)에 제공될 때, 트리거(509)가 세팅되고, 인터럽션 신호가 출력부(480-2)상에서 형성된다. 인터럽션의 신호는 트리거(509)로부터의 "판독"신호의 제어하에서 레지스터(508)의 출력부로부터 유닛(462)의 출력부(481)를 통하여 유닛(459)의 정보 입력부(466)에 의해 수신된 비트 필드와 함께 유닛(459)의 입력부(465-2)에 의해 수신된다.
마이크로프로세서(494)는 유닛(459)의 출력부(466)로부터 교환 버스(496)를 통하여 전송된 비트 필드를 "식별하고" 제어 신호의 그룹을 출력부(468-1...468-4)를 통하여 유닛(462)의 입력부(478-2...478-3)에 전송한다. 유닛(462)에서, 순차적인 판독 및 데이터의 대응 신호는 레지스터(504,505)로부터 출력부(481)를 통하여 유닛(459)의 정보 입력부(466)에 전송된다. 프래그먼트(F)의 파라미터 및 수에 따라서, 마이크로프로세서(494)는 마이크로프로세서(494)의 인터럽션에 의해 종료되는 프로세싱의 대응 루팅을 시작한다. 인터럽션에 의해서, 마이크로프로세서(494)는 유닛(460)의 레지스터(503)에 할당된 현재 수에 대응하는 "출력의 벡터"를 형성한다. (실행 유닛(459)의 출력부(468)로부터 교환 버스(496) 및 실행 유닛(459)의 출력부(467)를 통하여 유닛(460)의 입력부(469-7)에 전송된 제어 신호에 의해 수행되는) "출력의 벡터"는 정보가 레지스터(503)내에 기록되는 유닛(460)의 입력부(470)에 전송된다. 레지스터(503)로부터, 이것은 디코더(501-1)의 입력부에 전송된다. 인터럽션 신호는 디코더(501-1)의 출력부상에서 형성되고 출력부(472-1)를 통하여 실행 유닛(459)의 입력부(465-2)에 전송된다.
인터럽션 신호의 수신시, 마이크로프로세서(494)는 실행 유닛(459)의 출력부(468-1...468-4)를 통하여 유닛(460)의 출력부(469-3...469-6)에 전송된 제어 신호의 그룹을 형성한다. 이들 제어 신호는 프래그먼트(F)의 프로세싱 결과를 나타내는 비트 필드의 전송을 유닛(469)의 출력부(467)로부터 유닛(460)의 입력부(470)를 통하여 레지스터(497,498)의 입력부로 안내한다.
레지스터(497,498)에서의 데이터의 포맷은 프로세서 디바이스(1-i)에 있는 명령 프로세싱으로부터 생긴 반-패키지의 데이터의 포맷과 동일하다.
전송의 스트로브는 유닛(460)의 출력부(471-3)로부터 프래그먼트 루틴 프로세싱 유닛(6-k)의 출력부(76)에 전송된다. 유닛(6-k)의 출력부(76)로부터, 전송의 스트로브는 제 1 스위치(2)의 제 3 그룹의 제어 입력부중의 입력부(62-k)에 전송된다. 프래그먼트 루틴 프로세싱으로부터 생긴 반-패키지의 기능 필드 비트 및 어드레스는 유닛(6-k)의 출력부(77,78)로부터 스위치(2)의 제 2 그룹의 정보 입력부중의 입력부(64-k), 및 제 2 그룹의 어드레스 입력부중의 입력부(63-k)에 전송된다. 어드레스는 프래그먼트(F)의 프로세싱의 시작 명령이 할당되는 연관 메모리 모듈(4-j)의 수를 표시한다. 연관 메모리 모듈(4-j)의 입력부(52)는 정보 출력부 그룹중의 출력부(66-j)로부터의 반-패키지의 비트 필드를 수신한다. 이것은 프래그먼트(F)의 프로세싱에서 생긴 데이터를 실행 루틴의 공통 필드와 결합하게 한다.
프로세서 프래그먼트(F)가 실행 루틴(Kd-1...Kd-m)의 추가 공통 필드 입력을 가지고 있다면(도 42를 볼 것), 시작 유닛(6-k)은 프로세싱을 이네이블 할 수 있도록 "명령 모델"(Kdb1...Kdbm)을 추가한다. 상태 워드 필드(NB;도 43을 볼 것)는 프래그먼트 루틴이 프로세싱되고 있는 시작 유닛(6-k)에 대응하는 수를 포함한다.
(데이터가 준비완료될 때) 추가 어드레스화의 패키지는 국부적으로 선택된 프래그먼트(F)를 프로세싱하는 연관 메모리 모듈(4-j)의 출력부상에서 형성된다. 이들 패키지는 연관 메모리의 블록(4-j)의 정보 출력부(55)로부터 추가 버퍼 유닛(9)의 정보 입력부 그룹중의 입력부(96-j)에 전송된 다음, 버퍼(551-2)의 입력부(552-3)에 전송된다. 추가 어드레스화의 패키지는 제 2 추가 스위치(8)의 정보 입력부(89-j)에 의해 추가 버퍼 유닛(9)의 출력부(101-j)로부터 수신되고, 제 2 추가 스위치(8)의 어드레스 입력부(87-j)는 시작 프래그먼트 루틴 프로세싱 유닛(6-k)의 수에 대응하는 패키지의 비트 필드(NB)를 수신한다. 결과로서, 제 2 추가 스위치의 출력부(91)는 프래그먼트 루틴 프로세싱 유닛(6-k)의 제 2 정보 입력부(73)에 다음 전송되는 추가 어드레스의 패키지 비트의 정보 필드를 수신한다. 추가 태스크는 프래그먼트(F)의 시작 패키지의 프로세싱 및 전송과 유사하게 수행된다.
따라서, 상기 컴퓨터 시스템은 프로세서 유닛의 로드를 증가시키고, 태스크 프로그램 실행 시간을 줄이는 방식으로 달성되는 수단에 의해서 고성능화를 제공한다. 다음 프로세서 유닛의 태스크의 고 병렬화가 자동으로 얻어지고, 모든 실행 프로그램 내에 있는 개별 계산 구조(실행 디바이스) 또는 프로그램 사이에서의 그룹 병렬 프로세스가 분산될 필요가 없이, 병렬 계산 구조의 수가 증가될 때, 이러한 문제를 극복할 수 없는 사람에 의해서도 항상 수행될 수 있다.
따라서, 프래그먼트 루틴 프로세싱 유닛, 제 1 및 제 2 추가 스위치, 및 추가 버퍼 유닛을 컴퓨터 시스템 구조에 포함시킨 것은 연관 메모리 모듈에 요구되는 용량을 줄이고, 저 내부병렬화를 갖는 루틴의 개별적인 국부부분(또는 루틴전체)의 계산의 von Neumann 원리에 의한 프로세싱을 수행하고 메인 실행 루틴의 프로세싱을 위한 프로 제어를 사용한다. 이러한 결과는 시스템 성능 증가, 및 프래그먼트 프로세싱을 위한 유닛 사이의 태스크의 분산을 위한 시간의 실질적인 손실없이 루틴을 프로세싱하는데 향상된 효율을 가져온다.

Claims (14)

  1. 적어도 하나의 프로세서 유닛, 적어도 하나의 연관 메모리 모듈, 적어도 하나의 스위치 및 적어도 하나의 제 2 스위치를 포함하며, 정보를 프로세서 유닛으로부터 연관 메모리 모듈에 전송하는 고정 어드레스 스위칭 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  2. 제 1 항에 있어서, 정보를 제 2 스위치로부터 프리 프로세서 유닛에 전송하는 프리 어드레스 스위칭 수단을 추가로 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  3. 제 2 항에 있어서, 제 2 스위치의 입력부상의 입력 문의 피크를 평활하게 하는 버퍼링 수단을 추가로 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  4. 제 1 항에 있어서, 상기 각 프로세서 유닛은 실행되고 있는 프로그램의 명령을 저장하는 커맨드 메모리를 포함하고 있는 것을 특징으로 컴퓨터 시스템.
  5. 제 1 항에 있어서, 상기 각 프로세서 유닛은 적어도 하나의 실행 디바이스를 포함하고 있는 것을 특징으로 하는 컴퓨터 시스템.
  6. 제 5 항에 있어서, 프로세서에 있는 각 실행 디바이스는 특정 타입의 정보를 프로세싱하는데 가장 적절한 것을 특징으로 하는 컴퓨터 시스템.
  7. 제 6 항에 있어서, 정보를 제 2 스위치로부터, 전송된 특정 타입의 정보를 프로세싱하는데 가장 적절한 실행 디바이스에 전송하는 프리 어드레스 스위칭 수단을 추가로 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  8. 제 1 항에 있어서, 스위칭을 용이하게 하는 적어도 하나의 광학 시스템을 추가로 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  9. 제 8 항에 있어서, 상기 광학 시스템은 트랜스포머-수신기, 레이저 이미터, 광수신기 및 제 2 트랜스포머-송신기를 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  10. 제 9 항에 있어서, 상기 광학 시스템은 제어식 디플렉터, 제 1 그룹의 렌즈 래스터, 제어식 광학 트랜스패어런시 및 제 2 그룹의 렌즈 래스터를 추가로 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  11. 제 1 항에 있어서, 적어도 하나의 프래그먼트 루틴 프로세싱 유닛을 추가로 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  12. 제 11 항에 있어서, 적어도 하나의 제 1 추가 스위치, 적어도 하나의 제 2 추가 스위치 및 적어도 하나의 추가 버퍼링 블록을 추가로 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  13. N 프로세서 디바이스, 제 1 및 제 2 스위치, 연관 메모리의 N 디바이스, 버퍼 유닛, 제 1 내지 제 3 정보 입력부, 제어 입력부, 제 1 및 제 2 정보 출력부를 포함하며, i번째 프로세서 디바이스(i=1...N)의 제 1 제어 출력부 및 어드레스 출력부는 제 1 스위치의 제 1 그룹의 제어 입력부 중의 i번째 입력부, 및 제 1 그룹의 어드레스 입력부 중의 i번째 입력부와 대응 접속되고, i번째 프로세서 모듈의 제 1 및 제 2 정보 출력부는 제 1 스위치의 제 1 그룹의 정보 입력부중의 대응하는 i번째 입력부와 접속되고, i번째 프로세서 디바이스의 제 1 정보, 어드레스, 제어, 및 제 2 정보, 어드레스, 제어 입력부는 시스템의 제 1 및 제 2 정보 입력부와 접속되고, 시스템의 제 1 제어 입력부는 제 1 스위치의 제어 입력부, 및 i번째 프로세서 디바이스의 제 3 제어 입력부와 접속되고, 제 1 스위치의 제어 출력부는 i번째 프로세서 디바이스의 제 4 제어 입력부와 접속되고, i번째 프로세서 디바이스의 제 3 정보 출력부는 시스템의 제 1 정보 출력부와 접속되고, 제 2 스위치의 i번째 그룹의 교환 출력부 중의 제 1 제어, 제 1 정보, 제 2 제어, 제 2 정보 출력부는 i번째 프로세서 디바이스의 제 5 제어, 제 3 정보, 제 6 제어, 제 4 정보 입력부와 대응 접속되고, 제 2 스위치의 제 1 그룹의 제어 출력부는 버퍼 유닛의 제 1 그룹의 제어 입력부와 접속되고, 제 2 스위치의 제 2 그룹의 제어 출력부는 버퍼 유닛의 제 2 그룹의 제어 입력부와 접속되고, 제 2 스위치 및 버퍼 유닛의 제어 입력부, 및 각 블록의 연관 메모리의 제 1 제어 입력부는 시스템의 제어 입력부와 접속되고, 제 2 스위치의 제 1 및 제 2 그룹의 제어 입력부 중의 i번째 입력부는 i번째 프로세서 디바이스의 제 2 및 제 3 제어 출력부와 대응 접속되고, i번째 프로세서 디바이스의 제 7 및 제 8 제어 입력부는 버퍼 유닛의 제 1 및 제 2 그룹의 제어 출력부 중의 i번째 출력부와 대응 접속되고, 버퍼 유닛의 제 3 그룹의 제어 출력부 및 제 1 그룹의 정보 출력부는 제 2 스위치의 제 3 그룹의 제어 입력부 및 제 1 그룹의 정보 입력부와 대응 접속되고, 버퍼 유닛의 제 2 그룹의 정보 출력부는 시스템의 제 2 정보 출력부와 접속되고, 제 2 스위치의 제 4 그룹의 제어 입력부는 버퍼 유닛의 제 4 그룹의 제어 출력부와 접속되고, 버퍼 유닛의 제 1 그룹의 정보 입력부 중의 i번째 입력부는 i번째 프로세서 디바이스의 제 4 및 제 5 정보 출력부와 접속되고, i번째 프로세서 디바이스의 제 4 제어 출력부는 버퍼 유닛의 제 3 그룹의 제어 입력부 중의 i번째 입력부와 접속되고, 버퍼 유닛의 제 3 그룹의 정보 출력부는 제 2 스위치의 제 2 그룹의 정보 입력부와 접속되고, 연관 메모리의 i번째 블록의 제 1 제어 출력부는 제 1 스위치의 제 2 그룹의 제어 입력부 중의 i번째 입력부와 접속되고, 제 1 스위치의 그룹의 정보 출력부 중의 i번째 출력부는 i번째 연관 메모리 블록의 정보 입력부와 접속되고, i번째 연관 메모리 블록의 정보 및 제 2 제어 출력부는 버퍼 유닛의 제 2 그룹의 정보 입력부 중의 그리고 제 4 그룹의 제어 입력부 중의 i번째 입력부와 접속되고, 버퍼 유닛의 제 3 그룹의 정보 입력부는 시스템의 제 3 정보 입력부와 접속되고, 제 1 스위치의 그룹의 제어 출력부 중의 i번째 출력부는 i번째 연관 메모리의 제 2 제어 입력부와 접속되며, 루틴의 프래그먼트의 프로세싱을 위한 유닛, 제 1 및 제 2 추가 스위치 및 추가 버퍼 유닛을 포함한다는 점에서 상이하며, 제 1 스위치의 제어 유닛은 루틴 프래그먼트 프로세싱에 대한 i번째 유닛의 제 1 제어 입력부와 접속되고, 루틴 프래그먼트 프로세싱에 대한 i번째 유닛의 제 1 정보 입력부는 시스템의 제 1 정보 입력부와 접속되고, 시스템의 제어 입력부는 제 1 및 제 2 추가 스위치, 추가 버퍼 유닛, 및 루틴 프래그먼트 프로세싱의 i번째 유닛의 제 2 제어 유닛의 제어 입력부와 접속되고, 루틴 프래그먼트 프로세싱의 i번째 유닛의 제 3 제어 입력부는 제 2 추가 스위치의 제어 출력부 그룹 중의 i번째 출력부와 접속되고, 제 2 추가 스위치의 정보 출력부의 그룹 중의 i번째 출력부는 루틴 프래그먼트 프로세싱의 i번째 유닛의 제 2 정보 입력부와 접속되고, 루틴 프래그먼트 프로세싱의 i번째 유닛의 제 3 정보 입력부는 제 1 추가 스위치의 i번째 그룹의 교환 출력부 중의 정보 출력부와 접속되고, 제 1 추가 스위치의 i번째 그룹의 교환 출력부 중의 제어 입력부는 루틴 프래그먼트 프로세싱의 i번째 유닛의 제 4 제어 입력부와 접속되고, 루틴 프래그먼트 프로세싱의 i번째 유닛의 제 1 제어 출력부는 제 2 추가 스위치의 제 1 그룹의 제어 입력부 중의 i번째 입력부, 및 제 1 추가 스위치의 제 1 그룹의 제어 입력부 중의 i번째 입력부와 접속되고, 제 1 추가 스위치의 제 2 그룹의 제어 입력부는 추가 버퍼 유닛의 제 1 그룹의 제어 출력부와 접속되고, 추가 버퍼 유닛의 제 1 그룹의 정보 출력부는 제 1 추가 스위치의 정보 입력부 그룹과 접속되고, 제 1 추가 스위치의 제어 출력부 그룹은 추가 버퍼 유닛의 제 1 그룹의 제어 입력부와 접속되고, 추가 버퍼 유닛의 제 2 그룹의 제어 출력부는 제 2 추가 스위치의 제 2 그룹의 제어 입력부와 접속되고, 제 2 추가 스위치의 어드레스 입력부 그룹과 정보 입력부 그룹은 추가 버퍼 유닛의 제 2 그룹의 정보 출력부와 접속되고, 추가 버퍼 유닛의 제 2 그룹의 제어 입력부는 제 2 추가 스위치의 제어 출력부와 접속되고, i번째 연관 메모리 블록의 정보 출력부 및 제 2 제어 출력부는 추가 버퍼 유닛의 제 3 그룹의 제어 입력부 및 정보 입력부 그룹 중의 i번째 입력부와 대응 접속되고, 루틴 프래그먼트 프로세싱의 i번째 유닛의 제 2 제어, 어드레스, 정보 출력부는 제 1 스위치의 제 3 그룹의 제어, 제 2 그룹의 어드레스, 제 2 그룹의 정보 입력부 중의 i번째 입력부와 대응 접속되는 것을 특징으로 하는 컴퓨터 시스템.
  14. 루틴 프래그먼트 프로세싱의 유닛이 실행유닛, 출력 레지스터 유닛, 로딩 레지스터 유닛, 입력 레지스터 유닛, 제어 유닛, 및 스위치를 포함한다는 점에서 상이하며, 실행 유닛의 정보 출력부는 출력 레지스터 유닛의 정보 입력부와 접속되고, 출력 레지스터 유닛의 제 1 제어 입력부는 유닛의 제 1 제어 입력부와 접속되고, 유닛의 제 2 제어 입력부는 실행 유닛의 제 1 제어 입력부, 출력 레지스터 유닛의 제 2 제어 입력부, 제어 유닛의 제 1 제어 입력부, 로딩 레지스터 유닛의 제 1 제어 입력부, 입력 레지스터 유닛의 제 1 제어 입력부와 접속되고, 입력 레지스터 유닛의 제 1 제어 출력부는 제어 유닛의 제 2 제어 입력부, 및 유닛의 제 1 제어 출력부와 접속되고, 유닛의 제 1 정보 입력부는 로딩 레지스터 유닛의 정보 입력부와 접속되고, 로딩 레지스터 유닛의 정보 출력부, 및 입력 레지스터 유닛의 정보 출력부는 실행 유닛의 정보 입력부와 접속되고, 실행 유닛의 제 2 제어 입력부는 출력 레지스터 유닛의 제 1 제어 출력부, 로딩 레지스터 유닛의 제 1 제어 출력부, 입력 레지스터 유닛의 제 2 제어 출력부와 접속되고, 입력 레지스터 유닛의 제 3 제어 출력부, 로딩 레지스터 유닛의 제 2 제어 출력부, 및 출력 레지스터 유닛의 제 2 제어 출력부는 실행 유닛의 제 3 제어 입력부와 접속되고, 실행 유닛의 제 1 제어 출력부는 로딩 레지스터 유닛의 제 2 제어 입력부, 입력 레지스터 유닛의 제 2 제어 입력부, 출력 레지스터 유닛의 제 3 제어 입력부와 접속되고, 출력 레지스터 유닛의 제 3 제어 출력부는 유닛의 제 2 제어 출력부와 접속되고, 유닛의 제 2 정보 입력부는 스위치의 제 1 정보 입력부와 접속되고, 스위치의 정보 출력부는 입력 레지스터 유닛의 정보 입력부와 접속되고, 입력 레지스터 유닛의 제 3 제어 입력부, 로딩 레지스터 유닛의 제 3 제어 입력부, 출력 레지스터 유닛의 제 4 제어 입력부는 실행 유닛의 제 2 제어 출력부와 접속되고, 실행 유닛의 제 3 제어 출력부는 입력 레지스터 유닛의 제 4 제어 입력부, 로딩 레지스터 유닛의 제 4 제어 입력부, 출력 레지스터 유닛의 제 5 제어 입력부와 접속되고, 출력 레지스터 유닛의 어드레스 및 정보 출력부는 유닛의 어드레스 및 정보 출력부와 대응 접속되고, 유닛의 제 3 제어 입력부는 제어 유닛의 제 3 제어 입력부와 접속되고, 제어 유닛의 제 4 제어 입력부는 유닛의 제 4 제어 입력부와 접속되고, 유닛의 제 3 정보 입력부는 스위치의 제 2 정보 입력부와 접속되고, 스위치의 제 1 및 제 2 제어 입력부는 제어 유닛의 제 1 및 제 2 제어 출력부와 대응 접속되고, 제어 유닛의 제 3 제어 출력부는 로딩 레지스터 유닛의 제 5 제어 입력부와 접속되고, 출력 레지스터 유닛의 제 6 제어 입력부는 실행 유닛의 제 4 제어 출력부와 접속되고, 실행 유닛의 제 5 제어 출력부는 출력 레지스터의 제 7 제어 입력부와 접속되는 것을 특징으로 하는 컴퓨터 시스템.
KR1020007009098A 1998-02-20 1999-02-19 향상된 연관 메모리 및 스위치를 구비한 컴퓨터 KR20010034508A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
RU98102944A RU2148857C1 (ru) 1998-02-20 1998-02-20 Вычислительная система
RU98102944 1998-02-20
PCT/US1999/003633 WO1999042927A1 (en) 1998-02-20 1999-02-19 Computer with improved associative memory and switch

Publications (1)

Publication Number Publication Date
KR20010034508A true KR20010034508A (ko) 2001-04-25

Family

ID=20202429

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020007009098A KR20010034508A (ko) 1998-02-20 1999-02-19 향상된 연관 메모리 및 스위치를 구비한 컴퓨터

Country Status (8)

Country Link
US (1) US6298433B1 (ko)
EP (1) EP1057115A4 (ko)
JP (1) JP2003526127A (ko)
KR (1) KR20010034508A (ko)
AU (1) AU2870699A (ko)
IL (1) IL137857A0 (ko)
RU (1) RU2148857C1 (ko)
WO (1) WO1999042927A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190044518A (ko) * 2017-10-20 2019-04-30 그래프코어 리미티드 병렬 컴퓨팅

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004503872A (ja) * 2000-06-13 2004-02-05 シネルジェスティック コンピューティング システムズ エーピーエス 共同利用コンピュータシステム
SE0300742D0 (sv) * 2003-03-17 2003-03-17 Flow Computing Ab Data Flow Machine
US20060150167A1 (en) * 2004-12-21 2006-07-06 Ziegler Jeremy R System and method for integrating non-native storage devices in an information handling system image
RU2281546C1 (ru) 2005-06-09 2006-08-10 Бурцева Тамара Андреевна Способ обработки информации на основе потока данных и устройство для его осуществления
US7533244B2 (en) * 2006-05-09 2009-05-12 Le Nguyen Tran Network-on-chip dataflow architecture
US20080189251A1 (en) * 2006-08-25 2008-08-07 Jeremy Branscome Processing elements of a hardware accelerated reconfigurable processor for accelerating database operations and queries
US9501448B2 (en) 2008-05-27 2016-11-22 Stillwater Supercomputing, Inc. Execution engine for executing single assignment programs with affine dependencies
WO2009146267A1 (en) * 2008-05-27 2009-12-03 Stillwater Supercomputing, Inc. Execution engine

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4964040A (en) * 1983-01-03 1990-10-16 United States Of America As Represented By The Secretary Of The Navy Computer hardware executive
JPS60101644A (ja) * 1983-11-07 1985-06-05 Masahiro Sowa ノイマン型コンピュータプログラムを実行するコントロールフローコンピュータ
US4814978A (en) * 1986-07-15 1989-03-21 Dataflow Computer Corporation Dataflow processing element, multiprocessor, and processes
US5241635A (en) * 1988-11-18 1993-08-31 Massachusetts Institute Of Technology Tagged token data processing system with operand matching in activation frames
US5490258A (en) * 1991-07-29 1996-02-06 Fenner; Peter R. Associative memory for very large key spaces
US5623489A (en) * 1991-09-26 1997-04-22 Ipc Information Systems, Inc. Channel allocation system for distributed digital switching network
US5243699A (en) * 1991-12-06 1993-09-07 Maspar Computer Corporation Input/output system for parallel processing arrays
US5509006A (en) * 1994-04-18 1996-04-16 Cisco Systems Incorporated Apparatus and method for switching packets using tree memory
RU2110089C1 (ru) * 1995-12-22 1998-04-27 Бурцев Всеволод Сергеевич Вычислительная система
US5771320A (en) * 1996-04-30 1998-06-23 Wavefront Research, Inc. Optical switching and routing system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190044518A (ko) * 2017-10-20 2019-04-30 그래프코어 리미티드 병렬 컴퓨팅

Also Published As

Publication number Publication date
IL137857A0 (en) 2001-10-31
AU2870699A (en) 1999-09-06
JP2003526127A (ja) 2003-09-02
WO1999042927A1 (en) 1999-08-26
US6298433B1 (en) 2001-10-02
EP1057115A4 (en) 2004-09-29
RU2148857C1 (ru) 2000-05-10
EP1057115A1 (en) 2000-12-06

Similar Documents

Publication Publication Date Title
CN1698131B (zh) 高度紧凑的非易失性存储器及其方法
CN100490000C (zh) 具有紧凑数据寄存器的非易失性存储器存储及读取方法
TW201737250A (zh) 用於快取操作之裝置及方法
CN108475226A (zh) 感测电路上的错误码计算
US20060143428A1 (en) Semiconductor signal processing device
EP0280251B1 (en) Shared memory controller arrangement
KR20010034508A (ko) 향상된 연관 메모리 및 스위치를 구비한 컴퓨터
CN101206912A (zh) 存储器设备、存储器控制器和存储器系统
WO2016144724A1 (en) Apparatuses and methods for shift decisions
US3866180A (en) Having an instruction pipeline for concurrently processing a plurality of instructions
CN109582364B (zh) 基于忆阻器的精简指令集处理器
EP0544012B1 (en) Serial access memory
TW201812755A (zh) 記憶體架構
JP2003016787A (ja) 不揮発性半導体記憶装置および情報機器
CN1774767B (zh) 动态半导体存储器件
JP3843346B2 (ja) コンピュータシステム
JPS5853383B2 (ja) デ−タ処理システムにおける情報転送機構
US6498764B1 (en) Flash memory device having a multi-bank structure
US11664058B1 (en) Memory device and operation method thereof
US8842491B2 (en) Decoding scheme for bipolar-based diode three-dimensional memory requiring unipolar programming
SU1282219A1 (ru) Программируемое запоминающее устройство
SU1295409A1 (ru) Устройство дл организации мультипроцессорной иерархической системы
SU1091226A1 (ru) Оперативное запоминающее устройство
SU734695A1 (ru) Однокристальный микропроцессор
JPH1027496A (ja) 半導体記憶装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application