KR100637055B1 - 연산 처리 장치 - Google Patents

연산 처리 장치 Download PDF

Info

Publication number
KR100637055B1
KR100637055B1 KR1020040084417A KR20040084417A KR100637055B1 KR 100637055 B1 KR100637055 B1 KR 100637055B1 KR 1020040084417 A KR1020040084417 A KR 1020040084417A KR 20040084417 A KR20040084417 A KR 20040084417A KR 100637055 B1 KR100637055 B1 KR 100637055B1
Authority
KR
South Korea
Prior art keywords
value
unit
input
sign
output
Prior art date
Application number
KR1020040084417A
Other languages
English (en)
Other versions
KR20050040724A (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 KR20050040724A publication Critical patent/KR20050040724A/ko
Application granted granted Critical
Publication of KR100637055B1 publication Critical patent/KR100637055B1/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
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • 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
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/02Comparing digital values
    • 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
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • 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)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Advance Control (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

수치 연산부에서의 ALU부 및 또는 디코드부에, 제1 입력값의 부호를 반전하는 부호 반전부(101)와, 제2 입력값의 부호를 판정하는 부호 판정부(102)와, 상기 부호 반전부(101)의 판정 결과가 양인 경우, 상기 제1 입력값을 선택하여 출력하고, 음인 경우, 상기 부호 반전 수단으로부터 입력된 값을 선택하여 출력하며, 0인 경우, 0을 출력하는 출력 선택부(103)를 구비하여 구성된다.

Description

연산 처리 장치{PROCESSOR}
도 1은 본 발명을 적용한 연산 처리 장치의 구성을 도시한 블록도,
도 2는 CREVW 연산부(210)의 구성을 도시한 블록도,
도 3은 1명령으로 절대값을 구할 때에 있어서의 실행 흐름을 도시한 도면,
도 4는 0(제로)을 중심으로 하여 대칭인 값을 구할 때에 있어서의 실행 흐름을 도시한 도면,
도 5는 x(임의의 값)를 중심으로 하여 대칭인 값을 구할 때에 있어서의 실행 흐름을 도시한 도면이다.
<도면의 주요부분에 대한 부호의 설명>
101 : 부호 반전부 102 : 부호 판정부
103 : 출력 선택부 200 : 연산 처리 장치
201 : 페치부 202 : 디코드부
203 : ALU부 204 : 승산부
205 : 가감산부 206 : 로드부
207 : 스토어부 208 : 레지스터 파일부
209 : 프로그램 제어부 210 : CREVW 연산부
본 발명은, 연산 처리 장치(프로세서)에 관한 것으로, 특히 디지털 데이터를 고속으로 처리하는 CPU 등에 이용하는 데에 적합한 연산 처리 장치(프로세서)에 관한 것이다.
종래, CPU(central processing unit) 등으로 특수한 연산 용도용의 연산 처리를 고속으로 행하는 기술로서, 일본국 특개평 5-35445호 공보에 개시된 것이 있다.
일본국 특개평 5-35445호 공보에는, 절대값 판정에 기초하여 소정의 연산을 미리 선행적으로 실시해 두고, 이 다수의 연산 중에서 하나의 연산을 선택하여 실행하는 1사이클 명령을 추가함으로써, 연산 시간을 단축하는 기술이 개시되어 있다.
그러나, 일본국 특개평 5-35445호 공보에 기재된 기술은, MPEG(moving picture expert group) 등, 멀티미디어 데이터의 디지털 신호 처리에서 빈번히 사용되는 대칭값(0을 중심으로 하여 대칭인 값, 혹은 임의의 수를 중심으로 하여 대칭인 값 등)이나, 절대값을 고속이면서 짧은 단계로 구할 수 없었다.
그래서, 본 발명의 과제는, 디지털 신호 처리에서 빈번히 사용되는 대칭값이나 절대값을 고속, 및 짧은 단계로 구하는 것이 가능한 연산 처리 장치(프로세서)를 제공하는 데에 있다.
이상의 과제를 해결하기 위해서, 본 발명의 연산 처리 장치는, 페치된 데이터를 디코드하는 디코드부와, 디코드 결과에 기초하여 연산을 행하는 연산부를 구비한 연산 처리 장치에 있어서, 상기 연산부 또는 상기 디코드부의 적어도 한쪽에, 제1 입력값의 부호를 반전하는 부호 반전 수단(예를 들면, 도 2의 부호 반전부(101))과, 제2 입력값의 부호를 판정하는 부호 판정 수단(예를 들면, 도 2의 부호 판정부(102))과, 상기 부호 판정 수단의 판정 결과가 양인 경우, 상기 제1 입력값을 선택하여 출력하고, 음인 경우, 상기 부호 반전 수단으로부터 입력된 값을 선택하여 출력하며, 0인 경우, 0을 출력하는 출력 선택 수단(예를 들면, 도 2의 출력 선택부(103))을 포함하여 구성되는 것을 특징으로 한다.
이와 같은 구성에 의해, 종래, 다수의 연산 처리(단계)가 필요하였던 것을, 1단계, 클럭 1사이클로 처리(연산)하는 것이 가능해진다.
또, 본 발명의 연산 처리 장치는, 상기 제1 입력값과 제2 입력값이 동일한 값이 됨으로써, 상기 출력이 상기 동일한 값의 절대값을 출력하는 것을 특징으로 한다.
이것에 의해, 종래, 절대값을 구하는 데에 5명령이 필요하였던 것이, 1명령으로 실행할 수 있고, 또한, 파이프라인의 혼란을 회피할 수 있어서, 연산 처리 시간을 짧게 할 수 있다.
또, 본 발명의 연산 처리 장치는, 상기 제1 입력값과 제2 입력값이 동일한 값이 되고, 이들의 입력값에 대한 상기 출력 선택 수단으로부터의 출력값과 소정의 값을 가산하고, 또한, 그 가산 결과가 상기 제1 입력값으로서 입력되고, 또한, 상 기 동일한 값이 상기 제2 입력값으로서 입력됨으로써, 0을 기준으로 하는 제1 입력값 및 제2 입력값의 절대값 가산 결과를 출력하는 것을 특징으로 한다.
이것에 의해, 디지털 신호 처리에서 자주 나타나는 처리(0을 중심으로 하여 대칭인 값을 구하는 처리)를, 짧은 어셈블러 코드로 실현할 수 있고, 조건 분기에 의한 파이프라인의 혼란을 방지할 수 있어, 연산 처리 시간을 대폭으로 짧게 하는 것이 가능해진다. 또, 프로그램 단계수가 적어지는 것 등에 의해, 화상 처리나 오디오 처리 등이 빨라져서, 동작 클럭을 느리게 하는 것이 가능해지고, 소비 전력을 작게 억제할 수 있다.
또, 본 발명의 연산 처리 장치는, 상기 출력 선택 수단으로부터의 출력값과 상기 제2 입력값을 가산하여 제2 입력값을 기준으로 하는 제1 입력값 및 제2 입력값의 절대값 가산 결과를 출력하는 가산 수단을 또한 포함하는 것을 특징으로 한다.
이것에 의해, 디지털 신호 처리에서 자주 나타나는 처리(임의의 값을 중심으로 하여 대칭인 값을 구하는 처리)를, 짧은 어셈블러 코드로 실현할 수 있고, 조건 분기에 의한 파이프라인의 혼란을 방지할 수 있어, 연산 처리 시간을 대폭으로 짧게 하는 것이 가능해진다. 또, 프로그램 단계 수가 적어지는 것 등에 의해, 연산 처리가 빨라져서, 동작 클럭을 느리게 하는 것이 가능해지기 때문에, 소비 전력을 작게 억제하는 것이 가능해진다.
이하, 도면을 참조하여 본 발명에 관한 연산 처리 장치의 실시 형태에 대해 서 설명한다.
(발명의 실시 형태)
우선, 구성을 설명한다.
도 1은, 본 발명을 적용한 연산 처리 장치(프로세서)의 구성을 도시한 블록도이다.
도 1에서, 연산 처리 장치(200)는, 페치부(201)와, 디코드부(202)와, ALU(Arithmetic and Logical Unit)부(203)와, 승산부(204)와, 가감산부(205)와, 로드부(206)와, 스토어부(207)와, 레지스터 파일부(208)와, 프로그램 제어부(209)로 구성된다.
페치부(201)는, 도시하지 않은 메모리로부터 명령 코드를 페치한다. 그리고, 페치부(201)는, 페치한 명령 코드를 일시적으로 기억한 후, 디코드부(202)에 출력한다.
디코드부(202)는, 페치부(201)로부터 입력된 명령 코드를 디코드하여, 디코드 결과를, ALU부(203), 승산부(204), 가감산부(205), 로드부(206) 및 스토어부(207)에 출력한다. 또, 디코드부(202)는, 동일하게, 디코드 결과를 프로그램 제어부(209)에 출력한다.
ALU부(203)는, 디코드부(202)로부터 입력된 디코드 결과가 논리 연산인 경우에, 디코드 결과에 기초하여, 레지스터 파일부(208)로부터 연산하는 데이터를 독출한다. 그리고, ALU부(203)는, 독출한 데이터의 논리 연산을 실행하여, 연산 결과를 레지스터 파일부(208)에 출력한다. 또, ALU부(203)에는, CREVW 연산부(210)(후 술)가 설치되어 있고, 디코드부(202)로부터 입력된 디코드 결과가 CREVW 명령이었던 경우, CREVW 연산부(210)에서 소정의 연산 처리가 실행되어, 연산 결과를 레지스터 파일부(208)에 출력한다.
승산부(204)는, 디코드부(202)로부터 입력된 디코드 결과가 승산인 경우에, 디코드 결과에 기초하여, 레지스터 파일부(208)로부터 승산하는 데이터를 독출한다. 그리고, 승산부(204)는, 독출한 데이터의 승산을 실행하여, 승산 결과를 레지스터 파일부(208)에 출력한다.
가감산부(205)는, 디코드부(202)로부터 입력된 디코드 결과가 가산 혹은 감산인 경우에, 디코드 결과에 기초하여, 레지스터 파일부(208)로부터 가산 혹은 감산하는 데이터를 독출한다. 그리고, 가감산부(205)는, 독출한 데이터의 가산 혹은 감산을 실행하여, 가감산 결과를 레지스터 파일부(208)에 출력한다.
로드부(206)는, 디코드부(202)로부터 입력된 디코드 결과가 로드 명령인 경우에, 디코드 결과에 기초하여, 로드 명령의 대상이 되는 어드레스를 메모리에 출력한다. 그리고, 로드부(206)는, 그 어드레스의 데이터가 메모리로부터 입력되면, 입력된 데이터를 레지스터 파일부(208)에 출력한다.
스토어부(207)는, 디코드부(202)로부터 입력된 디코드 결과가 스토어 명령인 경우에, 디코드 결과에 기초하여, 스토어 명령의 대상이 되는 데이터를 레지스터 파일부(208)로부터 독출한다. 그리고, 스토어부(207)는, 스토어 명령의 대상이 되는 어드레스 및 레지스터 파일부(208)로부터 독출한 데이터를 메모리에 출력한다.
레지스터 파일부(208)는, 소정 수의 스칼라 레지스터 및 벡터 레지스터를 구 비하고, ALU부(203), 승산부(204), 가감산부(205), 로드부(206) 및 스토어부(207)의 연산 대상이 되는 데이터를 기억한다. 또, 레지스터 파일부(208)에는, 프로그램 제어부(209)로부터, 데이터의 독출 혹은 기입을 행하기 위한 제어 신호가 입력된다.
다음에, 본 발명의 주요부인 CREVW 연산부(210)에 대해서 설명한다.
도 2는, CREVW 연산부(210)의 구성을 도시한 블록도이다.
도 2에서, CREVW 연산부(210)는, 부호 반전부(101)와, 부호 판정부(102)와, 출력 선택부(103)에 의해 구성된다.
로드부(206)로부터 공급된 로드 데이터(src1)는, 부호 반전부(101) 및 출력 선택부(103)의 입력단(a)에 공급되고, 부호 반전부(101)에 의해 부호 반전된 로드 데이터(src1)는, 출력 선택부(103)의 입력단(b)에 공급된다.
한편, 로드부(206)로부터 공급된 로드 데이터(src2)는, 부호 판정부(102)에 공급되고, 부호 판정이 이루어진 후, 이 부호 판정 결과가, 출력 선택부(103)에 공급된다.
출력 선택부(103)는, 입력된 부호 판정 결과가 양인 경우에는, 입력단(a)으로부터 공급된 로드 데이터(src1)를 선택하여 출력단(c)으로부터 출력하고, 입력된 부호 판정 결과가 음인 경우에는, 입력단(b)으로부터 공급된 데이터(부호 반전된 값)를 선택하여, 출력단(c)으로부터 출력한다. 또, 입력된 부호 판정 결과가 0인 경우, 출력단(c)으로부터 0을 출력한다. 또한, 이 출력 선택부(103)는, CREVW 연산부 전체에서 1사이클로 연산이 실행된다는 특징을 갖는다.
다음에, 본 발명의 주요부인 이 CREVW 연산부(210)를 이용하여, 어떻게 연산이 고속화되는지에 대해서, 이하에 3개의 예를 들어서 설명한다. 또한, CREVW 연산부(210)는, 종래의 어셈블러 코드에 이하의 어셈블러 코드를 부가함으로써, 종래의 어셈블러 코드와 동일하게 사용 가능한 것이다. 또, CREVW 연산부(210)는, ALU부(203) 내에 설치되는 것으로서 설명하였지만, 디코드부(202) 내에 설치하도록 해도 좋다.
<추가한 어셈블러 코드>
CREVW %dst, %src1, %src2
설명 : 이 어셈블러 코드는, 소스 레지스터[src2]가 양인 경우, 소스 레지스터[src1]의 내용을 데스티네이션 레지스터[dst]에 격납하고, 음인 경우에는 소스 레지스터[src1]의 부호를 반전하여, 결과를 데스티네이션 레지스터[dst]에 격납한다. 소스 레지스터[src2]가 0인 경우에는, 데스티네이션 레지스터[dst]에 0을 격납한다.
(1명령으로 절대값을 구하는 경우)
우선, 1명령으로 절대값을 구하는 경우에 대해서 설명한다.
어셈블러 코드, CREVW를 이용하면, 절대값 계산이
CREVW %y, %x, %x
의 1명령으로 실행할 수 있다.
도 3은, 1명령으로 절대값을 구할 때에 있어서의 실행 흐름을 도시한 도면이다.
입력(src1, src2)에, x(동일 값)를 지정하면, 출력(dst)은, |x|가 된다.
이것을 종래의 어셈블러 코드로 기술하면, 이하와 같이 된다.
ADDI %y, %x, #0
BGEZ %x, LABEL
NOP
SUBI %y, #0, %x
LABEL ;
이상과 같이, 본 발명에서는, 종래, 절대값을 구하는 데에 5명령이 필요하였던 것이, 1명령으로 실행할 수 있다.
또, 종래의 어셈블러 코드로 기술하면, "BGEZ” 명령과 같이, 어셈블러 코드 중에 조건 분기가 포함되게 되지만, 이것에 의해, 프로그램 카운터의 퇴피, 복귀가 발생하여, 파이프라인의 혼란이 발생하기 때문에, 프로그램 단계 이상의 타임 로스가 발생해 버리지만, 본 발명에서는 이것을 회피할 수 있어, 처리 시간을 짧게 할 수 있다.
(0을 중심으로 하여 대칭인 값을 구하는 경우)
다음에, 0을 중심으로 하여 대칭인 값을 구하는 경우, 즉, y = ±(|x|+ m)을 구하는 경우에 대해서 설명한다.
이것은, DCT나 버터플라이 연산 등에서 자주 사용되는, 절대값에 대한 가감산으로, 양의 값이면 더욱 큰, 음의 값이면 더욱 작은 값을 구하기 위한 연산(x가 양일 때 정수(m)를 가산하고, 음일 때 정수(m)를 감산한다)을 고속화하는 것이다.
도 4는, 0을 중심으로 하여 대칭인 값을 구할 때에 있어서의 실행 흐름을 도시한 도면이다.
이 경우의 어셈블러 코드는,
LW %x (1)
CREVW %y, %x, %x (2)
ADDI %y, %y, #m (3)
CREVW %y, %y, %x (4)
가 된다.
이것은, (1)에서 메모리로부터 x의 값을 로드하고, (2)에서 x의 절대값을 구하고, (3)에서 x의 절대값에 m을 가산하며, (4)에서 x의 절대값에 m을 가산한 값의 부호를 결정하는(x가 양일 때에는 플러스를, x가 음일 때에는 마이너스) 것이다.
이상에 의해, 디지털 신호 처리에서 자주 나타나는 처리를, 짧은 어셈블러 코드로 실현할 수 있고, 조건 분기에 의한 파이프라인의 혼란을 방지할 수 있으며, 연산 처리 시간을 대폭으로 짧게 하는 것이 가능해진다. 또, 프로그램 단계 수가 적어지는 것 등에 의해, 화상 처리나 오디오 처리 등이 빨라져서, 동작 클럭을 느리게 하는 것이 가능해지고, 소비 전력을 작게 억제할 수 있다.
(x를 중심으로 하여 대칭인 값을 구하는 경우)
다음에, x를 중심으로 하여 대칭인 값을 구하는 경우, 즉, x가 양, 0, 음인 경우에 따라서, y=x+m, y=x, y=x-m을 구하는 경우에 대해서 설명한다.
이것도, DCT나 버터플라이 연산 등에서 자주 사용되는, 절대값에 대한 가감 산으로, x가 양의 값이면 더욱 큰, 음의 값이면 더욱 작은 값을 구하기 위한 연산(x가 양일 때 정수(m)를 가산하고, 0일 때에 아무것도 하지 않으며, 음일 때 정수(m)를 감산한다)을 고속화하기 위한 것이다.
도 5는, x를 중심으로 하여 대칭인 값을 구할 때에 있어서의 실행 흐름을 도시한 도면이다.
이 경우의 어셈블러 코드는,
LW %x (5)
LI %a, #m (6)
CREVW %y, %a, %x (7)
ADD %y, %y, %x (8)
가 된다.
이것은, (5)에서 메모리로부터 x의 값을 로드하고, (6)에서 정수(m)를 어드레스(a)에 격납하고, (7)에서 a의 부호를 결정하며(x가 양일 때에는 플러스를, x가 0일 때에는 0을, x가 음일 때에는 마이너스), (8)에서 x와 m을 가산하는(x가 양일 때에는 x+m, x가 음일 때에는 x-m, x가 0일 때에는 아무것도 하지 않는다) 것이다.
이상에 의해, 디지털 신호 처리에서 자주 나타나는 처리를, 짧은 어셈블러 코드로 실현할 수 있고, 조건 분기에 의한 파이프라인의 혼란을 방지할 수 있으며, 연산 처리 시간을 대폭으로 짧게 하는 것이 가능해진다. 또, 프로그램 단계 수가 적어지는 것 등에 의해, 화상 처리나 오디오 처리 등이 빨라져서, 동작 클럭을 느리게 하는 것이 가능해지고, 소비 전력을 작게 억제할 수 있다.
이상 서술한 바와 같이, 본 발명에 의하면, MPEG 등의 멀티미디어 데이터의 디지털 신호 처리에서 빈번히 사용되는 대칭값(0을 중심으로 하여 대칭인 값, 혹은 임의의 수를 중심으로 하여 대칭인 값 등)이나, 절대값을, 고속 및 짧은 프로그램 단계로 구할 수 있기 때문에, 휴대단말이나 전자 카메라 등의 정보 처리 기기를 고속 및 저전력으로 구동시킬 수 있다.

Claims (4)

  1. 페치된 데이터를 디코드하는 디코드부와, 디코드 결과에 기초하여 연산을 행하는 연산부를 구비한 연산 처리 장치에 있어서,
    상기 연산부 또는 상기 디코드부의 적어도 한쪽에,
    제1 입력값의 부호를 반전하는 부호 반전 수단과,
    제2 입력값의 부호를 판정하는 부호 판정 수단과,
    상기 부호 판정 수단의 판정 결과가 양인 경우, 상기 제1 입력값을 선택하여 출력하고, 음인 경우, 상기 부호 반전 수단으로부터 입력된 값을 선택하여 출력하며, 0인 경우, 0을 출력하는 출력 선택 수단을 포함하는 것을 특징으로 하는 연산 처리 장치.
  2. 제1항에 있어서, 상기 제1 입력값과 제2 입력값이 동일한 값이 됨으로써, 상기 출력이 상기 동일한 값의 절대값을 출력하는 것을 특징으로 하는 연산 처리 장치.
  3. 제1항에 있어서, 상기 제1 입력값과 제2 입력값이 동일한 값이 되고, 이들의 입력값에 대한 상기 출력 선택 수단으로부터의 출력값과 소정의 값을 가산하는 가산 수단과, 또한, 그 가산 결과가 다른 부호 반전 수단의 제1 입력값으로서 입력되고, 또한, 상기 동일한 값이 상기 다른 부호 판정 수단의 제2 입력값으로서 입력됨으로써, 0을 기준으로 하여 상기 동일한 값의 절대값과 상기 소정의 값의 가산 결과만큼 대칭인 값을 출력하는 다른 출력 선택 수단을 또한 구비하는 것을 특징으로 하는 연산 처리 장치.
  4. 제1항에 있어서, 상기 출력 선택 수단으로부터의 출력값과 상기 제2 입력값을 가산하여, 상기 제2 입력값 또는 상기 제2 입력값을 기준으로 하여 제1 입력값만큼 대칭인 값을 출력하는 가산 수단을 또한 포함하는 것을 특징으로 하는 연산 처리 장치.
KR1020040084417A 2003-10-29 2004-10-21 연산 처리 장치 KR100637055B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003369073A JP2005135090A (ja) 2003-10-29 2003-10-29 演算処理装置
JPJP-P-2003-00369073 2003-10-29

Publications (2)

Publication Number Publication Date
KR20050040724A KR20050040724A (ko) 2005-05-03
KR100637055B1 true KR100637055B1 (ko) 2006-10-20

Family

ID=34420168

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040084417A KR100637055B1 (ko) 2003-10-29 2004-10-21 연산 처리 장치

Country Status (5)

Country Link
US (1) US7430573B2 (ko)
EP (1) EP1528462A3 (ko)
JP (1) JP2005135090A (ko)
KR (1) KR100637055B1 (ko)
CN (1) CN100340973C (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10310925B2 (en) 2016-03-02 2019-06-04 Western Digital Technologies, Inc. Method of preventing metadata corruption by using a namespace and a method of verifying changes to the namespace
CN106775593B (zh) * 2016-12-30 2019-12-31 智车优行科技(北京)有限公司 去除循环处理流程中条件判断语句的方法和装置、应用单元
US11907713B2 (en) * 2019-12-28 2024-02-20 Intel Corporation Apparatuses, methods, and systems for fused operations using sign modification in a processing element of a configurable spatial accelerator
KR102368074B1 (ko) * 2021-05-26 2022-02-25 오픈엣지테크놀로지 주식회사 인티져 타입 데이터의 해상도를 증가시키는 연산방법 및 이를 적용한 장치

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01204138A (ja) * 1988-02-09 1989-08-16 Nec Corp 演算回路
JP3304971B2 (ja) * 1990-07-23 2002-07-22 沖電気工業株式会社 絶対値演算回路
JPH056263A (ja) 1991-06-27 1993-01-14 Nec Corp 加算器およびその加算器を用いた絶対値演算回路
JP3154150B2 (ja) 1991-07-26 2001-04-09 ソニー株式会社 演算装置
JPH1091397A (ja) * 1996-09-12 1998-04-10 Toshiba Corp 演算回路
JP3735425B2 (ja) * 1996-11-29 2006-01-18 株式会社東芝 絶対値比較回路
US6073150A (en) * 1997-06-23 2000-06-06 Sun Microsystems, Inc. Apparatus for directing a parallel processing computing device to form an absolute value of a signed value
US5954786A (en) * 1997-06-23 1999-09-21 Sun Microsystems, Inc. Method for directing a parallel processing computing device to form an absolute valve of a signed valve
JP3672076B2 (ja) 1999-09-22 2005-07-13 松下電器産業株式会社 演算器および演算方法およびプロセッサ

Also Published As

Publication number Publication date
US7430573B2 (en) 2008-09-30
JP2005135090A (ja) 2005-05-26
KR20050040724A (ko) 2005-05-03
EP1528462A2 (en) 2005-05-04
CN100340973C (zh) 2007-10-03
CN1612102A (zh) 2005-05-04
US20050097155A1 (en) 2005-05-05
EP1528462A3 (en) 2006-06-28

Similar Documents

Publication Publication Date Title
US7555514B2 (en) Packed add-subtract operation in a microprocessor
KR102447636B1 (ko) 부동 소수점 수를 누산하기 위한 산술 연산을 수행하는 장치 및 방법
US7945607B2 (en) Data processing apparatus and method for converting a number between fixed-point and floating-point representations
US5241492A (en) Apparatus for performing multiply and accumulate instructions with reduced power and a method therefor
US5128890A (en) Apparatus for performing multiplications with reduced power and a method therefor
JP3599409B2 (ja) 分岐予測装置
US5880979A (en) System for providing the absolute difference of unsigned values
JPH03218523A (ja) データプロセッサ
US9678716B2 (en) Apparatus and method for performing absolute difference operation
MXPA03011899A (es) Un metodo, aparato, e instrucciones para efectuar una operacion de signo que multiplica.
US20030037085A1 (en) Field processing unit
US6889242B1 (en) Rounding operations in computer processor
KR100637055B1 (ko) 연산 처리 장치
CN110688153B (zh) 一种指令分支执行控制方法及相关设备、指令结构
US20060218380A1 (en) Add-shift-round instruction with dual-use source operand for DSP
JPH1091395A (ja) プロセッサ
JP2008299729A (ja) プロセッサ
JP3886870B2 (ja) データ処理装置
US6996702B2 (en) Processing unit with cross-coupled ALUs/accumulators and input data feedback structure including constant generator and bypass to reduce memory contention
US20060218381A1 (en) Rounding correction for add-shift-round instruction with dual-use source operand for DSP
JP7141401B2 (ja) プロセッサおよび情報処理システム
JP2001043067A (ja) 演算装置
JP2851192B2 (ja) 並列演算処理装置におけるキャリー付き加減算処理方式
JP2005229182A (ja) 画像処理方法およびベクトルプロセッサ
JP2006171827A (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: 20120924

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130924

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140923

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150917

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee