KR910004308B1 - 조합 프로세서 - Google Patents

조합 프로세서 Download PDF

Info

Publication number
KR910004308B1
KR910004308B1 KR1019830003623A KR830003623A KR910004308B1 KR 910004308 B1 KR910004308 B1 KR 910004308B1 KR 1019830003623 A KR1019830003623 A KR 1019830003623A KR 830003623 A KR830003623 A KR 830003623A KR 910004308 B1 KR910004308 B1 KR 910004308B1
Authority
KR
South Korea
Prior art keywords
cell
multiplier
multiplication
combination
bit
Prior art date
Application number
KR1019830003623A
Other languages
English (en)
Other versions
KR840006089A (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 KR840006089A publication Critical patent/KR840006089A/ko
Application granted granted Critical
Publication of KR910004308B1 publication Critical patent/KR910004308B1/ko

Links

Images

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
    • 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/52Multiplying; Dividing
    • 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/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/527Multiplying only in serial-parallel fashion, i.e. one operand being entered serially and the other in parallel
    • G06F7/5272Multiplying only in serial-parallel fashion, i.e. one operand being entered serially and the other in parallel with row wise addition of partial products
    • G06F7/5275Multiplying only in serial-parallel fashion, i.e. one operand being entered serially and the other in parallel with row wise addition of partial products using carry save adders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/3808Details concerning the type of numbers or the way they are handled
    • G06F2207/3812Devices capable of handling different types of numbers
    • G06F2207/3816Accepting numbers of variable word length
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/48Indexing scheme relating to groups G06F7/48 - G06F7/575
    • G06F2207/4802Special implementations
    • G06F2207/4804Associative memory or processor

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)
  • Image Processing (AREA)

Abstract

내용 없음.

Description

조합 프로세서
제 1 도는 외부제어를 도시하는 조합 프로세서의 간략화된 블록도.
제 2 도는 수직 및 수평마스크와 함께 20셀×4셀의 조합 어레이를 도시한다.
제 3 도는 간략화한 셀의 논리도.
제 4 도는 직-병렬 승산 배열의 논리도.
제 5 도는 1개의 열의 10개의 셀을 도시한다.
제 6 도는 직-병렬 승산의 데이터흐름을 도시한다.
제 7 도는 길이를 마음대로 할 수 있는 조합 셀의 승산배열에 대한 블록도.
제 8 도는 부가적인 연산능력을 갖는 제 7 도의 변형도.
제 9 도는 조합 셀의 동작을 추가로 도시하는 블록도.
제 10 도는 발명에 따른 승산을 실행하는 조합 셀의 열을 도시한다.
제 11 도는 조합 셀에 소재하는 논리연산유니트의 동작을 도시하는 블록도 및 논리도.
본 발명은 조합처리에 관한 것이며 특히 마스크 제어 아래 가변성 길이를 갖고 빠른 승산을 할 수 있는 조합처리 어레이구조에 관한 것이다.
본 발명의 조합 어레이는 회로의 수와 연결핀의 수를 줄여서 단일회로를 성취하는데 있어서, LSI(대규모 집적회로) 또는 VLSI(초대규모 집적회로)에 특히 유익하게 사용되었다.
마스크 제어 아래 가변성 길이를 전술한 빠른 승산을 할 수 있는 조합 프로세서는 조합처리 컴퓨터 뿐만 아니라 빠른 계산능력을 요구하는 일반 시스템에 사용된다. 이러한 일반시스템은 예를들어 엔지니어링 작업국, 데이터 버스 경영시스템, 위상분석, 그래픽 디스플레이, 언어식별, 이미지 인한스멘트, 위상어레이와 같은 레이다 응용기, 에코우(echo) 및 웨이크(wake)의 분석과 추적, 텍스트(text) 경영시스템과 전기통신, 그리고 디지털 필터를 응용하는 것들이다.
조합 프로세서는 단일통로 프로세서의 어레이로 간주될 수 있고 여기서 단일 셀은 단지 자신의 인접 셀들을 억세스한다. 조합 프로세서는 상호 병렬 데이터 유출에 의해 억세스되고, 취지(content)와 데이터 구조에 의해 어드레스된 그것의 메모리는 태그(tag)에 기초를 둔다.
종래의 프로세서가 순차적으로 1개 데이터에 영향을 미치는 반면에, 조합 프로세서는 여러 데이터에 동일하게 영향을 미친다. 이렇게 사용하기 위해서, 데이터는 각각의 명령에 대해 동일한 형태이어야 하며 이러한 데이터에 대해 유사하게 동작하는 것은 동일한 순차 명령을 인가하는 것을 의미한다. 프로세서의 이런 분류는 SIMD(Single Instruction Multiple Data Processor)로서 공지된다.
조합 프로세서는 LSI에서, 실행되는 단일 비트 컴퓨터의 4각형 어레이로 되어있고, 그 용량은 2K부터 64K 메모리 비트이다. 이런 컴퓨터들은 동일한 명령을 따라 자신의 데이터에 대해 작동한다. 셀들은 그들의 인접 셀과 함께 외부 데이터 입력 및 출력 레지스터에 간접적으로 내부통신이 가능하다.
조합 프로세서 어레이의 1열에 있어서 셀들은 마음대로 정해지는 길이의 범위(어레이 폭으로 제한)로 즉 역학적으로 (1개 명령에서 다음 명령까지)배치된다. 각 범위는 그것이 마치 주어진 워어드 길이를 갖는 분리 컴퓨터인 것처럼 독립적으로 작동해서, 산술 및 논리동작을 실행한다. 이러한 범위들은 똑같이 동일한 명령에 따르거나, 프로그램 제어 아래 선택적으로 디스에이블된다.
길이를 마음대로 정할 수 있는 컴퓨터의 세트가 인에이블 되었을 때, 다른 데이터 항목상에서 동일한 산술 및 논리에 동일하게 따르는 것은 컴퓨터 세트의 순수 효과이다. 이 컴퓨터 세트는 매트릭스연산, 대수, 백터계산, 영상처리, 서어칭(searching), 및 패턴 식별문제들, 언어식별에서 요구되는 문제점에 적용된다. 이 프로세서 세트의 처리량은 어레이의 크기와, 특별한 동작을 하도록 인에이블되는 어레이 크기와 범위의 길이와 개수에 무관하다. 예를들어, 10MHz클록을 사용하고 2048의 8비트상에서 똑같이 동작하는 128×128셀의 처리량은 1초당 40억의 가산 및 논리 동작과 그리고 1초당 10억의 승산을 처리하는 것으로 평가된다.
가끔 컨텐트 어드레스어블 메모리(Content Addressable Memories)로 언급되는 조합 메모리는 일반적으로 공지되어 있고 조합 프로세서에서 함수로 조직되고, 여기서 산술동작이 메모리에 동일하게 저장된 1개 또는 그 이상의 디지털 워어드에 따라 실행된다. 이런 조합 프로세서에 대해서는 미합중국 특허 출원번호 4,068,305에 서술되어 있다. 미합중국 특허 출원번호 4,296,475에 설명된 바와 같이, 이런 컨텐트 어드레스어블 메모리는 워드-조직으로 되어있어, 메모리를 사용하는데 필요한 연결핀들의 개수를 감소시키는 효과가 있다. 명령 워어드 및 이미 표시된 플래그들(예를들어 상태 플립-플롭에 발생된 것)의 비트들을 조합하는 것은, 즉 데이터 프로세서가 1개 또는 그 이상의 조합 비트들을 겹치게 하기 위해서 명령 워어드에 마스킹 비트를 제공해서 적당히 명령을 실행하는 것으로 알려져 있다. 전술한 것은 미합중국 특허 출원번호 4,010,452에 기재되어 있다. 미합중국 특허 출원번호 4,044,338에는 조합된 존(zone)을 분리해서 구비하는 조합 메모리가 기재되어 있다. 조합 어드레스를 구비하는 각 회로 소자에 소재하는 데이터 버스에 선택 결합할 수 있는 회로 소자들에 대한 것이 미합중국 특허 출원번호 4,188,670에 기재되어 있다. 미합중국 특허 출원번호 4,159,538에는 입력데이터, 출력데이터 및 마스크 정보를 분리하는 팩키지 핀의 개수가 감소된 LSI 조합 메모리가 기재되어 있다. 미합중국 특허 출원번호 4,153,943에는 직렬로 억세스되는 조합 메모리에 대한 것이 기재되어 있다.
조합 처리 셀의 어레이에서 서술된 조합 프로세서는 마스크 제어 아래 길이를 가변할 수 있는 빠른 승산을 얻도록 2의 보수로 배치된다. 도시된 승산 배열이 겸용할 수 있는 모든 셀의 처리순서를 설명하는데 즉 셀의 위치가 어레이 열의 가장자리이거나 중간이든지 요구된 계산순서는 관계없이 실행된다. 조합 셀은 즉 인에이블될 때 분리된 자리올림 및 빌림 비축통로와 동일하게 또는 교체가 가능하게 작동하는 개선된 산술논리유니트를 구비하는 구조를 구성한다.
제 1 도를 참조하면, 수평 마스크 레지스터(102) 및 수직 마스크 레지스터(104)와 함께 조합 어레이회로(array)(100)를 구비하는 간략화된 블록도가 도시되어 있다. 마스크 레지스터(102) 및 (104)는 선택적으로 어레이회로(100)의 일부분들을 인에리블하거나 디스에이블하고, 그것에 의해서 어레이 제어회로(106)의 특수명령에 따라 작용하는 어레이회로(100)의 영역을 효과적으로 찾는다. 공지된 어레이 제어회로(106)는 마이크로 프로그램이 내장된 제어회로를 구비할 수도 있는데 제어회로는 프로그램들을 저장하고 그리고 마스크 명령선(108)을 통해 마스크(102) 및 (104)에 결합되고 어레이 명령선(110)을 통해 어레이회로(100)에 결합된 연속 어레이동작으로서 프로그램들을 해석할 수 있는 프로그램머블 메모리를 내장한다. 종래의 어레이회로에 있어서는 (108)과 같은 선들과 (110)과 같은 선들(40)이 존재할 수 있었다. 선(108)상의 명령은 마스크(102) 및 (104)에 대해 마이크로프로그램 제어를 실행하고 어드레스 레지스터(112)에 결합한다. 이 어드레스는 어레이 단위 셀(cell)에 공급되는 메모리에 대한 어드레스이며, 이것은 제 3 도의 (212)에서 서술된다. 선(110)상의 명령은 어레이회로(100)에 대해 마이크로프로그램 제어를 실행한다. 선(108) 및 (110)의 조합 효과는 어레이 및 마스크들이 특성을 갖는 기록들의 열을 찾도록 하고, 그리고 어떤 인자에 의해 그 기록의 일부분을 승산하도록 한다.
조합 프로세서의 섭세트(subset)로 생각될 수도 있는 조합 어레이에 대해서는, 제 2 도에 도시했다. 설명하자면, 어레이는 4(셀)×20(셀)의 매트릭스(202)를 구비하고 셀중의 하나를 (204)에 표시했다. 조합 어레이는 4 비트의 수평 마스크 레지스터(206)와, 20비트의 수직 마스크 레지스터(208) 그리고 20비트의 수직 IN/OUT 레지스터(210)를 구비한다.
제 3 도를 참조하면, 셀(204)과 같은 1개의 조합 셀이 배열에 있어서, 현존하는 조합 프로세서의 특징과 일치해서 도시되어 있다. 셀(204)은 어레이(202)에 존재하는 다른 모든 셀과 동일하고, 조합된 제어논리회로와 함께 A플립플롭(210) 1개와 (212)에 집속되어 도시된 M 플립플롭 8개를 구비한다. 8개의 M 플립플롭은 랜덤하게 읽어낼 수도 있는 메모리로 대치되고 플립플롭(212)은 메모리 데이터 레지스터 비트로서 작동한다. 8이란 숫자는 단지 실시예이며 8,000 또는 64,000과 같은 숫자일 수도 있다. 연산장치(ALU)(214)는 종래의 형태일 수도 있고, 공지된 바와 같이 산술동작을 제공하도록 사용된다. 또한 공지된 바와 같이 데이터 처리에 있어서, ALU(214)가 가산기로써 사용될 때, ALU는 합(sum)에 대한 출력을 도선(216)으로 자리올림(carry)에 대한 출력은 도선(218)으로 출력한다.
ALU(214)가 가산을 행할 때, 도선(216)상의 합 비트는 선택스위치(222)와 입력게이트(220)를 거쳐 A플립플롭(210)에 궤환한다. 가산을 실행할 때의 자리올림 비트는 셀렉터스위치(228)의 게이트(226)을 통해 "슬로우 아웃"(slow-out)선(224)에 결합된다. 패스트-인(fast-in)선(230)은 선택게이트(232)가 데이터 레지스터(210)로부터 셀의 일부분인 ALU(214)에 작동량을 공급하는 것을 허락하도록 선택게이트(232)에 연결되어 있다. 패스트-아웃(fast-out)선은 ALU를 거쳐 제 2 도의 I/O레지스터(210)에 연결되어 있다. 슬로우 아웃선은 다음 셀에 대해 자리올림 비트이거나 시프트 비트이다. 이웃에 존재하는 셀의 데이터, 즉 자리올림 입력 또는 시프트된 데이터가 선(234)에 결합된다. 수직(206) 및 수평(208)마스크 레지스터는 각기 셀(204)과 유사한 조합 셀들을 구비하여, 제 3 도상의 연결부분(205), (207)에 결합된다.
제 4, 5 도 및 6 도는 제 4 도에 도시한 (300), (302) 및 (304)와 피승수를 운반하는 플립플롭들(306), (308) 및 (310)과 같이 여러개의 동일한 유니트들을 구비하는 직-병렬 승산의 동작을 도시한다. 승수값은 적시에 패스트-인(312)에 인가된다. 제 4 도는 제 5 도에 도시된 바와 같이 10개의 유니트들을 필요로하는 5비트 승산의 일부분을 도시하고 있다.
승산기(302)의 동작은 다음과 같다 : 승수값은 패스트-인 선(312)에 인가되어 피승수의 비트와 함께 게이트(314)에서 AND화 되어서 가산기 (316)에 1개 입력으로 사용된다. 선(318)상의 가산기 제 2 입력은 전단(Previous unit)의 슬로우-아웃에서 입력되는데 전단의 슬로우-아웃은 셀(300)에서 전단의 비트와 선(312)상의 승수값과의 승산결과를 운반한다. 가산기 제 3의 입력은 전단의 승산 결과로 플립플롭(320)에 저장된 자리올림 비트를 구비한다. 현 승산단계에서 실행된 가산의 합과 자리올림 결과가 플립플롭(322), (320)에 각기 저장된다. 셀(300), (304)들은 셀(302)의 동작과 동일하다. 제 5 도를 참조해서, 5개의 피승수비트×5개의 승수 비트의 곱셈을 실예로들어 직-병렬 승산동작이 설명된다. 결과는 10비트가 된다. 제 5 도에 도시된 승수유니트는 전술한 승산을 실행한다.
일렬로 10개의 승수유니트가 도시되어 있지만, 5×5의 승산을 이행하기 위해서는 제 5 도의 일렬로된 유니트(1)-(5)와 같이 단지 5개의 유니트만 요구된다는 것을 알 수 있다. 유니트(6)-(10)는 시프트 레지스터로 대치된다.
제 5 도의 각 유니트들은 합 비트(S)와 승산의 각 단계가 실행되었을 때, 각 유니트들은 자신의 합 비트를 지체없이 전달한다. 제 4 도를 참조해서 설명하면, 각 유니트에 있어서, 전달된 합 비트가 현존하는 자리 비트와 결합되어 그 결과로 피승수 비트를 남기고 입력되어 들어온 승수 비트가 새로운 합 비트와 자리올림비트를 끌어낸다.
2진 가산을 하므로 2개의 열을 구비하는데, 1개 열은 합 비트를 포함하고 또다른 열은 자리올림 비트를 포함한다. 계산은 2진수로 실행되고 그리고 마지막 자리올림의 흡수는 마지막 형태가 단일 1열 합 비트로 구성될 때까지 필요한 시간만큼 지연된다. 이 승산기술은 모든 자리올림들이 마지막으로 흡수되는 승산의 마지막까지 2개 열로 표시되는 2진 가산에 유리하다.
다음의 5×5 승산의 실시예는 제 6 도를 참조해서 설명한다.
피승수 = 11011
승 수 = 01110
이들의 곱은 0101111010이 될 것이다.
제 6 도에 있어서, 승산유니트의 열이 도시되어 있듯이 수직 방향의 행(column)도 10개의 승산유니트단을 갖는다. 즉 5개의 승산유니트(1)내지 (5)와 5개의 시프트 레지스터단(6)-(10)을 갖는다. 도면이 각 유니트와 단에 의해 가산이 어떻게 실행되는가를 나타내고 있듯이, 5×5 승산을 하기 위해서 유니트(6) 내지 (10)은 불필요하다는 것을 알 수 있다.
피승수 비트들이 M-플립플롭(350), (352), (354), (356), (358)에 각기 저장되어 있다. 이러한 각 피승수비트들이 각각의 셀내에 존재하는 AND 게이트 (360), (362), (364), (366) 및 (368)에서 승수 비트와 함께 AND화 된다. 그래서, 승수 비트는 피승수 비트들에 대하여 마스크로서의 기능을 담당한다.
열(A)는 승산이 시작되기전 10개의 유니트 모두의 조건을 나타낸다. 열A의 모든셀에서, 합 비트와 자리올림 비트는 "0"이다. 열A에서 보여주는 동작은 모든 유니트에 승수값을 더하는 것을 나타낸다. 승수값의 최저 명령 비트(lowest order bit)가 "0"이기 때문에 열A의 결과는 이미 비어있는 유니트에 "0"을 더하는 것과 같다. 열B에 이 결과가 나타나는데 모든 합 비트와 자리올림 비트들이 "0"이다.
열(B)에서, 각 유니트들의 저장값에 피승수값을 더하는 것이 다시 요구되어 이 동작이 실행될 때 승수값의 다음 최저 명령 비트가 "1"인 것을 알 수 있다. (+)사인에 의해서 열에 피승수값이 나타나도록 지시된다. 열(B)의 1행을 참조하면, "1"이 "0"에 더해져서 열(C)의 1행에 합 비트가 "1", 자리올림 비트가 "0"가 되도록 한다. 또한 열(B)의 1행에 있어서, 합 비트 "0"가 열(B)의 2행에 있는 자리올림 비트 "0"와 피승수비트 "1"에 더해져서 열(C)의 2행에 합 비트를 "1"로 자리올림 비트는 "0"로 한다. 각 셀들에 소재하는 화살표는 각 유니트에서의 전술한 가산동작을 가르킨다.
열(D)에 있어서, 승수값이 다 "1"이 되고 그 동작은 열(C)에서 전술한 바와 동일하다.
열(E)에 있어서, 각 유니트에 다시 "0"값이 더해지는데, 그 이유는 실예로든 2진수의 승수 비트가 "0"이기 때문이다. 열(E)에서 자리올림 비트들이 즉시 전송되기 때문에, 열(E)에 모든 "0"를 가산하는데 시간을 소비할 필요는 없지만, 마지막 승산을 얻기 위해 이 동작은 필요하다. 승수 비트들이 유니트 5개에 의해서 발생되는 것과 같이 빠른 속도로 사용되는 경우에, 열(E)에 "0"를 가산하는 동작은 필요하다. 왜냐하면 승수 비트가 "0"를 가산하는 동작이 실행될 때까지 "0" 또는 "1"인지를 알 수 없기 때문이다.
열(F)는 마지막 자리올림 비트를 즉시 전송하기 위해 필요하다. 전술한 것은 2 진수 11011에다 01110을 곱해서 0101111010을 얻는 동작에 관한 실시예이다.
제 5, 6 및 7 도를 참조해서 전술한 직-병렬 승산은 본 발명의 조합 프로세서에 대한 조합 셀 설계에서 구체화된 승산 메카니즘의 기본이 된다. 단지 승산용으로 설계된 직-병렬 승산기에 있어서, 배선이 승산기 하드웨어에 승수값을 시프트하고 그 결과를 추출하기 위해 패턴화되고 그리고 그것을 이용해서 승산기 하드웨어의 정확한 크기를 예정할 수 있다. 본 발명의 새로운 특징은 승산에 있어서 선택가능한 통로를 제공하는 데 있으며 그리고 그 결과로 조합 셀의 1개 열내에서 선택가능한 길이와 위치가 변화될 수 있고 소프트웨어나 억세스되는 메모리의 내용에 의해 미리 예정될 수 있다.
제 7 도에 승산길이를 마음대로 변화시키는 것에 대한 블록도를 도시하였다. 조합 셀 배열을 이용하여 승산길이를 마음대로 변화시키는 본 발명은 전기통신회로에 일익을 담당했는데, 특히 조합 프로세서를 균압선에 순환 디지털 필터로서 사용할 수 있게했다. 확장된 배열을 배치하고 조합처리를 이용한 길이를 변화시킬 수 있는 승산기는 전기통신 이외에 다른분야, 즉 신호처리에 데이터 베이스에도 일익을 담당했다.
확장되는 배열을 얻기 위해서는, 승산동작이 가변성의 길이를 가져야되고 마스크 제어 아래에 놓여야 한다. 그래서 승산동작중에 인에이블될 때 ; 각 조합 셀은 1개 승수 비트와 1개 피승수 비트만 받아들여, 결국 2개의 비트를 받아들인다. 승산동작중에 디스에이블될 때는, 각 조합 셀은 근접한 셀에 연결되어야 하는데 왜냐하면 그것이 작동 영역의 경계에 놓이게된다면 그것은 실행된 직렬 승산을 인에이블하는 작동 셀들의 입력과 출력사이에 "회로-궤환"을 제공하기 때문이다. 제 7 도의 배열은 조합 셀의 1개 열을 도시하고, 각 조합 셀은 ALU(연산장치)(400), (401)…(402)와, 피승수를 홀드하는 레지스터들(B0), (B1), …(Bn)과, LS(최하위)비트를 홀드하는 레지스터(403)와 함께 (404) 및 (405)와 승수번호 An, A(n-1), …A0를 홀드하고 MS(최상위) 비트 홀드를 겸하는 레지스터(406)와 함께 레지스터(407) 및 (408)를 구비한다. 각 셀에 있어서, 마스크가 인에이블되는 곳은 처리동작이 발생한다. 마스크 인에이블 영역의 오른쪽은 마스크 디스에이블 영역이고, 레지스터(408)의 출력 ALU(400), (401)…(402)에 결합되어 있고 그리고 "0"비트가 디스에이블된 셀로부터 도선(412)을 통해 입력된다. 마스크 인에이블된 영역의 왼쪽 영역에서는 ALU(400)가 도선(414)을 통해 플립플롭(406)에 연결된다.
제 7 도의 배열로는 부호식 승산을 실행할 수 없다. 부호식 승산은 부호를 나타내는 최상위 비트(MSB)로 표현되는 번호이다. 2의 보수 연산에 있어서, MSB가 "0"이면 양수이고 MSB가 "1"이면 음수를 나타낸다.
2의 보수 2진수 P와 Q 곱셈을 가정한다. Q와 P는 다음과 같다.
P=-an2na(n-1)2(n-1)+a(n-2)2n-2...a020=-an2n+A
Q=-bn2n+b(n-1)2(n-1)+b(n-2)2n-2...b020=-bn2n+B
제 7 도의 승산배열을 다시 참조하면, 2진수 A의 의미는 위치를 나타내고 2진수 B의 의미는 시간을 나타내며 계수는 시프트된다.
aj2j는 ajTj로 나타내고, Tj는 플립플롭(408)의 출력인 데이터를 시프트하는 펄스를 도선(410)을 통해 j번 시프트한다.
다음은 부호식승산의 스페이스(space)/시간을 나타내는 실시예이다.
Figure kpo00001
전술한 것으로부터, 부호가 없는 숫자들에 적용할 수 있는 동일회로 배열은 부호가 있는 숫자들에 대해서도 동작가능하다는 것을 알 수 있으며, 부호가 있는 숫자들은 숫자 Q(bn으로 표시됨)의 최상위 비트가 시프트될 때, 가산을 실행할 수 있도록 미리 세트된 연산유니트들은 감산을 실행할 수 있도록 세트되어야하고, 그리고 감산을 실행할 수 있도록 미리 세트된 연산유니트들은 가산을 실행할 수 있도록 세트되어야 한다.
제 8 도를 참조하며, 제 7 도를 참조해서 서술했던 셀을 개작한 조합 셀은 전술한 특징들을 갖고 있다. 셀은 숫자를 홀드하기 위해 요구되는 인접한 셀인 레지스트(450), (452), (454) 및 (456)에 숫자(An…A(n-1)…A(n-2)…A0)의 계수(an, an-1…A0)가 홀드되는 구조를 갖고 있다. 계수(B0…B1…B(n-1)…Bn)는 ALU(466), (468), (470) 및 (472)에 각기 결합된 레지스터(458), (460), (462) 및 (464)에 홀드된다. 일련의 처리동작이 마스크 인에이블되는 동안보다는 마스크 디스에이블중에 발생한다는 것을 알 수 있다. 마스크 디스에이블 기능을 사용하는 것은 이하의 셀과 동일하다는 것을 의미하는데, 그 셀은 시프트선(471)에 플립플롭(456)의 출력을 결합할 뿐만 아니라 마스크 인에이블된 ALU(466), (468) 및 (472)가 가산을 실행할 때 ALU(472)가 감산기능을 실행하도록 한다. (반대로 다른 ALU가 감산을 실행할 때 ALU(472)는 감산을 실행한다) 제 7 도와 같이, 인에이블 영역의 좌측 마스크 디스에이블 셀은 도선(473)을 통해 플립플롭(450)에 ALU(466)을 연결한다.
제 8 도의 회로가 제 7 도의 회로보다 양호한 실시예라는 것에 있어서, (1)마스크 디스에이블된 영역의 가장자리 셀들이 양립성을 갖도록 보장하고, 그리고 (2)가산동작에서 발생되는 자리올림 비트가 연산논리유니트에서 감산동작을 수반하도록 보장하는 추가적인 수정이 요구된다는 것을 알 수 있다. 전술한 문제점들을 해결하기 전에, 그 문제점들을 보다 상세하게 설명한다.
제 9 도는 가장자리 셀들의 양립성에 대한 문제점을 도시했다. 문제점이 가장자리에 있어서의 셀들의 실제적인 연결에 의해서, 즉 인에이블된 영역의 양쪽 가장자리인 마스크 디스에이블된 셀에 의해서 발생되는 것이 아니라, 차라리 제 9 도의 셀(D)에 도시된 바와 같이 마스크 디스에이블된 영역의 중간 셀에서 발생된다고 할 수 있다.
제 9 도의 셀(D)은 전술한 마스크 인에이블된 가장자리 셀들의 동작들을 동일하게 실행한다(플립플롭(A)와 (B)이 전단의 계산값을 보존한다). 플립플롭(482)의 출력은 제 8 도의 플립플롭(456)이 승수값을 시프트하는 도선(471)에 연결되는 것과 동일한 방법으로 도선(483)에 연결되어 있고, 그리고 ALU(480)의 자리올림 출력은 이웃해 있는 마스크 디스에이블된 셀(E)에 의해서 플립플롭(A)의 입력에 연결된다. 추가로, ALU(480)는 제 9 도의 ALU(472)와 동일한 방법으로 감산 또는 가산을 실행한다.
전술한 것의 결론은 플립플롭(A) 및 (B)의 값이 수정됨으로써 결국 승산이 마스크 인에이블된 영역에서 행해지는중에 연속 시프트 펄스가 열(row)상의 모든 셀에 적용된다는 것이다. 이것은 값들이 변하지 않는 상태로 남아 있어야하기 때문에 받아들일 수 없다. 왜냐하면 그 값들이 다음 동작에 필요하기 때문이다. 이러한 비트들이 어떠한 방법으로 변화되는지 이하에 자세한 설명을 한다.
제 9 도의 셀(D)에 소재하는 ALU(480)의 감산 기능의 실행에 대한 논리상태를 도시하는 다음의 진리표에 있어서 :
A는 레지스터(482)를 표시
B는 피승수 역할을 하는 레지스터(484)를 표시
C1는 입력 자리올림 비트
C0는 출력 자리올림 비트
R1는 전단으로부터의 결과 입력
R0는 결과출력
State는 A, B 및 C1값에 의한 셀(D)의 상태
[진리표]
Figure kpo00002
스테이트 0, 2, 5 및 7은 안정한 상태이지만 스테이트 6은 상태 1이고 교대로 스테이트 3과 스테이트 7로 되고, 그리고 스테이트 7은 상태 0이다.
전술한 것으로부터 모든 마스크 디스에이블된 셀(C)을 제외하고 디스에이블되어야 한다는 것을 알 수 있다. 셀(C)은 제 10 도의 마스크 디스에이블된 영역의 좌측의 맨 끝에 도시되었다. 제 10 도의 셀(C)이 피승수의 최상위 비트를 포함한다는 것과 명세서와 특허청구범위의 잔여권으로서 참고된다는 것을 알 수 있다. 이 셀의 차이점은 이 특별한 셀에 대한 입력데이타 비트를 인가함으로써 실행될 수 있다는 것이고 이 셀의 동일한 점은 전단의 명령에 의해 세트될 수 있는 제 2 내부 동일비트를 구비함으로써 실행될 수 있다는 것이다.
제 10 도는 셀(A), (B) 및 (C)에서 3비트 승산을 실행하는 연합 셀의 열을 도시했다. 각각의 셀은 제 9 도를 참조해서 도시된 셀과 동일하며, 그것의 동작에 대한 참조는 제 8 도를 직접 참고한다. 셀(D), (E) 및 (F)들은 제 9 도의 것과 동일하고, 그것의 각 셀들은 제 9 도에서 전술된 바와 같은 플립플롭과 ALU를 구비한다.
전술한 제 2 문제점인, 즉 ALU에서 감산동작을 수반한 가산동작으로부터 자리올림의 양립성에 대해 이제 설명하겠다. 실제상 "자리올림 비축" 가산기에서 가산과 감산의 양립성을 갖고 있다고 전술된 이 문제점은 유사하게 또는 교대로 작동하는 자리올림과 빌림(borrow) 비축 통로들을 분리시키도록 ALU회로를 개작함으로써 해결될 수 있다.
제 11 도를 참조해서, 전술한 문제점을 해결할 수 있는 ALU회로를 설명한다. 공지된 설계인 조합논리회로를 구비하는 가산/감산회로(500)는 승수 및 피승인 번호(a) 및 (b)와 동작되는 다른 번호와 결합되어 진리표에서 설명된다. (a) 및 (b)는 AND게이트(502) 및 입력(F)를 통해 가산/감산회로(500)에 연결된다. 전단의 셀로부터 전달된 결과(R') 및 전단의 시프트 시간이 도선(504)을 통해 지연 플립플롭(506)에 연결되어 가산/감산회로에(R')로 입력된다. 전단의 시프트 시간으로부터 전달된 자리올림(C')은 지연 플립플롭(508)으로부터 얻어지는데, 즉 회로(500)의 출력(C)으로부터 자리올림(C)을 수시하여 1주기의 시프트 시간동안 지연시키고 그것을 회로의 (C')입력으로 인가한다. 이와 유사하게, 회로(500)의 빌림(B)출력이 지연 플립플롭(510)에 인가되어 1주기의 시프트 시간 동안 지연되고 전단의 시프트 시간으로부터 전달된 "빌림"으로서 회로(500)의 (B')입력으로 입력된다.
게이트(502)의 패스트인 데이터가 회로(500)의 (F)입력에 인가된다. 연산 결과(R)가 회로(500)의 (R)출력에서 다음 셀에 연결되고 다음 셀의 (R')입력이 된다.
제 11 도의 연산논리유니트(500)의 가산 및 감산기능에 대한 진리표는 다음과 같다.
F는 입력되는 2진수
R'는 전단 및 전단의 시프트 시간의 결과
C'는 전단의 시프트 시간의 자리올림
B'는 전단의 시프트 시간의 빌림
R은 연산결과
C는 자리올림
B는 빌림
덧셈함수 R = F+R'+C'-B'에 대한 진리표는 다음과 같다 :
Figure kpo00003
감산함수 R = F-R'+C'-B'에 대한 진리표는 다음과 같다 :
Figure kpo00004

Claims (21)

  1. 합 비트와 자리올림 비트를 동시에 저장하는 조합 셀이 행과 열로 배치된 어레이를 구비하며, 상기 각 조합 셀은 승수나 피승수 비트 또는 그것의 어떤 결합을 포함하는 1개 또는 그 이상의 특별한 셀들을 식별하기 위한 마스킹 수단과, 피승수 비트를 저장하기 위한 수단과, 피승수 비트와 승수 비트를 승산할 수 있는 수단과, 상기 셀이 승산 결과인 2개의 비트를 저장하게끔 상기 셀을 승산동작중에 인에이블하기 위한 수단과, 승산 결과를 산출하기 위해서 전단의 시프트 시간으로부터의 연산 동작 결과에 대해 상기 마스크된 피승수를 가산하거나 감산하도록 승수 비트들을 순차적으로 수신하기 위한 산술논리유니트와, 임의의 디지트 길이를 갖는 피승수와 고정 또는 가변성의 길이를 갖는 승수에 대한 승산이 인접 셀에서 동시에 발생하게끔 현재의 결과가 얻어지는 동일한 시프트 시간내에 현재의 승산결과를 인접한 조합 셀에 결합시키는 수단을 구비하는 것을 특징으로 하는 조합 프로세서.
  2. 제 1 항에 있어서, 상기 프로세서에 의해 실행될 멀티-비트 명령 워어드들을 수신하고 상기 프로세서에 의한 명령 실행처리를 제어하기 위한 제어수단을 구비하며, 이 제어수단은 멀티-비트 명령 워어드들을 상기 프로세서의 일부분을 인에이블하고 디스에이블 할 수 있는 마스킹 수단과 저장용 프로세서에 결합시키는 수단을 포함하는 것을 특징으로 하는 조합 프로세서.
  3. 제 1 항에 있어서, 상기 피승수 비트와 승수 비트는 디지털 정보 신호로 표현되고, 상기 신호들은 실시간내에 프로세서에 의해 승산되는 것을 특징으로 하는 조합 프로세서.
  4. 제 1 항에 있어서, 상기 데이터는 2의 보수로 구성되는 것을 특징으로 하는 조합 프로세서.
  5. 제 4 항에 있어서, 상기 2의 보수는 상기 마스크 수단의 제어 아래 상기 어레이 각 셀에서 동작되는 것을 특징으로 하는 조합 프로세서.
  6. 제 1 항에 있어서, 현재의 승산 결과를 인접한 조합 셀에 결합시키기 위한 상기 각 셀내의 결합 수단은 상기 셀이 승산동작중에 디스에이블될 때 순차 승산이 조합 어레이내의 상기 셀 위치에 관계없이 얻어지게끔 각 셀의 입력 및 출력간에 회로 궤환 연결을 제공하는 수단을 포함하는 것을 특징으로 하는 조합 프로세서.
  7. 제 4 항에 있어서, 승수와 피승수를 각기 P(승수) = an2n+a(n-1)2(n-1)+a(n-2)2(n-2)… a020= -an2n+ A와 Q(피승수)= bn2n+b(n-1)2(n-1)+b(n-2)2(n-2)…b020= -bn2n+B로 나타내고, 그것의 계수가 상기 어리이내에서 시프트될때 B는 어레이의 위치에 의해 결정되고, A는 시간에 의해 결정되는 것을 특징으로 하는 조합 프로세서.
  8. 제 6 항에 있어서, 상기 셀이 상기 마스킹 수단에 의해 승산동작중에 디스에이블 될 때마다 마스크 디스에이블된 영역에서 피승수의 최상위 비트를 포함하는 셀의 디스에이블링을 방지하는 수단을 추가로 구비하는 것을 특징으로 하는 조합 프로세서.
  9. 제 8 항에 있어서, 마스크 디스에이블된 영역의 열에 소재하는 피승수의 최상위 비트를 포함하는 셀을 식별하기 위한 수단을 추가로 구비하는 것을 특징으로 하는 조합 프로세서.
  10. 제 9 항에 있어서, 상기 셀의 식별 수단은 입력 데이터 비트를 상기 셀에 인가하기 위한 수단을 구비하는 것을 수단으로 하는 조합 프로세서.
  11. 제 9 항에 있어서, 상기 셀의 식별 수단은 상기 셀 내부에 소재하는 플립플롭과 이 플립플롭을 세팅 및 언세팅하기 위한 수단을 구비하는 것을 특징으로 하는 조합 프로세서.
  12. 제 1 항에 있어서, 상기 어레이 수단의 각 셀에 위치한 산술논리 유니트 수단은 가산동작의 자리올림이 다음의 감산동작을 겸용할 수 있고 그리고 감산동작의 빌림이 다음의 가산동작을 겸용할 수 있게끔 동시에 또는 교대로 동작하게 되는 자리올림 및 빌림 구축통로들을 분리하기 위한 수단을 포함하는 것을 특징으로 하는 조합 프로세서.
  13. 제 12 항에 있어서, 상기 어레이의 각 셀에 위치한 상기 산술논리유니트 수단은 2진수의 입력(F)를 가산/감산회로에 결합하기 위한 수단과, 전단의 결과(R')와 전단의 시프트 시간을 상기 가산/감산회로에 결합하기 위한 수단과, 1시프트시간 지연후에 전단의 시프트 시간의 자리올림(C')을 가산/감산회로에 결합하기 위한 수단과, 가산/감산회로 수단의 빌림(B)을 1주기의 시프트 시간만큼 지연시키고 이 지연된 전단의 시프트 시간의 빌림(B')을 결합하기 위한 수단과, 상기 가산/감산회로 수단에 입력되는 2진수(F)의 연산결과(R)를 얻고 그결과(R)를 가산/감산회로의 (R')입력으로서 다음 인접 셀에 결합시키기 위한 수단을 구비하는 것을 특징으로 하는 조합 프로세서.
  14. 제 1 항에 있어서, 피승수 비트를 저장하는 상기 수단은 플립플롭인 것을 특징으로 하는 조합 프로세서.
  15. 제 1 항에 있어서, 승수 비트를 저장하는 상기 수단은 시프트 레지스터인 것을 특징으로 하는 조합 프로세서.
  16. 제 1 항에 있어서, 상기 피승수 비트의 마스킹 수단은 각 어레이내의 열 또는 행에 결합된 마스크 셀과, 상기 어레이 셀에 대한 빠른 승산입력을 얻도록 상기 승수 비트와 피승수 비트를 AND하는 상기 어레이 셀내의 수단을 구비하는 것을 특징으로 하는 조합 프로세서.
  17. 조합 어레이의 조합처리 셀에서의 가변길이 2진수에 대한 빠른 승산방법에 있어서, 동작 범위, 데이터 범위 및 마스킹 범위를 포함하는 다수의 2진 명령을 저장하는 단계와, 상기 동작범위 제어하에서 상기 셀들에 결합된 직렬 승산기의 각 셀에 위치하는 논리연산유니트에서 빠른 승산동작을 실행하도록 상기 마스킹 범위에 따라 각각의 상기 처리 셀들을 인에이블 및 디스에이블하는 단계와, 셀들의 논리연산유니트에 대해 빠른 승산입력을 얻도록 승수 비트와 피승수 비트를 승산하는 단계와, 승산결과를 산출하기 위해 상기 조합 어레이의 각 셀에 소재하는 논리연산유니트에 상기 피승수를 병렬로 결합하고 승수 비트는 직렬로 결합하는 단계와, 승수와 임의의 디지트 길이를 갖는 피승수에 대한 승산이 각 셀에서 동시에 실행되게끔 각 셀내의 승산 결과를 인접 셀에 동일한 시프트 시간내에 결합하는 단계를 구비하는 것을 특징으로 하는 방법.
  18. 제 17 항에 있어서, 상기 마스킹 단계는 승산처리중에 디스에이블된 셀중에서 피승수의 최상위 비트를 포함한 셀을 마스킹함으로써 디스에이블되는 것을 방지하는 단계를 추가로 구비하는 것을 특징으로 하는 조합 프로세서.
  19. 제 18 항에 있어서, 상기 마스킹 단계는 상기 셀의 마스크 디스에이블된 영역에 있어서의 열을 식별하는 단계를 추가로 구비하는 것을 특징으로 하는 방법.
  20. 제 17 항에 있어서, 상기 마지막 단계는 가산동작의 자리올림이 다음의 감산동작을 겸용할 수 있고 그리고 감산동작의 빌림이 다음의 가산동작을 겸용할 수 있게끔 동시에 또는 교대로 동작하게 되는 자리올림 및 빌림 비축통로들을 분리하여 결합하는 단계를 구비하는 것을 특징으로 하는 방법.
  21. 제 17 항에 있어서, 상기 2진 명령들은 2의 보수 데이터인 것을 특징으로 하는 방법.
KR1019830003623A 1982-08-02 1983-08-02 조합 프로세서 KR910004308B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US06/404,242 US4507748A (en) 1982-08-02 1982-08-02 Associative processor with variable length fast multiply capability
US404,242 1982-08-02
US404242 1989-09-07

Publications (2)

Publication Number Publication Date
KR840006089A KR840006089A (ko) 1984-11-21
KR910004308B1 true KR910004308B1 (ko) 1991-06-25

Family

ID=23598777

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019830003623A KR910004308B1 (ko) 1982-08-02 1983-08-02 조합 프로세서

Country Status (17)

Country Link
US (1) US4507748A (ko)
EP (1) EP0100511B1 (ko)
JP (1) JPS5943475A (ko)
KR (1) KR910004308B1 (ko)
AR (1) AR242865A1 (ko)
AT (1) ATE48194T1 (ko)
AU (1) AU560012B2 (ko)
BE (1) BE897441A (ko)
BR (1) BR8303716A (ko)
CA (1) CA1194606A (ko)
DE (1) DE3380884D1 (ko)
ES (1) ES8500667A1 (ko)
IN (1) IN158682B (ko)
MX (1) MX155395A (ko)
NZ (1) NZ204954A (ko)
PH (1) PH20071A (ko)
ZA (1) ZA834372B (ko)

Families Citing this family (34)

* 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
US4580215A (en) * 1983-03-08 1986-04-01 Itt Corporation Associative array with five arithmetic paths
GB2141847B (en) * 1983-05-06 1986-10-15 Seiko Instr & Electronics Matrix multiplication apparatus for graphic display
GB8320362D0 (en) * 1983-07-28 1983-09-01 Secr Defence Digital data processor
US4736333A (en) * 1983-08-15 1988-04-05 California Institute Of Technology Electronic musical instrument
US4761755A (en) * 1984-07-11 1988-08-02 Prime Computer, Inc. Data processing system and method having an improved arithmetic unit
BR8503161A (pt) * 1984-07-31 1986-03-25 Int Standard Electric Corp Metodo para investigar uma matriz de associacao
EP0214313B1 (en) * 1984-08-22 1993-03-10 Hitachi, Ltd. Method and apparatus for data merging/sorting
US4742520A (en) * 1984-09-26 1988-05-03 Texas Instruments Incorporated ALU operation: modulo two sum
US5226171A (en) * 1984-12-03 1993-07-06 Cray Research, Inc. Parallel vector processing system for individual and broadcast distribution of operands and control information
US5081573A (en) * 1984-12-03 1992-01-14 Floating Point Systems, Inc. Parallel processing system
US4835729A (en) * 1985-12-12 1989-05-30 Alcatel Usa, Corp. Single instruction multiple data (SIMD) cellular array processing apparatus with on-board RAM and address generator apparatus
US4780842A (en) * 1986-03-26 1988-10-25 Alcatel Usa, Corp. Cellular processor apparatus capable of performing floating point arithmetic operations
US4974198A (en) * 1986-07-16 1990-11-27 Nec Corporation Vector processing system utilizing firm ware control to prevent delays during processing operations
US4851995A (en) * 1987-06-19 1989-07-25 International Business Machines Corporation Programmable variable-cycle clock circuit for skew-tolerant array processor architecture
US5257395A (en) * 1988-05-13 1993-10-26 International Business Machines Corporation Methods and circuit for implementing and arbitrary graph on a polymorphic mesh
DE58906476D1 (de) * 1988-07-05 1994-02-03 Siemens Ag In integrierter Schaltungstechnik ausgeführtes digitales neuronales Netz.
US5056006A (en) * 1988-09-12 1991-10-08 General Electric Company Parallel processor with single program storage and sequencer and simultaneous instruction processing
US5777608A (en) * 1989-03-10 1998-07-07 Board Of Regents, The University Of Texas System Apparatus and method for in-parallel scan-line graphics rendering using content-searchable memories
US5758148A (en) * 1989-03-10 1998-05-26 Board Of Regents, The University Of Texas System System and method for searching a data base using a content-searchable memory
US4989180A (en) * 1989-03-10 1991-01-29 Board Of Regents, The University Of Texas System Dynamic memory with logic-in-refresh
US5001662A (en) * 1989-04-28 1991-03-19 Apple Computer, Inc. Method and apparatus for multi-gauge computation
CA2021192A1 (en) * 1989-07-28 1991-01-29 Malcolm A. Mumme Simplified synchronous mesh processor
US5125098A (en) * 1989-10-06 1992-06-23 Sanders Associates, Inc. Finite state-machine employing a content-addressable memory
US5053991A (en) * 1989-10-06 1991-10-01 Sanders Associates, Inc. Content-addressable memory with soft-match capability
JPH0833815B2 (ja) * 1990-05-14 1996-03-29 日本電気株式会社 高桁乗算装置
JPH0658170U (ja) * 1993-01-13 1994-08-12 本田技研工業株式会社 汎用エンジンの非常停止装置
US6148034A (en) * 1996-12-05 2000-11-14 Linden Technology Limited Apparatus and method for determining video encoding motion compensation vectors
US6341327B1 (en) * 1998-08-13 2002-01-22 Intel Corporation Content addressable memory addressable by redundant form input
GB9929269D0 (en) 1999-12-11 2000-02-02 Koninkl Philips Electronics Nv Method and apparatus for digital correlation
DE10206830B4 (de) * 2002-02-18 2004-10-14 Systemonic Ag Verfahren und Anordnung zur Zusammenführung von Daten aus parallelen Datenpfaden
JP4913685B2 (ja) * 2007-07-04 2012-04-11 株式会社リコー Simd型マイクロプロセッサおよびsimd型マイクロプロセッサの制御方法
US8755515B1 (en) 2008-09-29 2014-06-17 Wai Wu Parallel signal processing system and method
FR3101982B1 (fr) * 2019-10-11 2024-03-08 St Microelectronics Grenoble 2 Détermination d'un bit indicateur

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1540996A (en) * 1975-05-12 1979-02-21 Plessey Co Ltd Associative processors
IT1055645B (it) * 1975-10-24 1982-01-11 Elsag Multielaboratore elettronico associativo per elabobazioni multiple contemporanee di dati in tempo reale
JPS5447539A (en) * 1977-09-22 1979-04-14 Nippon Telegr & Teleph Corp <Ntt> Digital binary multiplier circuit
US4310879A (en) * 1979-03-08 1982-01-12 Pandeya Arun K Parallel processor having central processor memory extension
US4287566A (en) * 1979-09-28 1981-09-01 Culler-Harrison Inc. Array processor with parallel operations per instruction
US4314349A (en) * 1979-12-31 1982-02-02 Goodyear Aerospace Corporation Processing element for parallel array processors
JPS56127266A (en) * 1980-03-10 1981-10-05 Ibm Method of executing and controlling command stream

Also Published As

Publication number Publication date
AU560012B2 (en) 1987-03-26
IN158682B (ko) 1987-01-03
EP0100511B1 (en) 1989-11-23
US4507748A (en) 1985-03-26
CA1194606A (en) 1985-10-01
ES524630A0 (es) 1984-06-16
ATE48194T1 (de) 1989-12-15
EP0100511A2 (en) 1984-02-15
JPH0312739B2 (ko) 1991-02-20
ZA834372B (en) 1984-03-28
BE897441A (fr) 1984-02-02
JPS5943475A (ja) 1984-03-10
NZ204954A (en) 1987-11-27
PH20071A (en) 1986-09-18
BR8303716A (pt) 1984-04-24
KR840006089A (ko) 1984-11-21
AU1737583A (en) 1984-02-09
MX155395A (es) 1988-02-26
DE3380884D1 (en) 1989-12-28
ES8500667A1 (es) 1984-06-16
EP0100511A3 (en) 1986-08-27
AR242865A1 (es) 1993-05-31

Similar Documents

Publication Publication Date Title
KR910004308B1 (ko) 조합 프로세서
US10565492B2 (en) Neural network unit with segmentable array width rotator
US10586148B2 (en) Neural network unit with re-shapeable memory
US10565494B2 (en) Neural network unit with segmentable array width rotator
US10140574B2 (en) Neural network unit with segmentable array width rotator and re-shapeable weight memory to match segment width to provide common weights to multiple rotator segments
US10996959B2 (en) Hybrid processor
EP0075593B1 (en) A bit slice microprogrammable processor for signal processing applications
US5226171A (en) Parallel vector processing system for individual and broadcast distribution of operands and control information
US3970993A (en) Cooperative-word linear array parallel processor
AU624524B2 (en) Simplified synchronous mesh processor
US4135242A (en) Method and processor having bit-addressable scratch pad memory
JP2671120B2 (ja) データ処理セルおよびデータプロセッサ
US4075704A (en) Floating point data processor for high speech operation
US5081573A (en) Parallel processing system
US4228498A (en) Multibus processor for increasing execution speed using a pipeline effect
JPH08101761A (ja) 再構成可能な応用特定装置
JPH06195322A (ja) 汎用型ニューロコンピュータとして用いられる情報処理装置
US4823258A (en) Index limited continuous operation vector processor
US4796219A (en) Serial two&#39;s complement multiplier
US4065666A (en) Multiply-divide unit
EP0888586B1 (en) Array indexing
US4947364A (en) Method in a computing system for performing a multiplication
Sandon A pyramid implementation using a reconfigurable array of processors
Nagendra et al. Digit systolic algorithms for fine-grain architectures
Bartee et al. Design of an accumulator for a general purpose computer

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee