KR960029956A - 데이타 처리 시스템 및 방법 - Google Patents

데이타 처리 시스템 및 방법 Download PDF

Info

Publication number
KR960029956A
KR960029956A KR1019950067119A KR19950067119A KR960029956A KR 960029956 A KR960029956 A KR 960029956A KR 1019950067119 A KR1019950067119 A KR 1019950067119A KR 19950067119 A KR19950067119 A KR 19950067119A KR 960029956 A KR960029956 A KR 960029956A
Authority
KR
South Korea
Prior art keywords
instruction
processor element
type
offset value
memory means
Prior art date
Application number
KR1019950067119A
Other languages
English (en)
Other versions
KR100190738B1 (ko
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 KR960029956A publication Critical patent/KR960029956A/ko
Application granted granted Critical
Publication of KR100190738B1 publication Critical patent/KR100190738B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/141Discrete Fourier transforms
    • G06F17/142Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30072Arrangements for executing specific machine instructions to perform conditional operations, e.g. using predicates or guards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Discrete Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Advance Control (AREA)

Abstract

본 발명의 병렬 처리 시스템 및 방법에는 병렬처리 어레이(parallel processing array)에 대한 향상된 인스트럭션 분산 메카니즘(improved instruction distribution mechanism)이 제공된다. 본 발명은 다수의 프로세서소자에 기본 인스트럭션을 제각기 제공(broadcast)한다. 각각의 프로세서 소자에 기본 인스트럭션과 각각의 프로세서 소자에 제각기 저장된 단일 오프셋 값(unique offest value)의 합(combine)과 동일한 인스트럭션을 디코딩(decoding)하여, 도출된 단일 인스트럭션이 프로세서 소자로 제공되도록 한다. 프로세서 소자는 제1유형의 기본인스트럭션을 처리하여, 논리 및 제어 오퍼레이션(logical or control operation)이 수행되도록 한다. 제2유형의 기본 인스트럭션에는 포인터 어드레스(pointer address)가 제공된다. 포인터 어드레스는 기본 인스트럭션과 프로세서 소자에 저장된 단일 오프셋 값의 결합으로 인해 발생된 단일 어드레스 값(unique address value)을 갖는다. 포인터 어드레스는 대체 인스트럭션 저장 장치(alternative instruction storage)로부터의 대체 인스트럭션(alternative instruction)을 액세스하며, 프로세서 소자가 실행되도록 하는데 사용된다. 대체 인스트럭션은 초 인스트럭션 워드(very long instruction word)이며, 그 길이는 예를 들어 기본인스트럭션의 길이의 정수배(interal multiple)이고, 기본 인스트럭션에 의해 표현될 수 있는 정보보다 훨씬 많은 정보를 포함한다. 이와 같은 초 인스트럭션 워드는 프로세서 소자내에 있는 다수의 원시 실행치(a plurality of primitive execution units)에 병렬 제어가 제공되도록 하는데 유용하다. 이러한 방식으로, 병렬 처리 어레이의 프로세서소자 오퍼레이션에는 고도의 융통성 및 다양성이 제공된다.

Description

데이타 처리 시스템 및 방법
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제1도는 RISE SISD 제어 흐름을 도시하는 도면, 제2도는 RISC 분할 SISD 제어 흐름을 도시한 도면, 제3도는 단순화된 RIS의 분할된 SISD 제어 흐름을 도시한 도면, 제4도는 모델이 분기되지 않는 조건부 선택을 도시한 도면, 제5도는 Min/Max의 상위 레벨의 프로그램을 도시한 도면, 제6도는 Min/Max어셀블리 레벨의 프로그램을 도시한 도면.

Claims (23)

  1. 데이타 처리 시스템(a data processing system)에 있어서, 실행될 때 오퍼레이션(a operation)을 수행하는 제1유형의 주 인스트럭션(a first type primary instruction), 어드레스 포인터(anaddress pointer)를 제공하는 제2유형의 주 인스트럭션(a second type primary instruction) 및 제1 및 제2어드레스 포인터(first and second address pointers)에 의해 제각기 액세스(access)된 제1 및 제2위치(first and second locations의 제1 및 제2대체 인스트럭션(a first and second alternate instruction)을 저장하는 메모리 수단(a memory means)과; 상기 메모리 수단에 접속되고, 제1단일 오프셋 값(a first unque value)을 가지며, 상기 인스트럭션을 실행하는 제1프로세서 소자(a first processor element)와; 상기 메모리 수단에 접속되고, 제2단일 오프셋 값(a second umique offset value)을 가지며, 상기 인스트럭션을 실행하는 제2프로세서 소자(a second processor element)를 포함하되; 상기 제1프로세서 소자는 인스트럭션 디코드(an instruction decode)를 구비하고, 상기 제1유형의 주 인스트럭션을 처리(process)하여 하나의 오퍼레이션이 수행되도록 하고; 상기 제1프로세서 소자의 상기 인스트럭션 디코드는, 상기 제1단일 오프셋 값을 상기 제2유형의 주 인스트럭션과 함께 처리하여 상기 메모리 수단의 상기 제1대체 인스트럭션에 대한 상기 제1어드레스 포인터가 발생(generate)되도록 하고, 상기 메모리 수단에 응답하여 상기 제1대체 인스트럭션을 상기 제1프로세서 소자로 출력(output)하고; 상기 제2프로세서 소자는 인스트럭션 디코드를 포함하고, 상기 제1유형의 주 인스트럭션을 처리하여 하나의 오퍼레이션이 수행되도록 하고; 상기 제2프로세서 소자의 상기 인스트럭션 디코드는, 상기 제2단일 오프세값을 상기 제2유형의 주 인스트럭션과 함께 처리하여 상기 메모리 수단의 상기 제2대체 인스트럭션에 대한 상기 제2어드레스 포인터가 발생되도록 하고, 상기 메모리 수단에 응답하여 상기 제2대체 인스트럭션을 상기 제2프로세서 소자로 출력하며; 상기 메모리 수단으로부터 제공(broadcast)된 단일 인스트럭션(a single instruction)은 상기 제1 및 제2프로세서 소자의 여러가지 오퍼레이션(diverse operations)을 선택적으로 제어할 수 있는 데이타 처리 시스템.
  2. 제1항에 있어서, 상기 메모리 수단은, 상기 주 인스트럭션을 저장하는 제1저장 수단(a first stroage means)과; 상기 대체 인스트럭션을 저장하는 제2저장 수단(a second means)을 더 포함하는 데이타 처리 시스템.
  3. 제1항에 있어서, 상기 제2유형의 주 인스트럭션은 대리 인스트럭션(surrogate instructons)이고, 상기 대체 인스트럭션은 상기 주 인스트럭션보다 많은 초 장 인스트럭션 워드(very long instruction words)인 데이타 처리 시스템.
  4. 제1항에 있어서, 상기 주 인스트럭션은 단위 길이(a unit length)를 가지고, 상기 대체 인스트럭션은 상기 단위 길이의 정수배(an interal multiple)인 데이타 처리 시스템.
  5. 제1항에 있어서, 제1유형의 실행 장치(a first type execution unit) 및 제2유형의 실행 장치(a second type execution unit)를 제각기 갖는 상기 제1 및 제2프로세서 소자와; 상기 제1유형의 실행 장치에서 실행하는 제1실행가능한 영역(a first executable portion)및 상기 제2유형의 실행 장치에서 실행하는 제2실행가능한 영역(a second executable portion)을 제각기 갖는 상기 제1 및 제2대체 인스트럭션을 더 포함하는 데이타 처리 시스템.
  6. 제1항에 있어서, 상기 제1단일 오프셋 값 및 상기 제2단일 오프셋 값은 프로그램가능한 값(programmable values)인 데이타 처리 시스템.
  7. 제1항에 있어서, 기본값(a base value)과 제1오프셋 값의 합(sum)과 동일한 값을 갖는 제1포인터 어드레스(a first pointer address)에 위치되는 상기 제1대체 인스트럭션과; 상기 제1오프셋 값인 상기 제1단일 오프셋 값과; 상기 기본값을 포함하는 상기 제2유형의 주 인스트럭션과; 상기 제1단일 오프셋 값과 상기 제2유형의 주 인스트럭션으로부터의 상기 기본값을 가산(add)하여, 상기 제1포인터 어드레스가 발생되도록 하는 상기 제1프로세서 소자와; 기본값과 제2오프셋 값의 합과 동일한 값을 갖는 제2포인터 어드레스(a second pointer address)에 위치되는 상기 제2대체 인스트럭션과; 상기 제2오프셋 값인 상기 제2단일 오프셋 값과; 상기 기본값을 포함하는 상기 제2유형의 주 인스트럭션과; 상기 제2단일 오프셋 값과 상기 제2유형의 주 인스트럭션으로 부터의 상기 기본값을 가산하여, 상기 제2포인터 어드레스가 발생되도록 하는 상기 제2프로세서 소자를 더 포함하는 데이타 처리 시스템.
  8. 제1항에 있어서, 상기 제1 및 제2프로세서 소자는 단일 인스트럭션 다중 데이타 어레이(single instruction, multiple data array)의 일부인 데이타 처리 시스템.
  9. 제1항에 있어서, 실행될 때 오퍼레이션을 수행하는 제3유형의 주 인스트럭션(a third type primary instruction), 어드레스 포인터를 제공하는 제4유형의 주 인스트럭션(a fourth type primay instruction) 및 제3 및 제4위치(third and fourth locations)에서 저장되고 제3 및 제4어드레스 포인터(third and fourth address pointers)에 의해 제각기 액세스되는 제3 및 제4대체 인스트럭션(a third and fourth alternate instructions)을 저장하는 상기 메모리 수단과; 상기 메모리 수단에서 접속되고, 제3단일 오프셋 값(a third unique value)을 가지며, 상기 인스트럭션을 실행하는 제3프로세서 소자(a third processor element)와; 상기 메모리 수단에 접속되고, 제4단일 오프셋 값(a fourth unique offset value)을 가지며, 상기 인스트럭션을 실행하는 제4프로세서 소자(a fourth processor element)를 더 포함하되; 상기 제3프로세서 소자는 인스트럭션 디코드를 구비하고, 상기 제3유형의 주 인스트럭션을 처리하여 하나의 오퍼레이션이 수행되도록 하고; 상기 제3프로세서 소자의 상기 인스트럭션 디코드는, 상기 제3단일 오프셋 값을 상기 제4유형의 주 인스트럭션과 함께 처리하여 상기 메모리 수단의 상기 제3대체 인스트럭션에 대한 상기 제3프로세서 소자로 출력하고, 상기 제4프로세서 소자는 인스트럭션 디코드를 포함하고, 상기 제3유형의의 주 인스트럭션을 처리하여 하나의 오퍼레이션이 수행되도록 하고; 상기 제4프로세서 소자의 상기 인스트럭션 디코드는, 상기 제4단일 오프셋 값을 상기 제4유형의 주 인스트럭션과 함께 처리하여 상기 메모리 수단의 상기 제4대체 인스트럭션에 대한 상기 제4어드레스 포인터가 에 응답하여 상기 제4대체 인스트럭션을 상기 제4프로세서 소자를 출력하며; 상기 제1, 제2, 제3 및 제4프로세서 소자는 다중 인스트럭션, 다중 데이타 프로세서 어레이(a multiple instruction, multiple datamultiprocessor array)에 존재하는 데이타 처리 시스템.
  10. 데이타 처리 시스템에 있어서, 실행될 때 오퍼레이션을 수행하는 제1유형의 주 인스트럭션, 어드레스 포인터를 제공하는 제2유형의 주 인스트럭션 및 제1 및 제2어드레스 포인터에 의해 제각기 액세스되는 제1 및 제2위치의 제1 및 제2 대체 인스트럭션을 저장하는 메모리 수단과; 상기 메모리 수단에 접속되고, 제1단일 오프셋 값을 가지며, 상기 인스트럭션을 실행하는 제1프로세서 소자와; 상기 메모리 수단에 접속되고, 제2단일 오프셋 값을 가지며, 상기 인스트럭션을 실행하는 제2프로세서 소자를 포함하되; 상기 제1프로세서 소자, 상기 제1단일 오프셋 값을 상기 제2유형의 주 인스트럭션과 함께 처리하여 상기 메모리 수단의 상기 제1대체 인스트럭션에 대한 상기 제1어드레스 포인터가 발생되도록 하고, 상기 메모리 수단에 응답하여 상기 제1대체 인스트럭션을 상기 제1프로세서 소자로 출력하고, 상기 제2프로세서 소자는, 상기 제2단일 오프셋 값을 상기 제1유형의 주 인스트럭션과 함께 처리하여 상기 메모리 수단의 상기 제2대체 인스트럭션에 대한 상기 제2어드레스 포인터가 발생되도록 하고, 상기 메모리 수단에 응답하여 상기 제2대체 인스트럭션을 상기 제2프로세서 소자로 출력하며; 상기 메모리 수단으로부터 제공된 단일 인스트럭션은 상기 제1 및 제2프로세서 소자의 여러가지 오퍼레이션을 선택적으로 제어할 수 있는 데이타 처리 시스템.
  11. 데이타 처리 시스템에 있어서, 실행될 때 오퍼레이션을 수행하는 제1유형의 주 인스트럭션, 어드레스 포인터를 제공하는 제2유형의 주 인스트럭션 및 제1 및 제2어드레스 포인터에 의해 제각기 액세스되는 제1 및 제2위치의 제1 및 제2대체 인스트럭션을 저장하는 메모리 수단과; 상기 메모리 수단에 접속되고, 제1단일 오프셋 값을 가지며, 상기 인스트럭션을 실행하는 제1프로세서 소자와; 상기 메모리 수단에 접속되고, 제2단일 오프셋 값을 가지며, 상기 인스트럭션을 실행하는 제2프로세서 소자를 포함하되; 상기 제1프로세서 소자는 인스트럭션 디코드를 구비하고, 상기 제1단일 오프셋 값을 상기 제1유형의 주 인스트럭션과 함께 처리하여 제1논리 오퍼레이션(a first olgical operation)이 수행되도록 하고; 상기 제2프로세서 소자는 인스트럭션 디코드를 구비하고, 상기 제2단일 오프셋 값을 상기 제1유형의 주 인스트럭션과 함께 처리하여 상기 제1논리 오퍼레이션과 상이한 제1논리 오퍼레이션(a second logical operation)이 수행되도록 하고; 상기 제1프로세서 소자의 상기 인스트럭션 디코드는, 상기 제1단일 오프셋 값을 상기 제2유형의 주 인스트럭션과 함께 처리하여 상기 메모리 수단의 상기 제1대체 인스트럭션에 대한 상기 제1어드레스 포인터가 발생되도록 하고, 상기 메모리 수단에 응답하여 상기 제1대체 인스트럭션을 상기 제1프로세서 소자로 출력하고; 상기 제2프로세서 소자의 상기 인스트럭션 디코드는, 상기 제2단일 오프셋 값을 상기 제2유형의 주 인스트럭션과 함께 처리하여 상기 메모리 수단의 상기 제2대체 인스트럭션에 대한 상기 제2어드레스 포인터가 발생되도록 하고, 상기 메모리 수단에 응답하여 상기 제2대체 인스트럭션을 상기 제2프로세서 소자로 출력하며; 상기 메모리 수단으로부터 제공된 단일 인스트럭션은 상기 제1 및 제2프로세서 소자의 여러가지 오퍼레이션을 선택적으로 제어할 수 있는 데이타 처리 시스템.
  12. 제11항에 있어서, 상기 메모리 수단은, 상기 주 인스트럭션을 저장하는 제1저장 수단과; 상기 대체 인스트럭션을 저장하는 제2저장 수단을 더 포함하는 데이타 처리 시스템.
  13. 제11항에 있어서, 상기 제2유형의 주 인스트럭션은 대리 인스트럭션이고, 상기 대체 인스트럭션은 상기 주 인스트럭션보다 많은 초 장 인스트럭션 워드인 데이타 처리 시스템.
  14. 데이타를 처리하는 방법에 있어서, 실행될 때 오퍼레이션을 수행하는 제1유형의 주 인스트럭션, 어드레스 포인터를 제공하는 제2유형의 주 인스트럭션 및 제1 및 제2어드레스 포인터에 의해 제각기 액세스되는 제1 및 제2위치의 제1 및 제2대체 인스트럭션을 저장하는 단계와; 상기 단일 오프셋 값을 제1프로세서 소자에 할당(assing)하는 단계와; 상기 제1단일 오프셋 값을 상기 제2유형의 주 인스트럭션과 함께 처리하여 제1대체 인스트럭션에 대한 제1어드레스 포인터가 발생되도록 하는 단계와, 상기 제1어드레스 포인터 발생에 응답하여 상기 제1대체 인스트럭션을 상기 제1프로세서로 출력하는 단계와; 상기 제2단일 오프셋 값을 제2프로세서 소자에 할당하는 단계와; 상기 제2단일 오프셋 값을 상기 제2유형의 주 인스트럭션과 함께 처리하여 제2대체 인스트럭션에 대한 제2어드레스 포인터가 발생되도록 하는 단계와, 상기 제2어드레스 포인터 발생에 응답하여 상기 제2대체 인스트럭션을 상기 제2프로세서 소자로 출력하는 단계를 포함하되; 단일 전달 인스트럭션(a single vroadcast instrction)은 상기 제1및 제2프로세서 소자의 여러가지 오퍼레이션을 선택적으로 제어할 수 있는 데이타 처리 방법.
  15. 제14항에 있어서, 상기 제2유형의 주 인스트럭션은 대리 인스트럭션이고, 상기 대체 인스트럭션은 상기 주 이스트럭션보다 많은 초 장 인스트럭션 워드인 데이타 처리 방법.
  16. 제14항에 있어서, 상기 주 인스트럭션은 단위 길이를 가지고, 상기 대체 인스트럭션은 상기 단위 길이의 정수배인 데이타 처리 방법.
  17. 제14항에 있어서, 제1유형의 실행 장치 및 제2유형의 실행 장치를 제각기 갖는 상기 제1 및 제2프로세서소자와; 상기 제1유형의 실행 장치를 실행하는 제1실행가능한 영역 및 제2유형의 실행 장치를 실행하는 제2실행가능한 영역을 제각기 갖는 상기 제1 및 제2대체 인스트럭션을 더 포함하는 데이타 처리 방법.
  18. 제14항에 있어서, 상기 제1단일 오프셋 값 및 상기 제2단일 오프셋 값은 프로그램가능한 값인 데이타 처리 방법.
  19. 제14항에 있어서, 기본값(a base value)과 제1오프셋 값의 합(sum)과 동일한 값을 갖는 제1포인터 어드레스에 위치되는 상기 제1대체 인스트럭션과; 상기 제1오프셋 값인 상기 제1단일 오프셋 값과; 상기 기본값을 포함하는 상기 제2유형의 주 인스트럭션과; 상기 제1단일 오프셋 값과 상기 제2유형의 주 인스트럭션으로부터의 상기 기본값을 가산하여, 상기 제1포인터 어드레스가 발생되도록 하는 상기 제1프로세서 소자를 더 포함하는 데이타 처리 방법.
  20. 제19항에 있어서, 기본값과 제2오프셋 값의 합과 동일한 값을 갖는 제2포인터 어드레스 위치되는 상기 제2대체 인스트럭션과; 상기 제2오프셋 값인 상기 제2단일 오프셋 값과; 상기 기본값을 포함하는 상기 제2유형의 주 인스트럭션과; 상기 제2단일 오프셋 값과 상기 제2유형의 주 인스트럭션으로부터의 상기 기본값을 가산하여, 상기 제2포인터 어드레스가 발생되도록 하는 상기 제2프로세서 소자를 더 포함하는 데이타 처리 방법.
  21. 데이타 처리 시스템에 있어서, 실행될 때 오퍼레이션(a operation)을 수행하는 제1유형의 주 인스트럭션, 어드레스 포인터를 제공하는 제2유형의 주 인스트럭션 및 제1 및 제2어드레스 포인터에 의해 제각기 액세스되는 제 1 및 제2위치의 제1 및 제2대체 인스트럭션을 저장하는 메모리 수단과; 상기 메모리 수단에 접속되고, 제1단일 오프셋 값을 가지며, 상기 인스트럭션을 실행하는 제1프로세서 소자와; 상기 메모리 수단에 접속되고, 제2단일 오프셋 값을 가지며, 상기 인스트럭션을 실행하는 제2프로세서 소자를 포함하되; 상기 메모리 수단은 세그먼트 한정자 인스트럭션(a segment delimiter instruction)및 제1 및 제2단향식 인스트럭션(a first and second simplex instructions)을 더 저장하고, 제각기의 상기 대체 인스트럭션은 상기 제1단향식 인스트럭션을 저장할 수 있는 제1슬롯 영역(a first slot portion) 및 상기 제2단향식 인스트럭션을 저장할수 있는 제2슬롯영역(a second slot portion)을 구비하고; 상기 제1프로세서 소자는 인스트럭션 디코드를 구비하고, 상기 제1유형의 주 인스트럭션을 처리하여 하나의 오퍼레이션이 수행되도록 하고; 상기 제1프로세서 소자의 상기 인스트럭션 디코드는, 상기 제1단일 오프셋 값을 상기 제2유형의 주 인스트럭션과 함께 처리하여 상기 메모리 수단의 상기 제1대체 인스트럭션에 대한 상기 제1어드레스 포인터가 발생되도록 하고, 상기 메모리 수단에 응답하여 상기 제1대체 인스트럭션을 상기 제1프로세서 소자로 출력하고; 상기 제1프로세서 소자의 상기 인스트럭션 디코드는 상기 제1단일 오프셋 값을 상기 세그먼트 한정자 인스트럭션과 함께 처리하여, 상기 제1단향식 인스트럭션이 상기 제1대체 인스트럭션의 상기 제1슬롯 영역에 삽입(insert)되고 상기 제2단향식 인스트럭션이 상기 제1대체 인스트럭션의 상기 제2슬롯 영역에 삽입되도록 하며; 상기 제2프로세서 소자는 인스트럭션 디코드를 포함하고, 상기 제1유형의 주 인스트럭션을 처리하여 하나의 오퍼레이션이 수행되도록 하고; 상기 제2프로세서 소자의 상기 인스트럭션 디코드는, 상기 제2단일 오프셋 값을 상기 제2유형의 주 인스트럭션과 함께 처리하여 상기 메모리 수단의 상기 제2대체 인스트럭션에 대한 상기 제2어드레스 포인터가 발생되도록 하고, 상기 메모리 수단에 응답하여 상기 제2대체 인스트럭션을 상기 제2프로세서 소자로 출력하며; 상기 제2프로세서 소자의 상기 인스트럭션 디코드는 상기 제2단일 오프셋 값을 상기 세그먼트 한정자 인스트럭션과 함께 처리하여, 상기 제1단향식 인스트럭션이 상기 제2대체 인스트럭션의 상기 제1슬롯 영역에 삽입되고 상기 제2단향식 인스트럭션이 상기 제2대체 인스트럭션의 상기 제2슬롯 영역에 삽입되도록 하며; 상기 메모리 수단으로부터 제공된 인스트럭션은 상기 제1 및 제2프로세스 소자의 여러가지 오퍼레이션을 선택적으로 제어할 수 있는 데이타 처리 시스템.
  22. 제21항에 있어서, 상기 제1단향식 인스트럭션에 대한 제1실행 플래그(a first execution flag) 및 상기 제2단향식 인스트럭션에 대한 제2실행 플래그(a second execution flag)를 포함하는 상기 세그먼트 한정자 인스트럭션과; 상기 제1단향식 인스트럭션을 선택적으로 실행하고, 상기 제1실행 플래그에 응답하여 상기 제1단향식 인스트럭션을 상기 대체 인스트럭션의 상기 제1슬롯 영역에 삽입하는 상기 프로세서 소자와; 상기 제2단향식 인스트럭션을 선택적으로 실행하고, 상기 제2실행 플래그에 응답하여 상기 제2단향식 인스트럭션을 상기 대체 인스트럭션의 상기 제2슬롯 영역에 삽입하는 상기 프로세스 소자를 더 포함하는 데이타 처리 시스템.
  23. 제21항에 있어서, 상기 제1단향식 인스트럭션에 대한 제1실행 플래그 및 상기 제2단향식 인스트럭션에 대한 제2실행 플래그를 포함하는 상기 세그먼트 한정자 인스트럭션과; 상기 제1실행 플래그에 응답하여, 상기 대체 인스트럭션의 상기 제1슬롯 영역에서 상기 제1단향식 인스트럭션을 선택적으로 실행하는 상기 프로세서 소자와; 상기 제2실행 플래그에 응답하여, 상기 대체 인스트럭션의 상기 제2슬롯 영역에서 상기 제2단향식 인스트럭션을 선택적으로 실행하는 상기 프로세서 소자를 더 포함하는 데이타 처리 시스템.
    ※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
KR1019950067119A 1995-01-17 1995-12-29 데이타 처리 시스템 및 방법 KR100190738B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US8/373,128 1995-01-17
US08/373,128 US5649135A (en) 1995-01-17 1995-01-17 Parallel processing system and method using surrogate instructions

Publications (2)

Publication Number Publication Date
KR960029956A true KR960029956A (ko) 1996-08-17
KR100190738B1 KR100190738B1 (ko) 1999-06-01

Family

ID=23471090

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950067119A KR100190738B1 (ko) 1995-01-17 1995-12-29 데이타 처리 시스템 및 방법

Country Status (4)

Country Link
US (1) US5649135A (ko)
EP (1) EP0723220A3 (ko)
JP (1) JP3149348B2 (ko)
KR (1) KR100190738B1 (ko)

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5774737A (en) * 1995-10-13 1998-06-30 Matsushita Electric Industrial Co., Ltd. Variable word length very long instruction word instruction processor with word length register or instruction number register
US8583895B2 (en) * 1996-05-15 2013-11-12 Nytell Software LLC Compressed instruction format for use in a VLIW processor
US5852741A (en) * 1996-05-15 1998-12-22 Philips Electronics North America Corporation VLIW processor which processes compressed instruction format
US5943499A (en) * 1996-11-27 1999-08-24 Hewlett-Packard Company System and method for solving general global data flow predicated code problems
GB2325535A (en) * 1997-05-23 1998-11-25 Aspex Microsystems Ltd Data processor controller with accelerated instruction generation
US5966537A (en) * 1997-05-28 1999-10-12 Sun Microsystems, Inc. Method and apparatus for dynamically optimizing an executable computer program using input data
IL135953A0 (en) * 1997-11-07 2001-05-20 Bops Inc Methods and apparatus for efficient synchronous mimd operations with ivliw pe-to-pe communication
US6115830A (en) * 1997-11-11 2000-09-05 Compaq Computer Corporation Failure recovery for process relationships in a single system image environment
US6173389B1 (en) 1997-12-04 2001-01-09 Billions Of Operations Per Second, Inc. Methods and apparatus for dynamic very long instruction word sub-instruction selection for execution time parallelism in an indirect very long instruction word processor
US6101592A (en) * 1998-12-18 2000-08-08 Billions Of Operations Per Second, Inc. Methods and apparatus for scalable instruction set architecture with dynamic compact instructions
US6216223B1 (en) 1998-01-12 2001-04-10 Billions Of Operations Per Second, Inc. Methods and apparatus to dynamically reconfigure the instruction pipeline of an indirect very long instruction word scalable processor
US6366999B1 (en) * 1998-01-28 2002-04-02 Bops, Inc. Methods and apparatus to support conditional execution in a VLIW-based array processor with subword execution
EP0942359B1 (en) * 1998-02-19 2012-07-04 Lantiq Deutschland GmbH An apparatus for executing instructions of a program
US6219776B1 (en) 1998-03-10 2001-04-17 Billions Of Operations Per Second Merged array controller and processing element
USRE41012E1 (en) 1998-03-12 2009-11-24 Altera Corporation Register file indexing methods and apparatus for providing indirect control of register addressing in a VLIW processor
US6446190B1 (en) * 1998-03-12 2002-09-03 Bops, Inc. Register file indexing methods and apparatus for providing indirect control of register addressing in a VLIW processor
KR100538605B1 (ko) 1998-03-18 2005-12-22 코닌클리즈케 필립스 일렉트로닉스 엔.브이. 데이터 처리 장치, 행렬 변환 방법 및 컴퓨터 판독가능한 매체
US6112288A (en) * 1998-05-19 2000-08-29 Paracel, Inc. Dynamic configurable system of parallel modules comprising chain of chips comprising parallel pipeline chain of processors with master controller feeding command and data
US6356994B1 (en) * 1998-07-09 2002-03-12 Bops, Incorporated Methods and apparatus for instruction addressing in indirect VLIW processors
US6839728B2 (en) * 1998-10-09 2005-01-04 Pts Corporation Efficient complex multiplication and fast fourier transform (FFT) implementation on the manarray architecture
US6366998B1 (en) 1998-10-14 2002-04-02 Conexant Systems, Inc. Reconfigurable functional units for implementing a hybrid VLIW-SIMD programming model
US6453407B1 (en) 1999-02-10 2002-09-17 Infineon Technologies Ag Configurable long instruction word architecture and instruction set
US6282585B1 (en) * 1999-03-22 2001-08-28 Agere Systems Guardian Corp. Cooperative interconnection for reducing port pressure in clustered microprocessors
US6405301B1 (en) * 1999-06-15 2002-06-11 U.S. Philips Corporation Parallel data processing
US8762691B2 (en) 1999-04-09 2014-06-24 Rambus Inc. Memory access consolidation for SIMD processing elements using transaction identifiers
US8171263B2 (en) * 1999-04-09 2012-05-01 Rambus Inc. Data processing apparatus comprising an array controller for separating an instruction stream processing instructions and data transfer instructions
US8169440B2 (en) 1999-04-09 2012-05-01 Rambus Inc. Parallel data processing apparatus
US20080008393A1 (en) * 1999-04-09 2008-01-10 Dave Stuttard Parallel data processing apparatus
US7526630B2 (en) * 1999-04-09 2009-04-28 Clearspeed Technology, Plc Parallel data processing apparatus
JP5285828B2 (ja) * 1999-04-09 2013-09-11 ラムバス・インコーポレーテッド 並列データ処理装置
US20080162875A1 (en) * 1999-04-09 2008-07-03 Dave Stuttard Parallel Data Processing Apparatus
US7802079B2 (en) 1999-04-09 2010-09-21 Clearspeed Technology Limited Parallel data processing apparatus
US20070242074A1 (en) * 1999-04-09 2007-10-18 Dave Stuttard Parallel data processing apparatus
US20080162874A1 (en) * 1999-04-09 2008-07-03 Dave Stuttard Parallel data processing apparatus
US8174530B2 (en) * 1999-04-09 2012-05-08 Rambus Inc. Parallel date processing apparatus
US7966475B2 (en) 1999-04-09 2011-06-21 Rambus Inc. Parallel data processing apparatus
US6598146B1 (en) * 1999-06-15 2003-07-22 Koninklijke Philips Electronics N.V. Data-processing arrangement comprising a plurality of processing and memory circuits
NL1013134C2 (nl) * 1999-09-24 2001-03-27 Dsm Nv Vlamvertragende thermoplastische samenstelling met verbeterde eigenschappen.
US6754892B1 (en) * 1999-12-15 2004-06-22 Transmeta Corporation Instruction packing for an advanced microprocessor
US6859870B1 (en) * 2000-03-07 2005-02-22 University Of Washington Method and apparatus for compressing VLIW instruction and sharing subinstructions
US6728862B1 (en) 2000-05-22 2004-04-27 Gazelle Technology Corporation Processor array and parallel data processing methods
US6415376B1 (en) 2000-06-16 2002-07-02 Conexant Sytems, Inc. Apparatus and method for issue grouping of instructions in a VLIW processor
JP4542722B2 (ja) * 2001-04-25 2010-09-15 富士通株式会社 命令処理方法
US7676588B2 (en) * 2001-10-05 2010-03-09 International Business Machines Corporation Programmable network protocol handler architecture
US7072970B2 (en) * 2001-10-05 2006-07-04 International Business Machines Corporation Programmable network protocol handler architecture
US6968445B2 (en) * 2001-12-20 2005-11-22 Sandbridge Technologies, Inc. Multithreaded processor with efficient processing for convergence device applications
US6925643B2 (en) 2002-10-11 2005-08-02 Sandbridge Technologies, Inc. Method and apparatus for thread-based memory access in a multithreaded processor
US6904511B2 (en) * 2002-10-11 2005-06-07 Sandbridge Technologies, Inc. Method and apparatus for register file port reduction in a multithreaded processor
US6842848B2 (en) 2002-10-11 2005-01-11 Sandbridge Technologies, Inc. Method and apparatus for token triggered multithreading
US7987341B2 (en) * 2002-10-31 2011-07-26 Lockheed Martin Corporation Computing machine using software objects for transferring data that includes no destination information
US20040098568A1 (en) * 2002-11-18 2004-05-20 Nguyen Hung T. Processor having a unified register file with multipurpose registers for storing address and data register values, and associated register mapping method
US6993639B2 (en) * 2003-04-01 2006-01-31 Hewlett-Packard Development Company, L.P. Processing instruction addressed by received remote instruction and generating remote instruction to respective output port for another cell
US7451459B2 (en) * 2003-05-05 2008-11-11 Microsoft Corporation Systems, methods, and apparatus for indicating processor hierarchical topology
US7698539B1 (en) * 2003-07-16 2010-04-13 Banning John P System and method of instruction modification
US7606997B1 (en) 2003-07-18 2009-10-20 Guillermo Rozas Method and system for using one or more address bits and an instruction to increase an instruction set
US7676649B2 (en) * 2004-10-01 2010-03-09 Lockheed Martin Corporation Computing machine with redundancy and related systems and methods
US7493474B1 (en) * 2004-11-10 2009-02-17 Altera Corporation Methods and apparatus for transforming, loading, and executing super-set instructions
US8918366B2 (en) * 2005-02-07 2014-12-23 Mimosa Systems, Inc. Synthetic full copies of data and dynamic bulk-to-brick transformation
US8812433B2 (en) * 2005-02-07 2014-08-19 Mimosa Systems, Inc. Dynamic bulk-to-brick transformation of data
US8799206B2 (en) * 2005-02-07 2014-08-05 Mimosa Systems, Inc. Dynamic bulk-to-brick transformation of data
DE102005033770A1 (de) * 2005-07-15 2007-01-25 Technische Universität Dresden Anordnung und Verfahren zur datenflussabhängigen Programmablaufsteuerung in einem SIMD-Prozessor
JP2009508191A (ja) * 2005-08-23 2009-02-26 ミモーサ・システムズ・インコーポレーテッド Id保存を介するエンタープライズサーババージョン移行
EP1821254A1 (en) * 2006-02-17 2007-08-22 Deutsche Börse Ag Parallelization command driven data handling
CN100492279C (zh) * 2006-07-27 2009-05-27 中国科学院计算技术研究所 对复杂指令译码生成微码的译码装置和方法
US9354890B1 (en) 2007-10-23 2016-05-31 Marvell International Ltd. Call stack structure for enabling execution of code outside of a subroutine and between call stack frames
US8095775B1 (en) * 2007-11-21 2012-01-10 Marvell International Ltd. Instruction pointers in very long instruction words
US9442758B1 (en) 2008-01-21 2016-09-13 Marvell International Ltd. Dynamic processor core switching
US9582443B1 (en) 2010-02-12 2017-02-28 Marvell International Ltd. Serial control channel processor for executing time-based instructions
US8884920B1 (en) 2011-05-25 2014-11-11 Marvell International Ltd. Programmatic sensing of capacitive sensors
US9098694B1 (en) 2011-07-06 2015-08-04 Marvell International Ltd. Clone-resistant logic
US9069553B2 (en) 2011-09-06 2015-06-30 Marvell World Trade Ltd. Switching tasks between heterogeneous cores
DE102016108081A1 (de) * 2016-05-02 2017-11-02 Denso Corporation Mikroprozessor mit Zusatz-Befehlen für Binärsuche und zugehöriges Suchverfahren

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2555963C2 (de) * 1975-12-12 1982-10-28 Ibm Deutschland Gmbh, 7000 Stuttgart Einrichtung zur Funktionsmodifizierung
US4394736A (en) * 1980-02-11 1983-07-19 Data General Corporation Data processing system utilizing a unique two-level microcoding technique for forming microinstructions
US4814978A (en) * 1986-07-15 1989-03-21 Dataflow Computer Corporation Dataflow processing element, multiprocessor, and processes
GB2211638A (en) * 1987-10-27 1989-07-05 Ibm Simd array processor
US5057837A (en) * 1987-04-20 1991-10-15 Digital Equipment Corporation Instruction storage method with a compressed format using a mask word
US4923907A (en) * 1989-02-21 1990-05-08 Sorrento Engineering, Inc. Method of making porous inorganic particle filled polyimide foam insulation products
US5303358A (en) * 1990-01-26 1994-04-12 Apple Computer, Inc. Prefix instruction for modification of a subsequent instruction
US5303356A (en) * 1990-05-04 1994-04-12 International Business Machines Corporation System for issuing instructions for parallel execution subsequent to branch into a group of member instructions with compoundability in dictation tag
US5197135A (en) * 1990-06-26 1993-03-23 International Business Machines Corporation Memory management for scalable compound instruction set machines with in-memory compounding
US5163139A (en) * 1990-08-29 1992-11-10 Hitachi America, Ltd. Instruction preprocessor for conditionally combining short memory instructions into virtual long instructions
US5299321A (en) * 1990-12-18 1994-03-29 Oki Electric Industry Co., Ltd. Parallel processing device to operate with parallel execute instructions
US5274815A (en) * 1991-11-01 1993-12-28 Motorola, Inc. Dynamic instruction modifying controller and operation method

Also Published As

Publication number Publication date
US5649135A (en) 1997-07-15
JPH08249293A (ja) 1996-09-27
KR100190738B1 (ko) 1999-06-01
EP0723220A2 (en) 1996-07-24
EP0723220A3 (en) 1997-10-01
JP3149348B2 (ja) 2001-03-26

Similar Documents

Publication Publication Date Title
KR960029956A (ko) 데이타 처리 시스템 및 방법
US5669001A (en) Object code compatible representation of very long instruction word programs
CN100392596C (zh) 编译装置及编译方法
US6948158B2 (en) Retargetable compiling system and method
US6189090B1 (en) Digital signal processor with variable width instructions
US20030079114A1 (en) Processor, compiling apparatus, and compile program recorded on a recording medium
JP2002328804A (ja) データ処理装置、命令セット切換方法、データ処理アーキテクチャおよびデータ処理装置作動方法
JPH01201729A (ja) デコード方法
JPS61170828A (ja) マイクロプログラム制御装置
GB1448866A (en) Microprogrammed data processing systems
KR930018368A (ko) 롬(rom) 용량을 저감한 데이타 프로세서
CN107408054B (zh) 设备中的流控制的方法和计算机可读介质
US20040059894A1 (en) Process for running programs on processors and corresponding processor system
US5542079A (en) Data driven processor for reading data from storage to apply prescribed operation in response to operation updating instruction and updating the contents of the storage
US7469404B2 (en) Bank assignment for partitioned register banks
US20070011440A1 (en) Processor and processing method
JP5068529B2 (ja) 時間−静止型プロセッサにおけるゼロ−オーバヘッドのブランチング及びルーピング
US5369774A (en) Method and apparatus for handling array type data in a data driven type information processor
KR970012141A (ko) 파이프라인 처리를 수행하는 데이터 처리 장치
US6321319B2 (en) Computer system for allowing a two word jump instruction to be executed in the same number of cycles as a single word jump instruction
JPH03135630A (ja) 命令スケジューリング方式
JP2011044163A (ja) 固定幅命令エンコード内のプロセッサ操作の拡張された機能性
KR960016401B1 (ko) 레지스터 페이지 포인터를 이용한 레지스터 페이지간의 페이지 선택회로
JPH0666052B2 (ja) メモリ内容を機械レジスタに自動的に写像する計算機
KR20040080520A (ko) 명령어 병렬처리를 위한 디지털 신호처리기 및 그처리방법

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20011107

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee