KR100960148B1 - 데이터 프로세싱 회로 - Google Patents

데이터 프로세싱 회로 Download PDF

Info

Publication number
KR100960148B1
KR100960148B1 KR1020080042497A KR20080042497A KR100960148B1 KR 100960148 B1 KR100960148 B1 KR 100960148B1 KR 1020080042497 A KR1020080042497 A KR 1020080042497A KR 20080042497 A KR20080042497 A KR 20080042497A KR 100960148 B1 KR100960148 B1 KR 100960148B1
Authority
KR
South Korea
Prior art keywords
memory
control signal
unit
signal
program
Prior art date
Application number
KR1020080042497A
Other languages
English (en)
Other versions
KR20090116511A (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 한국전자통신연구원
Priority to KR1020080042497A priority Critical patent/KR100960148B1/ko
Priority to US12/204,857 priority patent/US7814296B2/en
Publication of KR20090116511A publication Critical patent/KR20090116511A/ko
Application granted granted Critical
Publication of KR100960148B1 publication Critical patent/KR100960148B1/ko

Links

Images

Classifications

    • 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
    • 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/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • 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
    • 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
    • G06F9/30189Instruction operation extension or modification according to execution mode, e.g. mode flag
    • 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/3802Instruction prefetching
    • 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
    • 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/46Multiprogramming arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Advance Control (AREA)
  • Multi Processors (AREA)

Abstract

데이터 프로세싱 회로는, 동작 제어 신호 및 메모리 제어 신호를 출력하는 제어 유닛과, 각각이 상기 메모리 제어 신호에 응답해서 명령을 출력하는 복수의 프로그램 메모리들, 그리고 각각이 상기 동작 제어 신호에 응답해서 상기 복수의 프로그램 메모리들로부터의 명령들 중 어느 하나를 선택적으로 수행하는 연산기들을 포함하여 동작 환경에 따라서 유연하게 동작 모드 변환이 가능하다.

Description

데이터 프로세싱 회로{DATA PROCESSING CIRCUIT}
본 발명은 데이터 프로세싱 회로에 관한 것으로, 좀 더 구체적으로는 병렬 프로세싱의 다중 모드를 동적으로 구현할 수 있는 데이터 프로세싱 회로에 관한 것이다.
현재의 반도체 집적 기술은 단일칩 또는 복수의 칩들 상에 복수의 프로세서들을 배열할 수 있다. 이러한 프로세서들의 병렬 어레이는 명령을 처리하는 방식에 따라서 SISD(Single Instruction stream Single Data stream), SIMD(Single Instruction stream Multiple Data stream), MISD(Multiple Instruction stream Single Data stream) 및 MIMD(Multiple Instruction stream Multiple Data stream) 등으로 구성될 수 있다.
SISD는 한번에 하나의 명령에 의해 하나의 데이터만을 처리할 수 있는 구조를 갖는다. SIMD는 하나의 제어 유닛의 제어에 따라서 복수의 연산 유닛들(또는 프로세서들)이 하나의 명령어를 동시에 수행되는 구조이다. 복수의 연산 유닛들은 명령어를 실행하는 과정에서 서로 다른 데이터들을 사용할 수 있다. SIMD 구조는 많은 연산 유닛들을 제어하기 위해 최소의 프로그램 메모리를 사용한다는 장점이 있으나 다양한 연산을 동시에 수행할 수는 없다.
MISD는 여러 프로세서들이 서로 다른 명령어를 처리하지만 처리하는 데이터는 하나인 구조이다. MIMD는 하나의 제어 유닛의 제어 따라서 복수의 연산 유닛들이 서로 다른 명령어와 데이터를 처리하는 구조이다. MIMD 구조는 복수의 연산 유닛들을 제어하기 위해서 프로그램 메모리의 크기가 커지는 단점이 있으나 다양한 연산을 동시에 수행할 수 있기 때문에 처리 효율은 높다.
최근에는 SIMD와 MIMD 구조를 결합한 다중 SIMD 구조도 제안된 바 있다. 다중 SIMD는 MIMD와 마찬가지로 복수의 프로그램 메모리들에서 각각 하나의 명령어를 읽어와서 복수의 연산 유닛들에서 서로 다른 데이터에 대한 연산을 수행하나, 복수의 연산 유닛들 내에 복수의 SIMD 연산 회로들을 포함하여, 하나의 연산 유닛 내에서 복수의 SIMD 연산 회로들에 의해서 동일한 연산이 수행된다, 이와 같은 다중 SIMD 구조는 MIMD 보다는 작은 크기의 프로그램 메모리를 사용하나 복수의 연산 유닛들을 동시에 제어해야 하므로 다양한 연산 수행에 제약이 따른다.
멀티 모드 병렬 프로세서 구조는 복수의 제어기들을 포함하여, 각각의 제어기가 대응하는 프로그램 메모리 및 연산기를 독립적으로 제어할 수 있는 구조를 갖는다. 그러나 연산기의 수만큼 제어기의 수가 필요하므로 하드웨어 크기가 증가하고, 전력 소비가 커지는 단점이 있다.
이와 같이 다양한 프로세서 구조들 각각은 장점도 있으나 또한 단점들도 내포한다. 그러므로 동작 환경에 따라서 유연하게 동작 모드 변환이 가능한 구조를 갖는 데이터 프로세싱 회로가 요구된다.
본 발명의 목적은 효율적으로 동작 모드 변환이 가능한 데이터 프로세싱 회로를 제공하는데 있다.
이와 같은 목적을 달성하기 위한 본 발명의 특징에 의하면, 데이터 프로세싱 회로는, 동작 제어 신호 및 메모리 제어 신호를 출력하는 제어 유닛과, 각각이 상기 메모리 제어 신호에 응답해서 명령을 출력하는 복수의 프로그램 메모리들, 그리고 각각이 상기 동작 제어 신호에 응답해서 상기 복수의 프로그램 메모리들로부터의 명령들 중 어느 하나를 선택적으로 수행하는 연산기들을 포함한다.
이 실시예에 있어서, 상기 복수의 연산기들 각각은, 상기 동작 제어 신호에 응답해서 메모리 선택 신호를 출력하는 연산 유닛, 그리고 상기 메모리 선택 신호에 응답해서 상기 복수의 프로그램 메모리들 중 어느 하나로부터 출력되는 명령을 상기 연산 유닛으로 제공하는 선택기를 포함하며, 상기 연산 유닛은 상기 선택기로부터의 명령을 수행한다.
이 실시예에 있어서, SIMD(Single Instruction stream Multiple Data stream) 모드일 때 상기 제어 유닛으로부터 출력되는 상기 동작 제어 신호는, SIMD 모드 신호 및 메모리 선택 제어 신호를 포함한다.
이 실시예에 있어서, 상기 복수의 연산기들 각각의 상기 연산 유닛은, 상기 복수의 프로그램 메모리들 중 상기 메모리 선택 제어 신호가 지정하는 프로그램 메 모리가 선택되도록 상기 메모리 선택 신호를 출력한다.
이 실시예에 있어서, MIMD(Multiple Instruction stream Multiple Data stream) 모드일 때 상기 제어 유닛으로부터 출력되는 상기 동작 제어 신호는 MIMD 모드 신호를 포함한다.
이 실시예에 있어서, 상기 복수의 연산기들 각각의 상기 연산 유닛은, 상기 복수의 프로그램 메모리들 중 다음 명령이 저장된 프로그램 메모리에 대한 메모리 정보를 저장하는 메모리 선택 레지스터를 포함한다.
이 실시예에 있어서, 상기 복수의 연산기들 각각의 상기 연산 유닛은, 상기 동작 제어 신호가 상기 MIMD 모드 신호일 때 상기 메모리 선택 레지스터에 저장된 상기 메모리 정보에 대응하는 상기 메모리 선택 신호를 출력한다.
이 실시예에 있어서, 상기 제어 유닛으로부터 출력되는 상기 메모리 제어 신호는 상기 프로그램 메모리들로부터 읽혀질 명령어가 저장된 어드레스를 포함한다.
이와 같은 본 발명의 데이터 프로세싱 회로는 동작 환경에 따라서 유연하게 동작 모드 변환이 가능한 구조를 갖는다.
이하 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다.
도 1은 본 발명의 바람직한 실시에에 따른 데이터 프로세싱 회로를 보여주는 도면이다.
도 1을 참조하면, 데이터 프로세싱 회로(100)는 제어 유닛(110), 복수의 프로그램 메모리들(121-123), 복수의 연산기들(131-133) 그리고 버스(170)를 포함한다. 제어 유닛(111)은 프로그램 메모리들(121-123)을 제어하기 위한 메모리 제어 신호(MCTRL) 및 연산기들(131-133)을 제어하기 위한 동작 제어 신호(OCTRL)를 출력한다. 동작 제어 신호(OCTRL)는 동작 모드를 나타내며, 메모리 선택 제어 신호를 포함한다.
프로그램 메모리들(121-123) 각각은 제어 유닛(110)으로부터의 메모리 제어 신호(MCTRL)에 응답해서 명령어(CMD1-CMDM)를 출력한다. 명령어들(CMD1-CMDM) 각각은 연산기들(131-133)로 입력된다. 제어 유닛(110)으로부터의 메모리 제어 신호(MCTRL)는 프로그램 메모리들(121-123)로부터 읽혀질 명령어가 저장된 주소를 포함한다. 이 실시예에 있어서 프로그램 메모리들(121-123)은 M 개로 구성된다.
연산기들(131-133) 각각은 제어 유닛(110)으로부터의 동작 제어 신호(OCTRL)에 응답해서 복수의 프로그램 메모리들(121-123)로부터의 명령어들(CMD1-CMDM) 중 어느 하나를 선택적으로 수행한다. 이 실시예에서 연산기들(131-133)의 수는 N 개이다.
연산기(131)는 선택기(141)와 연산 유닛(151)을 포함하며, 연산기(132)는 선택기(142)와 연산 유닛(152)을 포함하며, 그리고 연산기(133)는 선택기(143)와 연산 유닛(153)을 포함한다.
연산 유닛들(151-153) 각각은 제어 유닛(110)으로부터의 동작 제어 신호(OCTRL)에 응답해서 메모리 선택 신호(MSEL1-MSELN)를 출력한다. 선택기들(141- 143) 각각은 연산 유닛들(151-153)에 대응하며, 대응하는 연산 유닛(151-153)으로부터 출력되는 메모리 선택 신호(MSEL1-MSELN)에 응답해서 복수의 프로그램 메모리들(121-123) 중 어느 하나로부터 출력되는 명령어를 대응하는 연산 유닛(151-153)으로 제공한다. 복수의 연산 유닛들(151-153) 각각은 대응하는 선택기(141-143)로부터 입력된 명령어를 수행한다.
연산 유닛들(151-153) 각각은 레지스터(161-163)를 포함한다. 레지스터들(161-163)은 다음에 수행될 명령이 저장된 프로그램 메모리의 정보를 저장한다. 레지스터들(161-163)의 구체적인 기능은 추후 상세히 설명된다. 도면에 도시되지는 않았으나, 연산 유닛들(151-153) 각각은 레지스터(161-163)뿐만 아니라 연산 기능을 수행하기 위한 산술 회로, 연산 결과를 저장하기 위한 레지스터 파일 등을 포함한다.
버스(170)는 연산 유닛들(151-153)을 상호 연결한다. 버스(170)는 신호 라인 또는 다양한 통신 네트워크로 변경되어 구성될 수 있다.
도 1에 도시된 데이터 프로세싱 회로(100)는 SIMD 모드 및 MIMD 모드로 선택적으로 동작할 수 있다. 도 2 및 도 3을 참조하여 데이터 프로세싱 회로(100)의 동작을 설명한다.
도 2는 도 1에 도시된 데이터 프로세싱 회로(100)가 SIMD 모드로 동작할 때 신호들의 값을 보여주는 도면이다.
도 2를 참조하면, 제어 유닛(110)으로부터 출력되는 동작 제어 신호(OCTRL)가 SIMD 모드를 나타낼 때, 연산 유닛들(151-153) 각각은 동작 제어 신호(OCTRL)에 포함된 메모리 선택 제어 신호(PM)에 대응하는 메모리 선택 신호(MSEL1-MSELN)를 출력한다. 예컨대, 선택 제어 신호(PM)가 프로그램 메모리(122)를 지정하는 경우 연산 유닛들(151-153) 각각은 프로그램 메모리(122)로부터 출력되는 명령어(SUB)가 선택되도록 메모리 선택 신호(MSEL1-MSELN)를 출력한다. 선택기들(141-143)은 대응하는 메모리 선택 신호(MSEL1-MSELN)에 응답해서 프로그램 메모리(122)로부터 출력되는 명령어(SUB)를 연산 유닛들(151-153)로 전달한다.
연산 유닛들(151-153)은 동일한 명령어(SUB)에 따라서 서로 다른 데이터에 대한 연산을 수행하게 된다. 즉, 데이터 프로세싱 회로(100)는 SIMD 모드로 동작한다.
도 3은 도 1에 도시된 데이터 프로세싱 회로(100)가 MIMD 모드로 동작할 때 신호들의 값을 보여주는 도면이다.
도 3을 참조하면, 제어 유닛(110)으로부터 출력되는 동작 제어 신호(OCTRL)가 MIMD 모드를 나타낼 때, 연산 유닛들(151-153) 각각은 레지스터(161-163)에 저장된 메모리 정보에 대응하는 메모리 선택 신호(MSEL1-MSELN)를 출력한다. 예컨대, 연산 유닛(151)은 이전 명령어에 대한 연산 결과, 다음 명령어가 프로그램 메모리(122)로부터 읽혀진 명령어일 경우 레지스터(161)에 프로그램 메모리(122)에 대응하는 메모리 정보를 저장한다. 연산 유닛(151)은 레지스터(161)에 저장된 메모리 정보에 따라서 프로그램 메모리(122)로부터 출력되는 명령어가 선택될 수 있도록 메모리 선택 신호(MSEL1)를 출력한다. 이와 같은 방법으로, 연산 유닛(152)은 프로그램 메모리(123)로부터 출력되는 명령어가 선택될 수 있도록 메모리 선택 신호(MSEL2)를 출력하고, 연산 유닛(153)은 프로그램 메모리(121)로부터 출력되는 명령어가 선택될 수 있도록 메모리 선택 신호(MSELN)를 출력한다.
선택기(141)는 메모리 선택 신호(MSEL1)에 응답해서 프로그램 메모리(122)로부터 출력되는 명령어(SUB)를 연산 유닛(151)으로 전달하고, 선택기(142)는 메모리 선택 신호(MSEL2)에 응답해서 프로그램 메모리(123)로부터 출력되는 명령어(AND)를 연산 유닛(152)으로 전달하고, 그리고 선택기(143)는 메모리 선택 신호(MSELN)에 응답해서 프로그램 메모리(121)로부터 출력되는 명령어(AND)를 연산 유닛(153)으로 전달한다.
연산 유닛들(151-153)은 서로 다른 명령어들(SUB, AND, ADD)에 따라서 서로 다른 데이터에 대한 연산을 수행하게 된다. 즉, 데이터 프로세싱 회로(100)는 MIMD 모드로 동작한다.
일반적으로 SIMD 구조는 병렬로 구성된 연산 유닛들이 동일한 연산을 수행한다. 연산 유닛마다 데이터에 따라서 서로 다른 연산을 수행하기 위해서는 모든 연산 유닛들이 동일한 연산을 수행한 후 필요한 값을 선택하는 과정이 요구된다. 이 경우 데이터의 종류가 다양해 질수록 병렬 연산으로 인한 효율이 저하된다.
MIMD 구조는 병렬로 구성된 연산 유닛들이 서로 다른 명령어를 수행하기 위해서 각각의 연산 유닛에서 필요한 명령어들을 모두 프로그램 메모리에 저장하고 있어야 하므로 프로그램 메모리의 크기가 커야 한다. 특히 멀티미디어 데이터를 MIMD 구조의 데이터 프로세싱 회로로 처리할 경우 프로그램 메모리의 크기가 부담되고, 전력 소모량도 증가하게 된다.
본 발명의 데이터 프로세싱 회로(100)는 하나의 제어 유닛(110), 복수의 프로그램 메모리들(121-123) 그리고 복수의 연산기들(131-133)을 포함하여, 프로그램 특성에 따라서 SIMD 모드 및 MIMD 모드 중 어느 하나로 선택적으로 동작할 수 있다. 예컨대, 동일한 연산을 반복적으로 수행해야 하는 경우 데이터 프로세싱 회로(100)는 SIMD 모드로 동작하며, 연산기들(131-133)이서로 다른 연산을 수행해야 하는 경우 MIMD 모드로 동작하되, 연산기들 마다 직접 명령어를 선택해서 동작할 수 있도록 함으로써 병렬 연산의 효율이 증대된다. 이 실시예에서 프로그램 메모리들(121-123)의 수는 M개 그리고 연산기들(131-133)의 수 N개로 설정되었으나 프로그램 메모리들 및 연산기들의 수는 다양하게 변경될 수 있다.
예시적인 바람직한 실시예들을 이용하여 본 발명을 설명하였지만, 본 발명의 범위는 개시된 실시예들에 한정되지 않는다는 것이 잘 이해될 것이다. 오히려, 본 발명의 범위에는 다양한 변형 예들 및 그 유사한 구성들이 모두 포함될 수 있도록 하려는 것이다. 따라서, 청구범위는 그러한 변형 예들 및 그 유사한 구성들 모두를 포함하는 것으로 가능한 폭넓게 해석되어야 한다.
도 1은 본 발명의 바람직한 실시에에 따른 데이터 프로세싱 회로를 보여주는 도면이다.
도 2는 도 1에 도시된 데이터 프로세싱 회로가 SIMD 모드로 동작할 때 신호들의 값을 보여주는 도면이다.
도 3은 도 1에 도시된 데이터 프로세싱 회로가 MIMD 모드로 동작할 때 신호들의 값을 보여주는 도면이다.

Claims (8)

  1. 동작 제어 신호 및 메모리 제어 신호를 출력하는 제어 유닛과;
    각각이 상기 메모리 제어 신호에 응답해서 명령을 출력하는 복수의 프로그램 메모리들; 그리고
    각각이 상기 동작 제어 신호에 응답해서 상기 복수의 프로그램 메모리들로부터의 명령들 중 어느 하나를 선택적으로 수행하는 복수의 연산기들을 포함하되;
    상기 복수의 연산기들 각각은,
    상기 동작 제어 신호에 응답해서 메모리 선택 신호를 출력하는 연산 유닛; 그리고
    상기 메모리 선택 신호에 응답해서 상기 복수의 프로그램 메모리들 중 어느 하나로부터 출력되는 명령을 상기 연산 유닛으로 제공하는 선택기를 포함하고,
    상기 연산 유닛은 상기 선택기로부터 제공된 명령을 수행하는 것을 특징으로 하는 데이터 프로세싱 회로.
  2. 삭제
  3. 제 1 항에 있어서,
    SIMD(Single Instruction stream Multiple Data stream) 모드일 때 상기 제어 유닛으로부터 출력되는 상기 동작 제어 신호는, SIMD 모드 신호 및 메모리 선택 제어 신호를 포함하는 것을 특징으로 하는 데이터 프로세싱 회로.
  4. 제 3 항에 있어서,
    상기 복수의 연산기들 각각의 상기 연산 유닛은,
    상기 복수의 프로그램 메모리들 중 상기 동작 제어 신호가 지정하는 프로그램 메모리가 선택되도록 상기 메모리 선택 신호를 출력하는 것을 특징으로 하는 데이터 프로세싱 회로.
  5. 제 1 항에 있어서,
    MIMD(Multiple Instruction stream Multiple Data stream) 모드일 때 상기 제어 유닛으로부터 출력되는 상기 동작 제어 신호는 MIMD 모드 신호를 포함하는 것을 특징으로 하는 데이터 프로세싱 회로.
  6. 제 5 항에 있어서,
    상기 복수의 연산기들 각각의 상기 연산 유닛은,
    상기 복수의 프로그램 메모리들 중 다음 명령이 저장된 프로그램 메모리에 대한 메모리 정보를 저장하는 메모리 선택 레지스터를 포함하는 것을 특징으로 하는 데이터 프로세싱 회로.
  7. 제 6 항에 있어서,
    상기 복수의 연산기들 각각의 상기 연산 유닛은,
    상기 동작 제어 신호가 상기 MIMD 모드 신호일 때 상기 메모리 선택 레지스터에 저장된 상기 메모리 정보에 대응하는 상기 메모리 선택 신호를 출력하는 것을 특징으로 하는 데이터 프로세싱 회로.
  8. 제 1 항에 있어서,
    상기 제어 유닛으로부터 출력되는 상기 메모리 제어 신호는 상기 프로그램 메모리들로부터 읽혀질 명령어가 저장된 어드레스를 포함하는 것을 특징으로 하는 데이터 프로세싱 회로.
KR1020080042497A 2008-05-07 2008-05-07 데이터 프로세싱 회로 KR100960148B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020080042497A KR100960148B1 (ko) 2008-05-07 2008-05-07 데이터 프로세싱 회로
US12/204,857 US7814296B2 (en) 2008-05-07 2008-09-05 Arithmetic units responsive to common control signal to generate signals to selectors for selecting instructions from among respective program memories for SIMD / MIMD processing control

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080042497A KR100960148B1 (ko) 2008-05-07 2008-05-07 데이터 프로세싱 회로

Publications (2)

Publication Number Publication Date
KR20090116511A KR20090116511A (ko) 2009-11-11
KR100960148B1 true KR100960148B1 (ko) 2010-05-27

Family

ID=41267831

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080042497A KR100960148B1 (ko) 2008-05-07 2008-05-07 데이터 프로세싱 회로

Country Status (2)

Country Link
US (1) US7814296B2 (ko)
KR (1) KR100960148B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102593320B1 (ko) * 2016-09-26 2023-10-25 삼성전자주식회사 전자 장치, 프로세서 및 그 제어 방법
US10725789B2 (en) 2017-11-22 2020-07-28 Electronics And Telecommunications Research Institute Data generation device for parallel processing
FR3074931B1 (fr) * 2017-12-13 2020-01-03 Vsora Architectures de processeur

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6272616B1 (en) * 1998-06-17 2001-08-07 Agere Systems Guardian Corp. Method and apparatus for executing multiple instruction streams in a digital processor with multiple data paths
US6446191B1 (en) * 1997-11-07 2002-09-03 Bops, Inc. Methods and apparatus for efficient synchronous MIMD operations with iVLIW PE-to-PE communication
US20070226468A1 (en) 2004-12-03 2007-09-27 On Demand Microelectronics Arrangements for controlling instruction and data flow in a multi-processor environment
WO2008023576A1 (fr) * 2006-08-23 2008-02-28 Nec Corporation Élément de traitement, système de processeur parallèle en mode mixte, procédé pour élément de traitement, procédé pour processeur parallèle en mode mixte, programme pour élément de traitement, et programme pour processeur parallèle en mode mixte

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CH677194A5 (ko) 1988-11-02 1991-04-30 Walter Furrer
US5418915A (en) * 1990-08-08 1995-05-23 Sumitomo Metal Industries, Ltd. Arithmetic unit for SIMD type parallel computer
US7328314B2 (en) * 2002-06-19 2008-02-05 Alcatel-Lucent Canada Inc. Multiprocessor computing device having shared program memory
JP4594666B2 (ja) 2004-07-12 2010-12-08 富士通株式会社 再構成可能な演算装置
EP1812849B8 (en) 2004-11-03 2011-02-16 Silicon Hive B.V. Programmable data processing circuit that supports simd instruction
WO2006049331A1 (ja) * 2004-11-05 2006-05-11 Nec Corporation Simd型並列演算装置、プロセッシング・エレメント、simd型並列演算装置の制御方式
KR20090055765A (ko) * 2007-11-29 2009-06-03 한국전자통신연구원 멀티미디어 데이터 처리를 위한 다중 simd 프로세서 및이를 이용한 연산 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6446191B1 (en) * 1997-11-07 2002-09-03 Bops, Inc. Methods and apparatus for efficient synchronous MIMD operations with iVLIW PE-to-PE communication
US6272616B1 (en) * 1998-06-17 2001-08-07 Agere Systems Guardian Corp. Method and apparatus for executing multiple instruction streams in a digital processor with multiple data paths
US20070226468A1 (en) 2004-12-03 2007-09-27 On Demand Microelectronics Arrangements for controlling instruction and data flow in a multi-processor environment
WO2008023576A1 (fr) * 2006-08-23 2008-02-28 Nec Corporation Élément de traitement, système de processeur parallèle en mode mixte, procédé pour élément de traitement, procédé pour processeur parallèle en mode mixte, programme pour élément de traitement, et programme pour processeur parallèle en mode mixte

Also Published As

Publication number Publication date
US7814296B2 (en) 2010-10-12
KR20090116511A (ko) 2009-11-11
US20090282223A1 (en) 2009-11-12

Similar Documents

Publication Publication Date Title
US9760373B2 (en) Functional unit having tree structure to support vector sorting algorithm and other algorithms
KR101918464B1 (ko) 스위즐드 버추얼 레지스터 기반의 프로세서 및 스위즐 패턴 제공 장치
JP2002333978A (ja) Vliw型プロセッサ
JP2006040254A (ja) リコンフィギュラブル回路および処理装置
JP4485272B2 (ja) 半導体装置
JP7506086B2 (ja) データ処理
KR20100092805A (ko) 재구성 가능한 구조의 프로세서
US8024549B2 (en) Two-dimensional processor array of processing elements
JP6003744B2 (ja) 演算処理装置及び演算処理方法
KR100960148B1 (ko) 데이터 프로세싱 회로
US20030097389A1 (en) Methods and apparatus for performing pixel average operations
EP1612694A1 (en) Processor with a reconfigurable ALU array
CN112074810B (zh) 并行处理设备
US8601236B2 (en) Configurable vector length computer processor
JP2005508554A (ja) データ操作を利用したデータの計算と処理方法、及び、その装置
JP6378515B2 (ja) Vliwプロセッサ
JP2013161484A (ja) 再構成可能コンピューティング装置、その第1メモリ制御器及び第2メモリ制御器、並びにそのデバッギング用のトレースデータを処理する方法
JP2009507292A (ja) 分離したシリアルモジュールを備えるプロセッサアレイ
US6981130B2 (en) Forwarding the results of operations to dependent instructions more quickly via multiplexers working in parallel
JP2004503872A (ja) 共同利用コンピュータシステム
JP2014160393A (ja) マイクロプロセッサ及び演算処理方法
US20060271610A1 (en) Digital signal processor having reconfigurable data paths
KR100896269B1 (ko) SIMD/SISD/Row/Column 동작을 할 수있는 SIMD 병렬 프로세서
JP2555124B2 (ja) 画像処理装置
JP3088956B2 (ja) 演算装置

Legal Events

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

Payment date: 20130424

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140430

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150427

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160427

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180426

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20190425

Year of fee payment: 10