DE102014102246A1 - Integrierte Schaltung zum Berechnen einer Zieleintragsadresse eines Puffer-Deskriptors basierend auf einem Datenblockabstand, Verfahren zum Betreiben desselben und System mit demselben - Google Patents

Integrierte Schaltung zum Berechnen einer Zieleintragsadresse eines Puffer-Deskriptors basierend auf einem Datenblockabstand, Verfahren zum Betreiben desselben und System mit demselben Download PDF

Info

Publication number
DE102014102246A1
DE102014102246A1 DE102014102246.7A DE102014102246A DE102014102246A1 DE 102014102246 A1 DE102014102246 A1 DE 102014102246A1 DE 102014102246 A DE102014102246 A DE 102014102246A DE 102014102246 A1 DE102014102246 A1 DE 102014102246A1
Authority
DE
Germany
Prior art keywords
data
entry
buffer
address
storage device
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.)
Pending
Application number
DE102014102246.7A
Other languages
English (en)
Inventor
Seong Woon KIM
Kwan Ho KIM
Seok Min Kim
Tae Sun Kim
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 DE102014102246A1 publication Critical patent/DE102014102246A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

Ein Verfahren zum Betreiben einer integrierten Schaltung ist vorgesehen. Das Verfahren weist ein Empfangen eines Datenblockabstandes von einer zweiten Speichervorrichtung (400), ein Erhalten einer Zieleintragsadresse unter Verwendung des Datenblockabstandes und ein Lesen eines Eintrags aus einer Mehrzahl von Einträgen, welche in einem Puffer-Deskriptor enthalten sind, welcher in einer ersten Speichervorrichtung (200) enthalten ist, basierend auf der Zieleintragsadresse auf. Das Verfahren weist auch ein Lesen von Daten aus einem Datenpuffer aus einer Mehrzahl von Datenpuffern (211), welche in der ersten Speichervorrichtung (200) enthalten sind, unter Verwendung einer physikalischen Adresse, welche in dem Eintrag enthalten ist, und ein Übertragen zu der zweiten Speichervorrichtung auf.

Description

  • QUERVERWEIS AUF VERWANDTE ANMELDUNGEN
  • Diese Anmeldung beansprucht die Priorität der koreanischen Patentanmeldung Nr. 10-2013-0022168 , welche am 28. Februar 2013 eingereicht wurde, deren Offenbarung hierin in ihrer Gesamtheit durch Bezugnahme mit eingebunden ist.
  • HINTERGRUND
  • Verfahren und Vorrichtungen, welche konsistent mit beispielhaften Ausführungsformen des erfinderischen Konzepts sind, beziehen sich auf eine integrierte Schaltung und genauer auf eine integrierte Schaltung zum Berechnen einer Zieleintragsadresse eines einer Mehrzahl von Einträgen eines Puffer-Deskriptors basierend auf einem Datenblockabstand.
  • Eine Flash-Speichervorrichtung rührt eine Programmieroperation und eine Leseoperation in Einheiten einer vorbestimmten Größe, beispielsweise in Einheiten von Blöcken durch. Ein Puffer-Deskriptor wird verwendet, um Adressen zu mappen, welche für eine Dateneingabe/-ausgabe einer Mehrzahl von Speichervorrichtungen notwendig sind. Ein Controller beziehungsweise eine Steuerung, der/die die Dateneingabe/-ausgabe der Speichervorrichtungen steuert, mappt die notwendigen Adressen unter Verwendung von Puffer-Deskriptoren und greift auf einen Bereich einer Speichervorrichtung zu, welcher einer Adresse entspricht, welche als das Mapping-Ergebnis erhalten wird.
  • KURZFASSUNG
  • Gemäß einem Aspekt einer beispielhaften Ausführungsform ist ein Verfahren zum Betreiben einer integrierten Schaltung vorgesehen. Das Verfahren weist ein Empfangen eines Datenblockabstands von einer zweiten Speichervorrichtung, ein Erhalten einer Zieleintragsadresse unter Verwendung des Datenblockabstandes und ein Lesen eines Eintrags unter einer Mehrzahl von Einträgen, welche in einem Puffer-Deskriptor enthalten sind, welcher in einer ersten Speichervorrichtung gespeichert ist, basierend auf der Zieleingangsadresse auf.
  • Das Verfahren kann weiterhin ein Lesen von Daten aus einem Datenpuffer unter einer Mehrzahl von Datenpuffern, welche in der ersten Speichervorrichtung enthalten sind, unter Verwendung einer physikalischen Adresse, welche in dem Eintrag enthalten ist, und ein Übertragen der Daten zu der zweiten Speichervorrichtung aufweisen.
  • Das Verfahren kann weiterhin ein Einstellen von Werten aufweisen, von welchen jeder eine Größe eines Datenpuffers anzeigt und in einem der Einträge enthalten ist, sodass sie dieselben sind, welche ein Register verwenden. Alternativ kann das Verfahren weiterhin ein Empfangen von gelesenen Daten zusammen mit dem Datenblockabstand und ein Schreiben der gelesenen Daten zu einem Datenpuffer unter einer Mehrzahl von Datenpuffern aufweisen, welche in der ersten Speichervorrichtung enthalten sind, unter Verwendung einer physikalischen Adresse, welche in dem Eintrag enthalten ist.
  • Das Erhalten der Zieleintragsadresse kann ein Berechnen eines ganzzahligen Quotienten des Datenblockabstandes dividiert durch eine Datenpuffergröße und ein Berechnen der Zieleintragsadresse unter Verwendung von ESA = BD + Q × ES aufweisen, wobei ESA die Zieleintragsadresse ist, BD eine Startadresse des Puffer-Deskriptors ist, Q der ganzzahlige Quotient ist, und ES eine Größe jedes der Einträge ist.
  • Das Verfahren kann weiterhin ein Empfangen einer Datengröße zusammen mit dem Datenblockabstand, ein Berechnen einer benachbarten Eintragsadresse der Zieleintragsadresse basierend auf der Zieleintragsadresse und eines Verhältnises der Datengröße zu einer Größe eines Datenpuffers, und ein Lesen von Daten aus einem Datenpuffer aus einer Mehrzahl von Datenpuffern, welche in der ersten Speichervorrichtung enthalten sind, basierend auf einer physikalischen Adresse, welche in dem Eintrag enthalten ist, der basierend auf der Zieleintragsadresse gelesen wird, und ein Übertragen der Daten zu der zweiten Speichervorrichtung während des Lesens eines benachbarten Eintrags basierend auf der benachbarten Eintragsadresse aufweisen.
  • Das Verfahren kann weiterhin ein Empfangen einer Datengröße und von gelesenen Daten zusammen mit dem Datenblockabstand, ein Berechnen einer benachbarten Eintragsadresse der Zieleintragsadresse basierend auf der Zieleintragsadresse und einem Verhältnis der Datengröße zu einer Größe eines Datenpuffers, und ein Schreiben der gelesenen Daten zu einem Datenpuffer unter einer Mehrzahl von Datenpuffern, welche in der ersten Speichervorrichtung enthalten sind, basierend auf einer physikalischen Adresse, welche in dem Eintrag, welcher basierend auf der Zieleingangsadresse gelesen wird, enthalten ist, während eines Lesens eines benachbarten Eintrags basierend auf der benachbarten Eintragsadresse aufweisen.
  • Gemäß einem Aspekt einer anderen beispielhaften Ausführungsform ist eine integrierte Schaltung vorgesehen, welche eine Steuerlogikschaltung, welche konfiguriert ist, um eine Zieleintragsadresse unter Verwendung eines Datenblockabstandes zu erhalten, welcher von einer zweiten Speichervorrichtung empfangen wird, und einen ersten Direktspeicherzugriffs(DMA =)Direct Memory Access)-Controller aufweist, welcher konfiguriert ist, um einen Eintrag unter einer Mehrzahl von Einträgen zu lesen, welche in einem Puffer-Deskriptor, welcher in einer ersten Speichervorrichtung enthalten ist, basierend auf der Zieleintragsadresse zu lesen.
  • Der erste DMA-Controller kann auf einen Datenpuffer unter einer Mehrzahl von Datenpuffern, welche in der ersten Speichervorrichtung enthalten sind, unter Verwendung einer physikalischen Adresse, welche in dem Eintrag enthalten ist, zugreifen, um eine Schreiboperation oder eine Leseoperation durchzuführen.
  • Die integrierte Schaltung kann weiterhin einen zweiten DMA-Controller aufweisen, welcher konfiguriert ist, um Daten aus einem Datenpuffer unter einer Mehrzahl von Datenpuffern, welche in der ersten Speichervorrichtung enthalten sind, unter Verwendung einer physikalischen Adresse, welche in dem Eintrag enthalten ist, zu lesen, und um die Daten zu der zweiten Speichervorrichtung zu übertragen.
  • Alternativ kann die integrierte Schaltung weiterhin einen zweiten DMA-Controller aufweisen, welcher konfiguriert ist, um gelesene Daten zu einem Datenpuffer unter einer Mehrzahl von Datenpuffern, welche in der ersten Speichervorrichtung enthalten sind, unter Verwendung einer physikalischen Adresse, welche in dem Eintrag enthalten ist, zu schreiben, wenn die Daten zusammen mit dem Datenblockabstand erhalten werden.
  • Die integrierte Schaltung kann eine Universal-Flash-Speicher(UFS)-Hostcontroller-Schnittstelle sein, welche in JEDEC JESD223 definiert ist. Der Puffer-Deskriptor kann eine physikalische Bereichs-Beschreibungstabelle (PRDT = Physical Region Description Table) sein, welche JEDEC JESD223 definiert ist.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die obigen und anderen Aspekte werden deutlicher werden durch ein Beschreiben von beispielhaften Ausführungsformen im Detail unter Bezugnahme auf die beigefügten Zeichnungen, in welchen:
  • 1 ein Blockschaltbild eines elektronischen Systems gemäß einer beispielhaften Ausführungsform ist;
  • 2 ein Diagramm eines Speicherabbilds bzw. Speicherplans eines elektronischen Systems ist, das einen Datenpufferbereich, einen Puffer-Deskriptorbereich und einen Speicherkern aufweist, welche in 1 gemäß einer beispielhaften Ausführungsform veranschaulicht sind;
  • 3 ein Diagramm eines Datenflusses in einer Datenschreiboperation gemäß einer beispielhaften Ausführungsform ist;
  • 4 ein Diagramm einer Datentabelle zum Erklären des Betriebs eines elektronischen Systems, welches die Datenschreiboperation, welche in 3 veranschaulicht ist, durchführt, gemäß einer beispielhaften Ausführungsform ist;
  • 5 ein Diagramm eines Datenflusses in einer Datenleseoperation gemäß einer beispielhaften Ausführungsform ist;
  • 6 ein Diagramm eines Speicherabbilds eines elektronischen Systems ist, welches den Datenpufferbereich, den Puffer-Deskriptorbereich und den Speicherkern aufweist, welche in 1 gemäß einer beispielhaften Ausführungsform veranschaulicht sind;
  • 7 ein Diagramm eines Datenflusses in einer Datenschreiboperation gemäß einer beispielhaften Ausführungsform ist;
  • 8 ein Diagramm einer Datentabelle zum Erklären des Betriebs eines elektronischen Systems, welches die Datenschreiboperation, welche in 7 veranschaulicht ist, gemäß einer beispielhaften Ausführungsform durchführt, ist;
  • 9 ein Diagramm eines Datenflusses in einer Datenleseoperation gemäß einer beispielhaften Ausführungsform ist;
  • 10 ein Flussdiagramm eines Datenschreibverfahrens gemäß einer beispielhaften Ausführungsform ist;
  • 11 ein Flussdiagramm eines Datenleseverfahrens gemäß einer beispielhaften Ausführungsform ist; und
  • 12 ein Blockschaltbild eines elektronischen Systems gemäß einer beispielhaften Ausführungsform ist.
  • DETAILLIERTE BESCHREIBUNG DER BEISPIELHAFTEN AUSFÜHRUNGSFORMEN
  • Das erfinderische Konzept wird nun vollständiger hierin nachstehend unter Bezugnahme auf die beigefügten Zeichnungen beschrieben werden, in welchen beispielhafte Ausführungsformen gezeigt sind. Dieses erfinderische Konzept kann jedoch in vielen unterschiedlichen Formen ausgeführt werden und sollte nicht als auf die hierin erläuterten Ausführungsformen beschränkt betrachtet werden. Vielmehr sind diese Ausführungsformen vorgesehen, sodass diese Offenbarung gewissenhaft und vollständig sein wird und den Umfang des erfinderischen Konzepts Fachleuten vollständig übermitteln wird. In den Zeichnungen können die Größe und relative Größen von Schichten und Bereichen zur Klarheit überhöht sein. Gleiche Zahlen beziehen sich durchgehend auf gleiche Elemente.
  • Es wird verstanden werden, dass wenn auf ein Element Bezug genommen wird als ”verbunden” oder ”gekoppelt” mit einem anderen Element, es direkt mit dem anderen Element verbunden oder gekoppelt sein kann, oder zwischenliegende Elemente gegenwärtig sein können. Im Gegensatz dazu sind, wenn auf ein Element Bezug genommen wird als ”direkt verbunden” oder ”direkt gekoppelt” mit einem anderen Element, keine zwischenliegenden Elemente gegenwärtig. Wenn hierin verwendet schließt der Begriff ”und/oder” eine beliebige und alle Kombinationen von einem oder mehreren der zugeordneten aufgelisteten Gegenstände ein und kann abgekürzt werden als ”/”.
  • Es wird verstanden werden, dass, obwohl die Begriffe erster/erste/erstes, zweiter/zweite/zweites etc. hierin verwendet werden können, um verschiedene Elemente zu beschreiben, diese Elemente nicht durch diese Begriffe beschränkt werden sollten. Diese Begriffe werden nur verwendet, um ein Element von einem anderen zu unterscheiden. Beispielsweise könnte ein erstes Signal als ein zweites Signal benannt werden, und ähnlich, könnte ein zweites Signal als ein erstes Signal benannt werden, ohne von den Lehren der Offenbarung abzuweichen.
  • Die Terminologie, welche hierin verwendet wird, ist zum Zweck des Beschreibens bestimmter Ausführungsformen ausschließlich und ist nicht vorgesehen, um für das erfinderische Konzept beschränkend zu sein. Wenn hierin verwendet, sind die Singularformen ”einer/eine/eines”, ”der/die/das” vorgesehen, um die Pluralformen ebenso einzuschließen, solange der Zusammenhang nicht deutlich anderweitiges anzeigt. Es wird weiterhin verstanden werden, dass die Begriffe ”weist auf” und/oder ”aufweisend” oder ”schließt eine beziehungsweise enthält” und/oder ”einschließlich”, wenn sie in dieser Beschreibung verwendet werden, die Anwesenheit von genannten Merkmalen, Bereichen, ganzen Zahlen, Schritten, Operationen, Elementen und/oder Komponenten beziehungsweise Bestandteilen spezifizieren, jedoch die Anwesenheit oder Hinzufügung eines oder mehrerer anderer Merkmale, Bereiche, ganzer Zahlen, Schritte, Operationen, Elemente, Bestandteile und/oder Komponenten und/oder Gruppen davon nicht ausschließen.
  • Solange nicht anderweitig definiert, haben alle Begriffe (einschließlich technischer und wissenschaftlicher Begriffe), welche hierin verwendet werden, dieselbe Bedeutung, wie sie allgemein durch einen Fachmann, zu dessen Gebiet das erfinderische Konzept gehört, verstanden werden. Es wird weiterhin verstanden werden, dass Begriffe, wie diejenigen, welche in allgemein verwendeten Wörterbüchern definiert sind, als eine Bedeutung habend interpretiert werden sollten, welche konsistent mit ihrer Bedeutung in dem Zusammenhang des relevanten Fachgebiets und/oder der vorliegenden Anmeldung sind, und nicht in einem idealisierten oder übermäßig formalen Sinne interpretiert werden werden, solange nicht ausdrücklich hierin so definiert.
  • 1 ist ein Blockschaltbild eines elektronischen Systems 100 gemäß einer beispielhaften Ausführungsform. Das elektronische System 100 weist eine erste Speichervorrichtung 200, einen Controller beziehungsweise eine Steuerung 300 und eine zweite Speichervorrichtung 400 auf. Das elektronische System 100 kann als ein Personalcomputer (PC), ein Datenserver, ein tragbares elektronisches System oder ein anderes elektronisches System implementiert sein.
  • Das tragbare elektronische System, das als mobile Ausstattung bezeichnet werden kann, kann als ein Laptop-Computer, ein mobiles Telefon, ein Smartphone, ein Tablet-PC, ein persönlicher digitaler Assistent (PDA = Personal Digital Assistant), ein Enterprise Digital Assistant (EDA), eine digitale Fotokamera, eine digitale Videokamera, ein tragbarer Multimediaplayer (PMP = Portable Multimedia Player), eine persönliche Navigationsvorrichtung oder eine tragbare Navigationsvorrichtung (PND = Portable Navigation Device), eine in der Hand zu haltende Spielekonsole, eine mobile Internetvorrichtung oder ein E-Buch implementiert sein. Das elektronische System kann als ein digitaler Fernseher (TV = Television), oder ein Internetprotokoll-TV (IPTV = Intenretprotocol TV) implementiert sein.
  • Die erste Speichervorrichtung 200 weist einen Datenpufferbereich 210 auf, welcher eine Mehrzahl von Datenpuffern aufweist, und einen Puffer-Deskriptorbereich 230, welcher eine Mehrzahl von Einträgen aufweist. Die erste Speichervorrichtung 200 kann auch eine Zugriffssteuerschaltung (nicht gezeigt) aufweisen, welche Daten aus den Bereichen 210 und 230 liest oder Daten zu den Bereichen 210 und 230 schreibt.
  • Die erste Speichervorrichtung 200 kann durch eine flüchtige Speichervorrichtung oder eine nicht flüchtige Speichervorrichtung implementiert sein. Die flüchtige Speichervorrichtung kann unter Verwendung eines dynamischen Direktzugriffsspeichers (DRAM = Dynamic Random Access Memory), eines statischen RAM (SRAM), eines Thyristor-RAM (T-RAM), eines Zero Capacitor RAM (Z-RAM) oder eines Twin-Transistor-RAM (TTRAM) implementiert sein.
  • Die nicht flüchtige Speichervorrichtung kann implementiert sein unter Verwendung eines elektrisch löschbaren programmierbaren Lesespeichers (EEPROM = Electrically Erasable Programmable Read-Only Memory), eines Flash-Speichers, eines magnetischen RAM (MRAM = Magnetic RAM), eines Spin-Übertragdrehmoments MRAM, eines leitfähigen brückenden RAM (CBRAM = Conductive Bridging RAM), eines ferroelektrischen RAM (FeRAM = Ferroelectric RAM), eines Phasenübergangs-RAM (PRAM = Phase Change RAM), eines resistiven RAM (RRAM = Resistive RAM), eines Nanotube-RRAM, eines Polymer-RAM (PoRAM = Polymer RAM), eines Nano-Floating-Gate Speichers (NFGM = Nano Floating Gate Memory), eines holografischen Speichers, einer molekularen elektronischen Speichervorrichtung oder eines Isolatorwiderstands-Änderungsspeichers implementiert sein.
  • Der Controller 300 kann Daten, welche zwischen der ersten Speichervorrichtung 200 und der zweiten Speichervorrichtung 400 übertragen werden steuern. Der Controller 300 kann durch eine integrierte Schaltung oder ein SEin-Chip-System (SoC) implementiert sein. Wie in 12 gezeigt ist, kann der Controller 300 als ein Teil eines Anwendungsprozesses implementiert sein.
  • Die erste Speichervorrichtung 200 und der Controller 300 können zusammen in einer einzelnen integrierten Schaltung oder einem einzelnen SoC integriert sein. Zu dieser Zeit kann die erste Speichervorrichtung 200 unter Verwendung eines SRAM implementiert sein.
  • Der Controller 300 kann eine Steuerlogikschaltung 310, einen ersten Direktspeicherzugriffs(DMA = Direct Memory Access)-Controller 330, einen zweiten DMA-Controller 350 und eine erste Schnittstelle 370 aufweisen. Die Steuerlogikschaltung 310 kann eine Zieleintragsadresse ESA eines Zieleintrags, welcher in einem Puffer-Deskriptor enthalten ist, unter Verwendung einer Datenblockverschiebung, welche in einem Paket enthalten ist, welches von der zweiten Speichervorrichtung 400 ausgegeben wird, berechnen. Die Steuerlogikschaltung 310 kann den Betrieb des ersten DMA-Controllers 330, des zweiten DMA-Controllers 350 und der ersten Schnittstelle 370 steuern.
  • Der erste DMA-Controller 330 kann einen Eintrag ENT unter einer Mehrzahl von Einträgen, welche in dem Puffer-Deskriptor enthalten sind, welcher in dem Puffer-Deskriptorbereich 230 der ersten Speichervorrichtung 200 gespeichert ist, basierend auf der Zieleintragsadresse ESA lesen und kann den Eintrag ENT oder eine physikalische Adresse PA, welche in dem Eintrag ENT enthalten ist, zu dem zweiten DMA-Controller 350 übertragen. Der erste DMA-Controller 330 liest nur den Eintrag ENT, welcher in dem Puffer-Deskriptor enthalten ist, welcher in dem Puffer-Deskriptorbereich 230 gespeichert ist, anstelle eines Lesens des gesamten Puffer-Deskriptors.
  • Während einer Datenschreiboperation kann in Antwort auf ein Steuersignal CTR der Steuerlogikschaltung 310 der zweite DMA-Controller 350 einen Teil oder alle Daten, welche in einem der Datenpuffer, welcher in dem Datenpufferbereich 210 der ersten Speichervorrichtung 200 enthalten ist, unter Verwendung der physikalischen Adresse PA, welche in dem Eintrag ENT enthalten ist, lesen und die Daten zu der zweiten Speichervorrichtung 400 über die erste Schnittstelle 370 übertragen.
  • Während einer Datenleseoperation kann in Antwort auf das Steuersignal CTR der Steuerlogikschaltung 310 der zweite DMA-Controller 350 Daten, welchen von der zweiten Speichervorrichtung 400 ausgegeben werden, zu dem Teil oder allem von einem der Datenpuffer, welcher in dem Datenpufferbereich 210 der ersten Speichervorrichtung 200 enthalten ist, unter Verwendung der physikalischen Adresse PA, welche in dem Eintrag ENT enthalten ist, schreiben. Zu dieser Zeit kann das Paket von der zweiten Speichervorrichtung 400 einen Datenblockabstand und die Daten aufweisen.
  • In anderen Ausführungsformen kann der erste DMA-Controller 330 die Funktionen des zweiten DMA-Controllers 350 haben. Zu dieser Zeit kann der erste DMA-Controller 330 auf einen der Datenpuffer, welcher in dem Datenpufferbereich 210 der ersten Speichervorrichtung 200 enthalten ist, zugreifen, um die Datenschreiboperation oder die Datenleseoperation unter Verwendung der physikalischen Adresse PA, welche in dem Eintrag ENT enthalten ist, durchzuführen.
  • Die zweite Speichervorrichtung 400 kann durch eine Flash-basierte Speichervorrichtung implementiert sein, welche Daten in Einheiten einer vorbestimmten Größe, beispielsweise in Einheiten von Blöcken zuführt oder ausgibt. Die Flash-basierte Speichervorrichtung kann ein Festkörperlaufwerk (SSD = Solid State Drive), ein Universell-Seriell-Bus(USB)-Flash-Laufwerk, ein Universal-Flash-Speicher (UFS), eine Secure Digital(SD)-Karte, eine Multimedia-Karte (MMC) oder eine eingebettete MMC (eMMC) sein.
  • Wenn die zweite Speichervorrichtung 400 ein UFS ist, kann der Controller 300 eine UFS-Hostcontroller-Schnittstelle sein, welche in dem Standard JEDEC JESD223 definiert ist, der Puffer-Deskriptor, welcher in dem Puffer-Deskriptorbereich 230 enthalten ist, kann eine physikalische Bereichsbeschreibungstabelle (PRDT = Physical Region Description Table) in JEDEC JESD223 sein, und das Paket kann eine UFS-Protokollinformationseinheit (UPIU = UFS Protocol Information Unit) sein. Der UFS-Hostcontroller-Schnittstellenstandard JEDEC JESD223 ist hierin durch Bezugnahme mit eingebunden.
  • 2 ist ein Diagramm eines Speicherabbilds eines elektronischen Systems 100A, welches den Datenpufferbereich 210, den Puffer-Deskriptorbereich 230 und einen Speicherkern 430, welche in 1 veranschaulicht sind, gemäß einer beispielhaften Ausführungsform aufweist. Der Datenpufferbereich 210 weist eine Mehrzahl von Datenpuffern 211 auf. Die Datenpuffer können Speicherbereiche sein, welche Daten speichern.
  • Der Puffer-Deskriptorbereich 230 weist eine Mehrzahl von Einträgen 231 auf. Die Einträge 231 können dieselbe Größe haben. Der Puffer-Deskriptorbereich 230 kann Informationen über ein Mapping zwischen einem Datenblock in der zweiten Speichervorrichtung 400 und einem Datenpuffer 211 in der ersten Speichervorrichtung 200 aufweisen. Die Informationen können in den Einträgen 231 des Puffer-Deskriptorbereichs 230 gespeichert sein.
  • Jeder der Einträge 231 weist eine physikalische Adresse, beispielsweise eine Startadresse eines der Datenpuffer 211 auf. Gemäß einer beispielhaften Ausführungsform kann jeder Eintrag 231 eine physikalische Adresse eines Datenpuffers 211 und einen Wert, welcher eine Größe des Datenpuffers 211 anzeigt, aufweisen. Der Wert kann basierend auf Informationen bestimmt werden, welche in einem Register 311, welches in der Steuerlogikschaltung 310 enthalten ist, enthalten sind.
  • Der Speicherkern 430 kann eine Mehrzahl von Speicherbereichen, d. h. Blöcken aufweisen. Ein Datenblock kann in jedem der Blöcke gespeichert sein.
  • 3 ist ein Diagramm eines Datenflusses in einer Datenschreiboperation gemäß einer beispielhaften Ausführungsform. 4 ist ein Diagramm einer Datentabelle zum Erklären des Betriebs eines elektronischen Systems, welches die Datenschreiboperation durchführt, welche in 3 gemäß einer beispielhaften Ausführungsform veranschaulicht ist.
  • Die Schreiboperation wird unter Bezugnahme auf die 1 bis 4 beschrieben werden. Es wird angenommen, dass eine Zielstartadresse TA der zweiten Speichervorrichtung 400 gleich 5000 ist, ein Datenblockabstand OFF, welcher einer Größe eines Datenblocks entspricht, gleich 128 ist, eine Puffer-Deskriptorstartadresse BD gleich 9000 ist, eine Eintragsgröße beziehungsweise Adressgröße OFFB gleich 4 ist, eine Datenpufferbereichsstartadresse SA gleich 1000 ist und eine Datenpuffergröße S gleich 128 ist. Hier wird die Einheit jeder Zahl nicht berücksichtigt.
  • Der Controller 300, genauer die Steuerlogikschaltung 310 überträgt einen Befehl CMD, welcher die Zielstartadresse TA von 5000 und eine Datengröße LENW enthält, zu einer zweiten Schnittstelle 410, welche in der zweiten Speichervorrichtung 400 enthalten ist, über die erste Schnittstelle 370 in Operation S110. Die Datengröße LENW zeigt eine Größe von Daten an, welche zu dem Speicherkern 430 zu schreiben sind.
  • Die zweite Speichervorrichtung 400, genauer die zweite Schnittstelle 410 kann die Anzahl von Paketen PACKETi, welche zu übertragen sind, und/oder eine Übertragungssequenz von Daten gemäß einem Zustand des Speicherkerns 430 bestimmen.
  • Es wird angenommen, dass die zweite Schnittstelle 410 Daten DATA, welche von dem Controller 300 ausgegeben werden, zu dem Speicherkern 430 gemäß der Datentabelle, welche in 4 veranschaulicht ist, schreibt. Die zweite Speichervorrichtung 400 überträgt ein Paket PACKET0, welches einen Datenblockabstand OFFSET0 (= 1OFF = 128) und eine Datengröße LENZ (= 128) aufweist, zu dem Controller 300 in Operation S112.
  • Die Steuerlogikschaltung 310 berechnet einen Index von 1 basierend auf der Datenpuffergröße S (= 128) und einem Datenblockabstand OFFSETi von 128 in Operation S114. In anderen Worten gesagt ist der Index der ganzzahlige Quotient (= 1) des Datenblockabstands OFFSETi (= 128) dividiert durch die Datenpuffergröße (= 128). Wenn beispielsweise der Datenblockabstand OFFSETi 128 ist und die Datenpuffergröße S128 ist, ist ein ganzzahliger Quotient gleich 1. Die Steuerlogikschaltung 310 berechnet die Zieleintragsadresse ESA in Operation S116 unter Verwendung der Gleichung 1: ESA = BD + INDEX × ES, (1) wobei ES die Größe jedes Eintrags 231 ist.
  • Die Zieleintragsadresse ESA (= BD + 1OFFB), welche unter Verwendung von Gleichung 1 berechnet wird ist 9004.
  • Die Steuerlogikschaltung 310 gibt die Zieleintragsadresse ESA (= BD + 1OFFB = 9004) an den ersten DMA-Controller 330 aus. Der erste DMA-Controller 330 überträgt die Zieleintragsadresse ESA (= BD + 1OFFB = 9004) zu der ersten Speichervorrichtung 200 in Operation S118. Die erste Speichervorrichtung 200 überträgt einen Eintrag ENT1, welcher der Zieleingangsadresse ESA (= BD + 1OFFB = 9004) entspricht, zu dem Controller 300 in Operation S120. In anderen Worten gesagt liest der erste DMA-Controller 330 den Eintrag ENT1, welcher in dem Puffer-Deskriptorbereich 230 enthalten ist, unter Verwendung der Zieleintragsadresse ESA (= BD + 1OFFB = 9004) in den Operationen S118 und S120.
  • Der erste DMA-Controller 330 überträgt die physikalische Adresse PA (= SA + 6S), welche in dem Eintrag ENT1 enthalten ist, zu dem zweiten DMA-Controller 350. Der zweite DMA-Controller 350 überträgt die physikalische Adresse PA (= SA + 6S) zu der ersten Speichervorrichtung 200 in Operation S122.
  • Die erste Speichervorrichtung 200 überträgt zweite Daten DATA2, welche in einem Datenpuffer 221 gespeichert sind, welcher der physikalischen Adresse PA (= SA + 6S) entspricht, zu dem Controller 300 in Operation S124. In anderen Worten gesagt liest der zweite DMA-Controller 350 die zweiten Daten DATA2 von dem Datenpuffer 211, welcher der physikalischen Adresse Pa (= SA + 6S) entspricht, in den Operationen S122 und S124. Der zweite DMA-Controller 350 überträgt die zweiten Daten DATA2 zu der zweiten Schnittstelle 410 durch die erste Schnittstelle 370 in Operation S126. Die zweite Schnittstelle 410 schreibt die zweiten Daten DATA2 zu einem Block, welcher einer Adresse TA + 1OFF entspricht.
  • Kontinuierlich überträgt die zweite Speichervorrichtung 400 ein Paket PACKET1, welches einen Datenblockabstand OFFSET1 (= 3OFF = 3 × 128) aufweist, und die Datengröße LEN1 (= 128) zu dem Controller 300 in den Operationen S128 und S112.
  • Die Steuerlogikschaltung 310 berechnet einen Index von 3 basierend auf der Datenpuffergröße S (= 128) und dem Datenblockabstand OFFSETi (= 3 × 128) in Operation S114. Die Steuerlogikschaltung 310 berechnet die Zieleintragsadresse ESA (= BD + 3OFFB = 9000 + 3 × 4 = 9012) unter Verwendung von Gleichung 1 in Operation S116. Die Steuerlogikschaltung 310 gibt die Zieleintragsadresse ES (= BD + 3OFFB = 9012) zu dem ersten DMA-Controller 330 aus.
  • Der erste DMA-Controller 330 liest einen Eintrag ENT3, welcher in dem Puffer-Deskriptorbereich 230 enthalten ist, unter Verwendung der Zieleintragsadresse ESA (= BD + 3OFFB = 9012) in den Operationen S118 und S120. Der erste DMA-Controller 330 überträgt die physikalische Adresse PA (= SA + 9S), welche in dem Eintrag ENT3 enthalten ist, zu dem zweiten DMA-Controller 350.
  • Der zweite DMA-Controller 350 liest vierte Daten DATA4 von einem Datenpuffer 211, welcher der physikalischen Adresse PA (= SA + 9S) entspricht, in den Operationen S122 und S124 und überträgt die vierten Daten DATA4 zu der zweiten Schnittstelle 410 über die erste Schnittstelle 370 in Operation S126. Die zweite Schnittstelle 410 schreibt die vierten Daten DATA4 zu einem Block, welcher einer Adresse TA + 3OFF entspricht.
  • Während der zweite DMA-Controller 350 die zweiten Daten DATA2 liest, kann der erste DMA-Controller 330 den Eintrag ENT3 lesen. Als ein Ergebnis wird die Leistungsfähigkeit des Controllers 300 erhöht.
  • Kontinuierlich überträgt die zweite Speichervorrichtung 400 ein Paket PACKET2, welches einen Datenblockabstand OFFSET2 (= 5OFF = 5 × 128) und die Datengröße LEN1 (= 128) aufweist, zu dem Controller 300 in den Operationen S128 und S112. Die Steuerlogikschaltung 310 berechnet einen Index von 5 basierend auf der Datenpuffergröße S (= 128) und dem Datenblockabstand OFFSETi (= 5 × 128) in Operation S114. Die Steuerlogikschaltung 310 berechnet die Zieleintragsadresse ESA (= BD + 5OFFB = 9000 + 5 × 4 = 9020) unter Verwendung von Gleichung 1 in Operation S116. Die Steuerlogikschaltung 310 gibt die Zieleintragsadresse ESA (= BD + 5OFFB = 9020) an den ersten DMA-Controller 330 aus.
  • Der erste DMA-Controller 330 liest einen Eintrag ENT5, welcher in dem Puffer-Deskriptorbereich 230 enthalten ist, unter Verwendung der Zieleintragsadresse ESA (= BD + 5OFFB = 9020) in den Operationen S118 und S120. Der erste DMA-Controller 330 überträgt die physikalische Adresse PA (= SA + 10S), welche in dem Eintrag ENT5 enthalten ist, zu dem zweiten DMA-Controller 350.
  • Der zweite DMA-Controller 350 liest sechste Daten DATA6 von einem Datenpuffer 211, welcher der physikalischen Adresse PA (= SA + 10S) entspricht, in den Operationen S122 und S124 und überträgt die sechsten Daten DATA6 zu der zweiten Schnittstelle 410 über die erste Schnittstelle 370 in Operation S126. Die zweite Schnittstelle 410 schreibt die sechsten Daten DATA6 zu einem Block, welcher einer Adresse TA + 5OFF entspricht.
  • Danach werden Daten DATA8, DATA1, DATA3, DATA5 und DATA7 sequenziell zu jeweiligen entsprechenden Blöcken in dem Speicherkern 430 der zweiten Speichervorrichtung 400 in den Operationen S112 bis S128 geschrieben.
  • 5 ist ein Diagramm eines Datenflusses in einer Datenleseoperation gemäß einem Beispiel. Die Leseoperation wird unter Bezugnahme auf die 1, 2, 4 und 5 beschrieben werden.
  • Die Steuerlogikschaltung 310 des Controllers 300 überträgt einen Befehl CMD, welcher eine Zielstartadresse TA (= 5000) des Kernspeichers 430 und eine Datengröße LENR aufweist, zu der zweiten Schnittstelle 410 der zweiten Speichervorrichtung 400 in Operation S210. Die Datengröße LENR zeigt eine Größe von Daten, welche aus dem Speicherkern 430 zu lesen sind, an.
  • Die zweite Speichervorrichtung 400 überträgt ein Paket PACKET0, welches einen Datenblockabstand OFFSET0 (= 1OFF = 1 × 128), eine Datengröße LEN1 (= 128) und zweite Daten DATA2 aufweist, zu dem Controller 300 in Operation S212. Die Steuerlogikschaltung 310 berechnet einen Index von 1 basierend auf der Datenpuffergröße S (= 128) und dem Datenblockabstand OFFSET0 (= 1 × 128) in Operation 214.
  • Die Steuerlogikschaltung 310 berechnet eine Zieleintragsadresse ESA (= BD + 1OFFB = 9000 + 1 × 4 = 9004) unter Verwendung von Gleichung 1 in Operation S216. Die Steuerlogikschaltung 310 gibt die Zieleintragsadresse ESA (= BD + 1OFFB = 9004) an den ersten DMA-Controller 330 aus.
  • Der erste DMA-Controller 330 liest einen Eintrag ENT1 von dem Puffer-Deskriptorbereich 230 unter Verwendung der Zieleintragsadresse ESA (= BD + 1OFFB = 9004) in den Operationen S218 und S220. Der erste DMA-Controller 330 überträgt eine physikalische Adresse PA (= SA + 6S), welche in dem Eintrag ENT1 enthalten ist, zu dem zweiten DMA-Controller 350.
  • Der zweite DMA-Controller 350 schreibt die zweiten Daten DATA2 zu dem Datenpuffer 211, welcher der physikalischen Adresse PA (= SA + 6S) entspricht, in Operation S224. Kontinuierlich überträgt die zweite Speichervorrichtung 400 ein Paket PACKET1, welches einen Datenblockabstand OFFSET1 (= 3OFF = 3 × 128), eine Datengröße LEN1 (= 128) und vierte Daten DATA4 aufweist, zu dem Controller 300 in Operation S212. Die Steuerlogikschaltung 310 berechnet einen Index von 3 basierend auf der Datenpuffergröße S (= 128) und dem Datenblockabstand OFFSET1 (= 3 × 128) in Operation S214.
  • Die Steuerlogikschaltung 310 berechnet eine Zieleintragsadresse ESA (= BD + 3OFFB = 9000 + 3 × 4 = 9012) unter Verwendung von Gleichung 1 in Operation S216. Die Steuerlogikschaltung 310 gibt die Zieleintragsadresse ESA (= BD + 3OFFB = 9012) zu dem ersten DMA-Controller 330 aus.
  • Der erste DMA-Controller 330 liest einen Eintrag ENT3 von dem Puffer-Deskriptorbereich 230 unter Verwendung der Zieleintragsadresse ESA (= BD + 3OFFB = 9012) in den Operationen S218 und S220. Der erste DMA-Controller 330 überträgt eine physikalische Adresse PA (= SA + 9S), welche in dem Eintrag ENT3 enthalten ist, zu dem zweiten DMA-Controller 350.
  • Der zweite DMA-Controller 350 schreibt die vierten Daten DATA4 zu dem Datenpuffer 211, welcher der physikalischen Adresse PA (= SA + 9S) entspricht, in Operation S224. Danach werden die Daten DATA6, DATA8, DATA1, DATA3, DATA5 und DATA7 sequenziell zu jeweiligen entsprechenden Datenpuffern 211 in dem Datenpufferbereich 210 der ersten Speichervorrichtung 200 in den Operationen S212 bis S224 geschrieben.
  • 6 ist ein Diagramm eines Speicherabbilds eines elektronischen Systems 100B, welches den Datenpufferbereich 210, den Puffer-Deskriptorbereich 230 und den Speicherkern 430-1 gemäß einer beispielhaften Ausführungsform aufweist. Das elektronische System 100B kann dieselbe Struktur des elektronischen Systems 100A, welches in 1 veranschaulicht ist, haben. Daten DATA2 und DATA3, welche jeweils in Datenpuffern 221 gespeichert sind, werden sequenziell gemäß einem einzelnen Paket verarbeitet, und Daten DATA4, DATA5, DATA6 und DATA7, welche jeweils in Datenpuffern 211 gespeichert sind, werden sequenziell gemäß einem anderen einzelnen Paket verarbeitet.
  • 7 ist ein Diagramm eines Datenflusses in einer Datenschreiboperation gemäß einer beispielhaften Ausführungsform. 8 ist ein Diagramm einer Datentabelle zum Erklären eines Betriebs eines elektronischen Systems, welches die Datenschreiboperation durchführt, welche in 7 veranschaulicht ist. Die Schreiboperation, welche durchgeführt wird, wenn Daten, welche eine Datengröße LEN2, welche in Paket PACKETi enthalten sind, in einer Mehrzahl von Datenpuffern 211 existieren, wird im Detail unter Bezugnahme auf die 6 bis 8 beschrieben werden. Der Controller 300, genauer die Steuerlogikschaltung 310 überträgt einen Befehl CMD, welcher eine Zielstartadresse TA von 5000 und eine Datengröße LENW aufweist, zu der zweiten Schnittstelle 410 der zweiten Speichervorrichtung 400 in Operation S310.
  • Die zweite Speichervorrichtung 400, genauer die zweite Schnittstelle 410 kann die Anzahl von Paketen, welche zu übertragen ist, eine Datengröße LEN2 und/oder eine Sequenz von Daten gemäß einem Zustand des Speicherkerns 430 bestimmen. Es wird angenommen, dass die zweite Schnittstelle 410 Daten zu dem Speicherkern 430 gemäß der Datentabelle, welche in 8 veranschaulicht ist, schreibt.
  • Die zweite Speichervorrichtung 400 überträgt ein Paket PACKET0, welches einen Datenblockabstand OFFSET0 (= 1OFF = 128) und die Datengröße LEN2 (= 2 × 128) aufweist, zu dem Controller 300 in Operation S312. Die Steuerlogikschaltung 310 berechnet einen Index von 1 basierend auf der Datenpuffergröße S von 128 und dem Datenblockabstand OFFSET0 von 128) in Operation S314. Der Controller 300 berechnet die Anzahl von Iterationen, d. h. die Iterationsanzahl NoI basierend auf dem Datenblockabstand OFFSET0, d. h. 1OFF, der Datengröße LEN2 (= 2 × 128) und der Datenpuffergröße S (= 128) in Operation S316. Die Iterationsanzahl NoI kann ein Ergebnis des Dividierens der Datengröße LEN2 durch die Datenpuffergröße S (= 128) sein, d. h. 2.
  • Die Steuerlogikschaltung 310 berechnet eine Zieleintragsadresse ESA1 (= BD + 1OFFB = 9004) unter Verwendung der Gleichung 1 in Operation S318 und gibt sie an den ersten DMA-Controller 330 aus. Der erste DMA-Controller 330 liest einen Eintrag ENT1, welcher in dem Puffer-Deskriptorbereich 230 enthalten ist, unter Verwendung der Zieleintragsadresse ESA1 (= BD + 1OFFB = 9004) in den Operationen S320 und S322. Der erste DMA-Controller 330 überträgt eine physikalische Adresse PA (= SA + 6S), welche in dem Eintrag ENT1 enthalten ist, zu dem zweiten DMA-Controller 350.
  • Der zweite DMA-Controller 350 liest zweite Daten DATA2 von dem Datenpuffer 211, welcher der physikalischen Adresse PA1 (= SA + 6S) entspricht, in Operationen S324 und S326 und überträgt die zweiten Daten DATA2 zu der zweiten Schnittstelle 410 über die erste Schnittstelle 370 in Operation S328. Die zweite Schnittstelle 410 schreibt die zweiten Daten DATA2 zu einem entsprechenden Block in dem Speicherkern 430.
  • Die Steuerlogikschaltung 310 berechnet eine Eintragsadresse ESA2 benachbart zu der Zieleintragsadresse ESA1. Beispielsweise kann die Steuerlogikschaltung 310 die benachbarte Eintragsadresse ESA2 basierend auf der Zieleintragsadresse ESA1 und einer Eintragsgröße OFFB oder ES berechnen.
  • Die Steuerlogikschaltung 310 gibt die benachbarte Eintragsadresse ESA2 (= ESA1 + ES = 9008) an den ersten DMA-Controller 330 aus. Der erste DMA-Controller 330 liest einen Eintrag ENT2 von dem Puffer-Deskriptorbereich 230 unter Verwendung der benachbarten Eintragsadresse ESA2 (= BD + 2OFFB = 9008) in Operationen S332 und S334.
  • Der erste DMA-Controller 330 überträgt eine physikalische Adresse PA2 (= SA + 1S), welche in dem Eintrag ENT2 enthalten ist, zu dem zweiten DMA-Controller 350. Der zweite DMA-Controller 350 liest dritte Daten DATA3 von dem Datenpuffer 211, welcher der physikalischen Adresse, PA2 (= SA + 1S) entspricht, in Operationen S336 und S338 und überträgt die dritten Daten DATA3 zu der zweiten Schnittstelle 410 über die erste Schnittstelle 370 in Operation S340. Die zweite Schnittstelle 410 schreibt einen entsprechenden Block in den Speicherkern 430.
  • 7 veranschaulicht ein Verfahren zum Schreiben der Daten DATA2 und DATA3 zu den jeweiligen Blöcken in dem Speicherkern 430 unter Verwendung eines Pakets PACKET0. Ein Verfahren zum Schreiben von Daten DATA4 bis DATA7 zu jeweiligen Blöcken in dem Speicherkern 430 unter Verwendung eines anderen Pakets PACKET1 wird untenstehend beschrieben werden.
  • Die zweite Speichervorrichtung 400 überträgt ein Paket PACKET1, welches einen Datenblockabstand OFFSET1 (= 3OFF = 3 × 128) und eine Datengröße LEN2 (= 4 × 128) aufweist, zu dem Controller 300 in Operation S312. Die Steuerlogikschaltung 310 berechnet einen Index von 3 basierend auf der Datenpuffergröße S von 128 und dem Datenblockabstand OFFSET1 von 3 × 128 in Operation S314.
  • Der Controller 300 berechnet eine Iterationsanzahl NoI basierend auf dem Datenblockabstand OFFSET1, der Datengröße LEN2 und der Datenpuffergröße S in Operation S316. Die Iterationsanzahl NoI kann ein Ergebnis des Dividierens der Datengröße LEN2 (= 4 × 128) durch die Datenpuffergröße S (= 128) sein, d. h. 4.
  • Wie obenstehend beschrieben ist, werden drei Eintragsadressen ESA, d. h. BD + 3OFFB sequenziell berechnet und dann werden Daten DATA4, DATA5, DATA6 und DATA7 sequenziell zu jeweiligen entsprechenden Blöcken in dem Speicherkern 430 der zweiten Speichervorrichtung 400 gemäß physikalischen Adressen SA + 9S, SA + 12S, SA + 10S und SA + 13S jeweils geschrieben, welche jeweils in Einträgen ENT3, ENT4, ENT5 und ENT6 enthalten sind, welche sequenziell gelesen wurden.
  • 9 ist ein Diagramm eines Datenflusses in einer Datenleseoperation gemäß einer beispielhaften Ausführungsform. Die Leseoperation, welche durchgeführt wird, in einem Fall, in dem Daten, welche der Datengröße LEN2 entsprechen, welche in einem Paket PACKETi enthalten sind, zu einer Mehrzahl von Datenpuffern 211 geschrieben werden, wird im Detail unter Bezugnahme auf die 1, 6, 8 und 9 beschrieben werden.
  • Der Controller 300, genauer die Steuerlogikschaltung 310 überträgt einen Befehl CMD, welcher eine Zielstartadresse TA von 5000 und eine Datengröße LENR aufweist, zu der zweiten Schnittstelle 410 der zweiten Speichervorrichtung 400 in Operation S410. Die zweite Speichervorrichtung 400, genauer die zweite Schnittstelle 410 kann die Anzahl von Paketen, welche zu übertragen sind, eine Größe von Daten, welche zu lesen ist und/oder eine Sequenz von Daten gemäß einem Zustand des Speicherkerns 430 bestimmen. Es wird angenommen, dass die zweite Schnittstelle 410 die Daten zu dem Datenpufferbereich 210 der ersten Speichervorrichtung 200 gemäß der Datentabelle, welche in 8 veranschaulicht ist, schreibt.
  • Die zweite Speichervorrichtung 400 überträgt ein Paket PACKET0, welches einen Datenblockabstand OFFSET0 (= 1OFF = 128), eine Datengröße LEN2 (= 2 × 128) und gelesene Daten DATA2 und DATA3 aufweist, zu dem Controller 300 in Operation S412. Die Steuerlogikschaltung 310 berechnet einen Index von 1 basierend auf der Datenpuffergröße S von 128 und dem Datenblockabstand OFFSET0 von 128 in Operation S414.
  • Die Steuerlogikschaltung 310 berechnet eine Iterationsanzahl NoI basierend auf dem Datenblockabstand OFFSET0, d. h. 1OFF, der Datengröße LEN2 (= 2 × 128) und der Datenpuffergröße S (= 128) in Operation S416. Beispielsweise kann die Steuerlogikschaltung 310 die Iterationsanzahl NoI durch ein Dividieren der Datengröße LEN2 (= 2·128) durch die Datenpuffergröße S (= 128) berechnen, das heißt die Iterationsanzahl NoI kann 2 sein.
  • Die Steuerlogikschaltung 310 berechnet eine Zieleintragsadresse ESA1 (= BD + 1OFFB = 9004) unter Verwendung von Gleichung 1 in Operation S418 und gibt sie an den ersten DMA-Controller 330 aus. Der erste DMA-Controller 330 liest einen Eintrag ENT1, welcher in dem Puffer-Deskriptorbereich 230 enthalten ist, unter Verwendung der Zieleintragsadresse ESA1 (= BD + 1OFFB = 9004) in Operationen S420 und S422. Der erste DMA-Controller 330 überträgt eine physikalische Adresse PA1 (= SA + 6S), welche in dem Eintrag ENT1 enthalten ist, zu dem zweiten DMA-Controller 350.
  • Der zweite DMA-Controller 350 schreibt zweite Daten DATA2 zu dem Datenpuffer 211, welcher der physikalischen Adresse PA1 (= SA + 6S) entspricht, in Operation S424. Die Steuerlogikschaltung 310 berechnet eine Eintragsadresse ESA2 benachbart zu der Zieleintragsadresse ESA1. Beispielsweise kann die Steuerlogikschaltung 310 die benachbarte Eintragsadresse ESA2 basierend auf der Zieleintragsadresse ESA1 und einer Eintragsgröße OFFB oder ES berechnen. Die Steuerlogikschaltung 310 gibt die benachbarte Eintragsadresse ESA2 (= ESA1 + ES = 9008) an den ersten DMA-Controller 330 aus.
  • Der erste DMA-Controller 330 liest den Eintrag ENT2 von dem Puffer-Deskriptorbereich 230 unter Verwendung der benachbarten Eintragsadresse ESA2 (= BD + 2OFFB = 9008) in Operationen S428 und S430. Der erste DMA-Controller 330 überträgt die physikalische Adresse PA2 (= SA + 1S), welche in dem Eintrag ENT2 enthalten ist, zu dem zweiten DMA-Controller 350. Der zweite DMA-Controller 350 schreibt die dritten Daten DATA3 zu dem Datenpuffer 211, welcher der physikalischen Adresse PA2 (= SA + 1S) entspricht, in Operation S432.
  • 9 veranschaulicht ein Verfahren zum Schreiben der gelesenen Daten DATA2 und DATA3 zu den jeweiligen Datenpuffern 211 unter Verwendung eines Pakets PACKET0. Ein Verfahren zum Schreiben von Daten DATA4 bis DATA7 zu jeweiligen Datenpuffern 211 unter Verwendung eines anderen Pakets PACKET1 wird untenstehend beschrieben werden.
  • Die zweite Speichervorrichtung 400 überträgt ein Paket PACKET1, welches einen Datenblockabstand OFFSET1 (= 3OFF = 3 × 128) und eine Datengröße LEN2 (= 4 × 128) aufweist, zu dem Controller 300 in Operation S412. Die Steuerlogikschaltung 310 berechnet einen Index von 3 basierend auf der Datenpuffergröße S von 128 und dem Datenblockabstand OFFSET1 von 3 × 128 in Operation S414.
  • Da Daten, welche der Datengröße LEN2 entsprechen, welche in dem Paket PACKET1 enthalten sind, zu einer Mehrzahl von Datenpuffern 211 geschrieben werden, berechnet die Steuerlogikschaltung 310 eine Iterationsanzahl NoI basierend auf dem Datenblockabstand 3OFF, der Datengröße LEN2 (= 4 × 128) und der Datenpuffergröße S (= 128) in Operation S416. Beispielsweise kann die Steuerlogikschaltung 310 die Iterationsanzahl NoI durch ein Dividieren der Datengröße LEN2 (= 4 × 128) durch die Datenpuffergröße S (= 128) berechnen, das heißt die NoI kann 4 sein.
  • Wie obenstehend beschrieben ist, werden drei Eintragsadressen BD + 4OFFB, BD + 5OFFB und BD + 6OFFB benachbart zu der Zieleintragsadresse ESA, d. h. BD + 3OFFB sequenziell berechnet, und dann werden Daten DATA4, DATA5, DATA6 und DATA7 sequenziell zu jeweiligen Datenpuffern 211 in dem Datenpufferbereich 210 der ersten Speichervorrichtung 200 jeweils unter Verwendung von physikalischen Adressen SA + 9S, SA + 12S, SA + 10S und SA + 13S geschrieben, die jeweils in Einträgen ENT3, ENT4, ENT5 und ENT6 enthalten sind, welche sequenziell gelesen wurden.
  • 10 ist ein Flussdiagramm eines Datenschreibverfahrens gemäß einer beispielhaften Ausführungsform. Bezug nehmend auf die 1 bis 4, 6 bis 8 und 10 empfängt der Controller 300 ein Paket PACKETi, welches einen Datenblockabstand OFFSETi aufweist, von der zweiten Speichervorrichtung 400 in Operation S510.
  • Der Controller 300 berechnet eine Startadresse eines Zieleintrags, d. h. eine Zieleintragsadresse ESA unter Verwendung des Datenblockabstandes OFFSETi in Operation S512. Der Controller 300 liest einen Zieleintrag ENT, welcher der Zieleintragsadresse ESA entspricht, unter Verwendung des ersten DMA-Controllers 330 in Operation S514.
  • Der Controller 300 liest Daten von einem Datenpuffer 211 unter Verwendung einer physikalischen Adresse PA, welche in dem Zieleintrag ENT enthalten ist, in Operation S516. Der Controller 300 überträgt die Daten zu der zweiten Speichervorrichtung 400, und die zweite Speichervorrichtung 400 schreibt die Daten zu einem entsprechenden Block in dem Speicherkern 430 in Operation S518.
  • 11 ist ein Flussdiagramm eines Datenleseverfahrens gemäß einer beispielhaften Ausführungsform. Bezug nehmend auf die 1, 2, 4, 5, 6, 8, 9 und 11 empfängt der Controller 300 ein Paket PACKETi, welches einen Datenblockabstand OFFSETi aufweist, und gelesene Daten von der zweiten Speichervorrichtung 400 in Operation S610.
  • Der Controller 300 berechnet eine Startadresse eines Zieleintrags, d. h. eine Zieleintragsadresse ESA unter Verwendung des Datenblockabstandes OFFSETi in Operation S612. Der Controller 300 liest einen Zieleintrag ENT, welcher der Zieleintragsadresse ESA entspricht unter Verwendung des ersten DMA-Controllers 330 in Operation S614. Der Controller 300 schreibt die gelesenen Daten zu einem Datenpuffer 211 unter Verwendung der physikalischen Adresse PA, welche in dem Zieleintrag ENT enthalten ist, in Operation S616.
  • 12 ist ein Blockdiagramm eines elektronischen Systems 500 gemäß einer beispielhaften Ausführungsform. Bezug nehmend auf die 1 bis 12 weist das elektronische System 500 die erste Speichervorrichtung 200, einen Anwendungsprozessor 510, die zweite Speichervorrichtung 400 und eine Anzeige 600 auf.
  • Der Anwendungsprozessor 510 weist den Controller 300, eine zentrale Verarbeitungseinheit (CPU = Central Processing Unit) 513 und einen Anzeigecontroller beziehungsweise eine Anzeigesteuerung 515 auf. Die CPU 513 steuert Operationen des Controllers 300 und den Anzeigecontroller 515 durch einen Bus 511. Gemäß der Steuerung des Anzeigecontrollers 515 können Daten in den Speichervorrichtungen 200 und 400 auf der Anzeige 600 angezeigt werden.
  • Wie obenstehend beschrieben ist, berechnet gemäß einer beispielhaften Ausführungsform eine integrierte Schaltung leicht eine physikalische Adresse einer Speichervorrichtung, welche zum Mappen beziehungsweise für ein Mapping benötigt wird, wobei die Ressourcen verringert werden, welche notwendig sind, um die physikalische Adresse zu berechnen, und eine Dateneingabe-/Ausgabeleistungsfähigkeit erhöht wird.
  • Während das erfinderische Konzept besonders unter Bezugnahme auf beispielhafte Ausführungsformen davon gezeigt und beschrieben wurde, wird es durch Fachleute verstanden werden, dass verschiedene Änderungen in den Formen und Details darin getätigt werden können, ohne vom Gedanken und Umfang des erfinderischen Konzepts, wie es durch die folgenden Ansprüche definiert ist, abzuweichen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • KR 10-2013-0022168 [0001]
  • Zitierte Nicht-Patentliteratur
    • JEDEC JESD223 [0014]
    • Standard JEDEC JESD223 [0046]

Claims (10)

  1. Verfahren zum Betreiben einer integrierten Schaltung, wobei das Verfahren Folgendes aufweist: ein Empfangen eines Datenblockabstands von einer zweiten Speichervorrichtung (400); ein Erhalten einer Zieleintragsadresse unter Verwendung des Datenblockabstands; und ein Lesen eines Eintrags aus einer Mehrzahl von Einträgen, welche in einem Puffer-Deskriptor enthalten sind, welcher in einer ersten Speichervorrichtung (200) gespeichert ist, basierend auf der Zieleintragsadresse.
  2. Verfahren nach Anspruch 1, weiterhin aufweisend ein Lesen von Daten aus einem Datenpuffer aus einer Mehrzahl von Datenpuffern (211), welche in der ersten Speichervorrichtung (200) enthalten sind, unter Verwendung einer physikalischen Adresse, welche in dem Eintrag enthalten ist, und ein Übertragen der Daten zu der zweiten Speichervorrichtung (400).
  3. Verfahren nach Anspruch 2, das weiterhin ein Lesen eines anderen Eintrags aus der Mehrzahl von Einträgen aufweist, welcher einem anderen Datenpuffer entspricht, um andere Daten von dem anderen Datenpuffer während des Lesens der Daten von dem Datenpuffer zu lesen.
  4. Verfahren nach Anspruch 1, weiterhin aufweisend ein Einstellen von Werten, von welchen jeder eine Größe eines Datenpuffers (211) anzeigt und in einem der Eintrage enthalten ist, um dieselben zu sein, welche ein Register verwenden.
  5. Integrierte Schaltung, die Folgendes aufweist: eine Steuerlogikschaltung (310), welche konfiguriert ist, um eine Zieleintragsadresse unter Verwendung eines Datenblockabstandes, welcher von einer zweiten Speichervorrichtung (400) empfangen wird, zu erhalten; und ein erster Direktspeicherzugriffs(DMA)-Controller (330), welcher konfiguriert ist, um einen Eintrag aus einer Mehrzahl von Einträgen, welche in einem Puffer-Deskriptor enthalten sind, welcher in einer ersten Speichervorrichtung gespeichert ist (200), basierend auf der Zieleintragsadresse zu lesen.
  6. Integrierte Schaltung nach Anspruch 5, wobei der erste DMA-Controller (330) auf einen Datenpuffer aus einer Mehrzahl von Datenpuffern (211), welche in der ersten Speichervorrichtung (200) enthalten sind, unter Verwendung einer physikalischen Adresse zugreift, welche in dem Eintrag enthalten ist, um eines einer Schreiboperation und einer Leseoperation durchzuführen.
  7. Integrierte Schaltung nach Anspruch 5, weiterhin aufweisend einen zweiten DMA-Controller (350), welcher konfiguriert ist, um Daten von einem Datenpuffer aus einer Mehrzahl von Datenpuffern (211), welche in der ersten Speichervorrichtung (200) enthalten sind, unter Verwendung einer physikalischen Adresse zu lesen, welche in dem Eintrag enthalten ist, und um die Daten zu der zweiten Speichervorrichtung (400) zu übertragen.
  8. Integrierte Schaltung nach Anspruch 5, weiterhin aufweisend einen zweiten DMA-Controller (350), welcher konfiguriert ist, um gelesene Daten zu einem Datenpuffer aus einer Mehrzahl von Datenpuffern (211), welche in der ersten Speichervorrichtung (200) enthalten sind, unter Verwendung einer physikalischen Adresse zu schreiben, welche in dem Eintrag enthalten ist, wenn die gelesenen Daten zusammen mit dem Datenblockabstand empfangen werden.
  9. Integrierte Schaltung nach Anspruch 5, wobei die Steuerlogikschaltung (310) einen ganzzahligen Quotienten des Datenblockabstandes dividiert durch eine Datenpuffergröße berechnet und die Zieleintragsadresse unter Verwendung von ESA = BD + Q × ES berechnet, wobei ESA die Zieleintragsadresse ist, BD eine Startadresse des Puffer-Deskriptor ist, Q der ganzzahlige Quotient ist und ES eine Größe jedes der Einträge ist.
  10. Anwendungsprozessor, welcher Folgendes aufweist: die integrierte Schaltung nach Anspruch 5; und einen Controller (300), welcher die integrierte Schaltung steuert.
DE102014102246.7A 2013-02-28 2014-02-21 Integrierte Schaltung zum Berechnen einer Zieleintragsadresse eines Puffer-Deskriptors basierend auf einem Datenblockabstand, Verfahren zum Betreiben desselben und System mit demselben Pending DE102014102246A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020130022168A KR101861744B1 (ko) 2013-02-28 2013-02-28 데이터 블록 오프셋에 기초하여 버퍼 디스크립터의 타겟 엔트리 어드레스를 계산할 수 있는 집적 회로와 상기 집적 회로를 포함하는 시스템
KR10-2013-0022168 2013-02-28

Publications (1)

Publication Number Publication Date
DE102014102246A1 true DE102014102246A1 (de) 2014-08-28

Family

ID=51349631

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014102246.7A Pending DE102014102246A1 (de) 2013-02-28 2014-02-21 Integrierte Schaltung zum Berechnen einer Zieleintragsadresse eines Puffer-Deskriptors basierend auf einem Datenblockabstand, Verfahren zum Betreiben desselben und System mit demselben

Country Status (4)

Country Link
US (1) US9298613B2 (de)
KR (1) KR101861744B1 (de)
CN (1) CN104021090B (de)
DE (1) DE102014102246A1 (de)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101998347B1 (ko) * 2015-03-18 2019-10-01 전자부품연구원 디바이스 메모리 접근방법
US10776404B2 (en) 2015-04-06 2020-09-15 EMC IP Holding Company LLC Scalable distributed computations utilizing multiple distinct computational frameworks
US10791063B1 (en) 2015-04-06 2020-09-29 EMC IP Holding Company LLC Scalable edge computing using devices with limited resources
US10812341B1 (en) * 2015-04-06 2020-10-20 EMC IP Holding Company LLC Scalable recursive computation across distributed data processing nodes
US10706970B1 (en) 2015-04-06 2020-07-07 EMC IP Holding Company LLC Distributed data analytics
US10425350B1 (en) 2015-04-06 2019-09-24 EMC IP Holding Company LLC Distributed catalog service for data processing platform
US10860622B1 (en) 2015-04-06 2020-12-08 EMC IP Holding Company LLC Scalable recursive computation for pattern identification across distributed data processing nodes
US10015106B1 (en) 2015-04-06 2018-07-03 EMC IP Holding Company LLC Multi-cluster distributed data processing platform
CN106257434B (zh) * 2015-06-16 2019-04-30 深圳市中兴微电子技术有限公司 一种基于增强型外设互连协议总线的数据传输方法及装置
US10656861B1 (en) 2015-12-29 2020-05-19 EMC IP Holding Company LLC Scalable distributed in-memory computation
JP6602684B2 (ja) * 2016-02-15 2019-11-06 株式会社東芝 制御装置および制御方法
KR102395190B1 (ko) 2017-07-31 2022-05-06 삼성전자주식회사 호스트와 인터페이스를 수행하는 스토리지 장치, 호스트 및 스토리지 장치의 동작방법
KR20190086177A (ko) 2018-01-12 2019-07-22 에스케이하이닉스 주식회사 컨트롤러 및 그것의 동작방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130022168A (ko) 2011-08-25 2013-03-06 강성삼 오토차량의 안전제동장치

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7577782B2 (en) 1996-02-02 2009-08-18 Sony Corporation Application programming interface for data transfer and bus management over a bus structure
KR20000026337A (ko) 1998-10-20 2000-05-15 윤종용 수신용 버퍼 디스크립터
US6324599B1 (en) * 1999-01-11 2001-11-27 Oak Technology Computer system and method for tracking DMA transferred data within a read-ahead local buffer without interrupting the host processor
TW453069B (en) * 2000-01-05 2001-09-01 Via Tech Inc Packet accessing method with parallel multiplexing feature
KR100403620B1 (ko) 2001-02-28 2003-10-30 삼성전자주식회사 채널 활용율을 높이는 통신 시스템 및 그 방법
US6668311B2 (en) * 2001-07-30 2003-12-23 Intel Corporation Method for memory allocation and management using push/pop apparatus
US7307998B1 (en) 2002-08-27 2007-12-11 3Com Corporation Computer system and network interface supporting dynamically optimized receive buffer queues
WO2004057481A1 (ja) * 2002-12-20 2004-07-08 Fujitsu Limited Dma制御装置、dma制御方法、dma制御プログラム
US7660908B2 (en) 2003-05-01 2010-02-09 International Business Machines Corporation Implementing virtual packet storage via packet work area
US8077778B2 (en) 2003-10-31 2011-12-13 Broadcom Corporation Video display and decode utilizing off-chip processor and DRAM
US8161197B2 (en) 2003-12-19 2012-04-17 Broadcom Corporation Method and system for efficient buffer management for layer 2 (L2) through layer 5 (L5) network interface controller applications
US7343434B2 (en) 2005-03-31 2008-03-11 Intel Corporation Buffer management within SLS (simple load store) apertures for inter-endpoint communication in advanced switching fabric
KR100861931B1 (ko) 2005-06-10 2008-10-09 삼성전자주식회사 패킷 수집에 적합한 버퍼 디스크립터 구성 장치 및 방법
US7496699B2 (en) * 2005-06-17 2009-02-24 Level 5 Networks, Inc. DMA descriptor queue read and cache write pointer arrangement
KR100661519B1 (ko) 2005-12-21 2006-12-27 엘지노텔 주식회사 코어 프로세서와 통신 프로세서의 버퍼 디스크립터 미스매치 복구 기능을 가지는 프로세서 장치 및 그 방법
KR100881597B1 (ko) 2007-02-02 2009-02-03 지인정보기술 주식회사 읽기 요청 처리 시스템 및 방법
US7813342B2 (en) * 2007-03-26 2010-10-12 Gadelrab Serag Method and apparatus for writing network packets into computer memory
KR20110050665A (ko) * 2008-08-06 2011-05-16 아스펜 액퀴지션 코포레이션 정지가능하고 재시작가능한 dma 엔진

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130022168A (ko) 2011-08-25 2013-03-06 강성삼 오토차량의 안전제동장치

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JEDEC JESD223
Standard JEDEC JESD223

Also Published As

Publication number Publication date
US20140244908A1 (en) 2014-08-28
KR101861744B1 (ko) 2018-05-29
US9298613B2 (en) 2016-03-29
KR20140107935A (ko) 2014-09-05
CN104021090A (zh) 2014-09-03
CN104021090B (zh) 2019-07-19

Similar Documents

Publication Publication Date Title
DE102014102246A1 (de) Integrierte Schaltung zum Berechnen einer Zieleintragsadresse eines Puffer-Deskriptors basierend auf einem Datenblockabstand, Verfahren zum Betreiben desselben und System mit demselben
DE112014005521B4 (de) Speichermodul und Verfahren zum Verwalten des Abbildens logischer Adressen auf physikalische Adressen
DE102018113447A1 (de) Speichervorrichtung zum Koppeln mit einem Host und Verfahren zum Betreiben des Hosts und der Speichervorrichtung
DE102017104150B4 (de) Abnutzungsausgleich in Speichervorrichtungen
DE102011076895B4 (de) Cachekohärenzprotokoll für persistente Speicher
DE102013208423B4 (de) Virtuelle Speicherstruktur für Coprozessoren, die Speicherallokationsbegrenzungen haben
DE102018128775A1 (de) Ein erweiterbares baumbasiertes Indexierungsframework, das Erweiterung des Hadoop Distributed File System ermöglicht
DE102017104448A1 (de) Datenspeichervorrichtung
TWI544334B (zh) 資料儲存裝置與資料儲存裝置操作方法
DE102011101202A1 (de) Non-volatile storage for graphics hardware
DE102015117066A1 (de) Verfahren zum Betreiben einer Datenspeichervorrichtung, mobile Rechenvorrichtung mit derselben und Verfahren der mobilen Rechenvorrichtung
DE112014005266T5 (de) Verfahren und System zur Forwärtsreferenz-Protokollierung in einem peristenten Datenspeicher
US10296250B2 (en) Method and apparatus for improving performance of sequential logging in a storage device
DE102018214010A1 (de) Verfahren und Vorrichtung zur Reduzierung von unbemerkten Datenfehlern in nichtflüchtigen Speichersystemen
DE112020004591T5 (de) L2P-Übersetzungstechniken in begrenzten RAM-Systemen
DE112017001118T5 (de) Verfahren und Vorrichtung zum Bereitstellen eines zusammenhängend adressierbaren Speicherbereichs durch Neuabbildung eines Adressraums
DE112016000697T5 (de) Identifizieren von Plattenlaufwerken und Verarbeiten von Datenzugriffsanforderungen
DE112017004916T5 (de) Verwendung von Kompression zur Kapazitätserhöhung eines speicherseitigen Caches mit grosser Blockgrösse
DE112016005988T5 (de) Aufgliedernder blockspeicher-steuerstapel
DE102015005817A1 (de) System und Verfahren zum Cachen von Festkörpergerät- Leseanforderungsergebnissen
DE102014102560A1 (de) Verfahren zum simultanen Erzeugen von skalierten Bildern unter Verwendung eines Originalbildes und das Verfahren verwendende Vorrichtungen
DE102017001995A1 (de) Effiziente geräteübergreifende redundanzimplementierung auf direkt angeschlossenen, nicht-flüchtigen hochleistungsspeichern mit datenreduktion
DE102018120964A1 (de) Integrierte Schaltungsspeichervorrichtungen mit verbesserter Pufferspeichernutzung während Lese- und Schreiboperationen
DE102016119494A1 (de) Takterzeugungsschaltung, welche eine Entzerrfunktion hat, und integrierte Halbleiterschaltung mit derselben
DE102014102244A1 (de) Verfahren zum Drehen eines Originalbilds unter Verwendung von Selbstlernen sowie Vorrichtungen, die das Verfahren durchführen

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0012020000

Ipc: G06F0013280000

R016 Response to examination communication