EP0771463B1 - Process and device for storing and rotating bit configurations - Google Patents
Process and device for storing and rotating bit configurations Download PDFInfo
- Publication number
- EP0771463B1 EP0771463B1 EP95918529A EP95918529A EP0771463B1 EP 0771463 B1 EP0771463 B1 EP 0771463B1 EP 95918529 A EP95918529 A EP 95918529A EP 95918529 A EP95918529 A EP 95918529A EP 0771463 B1 EP0771463 B1 EP 0771463B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- matrix
- cells
- row
- storage
- storing
- 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 - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 11
- 239000011159 matrix material Substances 0.000 claims description 166
- 210000004027 cell Anatomy 0.000 claims description 128
- 230000002093 peripheral effect Effects 0.000 claims description 7
- 210000000352 storage cell Anatomy 0.000 claims description 6
- 230000008878 coupling Effects 0.000 claims 3
- 238000010168 coupling process Methods 0.000 claims 3
- 238000005859 coupling reaction Methods 0.000 claims 3
- 238000011144 upstream manufacturing Methods 0.000 claims 1
- 101100077149 Human herpesvirus 8 type P (isolate GK18) K5 gene Proteins 0.000 description 8
- 102100038546 Fibronectin type III and SPRY domain-containing protein 1 Human genes 0.000 description 7
- 101001030521 Homo sapiens Fibronectin type III and SPRY domain-containing protein 1 Proteins 0.000 description 7
- 101100191136 Arabidopsis thaliana PCMP-A2 gene Proteins 0.000 description 4
- 101001122448 Rattus norvegicus Nociceptin receptor Proteins 0.000 description 4
- 101100048260 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) UBX2 gene Proteins 0.000 description 4
- 230000006870 function Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/60—Rotation of whole images or parts thereof
- G06T3/606—Rotation of whole images or parts thereof by memory addressing or mapping
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/12—Group selection circuits, e.g. for memory block selection, chip selection, array selection
Definitions
- the invention relates to a method and device for Save and rotate bit patterns.
- the bit patterns are in Matrix cells of a memory matrix are writable and again readable.
- a bit pattern represents one in its individual Pixels (image points) resolved image information.
- image information are for example in the case of screen devices and other display units and for copying and printing devices for reproducing the image information on a recording medium processed.
- An electrographic printer is known from US Pat. No. 5,012,434.
- the image information to be printed by a data processing device receives.
- This coded image information is from converted into a bit pattern by a printer controller and, if necessary turned.
- the bit pattern is sent to a subordinate Playback device read out the bit pattern and thus transmits the image information to a recording medium.
- Memory matrices are usually used to rotate bit patterns used on their matrix cells with the help of peripheral Selection elements can be accessed at will. So is it is possible, for example, whole rows or whole columns write and read in parallel from the memory matrix.
- each matrix cell has exactly one memory cell in which a pixel is in the form of a logical zero or one is discardable.
- Each matrix cell is via a first line with a line multiplexer and via a second line connected to a column multiplexer.
- the column multiplexers and line multiplexers serve as peripheral selection elements. Therefore, depending on the size of the memory matrix a large number of lines from the matrix cells to the matrix periphery needed. This makes the size a realizable one Matrix limited.
- a storage unit for use is known from US-A-4 935 897 known in a printer.
- the storage unit can act as a buffer memory be used for image data. At every matrix point A pixel can be stored in the memory unit will. Through targeted control using a row decoder and a column decoder can read out pixels that there is an image rotation.
- US-A-4 875 190 is a two-dimensional storage unit known which contains memory modules arranged in matrix form. Each memory chip is itself a matrix organized two-dimensional memory with random Access. All memory chips are the same and are created using of a nine bit wide address bus, whereby at the same time always a specific one, in all memory modules same matrix cell can be selected.
- the present invention has for its object a Device and method for storing and rotating To show bit patterns, with the matrix size remaining the same, the number of connecting lines between the Matrix cells and the matrix periphery is reduced.
- Figure 12 schematically shows the structure of the image generation a printer.
- Image information is sent from a computer HOST in coded form to a channel interface HI (host Interface).
- HI host Interface
- a downstream grid module RM the coded image information is converted into a bit pattern.
- This raster module RM contains, among other things Storage matrix for storage and described below Rotate bit patterns.
- the generated in the RM module Bit pattern is sent to a playback unit WG, for example a printer (PRINTER).
- a Rotate the bit pattern stored in the memory matrix in made in a known manner. For example, instead of a column ROW (0..7) selected a column COL (0..7) and then the bit order in the read data word is reversed.
- the original can now Matrix can be folded over its diagonals.
- An original Matrix is shown in Figure 2.
- a cell index is entered.
- the matrix cell MZ of the column Zero COL (0) and the row zero ROW (0) is with the index 00 designated.
- the other matrix cells MZ are corresponding designated.
- the matrix cells MZ of row two are ROW (2) each marked by a hatched circle. This The marking corresponds to a position of row 2 rotated by 0 ° ROW (2).
- the matrix cells MZ, in which this row ROW (2) after a rotation of a further 90 ° are in the following Marked way: A hatched rectangle corresponds to one Rotation by 90 °, a square box corresponds to one Rotation by 180 °, a circle corresponds to a rotation by 270 °. Diagonally across the storage matrix runs from the matrix cell MZ with the index 00 to the matrix cell MZ with the index 77 a first diagonal D1. About this first diagonal D1 the original matrix worked. The result of this folding process is shown in Figure 3.
- the third diagonal D3 runs from the matrix cell MZ with the indices 12,21,56,65 to the matrix cell MZ with the cell indices 03,30,47,74 and the diagonal D3 'runs from the matrix cell MZ with the cell indices 04,40,37,73 to the matrix cell MZ with the cell indices 15.51.26.62.
- the wiring of the folded memory arrays according to the Figures 3 and 4 for connecting the data outputs DOUT from Matrix cells MZ with the playback device WG is in the Figures 5 and 6 shown.
- the cell indices of column 2 COL (2) and row 2 ROW (2) of the original matrix each together in a matrix cell MZ.
- the corresponding Matrix cells MZ are hatched in FIGS. 5 and 6 shown.
- the matrix cells are MZ over third lines LT3 with column / row multiplexers RCMUX connected.
- RCMUX column / row multiplexers
- a memory cell SZ consists of a flip-flop FF (0..1) and a load multiplexer LM (0..1).
- the flip-flops FF (0..1) is a clock CLK fed.
- the output of each flip-flop FF (0..1) is one Input of the load multiplexer LM (0..1) returned.
- Of the other input of the load multiplexer LM (0..1) is via a Data line D (0..1) connected to the periphery.
- the charging multiplexer LM (0..1) is connected by means of a charging line LD (0..1) between a charging function and a holding function from the outside switched.
- LD (0..1) On the charging line to create appropriate information, which means that at the Data line D (0..1) image information present in the memory cell SZ is written.
- the charging lines LD (0..1) are coupled to a charging control, not shown.
- the outputs of the flip-flops FF (0..1) are each with an input of one serving as an internal selection element Cell multiplexer ZMUX connected. With the help of this cell multiplexer ZMUX becomes one of the outputs of the flip-flops FF (0..1) switched through to the data output DOUT of the matrix cell MZ. The selection is made with the help of a selection management SEL.
- a matrix cell MZ that contains four memory cells SZ is constructed as shown in Figure 9.
- the structure of each Memory cells SZ of this matrix cell MZ corresponds to this described above according to Figure 8. Only the cell multiplexer ZMUX points according to the number of memory cells SZ four inputs, optionally with the data output DOUT are connectable.
- To select a memory cell SZ two selection lines SEL (1..0) are required. These selection lines SEL (1..0) are with a readout control device coupled according to Figure 10.
- FIG. 10 shows a readout control device for reading out a twice folded matrix according to FIGS. 4, 6 and 7.
- the readout controller becomes a binary coded address ADDR (2..0) fed the one logical line to be read ROW indicates.
- the two least significant address bits ADDR (1..0) become a negating and a non-negating input an address multiplexer AMUX supplied. Which of the entrances is switched through to the output of the address multiplexer determined by the most significant address bit ADDR (2).
- the exit of the address multiplexer AMUX is with the control lines ADDR_L (1..0) of the row / column multiplexer RCMUX and with the Input of a decoder DEC connected.
- the inputs of two more are at the output of the decoder DEC Address multiplexer AMMUX1, AMMUX2 coupled.
- the least significant Image of the DEC decoder is not used.
- Each of these another address multiplexer AMMUX has a non-inverting and an inverting input, which is optional can be switched through to the output.
- the output of an address multiplexer AMMUX1 is with a first control line bundle MIR1 (3..1) coupled.
- the output of the second address multiplexer AMMUX2 is with a second control line bundle MIR2 (3..1) coupled.
- the two address multiplexers AMMUX1, AMMUX2 are dependent on the most significant address bit ADDR (2) and from one of the rotating lines RED (1..0) Rotation information switched.
- the most significant address bit ADDR (2) and the rotation information are passed through four EXCLUSIVE-OR gates XOR1, XOR2, XOR3, XOR4 linked together.
- the rotation lines RED (1..0) are at the two inputs of the first EXCLUSIVE-OR gate XOR1 and to one input each of the second EXCLUSIVE-OR gate XOR2 and the fourth EXCLUSIVE-OR gate XOR4 coupled.
- the exit of the first EXCLUSIVE-OR gate XOR1 is with one input of the third EXCLUSIVE-OR gate XOR3 coupled.
- the most valuable Address bit ADDR (2) is at one input of the second, third and fourth EXCLUSIVE-OR gate XOR2, XOR3, XOR4.
- the output of the second EXCLUSIVE-OR gate XOR2 switches the address multiplexer AMMUX1 and is connected to the line MIRROR1 coupled.
- the output of the third EXCLUSIVE-OR gate XOR3 switches over the address multiplexer AMMUX2 and is the MIRROR2 line coupled.
- the output of the fourth EXCLUSIVE-OR gate XOR4 is coupled to the MIRROR3 'line.
- the memory matrix is in divided into two symmetrical parts. The left Half form the columns COL (0 ... 3) and the right one Half of the columns are COL (4..7).
- Each of the matrix cells MZ The left half of the memory matrix is the fourth Control line MIRROR2 coupled.
- the fourth control line MIRROR2 is included in the edge cells (two memory cells) the selection line SEL and in the core cells (four memory cells) with the selector line SEL1 of the cell multiplexer ZMUX connected.
- the selection lines SEL0 of the core cells of the left half of the memory matrix are column by column connected to one of the first control lines MIR1 (3..1).
- the selection lines SEL of the edge cells and the selection lines SEL0 of the core cells of the right half of the memory matrix are connected to the third control line MIRROR1.
- the selector lines SEL1 of the core cells of the right half of the memory matrix are in columns with one of the second control lines MIR2 (3..1) connected.
- the fifth control line MIRROR3 controls a not shown Multiplexer arrangement constructed in line width.
- On the inputs of the 2: 1 multiplexer arrangement are the outputs of the row / column multiplexer RCMUX connected so that the first inputs of the multiplexer arrangement with the logical Line L_ROW (0..7) are coupled in ascending order and at the second inputs of the multiplexer arrangement logical line L_ROW (7..0) coupled in reverse order are.
- Figure 11 shows a schematic representation of the rotation of a bit pattern.
- four different rotational positions namely one rotation 0 °, 90 ° rotation, 180 ° rotation and 1 rotation represented by 270 °.
- In the horizontal direction they are related operations are shown, starting from a rotation of 0 ° are required to get to the desired one To reach the rotational position.
- For a rotation of 0 ° are therefore no operations required.
- For a 90 ° turn is a reflection on the second diagonal D2 (MIRROR2) and then mirroring the line bisector (runs between row3 and row4) of the memory matrix (MIRROR3 ') is required.
- MIRROR2 second diagonal D2
- MIRROR3 ' mirroring the line bisector (runs between row3 and row4) of the memory matrix
- MIRROR1, MIRROR2 With a rotation of 180 ° there is a reflection the first and the second diagonal (MIRROR1, MIRROR2) required. A reflection is on for a rotation of 270 ° the first diagonal D1 (MIRROR1) with subsequent mirroring of the lines at the line bisector of the memory matrix (MIRROR3 ') required.
- the reflection on the line bisector (MIRROR3 ') corresponds to a reflection at the column bisector in the original matrix because of this reflection a reflection on the first or on the second diagonal D1, D2 precedes.
- the respective operations can be carried out with the aid of the memory matrix according to the invention and its readout control device.
- This readout process is explained below with reference to FIGS. 4, 4a, 6, 7 and 10.
- the address ADDR (2..0) for the selected row 2 ROW (2) is 010.
- a logical 1 is accordingly present at the output of the first EXCLUSIVE-OR gate XOR1.
- the address multiplexer AMUX outputs the two low-order address bits ADDR (1..0) unchanged to the control line ADDR_L (1..0).
- the matrix cells MZ hatched in FIGS. 4, 6 and 7 are thereby selected.
- the decoder DEC works according to the following truth table: ADDR (1) ADDR (0) MSB LSB 0 0 0 0 0 1 0 1 0 0 1 0 1 0 0 1 0 0 1 1 1 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0
- the individual memory cells SZ of the core cells according to FIG. 4 are arranged for easier understanding as shown in FIG. 4a.
- the most significant bit indicates the logical state on the second selection line SEL (1) and the least significant bit indicates the logical state on the first selection line SEL (0).
- MIRROR2 in the left half of the memory matrix described in the matrix cell MZ of column 2 COL (2) and row 7 or respectively .
- the memory cell SZ with the index 57 selected Accordingly, the memory cell SZ with the index 57 selected. The same applies to the other cells of the left half of the memory matrix.
- the memory cell SZ with the index 51 selected Accordingly, the memory cell SZ with the index 51 selected. The same applies to the other cells of the right half of the memory matrix.
- RCMUX is at the output of the row / column multiplexer the content of row 5 ROW (5) rotated by 180 ° parallel to Available. In this way, all lines become 0 in succession or 7 ROW (0..7) rotated by 180 °.
- rotation RED (1) RED (0) 0 ° 0 0 90 ° 0 1 180 ° 1 0 270 ° 1 1
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Image Processing (AREA)
Description
Die Erfindung betrifft ein Verfahren und Vorrichtung zum Speichern und Drehen von Bitmustern. Die Bitmuster sind in Matrixzellen einer Speichermatrix einschreibbar und wieder auslesbar. Ein Bitmuster repräsentiert eine in ihre einzelnen Pixel (Bildpunkte) aufgelöste Bildinformation. Solche Bildinformationen werden beispielsweise bei Bildschirmgeräten und sonstigen Anzeigeeinheiten und bei Kopier- und Druckgeräten zur Wiedergabe der Bildinformation auf einem Aufzeichnungsträger verarbeitet.The invention relates to a method and device for Save and rotate bit patterns. The bit patterns are in Matrix cells of a memory matrix are writable and again readable. A bit pattern represents one in its individual Pixels (image points) resolved image information. Such image information are for example in the case of screen devices and other display units and for copying and printing devices for reproducing the image information on a recording medium processed.
Aus US 5 012 434 ist ein elektrografischer Drucker bekannt, der von einem Datenverarbeitungsgerät zu druckende Bildinformationen erhält. Diese codierte Bildinformation wird von einem Druckercontroller in ein Bitmuster umgesetzt und gegebenenfalls gedreht. Das Bitmuster wird an eine nachgeordnete Wiedergabeeinrichtung ausgelesen, die das Bitmuster und damit die Bildinformation auf einen Aufzeichnungsträger überträgt.An electrographic printer is known from US Pat. No. 5,012,434. the image information to be printed by a data processing device receives. This coded image information is from converted into a bit pattern by a printer controller and, if necessary turned. The bit pattern is sent to a subordinate Playback device read out the bit pattern and thus transmits the image information to a recording medium.
Zum Drehen von Bitmustern werden üblicherweise Speichermatrizen verwendet, auf deren Matrixzellen mit Hilfe von peripheren Auswahlelementen wahlfrei zugegriffen werden kann. So ist es beispielsweise möglich, ganze Zeilen oder ganze Spalten parallel aus der Speichermatrix einzuschreiben und auszulesen. Jede Matrixzelle weist dazu genau eine Speicherzelle auf, in der ein Pixel in Form einer logischen Null oder Eins ablegbar ist. Jede Matrixzelle ist über je eine erste Leitung mit einem Zeilenmultiplexer und über eine zweite Leitung mit einem Spaltenmultiplexer verbunden. Die Spaltenmultiplexer und Zeilenmultiplexer dienen dabei als periphere Auswahlelemente. Abhängig von der Größe der Speichermatrix wird deshalb eine Vielzahl von Leitungen von den Matrixzellen zur Matrixperipherie benötigt. Dadurch wird die Größe einer realisierbaren Matrix begrenzt.Memory matrices are usually used to rotate bit patterns used on their matrix cells with the help of peripheral Selection elements can be accessed at will. So is it is possible, for example, whole rows or whole columns write and read in parallel from the memory matrix. For this purpose, each matrix cell has exactly one memory cell in which a pixel is in the form of a logical zero or one is discardable. Each matrix cell is via a first line with a line multiplexer and via a second line connected to a column multiplexer. The column multiplexers and line multiplexers serve as peripheral selection elements. Therefore, depending on the size of the memory matrix a large number of lines from the matrix cells to the matrix periphery needed. This makes the size a realizable one Matrix limited.
Aus US-A-4 935 897 ist eine Speichereinheit zur den Einsatz in einem Drucker bekannt. Die Speichereinheit kann als Pufferspeicher für Bilddaten verwendet werden. An jedem Matrixpunkt der Speichereinheit kann dabei ein Bildpunkt gespeichert werden. Durch gezielte Steuerung mittels eines Reihendecoders und eines Spaltendecoders können Bildpunkte so ausgelesen werden, daß damit eine Bilddrehungen erfolgt.A storage unit for use is known from US-A-4 935 897 known in a printer. The storage unit can act as a buffer memory be used for image data. At every matrix point A pixel can be stored in the memory unit will. Through targeted control using a row decoder and a column decoder can read out pixels that there is an image rotation.
Aus US-A-4 875 190 ist eine zweidimensionale Speichereinheit bekannt, die in Matrixform angeordnete Speicherbausteine enthält. Jeder Speicherbaustein ist seinerseits ein in Matrixform organisierter zweidimensionaler Speicher mit wahlfreiem Zugriff. Alle Speicherbausteine sind gleich und werden mittels eines neun Bit breiten Adressbusses adressiert, wodurch gleichzeitig stets eine bestimmte, in allen Speicherbausteinen gleiche Matrixzelle auswählbar ist.From US-A-4 875 190 is a two-dimensional storage unit known which contains memory modules arranged in matrix form. Each memory chip is itself a matrix organized two-dimensional memory with random Access. All memory chips are the same and are created using of a nine bit wide address bus, whereby at the same time always a specific one, in all memory modules same matrix cell can be selected.
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, eine Vorrichtung und ein Verfahren zum Speichern und Drehen von Bitmustern aufzuzeigen, bei der bei gleichbleibender Matrixgröße, die Anzahl der Verbindungsleitungen zwischen den Matrixzellen und der Matrixperipherie verringert wird.The present invention has for its object a Device and method for storing and rotating To show bit patterns, with the matrix size remaining the same, the number of connecting lines between the Matrix cells and the matrix periphery is reduced.
Diese Aufgabe wird erfindungsgemäß durch die in den Patentansprüchen
1 und 4 angegebenen Merkmale gelöst. Ausführungen
und Weiterbildungen der Erfindung sind in Unteransprüchen angegeben.This object is achieved by the in the
Durch das Zusammenfassen von mehreren Speicherzellen in einer Matrixcelle mit nur einem Ausgang und einer internen Datenselektion, wird der globale Verdrahtungsaufwand drastisch reduziert. Es können dadurch bei gegebenen technischen Möglichkeiten größere Speichermatrizen realisiert werden. By combining several memory cells in one Matrix cell with only one output and an internal data selection, the global wiring effort is drastically reduced. It can, given the technical possibilities larger storage matrices can be realized.
Welche Information in welcher Matrixzelle gespeichert wird kann im Hinblick auf schnelle Auslesbarkeit optimiert werden. Ist wie in Unteransprüchen angegeben zeilen- und spaltenweise Auslesbarkeit gewünscht, werden nur Pixel, deren Information nicht gleichzeitig ausgelesen werden muß, in den Speichertellen einer Matrixzelle zusammengefaßt. Durch das Klappen der originalen quadratischen Matrix über mindestens eine ihrer Diagonalen, werden solche Pixel gefunden. Die nach dem Klappen deckungsgleich übereinanderliegenden Pixel können in einer Matrixzelle zusammengefaßt werden. Bei entsprechend häufig geklappter originaler Matrix werden so Pixel einer Matrixposition für mehrere Drehrichtungen in den Speicherzellen einer Matrixzelle zusammengefaßt. Die Auswahl, welche Speicherzelle mit dem Datenausgang der Matrixzelle zur verbinden ist, wird durch das in der Matrixzelle vorgesehene interne Auswahlelement vorgenommen. Die Anzahl der dazu notwendigen Steuerleitungen ist gegenüber der Anzahl der eingesparten Verbindungsleitungen zwischen Matrixzellen und Matrixperipherie gering.Which information is stored in which matrix cell can be optimized for quick readability. As indicated in the subclaims, row by column Readability is desired, only pixels whose information does not have to be read out simultaneously in the memory locations summarized in a matrix cell. By folding the original square matrix over at least one of their Diagonals, such pixels are found. The one after folding Pixels lying congruently one above the other can be in one Matrix cell can be summarized. With correspondingly frequent folded original matrix become pixels of a matrix position for several directions of rotation in the storage cells summarized in a matrix cell. Choosing which memory cell to connect to the data output of the matrix cell is by the internal provided in the matrix cell Selection element made. The number of necessary Control lines is compared to the number of saved connecting lines between matrix cells and Low matrix periphery.
Ein Beispiel der Erfindung wird im folgenden anhand der Zeichnung näher erläutert. Dabei zeigen
Figur 1- eine Speichermatrix gemäß dem Stand der Technik,
Figur 2- eine schematische Darstellung einer Speichermatrix mit einer ersten Diagonale,
Figur 3- eine bereits einmal geklappte Speichermatrix mit einer weiteren Diagonale,
Figur 4- eine bereits zweimal geklappte Speichermatrix mit einer weiteren Diagonale,
Figur 5- eine einmal geklappte Speichermatrix mit Leitungsverbindungen von den Matrixzellen zu den peripheren Auswahlelementen,
Figur 6- eine zweimal geklappte Matrix mit Verbindungsleitungen von den Matrixzellen zu der Matrixperipherie,
Figur 7- eine zweimal geklappte Matrix mit Steuerleitungen zu den Auswahlelementen der Matrixzellen,
Figur 8- ein Schaltungsbeispiel einer Matrixzelle mit zwei Speicherzellen,
- Figur 9
- ein Schaltungsbeispiel einer Matrixzelle mit vier Speicherzellen,
Figur 10- eine Auslesesteuereinrichtung für eine Speichermatrix
gemäß den
Figuren 6 und 7, Figur 11- eine Darstellung der Einzeloperationen beim Auslesen der Speichermatrix für verschiedene Drehrichtungen und
Figur 12- eine schematische Darstellung der Bildgenerierung eines Druckers.
- Figure 1
- a memory matrix according to the prior art,
- Figure 2
- 1 shows a schematic representation of a memory matrix with a first diagonal,
- Figure 3
- an already folded memory matrix with another diagonal,
- Figure 4
- a memory matrix already folded twice with another diagonal,
- Figure 5
- a once folded memory matrix with line connections from the matrix cells to the peripheral selection elements,
- Figure 6
- a twice folded matrix with connecting lines from the matrix cells to the matrix periphery,
- Figure 7
- a twice folded matrix with control lines to the selection elements of the matrix cells,
- Figure 8
- 1 shows a circuit example of a matrix cell with two memory cells,
- Figure 9
- 1 shows a circuit example of a matrix cell with four memory cells,
- Figure 10
- a readout control device for a memory matrix according to FIGS. 6 and 7,
- Figure 11
- a representation of the individual operations when reading out the memory matrix for different directions of rotation and
- Figure 12
- a schematic representation of the image generation of a printer.
Figur 12 zeigt schematisch den Aufbau der Bildgenerierung eines Druckers. Von einem Computer HOST wird eine Bildinformation in codierter Form an eine Kanalschnittstelle HI (Host Interface) übergeben. Auf einem nachgeschalteten Raster Modul RM wird die codierte Bildinformation in ein Bitmuster umgesetzt. Dieses Rastermodul RM enthält unter anderem eine nachfolgend beschriebene Speichermatrix zum Speichern und Drehen von Bitmustern. Das im Raster Modul RM generierte Bitmuster wird an eine Wiedergabeeinheit WG, beispielsweise einen Drucker (PRINTER), ausgegeben.Figure 12 schematically shows the structure of the image generation a printer. Image information is sent from a computer HOST in coded form to a channel interface HI (host Interface). On a downstream grid module RM the coded image information is converted into a bit pattern. This raster module RM contains, among other things Storage matrix for storage and described below Rotate bit patterns. The generated in the RM module Bit pattern is sent to a playback unit WG, for example a printer (PRINTER).
Figur 1 zeigt eine originale quadratische Matrix mit n=8 Spalten COL und n=8 Zeilen ROW. Jeder Spalte ist ein Zeilenmultiplexer RMUX zugeordnet. Jeder Zeilenmultiplexer RMUX ist über zweite Leitungen LT2 mit Datenausgängen von Matrixzellen MZ verbunden. Mittels des 8:1 Zeilenmultiplexers RMUX kann somit jeweils ein Datenausgang einer Matrixzelle MZ mit dem Ausgang des Zeilenmultiplexers RMUX verbunden werden. Damit kann mit Hilfe der Zeilenmultiplexer RMUX eine der Zeilen ROW(0..7) der Speichermatrix ausgelesen werden.Figure 1 shows an original square matrix with n = 8 Columns COL and n = 8 rows ROW. Each column is a row multiplexer Assigned to RMUX. Every line multiplexer is RMUX via second lines LT2 with data outputs from matrix cells MZ connected. Using the 8: 1 RMUX line multiplexer thus one data output each from a matrix cell MZ with the Output of the line multiplexer RMUX can be connected. In order to can use the line multiplexer RMUX one of the lines ROW (0..7) of the memory matrix can be read out.
In der Matrixperipherie sind auch acht Spaltenmultiplexer CMUX angeordnet. Ein Eingang eines Spaltenmultiplexers CMUX ist jeweils mit einer Matrixzelle MZ einer Zeile ROW der Speichermatrix über eine erste Leitung LT1 verbunden. Dadurch kann der Ausgang des Spaltenmultiplexers CMUX mit einer der Matrixzellen MZ der jeweiligen Zeile ROW verbunden werden. Mit Hilfe der Spaltenmultiplexer CMUX ist somit eine Spalte COL(0..7) der Speichermatrix auslesbar. Bei dieser Speichermatrix gemäß dem Stand der Technik sind somit doppelt so viele Leitungen LT1, LT2 zwischen den Matrixzellen MZ und den Zeilen- bzw. Spaltenmultiplexern RMUX,CMUX erforderlich, wie Matrixzellen MZ vorhanden sind.There are also eight column multiplexers in the matrix periphery CMUX arranged. An input of a column multiplexer CMUX is each with a matrix cell MZ of a row ROW Memory matrix connected via a first line LT1. Thereby can the output of the column multiplexer CMUX with one of the Matrix cells MZ of the respective row ROW are connected. With the help of the column multiplexer CMUX is thus a column COL (0..7) of the memory matrix can be read out. With this memory matrix according to the prior art are thus twice as much many lines LT1, LT2 between the matrix cells MZ and Row or column multiplexers RMUX, CMUX required, such as Matrix cells MZ are available.
Bei einer solchen originalen quadratischen Matrix wird ein Drehen des in der Speichermatrix abgelegte Bitmusters in bekannter Weise vorgenommen. Beispielsweise wird anstelle einer Zeile ROW(0..7) eine Spalte COL(0..7) selektiert und anschließend die Bitreihenfolge im gelesenen Datenwort vertauscht.With such an original square matrix, a Rotate the bit pattern stored in the memory matrix in made in a known manner. For example, instead of a column ROW (0..7) selected a column COL (0..7) and then the bit order in the read data word is reversed.
Gemäß der vorliegenden Erfindung kann nun die originale
Matrix über ihre Diagonalen geklappt werden. Eine originale
Matrix ist in Figur 2 dargestellt. In jeder Matrixzelle MZ
ist ein Zellindize eingetragen. Die Matrixzelle MZ der Spalte
Null COL(0) und der Zeile Null ROW (0) ist mit dem Indize 00
bezeichnet. Die anderen Matrixzellen MZ sind entsprechend
bezeichnet. Die Matrixzellen MZ der Zeile zwei ROW(2) sind
jeweils durch einen schraffierten Kreis markiert. Diese
Markierung entspricht einer um 0° gedrehten Lage der Zeile 2
ROW(2). Die Matrixzellen MZ, in denen diese Zeile ROW(2) nach
einer Drehung um jeweils weitere 90° liegt, sind in folgender
Weise markiert: Ein schraffiertes Rechteck entspricht einer
Drehung um 90°, ein quadratisches Kästchen entspricht einer
Drehung um 180°, ein Kreis entspricht einer Drehung um 270°.
Diagonal über die Speichermatrix verläuft von der Matrixzelle
MZ mit dem Indize 00 zur Matrixzelle MZ mit dem Indize 77
eine erste Diagonale D1. Über diese erste Diagonale D1 wird
die originale Matrix geklappt. Das Ergebnis dieses Klappvorganges
ist in Figur 3 dargestellt.According to the present invention, the original can now
Matrix can be folded over its diagonals. An original
Matrix is shown in Figure 2. In every matrix cell MZ
a cell index is entered. The matrix cell MZ of the column
Zero COL (0) and the row zero ROW (0) is with the
In den Matrixzellen MZ der Speichermatrix gemäß Figur 3 sind
die Zellindizes der originalen Matrix eingetragen. Die Markierungen
der Zeile 2 ROW(2) gemäß Figur 2 einschließlich
ihrer Drehpositionen wurden beibehalten. Die Matrixzellen MZ
entlang der Diagonale D1 sind unverändert. In den übrigen
Matrixzellen MZ sind jedoch jeweils zwei Zellindizes eingetragen.
Man erkennt anhand der Markierungen der verschiedenen
Drehrichtungen der Zeile 2 ROW(2), daß sich die Zellindizes
einer Spalte COL oder einer Zeile ROW jeweils in unterschiedlichen
Matrixzellen MZ befinden. Jede Spalte COL oder Zeile
ROW ist somit parallel auslesbar. Die Speichermatrix kann nun
entlang einer zweiten Diagonale D2, die von der Matrixzelle
MZ mit den Zellindizes 34, 43 zur Matrixzelle MZ mit den
Zellindizes 07, 70 verläuft, ein zweites Mal geklappt werden.
Das Ergebnis dieses Klappvorganges ist in Figur 4 dargestellt.In the matrix cells MZ of the memory matrix according to FIG. 3
the cell indices of the original matrix are entered. The markings
row 2 ROW (2) according to FIG. 2 inclusive
their rotational positions have been maintained. The matrix cells MZ
along the diagonal D1 are unchanged. In the rest
However, matrix cells MZ have two cell indices each.
One recognizes by the markings of the different ones
Direction of rotation of
Man erkennt, daß in die Randzellen, die entlang der beiden
Diagonalen D1, D2 angeordnet sind, jeweils zwei Zellindizes
eingetragen sind. Die übrigen Matrixzellen MZ enthalten
jeweils vier Zellindizes. Die Markierungen der verschiedenen
Drehrichtungen der Zeile 2 ROW(2) gemäß Figur 2, wurden
beibehalten. Auch hier ist gewährleistet, daß die Zellindizes
einer Zeile ROW oder Spalte COL sich in verschiedenen Matrixzellen
MZ befinden. Spalten COL oder Zeilen ROW können somit
parallel ausgelesen werden. Die Matrix gemäß Figur 4 kann bei
entsprechender Größe entlang einer dritten Diagonale D3, D3'
weiter geklappt werden. Die dritte Diagonale D3 verläuft von
der Matrixzelle MZ mit den Indizes 12,21,56,65 zur Matrixzelle
MZ mit den Zellindizes 03,30,47,74 und die Diagonale
D3' verläuft von der Matrixzelle MZ mit den Zellindizes
04,40,37,73 zur Matrixzelle MZ mit den Zellindizes
15,51,26,62.One can see that in the marginal cells that run along the two
Diagonals D1, D2 are arranged, two cell indices each
are registered. The remaining matrix cells contain MZ
four cell indices each. The markings of the different
Direction of rotation of
Die Beschaltung der geklappten Speichermatrizen gemäß den
Figuren 3 und 4 zur Verbindung der Datenausgänge DOUT von
Matrixzellen MZ mit der Wiedergabeeinrichtung WG, ist in den
Figuren 5 und 6 dargestellt. Die Zellindizes der Spalte 2
COL(2) und der Zeile 2 ROW(2) der originalen Matrix befinden
sich jeweils gemeinsam in einer Matrixzelle MZ. Die entsprechenden
Matrixzellen MZ sind in den Figuren 5 und 6 schraffiert
dargestellt. The wiring of the folded memory arrays according to the
Figures 3 and 4 for connecting the data outputs DOUT from
Matrix cells MZ with the playback device WG is in the
Figures 5 and 6 shown. The cell indices of
Bei der Ausführungsform gemäß Figur 5 sind die Matrixzellen MZ über dritte Leitungen LT3 mit Spalten/Zeilenmultiplexern RCMUX verbunden. Durch das einmalige Klappen der Speichermatrix wird die Anzahl der peripheren Multiplexer RCMUX auf acht Stück halbiert, weil von außerhalb der Speichermatrix nicht mehr zwischen Spalten COL und Zeilen ROW unterschieden werden muß. Diese Unterscheidung erfolgt in den Matrixzellen MZ, wie unten näher erläutert wird.In the embodiment according to FIG. 5, the matrix cells are MZ over third lines LT3 with column / row multiplexers RCMUX connected. By folding the memory matrix once the number of peripheral multiplexers RCMUX increases eight pieces halved because of outside the memory matrix no longer differentiate between columns COL and rows ROW must become. This distinction is made in the matrix cells MZ, as explained in more detail below.
Bei der zweimal geklappten Matrix gemäß Figur 6 werden ebenfalls
acht Spalten/Zeilenmultiplexer RCMUX benötigt. Diese
Spalten/Zeilenmultiplexer RCMUX weisen jedoch nur die Hälfte
der Eingänge der Spalten/Zeilenmultiplexer RCMUX bei der
einmal geklappten Matrix gemäß Figur 5 auf. Durch den zweiten
Klappvorgang wird die Anzahl der Matrixzellen MZ der Speichermatrix
so verringert, daß von außen nur mehr zwischen
vier Zeilen ROW bzw. Spalten COL unterschieden werden muß. In
einer Matrixzelle MZ stehen die Zellindizes von bis zu vier
Matrixzellen MZ der originalen Matrix zur Verfügung. So
stehen beispielsweise die Zellindizes der Zeile 2 ROW(2) für
alle Drehrichtungen dieser Zeile ROW(2) in den schraffiert
dargestellten Matrixzellen MZ (Figur 4).The twice folded matrix according to FIG
eight columns / row multiplexer RCMUX required. This
However, RCMUX column / row multiplexers only show half
of the inputs of the column / row multiplexer RCMUX at the
once folded matrix according to Figure 5. By the second
Folding process is the number of matrix cells MZ of the memory matrix
so reduced that from the outside only between
four rows ROW or columns COL must be distinguished. In
A matrix cell MZ has up to four cell indices
Matrix cells MZ of the original matrix are available. So
For example, the cell indices of
Der Aufbau einer Matrixzelle MZ mit zwei Speicherzellen SZ (zwei Indizes) ist in Figur 8 dargestellt. Eine Speicherzelle SZ besteht aus einem Flip-Flop FF(0..1) und einem Lademultiplexer LM(0..1). Den Flip-Flops FF(0..1) wird ein Takt CLK zugeführt. Der Ausgang jedes Flip-Flops FF(0..1) ist zu einem Eingang des Lademultiplexers LM(0..1) zurückgeführt. Der andere Eingang des Lademultiplexers LM(0..1) ist über eine Datenleitung D(0..1) mit der Peripherie verbunden. Der Lademultiplexer LM(0..1) wird mittels einer Ladeleitung LD(0..1) zwischen einer Ladefunktion und einer Haltefunktion von außen umgeschaltet. Sollen also Pixel in eine Speicherzelle SZ geschrieben werden, dann ist an der Ladeleitung LD(0..1) eine entsprechende Information anzulegen, wodurch die an der Datenleitung D(0..1) anliegende Bildinformation in die Speicherzelle SZ geschrieben wird. Die Ladeleitungen LD(0..1) sind dazu mit einer nicht dargestellten Ladesteuerung gekoppelt. Die Ausgänge der Flip-Flops FF(0..1) sind jeweils mit einem Eingang eines als internes Auswahlelement dienenden Zellenmultiplexers ZMUX verbunden. Mit Hilfe dieses Zellenmultiplexers ZMUX wird einer der Ausgänge der Flip-Flops FF(0..1) zum Datenausgang DOUT der Matrixzelle MZ durchgeschaltet. Die Auswahl erfolgt mit Hilfe einer Auswahlleitung SEL.The construction of a matrix cell MZ with two memory cells SZ (two indices) is shown in Figure 8. A memory cell SZ consists of a flip-flop FF (0..1) and a load multiplexer LM (0..1). The flip-flops FF (0..1) is a clock CLK fed. The output of each flip-flop FF (0..1) is one Input of the load multiplexer LM (0..1) returned. Of the other input of the load multiplexer LM (0..1) is via a Data line D (0..1) connected to the periphery. The charging multiplexer LM (0..1) is connected by means of a charging line LD (0..1) between a charging function and a holding function from the outside switched. So should pixels in a memory cell SZ are written, then there is an LD (0..1) on the charging line to create appropriate information, which means that at the Data line D (0..1) image information present in the memory cell SZ is written. The charging lines LD (0..1) are coupled to a charging control, not shown. The outputs of the flip-flops FF (0..1) are each with an input of one serving as an internal selection element Cell multiplexer ZMUX connected. With the help of this cell multiplexer ZMUX becomes one of the outputs of the flip-flops FF (0..1) switched through to the data output DOUT of the matrix cell MZ. The selection is made with the help of a selection management SEL.
Eine Matrixzelle MZ, die vier Speicherzellen SZ enthält, ist wie in Figur 9 dargestellt aufgebaut. Der Aufbau der einzelnen Speicherzellen SZ dieser Matrixzelle MZ entspricht dem oben gemäß Figur 8 beschriebenen. Lediglich der Zellenmultiplexer ZMUX weist entsprechend der Anzahl der Speicherzellen SZ vier Eingänge auf, die wahlweise mit dem Datenausgang DOUT verbindbar sind. Zur Auswahl einer Speicherzelle SZ werden zwei Auswahlleitungen SEL(1..0) benötigt. Diese Auswahlleitungen SEL(1..0) sind mit einer Auslesesteuereinrichtung gemäß Figur 10 gekoppelt.A matrix cell MZ that contains four memory cells SZ is constructed as shown in Figure 9. The structure of each Memory cells SZ of this matrix cell MZ corresponds to this described above according to Figure 8. Only the cell multiplexer ZMUX points according to the number of memory cells SZ four inputs, optionally with the data output DOUT are connectable. To select a memory cell SZ two selection lines SEL (1..0) are required. These selection lines SEL (1..0) are with a readout control device coupled according to Figure 10.
Figur 10 zeigt eine Auslesesteuereinrichtung zum Auslesen einer zweimal geklappten Matrix gemäß den Figuren 4, 6 und 7. Der Auslesesteuereinrichtung wird eine binär codierte Adresse ADDR(2..0) zugeführt, die eine auszulesende logische Zeile ROW angibt. Die beiden niederwertigen Adressenbits ADDR(1..0) werden einem negierenden und einem nicht negierenden Eingang eines Adreßmultiplexers AMUX zugeführt. Welcher der Eingänge zum Ausgang des Adreßmultiplexers durchgeschaltet wird, wird durch das höchstwertige Adreßbit ADDR(2) bestimmt. Der Ausgang des Adreßmulitplexers AMUX ist mit den Steuerleitungen ADDR_L(1..0) der Reihen/Spaltenmultiplexer RCMUX und mit dem Eingang eines Decoders DEC verbunden. Abhängig von der Adresse ADDR(2..0) wird damit eine logische Zeile L_ROW(0..7) der Speichermatrix ausgewählt. FIG. 10 shows a readout control device for reading out a twice folded matrix according to FIGS. 4, 6 and 7. The readout controller becomes a binary coded address ADDR (2..0) fed the one logical line to be read ROW indicates. The two least significant address bits ADDR (1..0) become a negating and a non-negating input an address multiplexer AMUX supplied. Which of the entrances is switched through to the output of the address multiplexer determined by the most significant address bit ADDR (2). The exit of the address multiplexer AMUX is with the control lines ADDR_L (1..0) of the row / column multiplexer RCMUX and with the Input of a decoder DEC connected. Depending on the address ADDR (2..0) thus becomes a logical line L_ROW (0..7) of the Storage matrix selected.
Am Ausgang des Decoders DEC sind die Eingänge zweier weiterer Adreßmultiplexer AMMUX1, AMMUX2 gekoppelt. Das niederwertigste Bild des Decoders DEC wird nicht verwendet. Jeder dieser weiteren Adreßmultiplexer AMMUX weist einen nicht invertierenden und einen invertierenden Eingang auf, die wahlweise zum Ausgang durchschaltbar sind. Der Ausgang des einen Adreßmultiplexers AMMUX1 ist mit einem ersten Steuerleitungsbündel MIR1(3..1) gekoppelt. Der Ausgang des zweiten Adreßmultiplexers AMMUX2 ist mit einem zweiten Steuerleitungsbündel MIR2(3..1) gekoppelt. Die beiden Adreßmulitplexer AMMUX1, AMMUX2 werden abhängig vom höchstwertigen Adreßbit ADDR(2) und von einer an Drehungsleitungen ROT(1..0) anliegenden Drehungsinformation geschaltet. Das höchstwertige Adreßbit ADDR(2) und die Drehungsinformation werden durch vier EXKLUSIV-ODER-Gatter XOR1, XOR2, XOR3, XOR4 miteinander verknüpft. Die Drehungsleitungen ROT(1..0) sind an die beiden Eingänge des ersten EXKLUSIV-ODER-Gatters XOR1 und an je einen Eingang des zweiten EXKLUSIV-ODER-Gatters XOR2 und des vierten EXKLUSIV-ODER-Gatters XOR4 gekoppelt. Der Ausgang des ersten EXKLUSIV-ODER-Gatters XOR1 ist mit einem Eingang des dritten EXKLUSIV-ODER-Gatters XOR3 gekoppelt. Das höchstwertige Adreßbit ADDR(2) ist an je einen Eingang des zweiten, dritten und vierten EXKLUSIV-ODER-Gatters XOR2, XOR3, XOR4 gekoppelt. Der Ausgang des zweiten EXKLUSIV-ODER-Gatters XOR2 schaltet den Adreßmultiplexer AMMUX1 um und ist mit der Leitung MIRROR1 gekoppelt. Der Ausgang des dritten EXKLUSIV-ODER-Gatters XOR3 schaltet den Adreßmultiplexer AMMUX2 um und ist der Leitung MIRROR2 gekoppelt. Der Ausgang des vierten EXKLUSIV-ODER-Gatters XOR4 ist mit der Leitung MIRROR3' gekoppelt.The inputs of two more are at the output of the decoder DEC Address multiplexer AMMUX1, AMMUX2 coupled. The least significant Image of the DEC decoder is not used. Each of these another address multiplexer AMMUX has a non-inverting and an inverting input, which is optional can be switched through to the output. The output of an address multiplexer AMMUX1 is with a first control line bundle MIR1 (3..1) coupled. The output of the second address multiplexer AMMUX2 is with a second control line bundle MIR2 (3..1) coupled. The two address multiplexers AMMUX1, AMMUX2 are dependent on the most significant address bit ADDR (2) and from one of the rotating lines RED (1..0) Rotation information switched. The most significant address bit ADDR (2) and the rotation information are passed through four EXCLUSIVE-OR gates XOR1, XOR2, XOR3, XOR4 linked together. The rotation lines RED (1..0) are at the two inputs of the first EXCLUSIVE-OR gate XOR1 and to one input each of the second EXCLUSIVE-OR gate XOR2 and the fourth EXCLUSIVE-OR gate XOR4 coupled. The exit of the first EXCLUSIVE-OR gate XOR1 is with one input of the third EXCLUSIVE-OR gate XOR3 coupled. The most valuable Address bit ADDR (2) is at one input of the second, third and fourth EXCLUSIVE-OR gate XOR2, XOR3, XOR4. The output of the second EXCLUSIVE-OR gate XOR2 switches the address multiplexer AMMUX1 and is connected to the line MIRROR1 coupled. The output of the third EXCLUSIVE-OR gate XOR3 switches over the address multiplexer AMMUX2 and is the MIRROR2 line coupled. The output of the fourth EXCLUSIVE-OR gate XOR4 is coupled to the MIRROR3 'line.
Wie Figur 7 zeigt, sind die Steuerleitungen MIR1, MIR2, MIRROR1, MIRROR2 mit den Auswahlleitungen SEL(1..0) der Zellenmultiplexer ZMUX gekoppelt. Die Speichermatrix ist in zwei symmetrisch aufgebaute Teile gegliedert. Die linke Hälfte bilden dabei die Spalten COL(0...3), und die rechte Hälfte bilden die Spalten COL(4..7). Jede der Matrixzellen MZ der linken Hälfte der Speichermatrix ist mit der vierten Steuerleitung MIRROR2 gekoppelt. Die vierte Steuerleitung MIRROR2 ist dazu in den Randzellen (zwei Speicherzellen) mit der Auswahlleitung SEL und in den Kernzellen (vier Speicherzellen) mit der Auswahlleitung SEL1 des Zellenmultiplexers ZMUX verbunden. Die Auswahlleitungen SEL0 der Kernzellen der linken Hälfte der Speichermatrix sind spaltenweise jeweils mit einer der ersten Steuerleitungen MIR1(3..1) verbunden.As FIG. 7 shows, the control lines MIR1, MIR2, MIRROR1, MIRROR2 with the selection lines SEL (1..0) of the Cell multiplexer ZMUX coupled. The memory matrix is in divided into two symmetrical parts. The left Half form the columns COL (0 ... 3) and the right one Half of the columns are COL (4..7). Each of the matrix cells MZ The left half of the memory matrix is the fourth Control line MIRROR2 coupled. The fourth control line MIRROR2 is included in the edge cells (two memory cells) the selection line SEL and in the core cells (four memory cells) with the selector line SEL1 of the cell multiplexer ZMUX connected. The selection lines SEL0 of the core cells of the left half of the memory matrix are column by column connected to one of the first control lines MIR1 (3..1).
Die Auswahlleitungen SEL der Randzellen und die Auswahlleitungen SEL0 der Kernzellen der rechten Hälfte der Speichermatrix, sind mit der dritten Steuerleitung MIRROR1 verbunden. Die Auswahlleitungen SEL1 der Kernzellen der rechten Hälfte der Speichermatrix sind spaltenweise jeweils mit einer der zweiten Steuerleitungen MIR2(3..1) verbunden.The selection lines SEL of the edge cells and the selection lines SEL0 of the core cells of the right half of the memory matrix, are connected to the third control line MIRROR1. The selector lines SEL1 of the core cells of the right half of the memory matrix are in columns with one of the second control lines MIR2 (3..1) connected.
Die fünfte Steuerleitung MIRROR3' steuert eine nicht dargestellte, in Zeilenbreite aufgebaute Multiplexeranordnung. An die Eingänge der 2:1 Multiplexeranordnung sind die Ausgänge der Reihen/Spaltenmultiplexer RCMUX so angeschlossen, daß die ersten Eingänge der Multiplexeranordnung mit der logischen Zeile L_ROW(0..7) in aufsteigender Reihenfolge gekoppelt sind und an den zweiten Eingängen der Multiplexeranordnung die logische Zeile L_ROW(7..0) in umgekehrter Reihenfolge gekoppelt sind. Durch Signalumkehr an der fünften Steuerleitung MIRROR3' kann somit die Bitfolge einer ausgelesenen logischen Zeile L_ROW(0..7) bzw. L_ROW(7..0) umgekehrt werden.The fifth control line MIRROR3 'controls a not shown Multiplexer arrangement constructed in line width. On the inputs of the 2: 1 multiplexer arrangement are the outputs of the row / column multiplexer RCMUX connected so that the first inputs of the multiplexer arrangement with the logical Line L_ROW (0..7) are coupled in ascending order and at the second inputs of the multiplexer arrangement logical line L_ROW (7..0) coupled in reverse order are. By signal reversal on the fifth control line MIRROR3 'can therefore read the bit sequence of a logical Line L_ROW (0..7) or L_ROW (7..0) can be reversed.
Figur 11 zeigt eine schematische Darstellung der Drehung
eines Bitmusters. In vertikaler Richtung übereinander sind
vier unterschiedliche Drehpositionen, nämlich eine Drehung um
0°, eine Drehung um 90°, eine Drehung um 180° und eine Drehung
um 270° dargestellt. In horizontaler Richtung sind die
dazugehörigen Operationen dargestellt, die ausgehend von
einer Drehung um 0° erforderlich sind, um zur gewünschten
Drehposition zu gelangen. Für eine Drehung um 0° sind demnach
keinerlei Operationen erforderlich. Für eine Drehung um 90°
ist eine Spiegelung an der zweiten Diagonale D2 (MIRROR2)und
anschließendes Spiegeln der Zeilenhalbierenden (verläuft
zwischen row3 und row4) der Speichermatrix (MIRROR3') erforderlich.
Bei einer Drehung um 180° sind eine Spiegelung an
der ersten und an der zweiten Diagonale (MIRROR1, MIRROR2)
erforderlich. Für eine Drehung um 270° ist eine Spiegelung an
der ersten Diagonale D1 (MIRROR1) mit anschließendem Spiegeln
der Zeilen an der Zeilenhalbierenden der Speichermatrix
(MIRROR3') erforderlich. Die Spiegelung an der Zeilenhalbierenden
(MIRROR3') entspricht einer Spiegelung an der Spaltenhalbierenden
in der originalen Matrix, weil dieser Spiegelung
eine Spiegelung an der ersten oder an der zweiten Diagonale
D1, D2 vorausgeht.Figure 11 shows a schematic representation of the rotation
of a bit pattern. Are one above the other in the vertical direction
four different rotational positions, namely one
Die jeweiligen Operationen können mit Hilfe der erfindungsgemäßen
Speichermatrix und deren Auslesesteuereinrichtung
durchgeführt werden. Dieser Auslesevorgang wird im folgenden
anhand der Figuren 4, 4a, 6, 7 und 10 erläutert. Die Adresse
ADDR(2..0) für die ausgewählte Zeile 2 ROW(2) ist 010. Es
erfolgt eine Drehung um 180°. An der Drehungsleitung ROT(1)
liegt eine logische 1, und an der Drehungsleitung ROT(0)
liegt eine logische Null vor. Am Ausgang des ersten EXCLUSIV-ODER-Gatters
XOR1 liegt entsprechend eine logische 1 vor. An
der dritten Steuerleitung MIRROR1 liegt folglich eine logische
1, an der vierten Steuerleitung MIRROR2 eine logische 1
und an der fünften Steuerleitung MIRROR3' eine logische 0
vor. Der Adreßmultiplexer AMUX gibt die beiden niederwertigen
Adreßbit ADDR(1..0) unverändert zur Steuerleitung ADDR_L(1..0)
aus. Die in den Figuren 4, 6 und 7 schraffierten
Matrixzellen MZ werden dadurch ausgewählt. Der Decoder DEC
arbeitet nach folgender Wahrheitstabelle:
Das niederwertigste Bit LSB dieser Wahrheitstabelle wird
nicht benötigt. Die anderen drei Bits werden von den Adreßmultiplexern
AMMUX1, AMMUX2 negiert. Entsprechend gilt für
die logischen Zustände, die an den ersten und zweiten Steuerleitungen
vorliegen, folgende Zuordnung:
Die einzelnen Speicherzellen SZ der Kernzellen gemäß Figur 4
seien zum leichteren Verständnis gemäß der Darstellung in
Figur 4a angeordnet. Das höherwertige Bit gibt den an der
zweiten Auswahlleitung SEL(1) vorliegenden logischen Zustand
an und das niederwertige Bit gibt den logischen Zustand an
der ersten Auswahlleitung SEL(0) an. Gemäß den oben beschriebenen
Verbindungen zwischen den Auswahlleitungen SEL(1..0)
und den Steuerleitungen MIR1(3..1), MIRROR2 in der linken
Hälfte der Speichermatrix liegt in der Matrixzelle MZ der
Spalte 2 COL(2) und der Zeile 7 bzw. 0 ROW(7 0) folgendes
Steuersignal vor:
SEL0 = 0 = MIR1(2) und SEL1 = 1 = MIRROR2.The individual memory cells SZ of the core cells according to FIG. 4 are arranged for easier understanding as shown in FIG. 4a. The most significant bit indicates the logical state on the second selection line SEL (1) and the least significant bit indicates the logical state on the first selection line SEL (0). According to the connections between the selection lines SEL (1..0) and the control lines MIR1 (3..1), MIRROR2 in the left half of the memory matrix described in the matrix cell MZ of
SEL0 = 0 = MIRROR2 (2) and SEL1 = 1 = MIRROR2.
Es wird demzufolge die Speicherzelle SZ mit dem Indize 57
ausgewählt. Entsprechendes gilt für die übrigen Zellen der
linken Hälfte der Speichermatrix.Accordingly, the memory cell SZ with the
In der rechten Hälfte der Speichermatrix sind die oben beschriebenen
Verbindungen zwischen den Steuerleitungen MIRROR1,
MIR2(3..1) und den Auswahlleitungen SEL(0), SEL(1)
realisiert. Entsprechend liegt beispielsweise in der Matrixzelle
der Spalte 5 COL(5) und der Zeile 6 bzw. 1 ROW(6 1)
folgendes Steuersignal vor:
SEL0 = 1 = MIRROR1 und SEL1 = 0 = MIR2(2) The connections described above between the control lines MIRROR1, MIR2 (3..1) and the selection lines SEL (0), SEL (1) are implemented in the right half of the memory matrix. Accordingly, the following control signal is present, for example, in the matrix cell of
SEL0 = 1 = MIRROR1 and SEL1 = 0 = MIR2 (2)
Es wird demzufolge die Speicherzelle SZ mit dem Indize 51
ausgewählt. Entsprechendes gilt für die übrigen Zellen der
rechten Hälfte der Speichermatrix.Accordingly, the memory cell SZ with the
Damit steht am Ausgang der Reihen/Spaltenmultiplexer RCMUX
der um 180° gedrehte Inhalt der Zeile 5 ROW(5) parallel zur
Verfügung. Nacheinander werden auf diese Weise alle Zeilen 0
bzw. 7 ROW(0..7) um 180° gedreht ausgelesen.This means that RCMUX is at the output of the row / column multiplexer
the content of
Bei einer Drehung um 90 oder 270° müssen entsprechend andere
logische Zustände an den Drehungsleitungen ROT(1..0) gemäß
nachfolgender Tabelle eingestellt werden:
Mittels der Auslesesteuereinrichtung werden diese logischen Zustände der Drehungsleitungen ROT(1..0) so umgesetzt, daß im Falle einer Drehung um 90° eine Spiegelung an der zweiten Diagonale D2 und im Falle einer Drehung um 270° eine Spiegelung an der ersten Diagonale D1 durchgeführt wird. In beiden Fällen wird durch die Multiplexeranordnung, an der mittels der fünften Steuerleitung MIRROR3' eine logische Eins anliegt, ein Vertauschen der Reihenfolge der ausgelesenen Bitinformation durchgeführt.These are made logical by means of the readout control device States of the rotation lines RED (1..0) implemented so that in In the case of a rotation of 90 °, a reflection on the second Diagonal D2 and, in the case of a rotation of 270 °, a reflection is carried out on the first diagonal D1. In both Cases is through the multiplexer arrangement on which means the fifth control line MIRROR3 'has a logic one, swapping the order of the read Bit information carried out.
Speichermatrizen unterschiedlicher Größen können auf diese
Weise unter Einsparung einer großen Anzahl von Leitungen
aufgebaut werden. Nachstehende Tabelle gibt, abhängig von der
Matrixgröße und der Anzahl der Klappvorgänge der Matrix, das
Einsparungspotential an Leitungen an.
So werden beispielsweise bei einer originalen Matrix mit der Größe n=8, die zweimal geklappt wurde 87 Ausgangsleitungen unter Berücksichtigung der zusätzlich erforderlichen Steuerleitungen MIR eingespart.For example, in an original matrix with the Size n = 8, which was folded twice 87 output lines taking into account the additional control lines required ME saved.
Claims (8)
- Method for storing and rotating bit patterns in a raster module (RM), which has a storage matrix that contains a plurality of matrix cells (MZ) and can be coupled to a reproduction device (WG) via peripheral selection elements (RCMUX), having the following method steps:storage of a bit pattern present in the form of pixels of an original matrix, in such a way that at least one pixel of the original matrix is stored in each matrix cell (MZ) of the storage matrix, andread-out of the bit pattern from the storage matrix, specific matrix cells (MZ) being selected as a function of a rotation information item,
- Method for storing and rotating bit patterns according to Claim 1, in which the pixels of the original matrix are stored in the matrix cells (MZ) of the storage matrix in such a way that each matrix cell (MZ) contains the pixels which are congruent with respect to one another after the original matrix has been folded across at least one of its diagonals (D).
- Method for storing and rotating bit patterns according to either of Claims 1 and 2, with a raster module (RM) which is assigned to an electrographic printer, the bit pattern being stored in a row-by-row or column-by-column manner in the storage matrix of the said raster module and being read out in a row-by-row or column-by-column manner from the said raster module.
- Raster module (RM) for storing and rotating bit patterns, which contains:a storage matrix that contains a plurality of matrix cells (MZ) and can be coupled to a reproduction device (WG) via peripheral selection elements (RCMUX),at least one storage cell (SZ) per matrix cell (MZ) for storing a bit pattern present in the form of pixels of an original matrix, in such a way that at least one pixel of the original matrix can be stored in each matrix cell (MZ) of the storage matrix, andinternal selection elements (ZMUX) in the matrix cells (MZ) for selecting specific storage cells (SZ) within the matrix cells (MZ) and for coupling the outputs of these storage cells (SZ) to the reproduction device (WG),characterized by a read-out control device, which drives the selection elements (ZMUX, RCMUX) as a function of a rotation information item of the bit pattern.
- Raster module (RM) for storing and rotating bit patterns, according to Claim 4, in which the bit patterns can be read out in a row-by-row or column-by-column manner to the reproduction device (WG), havingmatrix cells (MZ) whicheach have a data output (DOUT),each contain storage cells (SZ) for accommodating the pixels of an original square matrix which lie above one another when this original matrix is folded at at least one of its diagonals (D),each contain an internal selection element (ZMUX) for coupling its data output (DOUT) to in each case one of the storage cells (SZ) contained in it, andperipheral selection elements (RCMUX) for the optional coupling of the data outputs (DOUT) of matrix cells (MZ) to the reproduction device (WG).
- Raster module (RM) for storing and rotating bit patterns, according to either of Claims 4 and 5, having an interchanging device that is arranged upstream of the reproduction device (WG) and optionally, as a function of its driving by the read-out control device, reverses the order of the pixels of a column (COL) or row (ROW) that is read out.
- Raster module (RM) for storing and rotating bit patterns, according to one of Claims 4 to 6, having a storage matrix for storing an original matrix having n columns (COL) and n rows (ROW) which is folded x times at its diagonals (D), the storage matrix having n 2 / 2 x + n / 2 matrix cells (MZ).
- Electrographic printer having a raster module (RM) for storing and rotating bit patterns according to one of Claims 4 to 7.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE4424734 | 1994-07-13 | ||
DE4424734 | 1994-07-13 | ||
PCT/DE1995/000660 WO1996002915A1 (en) | 1994-07-13 | 1995-05-18 | Process and device for storing and rotating bit configurations |
Publications (2)
Publication Number | Publication Date |
---|---|
EP0771463A1 EP0771463A1 (en) | 1997-05-07 |
EP0771463B1 true EP0771463B1 (en) | 1998-07-01 |
Family
ID=6523059
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP95918529A Expired - Lifetime EP0771463B1 (en) | 1994-07-13 | 1995-05-18 | Process and device for storing and rotating bit configurations |
Country Status (4)
Country | Link |
---|---|
US (1) | US5910794A (en) |
EP (1) | EP0771463B1 (en) |
DE (1) | DE59502700D1 (en) |
WO (1) | WO1996002915A1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3931577B2 (en) * | 2000-11-22 | 2007-06-20 | セイコーエプソン株式会社 | Method of using memory and arithmetic processing device |
US7512287B2 (en) * | 2005-07-25 | 2009-03-31 | Seiko Epson Corporation | Method and apparatus for efficient image rotation |
US9647694B2 (en) | 2014-12-28 | 2017-05-09 | International Business Machines Corporation | Diagonal anti-diagonal memory structure |
US11928443B2 (en) * | 2019-12-19 | 2024-03-12 | Intel Corporation | Techniques for transposing a matrix using a memory block |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63163645A (en) * | 1986-12-26 | 1988-07-07 | Ricoh Co Ltd | Two-dimensionally arranged memory device |
JP2545416B2 (en) * | 1987-11-21 | 1996-10-16 | 株式会社日立製作所 | Semiconductor memory |
JPH05235782A (en) * | 1992-02-19 | 1993-09-10 | Fujitsu Ltd | Vertical data and horizontal data replacement method and circuit therefor |
-
1995
- 1995-05-18 WO PCT/DE1995/000660 patent/WO1996002915A1/en active IP Right Grant
- 1995-05-18 US US08/776,558 patent/US5910794A/en not_active Expired - Fee Related
- 1995-05-18 EP EP95918529A patent/EP0771463B1/en not_active Expired - Lifetime
- 1995-05-18 DE DE59502700T patent/DE59502700D1/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US5910794A (en) | 1999-06-08 |
DE59502700D1 (en) | 1998-08-06 |
EP0771463A1 (en) | 1997-05-07 |
WO1996002915A1 (en) | 1996-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2803989C2 (en) | Digital data storage with random access | |
DE19614443A1 (en) | Content addressable memory | |
DE2747075C2 (en) | Memory arrangement with arrangement for memory control for image processing operations | |
DE19530100C2 (en) | Integrated dram circuit with row copy circuit and method | |
DE2607107A1 (en) | WORD ORGANIZED STORAGE SYSTEM | |
DE4204119A1 (en) | Dual port memory for data transmission between two multiprocessor systems - operates via two input-output ports and is simultaneously accessible by both systems | |
DE2062211A1 (en) | Storage arrangement with simultaneous access to n storage locations | |
DE3618136C2 (en) | ||
DE2926322C2 (en) | Storage subsystem | |
DE2059917A1 (en) | Data storage | |
DE2310631B2 (en) | Storage hierarchy for a data processing system | |
DE4218686C2 (en) | Static random access memory | |
DE69525527T2 (en) | MULTIPORT MULTIPLE REGISTER MEMORY FOR RECEIVING DATA OF DIFFERENT LENGTH | |
DE3784533T2 (en) | METHOD AND DEVICE FOR TRANSFERRING INFORMATION FROM ONE STORAGE AREA TO ANOTHER STORAGE AREA. | |
DE3713627A1 (en) | IMAGE STORAGE CIRCUIT, IN PARTICULAR FOR USE IN ROTATING IMAGE DATA | |
DE3587374T2 (en) | SEMICONDUCTOR STORAGE DEVICE WITH A BIT ERROR DETECTION FUNCTION. | |
DE3743924A1 (en) | STORAGE DEVICE | |
DE3685844T2 (en) | ELECTRONIC CIRCUIT TO CONNECT A PROCESSOR TO A POWERFUL MEMORY. | |
EP0771463B1 (en) | Process and device for storing and rotating bit configurations | |
DE2235883A1 (en) | DATA PROCESSING DEVICE | |
DE2649147C2 (en) | Arrangement for the optional execution of logical and arithmetic operations | |
DE3236524A1 (en) | BYTE-WAY ADDRESSABLE STORAGE ARRANGEMENT FOR COMMANDS AND DATA WITH VARIABLE LENGTH | |
DE3016738C2 (en) | Method for transferring a bit pattern field into a memory and circuit arrangement for carrying out the method | |
DE2111146A1 (en) | Storage cell for an associative memory | |
DE3340078A1 (en) | PROCESSOR CELL FOR USE IN AN ARRANGEMENT MADE FROM SUCH CELLS |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 19970225 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): BE DE FR GB |
|
GRAG | Despatch of communication of intention to grant |
Free format text: ORIGINAL CODE: EPIDOS AGRA |
|
17Q | First examination report despatched |
Effective date: 19970929 |
|
GRAG | Despatch of communication of intention to grant |
Free format text: ORIGINAL CODE: EPIDOS AGRA |
|
GRAH | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOS IGRA |
|
GRAH | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOS IGRA |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): BE DE FR GB |
|
REF | Corresponds to: |
Ref document number: 59502700 Country of ref document: DE Date of ref document: 19980806 |
|
GBT | Gb: translation of ep patent filed (gb section 77(6)(a)/1977) |
Effective date: 19980903 |
|
ET | Fr: translation filed | ||
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
26N | No opposition filed | ||
REG | Reference to a national code |
Ref country code: GB Ref legal event code: IF02 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: FR Payment date: 20090519 Year of fee payment: 15 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: BE Payment date: 20090603 Year of fee payment: 15 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: GB Payment date: 20090528 Year of fee payment: 15 Ref country code: DE Payment date: 20090730 Year of fee payment: 15 |
|
BERE | Be: lapsed |
Owner name: *OCE PRINTING SYSTEMS G.M.B.H. Effective date: 20100531 |
|
GBPC | Gb: european patent ceased through non-payment of renewal fee |
Effective date: 20100518 |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: ST Effective date: 20110131 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20100531 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: DE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20101201 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20100531 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GB Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20100518 |