[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

DE69520974T2 - An integrated semiconductor circuit - Google Patents

An integrated semiconductor circuit

Info

Publication number
DE69520974T2
DE69520974T2 DE69520974T DE69520974T DE69520974T2 DE 69520974 T2 DE69520974 T2 DE 69520974T2 DE 69520974 T DE69520974 T DE 69520974T DE 69520974 T DE69520974 T DE 69520974T DE 69520974 T2 DE69520974 T2 DE 69520974T2
Authority
DE
Germany
Prior art keywords
data
memory cell
cell array
mar
lines
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
DE69520974T
Other languages
German (de)
Other versions
DE69520974D1 (en
Inventor
Kazuo Ishikura
Atsushi Kiuchi
Tetsuya Nakagawa
Yoshinobu Nakagome
Takao Watanabe
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Application granted granted Critical
Publication of DE69520974D1 publication Critical patent/DE69520974D1/en
Publication of DE69520974T2 publication Critical patent/DE69520974T2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • 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
    • 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/15Correlation function computation including computation of convolution operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Dram (AREA)
  • Image Processing (AREA)
  • Multi Processors (AREA)
  • Logic Circuits (AREA)

Description

Die vorliegende Erfindung betrifft eine integrierte Halbleiterschaltung mit einem zweidimensionalen Speicherarray und insbesondere eine integrierte Halbleiterschaltung, die die Ausführung von entweder einer digitalen Filteroperation wie einer Konvolutionsverarbeitungsoperation oder einer Verarbeitungsoperation unter Verwendung von zweidimensionalen Daten, etwa die Suche nach dem Bewegungsvektor eines sich bewegenden Bildes, in Echtzeit ermöglicht.The present invention relates to a semiconductor integrated circuit having a two-dimensional memory array, and more particularly to a semiconductor integrated circuit that enables either a digital filtering operation such as a convolutional processing operation or a processing operation using two-dimensional data such as searching for the motion vector of a moving image to be carried out in real time.

Von den verschiedenen Informationsverarbeitungsoperationen an zweidimensionalen Daten umfaßt die Bildverarbeitungsoperation ein zweidimensionales Array von Pixeln auf einem Bildschirm, so daß die zweidimensionalen Daten oft zu verarbeiten sind. Eine zweidimensionale Filteroperation stellt eine solche Informationsverarbeitungsoperation dar.Among the various information processing operations on two-dimensional data, the image processing operation involves a two-dimensional array of pixels on a screen, so that the two-dimensional data often has to be processed. A two-dimensional filtering operation is one such information processing operation.

Die Fig. 2 zeigt eine bekannte integrierte Halbleiterschaltung zum Verarbeiten eines Bildes. Diese Vorrichtung ist für eine zweidimensionale Filteroperation geeignet, wie es Yoshiki Kobayashi, Tadashi Fukushima, Syuichi Miura, Morio Kanasaki und Kohtaro Hirasawa in "A BiCMOS Image Processor with Line Memories", ISSCC Digest of Technical Papers, Seiten 182 bis 183, Februar 1987 beschreiben.Fig. 2 shows a known semiconductor integrated circuit for processing an image. This device is suitable for a two-dimensional filtering operation as described by Yoshiki Kobayashi, Tadashi Fukushima, Syuichi Miura, Morio Kanasaki and Kohtaro Hirasawa in "A BiCMOS Image Processor with Line Memories", ISSCC Digest of Technical Papers, pages 182 to 183, February 1987.

Die integrierte Halbleiterschaltung der Fig. 2 wird hier zusammengefaßt. Wie in der Fig. 2(a) gezeigt, besteht die integrierte Halbleiterschaltung aus einer Vorverarbeitungsschaltung PPU zum Ausführen einer Vorverarbeitungsoperation wie einer Schwellenwertoperation an den Eingangs-Bilddaten; Zeilenspeichern LM1 und LM2 zum Speichern von Bildern einer Zeile, um eine Verzögerung um je eine Zeile hervorzurufen; einem Schieberegister SR; einem Datenspeicher DM zum Speichern der Gewichtungskoeffizienten des Filters; einer Verarbeitungsschaltung PE und aus Verbindungseinheiten LU1 und LU2 mit Addierern. Die Fig. 2B zeigt ein Beispiel für die Berechnung in dem Fall, daß die integrierte Halbleiterschaltung der Fig. 2A zum Berechnen eines 3 · 3-Raumfilters verwendet wird. In der Fig. 2B bezeichnen die Bezugszeichen F32 und F(x + i)(y + i) den (Dichte-) Wert des Pixels in der dritten Zeile und der zweiten Spalte im Datenblock des Eingangsbildes bzw. den Wert des Pixels in der (x + i)-ten Zeile und der (y + i)-ten Spalte. Die Bezugszeichen Wij, W-1-1, - - - und W11 bezeichnen Filterkoeffizienten und die Bezugszeichen Rxy den Wert des Pixels in der Zeile x und der Spalte y im Datenblock des verarbeiteten Ausgangsbildes. Die Operationen der integrierte Halbleiterschaltung der Fig. 2A werden anhand der Fig. 2B beschrieben. Bei der Berechnung für den 3 · 3-Raumfilter kann, wie allgemein bekannt, der Wert von Rxy durch die Summe der Produkte der Werte der Pixel der Eingangsbilder und der Filterkoeffizienten ausgedrückt werden, wie es die Gleichung in der Fig. 2B angibt. Um den Wert von Rxy zu bestimmen, sind daher die Werte der Pixel von neun Eingangsbildern um das Pixel in der Zeile x und der Spalte y im Datenblock des Eingangsbildes erforderlich. Die eingegebenen Bilddaten werden zuerst zu der Vorverarbeitungsschaltung PPU gegeben. Da die Filteroperation keine Schwellenwertverarbeitung beinhaltet, werden die eingegebenen Bilddaten so wie sie sind zum Schieberegister SR und zum Zeilenspeicher LM1 weitergegeben. Das Ausgangssignal des Zeilenspeichers LM1 wird mit einer Verzögerung von einer Zeile ausgegeben. Das Ausgangssignal des Zeilenspeichers LM1 wird zum Zeilenspeicher LM2 geführt, von dem es mit einer weiteren Verzögerung von einer Zeile ausgegeben wird. Im Ergebnis werden die Werte der Pixel des Eingangsbildes, die zum Berechnen des 3 · 3-Raumfilters erforderlich sind, für die einzelnen Zeilen in verschiedenen Schieberegistern gespeichert. Die Fig. 2B zeigt den Zustand, in dem die Werte der neun Pixel des Eingangsbildes um F22 in den Schieberegistern gespeichert sind. Die Werte der in den Schieberegistern gespeicherten neun Pixel werden aufeinanderfolgend in die Verarbeitungsschaltungen PE1, PE2 und PE3 eingegeben und dort deren Produkte mit den entsprechenden Koeffizienten berechnet. Die sich ergebenden Produkte werden in die Verbindungseinheiten LU1 und LU2 eingegeben und dort addiert, so daß in diesem Fall der Wert von R22 bestimmt wird. Bei der bekannten integrierten Halbleiterschaltung der Fig. 2 werden daher die Werte der Pixel über die drei Zeilen dadurch in die drei Verarbeitungsschaltungen eingegeben, daß von den Verzögerungen der Zeilenspeicher derart Gebrauch gemacht wird, daß die drei Multiplikationen parallel ausgeführt werden. Im Ergebnis kann der Raumfilter mit hoher Geschwindigkeit ausgeführt werden. Die genannte Literaturstelle erwähnt, daß eine versuchsweise in einer 1,8-Mikron- Technik hergestellte BiCMOS-Schaltung die Berechnungen für den 3 · 3-Raumfilter für ein TV-Bild aus 512 · 512 Pixeln in Echtzeit ausführen kann.The semiconductor integrated circuit of Fig. 2 is summarized here. As shown in Fig. 2(a), the semiconductor integrated circuit is composed of a preprocessing circuit PPU for performing a preprocessing operation such as a threshold operation on the input image data; line memories LM1 and LM2 for storing images of one line to cause a delay of one line each; a shift register SR; a data memory DM for storing the weighting coefficients of the filter; a processing circuit PE, and connection units LU1 and LU2 with adders. Fig. 2B shows an example of calculation in the case where the semiconductor integrated circuit of Fig. 2A is used to calculate a 3 × 3 spatial filter. In Fig. 2B, the reference symbols F32 and F(x + i)(y + i) denote the (density) value of the pixel in the third row and the second column in the data block of the input image and the value of the pixel in the (x + i)-th row and the (y + i)-th column, respectively. The reference symbols Wij, W-1-1, - - - and W11 denote filter coefficients and the reference symbols Rxy denote the value of the pixel in the row x and the column y in the data block of the processed output image. The operations of the semiconductor integrated circuit of Fig. 2A are described with reference to Fig. 2B. In the calculation for the 3 x 3 spatial filter, as As is well known, the value of Rxy can be expressed by the sum of the products of the values of the pixels of the input images and the filter coefficients, as shown in the equation in Fig. 2B. Therefore, to determine the value of Rxy, the values of the pixels of nine input images around the pixel in row x and column y in the data block of the input image are required. The input image data is first fed to the preprocessing circuit PPU. Since the filtering operation does not involve threshold processing, the input image data is passed as it is to the shift register SR and the line memory LM1. The output of the line memory LM1 is output with a delay of one line. The output of the line memory LM1 is fed to the line memory LM2, from which it is output with a further delay of one line. As a result, the values of the pixels of the input image required for calculating the 3 × 3 spatial filter are stored in different shift registers for each line. Fig. 2B shows the state in which the values of the nine pixels of the input image are stored in the shift registers around F22. The values of the nine pixels stored in the shift registers are successively input to the processing circuits PE1, PE2 and PE3, where their products with the corresponding coefficients are calculated. The resulting products are input to the connection units LU1 and LU2 and added there, so that in this case the value of R22 is determined. In the known semiconductor integrated circuit of Fig. 2, therefore, the values of the pixels over the three lines are input to the three processing circuits by making use of the delays of the line memories so that the three multiplications are carried out in parallel. As a result, the spatial filter can be carried out at high speed. The cited reference mentions that a BiCMOS circuit experimentally manufactured using 1.8 micron technology can perform the calculations for the 3 x 3 spatial filter for a TV picture of 512 x 512 pixels in real time.

Eine erste Aufgabe der vorliegenden Erfindung ist es, eine integrierte Halbleiterschaltung zum Ausführen der Verarbeitungsoperationen an zweidimensionalen Daten mit hoher Parallelität zu schaffen, und ein zweites, zu lösenden Problem ist, eine Anzahl von solchen Verarbeitungsschaltungen so in einem hochintegrierten Halbleiterchip unterzubringen, daß die Verarbeitungsoperationen mittels zweidimensionaler Speicherzellenarrays mit hoher Parallelität ausgeführt werden, wobei die Speicherzellenarrays in der Lage sein sollen, eine große Zahl von zweidimensionalen Daten zu verarbeiten.A first object of the present invention is to provide a semiconductor integrated circuit for carrying out the processing operations on two-dimensional data with high parallelism, and a second problem to be solved is to accommodate a number of such processing circuits in a highly integrated semiconductor chip so that the processing operations are carried out by means of two-dimensional memory cell arrays with high parallelism, wherein the memory cell arrays should be capable of processing a large number of two-dimensional data.

Bei der beschriebenen, bekannten integrierten Halbleiterschaltung der Fig. 2 werden die Berechnungen für den Raumfilter mit hoher Geschwindigkeit von den neun Multiplikatoren zum Berechnen eines Ausgangspixels ausgeführt, immer drei mal drei parallel. In der Zukunft muß die Parallelität jedoch erhöht werden, um eine höhere Geschwindigkeit zu erreichen.In the described, known integrated semiconductor circuit of Fig. 2, the calculations for the spatial filter are carried out at high speed by the nine Multipliers to calculate an output pixel are always executed three by three in parallel. In the future, however, the parallelism must be increased to achieve higher speed.

Mit dem Ansteigen der Bildqualität von Fernsehern, Workstations, PCs und Spielmaschinen auf einen höheres Niveau steigt auch die Anzahl der Pixel für ein Bild an, und die Pixelfrequenz erhöht sich. Darüberhinaus wird angenommen, daß tragbare Geräte mit Kommunikations- und Anzeigefunktionen in naher Zukunft stark an Verbreitung gewinnen. Es wird auch angenommen, daß solche Geräte durch Verarbeiten der Daten für ein sich bewegendes Bild, die über die Kommunikationsfunktion erhalten werden, eine klare Anzeige zu bewirken haben. In solchen Geräten dient eine Batterie mit einer geringen Spannung zur Energieversorgung. Im allgemeinen fällt jedoch die Geschwindigkeit von integrierten Halbleiterschaltungen bei sinkender Batteriespannung proportional zum Abfall der Versorgungsspannung ab, so daß die bekannte integrierte Halbleiterschaltung nicht mehr in der Lage sein kann, eine ausreichende Verarbeitungsgeschwindigkeit zu erreichen. Um dieses Problem zu beheben, muß die Parallelität angehoben werden, um den Abfall in der Verarbeitungsgeschwindigkeit zu kompensieren. Eine integrierte Halbleiterschaltung mit höherer Parallelität, die zweidimensionale Daten mit hoher Geschwindigkeit verarbeiten kann, ist daher erwünscht.As the picture quality of televisions, workstations, personal computers and game machines rises to a higher level, the number of pixels for an image also increases, and the pixel frequency increases. In addition, portable devices with communication and display functions are expected to become widely used in the near future. It is also expected that such devices are required to provide a clear display by processing the data for a moving image obtained through the communication function. In such devices, a battery with a low voltage is used for power supply. In general, however, as the battery voltage drops, the speed of semiconductor integrated circuits drops in proportion to the drop in the power supply voltage, so that the conventional semiconductor integrated circuit may no longer be able to achieve a sufficient processing speed. To solve this problem, parallelism must be increased to compensate for the drop in processing speed. A semiconductor integrated circuit with higher parallelism that can process two-dimensional data at high speed is therefore desired.

Bei Geräten zur Darstellung eines Bildes wird darüberhinaus ein sogenannter "Bildspeicher" zum Speichern der Daten für wenigstens ein Anzeigebild verwendet, um die Erzeugung und Verarbeitung eines Bildes durch die CPU und das Darstellen des Bildes auf dem Bildschirm gleichzeitig ausführen zu können. Die Größe der Geräte zur Darstellung von Bildern kann verringert werden, besonders die Größe von tragbaren Geräten, wenn die Verarbeitungsoperationen für den Bildspeicher und für die zweidimensionalen Daten in einem einzigen Halbleiterchip in hohem Maße parallel erfolgten.In addition, in image display devices, a so-called "image memory" is used to store the data for at least one display image in order to be able to carry out the generation and processing of an image by the CPU and the display of the image on the screen simultaneously. The size of image display devices can be reduced, especially the size of portable devices, if the processing operations for the image memory and for the two-dimensional data are carried out in a highly parallel manner in a single semiconductor chip.

Gemäß einem ersten Aspekt der vorliegenden Erfindung wird eine integrierte Halbleiterschaltung geschaffen mitAccording to a first aspect of the present invention, an integrated semiconductor circuit is provided with

einem Speicherzellenarray (MAR) mit einer Anzahl von Datenleitungen (DE), einer Anzahl von Wortleitungen (W1 bis W3), die die Datenleitungen (DE) schneiden, und einer Anzahl von Speicherzellen, die an gewünschten Schnittstellen zwischen den Datenleitungen (DE) und den (W1 bis W3) angeordnet sind;a memory cell array (MAR) having a number of data lines (DE), a number of word lines (W1 to W3) intersecting the data lines (DE), and a number of memory cells arranged at desired interfaces between the data lines (DE) and the (W1 to W3);

einer Paralleldatenübertragungsschaltung (TRC) zur parallelen Übertragung einer Anzahl von Daten von der Anzahl von Datenleitungen (DE); und mita parallel data transmission circuit (TRC) for parallel transmission of a number of data from the number of data lines (DE); and with

einer Anzahl von Verarbeitungsschaltungen (PE1 bis PEn) zur Aufnahme der von der Paralleldatenübertragungsschaltung (TRC) übertragenen Anzahl von Daten als Eingangssignale,a number of processing circuits (PE1 to PEn) for receiving the number of data transmitted by the parallel data transmission circuit (TRC) as input signals,

wobei die Paralleldatenübertragungsschaltung (TRC) so angeordnet ist, daß sie die Datenleitungen (DG) mit den Verarbeitungsschaltungen (PE1 bis PEn) in einer Folge verbindet, die beinhaltetwherein the parallel data transmission circuit (TRC) is arranged to connect the data lines (DG) to the processing circuits (PE1 to PEn) in a sequence which includes

i) eine erste Verbindungsanordnung, in der jede Datenleitung mit einer ersten entsprechenden Verarbeitungsschaltung verbunden ist, undi) a first connection arrangement in which each data line is connected to a first corresponding processing circuit, and

ii) eine zweite Verbindungsanordnung, in der jede Datenleitung mit einer zweiten entsprechenden Verarbeitungsschaltung verbunden ist;ii) a second connection arrangement in which each data line is connected to a second corresponding processing circuit;

wobei die erste und die zweite entsprechende Verarbeitungsschaltung für jede Datenleitung benachbart sind und die jeweiligen Leitungen, mit denen jede Verarbeitungsschaltung in der ersten und der zweiten Verbindungsanordnung verbunden ist, nebeneinanderliegen.wherein the first and second corresponding processing circuits for each data line are adjacent, and the respective lines to which each processing circuit is connected in the first and second connection arrangements are adjacent to one another.

Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird eine integrierte Halbleiterschaltung geschaffen mitAccording to a second aspect of the present invention, an integrated semiconductor circuit is provided with

einem Speicherzellenarray (MAR) mit einer Anzahl von Datenleitungsgruppen (DG), einer Anzahl von Wortleitungen (W1 bis W3), die die Datenleitungsgruppen (DG) schneiden, und einer Anzahl von Speicherzellen, die an gewünschten Schnittstellen zwischen den Datenleitungsgruppen (DG) und den Wortleitungen (W1 bis W3) angeordnet sind;a memory cell array (MAR) having a number of data line groups (DG), a number of word lines (W1 to W3) intersecting the data line groups (DG), and a number of memory cells arranged at desired interfaces between the data line groups (DG) and the word lines (W1 to W3);

einer Paralleldatenübertragungsschaltung (TRC) zur parallelen Übertragung einer Anzahl von Datengruppen von der Anzahl von Datenleitungsgruppen (DG); unda parallel data transmission circuit (TRC) for parallel transmission of a number of data groups from the number of data line groups (DG); and

eine Anzahl von Verarbeitungsschaltungen (PE1 bis PEn) zur Aufnahme der von der Paralleldatenübertragungsschaltung (TRC) übertragenen Anzahl von Datengruppen als Eingangssignale;a number of processing circuits (PE1 to PEn) for receiving the number of data groups transmitted by the parallel data transmission circuit (TRC) as input signals;

wobei die Paralleldatenübertragungsschaltung (TRC) so angeordnet ist, daß sie die Datenleitungsgruppen (DG) mit den Verarbeitungsschaltungen (PE1 bis PEn) in einer Folge verbindet, die beinhaltetwherein the parallel data transmission circuit (TRC) is arranged to connect the data line groups (DG) to the processing circuits (PE1 to PEn) in a sequence which includes

i) eine erste Verbindungsanordnung, in der jede Datenleitungsgruppe mit einer ersten entsprechenden Verarbeitungsschaltung verbunden ist; undi) a first connection arrangement in which each data line group is connected to a first corresponding processing circuit; and

ii) eine zweite Verbindungsanordnung, in der jede Datenleitungsgruppe mit einer zweiten entsprechenden Verarbeitungsschaltung verbunden ist;ii) a second connection arrangement in which each data line group is connected to a second corresponding processing circuit;

wobei die erste und die zweite entsprechende Verarbeitungsschaltung für jede Datenleitungsgruppe benachbart sind und die jeweiligen Leitungen, mit denen jede Verarbeitungsschaltung in der ersten und der zweiten Verbindungsanordnung verbunden ist, nebeneinanderliegen.wherein the first and second corresponding processing circuits for each data line group are adjacent and the respective lines to which each processing circuit connected in the first and second connection arrangements, lie next to each other.

Gemäß einem dritten Aspekt der vorliegenden Erfindung wird eine integrierte Halbleiterschaltung geschaffen mitAccording to a third aspect of the present invention, an integrated semiconductor circuit is provided with

einem ersten und einem zweiten Speicherzellenarray (MAR 1 und MAR 2), jedes mit einer Anzahl von Datenleitungen, einer Anzahl von Wortleitungen, die die Datenleitungen schneiden, und einer Anzahl von Speicherzellen, die an gewünschten Schnittstellen zwischen den Datenleitungen und den Wortleitungen (W1 bis W3) angeordnet sind;a first and a second memory cell array (MAR 1 and MAR 2), each having a number of data lines, a number of word lines intersecting the data lines, and a number of memory cells arranged at desired interfaces between the data lines and the word lines (W1 to W3);

einer ersten Paralleldatenübertragungsschaltung (TRC 1) zur parallelen Übertragung einer Anzahl erster Daten von der Anzahl von Datenleitungen des ersten Speicherzellenarrays (MAR 1);a first parallel data transfer circuit (TRC 1) for parallel transfer of a number of first data from the number of data lines of the first memory cell array (MAR 1);

einer zweiten Paralleldatenübertragungsschaltung (TRC 2) zur parallelen Übertragung einer Anzahl zweiter Daten von der Anzahl von Datenleitungen des zweiten Speicherzellenarrays (MAR 2); unda second parallel data transfer circuit (TRC 2) for parallel transfer of a number of second data from the number of data lines of the second memory cell array (MAR 2); and

einer Anzahl von Verarbeitungsschaltungen (PE1 bis PEn) zur Aufnahme der ersten und der zweiten Anzahl von Daten von der ersten und der zweiten Paralleldatenübertragungsschaltung (TRC 1 und TRC 2);a plurality of processing circuits (PE1 to PEn) for receiving the first and second plurality of data from the first and second parallel data transfer circuits (TRC 1 and TRC 2);

wobei die erste Paralleldatenübertragungsschaltung (TRC 1) so angeordnet ist, daß sie die Datenleitungen des ersten Speicherzellenarrays (MAR 1) mit den Verarbeitungsschaltungen (PE1 bis PEn) in einer Folge verbindet, die beinhaltetwherein the first parallel data transfer circuit (TRC 1) is arranged to connect the data lines of the first memory cell array (MAR 1) to the processing circuits (PE1 to PEn) in a sequence that includes

i) eine erste Verbindungsanordnung, in der jede Datenleitung des ersten Speicherzellenarrays (MAR 1) mit einer entsprechenden Verarbeitungsschaltung verbunden ist, undi) a first connection arrangement in which each data line of the first memory cell array (MAR 1) is connected to a corresponding processing circuit, and

ii) eine zweite Verbindungsanordnung, in der jede Datenleitung des ersten Speicherzellenarrays (MAR 1) mit einer anderen entsprechenden Verarbeitungsschaltung verbunden ist;ii) a second connection arrangement in which each data line of the first memory cell array (MAR 1) is connected to another corresponding processing circuit;

wobei die eine und die andere entsprechende Verarbeitungsschaltung für jede Datenleitung des ersten Speicherzellenarrays (MAR 1) benachbart sind und die jeweiligen Leitungen, mit denen jede Verarbeitungsschaltung in der ersten und der zweiten Verbindungsanordnung verbunden ist, nebeneinanderliegen; undwherein the one and the other corresponding processing circuit for each data line of the first memory cell array (MAR 1) are adjacent and the respective lines to which each processing circuit is connected in the first and second connection arrangements are adjacent to each other; and

wobei die zweite Paralleldatenübertragungsschaltung (TRC 2) so angeordnet ist, daß sie die Datenleitungen des zweiten Speicherzellenarrays (MAR 2) mit den Verarbeitungsschaltungen (PE1 bis PEn) in einer Folge verbindet, die beinhaltetwherein the second parallel data transfer circuit (TRC 2) is arranged to connect the data lines of the second memory cell array (MAR 2) to the processing circuits (PE1 to PEn) in a sequence which includes

i) eine dritte Verbindungsanordnung, in der jede Datenleitung des zweiten Speicherzellenarrays (MAR 2) mit einer entsprechenden Verarbeitungsschaltung verbunden ist; undi) a third connection arrangement in which each data line of the second memory cell array (MAR 2) is connected to a corresponding processing circuit; and

ii) eine vierte Verbindungsanordnung, in der jede Datenleitung des zweiten Speicherzellenarrays (MAR 2) mit einer anderen entsprechenden Verarbeitungsschaltung verbunden ist;ii) a fourth connection arrangement in which each data line of the second memory cell array (MAR 2) is connected to another corresponding processing circuit;

wobei die eine und die andere entsprechende Verarbeitungsschaltung für jede Datenleitung des zweiten Speicherzellenarrays (MAR 2) benachbart sind und die jeweiligen Leitungen, mit denen jede Verarbeitungsschaltung in der ersten und der zweiten Verbindungsanordnung verbunden ist, nebeneinanderliegen.wherein the one and the other corresponding processing circuits for each data line of the second memory cell array (MAR 2) are adjacent and the respective lines to which each processing circuit is connected in the first and second connection arrangements are adjacent to each other.

Gemäß einem vierten Aspekt der vorliegenden Erfindung wird eine integrierte Halbleiterschaltung geschaffen mitAccording to a fourth aspect of the present invention, an integrated semiconductor circuit is provided with

einem ersten und einem zweiten Speicherzellenarray (MAR 1 und MAR 2), jedes mit einer Anzahl von Datenleitungsgruppen, einer Anzahl von Wortleitungen, die die Datenleitungsgruppen schneiden, und einer Anzahl von Speicherzellen, die an gewünschten Schnittstellen zwischen den Datenleitungsgruppen und den Wortleitungen angeordnet sind;a first and a second memory cell array (MAR 1 and MAR 2), each having a number of data line groups, a number of word lines intersecting the data line groups, and a number of memory cells arranged at desired intersections between the data line groups and the word lines;

einer ersten Paralleldatenübertragungsschaltung (TRC 1) zur parallelen Übertragung einer Anzahl erster Datengruppen von der Anzahl von Datenleitungsgruppen des ersten Speicherzellenarrays (MAR 1);a first parallel data transfer circuit (TRC 1) for parallel transfer of a number of first data groups from the number of data line groups of the first memory cell array (MAR 1);

einer zweiten Paralleldatenübertragungsschaltung (TRC 2) zur parallelen Übertragung einer Anzahl zweiter Datengruppen von der Anzahl von Datenleitungsgruppen des zweiten Speicherzellenarrays (MAR 2); unda second parallel data transfer circuit (TRC 2) for parallel transfer of a number of second data groups from the number of data line groups of the second memory cell array (MAR 2); and

einer Anzahl von Verarbeitungsschaltungen (PE1 bis PEn) zur Aufnahme der Anzahl von ersten und zweiten Datengruppen von der ersten und der zweiten Paralleldatenübertragungsschaltung (TRC 1 und TRC 2);a number of processing circuits (PE1 to PEn) for receiving the number of first and second data groups from the first and second parallel data transfer circuits (TRC 1 and TRC 2);

wobei die erste Paralleldatenübertragungsschaltung (TRC 1) so angeordnet ist, daß sie die Datenleitungsgruppen des ersten Speicherzellenarrays (MAR 1) mit den Verarbeitungsschaltungen in einer Folge verbindet, die beinhaltetwherein the first parallel data transfer circuit (TRC 1) is arranged to connect the data line groups of the first memory cell array (MAR 1) to the processing circuits in a sequence which includes

i) eine erste Verbindungsanordnung, in der jede Datenleitungsgruppe des ersten Speicherzellenarrays (MAR 1) mit einer entsprechenden Verarbeitungsschaltung verbunden ist; undi) a first connection arrangement in which each data line group of the first memory cell array (MAR 1) is connected to a corresponding processing circuit; and

ii) eine zweite Verbindungsanordnung, in der jede Datenleitungsgruppe des ersten Speicherzellenarrays (MAR 1) mit einer anderen entsprechenden Verarbeitungsschaltung verbunden ist;ii) a second connection arrangement in which each data line group of the first memory cell array (MAR 1) is connected to another corresponding processing circuit;

wobei die eine und die andere entsprechende Verarbeitungsschaltung für jede Datenleitungsgruppe des ersten Speicherzellenarrays (MAR 1) benachbart sind und die jeweiligen Leitungen, mit denen jede Verarbeitungsschaltung in der ersten und der zweiten Verbindungsanordnung verbunden ist, nebeneinanderliegen; undwherein the one and the other corresponding processing circuits for each data line group of the first memory cell array (MAR 1) are adjacent and the respective lines to which each processing circuit is connected in the first and second connection arrangements are adjacent to each other; and

wobei die zweite Paralleldatenübertragungsschaltung (TRC 2) so angeordnet ist, daß sie die Datenleitungsgruppen des zweiten Speicherzellenarrays (MAR 2) mit den Verarbeitungsschaltungen in einer Folge verbindet, die beinhaltetwherein the second parallel data transfer circuit (TRC 2) is arranged to connect the data line groups of the second memory cell array (MAR 2) to the processing circuits in a sequence which includes

i) eine dritte Verbindungsanordnung, in der jede Datenleitung des zweiten Speicherzellenarrays (MAR 2) mit einer entsprechenden Verarbeitungsschaltung verbunden ist; undi) a third connection arrangement in which each data line of the second memory cell array (MAR 2) is connected to a corresponding processing circuit; and

ii) eine vierte Verbindungsanordnung, in der jede Datenleitungsgruppe des zweiten Speicherzellenarrays (MAR 2) mit einer anderen entsprechenden Verarbeitungsschaltung verbunden ist;ii) a fourth connection arrangement in which each data line group of the second memory cell array (MAR 2) is connected to another corresponding processing circuit;

wobei die eine und die andere entsprechende Verarbeitungsschaltung für jede Datenleitungsgruppe des zweiten Speicherzellenarrays (MAR 2) benachbart sind und die jeweiligen Leitungen, mit denen jede Verarbeitungsschaltung in der ersten und der zweiten Verbindungsanordnung verbunden ist, nebeneinanderliegen.wherein the one and the other corresponding processing circuits for each data line group of the second memory cell array (MAR 2) are adjacent and the respective lines to which each processing circuit is connected in the first and second connection arrangements are adjacent to each other.

Da die Bereiche der Datenleitungen der zweidimensionalen Speicherarrays, auf die benachbarte Verarbeitungsschaltungen zugreifen, überlappen können, ist es möglich, eine Filteroperation für ein Bild durch Berechnen des Wertes eines Pixels aus dem Wert eines dem ersten Pixel benachbarten Pixels auszurechnen. Bei einem 3 · 3-Filter sind zum Beispiel die zweidimensional angeordneten umgebenden 3 · 3-Eingangspixel erforderlich, um für ein Ausgangspixel ein Ergebnis zu erhalten, und die Filteroperation kann in Zeilenrichtung dadurch ausgeführt werden, daß die benachbarten Pixel der gleichen Zeile zu einer Verarbeitungsschaltung gegeben werden. Wenn darüberhinaus die Verarbeitungsschaltung die Verarbeitungsoperation mittels einer Anzahl von Datengruppen ausführen kann, die auf einer der erwähnten Anzahl von Datenleitungsgruppen durch Auswahl von zwei oder mehr Wortleitungen ausgelesenen werden, kann die Filteroperation dadurch ausgeführt werden, daß dasjenige der 3 · 3-Eingangspixel, das senkrecht zur Zeilenrichtung liegt, in eine Verarbeitungsschaltung eingegeben wird. Im Ergebnis kann die Filteroperation durch Eingabe der 3 · 3 Pixel in eine Verarbeitungsschaltung ausgeführt werden. Da darüberhinaus die benachbarten Verarbeitungsschaltungen überlappende Bereiche für die Datenleitungen aufweisen, auf die sie durch die Paralleldatenübertragungsschaltung zugreifen können, kann die Konvolutionsoperation und die Verarbeitungsoperation unter Verwendung der zweidimensionalen Daten des 3 · 3-Filters oder dergleichen von der Anzahl von Verarbeitungsschaltungen parallel ausgeführt werden,Since the areas of the data lines of the two-dimensional memory arrays accessed by adjacent processing circuits may overlap, it is possible to perform a filtering operation for an image by calculating the value of a pixel from the value of a pixel adjacent to the first pixel. For example, in a 3 × 3 filter, the two-dimensionally arranged surrounding 3 × 3 input pixels are required to obtain a result for an output pixel, and the filtering operation can be carried out in the row direction by supplying the adjacent pixels of the same row to a processing circuit. Moreover, if the processing circuit can perform the processing operation by means of a plurality of data groups read out on one of the aforementioned plurality of data line groups by selecting two or more word lines, the filtering operation can be carried out by supplying the one of the 3 × 3 input pixels which is perpendicular to the row direction to a processing circuit. As a result, the filtering operation can be carried out by supplying the 3 × 3 pixels to a processing circuit. In addition, since the adjacent processing circuits have overlapping areas for the data lines that they can access through the parallel data transfer circuit, the convolution operation and the processing operation can be performed using the two-dimensional data of the 3 x 3 filter or the like are executed in parallel by the number of processing circuits,

In der Zeichnung zeigt:In the drawing shows:

[Fig. 1][Fig.1]

Eine Ausführungsform für den Aufbau (d. h. eines 3 · 3-Raumfilters) einer integrierten Halbleiterschaltung gemäß der vorliegenden Erfindung.An embodiment for the structure (i.e., a 3 x 3 spatial filter) of a semiconductor integrated circuit according to the present invention.

[Fig. 2][Fig.2]

Eine bekannte integrierte Halbleiterschaltung mit einem Zeilenspeicher.A well-known semiconductor integrated circuit with a line memory.

[Fig. 3][Fig.3]

Eine Ausführungsform für den Aufbau (d. h. eines 5 · 5-Raumfilters) einer integrierten Halbleiterschaltung gemäß der vorliegenden Erfindung.An embodiment for the structure (i.e., a 5 x 5 spatial filter) of a semiconductor integrated circuit according to the present invention.

[Fig. 4][Fig.4]

Eine Ausführungsform für einen ersten Aufbau zum Vergrößern des Layoutabstandes der Verarbeitungsschaltung bei der Ausführungsform der Fig. 1.An embodiment of a first structure for increasing the layout pitch of the processing circuit in the embodiment of Fig. 1.

[Fig. 5][Fig.5]

Eine Ausführungsform für den Aufbau einer Paralleldatenübertragungsschaltung bei der Ausführungsform der Fig. 4.An embodiment for the construction of a parallel data transmission circuit in the embodiment of Fig. 4.

[Fig. 6][Fig.6]

Eine Ausführungsform für ein Verfahren zum Steuern der Paralleldatenübertragungsschaltung bei den Ausführungsformen der Fig. 4 und 5.An embodiment of a method for controlling the parallel data transfer circuit in the embodiments of Figs. 4 and 5.

[Fig. 7][Fig.7]

Eine zweite Ausführungsform für einen Aufbau zum Vergrößern des Layoutabstandes der Verarbeitungsschaltung bei der Ausführungsform der Fig. 1.A second embodiment of a structure for increasing the layout pitch of the processing circuit in the embodiment of Fig. 1.

[Fig. 8][Fig.8]

Eine Ausführungsform für den Aufbau einer Paralleldatenübertragungsschaltung bei der Ausführungsform der Fig. 7.An embodiment for the construction of a parallel data transmission circuit in the embodiment of Fig. 7.

[Fig. 9][Fig.9]

Eine Ausführungsform für ein Verfahren zum Steuern der Paralleldatenübertragungsschaltung bei den Ausführungsformen der Fig. 7 und 8.An embodiment of a method for controlling the parallel data transfer circuit in the embodiments of Figs. 7 and 8.

[Fig. 10][Fig.10]

Eine Ausführungsform für den Aufbau einer Bewegungsvektor-Verarbeitungsschaltung gemäß der vorliegenden Erfindung.An embodiment for constructing a motion vector processing circuit according to the present invention.

[Fig. 11][Fig.11]

Eine Ausführungsform für den Aufbau einer Minimaldistanz-Verarbeitungsschaltung für die Ausführungsform der Fig. 10.An embodiment for the construction of a minimum distance processing circuit for the embodiment of Fig. 10.

Die Fig. 1 zeigt eine Ausführungsform für eine erfindungsgemäße integrierte Halbleiterschaltung, das heißt für den Aufbau einer Vorrichtung zum Verarbeiten von Bilddaten, die in Echtzeit eingegeben werden, durch ein 3 · 3-Raumfilter. In der Fig. 1 ist nicht nur der Aufbau der vorliegenden Ausführungsform gezeigt, sondern es sind auch die Entsprechungen zwischen den Pixeln eines Bildblocks und dem Inhalt der Speicherzellen der Vorrichtung sowie ein Verfahren zum Steuern einer Paralleldatenübertragungsschaltung dargestellt. Gemäß der vorliegenden Ausführungsform können die Raumfilter für eine Zeile des Ausgangsbilds parallel verarbeitet werden. Die vorliegende Ausführungsform ist wie gezeigt so aufgebaut, daß sie umfaßt: Einen Speicher SAM1 mit seriellem Zugriff zum Speichern der Eingangspixel Fxy einer Zeile und zum parallelen Einschreiben dieser Pixel in ein zweidimensionales Speicherarray MAR; das zweidimensionale Speicherarray MAR zum Speichern der Werte der Pixel für drei Zeilen, die vom Speicher SAM1 mit seriellem Zugriff ausgegeben werden; ein Leseverstärker 5A zum parallelen Auslesen und zum Festhalten der Werte der Pixel einer Zeile aus dem zweidimensionalen Speicherarray MAR; eine Paralleldatenübertragungsschaltung TRC zum parallelen Übertragen der ausgelesenen Werte zu einer Gruppe von Verarbeitungsschaltungen; einen Datenspeicher DM zum Speichern von Filterkoeffizienten; und die gruppierten Verarbeitungsschaltungen PE1, PE2, - - - PEn zum parallelen Ausführen von Multiplikations/Additionsoperationen. Die Operationen der vorliegenden Ausführungsform werden im folgenden anhand der Fig. 1 beschrieben.Fig. 1 shows an embodiment of a semiconductor integrated circuit according to the present invention, that is, the structure of an apparatus for processing image data input in real time by a 3 x 3 spatial filter. In Fig. 1, not only the structure of the present embodiment is shown, but also the correspondences between the pixels of an image block and the contents of the memory cells of the apparatus and a method of controlling a parallel data transfer circuit are shown. According to the present embodiment, the spatial filters for one line of the output image can be processed in parallel. The present embodiment is constructed as shown to include: a serial access memory SAM1 for storing the input pixels Fxy of one line and for writing these pixels in parallel into a two-dimensional memory array MAR; the two-dimensional memory array MAR for storing the values of the pixels for three lines output from the serial access memory SAM1; a sense amplifier 5A for reading out and holding the values of the pixels of one line from the two-dimensional memory array MAR in parallel; a parallel data transfer circuit TRC for transferring the read values to a group of processing circuits in parallel; a data memory DM for storing filter coefficients; and the grouped processing circuits PE1, PE2, - - - PEn for carrying out multiplication/addition operations in parallel. The operations of the present embodiment will be described below with reference to Fig. 1.

Zuerst werden die Eingangsbilder, die aus Daten mit P Bit zusammengesetzt sind, seriell in den Speicher SAM1 mit seriellem Zugriff eingegeben. Die Eingangsbilder werden, wenn die Pixelwerte F11, F12, - - - F1k der ersten Zeile gespeichert sind, parallel in eine Wortleitung W 1 des zweidimensionalen Speicherarrays MAR eingeschrieben. Daraufhin werden gleichermaßen die Pixelwerte der zweiten und dritten Zeile des Eingangsbildes jedesmal dann in Wortleitungen W2 und W3 eingeschrieben, wenn sie im Speicher SAM1 mit seriellem Zugriff gespeichert sind. Im zweidimensionalen Speicherarray MAR werden so die Daten der drei Zeilen vorbereitet, die zum Berechnen der Pixelwerte des Ausgangsbildes erforderlich sind. Die Entsprechung zwischen dem Datenblock des Eingangsbildes und den Daten auf den Wortleitungen des zweidimensionalen Speicherarrays MAR ist in der Fig. 1 links unten dargestellt.First, the input images, composed of P-bit data, are serially input into the serial access memory SAM1. The input images are written in parallel into a word line W1 of the two-dimensional memory array MAR when the pixel values F11, F12, - - - F1k of the first line are stored. Then, the pixel values of the second and third lines of the input image are written in the same way into word lines W2 and W3 each time they are stored in the serial access memory SAM1. In this way, the two-dimensional memory array MAR prepares the data of the three lines required to calculate the pixel values of the output image. The correspondence between the data block of the input image and the data on the word lines of the two-dimensional memory array MAR is shown in the bottom left of Fig. 1.

Während die Daten der nächsten Zeile in den Speicher SAM1 mit seriellem Zugriff eingeschrieben werden, werden parallel die Werte R11, R12, - - - und R1k der Pixel der zweiten Zeile des Ausgangsbildes berechnet. Die Steuerung der Paralleldatenübertragungsschaltung erfolgt dazu durch neun Verarbeitungszyklen, wie es in der Fig. 1 rechts unten gezeigt ist. Zuerst werden im ersten Zyklus die Eingangsbilder einer Zeile, die in der Wortleitung W des zweidimensionalen Speicherarrays MAR gespeichert sind, durch eine Datenleitungsgruppe DG im Leseverstärker SA ausgelesen und festgehalten. Einer (L) der Schalter L, C und R eines Selektors SEL der aus solchen Selektoren aufgebauten Paralleldatenübertragungsschaltung TRC ist dabei auf EIN geschaltet. Im Ergebnis werden durch die Paralleldatenübertragungsschaltung TRC das Eingangspixel F 11 zur Verarbeitungsschaltung PE1 übertragen, das Eingangspixel F12 zur Verarbeitungsschaltung PE2, - - und das Eingangspixel F1k-2 zur Verarbeitungsschaltung PEn. Gleichzeitig damit wird ein Gewichtungskoeffizient C-1-1 aus dem Datenspeicher DM ausgelesen und mit dem Eingangspixel multipliziert, das der Verarbeitungsschaltung eingegeben wird. Daraufhin wird im zweiten Zyklus der Schalter C im Selektor SEL auf EIN geschaltet, um durch die Paralleldatenübertragungsschaltung das Eingangspixel F 12 in die Verarbeitungsschaltung PE1 einzugeben, das Eingangspixel F13 in die Verarbeitungsschaltung PE2, - - - und das Eingangspixel F1k-1 in die Verarbeitungsschaltung PEn, und diese Eingangspixel werden mit dem Gewichtungskoeffizienten C-10 multipliziert. Im dritten Zyklus wird der Schalter R im Selektor SEL auf EIN geschaltet, um durch die Paralleldatenübertragungsschaltung das Eingangspixel F13 in die Verarbeitungsschaltung PE1 einzugeben, das Eingangspixel F14 in die Verarbeitungsschaltung PE2, - - - und das Eingangspixel F1k in die Verarbeitungsschaltung PEn, und diese Eingangspixel werden mit dem Gewichtungskoeffizienten C-11 multipliziert. Nachdem so die in der Wortleitung W1 des zweidimensionalen Speicherarrays MAR gespeicherten Eingangsbilder verwendet wurden, wird die Wortleitung W2 ausgewählt, um die Eingangsbilder einer Zeile auszulesen und im Leseverstärker festzuhalten. Im vierten Zyklus wird dann der Schalter L im Selektor SEL auf EIN geschaltet, um das Eingangspixel F21 in die Verarbeitungsschaltung PE1 einzugeben, das Eingangspixel F22 in die Verarbeitungsschaltung PE2, - - - und das Eingangspixel F2k-2 in die Verarbeitungsschaltung PEn. Diese Eingangspixel werden mit dem Gewichtungskoeffizienten CO-1 multipliziert, und die Produkte werden zu den vorher berechneten Werten hinzuaddiert. Danach wird im fünften Zyklus der Schalter C im Selektor SEL auf EIN geschaltet, um das Eingangspixel F22 in die Verarbeitungsschaltung PE1 einzugeben, das Eingangspixel F23 in die Verarbeitungsschaltung PE2, - - - und das Eingangspixel F2k-1 in die Verarbeitungsschaltung PEn. Diese Eingangspixel werden mit dem Gewichtungskoeffizienten C00 multipliziert, und die Produkte werden zu den vorher berechneten Werten hinzuaddiert. Gleichermaßen wird im sechsten Zyklus der Schalter R im Selektor SEL auf EIN geschaltet, um das Eingangspixel F23 in die Verarbeitungsschaltung PE1 einzugeben, das Eingangspixel F24 in die Verarbeitungsschaltung PE2, - - - und das Eingangspixel F2k in die Verarbeitungsschaltung PEn. Diese Eingangspixel werden mit dem Gewichtungskoeffizienten C01 multipliziert, und die Produkte werden zu den vorher berechneten Werten hinzuaddiert. In den siebten bis neunten Zyklen werden durch Auswahl der Wortleitung W3 mit ähnlichen Berechnungen die Werte R22, R23, - - - und R2k1 der Pixel der zweiten Zeile des Ausgangsbildes in den Verarbeitungsschaltungen PE1, PE2, - - - und PEn bestimmt. Diese Pixelwerte R22, R23, - - -, R2k-1 werden parallel zu dem Speicher SAM2 mit seriellem Zugriff übertragen und aufeinanderfolgend ausgegeben. Das Endpixel hat nicht notwendigerweise ein Eingangspixel und kann wie gezeigt so übertragen werden wie es ist. Um die Ausgangsbilder der folgenden einen Zeile zu verarbeiten, können ähnliche Operationen wiederholt werden. Das heißt, wenn die Pixelinformation einer Zeile im Speicher SAM1 mit seriellem Zugriff gespeichert ist, wird sie zu der Wortleitung des zweidimensionalen Speicherarrays übertragen, in die zuletzt neu eingeschrieben wurde, so daß das Ausgangsbild einer Zeile verarbeitet wird, während die Pixelinformation der folgenden Zeile in den Speicher SAM1 mit seriellem Zugriff eingeschrieben wird. Bei der vorliegenden Ausführungsform können daher die 3 · 3-Raumfilteroperationen für eine Anzahl von Bildern auf der gleichen Zeile des Ausgangsbildes parallel und in Echtzeit verarbeitet werden. Die einzelnen Verarbeitungsschaltungen können die Verarbeitungsoperationen und die Datenübertragungen in der Zeitspanne ausführen, in der die Bilder einer Zeile eingegeben werden. Im Ergebnis ist die für die Verarbeitungsoperationen zur Verfügung stehende Zeitspanne länger als bei den bekannten Verfahren, bei denen die Verarbeitungsoperation für jede Zeitspanne ausgeführt wird, in der ein Pixel eingegeben wird. Mit anderen Worten kann auch dann eine Echtzeitverarbeitung erhalten werden, wenn die Eingangspixel eine hohe Frequenz aufweisen.While the data of the next line are written into the serial access memory SAM1, the values R11, R12, - - - and R1k of the pixels of the second line of the output image are calculated in parallel. The control of the parallel data transfer circuit This is done through nine processing cycles, as shown in the bottom right of Fig. 1. First, in the first cycle, the input images of a line stored in the word line W of the two-dimensional memory array MAR are read out and held by a data line group DG in the sense amplifier SA. One (L) of the switches L, C and R of a selector SEL of the parallel data transfer circuit TRC constructed from such selectors is switched to ON. As a result, the parallel data transfer circuit TRC transfers the input pixel F 11 to the processing circuit PE1, the input pixel F12 to the processing circuit PE2, - - and the input pixel F1k-2 to the processing circuit PEn. Simultaneously, a weighting coefficient C-1-1 is read out from the data memory DM and multiplied by the input pixel that is input to the processing circuit. Then, in the second cycle, the switch C in the selector SEL is turned ON to input the input pixel F12 to the processing circuit PE1, the input pixel F13 to the processing circuit PE2, - - - and the input pixel F1k-1 to the processing circuit PEn through the parallel data transfer circuit, and these input pixels are multiplied by the weighting coefficient C-10. In the third cycle, the switch R in the selector SEL is turned ON to input the input pixel F13 to the processing circuit PE1, the input pixel F14 to the processing circuit PE2, - - - and the input pixel F1k to the processing circuit PEn through the parallel data transfer circuit, and these input pixels are multiplied by the weighting coefficient C-11. After thus using the input images stored in the word line W1 of the two-dimensional memory array MAR, the word line W2 is selected to read out the input images of one line and hold them in the sense amplifier. Then, in the fourth cycle, the switch L in the selector SEL is turned ON to input the input pixel F21 to the processing circuit PE1, the input pixel F22 to the processing circuit PE2, - - - and the input pixel F2k-2 to the processing circuit PEn. These input pixels are multiplied by the weighting coefficient CO-1 and the products are added to the previously calculated values. Thereafter, in the fifth cycle, the switch C in the selector SEL is turned ON to input the input pixel F22 to the processing circuit PE1, the input pixel F23 to the processing circuit PE2, - - - and the input pixel F2k-1 to the processing circuit PEn. These input pixels are multiplied by the weighting coefficient CO00 and the products are added to the previously calculated values. Similarly, in the sixth cycle, the switch R in the selector SEL is turned ON to input the input pixel F23 into the processing circuit PE1, the input pixel F24 to the processing circuit PE2, - - - and the input pixel F2k to the processing circuit PEn. These input pixels are multiplied by the weighting coefficient C01 and the products are added to the previously calculated values. In the seventh to ninth cycles, by selecting the word line W3, the values R22, R23, - - - and R2k1 of the pixels of the second line of the output image in the processing circuits PE1, PE2, - - - and PEn are determined with similar calculations. These pixel values R22, R23, - - -, R2k-1 are transferred in parallel to the serial access memory SAM2 and output sequentially. The final pixel does not necessarily have an input pixel and may be transferred as it is as shown. To process the output images of the following one line, similar operations may be repeated. That is, when the pixel information of one line is stored in the serial access memory SAM1, it is transferred to the word line of the two-dimensional memory array into which it was rewritten last, so that the output image of one line is processed while the pixel information of the following line is written into the serial access memory SAM1. In the present embodiment, therefore, the 3 × 3 spatial filtering operations for a number of images on the same line of the output image can be processed in parallel and in real time. The individual processing circuits can carry out the processing operations and the data transfers in the period in which the images of one line are input. As a result, the time available for the processing operations is longer than in the conventional methods in which the processing operation is carried out for each period in which a pixel is input. In other words, real time processing can be obtained even when the input pixels have a high frequency.

Wie beschrieben können darüberhinaus bei der vorliegenden Ausführungsform die Informationen, die in einem Leseverstärker festgehalten werden, über die Paralleldatenübertragungsschaltung TRC zu verschiedenen Verarbeitungsschaltungen übertragen werden. Im Ergebnis können die zweidimensionalen Filteroperationen oder Konvolutionsoperationen parallel ausgeführt werden, ohne daß während der Operationen die Daten, die im Leseverstärker festgehalten werden, zwischen den Leseverstärkern oder zwischen den Verarbeitungsschaltungen hin und her bewegt oder übertragen werden. Im Ergebnis wird keine aufwendige Schaltung für Übertragungsoperationen zwischen den Leseverstärkern oder zwischen den Verarbeitungsschaltungen benötigt, so daß eine hochintegrierte Schaltung mit niedrigem Energieverbrauch realisiert werden kann. Bei der vorliegenden Ausführungsform sind, wie in der Fig. 1 gezeigt, die Verarbeitungsschaltungen direkt unterhalb des zweidimensionalen Speicherarrays MAR angeordnet. Im Ergebnis kann der Datenübertragungsweg vom zweidimensionalen Speicherarray zu den Verarbeitungsschaltungen auf eine sehr kurze, gleichbleibende Distanz verkürzt werden. Zusätzlich zu dem Vorteil, daß die Verzögerungszeit für die Übertragung kurz ist, wird so der weitere Vorteil erhalten, daß die Verarbeitungsschaltungen weniger verteilt sind und so leicht synchronisiert werden können. Da darüberhinaus die Paralleldatenübertragungsschaltung und die Verarbeitungsschaltungen neben und direkt unter dem Speicherarray angeordnet sind, können sie hoch integriert werden, um den Energieverbrauch durch die Übertragung der Pixelinformationen zu verringern.As described above, in the present embodiment, moreover, the information held in a sense amplifier can be transferred to various processing circuits via the parallel data transfer circuit TRC. As a result, the two-dimensional filtering operations or convolution operations can be carried out in parallel without moving or transferring the data held in the sense amplifier between the sense amplifiers or between the processing circuits during the operations. As a result, no complex circuit is required for transfer operations between the sense amplifiers or between the processing circuits, so that a highly integrated circuit with low power consumption can be realized. In the present embodiment, as shown in Fig. 1, the processing circuits are arranged directly below of the two-dimensional memory array MAR. As a result, the data transmission path from the two-dimensional memory array to the processing circuits can be shortened to a very short, constant distance. In addition to the advantage that the delay time for transmission is short, this provides the further advantage that the processing circuits are less distributed and can thus be easily synchronized. In addition, since the parallel data transmission circuit and the processing circuits are arranged next to and directly below the memory array, they can be highly integrated to reduce the power consumption by transmitting the pixel information.

Die Ausführungsform der Fig. 1 war auf eine Vorrichtung für 3 · 3-Filterberechnungen gerichtet. In der Paralleldatenübertragungsschaltung werden daher eine Verarbeitungsschaltung und die Datenleitungen für drei Pixel miteinander verbunden, und der Leseverstärker und die Verarbeitungsschaltungen sind mit einem Überlapp von zwei Pixeln zwischen benachbarten Verarbeitungsschaltungen verbunden. Bei der Ausführungsform der Fig. 1 können jedoch auch die Verarbeitungsoperationen eines Filters mit einer beliebigen Größe von 3 · 3 oder mehr durch Ändern des Aufbaus der Paralleldatenübertragungsschaltung und des Speicherarrays erhalten werden. Die Fig. 3 zeigt eine Ausführungsform für den Aufbau der Verarbeitungsvorrichtung für einen 5 · 5-Filter. Die vorliegende Ausführungsform ist gegenüber der Ausführungsform der Fig. 1 derart modifiziert, daß die Anzahl der Wortleitungen des zweidimensionalen Speicherarrays MAR auf fünf erhöht ist und daß der Überlapp der Paralleldatenübertragungsschaltung TRC auf vier Pixel erhöht ist. Der Selektor SEL der Paralleldatenübertragungsschaltung TRC ist als ein 5 : 1-Selektor zur Auswahl von Daten mit P Bit aus Daten mit 5P Bit ausgelegt, und es können durch Erhöhen der Kapazität des Datenspeichers die fünfundzwanzig Koeffizienten gespeichert werden, die für den 5 · 5-Filter erforderlich sind. Bei der vorliegenden Ausführungsform können einer Verarbeitungsschaltung die Daten vom Leseverstärker entsprechend den fünf Pixeln zugeführt werden, und die benachbarten Verarbeitungsschaltungen teilen sich die Datenleitungen für vier Pixel der Datenleitungsgruppe. Im Ergebnis können die Verarbeitungsoperationen für den 5 · 5-Filter parallel ausgeführt werden, während die Wortleitungen des zweidimensionalen Speicherarrays wie bei der Ausführungsform der Fig. 1 sequentiell angewählt werden. Bei der vorliegenden Ausführungsform können übrigens nicht nur die Operationen für einen 5 · 5-Filter ausgeführt werden, sondern es läßt sich auch leicht ein 4 · 4-Filter aufbauen, wozu vier der fünf Wortleitungen und vier der fünf Sätze von Verbindungsleitungen verwendet werden, die mit einer Übertragungsschaltung TRC verbunden sind. Gleichermaßen ist es möglich, die Verarbeitungsoperationen für einen 3 · 3-Filter oder einen 2 · 2-Filter auszuführen.The embodiment of Fig. 1 was directed to a device for 3 × 3 filter calculations. In the parallel data transfer circuit, therefore, a processing circuit and the data lines for three pixels are connected to each other, and the sense amplifier and the processing circuits are connected with an overlap of two pixels between adjacent processing circuits. However, in the embodiment of Fig. 1, the processing operations of a filter of an arbitrary size of 3 × 3 or more can be obtained by changing the structure of the parallel data transfer circuit and the memory array. Fig. 3 shows an embodiment for the structure of the processing device for a 5 × 5 filter. The present embodiment is modified from the embodiment of Fig. 1 in such a way that the number of word lines of the two-dimensional memory array MAR is increased to five and that the overlap of the parallel data transfer circuit TRC is increased to four pixels. The selector SEL of the parallel data transfer circuit TRC is designed as a 5:1 selector for selecting P bit data from 5P bit data, and the twenty-five coefficients required for the 5 × 5 filter can be stored by increasing the capacity of the data memory. In the present embodiment, one processing circuit can be supplied with the data from the sense amplifier corresponding to the five pixels, and the adjacent processing circuits share the data lines for four pixels of the data line group. As a result, the processing operations for the 5 × 5 filter can be carried out in parallel while the word lines of the two-dimensional memory array are selected sequentially as in the embodiment of Fig. 1. Incidentally, in the present embodiment, not only the operations for a 5 × 5 filter can be carried out, but also a 4 × 4 filter can be easily constructed by using four of the five word lines and four of the five sets of connecting lines connected to one transfer circuit TRC. Similarly, it is possible to perform the processing operations for a 3 · 3 filter or a 2 · 2 filter.

Bei den Ausführungsformen der Fig. 1 und 3 kann für P Datenleitungen eine Verarbeitungsschaltung vorgesehen werden, wenn der Wert des Pixels durch P Bit ausgedrückt wird. Wenn der Pixelwert zum Beispiel mit einer Genauigkeit von 8 Bit ausgedrückt wird, können die Verarbeitungsschaltungen im Abstand von acht Datenleitungen angeordnet werden. Es kann jedoch schwierig sein, die Verarbeitungsschaltungen so anzuordnen, wenn die Verarbeitungsschaltungen groß sind oder wenn die Datenleitungen des zweidimensionalen Speicherarrays einen geringen Abstand haben.In the embodiments of Figs. 1 and 3, one processing circuit can be provided for P data lines when the value of the pixel is expressed by P bits. For example, when the pixel value is expressed with an accuracy of 8 bits, the processing circuits can be arranged at a pitch of eight data lines. However, it may be difficult to arrange the processing circuits in this way when the processing circuits are large or when the data lines of the two-dimensional memory array are closely spaced.

In diesem Fall kann die in der Fig. 4 gezeigte Ausführungsform verwendet werden. Die Fig. 4 zeigt eine Ausführungsform zum Vergrößern des Layoutabstandes der Verarbeitungsschaltungen der Fig. 1 zum Berechnen des 3 · 3-Filters. Bei der vorliegenden Ausführungsform werden die Eingangsbilder einer Zeile, die in den Speicher SAM1 mit seriellem Zugriff eingegeben werden, durch die Paralleldatenübertragungsschaltung TRC1, die aus Verteilern DIS zusammengesetzt ist, zu einem Register RG1 mit einer Kapazität von drei Zeilen übertragen. Als Folge davon ist der Layoutabstand der Verarbeitungsschaltung dreimal so groß wie bei der Ausführungsform der Fig. 1. Bei der Ausführungsform der Fig. 1 kann eine Verarbeitungsschaltung die Daten von den Datenleitungen von drei Pixeln übertragen, und zwei Übertragungswege in benachbarten Verarbeitungsschaltungen überlappen sich. Bei der vorliegenden Ausführungsform kann demgegenüber eine Verarbeitungsschaltung Daten von den Datenleitungen von neun Pixeln übertragen, und die Paralleldatenübertragungsschaltung ist so aufgebaut, daß die benachbarten Verarbeitungsschaltungen sechs Datenleitungen gemeinsam haben. Die Arbeitsweise der vorliegenden Ausführungsform wird im folgenden anhand der Fig. 4 beschrieben.In this case, the embodiment shown in Fig. 4 can be used. Fig. 4 shows an embodiment for increasing the layout pitch of the processing circuits of Fig. 1 for calculating the 3 x 3 filter. In the present embodiment, the input images of one line input to the serial access memory SAM1 are transferred to a register RG1 having a capacity of three lines through the parallel data transfer circuit TRC1 composed of distributors DIS. As a result, the layout pitch of the processing circuit is three times as large as that of the embodiment of Fig. 1. In the embodiment of Fig. 1, one processing circuit can transfer the data from the data lines of three pixels, and two transfer paths in adjacent processing circuits overlap. In the present embodiment, on the other hand, one processing circuit can transfer data from the data lines of nine pixels, and the parallel data transfer circuit is constructed so that the adjacent processing circuits share six data lines. The operation of the present embodiment will be described below with reference to Fig. 4.

Zuerst werden, wenn die Eingangsbilder der ersten Zeile im Speicher SAM1 mit seriellem Zugriff gespeichert sind, die Schalter L in allen Verteilern DIS auf EIN geschaltet, um die Eingangsbilder parallel in das Register RG1 einzuschreiben. Wenn dann die Eingangsbilder der zweiten Zeile im Speicher SAM1 mit seriellem Zugriff gespeichert sind, werden die Schalter C in allen Verteilern DIS auf EIN geschaltet, um diese Eingangsbilder parallel in das Register RG1 einzuschreiben. Wenn die Eingangsbilder der dritten Zeile im Speicher SAM1 mit seriellem Zugriff gespeichert sind, werden die Schalter C in allen Verteilern DIS auf EIN geschaltet, um diese Eingangsbilder parallel in das Register RG1 einzuschreiben. Die Bilder der aufeinanderfolgenden ersten, zweiten und dritten Zeile werden so in das Register RG1 eingeschrieben und parallel vom Register RG1 über die Datenleitungsgruppe DG zum Register RG2 übertragen. Dann werden im Register RG2 die Pixel der Eingangsbilder für die drei Zeilen vorbereitet, die zum Erstellen der Ausgangsbilder der zweiten Zeile erforderlich sind. Diese Daten werden über die Paralleldatenübertragungsschaltung TRC2 zur Verarbeitungsschaltung übertragen, so daß die Werte der Pixel der zweiten Zeile der Ausgangsbilder bestimmt werden. Die Übertragungs- und Verarbeitungsoperationen an den Daten werden im übrigen ausgeführt, während die Eingangsbilder der vierten Zeile in den Speicher SAM 1 mit seriellem Zugriff eingeschrieben werden. Wenn die Berechnungen der Pixelwerte für die zweite Zeile der Ausgangsbilder beendet sind, so daß die Eingangsbilder der vierten Zeile in den Speicher SAM1 mit seriellem Zugriff eingeschrieben werden können, wird der Schalter L der Verteiler DIS auf EIN geschaltet, um ein Drittel des Inhalts des Registers RG1 zu überschreiben. Da zu diesem Zeitpunkt die Bilder der zweiten, dritten und vierten Zeile der Eingangsbilder im Register RG1 vorbereitet sind, werden sie parallel vom Register RG1 zum Register RG2 übertragen, um die Verarbeitungsoperationen für die Ausgangsbilder der dritten Zeile auszuführen. Wenn diese Operationen jedesmal dann ausgeführt werden, wenn die Eingangsbilder für eine Zeile im Speicher SAM1 mit seriellem Zugriff gespeichert werden, können die Verarbeitungsoperationen für den 3 · 3-Filter fortlaufend parallel ausgeführt werden. Wie bei diesen Operationen die Verarbeitungsoperationen durch Übergeben der Daten vom Register RG2 zu den Verarbeitungsschaltungen ausgeführt werden, wird anhand der Fig. 5 und 6 beschrieben.First, when the input images of the first line are stored in the serial access memory SAM1, the switches L in all the distributors DIS are turned ON to write the input images in parallel to the register RG1. Then, when the input images of the second line are stored in the serial access memory SAM1, the switches C in all the distributors DIS are turned ON to write these input images in parallel to the register RG1. Then, when the input images of the third line are stored in the serial access memory SAM1, the switches C in all the distributors DIS are turned ON to write these input images in parallel to the register RG1. The images of the successive first, second and third lines are thus written in the register RG1 and transferred in parallel from the register RG1 to the register RG2 via the data line group DG. Then, in the register RG2 prepares the pixels of the input images for the three lines required to prepare the output images of the second line. These data are transferred to the processing circuit through the parallel data transfer circuit TRC2 so that the values of the pixels of the second line of the output images are determined. The transfer and processing operations on the data are otherwise carried out while the input images of the fourth line are being written into the serial access memory SAM1. When the calculations of the pixel values for the second line of the output images are completed so that the input images of the fourth line can be written into the serial access memory SAM1, the switch L of the distributor DIS is turned ON to overwrite one-third of the contents of the register RG1. Since at this time the images of the second, third and fourth lines of the input images are prepared in the register RG1, they are transferred in parallel from the register RG1 to the register RG2 to carry out the processing operations for the output images of the third line. If these operations are carried out each time the input images for one line are stored in the serial access memory SAM1, the processing operations for the 3 × 3 filter can be continuously carried out in parallel. In these operations, how the processing operations are carried out by passing the data from the register RG2 to the processing circuits will be described with reference to Figs. 5 and 6.

Die Fig. 5A und 5B zeigen ein Beispiel für den Aufbau der Paralleldatenübertragungsschaltung TRC2 für die Ausführungsform der Fig. 4. Wie in der Fig. 5A gezeigt, sind die Selektoren SEL der Paralleldatenübertragungsschaltung TRC2 in zwei Lagen angeordnet, ihnen werden jeweils drei Steuersignale φLi, φC1 und φRi zugeführt. Jeder Selektor besteht aus drei Schaltern L, C und R, wie es auf der linken Seite der Fig. 5B gezeigt ist. Wenn der Schalter L durch das Steuersignal φLi auf EIN geschaltet wird, wird ein linkes Eingangssignal INL ausgegeben; wenn der Schalter C durch das Steuersignal φCi auf EIN geschaltet wird, wird ein mittleres Eingangssignal INC ausgegeben; und wenn der Schalter R durch das Steuersignal φRi auf EIN geschaltet wird, wird ein rechtes Eingangssignal INR ausgegeben. Diese Schalter können durch eine Parallelverbindung von MOS-Transistoren gebildet werden, wie es auf der rechten Seite der Fig. 5B gezeigt ist. Die Fig. 5A zeigt den Zustand, in dem die Eingangsbilder der ersten, zweiten und dritten Zeile zum Register RG2 übertragen werden. In diesem Zustand sind, wie oben angegeben, die Pixeldaten zum parallelen Erarbeiten der Ausgangsbilder der zweiten Zeile zu der Verarbeitungsschaltung zu übertragen. Die Fig. 6 zeigt die entsprechende zeitliche Ausgabe der Steuersignale. In der Fig. 6 bezeichnen die Buchstaben φL1, φC1 und φR1 sowie φL2, φC2 und φR2 die Steuersignale für die Selektoren SEL, die die Paralleldatenübertragungsschaltung TRC2 bilden. Die Fig. 6 zeigt auch, welche Pixeldaten zu verschiedenen Zeitpunkten zu den linken vier Ausgängen TNO0, TNO1, TNO2 und TNO3 der Paralleldatenübertragungsschaltung TRC2 ausgegeben werden. Wie in der Fig. 5a gezeigt, ist mit der Verarbeitungsschaltung PE1 der Ausgang TNO1 der Paralleldatenübertragungsschaltung TRC verbunden. Aus der Fig. 6 ergibt sich, daß die Pixel F11, F12, F13, F21, F22, - - - und so weiter und die 3 · 3 Pixeldaten um das Pixel F22 in die Verarbeitungsschaltung PE1 eingegeben werden. Gleichermaßen werden die 3 · 3 Pixeldaten um das Pixel F23 in die Verarbeitungsschaltung PE2 eingegeben und die 3 · 3 Pixeldaten um das Pixel F24 in die Verarbeitungsschaltung PE3. Im Ergebnis können die Ausgangsbilder der beiden Zeilen durch die Verarbeitungsschaltungen PE1, PE2, PE3, - - - usw. parallel verarbeitet werden. Die Verarbeitungsoperationen der Ausgangsbilder auf der dritten und den folgenden Zeilen können gleichermaßen ausgeführt werden. Der 3 · 3-Filter kann am linken Ende TNO0 nicht bearbeitet werden, so daß das Ausgangssignal nicht durch die Verarbeitungsschaltung ausgegeben wird, sondern so wie es ist, wie in der Fig. 1. Gemäß der in den Fig. 4, 5 und 6 gezeigten und beschriebenen Ausführungsform ist der Layoutabstand der Verarbeitungsschaltungen vergrößert, und die zweidimensionalen Filteroperationen können für jede Zeile der Ausgangsbilder parallel ausgeführt werden. Auch wenn hier ein 3 · 3-Filter beschrieben wird, kann die vorliegende Erfindung leicht auf die Verarbeitungsoperationen für einen größeren Filter erweitert werden.5A and 5B show an example of the structure of the parallel data transmission circuit TRC2 for the embodiment of Fig. 4. As shown in Fig. 5A, the selectors SEL of the parallel data transmission circuit TRC2 are arranged in two layers, and three control signals φLi, φC1 and φRi are respectively supplied to them. Each selector consists of three switches L, C and R as shown on the left side of Fig. 5B. When the switch L is turned ON by the control signal φLi, a left input signal INL is output; when the switch C is turned ON by the control signal φCi, a middle input signal INC is output; and when the switch R is turned ON by the control signal φRi, a right input signal INR is output. These switches can be formed by a parallel connection of MOS transistors as shown on the right side of Fig. 5B. Fig. 5A shows the state in which the input images of the first, second and third lines are transferred to the register RG2. In this state, as stated above, the pixel data for parallel processing of the output images of the second line are to be transferred to the processing circuit. Fig. 6 shows the corresponding temporal output of the control signals. In Fig. 6, the letters φL1, φC1 and φR1 and φL2, φC2 and φR2 are the control signals for the selectors SEL which form the parallel data transfer circuit TRC2. Fig. 6 also shows which pixel data are output at different times to the left four outputs TNO0, TNO1, TNO2 and TNO3 of the parallel data transfer circuit TRC2. As shown in Fig. 5a, the output TNO1 of the parallel data transfer circuit TRC is connected to the processing circuit PE1. From Fig. 6 it can be seen that the pixels F11, F12, F13, F21, F22, - - - and so on and the 3 x 3 pixel data around the pixel F22 are input to the processing circuit PE1. Similarly, the 3 × 3 pixel data around the pixel F23 is input to the processing circuit PE2, and the 3 × 3 pixel data around the pixel F24 is input to the processing circuit PE3. As a result, the output images of the two lines can be processed in parallel by the processing circuits PE1, PE2, PE3, - - -, etc. The processing operations of the output images on the third and subsequent lines can be carried out similarly. The 3 × 3 filter may not be processed at the left end TNO0, so that the output signal is not output by the processing circuit but as it is, as in Fig. 1. According to the embodiment shown and described in Figs. 4, 5 and 6, the layout pitch of the processing circuits is increased, and the two-dimensional filter operations can be carried out in parallel for each line of the output images. Although a 3 × 3 filter is described here, the present invention can be easily extended to the processing operations for a larger filter.

Die Fig. 7 zeigt eine zweite. Ausführungsform zum Vergrößern des Layoutabstandes der Verarbeitungsschaltungen gegenüber der Vorrichtung der Fig. 1 zum Berechnen des 3 · 3-Filters. In der Fig. 4 wird der größere Layoutabstand durch Anordnen der gleichen Anzahl von Verarbeitungsschaltungen wie bei der Vorrichtung der Fig. 1 über eine dreimal so große Layoutbreite erreicht. Bei der vorliegenden Ausführungsform wird im Gegensatz dazu der Layoutabstand dadurch erhöht, daß die Anzahl von Verarbeitungsschaltungen auf ein Drittel verringert wird, wobei die Verarbeitungsschaltungen mit der gleichen Layoutbreite wie bei der Ausführungsform der Fig. 1 angeordnet werden. Die Fig. 8A und 8B zeigen ein Beispiel für den Aufbau der Paralleldatenübertragungsschaltung TRC1 für die Ausführungsform der Fig. 7. Die Fig. 8A zeigt den Zustand, in dem die Pixelwerte F 11, F 12, - - - und so weiter der ersten Zeile der Eingangsbilder zum Leseverstärker SA übertragen werden. Die Paralleldatenübertragungsschaltung TRC 1 umfaßt eine Art von 5 : 1-Selektoren SEL, um jeweils aus 5P Bit P Bit auszuwählen, wie es in der Fig. 7 gezeigt ist. Die Fig. 8A zeigt eine Ausführungsform, bei der der Selektor SEL der Fig. 7 aus einer Art 2 : 2-Selektor SEL2-1 aufgebaut ist, um aus 2P Bit P Bit auszuwählen. Die Selektoren sind in drei Lagen angeordnet, jedem Selektor SEL2-1 werden die beiden Steuersignale φL1 und φRi zugeführt. Der Selektor SEL2-1 besteht aus den beiden Schaltern L und R, wie es auf der linken Seite der Fig. 8B gezeigt ist. Das linke Eingangssignal INL wird ausgegeben, wenn der Schalter L durch das Steuersignal φLi auf EIN geschaltet wird, und das rechte Eingangssignal INR wird ausgegeben, wenn der Schalter R durch das Steuersignal φRi auf EIN geschaltet wird. Diese Schalter können durch eine Parallelverbindung von MOS-Transistoren gebildet werden, wie es auf der rechten Seite der Fig. 8B gezeigt ist.Fig. 7 shows a second embodiment for increasing the layout pitch of the processing circuits compared with the apparatus of Fig. 1 for calculating the 3 × 3 filter. In Fig. 4, the larger layout pitch is achieved by arranging the same number of processing circuits as in the apparatus of Fig. 1 over a layout width three times as large. In the present embodiment, on the contrary, the layout pitch is increased by reducing the number of processing circuits to one third while arranging the processing circuits with the same layout width as in the embodiment of Fig. 1. Figs. 8A and 8B show an example of the structure of the parallel data transfer circuit TRC1 for the embodiment of Fig. 7. Fig. 8A shows the state in which the pixel values F 11 , F 12 , - - - and so on of the first line of the input images are transferred to the sense amplifier SA. The parallel data transmission circuit TRC 1 comprises a kind of 5:1 selectors SEL for selecting P bits from 5P bits each, as shown in Fig. 7. Fig. 8A shows an embodiment in which the selector SEL of Fig. 7 is constructed of a kind of 2:2 selector SEL2-1 for selecting P bits from 2P bits. The Selectors are arranged in three layers, each selector SEL2-1 is supplied with the two control signals φL1 and φRi. The selector SEL2-1 consists of the two switches L and R as shown on the left side of Fig. 8B. The left input signal INL is output when the switch L is turned ON by the control signal φLi, and the right input signal INR is output when the switch R is turned ON by the control signal φRi. These switches can be formed by a parallel connection of MOS transistors as shown on the right side of Fig. 8B.

Anhand der Fig. 9 wird im folgenden die Arbeitsweise der Ausführungsform der Fig. 7 und 8 erläutert. In der Fig. 9 bezeichnen (φL1, φR1), (φL2, φR2), (φL3, φR3) die einzelnen Steuersignale für die Selektoren SEL der Paralleldatenübertragungsschaltung TRC1 der Fig. 8. Die Fig. 9 zeigt die Zeitpunkte der Auswahl der Wortleitungen und der erwähnten Steuersignale, die an den linken vier Ausgängen TNO0, TNO1, TNO2 und TNO3 der Paralleldatenübertragungsschaltung TRC 1 ausgegebenen Pixeldaten und die Zeitpunkte zum Schalten der Schalter L, C und R der Distributoren DIS in der Paralleldatenübertragungsschaltung TRC2 auf EIN. Bei der vorliegenden Ausführungsform werden, da die Anzahl von Verarbeitungsschaltungen auf ein Drittel verringert ist, drei aufeinanderfolgende Ausgangspixel von einer Verarbeitungsschaltung verarbeitet. Zuerst werden die Eingangsbilder der ersten Zeile im Speicher SAM1 mit seriellem Zugriff gespeichert und dann zu der Wortleitung W1 des zweidimensionalen Speicherarrays MAR übertragen. Gleichermaßen werden die Eingangsbilder der zweiten und dritten Zeile zu den Wortleitungen W2 und W3 übertragen, und es wird dann mit der Erarbeitung der Ausgangsbilder der zweiten Zeile begonnen. Die Eingangsbilder der ersten Zeile auf der Wortleitung W1 werden durch die Datenleitungsgruppe DG ausgelesen, und ihre Pixel F11, F12, F13, - - - und so weiter werden von links im Leseverstärker festgehalten, wie es in der Fig. 8A gezeigt ist. Danach wird das Steuersignal für die Selektoren SEL in der Paralleldatenübertragungsschaltung TRC1 umgeschaltet, wie es in der Spalte für den Zyklus t1 der Fig. 9 gezeigt ist. Dann werden die Pixel F11, F14, F17, - - - und so weiter über die Ausgänge TNO1, TNO2 und TNO3 der Paralleldatenübertragungsschaltung TRC zu den Verarbeitungsschaltungen PE1, PE2 und PE3 übertragen. Die Pixel werden in den Multiplikatoren MT1, MT2, - - - und so weiter mit den vom Datenspeicher ausgelesenen Gewichtungskoeffizienten multipliziert, und die sich ergebenden Produkte werden in den Registern RG1, RG2, - - - und so- weiter gespeichert. Daraufhin werden die Steuersignale für die Selektoren SEL umgeschaltet, wie es in der Spalte für den Zyklus t2 in der Fig. 9 gezeigt ist. Die Pixel F12, F 15, F18, - - - und so weiter werden dann zu den Verarbeitungsschaltungen PE1, PE2, PE3 übertragen. Diese Daten werden mit den Gewichtungskoeffizienten multipliziert. Die Produkte werden zu den in den Registern gespeicherten vorherigen Ergebnissen addiert, und die Summe wird wieder in den Registern gespeichert. Wie in der Spalte für den Zyklus t3 in der Fig. 9 gezeigt, werden darüberhinaus die Steuersignale umgeschaltet, um die Pixel F 13, F16, F19, - - - und so weiter zu den Verarbeitungsschaltungen PE1, PE21, PE3 zu übertragen. Diese Daten werden multipliziert und zu den vorherigen Ergebnissen hinzuaddiert. Die bis hier erhaltenen Ergebnisse werden über den Schalter L des Distributors DIS in der Paralleldatenübertragungsschaltung TRC2 der Fig. 7 in den Speicher SAM2 mit seriellem Zugriff eingeschrieben. Die Daten werden intermittierend in den Speicher SAM2 mit seriellem Zugriff eingeschrieben.The operation of the embodiment of Figs. 7 and 8 will now be explained with reference to Fig. 9. In Fig. 9, (φL1, φR1), (φL2, φR2), (φL3, φR3) denote the individual control signals for the selectors SEL of the parallel data transmission circuit TRC1 of Fig. 8. Fig. 9 shows the timing of the selection of the word lines and the mentioned control signals, the pixel data output from the left four outputs TNO0, TNO1, TNO2 and TNO3 of the parallel data transmission circuit TRC1 and the timing of turning the switches L, C and R of the distributors DIS in the parallel data transmission circuit TRC2 to ON. In the present embodiment, since the number of processing circuits is reduced to one third, three consecutive output pixels are processed by one processing circuit. First, the input images of the first row are stored in the serial access memory SAM1 and then transferred to the word line W1 of the two-dimensional memory array MAR. Similarly, the input images of the second and third rows are transferred to the word lines W2 and W3, and then the processing of the output images of the second row is started. The input images of the first row on the word line W1 are read out by the data line group DG, and their pixels F11, F12, F13, - - - and so on are held from the left in the sense amplifier as shown in Fig. 8A. Thereafter, the control signal for the selectors SEL in the parallel data transfer circuit TRC1 is switched as shown in the column for the cycle t1 of Fig. 9. Then, the pixels F11, F14, F17, - - - and so on are transferred to the processing circuits PE1, PE2 and PE3 via the outputs TNO1, TNO2 and TNO3 of the parallel data transfer circuit TRC. The pixels are multiplied by the weighting coefficients read from the data memory in the multipliers MT1, MT2, - - - and so on, and the resulting products are stored in the registers RG1, RG2, - - - and so on. Thereafter, the control signals for the selectors SEL are switched as shown in the column for the cycle t2 in Fig. 9. The pixels F12, F15, F18, - - - and so on are then transferred to the processing circuits PE1, PE2, PE3. These data are multiplied by the weighting coefficients. The products are added to the previous results stored in the registers, and the sum is stored in the registers again. Furthermore, as shown in the column for cycle t3 in Fig. 9, the control signals are switched to transfer the pixels F13, F16, F19, - - - and so on to the processing circuits PE1, PE21, PE3. These data are multiplied and added to the previous results. The results obtained up to this point are written into the serial access memory SAM2 via the switch L of the distributor DIS in the parallel data transfer circuit TRC2 of Fig. 7. The data is intermittently written into the serial access memory SAM2.

Dann werden, während die Eingangspixel der ersten Zeile im Leseverstärker festgehalten werden, die Daten übertragen, wie es in den Zyklen t4 bis t6 der Fig. 9 gezeigt ist, und die Verarbeitungsergebnisse werden durch Einschalten des Schalters C des Distributors DIS intermittierend in den Speicher SAM2 mit seriellem Zugriff eingeschrieben.Then, while the input pixels of the first line are held in the sense amplifier, the data are transferred as shown in cycles t4 to t6 of Fig. 9, and the processing results are intermittently written into the serial access memory SAM2 by turning on the switch C of the distributor DIS.

Dann werden, während die Eingangspixel der ersten Zeile im Leseverstärker festgehalten werden, die Daten übertragen, wie es in den Zyklen t7 bis t9 der Fig. 9 gezeigt ist, und die Verarbeitungsergebnisse werden durch Einschalten des Schalters R des Distributors DIS intermittierend in den Speicher SAM2 mit seriellem Zugriff eingeschrieben. Danach wird die Wortleitung W2 ausgewählt, um die Eingangspixel der zweiten Zeile im Leseverstärker festzuhalten, und es werden entsprechende Operationen ausgeführt. Zu Beginn der Zyklen t1, t4 und t7 werden dabei die Ergebnisse, die unter Verwendung der Eingangspixel der ersten Zeile erhalten wurden, vom Speicher SAM2 mit seriellem Zugriff zu den Registern RG1, RG2, - - - und so weiter der Fig. 7 geführt, und die neu erhaltenen Multiplikationsergebnisse werden zu den zugeführten Ergebnissen addiert. Wenn bei der Auswahl der Wortleitung W3 zum Festhalten der Eingangspixel der dritten Zeile im Leseverstärker entsprechende Operationen ausgeführt werden, werden alle Werte der Pixel der Ausgangsbilder der zweiten Zeile im Speicher SAM2 mit seriellem Zugriff bestimmt. Wenn diese Operationen jedesmal dann fortgeführt werden, wenn die Eingangspixel einer Zeile im Speicher SAM1 mit seriellem Zugriff gespeichert werden, können die Verarbeitungsoperationen für den 3 · 3-Filter fortlaufend ausgeführt werden. Wie bei der Ausführungsform der Fig. 4 läßt sich mit der vorliegenden Ausführungsform der Vorteil erhalten, daß der Layoutabstand der Verarbeitungsschaltungen dreimal so groß gemacht werden kann wie bei der Ausführungsform der Fig. 1. Bei der vorliegenden Ausführungsform ist die Anzahl von Verarbeitungsschaltungen auf ein Drittel vermindert, da eine Verarbeitungsschaltung die Verarbeitungsoperationen für drei aufeinanderfolgende Ausgabepixel ausführt, so daß diese Ausführungsform für den Fall geeignet ist, daß auf einem Chip nicht viele Verarbeitungsschaltungen integriert werden können. Um den Abstand der Verarbeitungsschaltungen noch weiter zu erhöhen, reicht es aus, daß eine Verarbeitungsschaltung drei oder mehr aufeinanderfolgende Pixel verarbeitet, was leicht einzusehen ist. Dazu kann, wie ebenfalls leicht einzusehen ist, das Übertragungsnetzwerk so aufgebaut werden, daß die Daten von der Anzahl von Leseverstärkern zu einer Verarbeitungsschaltung übertragen werden, wobei sich zwei Übertragungswege benachbarter Verarbeitungsschaltungen überlappen.Then, while the input pixels of the first line are held in the sense amplifier, the data are transferred as shown in cycles t7 to t9 of Fig. 9, and the processing results are intermittently written into the serial access memory SAM2 by turning on the switch R of the distributor DIS. Thereafter, the word line W2 is selected to hold the input pixels of the second line in the sense amplifier, and corresponding operations are carried out. At this time, at the beginning of cycles t1, t4, and t7, the results obtained using the input pixels of the first line are supplied from the serial access memory SAM2 to the registers RG1, RG2, - - - and so on of Fig. 7, and the newly obtained multiplication results are added to the supplied results. When corresponding operations are carried out when the word line W3 is selected to hold the input pixels of the third line in the sense amplifier, all the values of the pixels of the output images of the second line in the serial access memory SAM2 are determined. If these operations are continued each time the input pixels of one line are stored in the serial access memory SAM1, the processing operations for the 3 x 3 filter can be carried out continuously. As with the embodiment of Fig. 4, the present embodiment can obtain the advantage that the layout pitch of the processing circuits can be made three times as large as in the embodiment of Fig. 1. In the present embodiment, the number of processing circuits is reduced to one third because one processing circuit can carry out the processing operations for three consecutive output pixels. so that this embodiment is suitable for the case where not many processing circuits can be integrated on one chip. To increase the distance between the processing circuits even further, it is sufficient for one processing circuit to process three or more consecutive pixels, which is easy to understand. To this end, as is also easy to understand, the transmission network can be constructed in such a way that the data is transmitted from the number of sense amplifiers to one processing circuit, with two transmission paths of adjacent processing circuits overlapping.

Die anhand einschließlich der Fig. 9 beschriebenen Ausführungsformen umfassen einen zweidimensionalen linearen Filter. Dank dieser Ausführungsformen können die Linien oder Kanten im Bild durch Ändernder Größen und Koeffizienten der Filter schnell hervorgehoben oder geglättet werden. Durch Ändern der Funktionen der Verarbeitungsschaltungen können darüberhinaus spezielle Muster extrahiert oder die Verarbeitungsoperationen eines nichtlinearen Filters wie eines Medianfilters mit hoher Geschwindigkeit ausgeführt werden. Auch können die vorstehenden Ausführungsformen natürlich dazu verwendet werden, einen zellularen Automaten oder ein neuronales Netzwerk zu schaffen, das nur mit dem benachbarten Neuron verbunden ist, wenn sie die Ausgangssignale unter Verwendung der Informationen von benachbarten, zweidimensional verteilten Zellen erarbeiten. In den Darstellungen zur Beschreibung der vorstehenden Ausführungsformen speichert das zweidimensionale Speicherzellenarray nur die Daten der Pixel für die Anzahl von Zeilen, die für die Verarbeitungsoperationen erforderlich sind. Durch Erhöhen der Anzahl der Wortleitungen des zweidimensionalen Speicherarrays können jedoch leicht die Pixeldaten für mehr Zeilen gespeichert werden. Wenn zum Beispiel die Daten für ein ganzes Bild gespeichert werden, können die Ausführungsformen als sogenannte "Bildspeicher" verwendet werden. In diesem Fall wird nur ein Teil des zweidimensionalen Speicherarrays verarbeitet, während die übrigen Daten seriell ausgelesen und so ausgegeben werden wie sie sind, so daß nur ein Teil des Bildschirms durch den Filter bearbeitet wird oder ähnliches. Das bearbeitete Gebiet kann leicht durch entsprechendes Steuern der Wortleitungen hin- und herbewegt werden.The embodiments described with reference to Fig. 9 include a two-dimensional linear filter. Thanks to these embodiments, the lines or edges in the image can be quickly emphasized or smoothed by changing the sizes and coefficients of the filters. Furthermore, by changing the functions of the processing circuits, specific patterns can be extracted or the processing operations of a non-linear filter such as a median filter can be carried out at high speed. Also, the above embodiments can of course be used to create a cellular automaton or a neural network that is connected only to the neighboring neuron when they process the output signals using the information from neighboring cells distributed in two dimensions. In the illustrations describing the above embodiments, the two-dimensional memory cell array only stores the data of the pixels for the number of rows required for the processing operations. However, by increasing the number of word lines of the two-dimensional memory array, the pixel data for more lines can be easily stored. For example, when storing the data for an entire image, the embodiments can be used as so-called "image memories". In this case, only a part of the two-dimensional memory array is processed, while the remaining data is serially read out and output as it is, so that only a part of the screen is processed by the filter or the like. The processed area can be easily moved back and forth by appropriately controlling the word lines.

Es wird nun beispielhaft eine Ausführungsform zum Erfassen eines Bewegungsvektors beschrieben, bei dem die vorliegende Erfindung auf etwas anderes als einen Filter angewendet wird. Das Erfassen eines Bewegungsvektors ist beim Komprimieren/Dekomprimieren eines sich bewegenden digitalen Bildes von Nutzen. Wegen der großen zu verarbeitenden Datenmenge ist jedoch eine Vorrichtung zum schnellen Erfassen des Bewegungsvektors erwünscht. Wie allgemein bekannt, wird der Bewegungsvektor dadurch erfaßt, daß das Eingangsbild in Blöcke mit einer Anzahl von Pixeln aufgeteilt wird, wobei die einzelnen Blöcke dann mit einem Block, der so angeordnet ist, daß er einem Bezugsbild entspricht, und einer Anzahl von Blöcken in der Umgebung dieses Bezugsblocks verglichen werden, um den Block mit dem kleinsten Abstand zu bestimmen und die Koordinatendifferenz zum Block des Eingangsbildes festzustellen.An embodiment for detecting a motion vector in which the present invention is applied to something other than a filter will now be described by way of example. Detecting a motion vector is useful in compressing/decompressing a moving digital image. However, because of the large amount of data to be processed, an apparatus for quickly detecting the motion vector is desired. As is well known, the motion vector detected by dividing the input image into blocks of a number of pixels, each block then being compared with a block arranged to correspond to a reference image and a number of blocks in the vicinity of that reference block to determine the block with the smallest distance and to determine the coordinate difference from the block of the input image.

Die Fig. 10 und 11 zeigen eine Ausführungsform einer Vorrichtung zum Erarbeiten des Bewegungsvektors eines sich bewegenden Bildes mittels der vorliegenden Erfindung. Um die Beschreibung zu vereinfachen, wird im folgenden angenommen, daß der Block eine Größe von 3 · 3 Pixeln hat und die Suche einen Umfang von zwei Pixeln in der vertikalen und in der horizontalen Richtung. Die vorliegende Erfindung ist jedoch nicht auf diese numerischen Werte begrenzt, sondern kann leicht erweitert werden. Die Fig. 11 zeigt den Aufbau für eine Minimaldistanz-Verarbeitungseinheit zum Bestimmen des Minimums des wie in der Fig. 10 bestimmten Zwischenblockabstands und zur Ausgabe des Bewegungsvektors. Es wird nun der Aufbau und die Arbeitsweise der vorliegenden Ausführungsform beschrieben.10 and 11 show an embodiment of an apparatus for determining the motion vector of a moving picture by means of the present invention. In order to simplify the description, it is assumed hereinafter that the block has a size of 3 x 3 pixels and the search has a scope of two pixels in the vertical and horizontal directions. However, the present invention is not limited to these numerical values, but can be easily extended. Fig. 11 shows the structure for a minimum distance processing unit for determining the minimum of the inter-block distance determined as in Fig. 10 and for outputting the motion vector. The structure and operation of the present embodiment will now be described.

Bei der Vorrichtung der Fig. 10 wird das Pixel REFx'y' eines Bezugsbildes, das zum Vergleich mit dem Pixel Fxy des Eingangsbildes verwendet wird, einzeln in Echtzeit in die Speicher SAM1 und SAM2 mit seriellem Zugriff eingegeben. Nach dieser Eingabe in die Speicher mit seriellem Zugriff wird das Pixel zu zweidimensionalen Pufferarrays BAF2 und BAF1 für drei Zeilen und außerdem zum Vergleich zu den zweidimensionalen Speicherarrays MAR2 und MAR1 übertragen. Das zweidimensionale Speicherarray MAR2 kann die Eingangsbilder von drei Zeilen speichern, so daß in einer Spalte ein Block der Größe 3 · 3 Pixel gespeichert werden kann. Andererseits kann das zweidimensionale Speicherarray MAR1 die Eingangsbilder von sieben Zeilen speichern, die außer der Position, die dem Block der Eingangsbilder im Speicherarray MAR2 entspricht, zwei vertikale Zeilen umfassen. Die in den Speicher SAM2 mit seriellem Zugriff eingegebenen Eingangsbilder werden mit einer Verzögerung von zwei Zeilen gegen das in den Speicher SAM1 mit seriellem Zugriff eingegebene Bezugsbild eingegeben, so daß die Daten jedesmal dann von den Speichern SAM1 und SAM2 mit seriellem Zugriff zu den Pufferarrays BAF1 und BAF2 und die Speicherarrays MAR1 und MAR2 übertragen werden, wenn die Daten einer Zeile gespeichert werden. Das Bild im Speicherarray MAR1 umfaßt zusätzlich zu der Position, die dem Block des Eingangsbildes im Speicherarray MAR2 entspricht, zwei vertikale Zeilen. Die zweidimensionalen Pufferarrays BAF2 und BAF1 für drei Zeilen sind zum vorübergehenden Speichern der Daten zum Betimmen des Bewegungsvektors des Blocks der nächsten Spalte vorgesehen, während der Bewegungsvektor für den Block einer Spalte bestimmt wird. Am Ende jeder Verarbeitungsoperation für den Bewegungsvektor des Blocks einer Spalte werden die Daten dieser zweidimensionalen Pufferarrays BAF1 und BAF2 zu den Speicherarrays MAR1 und MAR2 übertragen, so daß der Bewegungsvektor des Blocks der nächsten Spalte erarbeitet werden kann. Um den Bewegungsvektor zu bestimmen, ist es wie erwähnt erforderlich, den Abstand zwischen dem Block des Eingangsbildes und dem Block des Bezugsbildes zu bestimmen, dessen Position in vertikaler und horizontaler Richtung verschoben ist. Der Zwischenblockabstand kann durch Aufsummieren der Differenz zwischen den Werten der Pixel für einen Block und der Pixel für einen anderen Block bestimmt werden. Bei der Ausführungsform der Fig. 10 werden die Abstände zwischen den aus den Speicherarrays MAR2 und MAR1 ausgelesenen Pixeln parallel durch die Verarbeitungsschaltungen PE1, - - - und PEn berechnet. Wenn die Steuersignale φL, φC und φR für die Paralleldatenübertragungsschaltung TRC2 jedesmal dann umgeschaltet werden, wenn nacheinander die Wortleitungen des Speicherarrays MAR2 angewählt werden, ist es möglich, die Pixel verschiedener Blöcke für die Verarbeitungsschaltungen zu übertragen. Andererseits enthält das Speicherarray MAR1 die Daten des Bezugsbildes und weiterer zwei vertikaler Zeilen zusätzlich zu der Position, die dem Block des Eingangsbildes im Speicherarray MAR2 entspricht. Durch Umschalten der Wortleitungen kann daher die y-Koordinate der zu übertragenden Pixel innerhalb der zwei vertikalen Pixel zusätzlich zu der dem Block des Eingangsbildes entsprechenden Position geändert werden. Durch das Umschalten der Steuersignale für die Paralleldatenübertragungsschaltung TRC1 werden darüberhinaus die Pixel, die innerhalb des Bereichs der insgesamt sieben Pixel um horizontal zwei Pixel zusätzlich zu der dem Block des Eingangsbildes entsprechenden Position in x-Richtung verschoben werden, zu den einzelnen Verarbeitungsschaltungen übertragen. Im Ergebnis werden die Koordinaten des Blocks des Bezugsbildes, der in die Verarbeitungsschaltungen einzugeben ist, innerhalb des Bereichs der beiden Pixel bezüglich dem Eingangsbild in der x- und der y-Richtung verschoben. Die Signalleitungen der Paralleldatenübertragungsschaltung TRC1 benötigen einen Überlapp von vier Leitungen, die Signalleitungen des Ausgangs TN1 benötigen jedoch keinen Überlapp.In the device of Fig. 10, the pixel REFx'y' of a reference image used for comparison with the pixel Fxy of the input image is input one by one in real time to the serial access memories SAM1 and SAM2. After this input to the serial access memories, the pixel is transferred to two-dimensional buffer arrays BAF2 and BAF1 for three lines and also to the two-dimensional memory arrays MAR2 and MAR1 for comparison. The two-dimensional memory array MAR2 can store the input images of three lines so that a block of size 3 x 3 pixels can be stored in one column. On the other hand, the two-dimensional memory array MAR1 can store the input images of seven lines comprising two vertical lines in addition to the position corresponding to the block of input images in the memory array MAR2. The input images input to the serial access memory SAM2 are input with a delay of two lines from the reference image input to the serial access memory SAM1, so that the data is transferred from the serial access memories SAM1 and SAM2 to the buffer arrays BAF1 and BAF2 and the memory arrays MAR1 and MAR2 each time the data of one line is stored. The image in the memory array MAR1 comprises two vertical lines in addition to the position corresponding to the block of the input image in the memory array MAR2. The two-dimensional buffer arrays BAF2 and BAF1 for three lines are provided for temporarily storing the data for determining the motion vector of the block of the next column, while the motion vector for the block of a column. At the end of each processing operation for the motion vector of the block of a column, the data of these two-dimensional buffer arrays BAF1 and BAF2 are transferred to the memory arrays MAR1 and MAR2 so that the motion vector of the block of the next column can be worked out. As mentioned above, in order to determine the motion vector, it is necessary to determine the distance between the block of the input image and the block of the reference image whose position is shifted in the vertical and horizontal directions. The interblock distance can be determined by summing the difference between the values of the pixels for one block and the pixels for another block. In the embodiment of Fig. 10, the distances between the pixels read out from the memory arrays MAR2 and MAR1 are calculated in parallel by the processing circuits PE1, - - - and PEn. If the control signals φL, φC and φR for the parallel data transfer circuit TRC2 are switched each time the word lines of the memory array MAR2 are selected in succession, it is possible to transfer the pixels of different blocks for the processing circuits. On the other hand, the memory array MAR1 contains the data of the reference image and another two vertical lines in addition to the position corresponding to the block of the input image in the memory array MAR2. Therefore, by switching the word lines, the y-coordinate of the pixels to be transferred can be changed within the two vertical pixels in addition to the position corresponding to the block of the input image. Furthermore, by switching the control signals for the parallel data transfer circuit TRC1, the pixels which are shifted horizontally by two pixels in the x-direction within the range of the total of seven pixels in addition to the position corresponding to the block of the input image are transferred to the individual processing circuits. As a result, the coordinates of the block of the reference image to be input to the processing circuits are shifted within the range of the two pixels with respect to the input image in the x and y directions. The signal lines of the parallel data transmission circuit TRC1 require an overlap of four lines, but the signal lines of the output TN1 do not require an overlap.

Der Abstand zwischen dem Block des Eingangsbildes und dem Block des Bezugsbildes wird auf die folgende Weise bestimmt. Zuerst wird die Verschiebung der Koordinaten fixiert, und die Pixel des Blocks des Eingangsbildes und des Blocks des Bezugsbildes werden zu den einzelnen Verarbeitungsschaltungen PE1, - - - PEn übertragen. Die Abstände zwischen den Pixeln, die von den Verarbeitungsschaltungen bestimmt werden, werden zu Akkumulatoren ACC1, - - - ACCn übertragen, so daß die Werte davon für einen Block akkumuliert werden. Die so bestimmten Abstände zwischen den Blöcken werden zu Minimaldistanz-Verarbeitungseinheiten MIN1, - - - MINn übertragen. Diese Minimaldistanz-Verarbeitungseinheiten bestimmen die Koordinatenverschiebung, die die Abstände zwischen den Blöcken minimiert. Der Aufbau dieser Minimaldistanz-Verarbeitungseinheiten ist in der Fig. 11 gezeigt. Die Minimaldistanz-Verarbeitungseinheit MINi ist wie in der Fig. 11 gezeigt so aufgebaut, daß sie einen Komparator COM, Register REG1 und REG2 und Schalter SWB1 und SWB2 umfaßt. Der Zwischenblockabstand BLDi(Δx, Δy) für vorgegebene Verschiebungen Δx und Δy wird nach der Bestimmung in den Komparator COM eingegeben. Der Komparator COM vergleicht den neu bestimmten Zwischenblockabstand BLDi(Δx, Δy) mit dem Zwischenblockabstand (Δx', Δy') bereits bestimmter und im Register REG1 gespeicherter anderer Verschiebungen Δx' und Δy'. Wenn sich ergibt, daß der Abstand BLDi(Δx, Δy) kleiner ist, wird der Schalter SWB1 auf EIN geschaltet, damit der Inhalt des Registers REG1 durch den Wert BLDi(Δx, Δy) erneuert wird. Im Register REG2 ist die Verschiebung (Δx', Δy') gespeichert, die auch durch (Δx, Δy) erneuert wird, wenn der Schalter SWB2 auf EIN geschaltet wird. Wenn der Abstand BLDi(Δx, Δy) dagegen größer ist, werden die Schalter SWB1 und SWB2 nicht auf EIN geschaltet, so daß die Inhalte der Register nicht erneuert werden. Durch Ausführen dieser Operationen für alle Verschiebungen stellt das Register REG2 die Verschiebung für den minimalen Zwischenblockabstand fest, d. h. den Bewegungsvektor MC. In der Fig. 10 werden die Bewegungsvektoren der Blöcke einer Spalte parallel bestimmt, zum Speicher SAM3 mit seriellem Zugriff übertragen und sequentiell vom Chip nach außen abgegeben.The distance between the block of the input image and the block of the reference image is determined in the following manner. First, the shift of the coordinates is fixed, and the pixels of the block of the input image and the block of the reference image are transferred to the individual processing circuits PE1, - - - PEn. The distances between the pixels determined by the processing circuits are transferred to accumulators ACC1, - - - ACCn so that the values thereof are stored for a block. The distances between the blocks thus determined are transferred to minimum distance processing units MIN1, - - - MINn. These minimum distance processing units determine the coordinate shift which minimizes the distances between the blocks. The structure of these minimum distance processing units is shown in Fig. 11. The minimum distance processing unit MINi is constructed as shown in Fig. 11 to include a comparator COM, registers REG1 and REG2, and switches SWB1 and SWB2. The inter-block distance BLDi(Δx, Δy) for predetermined displacements Δx and Δy is input to the comparator COM after determination. The comparator COM compares the newly determined interblock distance BLDi(Δx, Δy) with the interblock distance (Δx', Δy') of other displacements Δx' and Δy' already determined and stored in the register REG1. If the distance BLDi(Δx, Δy) is found to be smaller, the switch SWB1 is turned ON so that the contents of the register REG1 are updated with the value BLDi(Δx, Δy). The register REG2 stores the displacement (Δx', Δy'), which is also updated with (Δx, Δy) when the switch SWB2 is turned ON. On the other hand, if the distance BLDi(Δx, Δy) is larger, the switches SWB1 and SWB2 are not turned ON, so that the contents of the registers are not updated. By performing these operations for all shifts, the register REG2 determines the shift for the minimum interblock distance, ie, the motion vector MC. In Fig. 10, the motion vectors of the blocks of a column are determined in parallel, transferred to the serial access memory SAM3, and sequentially output from the chip.

Wie beschrieben ist es bei den Ausführungsformen der Fig. 10 und 11 möglich, die Bewegungsvektoren für die Blöcke einer Spalte parallel für ein Bild zu bestimmen, das in Echtzeit eingegeben wird. Das Komprimierungs/Dekomprimierungssystem für ein bewegtes Bild, das von dem Bewegungsvektor Gebrauch macht, kann daher durch Anbringung der erfindungsgemäßen integrierten Halbleiterschaltung am System schnelle Verarbeitungsoperationen ausführen. Bei dem Aufbau der Fig. 10 läßt sich der Abstand der Verarbeitungsschaltungen durch die Verfahren der Fig. 4 und 7 erhöhen.As described, in the embodiments of Figs. 10 and 11, it is possible to determine the motion vectors for the blocks of one column in parallel for an image that is input in real time. The motion picture compression/decompression system using the motion vector can therefore perform high-speed processing operations by incorporating the semiconductor integrated circuit of the present invention into the system. In the structure of Fig. 10, the pitch of the processing circuits can be increased by the methods of Figs. 4 and 7.

Es wurden Ausführungsformen der vorliegenden Erfindung beschrieben, bei denen zweidimensionale Speicherarrays verwendet werden, deren Wortleitungen die Pixeldaten von einer oder mehr Zeilen speichern können. Wenn jedoch die Wortleitungen übermäßig lang sind, steigt die Leitungskapazität und der Widerstand so an, daß es schwierig werden kann, die Leitungen schnell anzusteuern. In diesem Fall können die Arrays aufgeteilt werden. Bei einer einfachen Aufteilung liegen die Pixel, die für die Verarbeitungsschaltung am Ende eines Subarrays erforderlich sind, im benachbarten Subarray, so daß ein besonderer Zugangsweg erforderlich wird. Um dies zu vermeiden, können die Pixeldaten am Ende der Subarrays den benachbarten Subarrays doppelt zugehören. In den Darstellungen zum Erläutern der Ausführungsformen sind der genaue Aufbau der zweidimensionalen Speicherarrays und das Verfahren zum Erzeugen der Steuersignale nicht genau gezeigt, lassen sich jedoch leicht mit der Technik erstellen, die bei gewöhnlichen LSI-Schaltungen verwendet wird. Zum Beispiel kann das zweidimensionale Speicherarray durch ein DRAM-Array aus einzelnen Transistorzellen erstellt werden. Da in diesem Fall das zweidimensionale Speicherarray hochintegriert werden kann, können auf dem gleichen Chip mehr Verarbeitungsschaltungen untergebracht werden als mit einem SRAM-Array oder dergleichen. Im Ergebnis wird die Verarbeitungsoperation schneller. Wie beschrieben, nutzen die meisten Ausführungsformen der vorliegenden Erfindung die Informationen des Speicherarrays nur kurz. Auch bei einem DRAM-Array erfolgt somit während der Verarbeitungsoperation eine automatische Auffrischung. Das Auffrischen braucht daher nicht durch Unterbrechen der Verarbeitungsoperation ausgeführt zu werden.Embodiments of the present invention have been described using two-dimensional memory arrays whose word lines can store the pixel data of one or more rows. However, if the word lines are excessively long, the line capacitance and resistance increase to such an extent that it may be difficult to drive the lines quickly. In this case, the arrays can be divided. In a simple division, the pixels required for the processing circuitry at the end of a subarray are in the adjacent subarray, so that a special access path is required. To avoid this, the pixel data at the end of the subarrays may be duplicated in the adjacent subarrays. In the illustrations for explaining the embodiments, the detailed structure of the two-dimensional memory arrays and the method for generating the control signals are not shown in detail, but can be easily constructed using the technique used in ordinary LSI circuits. For example, the two-dimensional memory array can be constructed by a DRAM array of individual transistor cells. In this case, since the two-dimensional memory array can be highly integrated, more processing circuits can be accommodated on the same chip than with an SRAM array or the like. As a result, the processing operation becomes faster. As described, most embodiments of the present invention use the information of the memory array only for a short time. Thus, even with a DRAM array, automatic refreshing is performed during the processing operation. The refreshing therefore does not need to be carried out by interrupting the processing operation.

Bei der erfindungsgemäßen integrierten Halbleiterschaltung können die Verarbeitungsoperationen an zweidimensionalen Daten wie für einen zweidimensionalen Raumfilter, eine Konvolutionsoperation oder die Operationen zur Suche des Bewegungsvektors zwischen Bildern parallel ausgeführt werden. Diese Verarbeitungsoperationen können daher in Echtzeit mit hoher Geschwindigkeit ausgeführt werden.In the semiconductor integrated circuit according to the present invention, the processing operations on two-dimensional data such as a two-dimensional spatial filter, a convolution operation or the operations for searching the motion vector between images can be carried out in parallel. These processing operations can therefore be carried out in real time at a high speed.

Claims (21)

1. Integrierte Halbleiterschaltung, mit1. Integrated semiconductor circuit, with einem Speicherzellenarray (MAR) mit einer Anzahl von Datenleitungen (DE), einer Anzahl von Wortleitungen (W1 bis W3), die die genannten Datenleitungen (DE) schneiden, und einer Anzahl von Speicherzellen, die an gewünschten Schnittstellen zwischen den Datenleitungen (DE) und den Wortleitungen (W1 bis W3) angeordnet sind;a memory cell array (MAR) having a number of data lines (DE), a number of word lines (W1 to W3) intersecting said data lines (DE), and a number of memory cells arranged at desired interfaces between the data lines (DE) and the word lines (W1 to W3); einer Paralleldatenübertragungsschaltung (TRC) zur parallelen Übertragung einer Anzahl von Daten von der Anzahl von Datenleitungen (DE); und mita parallel data transmission circuit (TRC) for parallel transmission of a number of data from the number of data lines (DE); and with einer Anzahl von Verarbeitungsschaltungen (PE1 bis PEn) zur Aufnahme der von der Paralleldatenübertragungsschaltung (TRC) übertragenen Anzahl von Daten als Eingangssignale,a number of processing circuits (PE1 to PEn) for receiving the number of data transmitted by the parallel data transmission circuit (TRC) as input signals, wobei die Paralleldatenübertragungsschaltung (TRC) so angeordnet ist, daß sie die Datenleitungen (DG) zu den Verarbeitungsschaltungen (PE1 bis PEn) in einer Folge anschließt, die beinhaltet:wherein the parallel data transmission circuit (TRC) is arranged to connect the data lines (DG) to the processing circuits (PE1 to PEn) in a sequence that includes: i) eine erste Verbindungsanordnung, in der jede Datenleitung mit einer ersten entsprechenden Verarbeitungsschaltung verbunden ist, undi) a first connection arrangement in which each data line is connected to a first corresponding processing circuit, and ii) eine zweite Verbindungsanordnung, in der jede Datenleitung mit einer zweiten entsprechenden Verarbeitungsschaltung verbunden ist;ii) a second connection arrangement in which each data line is connected to a second corresponding processing circuit; wobei die erste und die zweite entsprechende Verarbeitungsschaltung für die Datenleitungen benachbart sind und die jeweiligen Leitungen, mit denen jede Verarbeitungsschaltung in der ersten und der zweiten Verbindungsanordnung verbunden ist, nebeneinanderliegen.wherein the first and second corresponding processing circuits for the data lines are adjacent and the respective lines to which each processing circuit in the first and second connection arrangements is connected are adjacent to one another. 2. Integrierte Halbleiterschaltung nach Anspruch 1, wobei jeder der Anzahl von Verarbeitungsschaltungen (PE1 bis PEn) unter Benutzung einer Anzahl von Daten, die durch Auswahl von zwei oder mehr der Anzahl von Wortleitungen (W1 bis W3) zu einer der Anzahl von Datenleitungen (DG) ausgelesen werden, Verarbeitungsoperationen ausführt.2. A semiconductor integrated circuit according to claim 1, wherein each of the plurality of processing circuits (PE1 to PEn) performs processing operations using a number of data read out by selecting two or more of the plurality of word lines (W1 to W3) to one of the plurality of data lines (DG). 3. Integrierte Halbleiterschaltung nach Anspruch 1 oder Anspruch 2, mit weiterhin3. Integrated semiconductor circuit according to claim 1 or claim 2, further comprising einem ersten Speicher (SAM 1) mit seriellem Zugriff zur Speicherung von von außen eingegebenen seriellen Daten und zur parallelen Ausgabe dieser seriellen Daten an die Anzahl von Datenleitungen (DG); unda first memory (SAM 1) with serial access for storing externally input serial data and for parallel output of this serial data to the number of data lines (DG); and einem zweiten Speicher mit seriellem Zugriff zur Umwandlung der Ausgabedaten der Anzahl von Verarbeitungsschaltungen (PE1 bis PEn) in serielle Daten und zur Ausgabe dieser seriellen Daten nach außen.a second serial access memory for converting the output data of the number of processing circuits (PE1 to PEn) into serial data and for outputting this serial data to the outside. 4. Integrierte Halbleiterschaltung nach einem der Ansprüche 1 bis 3, wobei jede der Anzahl von Verarbeitungsschaltungen (PE1 bis PEn) unter Benutzung der Anzahl von Daten des Speicherzellenarrays (MAR) und einer vorbestimmten Konstante Verarbeitungsoperationen ausführt.4. A semiconductor integrated circuit according to any one of claims 1 to 3, wherein each of the plurality of processing circuits (PE1 to PEn) performs processing operations using the number of data of the memory cell array (MAR) and a predetermined constant. 5. Integrierte Halbleiterschaltung, mit5. Integrated semiconductor circuit, with einem Speicherzellenarray (MAR) mit einer Anzahl von Datenleitungsgruppen (DG), einer Anzahl von Wortleitungen (W1 bis W3), die die Datenleitungsgruppen (DG) schneiden, und einer Anzahl von Speicherzellen, die an gewünschten Schnittstellen zwischen den Datenleitungsgruppen (DG) und den Wortleitungen (W1 bis W3) angeordnet sind;a memory cell array (MAR) having a number of data line groups (DG), a number of word lines (W1 to W3) intersecting the data line groups (DG), and a number of memory cells arranged at desired interfaces between the data line groups (DG) and the word lines (W1 to W3); einer Paralleldatenübertragungsschaltung (TRC) zur parallelen Übertragung einer Anzahl von Datengruppen von der Anzahl von Datenleitungsgruppen (DG); unda parallel data transmission circuit (TRC) for parallel transmission of a number of data groups from the number of data line groups (DG); and einer Anzahl von Verarbeitungsschaltungen (PE1 bis PEn) zur Aufnahme der von der Paralleldatenübertragungsschaltung (TRC) übertragenen Anzahl von Datengruppen als Eingangssignale;a number of processing circuits (PE1 to PEn) for receiving the number of data groups transmitted by the parallel data transmission circuit (TRC) as input signals; wobei der Paralleldatenübertragungsschaltung (TRC) so angeordnet ist, daß sie die Datenleitungsgruppen (DG) mit den Verarbeitungsschaltungen (PE1 bis PEn) in einer Folge verbindet, die beinhaltet:wherein the parallel data transmission circuit (TRC) is arranged to connect the data line groups (DG) to the processing circuits (PE1 to PEn) in a sequence which includes: i) eine erste Verbindungsanordnung, in der jede Datenleitungsgruppe mit einer ersten entsprechenden Verarbeitungsschaltung verbunden ist; undi) a first connection arrangement in which each data line group is connected to a first corresponding processing circuit; and ii) eine zweite Verbindungsanordnung, in der jede Datenleitungsgruppe mit einer zweiten entsprechenden Verarbeitungsschaltung verbunden ist;ii) a second connection arrangement in which each data line group is connected to a second corresponding processing circuit; wobei die erste und die zweite entsprechende Verarbeitungsschaltung für jede Datenleitungsgruppe benachbart sind und die jeweiligen Leitungen, mit denen jede Verarbeitungsschaltung in der ersten und der zweiten Verbindungsanordnung verbunden ist, nebeneinanderliegen.wherein the first and second corresponding processing circuits for each data line group are adjacent, and the respective lines to which each processing circuit is connected in the first and second connection arrangements are adjacent to one another. 6. Integrierte Halbleiterschaltung nach Anspruch 5, wobei jede der Anzahl von Verarbeitungsschaltungen (PE1 bis PEn) unter Benutzung einer Anzahl von Datengruppen, die durch Auswahl von zwei oder mehr der genannten Anzahl von Wortleitungen (W1 bis W3) zu einer der Anzahl von Datenleitungsgruppen (DG) ausgelesen werden, eine Verarbeitungsoperation ausführt.6. A semiconductor integrated circuit according to claim 5, wherein each of said plurality of processing circuits (PE1 to PEn) is formed using a plurality of data groups formed by selecting two or more of said plurality of word lines (W1 to W3) to one of the number of data line groups (DG), executes a processing operation. 7. Integrierte Halbleiterschaltung nach Anspruch 5 oder 6, mit weiterhin7. Integrated semiconductor circuit according to claim 5 or 6, further comprising einem ersten Speicher (SAM 1) mit seriellem Zugriff zur Speicherung von von außen eingegebenen seriellen Daten und zur parallelen Ausgabe dieser seriellen Daten an eine Anzahl von Datenleitungsgruppen (DG); unda first memory (SAM 1) with serial access for storing externally input serial data and for parallel output of this serial data to a number of data line groups (DG); and einem zweiten Speicher (SAM 2) mit seriellem Zugriff zur Umwandlung der Ausgabedaten der Anzahl von Verarbeitungsschaltungen in serielle Daten und zur Ausgabe dieser seriellen Daten nach außen.a second memory (SAM 2) with serial access for converting the output data of the number of processing circuits into serial data and for outputting this serial data to the outside. 8. Integrierte Halbleiterschaltung nach einem der Ansprüche 5 bis 7,8. Integrated semiconductor circuit according to one of claims 5 to 7, wobei jede der Anzahl von Verarbeitungsschaltungen (PE1 bis PEn) unter Benutzung der Anzahl von Datengruppen des Speicherzellenarrays (MAR) und einer vorbestimmten Konstante Verarbeitungsoperationen ausführt.wherein each of the plurality of processing circuits (PE1 to PEn) performs processing operations using the number of data groups of the memory cell array (MAR) and a predetermined constant. 9. Integrierte Halbleiterschaltung, mit9. Integrated semiconductor circuit, with einem ersten und einem zweiten Speicherzellenarray (MAR 1 und MAR 2), jedes mit einer Anzahl von Datenleitungen, einer Anzahl von Wortleitungen, die die Datenleitungen schneiden, und einer Anzahl von Speicherzellen, die an gewünschten Schnittstellen zwischen den Datenleitungen und den Wortleitungen (W1 bis W3) angeordnet sind;a first and a second memory cell array (MAR 1 and MAR 2), each having a number of data lines, a number of word lines intersecting the data lines, and a number of memory cells arranged at desired interfaces between the data lines and the word lines (W1 to W3); einer ersten Paralleldatenübertragungsschaltung (TRC 1) zur parallelen Übertragung einer Anzahl erster Daten von der Anzahl von Datenleitungen des ersten Speicherzellenarrays (MAR 1);a first parallel data transfer circuit (TRC 1) for parallel transfer of a number of first data from the number of data lines of the first memory cell array (MAR 1); einer zweiten Paralleldatenübertragungsschaltung (TRC 2) zur parallelen Übertragung einer Anzahl zweiter Daten von der Anzahl von Datenleitungen des zweiten Speicherzellenarrays (MAR 2); unda second parallel data transfer circuit (TRC 2) for parallel transfer of a number of second data from the number of data lines of the second memory cell array (MAR 2); and einer Anzahl von Verarbeitungsschaltungen (PE1 bis PEn) zur Aufnahme der ersten und der zweiten Anzahl von Daten von der ersten und der zweiten Paralleldatenübertragungsschaltung (TRC 1 und TRC 2);a plurality of processing circuits (PE1 to PEn) for receiving the first and second plurality of data from the first and second parallel data transfer circuits (TRC 1 and TRC 2); wobei die erste Paralleldatenübertragungsschaltung (TRC 1) so angeordnet ist, daß sie die Datenleitungen des ersten Speicherzellenarrays (MAR 1) mit den Verarbeitungsschaltungen (PE1 bis PEn) in einer Folge verbindet, die beinhaltet:wherein the first parallel data transfer circuit (TRC 1) is arranged to connect the data lines of the first memory cell array (MAR 1) to the processing circuits (PE1 to PEn) in a sequence that includes: i) eine erste Verbindungsanordnung, in der jede Datenleitung des ersten Speicherzellenarrays (MAR 1) mit einer entsprechenden Verarbeitungsschaltung verbunden ist, undi) a first connection arrangement in which each data line of the first memory cell array (MAR 1) is connected to a corresponding processing circuit, and ii) eine zweite Verbindungsanordnung, in der jede Datenleitung des ersten Speicherzellenarrays (MAR 1) mit einer anderen entsprechenden Verarbeitungsschaltung verbunden ist;ii) a second connection arrangement in which each data line of the first memory cell array (MAR 1) is connected to another corresponding processing circuit; wobei die eine und die andere entsprechende Verarbeitungsschaltung für jede Datenleitung des ersten Speicherzellenarrays (MAR 1) benachbart sind und die jeweiligen Leitungen, mit denen jede Verarbeitungsschaltung in der ersten und der zweiten Verbindungsanordnung verbunden ist, nebeneinanderliegen; undwherein the one and the other corresponding processing circuit for each data line of the first memory cell array (MAR 1) are adjacent and the respective lines to which each processing circuit is connected in the first and second connection arrangements are adjacent to each other; and wobei die zweite Paralleldatenübertragungsschaltung (TRC 2) so angeordnet ist, daß sie die Datenleitungen des zweiten Speicherzellenarrays (MAR 2) mit den Verarbeitungsschaltungen (PE1 bis PEn) in einer Folge verbindet, die beinhaltet:wherein the second parallel data transfer circuit (TRC 2) is arranged to connect the data lines of the second memory cell array (MAR 2) to the processing circuits (PE1 to PEn) in a sequence which includes: i) eine dritte Verbindungsanordnung, in der jede Datenleitung des zweiten Speicherzellenarrays (MAR 2) mit einer entsprechenden Verarbeitungsschaltung verbunden ist; undi) a third connection arrangement in which each data line of the second memory cell array (MAR 2) is connected to a corresponding processing circuit; and ii) eine vierte Verbindungsanordnung, in der jede Datenleitung des zweiten Speicherzellenarrays (MAR 2) mit einer anderen entsprechenden Verarbeitungsschaltung verbunden ist;ii) a fourth connection arrangement in which each data line of the second memory cell array (MAR 2) is connected to another corresponding processing circuit; wobei die eine und die andere entsprechende Verarbeitungsschaltung für jede Datenleitung des zweiten Speicherzellenarrays (MAR 2) benachbart sind und die jeweiligen Leitungen, mit denen jede Verarbeitungsschaltung in der ersten und der zweiten Verbindungsanordnung verbunden ist, nebeneinanderliegen.wherein the one and the other corresponding processing circuits for each data line of the second memory cell array (MAR 2) are adjacent and the respective lines to which each processing circuit is connected in the first and second connection arrangements are adjacent to each other. 10. Integrierte Halbleiterschaltung, mit10. Integrated semiconductor circuit, with einem ersten und einem zweiten Speicherzellenarray (MAR 1 und MAR 2), jedes mit einer Anzahl von Datenleitungsgruppen, einer Anzahl von Wortleitungen, die die Datenleitungsgruppen schneiden, und einer Anzahl von Speicherzellen, die an gewünschten Schnittstellen zwischen den Datenleitungsgruppen und den Wortleitungen angeordnet sind;a first and a second memory cell array (MAR 1 and MAR 2), each having a number of data line groups, a number of word lines intersecting the data line groups, and a number of memory cells arranged at desired intersections between the data line groups and the word lines; einer ersten Paralleldatenübertragungsschaltung (TRC 1) zur parallelen Übertragung einer Anzahl erster Datengruppen von der Anzahl von Datenleitungsgruppen des ersten Speicherzellenarrays (MAR 1);a first parallel data transfer circuit (TRC 1) for parallel transfer of a number of first data groups from the number of data line groups of the first memory cell array (MAR 1); einer zweiten Paralleldatenübertragungsschaltung (TRC 2) zur parallelen Übertragung einer Anzahl zweiter Datengruppen von der Anzahl von Datenleitungsgruppen des zweiten Speicherzellenarrays (MAR 2); unda second parallel data transfer circuit (TRC 2) for parallel transfer of a number of second data groups from the number of data line groups of the second memory cell array (MAR 2); and einer Anzahl von Verarbeitungsschaltungen (PE1 bis PEn) zur Aufnahme der Anzahl von ersten und zweiten Datengruppen von der ersten und der zweiten Paralleldatenübertragungsschaltung (TRC 1 und TRC 2);a number of processing circuits (PE1 to PEn) for receiving the number of first and second data groups from the first and second parallel data transfer circuits (TRC 1 and TRC 2); wobei die erste Paralleldatenübertragungsschaltung (TRC 1) so angeordnet ist, daß sie die Datenleitungsgruppen des ersten Speicherzellenarrays (MAR 1) mit den Verarbeitungsschaltungen in einer Folge verbindet, die beinhaltet:wherein the first parallel data transfer circuit (TRC 1) is arranged to connect the data line groups of the first memory cell array (MAR 1) to the processing circuits in a sequence which includes: i) eine erste Verbindungsanordnung, in der jede Datenleitungsgruppe des ersten Speicherzellenarrays (MAR 1) mit einer entsprechenden Verarbeitungsschaltung verbunden ist; undi) a first connection arrangement in which each data line group of the first memory cell array (MAR 1) is connected to a corresponding processing circuit; and ii) eine zweite Verbindungsanordnung, in der jede Datenleitungsgruppe des ersten Speicherzellenarrays (MAR 1) mit einer anderen entsprechenden Verarbeitungsschaltung verbunden ist;ii) a second connection arrangement in which each data line group of the first memory cell array (MAR 1) is connected to another corresponding processing circuit; wobei die eine und die andere entsprechende Verarbeitungsschaltung für jede Daterileitungsgruppe des ersten Speicherzellenarrays (MAR 1) benachbart sind und die jeweiligen Leitungen, mit denen jede Verarbeitungsschaltung in der ersten und der zweiten Verbindungsanordnung verbunden ist, nebeneinanderliegen; undwherein the one and the other corresponding processing circuits for each data line group of the first memory cell array (MAR 1) are adjacent and the respective lines to which each processing circuit is connected in the first and second connection arrangements are adjacent to each other; and wobei die zweite Paralleldatenübertragungsschaltung (TRC 2) so angeordnet ist, daß sie die Datenleitungsgruppen des zweiten Speicherzellenarrays (MAR 2) mit den Verarbeitungsschaltungen in einer Folge verbindet, die beinhaltet:wherein the second parallel data transfer circuit (TRC 2) is arranged to connect the data line groups of the second memory cell array (MAR 2) to the processing circuits in a sequence which includes: i) eine dritte Verbindungsanordnung, in der jede Datenleitung des zweiten Speicherzellenarrays (MAR 2) mit einer entsprechenden Verarbeitungsschaltung verbunden ist; undi) a third connection arrangement in which each data line of the second memory cell array (MAR 2) is connected to a corresponding processing circuit; and ii) eine vierte Verbindungsanordnung, in der jede Datenleitungsgruppe des zweiten Speicherzellenarrays (MAR 2) mit einer anderen entsprechenden Verarbeitungsschaltung verbunden ist;ii) a fourth connection arrangement in which each data line group of the second memory cell array (MAR 2) is connected to another corresponding processing circuit; wobei die eine und die andere entsprechende Verarbeitungsschaltung für jede Datenleitungsgruppe des zweiten Speicherzellenarrays (MAR 2) benachbart sind und die jeweiligen Leitungen, mit denen jede Verarbeitungsschaltung in der ersten und der zweiten Verbindungsanordnung verbunden ist, nebeneinanderliegen.wherein the one and the other corresponding processing circuits for each data line group of the second memory cell array (MAR 2) are adjacent and the respective lines to which each processing circuit is connected in the first and second connection arrangements are adjacent to each other. 11. Integrierte Halbleiterschaltung nach Anspruch 3, wobei die in den ersten Speicher (SAM 1) mit seriellem Zugriff eingegebenen seriellen Daten Pixeldaten eines Bildes sind.11. A semiconductor integrated circuit according to claim 3, wherein the serial data input into the first serial access memory (SAM 1) is pixel data of an image. 12. Integrierte Halbleiterschaltung nach Anspruch 11, mit weiterhin12. Integrated semiconductor circuit according to claim 11, further comprising einem Datenspeicher (DM) zur Speicherung von Filterkoeffizienten;a data memory (DM) for storing filter coefficients; wobei jede der Anzahl von Verarbeitungsschaltungen (PE1 bis PEn) eine Filterverarbeitungsoperation des Bildes ausführt, die auf den Pixeldaten und den Filterkoeffizienten basiert.wherein each of the plurality of processing circuits (PE1 to PEn) performs a filter processing operation of the image based on the pixel data and the filter coefficients. 13. Integrierte Halbleiterschaltung nach Anspruch 12, wobei die Filterverarbeitungsoperation im ersten Speicherzellenarray (MAR 1) gespeicherte zweidimensionale Daten benutzt.13. A semiconductor integrated circuit according to claim 12, wherein the filter processing operation uses two-dimensional data stored in the first memory cell array (MAR 1). 14. Integrierte Halbleiterschaltung nach Anspruch 9, mit weiterhin14. Integrated semiconductor circuit according to claim 9, further comprising einem ersten Speicher mit seriellem Zugriff zur Speicherung von von außen eingegebenen seriellen Daten und zur parallelen Ausgabe dieser seriellen Daten an die Anzahl von Datenleitungen des ersten Speicherzellenarrays;a first serial access memory for storing externally input serial data and for outputting this serial data in parallel to the number of data lines of the first memory cell array; einem zweiten Speicher mit seriellem Zugriff zur Speicherung von von außen eingegebenen seriellen Daten und zur parallelen Ausgabe dieser seriellen Daten an die Anzahl von Datenleitungen des zweiten Speicherzellenarrays; unda second serial access memory for storing externally input serial data and for outputting this serial data in parallel to the number of data lines of the second memory cell array; and einem dritten Speicher mit seriellem Zugriff zur Umwandlung der Ausgabedaten der Anzahl von Verarbeitungsschaltungen in serielle Daten und zur Ausgabe dieser seriellen Daten nach außen.a third serial access memory for converting the output data of the number of processing circuits into serial data and for outputting this serial data to the outside. 15. Integrierte Halbleiterschaltung nach Anspruch 14, wobei die in den ersten Speicher mit seriellem Zugriff eingegebenen seriellen Daten Pixeldaten eines Referenzbildes und die in den zweiten Speicher mit seriellem Zugriff eingegebenen seriellen Daten Pixeldaten eines Eingangsbildes sind.15. A semiconductor integrated circuit according to claim 14, wherein the serial data input to the first serial access memory is pixel data of a reference image and the serial data input to the second serial access memory is pixel data of an input image. 16. Integrierte Halbleiterschaltung nach Anspruch 15, mit weiterhin16. Integrated semiconductor circuit according to claim 15, further comprising einem dritten und einem vierten Speicherzellenarray, jedes mit einer Anzahl von Datenleitungen, einer Anzahl von Wortleitungen, die die Datenleitungen schneiden, und einer Anzahl von Speicherzellen, die an gewünschten Schnittstellen zwischen den Datenleitungen und den Wortleitungen angeordnet sind;a third and a fourth memory cell array, each having a number of data lines, a number of word lines intersecting the data lines, and a number of memory cells arranged at desired interfaces between the data lines and the word lines; wobei die Datenleitungen des dritten Speicherzellenarrays jeweils mit den Datenleitungen des ersten Speicherzellenarrays gekoppelt sind;wherein the data lines of the third memory cell array are each coupled to the data lines of the first memory cell array; wobei die Datenleitungen des vierten Speicherzellenarrays jeweils mit den Datenleitungen des zweiten Speicherzellenarrays gekoppelt sind; undwherein the data lines of the fourth memory cell array are each coupled to the data lines of the second memory cell array; and wobei die Anzahl von Verarbeitungsschaltungen eine Verarbeitungsoperation ausführt, während das dritte und das vierte Speicherzellenarray Daten für die folgende Operation speichern.wherein the plurality of processing circuits performs a processing operation while the third and fourth memory cell arrays store data for the following operation. 17. Integrierte Halbleiterschaltung nach Anspruch 16, wobei die Anzahl von Verarbeitungsschaltungen (PE1 bis PEn) unter Benutzung der Pixeldaten eines Eingangsbildes und eines Referenzbildes den Bewegungsvektor eines sich bewegenden Bildes erarbeitet.17. A semiconductor integrated circuit according to claim 16, wherein the plurality of processing circuits (PE1 to PEn) process the motion vector of a moving image using the pixel data of an input image and a reference image. 18. Integrierte Halbleiterschaltung nach Anspruch 10, mit weiterhin18. Integrated semiconductor circuit according to claim 10, further comprising einem ersten Speicher mit seriellem Zugriff zur Speicherung von von außen eingegebenen seriellen Daten und zur parallelen Ausgabe dieser seriellen Daten an die Anzahl von Datenleitungsgruppen des ersten Speicherzellenarrays;a first serial access memory for storing externally input serial data and for outputting this serial data in parallel to the number of data line groups of the first memory cell array; einem zweiten Speicher mit seriellem Zugriff zur Speicherung von von außen eingegebenen seriellen Daten und zur parallelen Ausgabe dieser seriellen Daten an die Anzahl von Datenleitungsgruppen des zweiten Speicherzellenarrays; unda second serial access memory for storing externally input serial data and for outputting this serial data in parallel to the number of data line groups of the second memory cell array; and einem dritten Speicher mit seriellem Zugriff zur Umwandlung der Ausgabedaten der Anzahl von Verarbeitungsschaltungen in serielle Daten und zur Ausgabe dieser seriellen Daten nach außen.a third serial access memory for converting the output data of the number of processing circuits into serial data and for outputting this serial data to the outside. 19. Integrierte Halbleiterschaltung nach Anspruch 18, wobei die in den ersten Speicher mit seriellem Zugriff eingegebenen seriellen Daten Pixeldaten eines Referenzbildes und die in den zweiten Speicher mit seriellem Zugriff eingegebenen seriellen Daten Pixeldaten eines Eingangsbildes sind.19. A semiconductor integrated circuit according to claim 18, wherein the serial data input to the first serial access memory is pixel data of a reference image and the serial data input to the second serial access memory is pixel data of an input image. 20. Integrierte Halbleiterschaltung nach Anspruch 19, mit weiterhin20. Integrated semiconductor circuit according to claim 19, further comprising einem dritten und einem vierten Speicherzellenarray, jedes mit einer Anzahl von Datenleitungsgruppen, einer Anzahl von Wortleitungen, die die Datenleitungsgruppen schneiden, und einer Anzahl von Speicherzellen, die an gewünschten Schnittstellen zwischen den Datenleitungsgruppen und den Wortleitungen angeordnet sind,a third and a fourth memory cell array, each having a number of data line groups, a number of word lines intersecting the data line groups, and a number of memory cells arranged at desired interfaces between the data line groups and the word lines, wobei die Datenleitungsgruppen des dritten Speicherzellenarrays jeweils mit den Datenleitungsgruppen des ersten Speicherzellenarrays gekoppelt sind;wherein the data line groups of the third memory cell array are respectively coupled to the data line groups of the first memory cell array; wobei die Datenleitungsgruppen des vierten Speicherzellenarrays jeweils mit den Datenleitungsgruppen des zweiten Speicherzellenarrays gekoppelt sind; undwherein the data line groups of the fourth memory cell array are each coupled to the data line groups of the second memory cell array; and wobei die Anzahl von Verarbeitungsschaltungen eine Verarbeitungsoperation ausführt, während das dritte und das vierte Speicherzellenarray Daten für die folgende Operation speichern.wherein the plurality of processing circuits performs a processing operation while the third and fourth memory cell arrays store data for the following operation. 21. Integrierte Halbleiterschaltung nach Anspruch 20, wobei die Anzahl von Verarbeitungsschaltungen unter Benutzung der Pixeldaten eines Eingangsbildes und eines Referenzbildes den Bewegungsvektor eines sich bewegenden Bildes erarbeitet.21. A semiconductor integrated circuit according to claim 20, wherein the plurality of processing circuits obtain the motion vector of a moving image using the pixel data of an input image and a reference image.
DE69520974T 1994-04-11 1995-03-29 An integrated semiconductor circuit Expired - Fee Related DE69520974T2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP07182194A JP3251421B2 (en) 1994-04-11 1994-04-11 Semiconductor integrated circuit

Publications (2)

Publication Number Publication Date
DE69520974D1 DE69520974D1 (en) 2001-06-28
DE69520974T2 true DE69520974T2 (en) 2002-03-28

Family

ID=13471611

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69520974T Expired - Fee Related DE69520974T2 (en) 1994-04-11 1995-03-29 An integrated semiconductor circuit

Country Status (7)

Country Link
US (1) US5854636A (en)
EP (1) EP0676764B1 (en)
JP (1) JP3251421B2 (en)
KR (1) KR100373222B1 (en)
CN (1) CN1104695C (en)
DE (1) DE69520974T2 (en)
TW (1) TW447192B (en)

Families Citing this family (159)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3524250B2 (en) * 1995-11-27 2004-05-10 キヤノン株式会社 Digital image processor
US6546147B1 (en) 1997-01-08 2003-04-08 Institut Fur Mikroelectronik Stuttgart Method of and device for analog signal processing
JP3650519B2 (en) * 1997-12-17 2005-05-18 株式会社ルネサステクノロジ Microcomputer
DE69808798T2 (en) * 1997-12-19 2003-09-18 Bae Systems Plc, Farnborough DIGITAL SIGNAL FILTER USING UNWEIGHTED NEURAL TECHNIQUES
US6587158B1 (en) * 1998-07-23 2003-07-01 Dvdo, Inc. Method and apparatus for reducing on-chip memory in vertical video processing
US6990058B1 (en) 2000-04-03 2006-01-24 Dphi Acquisitions, Inc. Structure and method for storing data on optical disks
EP1436700A2 (en) 2000-05-30 2004-07-14 DPHI Aquisitions, Inc. Defect management system for write-once storage disk
US6738333B1 (en) 2000-05-30 2004-05-18 Dphi Acquisitions, Inc. Format for recording data in a storage disk
CN100385460C (en) * 2001-03-13 2008-04-30 伊强德斯股份有限公司 Visual device, interlocking counter, and image sensor
JP2003280982A (en) * 2002-03-20 2003-10-03 Seiko Epson Corp Data transfer device for multi-dimensional memory, data transfer program for multi-dimensional memory and data transfer method for multi-dimensional memory
DE602005025677D1 (en) 2004-11-03 2011-02-10 Koninkl Philips Electronics Nv PROGRAMMABLE DATA PROCESSING CIRCUIT SUPPORTING SIMD COMMANDS
US7423642B2 (en) * 2005-12-14 2008-09-09 Winbond Electronics Corporation Efficient video frame capturing
CN100409259C (en) * 2006-08-29 2008-08-06 中国航天时代电子公司第七七一研究所 Scaleable large-scale 2D convolution circuit
US7529149B2 (en) * 2006-12-12 2009-05-05 Mosaid Technologies Incorporated Memory system and method with serial and parallel modes
JP5522890B2 (en) * 2007-07-31 2014-06-18 キヤノン株式会社 Image processing apparatus and method
US8181003B2 (en) * 2008-05-29 2012-05-15 Axis Semiconductor, Inc. Instruction set design, control and communication in programmable microprocessor cores and the like
CN102169717B (en) * 2011-05-06 2013-03-13 西安华芯半导体有限公司 Memory device with data processing function
JP6044240B2 (en) * 2012-10-01 2016-12-14 株式会社ソシオネクスト Semiconductor device and semiconductor device design method
US9158667B2 (en) 2013-03-04 2015-10-13 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US8964496B2 (en) 2013-07-26 2015-02-24 Micron Technology, Inc. Apparatuses and methods for performing compare operations using sensing circuitry
US8971124B1 (en) 2013-08-08 2015-03-03 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US9153305B2 (en) 2013-08-30 2015-10-06 Micron Technology, Inc. Independently addressable memory array address spaces
US9019785B2 (en) 2013-09-19 2015-04-28 Micron Technology, Inc. Data shifting via a number of isolation devices
US9449675B2 (en) 2013-10-31 2016-09-20 Micron Technology, Inc. Apparatuses and methods for identifying an extremum value stored in an array of memory cells
US9430191B2 (en) 2013-11-08 2016-08-30 Micron Technology, Inc. Division operations for memory
US9934856B2 (en) 2014-03-31 2018-04-03 Micron Technology, Inc. Apparatuses and methods for comparing data patterns in memory
US9786335B2 (en) 2014-06-05 2017-10-10 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US9779019B2 (en) 2014-06-05 2017-10-03 Micron Technology, Inc. Data storage layout
US9711207B2 (en) 2014-06-05 2017-07-18 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9711206B2 (en) 2014-06-05 2017-07-18 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9830999B2 (en) 2014-06-05 2017-11-28 Micron Technology, Inc. Comparison operations in memory
US9455020B2 (en) 2014-06-05 2016-09-27 Micron Technology, Inc. Apparatuses and methods for performing an exclusive or operation using sensing circuitry
US9449674B2 (en) 2014-06-05 2016-09-20 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9496023B2 (en) 2014-06-05 2016-11-15 Micron Technology, Inc. Comparison operations on logical representations of values in memory
US10074407B2 (en) 2014-06-05 2018-09-11 Micron Technology, Inc. Apparatuses and methods for performing invert operations using sensing circuitry
US9704540B2 (en) 2014-06-05 2017-07-11 Micron Technology, Inc. Apparatuses and methods for parity determination using sensing circuitry
US9910787B2 (en) 2014-06-05 2018-03-06 Micron Technology, Inc. Virtual address table
US9847110B2 (en) 2014-09-03 2017-12-19 Micron Technology, Inc. Apparatuses and methods for storing a data value in multiple columns of an array corresponding to digits of a vector
US9589602B2 (en) 2014-09-03 2017-03-07 Micron Technology, Inc. Comparison operations in memory
US9747961B2 (en) 2014-09-03 2017-08-29 Micron Technology, Inc. Division operations in memory
US9904515B2 (en) 2014-09-03 2018-02-27 Micron Technology, Inc. Multiplication operations in memory
US9898252B2 (en) 2014-09-03 2018-02-20 Micron Technology, Inc. Multiplication operations in memory
US9740607B2 (en) 2014-09-03 2017-08-22 Micron Technology, Inc. Swap operations in memory
US10068652B2 (en) 2014-09-03 2018-09-04 Micron Technology, Inc. Apparatuses and methods for determining population count
US9836218B2 (en) 2014-10-03 2017-12-05 Micron Technology, Inc. Computing reduction and prefix sum operations in memory
US9940026B2 (en) 2014-10-03 2018-04-10 Micron Technology, Inc. Multidimensional contiguous memory allocation
US10163467B2 (en) 2014-10-16 2018-12-25 Micron Technology, Inc. Multiple endianness compatibility
US10147480B2 (en) 2014-10-24 2018-12-04 Micron Technology, Inc. Sort operation in memory
US9779784B2 (en) 2014-10-29 2017-10-03 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US10073635B2 (en) 2014-12-01 2018-09-11 Micron Technology, Inc. Multiple endianness compatibility
US9747960B2 (en) 2014-12-01 2017-08-29 Micron Technology, Inc. Apparatuses and methods for converting a mask to an index
US10032493B2 (en) 2015-01-07 2018-07-24 Micron Technology, Inc. Longest element length determination in memory
US10061590B2 (en) 2015-01-07 2018-08-28 Micron Technology, Inc. Generating and executing a control flow
US9583163B2 (en) 2015-02-03 2017-02-28 Micron Technology, Inc. Loop structure for operations in memory
CN107408404B (en) 2015-02-06 2021-02-12 美光科技公司 Apparatus and methods for memory devices as storage of program instructions
WO2016126472A1 (en) 2015-02-06 2016-08-11 Micron Technology, Inc. Apparatuses and methods for scatter and gather
EP3254286B1 (en) 2015-02-06 2019-09-11 Micron Technology, INC. Apparatuses and methods for parallel writing to multiple memory device locations
US10522212B2 (en) 2015-03-10 2019-12-31 Micron Technology, Inc. Apparatuses and methods for shift decisions
US9898253B2 (en) 2015-03-11 2018-02-20 Micron Technology, Inc. Division operations on variable length elements in memory
US9741399B2 (en) 2015-03-11 2017-08-22 Micron Technology, Inc. Data shift by elements of a vector in memory
US10365851B2 (en) 2015-03-12 2019-07-30 Micron Technology, Inc. Apparatuses and methods for data movement
US10146537B2 (en) 2015-03-13 2018-12-04 Micron Technology, Inc. Vector population count determination in memory
US10049054B2 (en) 2015-04-01 2018-08-14 Micron Technology, Inc. Virtual register file
US10140104B2 (en) 2015-04-14 2018-11-27 Micron Technology, Inc. Target architecture determination
US9959923B2 (en) 2015-04-16 2018-05-01 Micron Technology, Inc. Apparatuses and methods to reverse data stored in memory
US10073786B2 (en) 2015-05-28 2018-09-11 Micron Technology, Inc. Apparatuses and methods for compute enabled cache
US9704541B2 (en) 2015-06-12 2017-07-11 Micron Technology, Inc. Simulating access lines
US9921777B2 (en) 2015-06-22 2018-03-20 Micron Technology, Inc. Apparatuses and methods for data transfer from sensing circuitry to a controller
US9996479B2 (en) 2015-08-17 2018-06-12 Micron Technology, Inc. Encryption of executables in computational memory
US9905276B2 (en) 2015-12-21 2018-02-27 Micron Technology, Inc. Control of sensing components in association with performing operations
US9952925B2 (en) 2016-01-06 2018-04-24 Micron Technology, Inc. Error code calculation on sensing circuitry
US10048888B2 (en) 2016-02-10 2018-08-14 Micron Technology, Inc. Apparatuses and methods for partitioned parallel data movement
US9892767B2 (en) 2016-02-12 2018-02-13 Micron Technology, Inc. Data gathering in memory
US9971541B2 (en) 2016-02-17 2018-05-15 Micron Technology, Inc. Apparatuses and methods for data movement
US10956439B2 (en) 2016-02-19 2021-03-23 Micron Technology, Inc. Data transfer with a bit vector operation device
US9899070B2 (en) 2016-02-19 2018-02-20 Micron Technology, Inc. Modified decode for corner turn
US9697876B1 (en) 2016-03-01 2017-07-04 Micron Technology, Inc. Vertical bit vector shift in memory
US10262721B2 (en) 2016-03-10 2019-04-16 Micron Technology, Inc. Apparatuses and methods for cache invalidate
US9997232B2 (en) 2016-03-10 2018-06-12 Micron Technology, Inc. Processing in memory (PIM) capable memory device having sensing circuitry performing logic operations
US10379772B2 (en) 2016-03-16 2019-08-13 Micron Technology, Inc. Apparatuses and methods for operations using compressed and decompressed data
US9910637B2 (en) 2016-03-17 2018-03-06 Micron Technology, Inc. Signed division in memory
US10120740B2 (en) 2016-03-22 2018-11-06 Micron Technology, Inc. Apparatus and methods for debugging on a memory device
US10388393B2 (en) 2016-03-22 2019-08-20 Micron Technology, Inc. Apparatus and methods for debugging on a host and memory device
US11074988B2 (en) 2016-03-22 2021-07-27 Micron Technology, Inc. Apparatus and methods for debugging on a host and memory device
US10977033B2 (en) 2016-03-25 2021-04-13 Micron Technology, Inc. Mask patterns generated in memory from seed vectors
US10474581B2 (en) 2016-03-25 2019-11-12 Micron Technology, Inc. Apparatuses and methods for cache operations
US10430244B2 (en) 2016-03-28 2019-10-01 Micron Technology, Inc. Apparatuses and methods to determine timing of operations
US10074416B2 (en) 2016-03-28 2018-09-11 Micron Technology, Inc. Apparatuses and methods for data movement
US10453502B2 (en) 2016-04-04 2019-10-22 Micron Technology, Inc. Memory bank power coordination including concurrently performing a memory operation in a selected number of memory regions
US10607665B2 (en) 2016-04-07 2020-03-31 Micron Technology, Inc. Span mask generation
US9818459B2 (en) 2016-04-19 2017-11-14 Micron Technology, Inc. Invert operations using sensing circuitry
US10153008B2 (en) 2016-04-20 2018-12-11 Micron Technology, Inc. Apparatuses and methods for performing corner turn operations using sensing circuitry
US9659605B1 (en) 2016-04-20 2017-05-23 Micron Technology, Inc. Apparatuses and methods for performing corner turn operations using sensing circuitry
US10042608B2 (en) 2016-05-11 2018-08-07 Micron Technology, Inc. Signed division in memory
US9659610B1 (en) 2016-05-18 2017-05-23 Micron Technology, Inc. Apparatuses and methods for shifting data
US10049707B2 (en) 2016-06-03 2018-08-14 Micron Technology, Inc. Shifting data
US10387046B2 (en) 2016-06-22 2019-08-20 Micron Technology, Inc. Bank to bank data transfer
US10037785B2 (en) 2016-07-08 2018-07-31 Micron Technology, Inc. Scan chain operation in sensing circuitry
US10388360B2 (en) 2016-07-19 2019-08-20 Micron Technology, Inc. Utilization of data stored in an edge section of an array
US10387299B2 (en) 2016-07-20 2019-08-20 Micron Technology, Inc. Apparatuses and methods for transferring data
US10733089B2 (en) 2016-07-20 2020-08-04 Micron Technology, Inc. Apparatuses and methods for write address tracking
US9972367B2 (en) 2016-07-21 2018-05-15 Micron Technology, Inc. Shifting data in sensing circuitry
US9767864B1 (en) 2016-07-21 2017-09-19 Micron Technology, Inc. Apparatuses and methods for storing a data value in a sensing circuitry element
US10303632B2 (en) 2016-07-26 2019-05-28 Micron Technology, Inc. Accessing status information
US10468087B2 (en) 2016-07-28 2019-11-05 Micron Technology, Inc. Apparatuses and methods for operations in a self-refresh state
US9990181B2 (en) 2016-08-03 2018-06-05 Micron Technology, Inc. Apparatuses and methods for random number generation
US11029951B2 (en) 2016-08-15 2021-06-08 Micron Technology, Inc. Smallest or largest value element determination
US10606587B2 (en) 2016-08-24 2020-03-31 Micron Technology, Inc. Apparatus and methods related to microcode instructions indicating instruction types
US10466928B2 (en) 2016-09-15 2019-11-05 Micron Technology, Inc. Updating a register in memory
US10387058B2 (en) 2016-09-29 2019-08-20 Micron Technology, Inc. Apparatuses and methods to change data category values
US10014034B2 (en) 2016-10-06 2018-07-03 Micron Technology, Inc. Shifting data in sensing circuitry
US10529409B2 (en) 2016-10-13 2020-01-07 Micron Technology, Inc. Apparatuses and methods to perform logical operations using sensing circuitry
US9805772B1 (en) 2016-10-20 2017-10-31 Micron Technology, Inc. Apparatuses and methods to selectively perform logical operations
CN207637499U (en) 2016-11-08 2018-07-20 美光科技公司 The equipment for being used to form the computation module above memory cell array
US10423353B2 (en) 2016-11-11 2019-09-24 Micron Technology, Inc. Apparatuses and methods for memory alignment
US9761300B1 (en) 2016-11-22 2017-09-12 Micron Technology, Inc. Data shift apparatuses and methods
CN106843809B (en) * 2017-01-25 2019-04-30 北京大学 A kind of convolution algorithm method based on NOR FLASH array
WO2018138603A1 (en) * 2017-01-26 2018-08-02 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device and electronic device including the semiconductor device
US10402340B2 (en) 2017-02-21 2019-09-03 Micron Technology, Inc. Memory array page table walk
US10403352B2 (en) 2017-02-22 2019-09-03 Micron Technology, Inc. Apparatuses and methods for compute in data path
US10268389B2 (en) 2017-02-22 2019-04-23 Micron Technology, Inc. Apparatuses and methods for in-memory operations
US10838899B2 (en) 2017-03-21 2020-11-17 Micron Technology, Inc. Apparatuses and methods for in-memory data switching networks
US11222260B2 (en) 2017-03-22 2022-01-11 Micron Technology, Inc. Apparatuses and methods for operating neural networks
US10185674B2 (en) 2017-03-22 2019-01-22 Micron Technology, Inc. Apparatus and methods for in data path compute operations
US10049721B1 (en) 2017-03-27 2018-08-14 Micron Technology, Inc. Apparatuses and methods for in-memory operations
US10147467B2 (en) 2017-04-17 2018-12-04 Micron Technology, Inc. Element value comparison in memory
US10043570B1 (en) 2017-04-17 2018-08-07 Micron Technology, Inc. Signed element compare in memory
US9997212B1 (en) 2017-04-24 2018-06-12 Micron Technology, Inc. Accessing data in memory
US10942843B2 (en) 2017-04-25 2021-03-09 Micron Technology, Inc. Storing data elements of different lengths in respective adjacent rows or columns according to memory shapes
US10236038B2 (en) 2017-05-15 2019-03-19 Micron Technology, Inc. Bank to bank data transfer
US10068664B1 (en) 2017-05-19 2018-09-04 Micron Technology, Inc. Column repair in memory
US10013197B1 (en) 2017-06-01 2018-07-03 Micron Technology, Inc. Shift skip
US10152271B1 (en) 2017-06-07 2018-12-11 Micron Technology, Inc. Data replication
US10262701B2 (en) 2017-06-07 2019-04-16 Micron Technology, Inc. Data transfer between subarrays in memory
US10318168B2 (en) 2017-06-19 2019-06-11 Micron Technology, Inc. Apparatuses and methods for simultaneous in data path compute operations
JP6958027B2 (en) 2017-07-03 2021-11-02 富士通株式会社 Arithmetic processing unit and control method of arithmetic processing unit
US10162005B1 (en) 2017-08-09 2018-12-25 Micron Technology, Inc. Scan chain operations
US10534553B2 (en) 2017-08-30 2020-01-14 Micron Technology, Inc. Memory array accessibility
US10346092B2 (en) 2017-08-31 2019-07-09 Micron Technology, Inc. Apparatuses and methods for in-memory operations using timing circuitry
US10416927B2 (en) 2017-08-31 2019-09-17 Micron Technology, Inc. Processing in memory
US10741239B2 (en) 2017-08-31 2020-08-11 Micron Technology, Inc. Processing in memory device including a row address strobe manager
US10409739B2 (en) 2017-10-24 2019-09-10 Micron Technology, Inc. Command selection policy
US10522210B2 (en) 2017-12-14 2019-12-31 Micron Technology, Inc. Apparatuses and methods for subarray addressing
US10332586B1 (en) 2017-12-19 2019-06-25 Micron Technology, Inc. Apparatuses and methods for subrow addressing
US10614875B2 (en) 2018-01-30 2020-04-07 Micron Technology, Inc. Logical operations using memory cells
US10437557B2 (en) 2018-01-31 2019-10-08 Micron Technology, Inc. Determination of a match between data values stored by several arrays
US11194477B2 (en) 2018-01-31 2021-12-07 Micron Technology, Inc. Determination of a match between data values stored by three or more arrays
US10725696B2 (en) 2018-04-12 2020-07-28 Micron Technology, Inc. Command selection policy with read priority
US10440341B1 (en) 2018-06-07 2019-10-08 Micron Technology, Inc. Image processor formed in an array of memory cells
US11175915B2 (en) 2018-10-10 2021-11-16 Micron Technology, Inc. Vector registers implemented in memory
US10769071B2 (en) 2018-10-10 2020-09-08 Micron Technology, Inc. Coherent memory access
US10483978B1 (en) 2018-10-16 2019-11-19 Micron Technology, Inc. Memory device processing
US11184446B2 (en) 2018-12-05 2021-11-23 Micron Technology, Inc. Methods and apparatus for incentivizing participation in fog networks
US12118056B2 (en) 2019-05-03 2024-10-15 Micron Technology, Inc. Methods and apparatus for performing matrix transformations within a memory array
US10867655B1 (en) 2019-07-08 2020-12-15 Micron Technology, Inc. Methods and apparatus for dynamically adjusting performance of partitioned memory
US11360768B2 (en) 2019-08-14 2022-06-14 Micron Technolgy, Inc. Bit string operations in memory
US11449577B2 (en) 2019-11-20 2022-09-20 Micron Technology, Inc. Methods and apparatus for performing video processing matrix operations within a memory array
US11853385B2 (en) 2019-12-05 2023-12-26 Micron Technology, Inc. Methods and apparatus for performing diversity matrix operations within a memory array
US11227641B1 (en) 2020-07-21 2022-01-18 Micron Technology, Inc. Arithmetic operations in memory

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4298950A (en) * 1979-10-12 1981-11-03 Westinghouse Electric Corp. Multipoint pipeline processor for computing the discrete fourier transform
US4460958A (en) * 1981-01-26 1984-07-17 Rca Corporation Window-scanned memory
JPS6053349B2 (en) * 1981-06-19 1985-11-25 株式会社日立製作所 image processing processor
US4635292A (en) * 1983-12-19 1987-01-06 Matsushita Electric Industrial Co., Ltd. Image processor
EP0179605B1 (en) * 1984-10-17 1992-08-19 Fujitsu Limited Semiconductor memory device having a serial data input circuit and a serial data output circuit
GB2184316B (en) * 1985-12-17 1989-10-11 Sony Corp Two-dimensional finite impulse response filter arrangements.
US4860373A (en) * 1986-03-31 1989-08-22 General Electric Company Location dependent signal processor
US4845664A (en) * 1986-09-15 1989-07-04 International Business Machines Corp. On-chip bit reordering structure
JPH06101039B2 (en) * 1988-05-11 1994-12-12 富士通株式会社 Window image data read processing method
FR2634084A1 (en) * 1988-07-08 1990-01-12 Labo Electronique Physique INTEGRATED CIRCUIT AND IMAGE PROCESSING DEVICE
JPH0736163B2 (en) * 1988-08-26 1995-04-19 株式会社東芝 Fill pattern generator
US5321510A (en) * 1989-11-13 1994-06-14 Texas Instruments Incorporated Serial video processor
JP2753129B2 (en) * 1990-10-02 1998-05-18 株式会社東芝 Semiconductor storage device
US5276641A (en) * 1991-12-12 1994-01-04 International Business Machines Corporation Hybrid open folded sense amplifier architecture for a memory device
GB9202613D0 (en) * 1992-02-07 1992-03-25 Questech Ltd Improvements in and relating to digital filters
EP0626661A1 (en) * 1993-05-24 1994-11-30 Societe D'applications Generales D'electricite Et De Mecanique Sagem Digital image processing circuitry
US5671296A (en) * 1994-02-15 1997-09-23 Unisys Corporation Method of electronically processing a quantized image

Also Published As

Publication number Publication date
US5854636A (en) 1998-12-29
TW447192B (en) 2001-07-21
KR100373222B1 (en) 2003-04-26
EP0676764A3 (en) 1998-05-06
EP0676764B1 (en) 2001-05-23
JPH07282237A (en) 1995-10-27
CN1104695C (en) 2003-04-02
JP3251421B2 (en) 2002-01-28
EP0676764A2 (en) 1995-10-11
CN1126860A (en) 1996-07-17
DE69520974D1 (en) 2001-06-28
KR950033952A (en) 1995-12-26

Similar Documents

Publication Publication Date Title
DE69520974T2 (en) An integrated semiconductor circuit
DE68926783T2 (en) PARALLEL DATA PROCESSOR
DE3407983C2 (en) Multi-processor computer system for generating pixel information from object elements defined in a hierarchical data structure
DE60109858T2 (en) System for measuring inequality of stereoscopic images
DE3804938C2 (en) Image processing device
DE69132495T2 (en) Distributed processing memory
DE3784050T2 (en) A PARALLEL DATA PROCESSOR.
DE3789116T2 (en) PROCESSOR FOR TWO-DIMENSIONAL DISCRETE COSINE TRANSFORMATION.
DE3202365C2 (en) Data storage with window scanning
DE69217150T2 (en) Motion vector estimation, motion picture coding and storage
DE3852909T2 (en) Linear chain of parallel processors and methods of use thereof.
DE3688353T2 (en) NON-RECURSIVE TWO-DIMENSIONAL DIGITAL FILTER.
DE3689926T2 (en) Sequential image transformation device.
DE3114643C2 (en)
DE3788747T2 (en) Semiconductor memory.
DE3750017T2 (en) Orthogonal transformation processor.
DE3632639C2 (en) Device for high-speed processing of image data by folding
DE69624866T2 (en) Memory circuit for texture patterns
DE2640157A1 (en) PROCEDURE AND ARRANGEMENT FOR REDUNDANCY REDUCING IMAGE CODING
DE69609475T2 (en) Two-dimensional associative processor and data transfer method
DE3788758T2 (en) Polymorphic mesh network for image processing system.
DE69504203T2 (en) MULTI-GATE DATA STORAGE ARRANGEMENT WITH MULTIPLE COLUMN GROUPS
DE68925303T2 (en) Cell stack for series architecture with variable digit width
DE4036455C1 (en)
DE69031317T2 (en) Processing of a two-dimensional particle of a digital image signal

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee