DE102004063847B4 - Schaltungsanordnung zur DMA-Bilddatenverarbeitung und Kameraschnittstelle - Google Patents

Schaltungsanordnung zur DMA-Bilddatenverarbeitung und Kameraschnittstelle Download PDF

Info

Publication number
DE102004063847B4
DE102004063847B4 DE102004063847A DE102004063847A DE102004063847B4 DE 102004063847 B4 DE102004063847 B4 DE 102004063847B4 DE 102004063847 A DE102004063847 A DE 102004063847A DE 102004063847 A DE102004063847 A DE 102004063847A DE 102004063847 B4 DE102004063847 B4 DE 102004063847B4
Authority
DE
Germany
Prior art keywords
address
data
transfer
image
dma
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.)
Active
Application number
DE102004063847A
Other languages
English (en)
Other versions
DE102004063847A1 (de
Inventor
Jin-Hyun Cho
Jung-Sun Kang
Jin-Aeon Lee
Yong-Ha Park
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co 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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE102004063847A1 publication Critical patent/DE102004063847A1/de
Application granted granted Critical
Publication of DE102004063847B4 publication Critical patent/DE102004063847B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • EFIXED CONSTRUCTIONS
    • E06DOORS, WINDOWS, SHUTTERS, OR ROLLER BLINDS IN GENERAL; LADDERS
    • E06BFIXED OR MOVABLE CLOSURES FOR OPENINGS IN BUILDINGS, VEHICLES, FENCES OR LIKE ENCLOSURES IN GENERAL, e.g. DOORS, WINDOWS, BLINDS, GATES
    • E06B3/00Window sashes, door leaves, or like elements for closing wall or like openings; Layout of fixed or moving closures, e.g. windows in wall or like openings; Features of rigidly-mounted outer frames relating to the mounting of wing frames
    • E06B3/70Door leaves
    • E06B3/82Flush doors, i.e. with completely flat surface
    • E06B3/84Flush doors, i.e. with completely flat surface of plywood or other wooden panels without an internal frame, e.g. with exterior panels substantially of wood
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32358Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
    • H04N1/32459Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter for changing the arrangement of the stored data
    • H04N1/3247Changing the arrangement of data in a page, e.g. reversing the order to produce a mirror image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • EFIXED CONSTRUCTIONS
    • E05LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
    • E05YINDEXING SCHEME RELATING TO HINGES OR OTHER SUSPENSION DEVICES FOR DOORS, WINDOWS OR WINGS AND DEVICES FOR MOVING WINGS INTO OPEN OR CLOSED POSITION, CHECKS FOR WINGS AND WING FITTINGS NOT OTHERWISE PROVIDED FOR, CONCERNED WITH THE FUNCTIONING OF THE WING
    • E05Y2800/00Details, accessories and auxiliary operations not otherwise provided for
    • E05Y2800/40Protection
    • E05Y2800/406Protection against deformation
    • EFIXED CONSTRUCTIONS
    • E06DOORS, WINDOWS, SHUTTERS, OR ROLLER BLINDS IN GENERAL; LADDERS
    • E06BFIXED OR MOVABLE CLOSURES FOR OPENINGS IN BUILDINGS, VEHICLES, FENCES OR LIKE ENCLOSURES IN GENERAL, e.g. DOORS, WINDOWS, BLINDS, GATES
    • E06B3/00Window sashes, door leaves, or like elements for closing wall or like openings; Layout of fixed or moving closures, e.g. windows in wall or like openings; Features of rigidly-mounted outer frames relating to the mounting of wing frames
    • E06B3/70Door leaves
    • E06B2003/7049Specific panel characteristics
    • E06B2003/7051Specific panel characteristics of layered construction involving different materials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2101/00Still video cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0084Digital still camera
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation

Abstract

Schaltungsanordnung zur Bilddatenverarbeitung mit Direktspeicherzugriff (DMA), mit
– einem Pufferspeicher (207a, 207b) zur Pufferspeicherung von zugeführten Bilddaten und
– Mitteln zum variablen DMA-Abruf von Bilddaten aus dem Pufferspeicher in Abhängigkeit von verschiedenen vorgebbaren Bildtranformations-Abrufmodi, wobei die Mittel einen Datenselektor (213a, 213b) zum selektiven Modifizieren von Sequenzen von Datenworten und Bildpixeln im jeweiligen Datenwort der aus dem Pufferspeicher abgerufenen Bilddaten in Abhängigkeit vom gewählten Abrufmodus und einen Adressgenerator (211a, 211b) zum Ausgeben einer Einzelbildstartadresse, einer Zeilenstartadresse und einer Bündeltransferstartadresse für die aus dem Pufferspeicher abgerufenen Bilddaten umfassen, auf die im Direktspeicherzugriff mit einer bestimmten Bündeltransferlänge zugegriffen wird.

Description

  • Die Erfindung bezieht sich auf eine Schaltungsanordnung zur Bilddatenverarbeitung mit Direktspeicherzugriff (DMA) und auf eine entsprechende Kameraschnittstelle.
  • Die rasche Entwicklung in der Technik mobiler Kommunikation hat Verbraucher in die Lage versetzt, unter Verwendung von Mobiltelefonen und anderen tragbaren bzw. mobilen Endgeräten bequem Informationen auszutauschen, insbesondere auch Bildinformationen. Seit den frühen Tagen der Verwendung von Mobiltelefonen nur für Anrufe, d. h. Sprach- bzw. Audioinformationen, und Nachrichtenübermittlung hat sich deren Funktion in jüngerer Zeit bis zum Herunterladen von MP3-Musikdokumenten über das drahtlose mobile Internet-Netzwerk erweitert. Neuerdings sind in Reaktion auf die Nachfrage nach Bild- und Multimediaanwendungen Mobiltelefone, die mit Kameramodulen ausgerüstet sind, allgemein verfügbar geworden.
  • Derartige „Phonecams”, d. h. Mobiltelefone mit Kameramodul, beinhalten üblicherweise einen Bildsensor und einen Bildsignalprozessor, so dass ein reales Bild bzw. von einem Objekt ausgehendes Licht durch den Bildsensor in ein elektrisches Signal gewandelt und das elektrische Signal dann als anzeigbares Digitalbild vom Bildsignalprozessor ausgegeben werden kann.
  • Der Bildsensor ist aus Pixeln, d. h. Bildpunkten, aufgebaut, die in einem zweidimensionalen Feld, d. h. einer Matrix, angeordnet sind. Jedes Pixel ist durch eine Photodiode, die empfangenes Licht in elektronische Ladung wandelt, und eine Auslesezelle gebildet. Die Auslesezelle des Pixels kann einen Kondensator, wie im Fall eines ladungsgekoppelten Bauelements (CCD) zum Speichern und Transportieren der Ladung von der Photodiode, und/oder einen Transistor beinhalten. Der Bildsensor kann z. B. aus ladungsgekoppelten Bauelementen bestehen oder in komplementärer Metall-Oxid-Halbleiter(CMOS)-Technologie realisiert sein. In einem CCD-basierten Bildsensor mit Kondensatoren aus Auslesezellen wird Ladung entlang eines Kanalpfades übertragen bzw. verschoben, um Bilddaten daraus auszulesen. In einem Bildsensor vom CMOS-Typ werden Ladungen oder Spannungen mit Hilfe von Zeilen- und Spaltendecodern ausgelesen.
  • Bildsensoren vom CMOS-Typ werden in Mobiltelefonen häufig verwendet, da sie verglichen mit Bildsensoren vom CCD-Typ eine hohe Integrationsdichte und einen niedrigen Leistungsverbrauch ermöglichen. CCD-Bildsensoren werden in digitalen Photokameras und Videokameras, wie für sogenannte „Closed-Circuit-Television”(CCTL)-Anwendungen und Camcorder, aufgrund ihrer hohen Bildqualität und Lichtempfindlichkeit eingesetzt.
  • Mit den technischen Fortschritten bei CCD-Bildsensoren, insbesondere mit weiterer Reduktion des Leistungsverbrauchs und Erzielung hoher Dichte, ist zu erwarten, dass CCD-Bildsensoren auch in Mobiltelefonen breiten Einsatz finden, speziell unter Berücksichtigung der erhöhten Nachfrage der Verbraucher nach Kameras höherer Auflösung.
  • Bei Einsatz eines CCD-Bildsensors in einem Mobiltelefon kann ein sogenannter Bildkipp- bzw. Bildstörungseffekt auftreten. Eine solche Bildverkippung, z. B. eine Umkehrung oder Verdrehung, wird durch Linsen und/oder Spiegel und Positionsänderungen des Kameramoduls des Mobiltelefons verursacht. Abhängig von der Positionsänderung des Kameramoduls kann ein zur x-Achse symmetrisches Bild, d. h. ein an der x-Achse gespiegeltes Bild, ein zur y-Achse symmetrisches Bild, d. h. ein an der y-Achse gespiegeltes Bild, oder ein x/y-achsensymmetrisches Bild, d. h. ein an der x- und y-Achse gespiegeltes Bild, auftreten. Daher kann die Bildverkippung eine Korrektur durch digitales Rückändern des gespiegelten Bildes erfordern.
  • Der CMOS-Bildsensor kann relativ einfach hinsichtlich Korrektur eines verkippten, z. B. umgekehrten oder verdrehten Bildes konfiguriert werden, indem die Zeilen- und Spaltendecoder geändert werden. Es ist jedoch schwierig, einen CCD-Bildsensor zwecks Korrektur einer solchen Bildverkippung zu ändern, da Ladungen bzw. Bildsignale in diesem im Muster von Schieberegistern detektiert werden, die direkt mit dem Photodiodenfeld gekoppelt sind, weshalb die Reihenfolge horizontaler Zeilen eines Ausgabebildes fixiert ist. Es kommen Maßnahmen zur Überwindung dieser Beschränkung in Betracht, wie die Transformation eines Ausgabebildes des CCD-Bildsensors durch einen Einzelbildpuffer („frame buffer”) unter Verwendung eines Bildsignalprozessors oder die softwaremäßige Transformation eines Ausgabebildes nach dessen digitaler Speicherung in einem externen Speicher. Jedoch wird hierzu ein Einzelbildpuffer hoher Kapazität, z. B. mit mehreren Megapixels, oder ein Speicher hoher Kapazität, z. B. mit mehreren Megabyte, benötigt, um die Bildverkippung, wie eine Umkehrung oder Verdrehung, eines hochauf gelösten Bildes zu korrigieren. Die Verwendung eines Einzelbildpuffers hoher Kapazität im Kameramodul kann ansonsten unnötige Anforderungen hinsichtlich hoher Speicherkapazität verursachen und Verzögerungen in der Verfügbarkeit von Bilddaten aufgrund der Einzelbildpufferprozesse erzeugen. Die Verwendung eines externen Speichers für den CCD-Bildsensor kann häufige, ansonsten unnötige Speicherzugriffsvorgänge verursachen, welche die Implementierung von Mobiltelefonen hoher Bandbreite mit niedrigem Leistungsverbrauch und geringen Abmessungen behindern.
  • Die Bezeichnung DMA steht für Direktspeicherzugriff („Direct Memory Access”). Dies ist ein spezielles Verfahren, um Informationen aus einem Speicher zu erhalten, wobei üblicherweise große Speicherblöcke durch direktes Adressieren derselben statt durch übliche Puffer und ein übliches Protokoll adressiert werden. Die Software zum DMA-Aufruf, die manchmal auch in Hardware eingebettet ist, muss ausreichend intelligent sein, um einen bestimmten Speicherblock aufzufinden. Hierbei handelt es sich um ein Verfahren, das üblicherweise von schnellen Plattensteuerungen, Bandsteuerungen, SCSI-Steuerungen und intelligenten Datenbankoperationen benutzt wird. Es ist häufig um den Faktor 20 schneller als übliche andere Zugriffsverfahren.
  • In dem Zeitschriftenaufsatz Y. Kim et al., A System Manager for Network System-on-a-Chip Designs with Various Memory Access Types, IEEE Symp. an VLSI Technology, Systems, and Applications, 2001, S. 176 wird eine Mikrocontroller-Systemarchitektur beschrieben, die einen System-Manager mit einem DRAM-Controller beinhaltet, der unterschiedliche Speicherzugriffstypen unterstützt und insbesondere Burstdatenzugriffe mit unterschiedlichen Burstlängen in einem einzigen Zugriffsmodus ermöglicht.
  • Der Erfindung liegt als technisches Problem die Bereitstellung einer Schaltungsanordnung der eingangs genannten Art, einer entsprechenden DMA-Einheit und einer entsprechenden Kameraschnittstelle zugrunde, mit denen sich die oben erwähnten Schwierigkeiten des Standes der Technik wenigstens teilweise überwinden lassen.
  • Die Erfindung löst dieses Problem durch die Bereitstellung einer Schaltungsanordnung mit den Merkmalen des Anspruchs 1 und einer Kameraschnittstelle mit den Merkmalen des Anspruchs 14. Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben.
  • Die Erfindung stellt u. a. eine Kameraschnittstelle mit einer DMA-Einheit zur Verfügung, die zur Durchführung einer Bildtransformation, wie einer Verkippung oder Drehung, eingerichtet ist, um eine Bildspiegelung an einer x-Achse, y-Achse und/oder an den x/y-Achsen zu korrigieren, und für mobile Endgeräte hoher Bandbreite mit niedrigem Leistungsverbrauch und geringen Abmessungen geeignet ist, die Kameras beinhalten. Die Erfindung stellt eine Bildtransformationseinheit insbesondere unter Verwendung einer DMA-Einheit bereit, um Funktionen zur Bildspiegelung z. B. eines an der x-Achse oder y-Achse gespiegelten Bildes und zur Bilddrehung um 180° auszuführen.
  • Der Direktspeicherzugriff (DMA) ist ein Mittel, um einen Prozessorspeicherbus direkt von einer peripheren Einheit zu steuern. Im Bündel- bzw. Burstmodus behält die DMA-Steuerung die Kontrolle über den Bus, bis alle durch die anfragende Einheit gepufferten Daten zum Speicher übertragen worden sind, oder bis ein Ausgabegerätepuffer voll ist, wenn zu einer peripheren Einheit geschrieben wird. In einer Rechnerumgebung bezieht sich die Bezeichnung Burstmodus bzw. Bündelmodus generisch auf jegliche Situation, in der eine Einheit wiederholt Daten überträgt, ohne auf eine Eingabe von einer anderen Einheit zu warten und ohne auf den Abschluss eines internen Prozesses zu warten, bevor mit dem Datentransfer fortgesetzt wird.
  • Die Erfindung ermöglicht die Bereitstellung eines Mobiltelefons mit einem Kameramodul, das eine Schnittstelle zur Ausführung einer Bildspiegelungsfunktion, wie Bildverkippung oder Bilddrehung, unter Verwendung einer DMA-Einheit aufweist.
  • Vorteilhafte Ausführungsformen der Erfindung sind in den Zeichnungen dargestellt und werden nachfolgend beschrieben. Hierbei zeigen:
  • 1 ein Blockschaltbild eines Kameramoduls und eines Anwendungsprozessors in einem Mobiltelefon,
  • 2 ein Blockschaltbild einer DMA-Steuereinheit von 1,
  • 3 ein Blockschaltbild zur Veranschaulichung von Eigenschaften hinsichtlich Datenfluss und Datensteuerung mit einer Codier/Decodier-DMA-Einheit von 2,
  • 4 ein Zustandsübergangsdiagramm einer finiten DMA-Zustandsmaschine von 2,
  • 5 ein Flussdiagramm für die Funktionsweise einer Kanalarbitriereinheit von 2,
  • 6 ein Zustandsübergangsdiagramm einer finiten Abruf-Zustandsmaschine für Luminanzkomponenten mit Teilbildern 6A bis 6D,
  • 7 schematische Darstellungen zum Vergleich von ursprünglichen Pixelpositionen eines von einem Kameramodul aufgenommenen Bildes und Pixelpositionen in verschiedenen Spiegelbildmodi für ein ”Big-Endian”-Speichersystem,
  • 8 schematische Darstellungen entsprechend 7 zur Veranschaulichung von Pixelpositionen in Spiegelbildmodi in einem „Low-Endian”-Speichersystem,
  • 9 schematische Darstellungen zur Veranschaulichung einer Adressmodifikation während einer Bildtransformation, wie Spiege lung bzw. Kippung bezüglich x-Achse, zur Korrektur eines an der x-Achse gespiegelten Bildes,
  • 10 schematische Darstellungen zur Veranschaulichung einer Adressmodifikation während einer Bildtransformation, wie Spiegelung oder Kippung bezüglich y-Achse, zur Korrektur eines an der y-Achse gespiegelten Bildes,
  • 11 schematische Darstellungen zur Veranschaulichung der Eigenschaften einer Modifizierung von Sequenzen von Worten und Pixeln in jedem Wort innerhalb einer Bündeltransferlänge von 16 für y-Achsenspiegelung,
  • 12 eine schematische Darstellung zur Veranschaulichung einer Adressmodifizierung, welche die Sequenzen von Worten und Pixeln in jedem Wort sowie die Anordnung von DMA-Adressen für y-Achsenspiegelung beeinflusst,
  • 13 schematische Darstellungen zur Veranschaulichung einer Adressmodifikation während einer Bilddrehung bzw. xy-Achsenspiegelung zur Korrektur eines an den xy-Achsen gespiegelten Bildes,
  • 14 eine schematische Darstellung einer Adressmodifikationseigenschaft, welche die Sequenzen von Worten und Pixeln jedes Wortes und die Anordnung von DMA-Adressen bei xy-Achsenspiegelung bzw. Bilddrehung beeinflusst,
  • 15 ein Flussdiagramm eines Verfahrens zum Betrieb eines Adressgenerators von 2 mit Teilbildern 15A und 15B,
  • 16 eine detaillierte Blockdiagrammdarstellung eines Datenselektors für die DMA-Steuereinheit von 2,
  • 17 ein Zeitablaufdiagramm zur Veranschaulichung einer DMA-Adressmodifikation und deren zeitlichen Ablaufs und
  • 18 schematische Darstellungen von Pixeldatentypen, die im Kameramodul von 1 verarbeitet werden können.
  • 1 veranschaulicht im Blockschaltbild ein Kameramodul 101 und einen Anwendungsprozessor 111 in einem Mobiltelefon gemäß der Erfindung. Wie aus 1 ersichtlich, beinhaltet das Kameramodul 101 einen Bildsensor 103 und einen Bildsignalprozessor (ISP) 105. Der Bildsensor 103 kann vom CCD-Typ oder vom CMOS-Typ sein. Der Applikationsprozessor 111 umfasst eine Kameraschnittstelle 113, eine Verarbeitungseinheit 123, eine Speicherschnittstelle 125 und einen Systembus 129, um die zuvor genannten Einheiten operativ zu verbinden. Der Systembus 129 ist z. B. ein fortentwickelter Bus hoher Leistungsfähigkeit (AHB-Bus), der mit einem externen Einzelbildspeicher 127 verbunden ist, welcher z. B. als synchroner DRAM (dynamischer Speicher mit wahlfreiem Zugriff) realisiert sein kann. Die Kameraschnittstelle 113 beinhaltet einen Vorprozessor 115, einen Farbskalierer 117 und eine DMA-Steuereinheit 119, kurz auch DMA-Einheit bezeichnet, zur Durchführung von Bildtransformationsfunktionen.
  • Nach der Wandlung eines optischen, realen Bildes mittels Empfangen von Licht, das von einem Objekt stammt, in ein elektrisches Signal mit Hilfe des Bildsensors 103 wird das elektrische Signal zum Bildsignalprozessor 105 übertragen und dann als Pixeldaten zur Kameraschnittstelle 113 transferiert. Die Kameraschnittstelle 113 sammelt kontinuierlich Pixeldaten, die vom Kameramodul 101 empfangen werden und in Farbkomponenten ausgedrückt werden. Die Pixeldaten werden transformiert und dann zum Systembus 129 übertragen. Die auf den Systembus 129 gegebenen Pixeldaten werden über die Speicherschnittstelle 125 im Einzelbildspeicher 127 gespeichert. Ein Einzelbild, das im Einzelbildspeicher 127 gespeichert ist, kann nach Komprimierung übertragen oder auf einem LCD-Bildschirm des Mobiltelefons angezeigt werden.
  • Der Vorprozessor 115 der Kameraschnittstelle 113 wandelt Y/Cb/Cr-Pixeldaten mit 4:2:2-Format in Y/Cb/Cr-Pixeldaten vom 4:2:0-Format und betreibt eine Fensterbildungsfunktion und verschiedene Vorprozesse. Außerdem separiert der Vorprozessor 115 die Y/Cb/Cr-Daten in Luminanzkomponenten Y und Chrominanzkomponenten Cb, Cr. In Y/CB/CR-definierten Formaten bezeichnet Y die Luminanz, während CB und CR die Farbdifferenzsignale bezeichnen. Grob definiert heißt dies, dass Y die Luminanz oder das monochrome Videoelement bezeichnen, während CB und CR die Komponenten B-Y bzw. R-Y bezeichnen, welche die Primärfarben blau bzw. rot abzüglich des Luminanzelementes Y darstellen. Die separierten Luminanz- und Chrominanzdaten werden zum Farbskalierer 117 übertragen.
  • Der Farbskalierer 117 beinhaltet Skalierungseinheiten für Codier/Decodier- und Voransichtspfade. Ein Voransicht-Farbskalierer ermöglicht es einem Benutzer, ein vom Kameramodul 101 aufgenommenes Bild auf einem LCD-Bildschirm des Mobiltelefons zu überwachen. Die Codier/Decodier-Skalierungseinheit dient zur Kompression und Übertragung eines Bildes. Jede Skalierungseinheit speichert Bilddaten in einem FIFO-Speicher mit einer anwachsenden oder abnehmenden Zahl von Pixeln, wobei die Bilddaten vom Vorprozessor zugeführt werden. Die Voransicht-Skaliereinheit umfasst einen Farbwandler, um Y/Cb/Cr-Daten in R/G/B-Daten zu wandeln.
  • Die DMA-Einheit 119 modifiziert in geeigneter Weise Bilddaten, die vom Farbskalierer 117 geliefert werden, gemäß eines Spiegelbildmodus und stellt die modifizierten Bilddaten dem Systembus 129 zur Verfügung. Die DMA-Einheit 119 steht hierbei in Transferverbindung mit der Codier/Decodier- und der Voransicht-Skaliereinheit. Bei der DMA-Einheit 119 handelt es sich speziell um eine solche, die zur Ausführung einer vorgegebenen Bildspiegelungsfunktion, z. B. zwecks Bildwiederherstellung, eingerichtet ist.
  • 2 zeigt im Blockschaltbild eine mögliche Realisierung für die DMA-Einheit 119 von 1. Wie aus 2 ersichtlich, ist die DMA-Einheit 119 in diesem Beispiel in eine Codier/Decodier-DMA-Einheit 119a und eine Voraussicht-DMA-Einheit 119b unterteilt. Jede dieser beiden DMA-Einheiten 119a, 119b beinhaltet einen internen Pufferspeicher 207a bzw. 207b zur Bilddatenspeicherung, einen FIFO-Speicher 118a und 118b des Codier/Decodier-Farbskalierers bzw. des Voransichts-Farbskalierers, einen Adressgenerator 211a bzw. 211b zur Änderung einer Systembusadresse gemäß eines Spiegelbildmodus sowie einen Datenselektor 213a bzw. 213b zum Ändern einer Reihenfolge von Bilddaten, die vom internen Pufferspeicher 207a bzw. 207b ausgegeben werden, in Abhängigkeit von einem Spiegelbildmodus. Die DMA-Einheiten 119a und 119b umfassen außerdem jeweils einen Protokollsignalgenerator 209a bzw. 209b zur Erzeugung eines Systemprotokollsignals. Der jeweilige Adressgenerator 211a bzw. 211b stellt eine Einzelbildstartadresse, eine Zeilenstartadresse und eine Bündeltransferstartadresse zur Verfügung, um Bilddaten in den (externen) Elnzelbildspeicher 127 aus dem internen Pufferspeicher 207a bzw. 207b zu speichern. Der jeweilige Datenselektor 213a bzw. 213b wählt Ausgabebilddaten vom internen Pufferspeicher 207a bzw. 207b mit modifizierten Sequenzen von Worten und Pixeln in einem jeweiligen Wort aus.
  • Ein im FIFO-Speicher 118a bzw. 118b gespeichertes Einzelbild wird außerdem im internen Pufferspeicher 207a bzw. 207b gespeichert, damit auf dieses vom Systembus 129 in einem Bündelformat zugegriffen wer den kann. Die im internen Pufferspeicher 207a bzw. 207b gespeicherten Bilddaten werden in den Sequenzen von Worten und Pixeln gemäß einem Spiegelbildmodus transformiert und dann im externen Einzelbildspeicher 127 über den Systembus 129 in einem Bündelformat gespeichert. Währenddessen wird durch den Adressgenerator 211a bzw. 211b eine Adresse zum Speichern der Bilddaten im externen Einzelbildspeicher 127 bereitgestellt. Der jeweilige Adressselektor 211a bzw. 211b stellt eine Einzelbildstartadresse, eine Zeilenstartadresse und eine Bündeltransferstartadresse der Bilddaten zur Verfügung, auf die gemäß einem Spiegelbildmodus im Bündelbetrieb zugegriffen wird.
  • Eine zugehörige Bündeltransferlänge L beträgt ein Vielfaches von zwei, beispielsweise 2, 4, 8 oder 16. Wenn nach Division der Anzahl horizontaler Pixel eines zu verarbeitenden Einzelbildes durch die einer Burstlänge entsprechende Pixelanzahl ein Rest verbleibt, d. h. die Anzahl restlicher Pixel ist kleiner als die der Bündellänge entsprechende Pixelanzahl, werden die übrigen Pixel durch einen Restbündeltransfermodus verarbeitet, der für die übrige Anzahl von Pixeln geeignet ist, um die Buseffizienz zu steigern. Mit anderen Worten besteht der Bündeltransfervorgang aus einem Hauptbündeltransfermodus und einem Restbündeltransfermodus. Bei der Verarbeitung der Bilddaten im Hauptbündeltransfermodus mit einer vorgebbaren Bündellänge L von z. B. 2, 4, 8 oder 16 werden die letzten, übrigen Daten mit einer Länge kleiner als die vorgegebene Bündellänge im Restbündeltransfermodus verarbeitet. Da die Anzahl horizontaler, zu verarbeitender Pixel bekannt ist, wird die Information über die Haupt- und Restbündeltransferlängen von einem speziellen Register entsprechender Funktion bereitgestellt.
  • Die beiden letzten Bündeltransfervorgänge für Pixel einer horizontalen Zeile eines Einzelbildes können im Hauptbündeltransfermodus erfolgen, wenn die Anzahl horizontaler Pixel ohne Rest durch eine vorgegebene Bündellänge teilbar ist, oder sie erfolgen im Hauptbündeltransfermodus und zusätzlich im Restbündeltransfermodus. Die Bündeltransferlänge kann unter Berücksichtigung der Größe einer horizontalen Zeile in einem Einzelbild und der Eigenschaften eines hierin vorgesehenen Systembusses vorgegeben werden.
  • Wenn beispielsweise die Anzahl horizontaler Pixel gleich 240 ist, d. h. 60 Worte, sind nach siebenmaliger Durchführung eines Bündeltransfers mit Bündellänge 8 eine Anzahl von 16 Pixel übrig, d. h. vier Worte. Nach Abschluss des Hauptbündeltransfermodus mit Bündellänge 8 werden daher die letzten vier Pixel im Restbündeltransfermodus verarbeitet. Wenn als weiteres Beispiel die Anzahl horizontaler Pixel gleich 224, d. h. 56 Worte ist, können alle horizontalen Pixel im Hauptbündeltransfermodus verarbeitet werden, indem der Bündeltransfer mit Bündellänge 8 sieben Mal durchgeführt wird. Alternativ können die 224 horizontalen Pixel durch dreimaliges Ausführen des Hauptbündeltransfermodus mit Bündellänge 16 und anschließendes Verarbeiten der restlichen Pixeldaten im Restbündeltransfermodus mit Bündellänge 8 verarbeitet werden.
  • Im Bildmodus mit x-Achsenspiegelung oder in einem normalen Bildmodus lädt der Datenselektor, d. h. die Datenauswahleinheit 213a bzw. 213b, Bilddaten des internen Pufferspeichers 207a bzw. 207b auf den Systembus 129, ohne die Sequenzen von Worten und von Pixeln in einem Wort zu modifizieren. In einem Bildmodus mit y-Achsenspiegelung oder xy-Achsenspiegelung lädt der Datenselektor, d. h. die Datenauswahleinheit 213a bzw. 213b, Bilddaten des internen Pufferspeichers 207a bzw. 207b mit einer Umkehrung der Sequenzen von Worten und von Pixeln in einem Wort auf den Systembus.
  • Im x-Achsenspiegelbildmodus stellt der Adressgenerator 211a bzw. 211b eine Einzelbildstartadresse zum Übertragen einer ersten horizontalen Zeile dadurch zur Verfügung, dass er einen Adressplatz einer horizontalen Zeile vom gesamten Adressplatz eines Einzelbildes subtrahiert, und nach Abschluss des Prozesses zum Übertragen der ersten horizontalen Zeile stellt er eine neue Zeilenstartadresse zum Übertragen einer zweiten horizontalen Zeile bereit, indem er von einer momentanen Adresse des Einzelbildes einen Adressplatz zweier horizontaler Zeilen subtrahiert.
  • Im y-Achsenspiegelbildmodus stellt der Adressgenerator 211a bzw. 211b eine Einzelbildstartadresse zum Übertragen einer ersten horizontalen Zeile bereit, indem er einen Adressplatz, der einer Bündelübertragung zugewiesen ist, zu einem Adressplatz addiert, der zu einer horizontalen Zeile gehört. Der Adressgenerator 211a bzw. 211b stellt eine Bündeltransferstartadresse durch Subtrahieren eines Adressplatzes, der dem doppelten Wert des Hauptbündeltransfermodus entspricht, von einer momentanen Adresse zur Verfügung, wodurch eine vorläufige Erhöhung der Adresse gegenüber der momentanen Adresse aufgrund der Bündelübertragung vor dem momentanen Bündeltransfer ermöglicht wird. Der Adressgenerator 211a bzw. 211b stellt außerdem eine Zeilenstartadresse durch Addieren eines zwei horizontalen Zeilen entsprechenden Adressplatzes und eines Adressplatzes, der einer Differenz zwischen den beiden letzten Bündelübertragungen entspricht, zu einer momentanen Adresse zum Zeitpunkt des Abschlusses eines Prozesses für eine horizontale Zeile zur Verfügung.
  • Andererseits stellt der Adressgenerator 211a bzw. 211b im xy-Achsenspiegelbildmodus folgende Adressen zur Verfügung: eine Einzelbildstartadresse durch Addieren einer Adresse, die einem Bündeltransfer entspricht, zum gesamten Adressplatz eines Einzelbildes; eine Bündeltransferstartadresse durch Subtrahieren eines Adressplatzes, der dem Doppelten des Hauptbündeltransfers entspricht, von einer momentanen Adresse, was eine vorläufige Erhöhung der Adresse gegenüber der momentanen Adresse aufgrund der Bündelübertragung vor dem momentanen Bündeltransfer ermöglicht; und eine Zeilenstartadresse durch Addieren eines Adressplatzes, der einer Differenz zwischen den beiden letzten Bündelübertragungen einer horizontalen Zeile entspricht, zu einer momentanen Adresse zum Zeitpunkt des Abschlusses eines Prozesses für eine horizontale Zeile.
  • Im x-Achsen- und xy-Achsenspiegelbildmodus wird die letzte Bündeltransferstartadresse, wenn die Pixelanzahl nicht ohne Rest durch die zur Hauptbündeltransferlänge gehörige Pixelanzahl teilbar ist, durch Subtrahieren eines Adressplatzes, welcher der Summe aus Hauptbündeltransfer und restlichem Bündeltransfer entspricht, von einer momentanen Adresse erhalten.
  • Der Adressgenerator 211a bzw. 211b sowie der Datenselektor 213a bzw. 213b werden anhand beispielhafter Realisierungen weiter unten noch eingehender erläutert.
  • Ein Datenabruf aus dem FIFO-Speicher 118a bzw. 118b des Farbskalierers zum internen Pufferspeicher 207a bzw. 207b wird durch eine finite Abruf-Zustandsmaschine (Abruf-FSM) 201a bzw. 201b gesteuert. Eine finite DMA-Zustandsmaschine (DMA-FSM) 203a bzw. 203b liefert einen DMA-Transferstatus. Die Codier/Decodier-DMA-Einheit 119a hat zu den Komponenten Y, Cb und Cr gehörige interne Pufferspeicher und weist des weiteren eine in der Voransicht-DMA-Einheit 119b nicht vorhandene Kanalarbitriereinheit 205 zur Verwaltung von DMA-Zugriffsvorgängen für die Luminanzdaten Y und die Chrominanzdaten Cb/Cr auf. Die Voransicht-DMA-Einheit 119b benötigt keine Arbitriereinheit zur Trennung der Farbkomponenten in Kanäle, da ihre Eingangsdaten in einem RGB-Format konfiguriert sind.
  • Die Kanalarbitriereinheit 205 der Codier/Decodier-DMA-Einheit 119a verwaltet als eine logische Schaltung zur Steuerung des Busbesitzes durch die Luminanz- und Chrominanzkomponenten Y, Cb und Cr die Kanal- bzw. Datenauswahl und die Autorisierung zum Laden der Farbdaten auf den Bus 129 vom internen Pufferspeicher 207a für den jeweiligen Kanal bzw. die jeweiligen Farben. Da Luminanzdaten im allgemeinen ein größeres Transfervolumen haben, werden sie mit höherer Priorität verarbeitet, während die Chrominanzdaten Cb und Cr mit gleicher Priorität verarbeitet und durch einen Ping-Pong-Übertragungstyp ausgewählt werden.
  • Die Abruf-FSM 201a bzw. 201b steuert einen Abrufvorgang vom FIFO-Speicher 118a bzw. 118b unter Berücksichtigung der DMA-FSM 203a bzw. 203b und im Fall der DMA-Einheit 119a unter Berücksichtigung der Kanal-Arbitriereinheit 205. Die Abruf-FSM 201a bzw. 201b gibt ein Auslesesteuersignal nur dann ab, wenn der FIFO-Speicher 208a bzw. 208b nicht leer ist und der interne Pufferspeicher 207a bzw. 207b einen DMA-Transfervorgang abschließt, und speichert Daten vom FIFO-Speicher 208a bzw. 208b im internen Pufferspeicher 207a bzw. 207b genau gemäß dem Bündeltransferlängenbetrag, der auf den Systembus geladen ist. Die Bündeltransferlänge und der Spiegelbildmodus werden durch voreingestellte Werte in einem speziellen Funktionsregister 223 festgelegt.
  • 3 veranschaulicht im Blockschaltbild die Eigenschaften des Datenflusses und der Datensteuerung innerhalb der Codier/Decodier-DMA-Einheit 119a gemäß der Erfindung. Die DMA-FSM 203a informiert die Kanalarbitriereinheit 205, die Adressgeneratoreinheit (AGU) 211a, die Datenauswahleinheit (DSU) 213a sowie Busprotokollsignalgeneratoren 209i, 209j und 209k über einen DMA-Transferstatus CurStateDMA.
  • Interne Pufferspeicherteile 207_Y, 207_Cb und 207_Cr speichern Daten, auf die im Bündelmodus zugegriffen werden soll, von jeweiligen FIFO-Pufferspeicherteilen 118_Y, 118_Cb und 118_Cr, die je einer der Komponenten Y, Cb und Cr zugewiesen sind. Währenddessen steuert die Abruf-FSM 201 einen Datenabrufvorgang aus den FIFO-Speichern 118_Y, 118_Cb und 118_Cr unter Berücksichtigung der Zustände der DMA-FSM 203a und der Kanalarbitriereinheit 205. Mit anderen Worten empfängt die Abruf-FSM 201a ein Signal, das darüber informiert, dass die internen Pufferspeicher 207_Y, 207_Cb und 207_Cr in einem Zustand des Abschlusses eines DMA-Transfers sind, von der Kanalarbitriereinheit 205 und gibt dann das Auslesesteuersignal frei, falls die FIFO-Speicher 118_Y, 118_Cb und 118_Cr nicht leer sind. Das Auslesesteuersignal gibt in den internen Pufferspeichern 207_Y, 207_Cb und 207_Cr zu speichernde Daten aus den FIFO-Speichern 118_Y, 118_Cb und 118_Cr mit genau dem Betrag der Bündeltransferlänge frei. Dann erzeugt die Abruf-FSM 201a ein DMA-Bereitsignal FSM_DMA_ready, um die DMA-FSM 203a und die Kanalarbitriereinheit 205 vom Abschluss eines Abrufvorgangs für Pixeldaten zu informieren.
  • Die Kanalarbitriereinheit 205 kommuniziert mit der DMA-FSM 203a und der Abruf-FSM 201a und stellt einem Multiplexer 303 entsprechend der Bündeltransferlänge und des Zustands (CurStateDMA) der DMA-FSM 203a ein Steuersignal zur Verfügung, das die Vorgänge zum Auswählen eines Kanals bzw. von Daten aus den Luminanz- und Chrominanzkomponenten und zum Laden von Daten aus den internen Pufferspeichern 207_Y, 207_Cb und 207_Cr auf den Systembus 129 steuert. Nach Abschluss des Datentransfers auf den Systembus 129 sendet die Kanalarbitriereinheit 205 ein DMA-Transferendesignal Y/Cb/CrTransDone an die Abruf-FSM 201a.
  • Die Datenauswahleinheit (DSU) 213a erzeugt Signale Ysel, CbSel und CrSel zur Steuerung von Multiplexern 213_Y, 213_Cb und 213_Cr, die jeweils einer der Komponenten Y, Cb und Cr zugewiesen sind, gemäß dem Zustand der DMA-FSM 203a. Die Steuersignale YSel, CbSel und CrSel aktivieren die Multiplexer 213_Y, 213_Cb und 213_Cr dazu, die Sequenzen von Worten und Pixeldaten, die in den internen Pufferspei chern 207_Y, 207_Cb und 207_Cr gespeichert sind, zu modifizieren und sie an den Multiplexer 303 abzugeben. Die vom Multiplexer 303 abgegebenen Daten werden unter der Steuerung eines Dateneinschreibsignals HWDATAout eines Dateneinschreibsignalgenerators 305 auf einen Datenbus geladen.
  • Die Adressgeneratoreinheit (AGU) 211a gibt eine Systembusadresse HADDRout zum Schreiben der vom Multiplexer 303 abgegebenen Daten über den Datenbus in den externen Einzelbildspeicher 127 entsprechend eines ausgewählten Spiegelbildmodus und des Zustands der DMA-FSM 203 ab. Die Busprotokollsignalgeneratoren 209i, 209j und 209k geben ein Busanfragesignal HBUSREQx, ein Datentransfermustersignal HTRANSout bzw. ein Bündeltransfersignal HBURSTout basierend auf dem Zustand der DMA-FSM 203a ab.
  • 4 zeigt ein Zustandsübergangsdiagramm für die DMA-FSM 203a bzw. 203b der 2. Wie aus 4 ersichtlich, geht das DMA-Transferbereitsignal FSM_DMA_ready, wenn es von der Abruf-FSM 201a während eines Ruhe- bzw. Leerlaufzustands erzeugt wird, aufgrund eines DMA-Arbitrierungszustands in einen DMA-Busanfragezustand. Wenn ein Busprioritätssignal HGRANTx und ein Datentransferendesignal HREADYin während des Busanfragezustands aktiviert werden, erfolgt ein Übergang in einen DMA-Transferzustand. Wenn während des DMA-Transferzustands ein Datentransfer abgeschlossen wird und die letzten Daten einer Bündellänge übertragen worden sind, erfolgt wieder eine Rückkehr zum Leerlaufzustand.
  • 5 veranschaulicht im Flussdiagramm ein Betriebsverfahren der Kanalarbitriereinheit 205. Die Luminanzdaten Y sind höher priorisiert als die Chrominanzdaten Cb/Cr. Auf die Chrominanzdaten Cb/Cr wird untereinander mit gleicher Priorität zugegriffen, wobei zur Auswahl eine Ping-Ping-Übertragungssequenz benutzt wird. In einem ersten, auf ei nen Ruhezustand 501 folgenden Entscheidungsschritt 503 wird festgestellt, ob sich die DMA-FSM 203a im Arbitrierungszustand befindet, und der Ruhezustand 501 wird beibehalten, solange dies nicht der Fall ist. Wenn sich die DMA-FSM im Arbitrierungszustand befindet, d. h. im Zustand „Arbitrierung” von 4, wird in einem nächsten Entscheidungsschritt 505 festgestellt, ob es eine Transferanfrage für die Luminanzdaten Y gibt. Wenn dies der Fall ist, erfolgt in einem Schritt 507 eine Zuweisung der FIFO- und internen Pufferspeicher zu den Luminanzdaten Y, um diese zu übertragen. Wenn dies nicht der Fall ist, wird der Schritt 507 übersprungen und direkt zu einem anschließenden Entscheidungsschritt 509 weitergegangen, in welchem festgestellt wird, ob es keine Anfrage für die Luminanzdaten Y und keine Anfrage für die Chrominanzdaten Cr, jedoch eine Anfrage für die Chrominanzdaten Cb gibt. Wenn diese Abfragekombination bejaht wird, erfolgt in einem Schritt 511 ein Übertragungsvorgang für die Chrominanzdaten Cb mit den zur Chrominanzkomponente Cb gehörigen FIFO- und internen Pufferspeichern. Wenn wenigstens eine der drei Abfragebedingungen verneint wird, wird der Schritt 511 übersprungen und direkt zu einem anschließenden Entscheidungsschritt 513 weitergegangen, in welchem abgefragt wird, ob es keine Anfrage für die Luminanzdaten Y, jedoch eine Anfrage für die Chrominanzdaten Cb und eine Anfrage für die Chrominanzdaten Cr, aber keinen Transfer für die Chrominanzdaten Cb gibt.
  • Wenn diese Abfragekombination bejaht wird, erfolgt in einem Schritt 515 ein Übertragungsvorgang für die Chrominanzdaten Cb. Wenn die Abfragekombination verneint wird, wird der Schritt 515 übersprungen und direkt zu einem anschließenden Entscheidungsschritt 517 weitergegangen, in welchem festgestellt wird, ob es keine Anfrage für die Luminanzdaten Y, jedoch eine Anfrage für die Chrominanzdaten Cb und eine Anfrage für die Chrominanzdaten Cr und einen Transfer für die Chrominanzdaten Cr gibt.
  • Wenn diese Abfragekombination bejaht wird, erfolgt in einem Schritt 519 ein Übertragungsvorgang für die Chrominanzdaten Cr. Wenn die Abfragekombination verneint wird, wird der Schritt 519 übersprungen und direkt zu einem anschließenden Entscheidungsschritt 521 weitergegangen, in welchem abgefragt wird, ob keine Anfrage für die Luminanzdaten Y, keine Anfrage für die Chrominanzdaten Cb, jedoch eine Anfrage für die Chrominanzdaten Cr vorliegt. Wenn diese Abfragekombination bejaht wird, erfolgt in einem Schritt 523 ein Übertragungsvorgang für die Chrominanzdaten Cr, wonach zum Ruhezustand bzw. zum ersten Entscheidungsschritt 503 zurückgekehrt wird. Wenn die Abfragekombination verneint wird, erfolgt dieser Rücksprung direkt, d. h. unter Umgehung des Schritts 523.
  • 6 veranschaulicht mit ihren Teilbildern 6A bis 6D ein Zustandsübergangsdiagramm für die Abruf-FSM 201a gemäß 2 bezüglich der Luminanzkomponente Y, wobei Gleiches für die Chrominanzkomponenten Cb und Cr gilt. Wie aus 6 in Verbindung mit 2 ersichtlich, steuert die Abruf-FSM 201a die Aktivierung eines Abrufvorgangs von Daten aus dem FIFO-Speicher in den internen Pufferspeicher 207a in Übereinstimmung mit einer Bündeltransferlänge unter Berücksichtigung der Zustände der FSM-DMA 203a und der Kanalarbitriereinheit 205.
  • Wenn der FIFO-Speicher nicht leer ist (~FIFO_Y_empty_sync) und der interne Pufferspeicher im DMA-Transferabschlusszustand (YtransDone) ist, gibt die Abruf-FSM (FSM_DMA) 201a ein Auslesesteuersignal FIFO_Y_rd ab und ruft Daten für den internen Pufferspeicher aus dem FIFO-Speicher mit dem Betrag einer Bündeltransferlänge (YBurst) ab, um sie auf den Systembus 129 zu laden.
  • Der Adressgenerator 209a bzw. 209b und der Datenselektor 213a bzw. 213b werden nun detaillierter erläutert. Es sei dazu im folgenden ein Beispiel betrachtet, bei dem jedes Bilddatenpixel eine Größe von 1 Byte besitzt und der Systembus 32-Bit-Daten tragen kann. In einem derartigen 32-Bit-Bussystem werden 4 Pixel pro Wort über den Systembus 129 zum externen Einzelbildspeicher 123 übertragen. Alternative Ausführungsbeispiele der Erfindung können je nach Bedarf an andere Systemkonfigurationen angepasst sein, z. B. an Konfigurationen, bei denen jedes Pixel aus 10 oder mehr Bit (und beispielsweise nicht aus einem Vielfachen der 8-Bit-Einheit eines Byte) besteht und/oder ein 16-Bit-Bussystem oder ein 64-Bit-Bussystem vorgesehen ist. Für das nachstehend betrachtete Beispiel wird außerdem o. B. d. A. angenommen, dass die Hauptbündeltransferlänge L gleich 16 und die Restbündeltransferlänge gleich 8 sind. Während des Hauptbündeltransfermodus werden somit Bilddaten von 16 Worten (= 64 Pixel) in jedem Bündel übertragen.
  • 7 veranschaulicht verschiedene Spiegelbildmodi im Vergleich zu einer ursprünglichen Pixelposition eines vom Kameramodul aufgenommenen Bildes mit Pixelpositionen in den einzelnen Spiegelbildmodi. In 7 ist o. B. d. A. angenommen, dass die horizontale Bildbreite gleich 224 Pixel ist und 10 horizontale Zeilen vorliegen. Wie oben erwähnt, gibt es zwei Möglichkeit der Bündelübertragung, und zwar zum einen die Übertragung aller Daten im Haupttransfermodus mit Bündellänge 8 und zum anderen die Übertragung von Daten im Hauptbündeltransfermodus mit Bündellänge 16 gefolgt von einer Übertragung im Restbündeltransfermodus mit Bündellänge 8. Die nachstehend erläuterten Beispiele benutzen die letztgenannte Variante.
  • Die Speicherbedingungen in den 7 (Big-endian) und 8 (Littleendian) entsprechen sich. 8 zeigt, dass die Sequenzen von Worten und Pixeln in einem Wort im x-Achsen-Spiegelbildmodus unverändert beibehalten werden. Hingegen sind im y-Achsen- und xy-Achsen-Spiegelbildmodus die Sequenzen von Worten und Pixeln in einem Wort modifiziert.
  • Im x-Achsen-Spiegelbildmodus werden Pixeldaten für ein Einzelbild von der letzten, untersten horizontalen Zeile bis zur obersten horizontalen Zeile des Einzelbildes Zeile um Zeile geschrieben. Im y-Achsen-Spiegelbildmodus werden Pixeldaten in einem Einzelbild von der letzten zur ersten Position der obersten horizontalen Zeile des Einzelbildes und dann Zeile um Zeile nach unten bis zur untersten Zeile des Einzelbildes geschrieben. Im xy-Achsen-Spiegelbildmodus werden Pixeldaten in einem Einzelbild Zeile und Zeile aufwärts von der letzten, untersten Zeile, wie im x-Achsen-Spiegelbildmodus, und von der letzten zur ersten Position in jeder horizontalen Zeile, wie im y-Achsen-Spiegelbildmodus, geschrieben.
  • 9 veranschaulicht eine Adressänderung während einer Bildtransformation bei Spiegelung an der x-Achse zur Korrektur eines an der x-Achse gespiegelten Bildes. Wie aus 9 ersichtlich, behält die x-Achsen-Spiegelungsprozedur die Sequenzen von Worten und Pixeln in einem Wort gegenüber dem Originalbild bei, ändert jedoch die Einzelbildstartadresse und die Zeilenstartadresse. Mit anderen Worten stellt der Adressgenerator Adressen zur Festlegung einer Reihe von horizontalen Zeilen bereit, die das Einzelbild vom unteren Bildrand immer dann um eine Zeile nach oben bewegen, wenn ein Prozess für eine horizontale Zeile abgeschlossen ist, d. h. wenn ein Signal EOL erzeugt wird, welches das Zeilenende einer horizontalen Zeile anzeigt. Daher stellt der Adressgenerator im x-Achsen-Spiegelbildmodus zuerst eine Einzelbildstartadresse durch Subtrahieren eines zu einer horizontalen Zeile gehörigen Adressplatzes vom gesamten Adressplatz eines Einzelbildes zur Verfügung. Nach bereits erfolgter Verarbeitung einer horizontalen Zeile wird vor Beginn der Übertragung für eine neue horizontale Zeile eine neue Zeilenstartadresse durch Subtrahieren von Adressen entsprechend zweier horizontaler Zeilen von einer momentanen (Einzelbild-) Adresse nach Abschluss eines Prozesses für eine horizontale Zeile bereitgestellt.
  • Wie aus 9 weiter ersichtlich, ergibt sich der gesamte Adressraum durch Multiplizieren der Maße des Einzelbildes, z. B. 224 × 10 = 2240). Die Zeilenstartadresse wird dadurch gesetzt, z. B. auf 2016, dass ein Adressplatz, z. B. 224, der zu einer horizontalen Zeile gehört, z. B. entsprechend 224 Pixel pro horizontaler Zeile, vom gesamten Adressraum des Einzelbildes, z. B. 2240, subtrahiert wird. Dementsprechend werden die zur ersten horizontalen Zeile gehörigen 224 Pixeldaten im externen Einzelbildspeicher 127 sequentiell ab der Adresse 2016 bis zur Adresse 2239 gespeichert. Dann wird eine neue Zeilenstartadresse 1792 durch Subtrahieren des zwei horizontalen Zeilen entsprechenden Adressplatzes, z. B. entsprechend 224 × 2 Pixel, von einem momentanen Adressplatz des Einzelbildes, z. B. 2240, subtrahiert, nachdem der Datentransfer für eine horizontale Zeile abgeschlossen ist. Als nächstes werden 224 Pixeldaten der zweiten horizontalen Zeile im externen Einzelbildspeicher 127 ab der Adresse 1792 bis zur Adresse 2015 nacheinander gespeichert. Diese Transfervorgänge werden Zeile für Zeile wiederholt, bis der Datentransferprozess für ein gesamtes Einzelbild abgeschlossen ist. Die jeweils neue Zeilenstartadresse kann alternativ auch dadurch bereitgestellt werden, dass ein einer horizontalen Zeile entsprechender Adressplatz nach Abschluss eines Datentransferprozesses für eine horizontale Zeile von der vorherigen Zeilenstartadresse subtrahiert wird.
  • 10 veranschaulicht eine Adressmodifikation während einer Bildtransformation mit Spiegelung an der y-Achse zur Korrektur eines y-Achsen-Spiegelbildes. Wie aus 10 ersichtlich, werden DMA-Adressen benötigt, um Daten vom Ende einer oberen, horizontalen Zeile in Richtung Zeilenbeginn zu schreiben. Außerdem ist es nötig, die Sequenzen von Worten und Pixeln in einem Wort gegenüber einem Originalbild innerhalb einer Bündeltransferlänge umzukehren. 11 veranschaulicht eine mögliche Vorgehensweise für diese Modifizierung der Sequenzen von 16 Worten und den zugehörigen Pixeln im jeweiligen Wort innerhalb einer Bündeltransferlänge von 16 für eine y-Achsenspiegelung. Eine gezeigte Wortsequenz W1 → W16 muss zu W16 → W1 umgekehrt werden, und eine Pixelsequenz im jeweiligen Wort muss ebenso umgekehrt werden, z. B. eine Pixelsequenz 0, 1, 2, 3 im ersten Wort W1 in die Pixelsequenz 3, 2, 1, 0.
  • 12 veranschaulicht die Wirkung des Adressenmodifikationsprozesses auf die Sequenzen von Worten und Pixeln im jeweiligen Wort und auf eine DMA-Adressreihenfolge bei der y-Achsenspiegelung. In 12 bezeichnen gestrichelte Linien Adressänderungen, die nacheinander aufgrund des Bündeltransfervorgangs inkrementiert werden, während durchgezogene Linien Änderungen von Bündeltransferstartadressen während eines Datentransfers innerhalb einer Bündellängeneinheit bezeichnen. Eine Einzelbildstartadresse 288 (= 224 + 64) wird durch Addieren eines zur Bündellänge 16 gehörigen Adressplatzes 64, d. h. einer Bündellänge von 16 sind 64 Pixel zugeordnet, zu einem Adressplatz 224 entsprechend einer, hier der oberen, horizontalen Zeile, d. h. ein Adressplatz für eine horizontale Zeile entspricht 224 Pixel, gebildet. Eine jeweilige Bündeltransferstartadresse wird durch Subtrahieren eines Adressplatzes, z. B. für 64 × 2 Pixel, welcher der Summe eines vorherigen Transfers mit Bündellänge 16 und eines momentanen, zweiten Transfers mit Bündellänge 16, d. h. einem doppelten Hauptbündeltransfer, entspricht, von einer momentanen Adresse gebildet, so dass eine vorläufige Adresserhöhung ausgehend von der momentanen Adresse aufgrund des Hauptbündeltransfers vor dem Bündeltransfer zugelassen wird. Wenn es hierbei einen Restbündeltransfer gibt, wird die letzte Bündeltransferstartadresse durch Subtrahieren eines Adressplatzes, welcher der Summe des Haupt- und Restbündeltransfers entspricht, von einer momentanen Adresse gebildet, ohne dass ein Adressplatz, der dem doppelten Hauptbündeltransfer entspricht, von der momentanen Adresse zum Zeitpunkt des Abschlusses des Bündeltransfers subtrahiert wird.
  • Wie wiederum aus 10 ersichtlich, wird die erste Bündeltransferstartadresse 160 durch Subtrahieren des Adressplatzes 128, der 128 Pixel einer doppelten Bündellänge entspricht, von der Einzelbildstartadresse 288 bereitgestellt. Daten von 64 Pixel werden im externen Einzelbildspeicher 127 ab der Adresse 160 bis zur Adresse 223 mit Bündeltransferlänge 16 gespeichert. Die zweite Bündeltransferstartadresse wird durch Subtrahieren des Adressplatzes 128 entsprechend 128 Pixeln der vorherigen Bündeltransferlänge 16 und der momentanen Bündeltransferlänge 16 von der momentanen Adresse 224 zum Zeitpunkt des Abschlusses des ersten Transfers zu 96 bestimmt. Dann werden 64 Pixel durch den zweiten Bündeltransfer übertragen und im externen Einzelbildspeicher 127 ab der Adresse 96 bis zur Adresse 159 gespeichert. Dieser Vorgang wird wiederholt, bis der Datenübertragungsvorgang für eine horizontale Zeile abgeschlossen ist.
  • Nach dem dritten Bündeltransfer werden weitere 64 Pixel im externen Einzelbildspeicher 127 ab der Adresse 32 bis zur Adresse 95 gespeichert. Zum Zeitpunkt des Abschlusses des dritten Bündeltransfers liegt die momentane Adresse bei 96 und die Anzahl restlicher Pixel ist gleich 32, d. h. kleiner als 64 Pixel entsprechend der Bündeltransferlänge 16. Daher wird die letzte Bündeltransferstartadresse auf 0 gelegt, indem von der momentanen Adresse 96 ein Adressplatz, der zu einer Summe von 64 Pixel entsprechend der vorherigen Bündeltransferlänge, d. h. der Hauptbündeltransferlänge, gehört, und 32 Pixel entsprechend der Restbündeltransferlänge für die übrigen Pixel subtrahiert werden. Die restlichen 32 Pixel werden mit Restbündellänge 8 übertragen und dann im externen Einzelbildspeicher 127 im Adressbereich 0 bis 31 gespeichert. Wenn die Anzahl horizontaler Pixel durch die Bündeltransferlänge geteilt wird, wird die letzte Bündeltransferstartadresse durch Subtrahieren eines Adressplatzes, der Pixeln entsprechend einer doppelten Bündeltransferlänge zugeordnet ist, von der momentanen Adresse zum Zeitpunkt des Abschlusses des vorherigen Bündeltransfers festgelegt.
  • Im Fall der Verarbeitung eines Einzelbildes, bei dem ein Rest auftritt, wenn die Anzahl zu übertragender, horizontaler Pixel in die Bündeltransferlänge 16 geteilt wird, setzt sich der Bündelübertragungsvorgang aus den Hauptbündeltransfermodi und dem Restbündeltransfermodus für den letzten Bündeltransfer zusammen. Daher wird die letzte Bündeltransferstartadresse einer horizontalen Zeile durch Subtrahieren eines Adressplatzes, der einer Summe von Pixeln für die Haupt- und die Restbündeltransferlänge entspricht, von einer momentanen Adresse zum Zeitpunkt des Abschlusses eines vorherigen Bündeltransfers festgelegt. Andernfalls wird die letzte Bündeltransferstartadresse einer horizontalen Zeile dadurch festgelegt, dass ein Adressplatz, der Pixeln einer doppelten Hauptbündeltransferlänge entspricht, von einer momentanen Adresse subtrahiert und dazu ein Adressplatz addiert wird, der einer Differenz zwischen Pixeln der Haupt- bzw. Restbündeltransferlänge entspricht.
  • In gleicher Weise wird die zweite Zeilenstartadresse zu 512 festgelegt, indem der Adressplatz 448 entsprechend zweier horizontaler Zeilen zur momentanen Adresse 32, die einem Adressplatz gemäß der Pixelanzahl der Restbündellänge entspricht, zum Zeitpunkt des Abschlusses des Transferprozesses für eine horizontale Zeile addiert und dazu noch ein Adressplatz von 32 addiert wird, der Pixeln gemäß der Differenz zwischen den beiden letzten Bündeltransferlängen entspricht, d. h. einer Differenz zwischen der Hauptbündellänge 16 und der Restbündellänge 8. Wenn die Anzahl an horizontalen Pixeln ohne Rest durch die Bündeltransferlänge teilbar ist, d. h. die beiden letzten Bündeltransferlängen sind gleich groß, kann die Zeilenstartadresse durch Addieren eines Adressplatzes, der zwei horizontalen Zeilen entspricht, zu einer momentanen Adresse zum Zeitpunkt des Abschlusses eines Prozesses für eine horizontale Zeile festgelegt werden. Dieser Vorgang wird wiederholt, bis der Übertragungsprozess für ein Einzelbild abgeschlossen ist.
  • 13 veranschaulicht eine Adressmodifikation während einer Bildtransformation mit x/y-Achsenspiegelung zur Korrektur eines x/y-Achsenspiegelbildes. Wie aus 13 ersichtlich, erfordert das Spiegeln eines Bildes an den xy-Achsen eine Sequenz von DMA-Adressen zum Schreiben von Daten vom Ende zum Beginn einer jeden horizontalen Zeile sowie von der letzten, untersten Zeile nach oben bis zur obersten Zeile eines Einzelbildes. Des weiteren ist es erforderlich, die Sequenzen von Worten und Pixeln im jeweiligen Wort in Einheiten der Bündeltransferlänge umzukehren.
  • 14 veranschaulicht eine Adressenmodifikationprozedur zum Aufbauen der Sequenzen von Worten und Pixeln im jeweiligen Wort und zur DMA-Adressanordnung für xy-Achsenspiegelung eines Bildes. In 14 bezeichnen gestrichelte Linien Adressmodifikationen, die aufgrund von Bündelübertragungen inkremental aufeinanderfolgen, während durchgezogene Linien Modifikationen von Bündeltransferstartadressen während Übertragungen in Einheiten der Bündeltransferlänge bezeichnen. Dieser xy-Achsenspiegelungsprozess legt eine Bündeltransferstartadresse analog zum Fall der y-Achsenspiegelung fest, indem eine Einzelbildstartadresse an der letzten, untersten Zeile eines Einzelbildes beginnt und eine Zeilenstartadresse in Aufwärtsrichtung bei jedem Abschluss eines Transferprozesses für eine Zeile geändert wird.
  • Wie aus den 13 und 14 ersichtlich, wird eine Einzelbildstartadresse zu 2304 festgelegt, indem zum gesamten Adressraum 2240 eines Einzelbildes ein Adressplatz von 64 entsprechend 64 Pixeln bei Bündellänge 16 addiert wird. Die Bündeltransferstartadressen werden in gleicher Weise wie beim y-Achsenspiegelungsprozess festgelegt. Folglich wird der erste Bündeltransfer bei der Adresse 2176 festgelegt, indem von der Einzelbildstartadresse 2304 der Adressplatz 128 subtrahiert wird, der einer doppelten Hauptbündeltransferlänge entspricht. Dann werden 64 Pixel in Einheiten der Bündellänge 16 im externen Einzelbildspeicher 127 ab der Adresse 2176 bis zur Adresse 2239 gespeichert. Wie oben im Zusammenhang mit dem y-Achsenspiegelungsmodus erläutert, wird die letzte Bündeltransferstartadresse, wenn die Anzahl zuletzt verbleibender Pixel kleiner als die Bündellänge von 16 ist, d. h. ein Restbündeltransfer erfolgt, dadurch festgelegt, dass zum Zeitpunkt des Abschlusses des vorherigen Bündeltransfers von einer momentanen Adresse ein Adressplatz subtrahiert wird, der einer Summe von Pixeln der Haupt- und Restbündeltransferlänge entspricht.
  • Eine Zeilenstartadresse wird dadurch festgelegt, dass zu einer momentanen Adresse zum Zeitpunkt des Abschlusses eines Übertragungsvorgangs für eine horizontale Zeile ein Adressplatz addiert wird, welcher der Differenz zwischen der Hauptbündeltransferlänge von 16 und der Restbündeltransferlänge von 8 entspricht, d. h. einer Differenz zwischen den beiden letzten Bündeltransferlängen. Wenn die Anzahl an horizontalen Pixeln ohne Rest durch die Bündeltransferlänge teilbar ist, ist die Differenz zwischen den beiden letzten Bündeltransferlängen gleich 0.
  • 15 zeigt mit ihren beiden Teilbildern 15A und 15B ein Flussdiagramm eines Verfahrens für den Betrieb des Adressgenerators 211a bzw. 211b. Ausgehend vom Leerlaufzustand wird in einem Entscheidungsschritt 1501 festgestellt, ob ein aktiviertes Einzelbildstartsignal vorliegt. Wenn dies der Fall ist, wird in einem Schritt 1503 ein Einzelbildstartsignal gemäß dem x-Achsen-Spiegelbildmodus, dem y-Achsen-Spiegelbildmodus, dem xy-Achsen-Spiegelbildmodus oder dem Normalmodus festgelegt, wonach zum Leerlaufzustand zurückgekehrt wird.
  • Solange das Einzelbildstartsignal nicht aktiviert ist, d. h. Daten übertragen werden, wird in einem anschließenden Entscheidungsschritt 1505 festgestellt, ob ein momentaner Prozess das Zeilenende im x-Achsenspiegelungsmodus erreicht hat. Wenn dies der Fall ist, wird in einem Schritt 1507 eine neue Zeilenstartadresse durch Subtrahieren ei nes Adressplatzes entsprechend zweier horizontaler Zeilen von einer momentanen Adresse zum Zeitpunkt des Prozessabschlusses gebildet, wonach zum Leerlaufzustand zurückgekehrt wird. Wenn die Abfrage verneint wird, wird in einem anschließenden Entscheidungsschritt 1509 festgestellt, ob ein momentaner Prozess an einem Zeilenende im y-Achsenspiegelungsmodus angelangt ist. Wenn dies der Fall ist, d. h. ein laufender Prozess für eine horizontale Zeile im y-Achsenspiegelungsmodus abgeschlossen ist, wird in einem Schritt 1511 eine neue Zeilenstartadresse dadurch gebildet, dass zu einer momentanen Adresse zum Zeitpunkt des Prozessabschlusses ein den Pixeln der doppelten Bündeltransferlänge entsprechender Adressplatz und ein Adressplatz addiert werden, welcher der Differenz zwischen den Pixeln der Haupt- und der Restbündeltransferlänge entspricht, wonach zum Leerlaufzustand zurückgekehrt wird.
  • Wenn der Entscheidungsschritt 1509 verneinend beantwortet wird, wird in einem anschließenden Entscheidungsschritt 1513 festgestellt, ob ein laufender Prozess an einem Zeilenende im xy-Achsenspiegelungsmodus angekommen ist. Wenn dies der Fall ist, wird in einem Schritt 1515 eine neue Zeilenstartadresse dadurch gebildet, dass zur momentanen Adresse zum Zeitpunkt des Abschlusses eines Prozesses für eine horizontale Zeile ein Adressplatz addiert wird, welcher der Differenz zwischen den Pixeln der Haupt- und der Restbündeltransferlänge entspricht, wonach zum Leerlaufzustand zurückgekehrt wird.
  • Wenn der Entscheidungsschrift 1513 verneinend beantwortet wird, wird in einem anschließenden Entscheidungsschritt 1517 festgestellt, ob ein laufender Prozess im Normalmodus oder x-Achsenspiegelungsmodus abläuft. Wenn dies bejaht wird, wird in einem Entscheidungsschritt 1519 festgestellt, ob sich die DMA-FSM in einem Transferzustand befindet. Bejahendenfalls wird eine Adresse im Schritt 1541 um ein Wort inkrementiert, wonach zum Leerlaufzustand zurückgekehrt wird. Andernfalls wird in einem Schritt 1539 die Adresse beibehalten und ohne Adressänderung zum Leerlaufzustand zurückgekehrt.
  • Wenn der Abfrageschritt 1517 verneinend beantwortet wird, wird in einem anschließenden Entscheidungsschritt 1521 festgestellt, ob ein laufender Prozess im y- oder xy-Achsenspiegelungsmodus stattfindet. Bejahendenfalls wird in einem anschließenden Entscheidungsschritt 1523 festgestellt, ob sich die DMA-FSM im Hauptbündeltransfermodus befindet. Wenn dies der Fall ist, wird eine Bündeltransferstartadresse durch Subtrahieren eines den Pixeln einer doppelten Bündeltransferlänge entsprechenden Adressplatzes von einer momentanen Adresse gebildet, wonach zum Leerlaufzustand zurückgekehrt wird. Andernfalls wird in einem anschließenden Abfrageschritt 1529 festgestellt, ob sich die DMA-FSM im Restbündeltransfermodus befindet. Wenn dies der Fall ist, wird eine Bündeltransferstartadresse für eine horizontale Zeile gebildet, indem von einer momentanen Adresse ein den Pixeln der Haupt- und der Restbündeltransferlänge entsprechender Adressplatz subtrahiert wird, siehe Schritt 1531, wonach zum Leerlaufzustand zurückgekehrt wird.
  • Wenn der Abfrageschritt 1529 verneinend beantwortet wird, wird in einem anschließenden Entscheidungsschritt 1533 festgestellt, ob sich die DMA-FSM in einem Transferzustand befindet. Wenn dies der Fall ist, wird eine Adresse im Schritt 1535 um ein Wort inkrementiert, wonach zum Leerlaufzustand zurückgekehrt wird. Andernfalls wird im Schritt 1537 ohne Adressänderung zum Leerlaufzustand zurückgekehrt.
  • Analog wird im Fall, dass der Abfrageschritt 1521 verneinend beantwortet wird, ohne Adressänderung im Schritt 1525 zum Leerlaufzustand zurückgekehrt.
  • 16 veranschaulicht eine mögliche Realisierung für den Datenselektor 213a bzw. 213b von 2 im Blockschaltbild in Form eines Datenselektors 1600, der die Sequenzen von Worten und Pixeln im jeweiligen Wort für Pixeldaten, die ihm von einem internen Pufferspeicher 1609 entsprechend den internen Pufferspeichern 207a bzw. 207b von 2 zugeführt werden, gemäß einem ausgewählten Spiegelbildmodus modifiziert. Der interne Pufferspeicher 1609 ist so ausgelegt, dass er in der Lage ist, Bilddaten korrespondierend mit dem Bündeltransfer zu speichern. Er kann beispielsweise aus 32 Flip-Flops aufgebaut sein, wobei die Anzahl an Flip-Flops der doppelten Bündeltransferlänge entspricht. Der Datenselektor 1600 beinhaltet mehrere Multiplexer einschließlich sechzehn Multiplexern 1601_1 bis 1601_16 entsprechend der Bündeltransferlänge 16 zur Modifizierung der Pixelsequenz sowie eines Multiplexers 1603 zur Modifizierung der Wortsequenz. Jeder der Multiplexer 1601_1 bis 1601_16 multiplext ein entsprechend im internen Pufferspeicher 1609 gespeichertes Wort und ein abgeleitetes Wort mit darin enthaltener, umgekehrter Pixelsequenz. Mit anderen Worten gibt jeder der die Pixelsequenz modifizierenden Multiplexer 1601_1 bis 1601 _16 ein Wort mit vier korrespondierenden Pixeldaten aus, die in umgekehrter Pixelsequenz gespeichert werden. Wenn beispielsweise der Multiplexer 1601_1 ein Wort W1 mit vier Pixeln in der Sequenz 3, 2, 1, 0 abgibt, ergibt sich ein Wort W1' mit vier Pixeln in der umgekehrten Sequenz 0, 1, 2, 3. Der die Wortsequenz modifizierende Multiplexer 1603 multiplext die sechzehn Ausgangssignale der sechzehn Multiplexer 1601 _1 bis 1601 _16, welche die Pixelsequenz modifizieren.
  • Im xy-Achsenspiegelungsmodus oder y-Achsenspiegelungsmodus, d. h. wenn sich ein Modusauswahlsignal Flip_mode auf einem bestimmten, z. B. hohen Logikpegel befindet, wird die umgekehrte Sequenz von vier Pixeln, welche ein sequenzmodifiziertes Wort bilden, z. B. W1', vom jeweiligen pixelsequenzmodifizierenden Multiplexer abgegeben. Andererseits wird im x-Achsenspiegelungsmodus oder im Normalmodus, d. h. wenn sich das Modusauswahlsignal Flip_mode auf einem anderen, z. B. niedrigen Logikpegel befindet, jedes Wort mit im internen Pufferspeicher 1609 gespeicherten Pixeln vom jeweiligen pixelsequenzmodifizierenden Multiplexer ohne Änderung seiner Pixelsequenz abgegeben.
  • Der wortsequenzmodifizierende Multiplexer 1603 ändert die Ausgabesequenz von Worten, die ihm von den sechzehn pixelsequenzmodifizierenden Multiplexern 1601_1 bis 1601_16 zugeführt werden. Genauer gesagt, gibt der wortsequenzmodifizierende Multiplexer 1603 in Reaktion auf ein am Ausgang eines Zählers 1605 abgegebenes Datenauswahlsignal Data_select Pixeldaten in der gleichen Sequenz, wie sie im internen Pufferspeicher 1609 gespeichert sind, oder in der umgekehrten Sequenz ab. Der Zähler 1605 führt einen Zählvorgang im Bereich von 0 bis L-1 aus, wobei L die Bündeltransferlänge bezeichnet, z. B. 16. Der Anfangswert des Zählers 1605 wird durch einen ihn initialisierenden Multiplexer 1607 festgelegt, dessen Eingangswerte von 0 bis L-1 variieren und dessen Ausgangssignal durch das Modusauswahlsignal Flip_mode ausgewählt wird. Wenn das Modusauswahlsignal Flip_mode auf hohem Logikpegel liegt, d. h. im xy-Achsenspiegelungsmodus oder y-Achsenspiegelungsmodus, gibt der zählerinitialisierende Multiplexer 1607 den Wert L-1, z. B. 15, ab, um den Anfangswert des Zählers 1605 entsprechend auf L-1 festzulegen. Anschließend führt der Zähler 1605 einen dekrementierenden Zählvorgang von L-1 bis 0, z. B. von 15 bis 0, aus, um das Datenauswahlsignal Data_Select für den wortsequenzmodifizierenden Multiplexer 1603 zu liefern.
  • Wenn beispielsweise der Zähler 1605 den Wert 15 abgibt, wählt der wortsequenzmodifizierende Multiplexer 1603 von den sechzehn Worten W1 bis W16 das Wort W16 aus und gibt es ab. Wenn der Zähler 1605 den Wert 14 abgibt, wählt der wortsequenzmodifizierende Multiplexer 1603 von den sechzehn Worten W1 bis W16 das Wort W15 aus und gibt es ab, usw. Wenn der Zähler 1605 den Wert 1 abgibt, wählt der wortse quenzmodifizierende Multiplexer 1603 von den sechzehn Worten W1 bis W16 das Wort W2 aus und gibt es ab. Wenn der Zähler 1605 schließlich den Wert null abgibt, wählt der wortsequenzmodifizierende Multiplexer 1603 von den sechzehn Worten W1 bis W16 das Wort W1 aus und gibt es ab. Als Ergebnis wird die Sequenz von Ausgabeworten in der Reihenfolge W16, W15, W14, ..., W2, W1 angeordnet, d. h. umgekehrt zu der Sequenz W1, W2, ..., W15, W16, in welcher diese Worte W1 bis 16 im internen Pufferspeicher 1609 abgelegt sind. Andererseits geht im Normalmodus oder im x-Achsenspiegelungsmodus das Modusauswahlsignal Flip_mode im Multiplexer 1607 auf niedrigen Logikpegel, um den Wert 0 als Anfangswert für den Zähler 1605 festzulegen. Der Zähler inkrementiert dann seine Zählwerte von 0 bis 15 und führt die Zählwerte dem wortsequenzmodifizierenden Multiplexer 1603 zu. Als Ergebnis gibt der wortsequenzmodifizierende Multiplexer 1603 die Worte in der gleichen Sequenz W1, W2, ..., W15, W16 ab, in der diese im internen Pufferspeicher 1609 gespeichert sind.
  • Dementsprechend ist die Sequenz von Pixeln in einem Wort ebenso wie die Wortsequenz umgekehrt, wenn sich das Modusauswahlsignal Flip_mode auf hohem Logikpegel befindet, d. h. im xy-Achsenspiegelungsmodus oder im y-Achsenspiegelungsmodus.
  • 17 veranschaulicht die Zeitsteuerung der DMA-Adressmodifikation und deren Reihenfolge. Wie aus 17 ersichtlich, werden in Reaktion auf eine fallende Flanke eines Einzelbildstartsignals VSYNC die Einzelbild- und die Zeilenstartadresse vom Adressengenerator 211a bzw. 211b festgelegt. Alle vom spezifischen Funktionsregister gesetzten Befehle werden mit Gültigkeit an den fallenden Flanken des Einzelbildstartsignals VSYNC aktiviert. Nach Bereitstellen der Einzelbild- und der Zeilenstartadresse wird ein Zeilentransferstartsignal HREF freigegeben, z. B. auf hohen Logikpegel. Nach dieser Aktivierung des Zeilentransferstartsignals HREF wird durch das oben erläuterte Verfahren vor einem Bündeltransfer eine Bündeltransferstartadresse erzeugt. Durch Zählen der Anzahl durchgeführter Bündelübertragungen wird zu gegebener Zeit ein Zeilenendesignal EOL erzeugt, welches das Ende einer horizontalen Seite anzeigt, und das Zeilentransferstartsignal HREF wird inaktiv, z. B. auf niedrigem Logikpegel.
  • Während sich die vorstehende Erläuterung auf eine Codier/Decodier-DMA-Einheit, wie die Einheit 119a von 2, bezieht, kann auch eine Voransicht-DMA-Einheit, wie die Einheit 119b von 2 in gleicher Weise mit der gleichen Struktur und Funktion implementiert werden. Während jedoch die Codier/Decodier-DMA-Einheit so konfiguriert wird, dass ein Wort aus vier Pixeln besteht, da ein Pixel einem Byte entspricht, ist die Voransicht-DMA-Einheit mit einem RGB-Format von 16 Bit oder 24 Bit konfiguriert. 18 veranschaulicht derartige RGB-Datentypen, wie sie im Kameramodul verarbeitet werden. In diesem Fall ist im Unterschied zur Codier/Decodier-DMA-Einheit ein Wort aus zwei 16-Bit-Pixeln aufgebaut, wenn das RGB-Format aus 16 Bit besteht, indem jedes Pixel 5 Bit für R, 6 Bit für G und 5 Bit für B umfasst. Wenn das RGB-Format aus 24 Bit besteht, ist ein Wort aus einem Pixel mit je 8 Bit für R, G und B aufgebaut, und in diesem Fall gibt es keine Änderung der Sequenz von Pixeln in einem Wort im xy-Achsenspiegelungsmodus und im y-Achsenspiegelungsmodus.
  • Wie sich aus den gezeigten und oben beschriebenen Ausführungsbeispielen ergibt, ermöglicht die Erfindung eine Reduzierung der Größe z. B. eines Digitalkameramoduls mittels Durchführen von Bildspiegelungsfunktionen unter Verwendung einer DMA-Einheit, wodurch sich ein Bildtransformationssystem mit hoher Geschwindigkeit und niedrigem Leistungsverbrauch realisieren lässt.

Claims (14)

  1. Schaltungsanordnung zur Bilddatenverarbeitung mit Direktspeicherzugriff (DMA), mit – einem Pufferspeicher (207a, 207b) zur Pufferspeicherung von zugeführten Bilddaten und – Mitteln zum variablen DMA-Abruf von Bilddaten aus dem Pufferspeicher in Abhängigkeit von verschiedenen vorgebbaren Bildtranformations-Abrufmodi, wobei die Mittel einen Datenselektor (213a, 213b) zum selektiven Modifizieren von Sequenzen von Datenworten und Bildpixeln im jeweiligen Datenwort der aus dem Pufferspeicher abgerufenen Bilddaten in Abhängigkeit vom gewählten Abrufmodus und einen Adressgenerator (211a, 211b) zum Ausgeben einer Einzelbildstartadresse, einer Zeilenstartadresse und einer Bündeltransferstartadresse für die aus dem Pufferspeicher abgerufenen Bilddaten umfassen, auf die im Direktspeicherzugriff mit einer bestimmten Bündeltransferlänge zugegriffen wird.
  2. Schaltungsanordnung nach Anspruch 1, weiter dadurch gekennzeichnet, dass der Datenselektor und/oder der Adressgenerator dafür eingerichtet sind, dass in einem x-Achsen-Spiegelbildmodus als Abrufmodus der Datenselektor die ursprünglichen Sequenzen von Datenworten und Bildpixeln im jeweiligen Datenwort der im Pufferspeicher gespeicherten Bilddaten beibehält und/oder der Adressgenerator die Einzelbildstartadresse durch Subtrahieren eines zu einer horizontalen Zeile des Einzelbildes gehörigen Adressplatzes von einem gesamten Adressplatz des Einzelbildes der Bilddaten bereitstellt.
  3. Schaltungsanordnung nach Anspruch 2, weiter dadurch gekennzeichnet, dass der Adressgenerator dafür eingerichtet ist, im x-Achsen-Spiegelbildmodus eine zweite Zeilenstartadresse durch Subtrahieren des zu zwei horizontalen Zeilen gehörigen Adressplatzes von einer momentanen Adresse nach Abschluss eines Übertragungsvorgangs für eine erste horizontale Zeile bereitzustellen.
  4. Schaltungsanordnung nach einem der Ansprüche 1 bis 3, weiter dadurch gekennzeichnet, dass der Datenselektor und/oder der Adressgenerator dafür eingerichtet sind, dass in einem y-Achsen-Spiegelbildmodus als Abrufmodus der Datenselektor die ursprünglichen Sequenzen von Datenworten und Bildpixeln im jeweiligen Datenwort der im Pufferspeicher gespeicherten Bilddaten umkehrt und/oder der Adressgenerator die Einzelbildstartadresse durch Addieren eines der Bündeltransferlänge entsprechenden Adressplatzes zu einem einer horizontalen Zeile der Bilddaten entsprechenden Adressplatz bereitstellt und/oder die Bündeltransferstartadresse durch Subtrahieren eines einer Summe der Bündeltransferlänge und einer momentanen Bündeltransferlänge entsprechenden Adressplatzes von einer momentanen Adresse vor einem Bündeltransfer bereitstellt.
  5. Schaltungsanordnung nach Anspruch 4, weiter dadurch gekennzeichnet, dass der Adressgenerator dafür eingerichtet ist, im y-Achsen-Spiegelbildmodus eine zweite Zeilenstartadresse durch Addieren eines zu zwei horizontalen Zeilen gehörigen Adressplatzes und eines zu einer Differenz zwischen zwei letzten Bündelübertragungslängen einer horizontalen Zeile gehörigen Adressplatzes zu einer momentanen Adresse nach Abschluss eines Übertragungsvorgangs für eine erste horizontale Zeile bereitzustellen.
  6. Schaltungsanordnung nach einem der Ansprüche 1 bis 5, weiter dadurch gekennzeichnet, dass der Datenselektor und/oder der Adressgenerator dafür eingerichtet sind, dass in einem xy-Achsen-Spiegelbildmodus als Abrufmodus der Datenselektor die ursprünglichen Sequenzen von Datenworten und Bildpixeln im jeweiligen Datenwort der im Pufferspeicher gespeicherten Bilddaten umkehrt und/oder der Adressgenerator die Einzelbildstartadresse durch Addieren eines der Bündeltransferlänge entsprechenden Adressplatzes zum gesamten Adressplatz eines Einzelbildes der Bilddaten bereitstellt und/oder die Bündeltransferstartadresse durch Subtrahieren eines einer Summe der Bündeltransferlänge und einer momentanen Bündeltransferlänge entsprechenden Adressplatzes von einer momentanen Adresse vor einem Bündeltransfer bereitstellt.
  7. Schaltungsanordnung nach Anspruch 6, weiter dadurch gekennzeichnet, dass der Adressgenerator dafür eingerichtet ist, im xy-Achsen-Spiegelbildmodus eine zweite Zeilenstartadresse durch Addieren eines Adressplatzes entsprechend einer Differenz zwischen zwei letzten Bündelübertragungslängen einer horizontalen Zeile zu einer momentanen Adresse nach Abschluss eines Übertragungsvorgangs für eine erste horizontale Zeile bereitzustellen.
  8. Schaltungsanordnung nach einem der Ansprüche 1 bis 7, weiter dadurch gekennzeichnet, dass sie dafür eingerichtet ist, den Bündeltransfer mittels eines Hauptbündeltransfers und eines Restbündeltransfers auszuführen, wenn die Anzahl an Bildpixeln einer horizontalen Zeile kein ganzzahliges Vielfaches der Bündelübertragungslänge ist.
  9. Schaltungsanordnung nach einem der Ansprüche 1 bis 8, weiter dadurch gekennzeichnet, dass der Datenselektor folgende Elemente enthält: – pixelsequenzmodifizierende Multiplexer (1601_1 bis 1601_15) zum Auswählen zwischen einem ersten, im Pufferspeicher gespeicherten Datenwort mit ursprünglicher Pixelsequenz und einem zweiten Datenwort mit der umgekehrten Pixelsequenz und – einen wortsequenzmodifizierenden Multiplexer (1603) zum Empfangen der von den pixelsequenzmodifizierenden Multiplexern ausgewählten Datenworte und Abgeben der ausgewählten Datenworte mit der ursprünglichen oder der umgekehrten Sequenz.
  10. Schaltungsanordnung nach Anspruch 9, weiter dadurch gekennzeichnet, dass der jeweilige pixelsequenzmodifizierende Multiplexer ein jeweils ausgewähltes Datenwort mit der ursprünglichen oder der umgekehrten Pixelsequenz abhängig von einem Modusauswahlsignal abgibt und der wortsequenzmodifizierende Multiplexer die ausgewählten Datenworte in Reaktion auf ein Ausgangssignal eines Zählers (1605) abgibt.
  11. Schaltungsanordnung nach einem der Ansprüche 1 bis 10, weiter gekennzeichnet durch eine DMA-Steuereinheit (201a, 201b, 203a, 203b) zur Verwaltung des Datenabrufs aus dem Pufferspeicher.
  12. Schaltungsanordnung nach Anspruch 11, weiter gekennzeichnet durch einen Busprotokollsignalgenerator (209a, 209b) zum Abgeben eines Bussignals basierend auf dem Zustand der DMA-Steuereinheit.
  13. Schaltungsanordnung nach Anspruch 11 oder 12, weiter dadurch gekennzeichnet, dass die DMA-Steuereinheit folgende Elemente enthält: – eine finite DMA-Zustandsmaschine (203a, 203b) zum Anzeigen eines DMA-Transferzustands, – eine Kanalarbitriereinheit (205) zur Verwaltung von DMA-Zugriffsprioritäten für Farbkomponenten der Bilddaten und – eine finite Zustandsmaschine (201a) zur Steuerung eines Datentransfers aus einem externen FIFO-Speicher (118a) zum Pufferspeicher basierend auf dem Zustand der finiten DMA-Zustandsmaschine und der Kanalarbitriereinheit.
  14. Kameraschnittstelle zur Übertragung von Bilddaten an einen externen Einzelbildspeicher (127) von einem Kameramodul (101) über einen Systembus (129), mit – einem Vorprozessor (115) zur Verwaltung eines Vorverarbeitungsbetriebs für die vom Kameramodul gelieferten Bilddaten, – einem Farbskalierer (117) zur Speicherung von Bilddaten, die vom Vorprozessor zugeführt werden, in einem FIFO-Speicher (118a, 118b) und zur Modifizierung der Bildpixelanzahl der Bilddaten und – einer Schaltungsanordnung nach einem der Ansprüche 1 bis 13 als Direktspeicherzugriffs(DMA)-Einheit (119) zum Laden von im FIFO-Speicher gespeicherten Bilddaten auf den Systembus und zur Durchführung einer Bildtransformation.
DE102004063847A 2004-01-09 2004-12-30 Schaltungsanordnung zur DMA-Bilddatenverarbeitung und Kameraschnittstelle Active DE102004063847B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR2004-01618 2004-01-09
KR1020040001618A KR101034493B1 (ko) 2004-01-09 2004-01-09 화상 변환 장치, 화상 변환을 위한 직접 메모리 액세스장치 및 화상 변환을 지원하는 카메라 인터페이스

Publications (2)

Publication Number Publication Date
DE102004063847A1 DE102004063847A1 (de) 2005-08-04
DE102004063847B4 true DE102004063847B4 (de) 2010-11-11

Family

ID=34738013

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102004063847A Active DE102004063847B4 (de) 2004-01-09 2004-12-30 Schaltungsanordnung zur DMA-Bilddatenverarbeitung und Kameraschnittstelle

Country Status (5)

Country Link
US (1) US7587524B2 (de)
JP (1) JP4993856B2 (de)
KR (1) KR101034493B1 (de)
CN (1) CN1655593B (de)
DE (1) DE102004063847B4 (de)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100657145B1 (ko) * 2005-02-24 2006-12-13 매그나칩 반도체 유한회사 스케일러를 구비한 이미지센서 및 이미지센서의 이미지 스케일링 방법
US20060007321A1 (en) * 2005-03-26 2006-01-12 David Huai A Distributed Image and Signal Processing Apparatus For Camera Phone Applications
TW200726196A (en) * 2005-12-27 2007-07-01 Altek Corp Mobile communication device with camera and practice thereof
US7876977B2 (en) * 2006-02-15 2011-01-25 Conexant Systems, Inc. Image processor and method of image rotation
KR100862882B1 (ko) * 2007-02-16 2008-10-13 (주)씨앤에스 테크놀로지 선택된 영상 변환 모드에 따라 변경되는 어드레스 신호를발생하는 영상 변환 장치 및 그 영상 변환 방법
US8134577B2 (en) * 2007-09-04 2012-03-13 Lg Electronics Inc. System and method for changing orientation of an image in a display device
US20100013959A1 (en) * 2008-07-17 2010-01-21 Barinder Singh Rai Efficient Generation Of A Reflection Effect
TWI382766B (zh) * 2008-12-23 2013-01-11 Nat Univ Tsing Hua 一種用於超高解析度之顯示框壓縮系統及方法
US8897602B2 (en) * 2009-07-22 2014-11-25 Aptina Imaging Corporation Imaging system with multiframe scaler
EP2282268B1 (de) * 2009-07-23 2012-11-21 STMicroelectronics Srl Schnittstellenvorrichtung und -verfahren, beispielsweise für System-on-Chip
TWI419146B (zh) * 2009-07-23 2013-12-11 Novatek Microelectronics Corp 畫面翻轉方法及裝置
CN102103472B (zh) * 2009-12-16 2013-06-05 北大方正集团有限公司 在喷墨印刷中打印图像原像及其镜像的装置及其方法
US20110317034A1 (en) * 2010-06-28 2011-12-29 Athreya Madhu S Image signal processor multiplexing
KR101795603B1 (ko) 2011-11-17 2017-12-01 삼성전자주식회사 디지털 촬영 장치 및 그 제어방법
JP6117495B2 (ja) * 2012-08-08 2017-04-19 株式会社メガチップス 画像処理装置
JP6117494B2 (ja) * 2012-08-08 2017-04-19 株式会社メガチップス 画像処理インターフェース回路
US9552619B2 (en) 2012-08-08 2017-01-24 Megachips Corporation Image processing apparatus and image processing interface circuit
CN103347157A (zh) * 2013-06-25 2013-10-09 杭州士兰微电子股份有限公司 实时输入数字图像镜像存储的方法及装置
JP5710713B2 (ja) * 2013-08-22 2015-04-30 ファナック株式会社 モータ制御システム
CN103678202B (zh) * 2013-11-26 2016-08-17 北京时代民芯科技有限公司 一种多核处理器的dma控制器
US10176148B2 (en) 2015-08-27 2019-01-08 Microsoft Technology Licensing, Llc Smart flip operation for grouped objects
KR102149277B1 (ko) 2016-05-27 2020-08-28 한화테크윈 주식회사 촬영된 영상에 관한 데이터 프로토콜을 설정하는 단말기 및 방법
CN112732603A (zh) * 2019-10-14 2021-04-30 广州飒特红外股份有限公司 一种多通道vdma控制方法及其应用
TWI775259B (zh) * 2020-12-29 2022-08-21 新唐科技股份有限公司 直接記憶體存取裝置與使用其的電子設備
CN112950456A (zh) * 2021-02-25 2021-06-11 合肥宏晶微电子科技股份有限公司 图像处理方法及装置、电子设备、计算机可读介质
CN113569309B (zh) * 2021-07-20 2024-02-02 华中科技大学 基于有限状态机的双通道镜像加工程序生成方法及系统
CN115034948B (zh) * 2021-12-30 2023-06-16 荣耀终端有限公司 一种图像处理方法和电子设备

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2862242B2 (ja) * 1988-04-28 1999-03-03 キヤノン株式会社 画像読取装置
US5016876A (en) * 1988-10-14 1991-05-21 Williams Electronics Games, Inc. Video display co-processor for use in a video game
JP2685548B2 (ja) * 1988-11-28 1997-12-03 株式会社日立製作所 ディジタル画像データの回転方法およびその装置
US5459823A (en) * 1990-07-05 1995-10-17 Canon Kabushiki Kaisha Graphics engine for true colour 2D graphics
JPH0810445B2 (ja) * 1990-09-21 1996-01-31 インターナショナル・ビジネス・マシーンズ・コーポレイション 動的バス調停方法及び装置
US5686960A (en) * 1992-01-14 1997-11-11 Michael Sussman Image input device having optical deflection elements for capturing multiple sub-images
JPH0863140A (ja) * 1994-08-25 1996-03-08 Sony Corp 画像処理装置
US6226016B1 (en) * 1996-02-05 2001-05-01 Seiko Epson Corporation Display apparatus and method capable of rotating an image by 180 degrees
US5862407A (en) * 1996-03-15 1999-01-19 Rendition, Inc. System for performing DMA byte swapping within each data element in accordance to swapping indication bits within a DMA command
JPH10187528A (ja) * 1996-12-27 1998-07-21 Fuji Xerox Co Ltd 画像データ転送回路
US6473123B1 (en) 1997-08-21 2002-10-29 Flash Point Technology, Inc. Method and system for organizing DMA transfers to support image rotation
US6597394B1 (en) * 1997-11-16 2003-07-22 Pictos Technologies, Inc. Programmable image transform processor for digital image processing
US6304927B1 (en) * 1998-11-13 2001-10-16 Ricoh Company, Ltd. Digital copier with scalable architecture
US6330374B1 (en) * 1998-11-13 2001-12-11 Ricoh Company, Ltd. Image manipulation for a digital copier which operates on a block basis
US6874039B2 (en) * 2000-09-08 2005-03-29 Intel Corporation Method and apparatus for distributed direct memory access for systems on chip
US20030081224A1 (en) * 2001-10-31 2003-05-01 Toshiba Tec Kabushiki Kaisha Image forming apparatus
JP4102055B2 (ja) * 2001-11-02 2008-06-18 株式会社メガチップス データ転送方法
US6760035B2 (en) 2001-11-19 2004-07-06 Nvidia Corporation Back-end image transformation
JP2003271540A (ja) * 2002-03-14 2003-09-26 Ricoh Co Ltd Dmaデータ転送装置
US20040012684A1 (en) * 2002-07-16 2004-01-22 Fairchild Imaging Image reconstruction techniques for charge coupled devices
US7284072B2 (en) * 2003-08-13 2007-10-16 Broadcom Corporation DMA engine for fetching words in reverse order
US7315294B2 (en) * 2003-08-25 2008-01-01 Texas Instruments Incorporated Deinterleaving transpose circuits in digital display systems

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KIM, Youngsik, KIM, Young-Wan, WON, Soon-Jae (u.a.): "A System Manager for Network System-on-a- Chip Designs with Various Memory Access Types", 2001, In: IEEE Symp. on VLSI Technology, Systems, and Applications, S. 176-179, DOI: 10.1109/VTSA. 2001.934513 *

Also Published As

Publication number Publication date
CN1655593B (zh) 2010-09-29
DE102004063847A1 (de) 2005-08-04
KR20050073265A (ko) 2005-07-13
JP4993856B2 (ja) 2012-08-08
JP2005196786A (ja) 2005-07-21
CN1655593A (zh) 2005-08-17
US20050152197A1 (en) 2005-07-14
KR101034493B1 (ko) 2011-05-17
US7587524B2 (en) 2009-09-08

Similar Documents

Publication Publication Date Title
DE102004063847B4 (de) Schaltungsanordnung zur DMA-Bilddatenverarbeitung und Kameraschnittstelle
DE69933496T2 (de) Bildverarbeitungsvorrichtung und -verfahren
DE60129448T2 (de) Busbrücke mit einem Burst-Übertragungsmodebus und einem Einzel-Übertragungsmodebus
DE102012107954A1 (de) Anzeigetreiber, Betriebsverfahren davon, Host zum Steuern des Anzeigetreibers und System mit dem Anzeigetreiber und dem Host
DE3436631C2 (de)
DE10261373A1 (de) Apparat und Verfahren für die Umwandlung von Bildelementen von dem YUV-Format zu dem RGB-Format unter Verwendung von Farbumwertetabellen
DE60114683T2 (de) Vorrichtung und Verfahren zum Erzeugen von Taktsignalen
DE102004011165B4 (de) Verfahren und Vorrichtung zum Verarbeiten von Bilddaten
DE4408522C2 (de) Vorrichtung zur Bilddatenverarbeitung und Verfahren zur Verarbeitung von Bilddaten
CN107786814A (zh) 一种基于宽动态的图像处理方法、装置及曝光电路
CN1071075C (zh) 电视摄象机的白色暗斑校正方法及其装置
DE102021117397A1 (de) Bildsensormodul, bildverarbeitungssystem und bildkomprimierverfahren
DE60315889T2 (de) Bildsignalerzeugungseinheit, digitalkamera und bilderzeugungsverfahren
DE10334627A1 (de) Zeilenpuffer und Verfahren zur Bereitstellung von Zeilendaten für eine Farbinterpolation
US6542429B2 (en) Method of controlling line memory
CN112929672A (zh) 一种视频压缩方法、装置、设备及计算机可读存储介质
DE10020776A1 (de) Bildverarbeitungsapparat und Bildverarbeitungsverfahren
DE69933810T2 (de) Elektronische Kamera mit Bildvorschaufunktion
DE60029046T2 (de) Bildpuffer mit mehreren Zugriffsmoden
DE69934563T2 (de) Digitale Kamera und Bildverarbeitungsverfahren
CN113658049A (zh) 一种图像转置的方法、设备和计算机可读存储介质
DE112016002105T5 (de) Bildverarbeitungsvorrichtung und Bildverarbeitungsverfahren
DE102009061757B3 (de) Elektronisches Gerät mit effizienter Übermittlung von Steuersignalen und Daten zwischen unterschiedlichen Arten von elektronischen Modulen
WO1996009627A1 (de) Speichereinrichtung und verfahren zum gleichzeitigen lesendund schreiben von daten
DE102015113704A1 (de) Bildprozessor, Bildverarbeitungssystem mit Bildprozessor, Ein-Chip-System mit Bildverarbeitungssystem und Verfahren zum Betreiben des Bildverarbeitungssystems

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R020 Patent grant now final

Effective date: 20110211