-
HINTERGRUND
DER ERFINDUNG
-
Gebiet der Erfindung
-
Die
vorliegende Erfindung betrifft Halbleiterspeichervorrichtungen und
spezieller eine Halbleiterspeichervorrichtung, die intern mit einer
Logikschaltung (Logik) versehen ist, und ein Steuerverfahren von
dieser.
-
Beschreibung
des allgemeinen Stands der Technik
-
53 ist
ein Diagramm, das die Stiftanordnung eines konventionellen synchronen
dynamischen Direktzugriffsspeichers (SDRAM) zeigt, der eine Kapazität von 64
Mbit und eine Busbreite von 16 Bit aufweist.
-
54 ist
eine Tabelle, die Anschlussnamen und Funktionen des SDRAM zeigt.
-
Bezug
nehmend auf die 53 und 54 ist
der konventionelle SDRAM in ein Gehäuse eingeschlossen, das 54
Stifte als Anschlüsse
aufweist. Der konventionelle SDRAM beinhaltet: einen Anschluss CLK,
der einen Haupttakt empfängt;
einen Anschluss CKE, der ein Takt-Freigabe-Signal (clock-enable) empfängt; einen
Anschluss /CS, der ein Chip-Auswahl-Signal (Chip-Select) empfängt; einen
Anschluss /RAS, der ein Zeilenadressenhinweissignal (Row Address
Strobe) empfängt;
einen Anschluss /CAS, der ein Spaltenadressenhinweissignal (Column
Address Strobe) empfängt;
und einen Anschluss /WE, der ein Schreibfreigabesignal (write Enable)
empfängt.
-
Der
konventionelle SDRAM beinhaltet weiterhin: Anschlüsse DQ0
bis DQ15, die ein Dateneingabe/Datenausgabe-Signal empfangen und
ausgeben; einen Anschluss DQM (U/L), der ein Ausgabesperrsignal/Schreibmaskiersignal
(Output Disable/Write Mask) einliest/ausgibt; Anschlüsse A0 bis A11,
die eine Adresse empfangen; Anschlüsse BA0, BA1, die eine Bankadresse
empfangen; einen Anschluss VDD, der mit einem Stromversorgungspotential
versorgt ist; einen Anschluss VDDQ, der mit einem Stromversorgungspotential
für die
Ausgabe versorgt ist; einen Anschluss VSS, der mit Erdpotential
versorgt ist; und einen Anschluss VSSQ, der mit einem Erdpotential
für die
Ausgabe versorgt ist.
-
Wie
in 53 gezeigt ist, sind die Stifte für Dateneingabe/Datenausgabe
und Stromversorgung als Stifte 1 bis 13 und 42 bis 54 angeordnet.
Die Stifte für
Steuersignale und Taktsignale (clock) sind als Stifte 15 bis 19 und 37 bis 39 angeordnet.
Adresseingabe-Stifte sind als Stifte 20 bis 35 angeordnet.
Eine solche Anschlussanordnung hat in gewissem Ausmaß eine Allgemeingültigkeit
und wird gebräuchlicherweise
für eine
Leiterplatte in einem mit einem Speicher versehenen System verwendet.
-
55 ist
ein Diagramm, das eine Struktur eines mit einer Logik versehenen
konventionellen DRAM zeigt.
-
Bezug
nehmend auf 55 weist ein Chip 501 einen
DRAM 504 und eine Logik 508 auf und ist außerdem mit
Anschlüssen
zum Eingeben oder Ausgeben von Steuersignalen /RAS, /CAS,..., /CS,
einem Adresssignal ADD und einem Datensignal DATA zum Zugreifen
auf den DRAM versehen.
-
Der
Chip 501 beinhaltet weiterhin Anschlüsse für eingebende Steuerstifte CTR0,
CTR1, die für eine
Logik spezifisch sind, und ein Anforderungssignal REQ (request),
das bei der Logik Zugriff anfordert, und einen Anschluss zum Ausgeben
eines Strobe-Signals STAB, das von der Logik verwendet wird, um
einem externen Abschnitt den Abschluss eines Prozesses mitzuteilen.
-
Konventionell
wurde ein spezieller Stift zum Steuern der Logik 508 angeordnet.
Folglich wird eine größere Anzahl
an Stiften für
einen Universal-DRAM benötigt,
wie in 53 gezeigt ist, oder ein Kontroller zum
Steuern des DRAM mit einer Logik muss vorgesehen werden, um ein
System auf einer Platte zu bilden. Als Ergebnis ist die Allgemeingültigkeit
für eine Verbindung
zu einem allgemeinen Mikrocomputer beeinträchtigt oder es muss ein spezieller
Befehl für den
Mikrocomputer verwendet werden, um das System zu steuern.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Eine
Aufgabe der vorliegenden Erfindung ist es, eine Halbleiterspeichervorrichtung
bereitzustellen, die mit einer Logik versehen ist, die in der Lage ist,
einen Logikabschnitt durch ein Verfahren zu steuern, das dem ähnlich ist,
das von einem Universal-DRAM verwendet wird.
-
Die
Aufgabe wird gelöst
durch eine Halbleiterspeichervorrichtung gemäß Anspruch 1. Die Aufgabe wird
ebenfalls durch ein Verfahren zum Steuern einer Halbleiterspeichervorrichtung
gemäß Anspruch 5
gelöst.
Weiterbildungen der Erfindung sind in den Unteransprüchen gekennzeichnet.
-
Deshalb
ist ein Hauptvorteil der vorliegenden Erfindung, dass der intern
vorgesehene Logikschaltkreis durch Anlegen eines Signals in einer
Folge des Anlegens von Daten-, Adress- und Steuersignal an den Universalspeicher
gesteuert werden kann und Steuerung ermöglicht wird, ohne existierende
Systeme signifikant ändern
zu müssen.
-
Ein
weiterer Vorteil der vorliegenden Erfindung ist es, dass eine Halbleiterspeichervorrichtung, die
intern mit einer Logik versehen ist, leicht in einem Mikrocomputersystem
gesteuert werden kann.
-
Noch
ein weiterer Vorteil der vorliegenden Erfindung ist es, dass das
Steuern eines intern vorgesehenen Logikschaltkreises durch effektives
Nutzen eines Pfades des Anlegens einer Adresse und von Daten an
einen internen Speicher mit der minimalen Anzahl von zusätzlichen
Steueranschlüssen
durchgeführt
werden kann.
-
Die
vorhergehenden und andere Zwecke, Eigenschaften, Aspekte und Vorteile
der vorliegenden Erfindung werden durch die folgende detaillierte
Beschreibung der vorliegenden Erfindung verdeutlicht, wenn diese
in Verbindung mit den begleitenden Zeichnungen betrachtet wird.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
1 ist
ein Blockdiagramm, das eine Konfiguration einer Halbleiterspeichervorrichtung 1 gemäß einer
ersten Ausführungsform
der vorliegenden Erfindung zeigt.
-
2 ist
ein Diagramm, das eine exemplarische Speicherdarstellung der Halbleiterspeichervorrichtung
mit einer Logik gemäß der ersten
Ausführungsform
zeigt.
-
3 ist
ein Diagramm, das in Verbindung mit der Übertragung eines extern eingegebenen
Signals in einen Logikschaltkreis gezeigt ist.
-
4 ist
ein Wellenformdiagramm, das in Verbindung mit einem generellen Zeitablauf
der Halbleiterspeichervorrichtung der ersten Ausführungsform
gezeigt ist.
-
5 ist
ein Blockdiagramm, das eine Konfiguration eines DRAM 10 mit
einer Logik gemäß einer Modifikation
der ersten Ausführungsform
zeigt.
-
6 ist
ein Diagramm, das eine Speicherdarstellung des DRAM 10 mit
Logik zeigt, der in 5 gezeigt ist.
-
7 ist
ein Blockdiagramm, das eine Konfiguration eines DRAM 30 mit
einer Logik gemäß einer zweiten
Ausführungsform
zeigt.
-
8 ist
ein Diagramm, das eine Speicherdarstellung eines Systems zeigt,
das auf den DRAM mit Logik der zweiten Ausführungsform angewandt wird.
-
9 ist
ein Diagramm, das in Verbindung mit Verschlüsselungssystemen, die von einer
Verschlüsselungsvorgangslogik 74,
wie in 7 gezeigt, unterstützt werden.
-
10 bis 18 sind
ein erstes bis zu einem neunten Diagramm, die jeweils exemplarisch
einem Register zugewiesene Daten zeigen.
-
19 ist
ein Diagramm, das zeigt, dass ein DRAM 92 mit einer Logik
der vorliegenden Erfindung mit einem Mikrocomputer 90 verbunden
ist.
-
20 ist
ein Flussdiagramm, das einen Prozess des Steuerns des DRAM mit Logik
zeigt.
-
21 ist
ein Diagramm, das eine Speicherdarstellung gemäß einer vierten Ausführungsform zeigt.
-
22 ist
ein Diagramm, das eine Konfiguration eines DRAM 11 mit
einer Logik zeigt.
-
23 ist
ein Diagramm, das eine Speicherdarstellung eines Mikrocomputersystems
der Halbleiterspeichervorrichtung von 22 zeigt.
-
24 ist
ein Diagramm, das Betriebswellenformen, gezeigt in Verbindung mit
dem Steuern des DRAM mit Logik von 22, zeigt.
-
25 ist
ein Diagramm, das in Verbindung mit einer Modifikation der Halbleiterspeichervorrichtung
von 22 gezeigt ist.
-
26 ist
ein Diagramm, das Betriebswellenformen, gezeigt in Verbindung mit
dem Betrieb der Modifikation der Halbleiterspeichervorrichtung von 22,
zeigt.
-
27 ist
ein Blockdiagramm, das eine Konfiguration eines ScRAM200 zeigt.
-
28 ist
ein Diagramm, das in Verbindung mit einem Übergang in dem Zustand einer
Speicherdarstellung gemäß einem
Setzen eines Steuerregisters gezeigt ist.
-
29 bis 31 sind
erstes bis drittes Diagramm, die in Verbindung mit einem Mode-Register 208 von 27 gezeigt
sind.
-
32 ist
ein Diagramm, das einen Zustandsübergang
zeigt, der in Verbindung mit Chiffriersteuerungs-Eingang/-Ausgang
des ScRAM steht.
-
33 ist
ein Diagramm, das exemplarisch Betriebswellenformen für den Zugriff
durch das Steuerregister zeigt.
-
34 bis 37 sind
erstes bis viertes Diagramm, die jeweils eine Adressdarstellung
des Steuerregisters zeigen.
-
38 ist
ein Diagramm, das in Verbindung mit einem System gezeigt ist, das
in der Lage ist einen Anschluss zum Anlegen eines Signals CRYP zu steuern.
-
39 und 40 sind
erstes und zweites Diagramm, die in Verbindung mit einem System
gezeigt sind, das nicht in der Lage ist, einen CRYP-Anschluss zu
steuern.
-
41 ist
ein Diagramm, das Betriebswellenformen zeigt, die benutzt werden,
um Setzen zu dem Steuerregister zu erklären.
-
42 bis 44 sind
erstes bis drittes schematisches Diagramm, die in Verbindung mit
einer Grundeinheit in einem Verschlüsselungsprozess gezeigt sind.
-
45 bis 47 sind
erstes bis drittes schematisches Diagramm, die eine Einheit in einem Entschlüsselungsprozess
zeigen.
-
48 und 49 sind
erstes und zweites Diagramm, die in Verbindung mit einem ECB-Modus gezeigt
sind.
-
50 ist
ein Diagramm, das in Verbindung mit einem Vorgang in einem CBC-Modus
gezeigt ist.
-
51 und 52 sind
Diagramme, die in Verbindung mit Verschlüsselung bzw. Entschlüsselung
im CBC-Modus gezeigt sind.
-
53 ist
ein Diagramm, das eine Stiftanordnung eines konventionellen synchronen
dynamischen Direktzugriffsspeichers (SDRAM) zeigt.
-
54 ist
eine Tabelle, die Anschlussnamen und Funktionen des SDRAM zeigt.
-
55 ist
ein Diagramm, das eine Konfiguration eines konventionellen DRAM
mit Logik zeigt.
-
BESCHREIBUNG
DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
-
Jetzt
werden die Ausführungsformen
der vorliegenden Erfindung im Detail mit Bezug auf die Zeichnungen
beschrieben. Es sei bemerkt, dass dieselben Bezugszeichen dieselben
oder entsprechende Abschnitte in den gesamten Zeichnungen kennzeichnen.
-
Erste Ausführungsform
-
1 ist
ein Blockdiagramm, das eine Konfiguration einer Halbleiterspeichervorrichtung 1 gemäß einer
ersten Ausführungsform
der vorliegenden Erfindung zeigt.
-
Bezug
nehmend auf 1, beinhaltet die Halbleiterspeichervorrichtung 1:
einen Anschluss zum Empfangen von Steuersignalen wie z.B. /RAS, /CAS,...,
/CS, /WE; einen Anschluss zum Empfangen eines Adresssignals ADD;
einen Anschluss zum Empfangen eines Datensignals DATA; einen Schnittstellenabschnitt 2,
der entsprechend den Steuersignalen /RAS, /CAS,..., /CS, /WE, Adressensignal ADD.
und Datensignal DATA an einen internen Abschnitt ein Steuersignal
ausgibt; einen DRAM, der zum Betrieb eine Ausgabe von dem Schnittstellenabschnitt 2 empfängt; ein
Register 6, das von dem Schnittstellenabschnitt 2 angelegte
Daten oder einen Befehl hält;
und einen Logikschaltkreis 8, der einen Vorgang, wie z.B.
Signalverarbeitung entsprechend den Ausgaben von dem Register 6 und
dem Schnittstellenabschnitt 2, durchführt.
-
Die
Anschlüsse
der Halbleitervorrichtung 1 sind nur solche, die von einem
Universal-DRAM verwendet werden. Folglich kann dasselbe Gehäuse wie das
für einen
Chip des Universal-DRAM verwendet werden. Zum Beispiel wird ein
Gehäuse
mit einer Stiftanordnung, wie in 53 gezeigt,
verwendet.
-
Wenn
die Halbleiterspeichervorrichtung 1 der vorliegenden Erfindung
mit einer existierenden Anwendung verwendet wird, be steht dementsprechend
keine Notwendigkeit, eine Platte (Board) neu zugestalten oder einen
speziellen Steuer-LSI (Large Scale Integrated circuit) zu entwickeln,
sondern es kann auch nur der existierende Universal-DRAM ersetzt
werden. Der bloße
Austausch von einer Software fügt
nämlich
eine neue Funktion hinzu, da es stiftkompatibel mit dem Universal-DRAM
ist. Beispiele für
neue Funktionen beinhalten einen Schaltkreis zur Hochgeschwindigkeits-Bildverarbeitung
oder einen Logikschaltkreis zur Durchführung eines Prozesses wie z.B.
Verschlüsselung,
was nicht schnell von einem Mikrocomputer durchgeführt werden
kann. Steuersignale können
durch Verwenden von einigen unbenutzten Anschlüssen eingegeben werden, wie von
z.B. NC (Non Connection)-Stiften eines Gehäuses das den Universal-DRAM
einschließt,
z.B. Stifte 36 und 40 in 53.
-
Nun
wird ein Steuerverfahren im Detail beschrieben. Ein sogenanntes
speicherkonformes I/O-Verfahren wird angewandt, um den Logikschaltkreis
zu steuern.
-
2 ist
ein Diagramm, das eine exemplarische Speicherdarstellung der Halbleiterspeichervorrichtung
der ersten Ausführungsform
zeigt, die intern mit einer Logik versehen ist.
-
Bezug
nehmend auf 2 sei angenommen, dass eine
Kapazität
des DRAM auf dem Chip 64 Mbit mit einer Busbreite von 16 Bit ist.
Der DRAM hat X-Adressen X0 bis X13 und Y-Adressen Y0 bis Y7. Folglich
sind die Speicheradressen, die 8 Mbyte steuert 0h bis 3FFFFFh.
-
Der
Universal-DRAM kann Daten schreiben in/lesen aus einem beliebigen
Abschnitt des Adressraumes. Der Raum, der Schreiben und Lesen von Daten
erlaubt, wird als ein DRAM-Raum bezeichnet. In der vorliegenden
Erfindung ist ein spezifischer Bereich als Logiksteuerabschnitt
für den
Logikschaltkreis bestimmt. Zum Beispiel ist der Raum, der den Adressen
0h bis 1Fh entspricht als Logiksteuerabschnitt zugewiesen. Die Kapazität des Logiksteuerabschnitts
ist zum Beispiel 512Byte aus 256 × 2 Byte. Ein Befehl oder Modus
zum Steuern der Logik kann entsprechend in den Adressraum geschriebener
Daten gewählt
werden.
-
Obwohl
der Bereich der am wenigsten signifikanten Seite der Adressen in 2 zugewiesen
ist, der Logiksteuerbereich zu der signifikantesten Seite (3FFFFFh
bis 3FFFE0h) zugewiesen werden. Wenn ein SDRAM anstelle des DRAM
verwendet wird, kann der Bereich für die Adresse gewählt werden, wenn
ein Modusregister gesetzt wird. Wenn der Logiksteuerbereich nicht
zugewiesen wird, wenn das Modusregister gesetzt wird, kann es als
Universal-SDRAM mit 64Mbit verwendet werden.
-
3 ist
ein Diagramm, das in Verbindung mit der Übertragung eines extern in
den Logikschaltkreis eingegebenen Signals gezeigt ist.
-
Bezug
nehmend auf 3 beinhaltet der Schnittstellenabschnitt 2:
einen Puffer 3, der Steuersignale /RAS, /CAS,..., /CS,
/WE, ein Adresssignal ADD. und ein Datensignal DATA empfängt; und
einen Dekodierschaltkreis 5, der eine Ausgabe von Puffer 3 empfängt und
dekodiert. Ein Register 6 hält Informationen wie z.B. einen
Modus oder Befehl entsprechend einer Ausgabe von dem Dekodierschaltkreis 5.
Ein Logikschaltkreis 8 wird basierend auf den gehaltenen
Informationen gesteuert.
-
Der
Dekodierschaltkreis 5 dekodiert das Adresssignal ADD und
das Datensignal DATA, aber speichert in einigen Fällen direkt
Daten, die in den Logiksteuerbereich geschrieben sind, bestimmt durch
das Adresssignal in Register 6. Wenn das Register aus einem
SRAM (Static Random Access Memory) oder ähnlichem besteht, können Daten
in dem Bereich des SRAM gespeichert werden, der durch das Adresssignal
ADD bestimmt ist. Ein Teil des Bereiches des DRAM kann als Halteschaltkreis
anstelle von Re gister 6 verwendet werden, in welchem Bereich
Daten zum Steuern des Logikschaltkreises gehalten werden würden.
-
4 ist
ein Diagramm von Wellenformen, das in Verbindung mit einem generellen
Zeitablauf der Halbleiterspeichervorrichtung der ersten Ausführungsform
gezeigt ist. 4 betrifft einen Vorgang sukzessiven
Schreibens oder Lesens von acht Daten in dem SDRAM, das in der Lage
ist, Daten von einem Eingabe-/Ausgabe-Anschluss einzugeben und auszugeben.
Eine Bit-Zahl von Daten, die sukzessiv gelesen werden, wird als
Datenblocklänge
bezeichnet und in dem SDRAM kann die Bit-Zahl generell durch das
Modusregister geändert
werden.
-
Bezug
nehmend auf 4 sind zu einer Zeit t1 externe
Steuersignale (Reihenadressenhinweis-Signal /RAS, Spaltenadressenhinweis-Signal /CAS,
Adresssignal ADD und ähnliche)
in einer ansteigenden Flanke eines externen Taktsignals ext.CLK
(z.B. einem Systemtakt) enthalten. Da das Reihenadressenhinweis-Signal /RAS in einem
aktiven Zustand auf einem L-Niveau ist und das, Spaltenadressenhinweis-Signal
/CAS und das Schreibfreigabesignal /WE auf einem H-Niveau sind,
bedeutet dies, dass ein Zeile-aktiv-Befehl ACT (row active) eingegeben
ist. Das Adresssignal ADD ist zu dieser Zeit als eine Zeilenadresse
(row address) Xa enthalten.
-
Zu
einem Zeitpunkt t2 erreicht das Spaltenadressenhinweis-Signal /CAS das L-Niveau
im aktiven Zustand und ist in Synchronisation mit dem Anstieg des
Taktsignals ext.CLK enthalten. Eine Kombination von Spaltenadressenhinweis-Signal
/CAS auf dem L-Niveau und Reihenadressenhinweis-Signal /RAS und
Schreibfreigabesignal /WE beide auf dem H-Niveau entspricht einem
Lesebefehl READ. Das Adresssignal ADD ist zu diesem Zeitpunkt als
eine Spaltenadresse (column address) Y enthalten.
-
Wenn
der Bereich, der durch die Adresse bezeichnet ist, der DRAM-Raum
in 2 ist, wird in DRAM 4 aus 1 entsprechend
diesen enthaltenen Zeilenadressen Xa und Spaltenadressen Yb ein
Zeilen- und Spalten-Auswahlvorgang durchgeführt Wenn sich Zeilenadresse
Xa und Spaltenadresse Yb in dem Logiksteuerungsbereich von 2 befinden, wird
ein vorgeschriebener Bereich von Register 6 ausgewählt anstatt
der Zeile und Spalte von DRAM 4 von 1. Zum Beispiel
ist in dem vorgeschriebenen Bereich ein Merker (Flag) gespeichert,
der einen Vorgangszustand von Logik 8 oder ein Vorgangsergebnis
von Logik 8 anzeigt.
-
D/Q
zeigt Datensignal- DATA -Eingabe/Ausgabe durch den Daten-Eingabe/Ausgabe-Anschluss an.
Die erste Dateneinheit q0 wird zu einer Zeit t3 ausgegeben, wenn
eine vorgeschriebene Zeitperiode (6 Taktzyklen in 4)
nach dem Absinken des Reihenadressenhinweis-Signals /RAS auf das
L-Niveau verstrichen ist und Daten q1 bis q7 werden sukzessive der
Dateneinheit q0 folgend ausgegeben. Die Daten werden als Antwort
auf das Absinken des Taktsignals ext.CLK ausgegeben.
-
Die
Ausgabedaten sind Daten, die in DRAM 4 oder einem Inhalt
des Registers 6 gehalten werden. Der Inhalt von Register 6 ist
zum Beispiel ein Merker, der den Vorgangszustand der Logik 8 oder
ein Vorgangsergebnis von Logik 8 anzeigt.
-
Nach
einer Zeit t4 wird ein Schreibvorgang durchgeführt. Bei t4 wird Zeile-aktiv-Befehl
ACT eingegeben und die Zeilenadresse Xc ist enthalten. Zu einer
Zeit t5, wenn eine Kombination von Spaltenadressenhinweis-Signal
/CAS und Schreibfreigabesignal /WE beide auf dem L-Niveau in dem
aktiven Zustand und Reihenadressenhinweis-Signal /RAS auf dem H-Niveau,
d.h. ein Schreibbefehl WRITE, angelegt ist, wird eine Spaltenadresse
Yd an der ansteigenden Flanke des Taktsignals ext.CLK angenommen und
eine Dateneinheit d0, die zu dieser Zeit angelegt ist, wird als
anfängliche
Schreibdateneinheit angenommen.
-
Falls
der Bereich, der durch die Adresse bezeichnet ist, der DRAM-Raum
von 2 ist, wird der Zeilen- und Spalten-Auswahlvorgang in
dem SDRAM in Antwort auf das Absinken des Reihenadressenhinweis-Signal
/RAS und des Spaltenadressenhinweis-Signal /CAS durchgeführt. Anschließend werden
Eingabedaten d1 bis d7 sequentiell in Synchronisation mit dem Taktsignal
ext.CLK eingefügt
und in die entsprechende Speicherzelle geschrieben.
-
Wenn
der Bereich, der durch Reihenadresse Xc und die Spaltenadresse Yd
bestimmt ist, der Logiksteuerbereich von 2 ist, wird
ein vorgeschriebener Bereich von Register 6 anstatt der
Zeile und der Spalte von DRAM 4 von 1 ausgewählt. In diesem
Fall sind die Eingabedaten d1 bis d7 Daten, die in den vorgeschriebenen
Bereich von Register 6 geschrieben werden sollen. Zum Beispiel
Bilddaten, die von Logik 8 verarbeitet wurden, Prozessdaten
wie Chiffrierdaten und Befehlsdaten, die einen Vorgang wie z.B.
Zurücksetzen
oder Starten eines Prozesses bestimmen, werden angelegt.
-
Modifikation
der ersten Ausführungsform
-
5 ist
ein Blockdiagramm, das eine Konfiguration eines DRAM 10,
das intern mit einer Logik versehen ist, entsprechend einer Modifikation
der ersten Ausführungsform
zeigt.
-
Bezug
nehmend auf 5 beinhaltet das DRAM 10 mit
Logik: einen Schnittstellenabschnitt 12, der die Steuersignale
/RAS, /CAS,..., /CS, ein Adresssignal ADD und Datensignal DATA empfängt; ein
DRAM 4, das entsprechend einer Ausgabe des Schnittstellenabschnittes 12 arbeitet;
Register 14, 16 die Daten zum Steuern entsprechend
einer Ausgabe vom Schnittstellenabschnitt 12 halten; und
Logikschaltkreisen 18 und 20, die entsprechend den
Daten zum Steuern, die in den Registern 14 bzw. 16 gehalten
sind, arbeiten.
-
6 ist
ein Diagramm, das eine Speicherdarstellung des DRAM 10 mit
Logik, das in 5 gezeigt ist, zeigt.
-
Bezug
nehmend auf 6 entsprechen die Adressen 0h
bis 1Fh des Adressraumes 0h bis 3FFFFFh von 64Mbit einem Logiksteuerbereich,
in den ein Steuerbefehl oder Daten zu einem Logikschaltkreis 18 geschrieben
sind. Die Adressen 20h bis 2Fh entsprechen einem
Logiksteuerbereich, in den ein Befehl oder Daten zu einem Logikschaltkreis 20 geschrieben
sind.
-
Folglich
ist ein speicherkonformer I/O-Raum in eine Vielzahl von Abschnitten
zur Kontrolle einer Vielzahl von Logikschaltkreisen unterteilt.
-
Zweite Ausführungsform
-
7 ist
ein Blockdiagramm, das eine Konfiguration eines DRAM 30,
das intern mit einer Logik versehen ist, entsprechend der zweiten
Ausführungsform
zeigt.
-
Bezug
nehmend auf 7 beinhaltet das DRAM 30 mit
Logik einen SDRAM-Abschnitt 32 und einen Logikabschnitt 34.
-
Der
SDRAM-Abschnitt 32 beinhaltet: einen Schnittstellenabschnitt 36,
der ein externes Signal empfängt
und entsprechend ein Steuersignal ausgibt; und einen DRAM-Kern 38 der
Daten entsprechend einer Ausgabe des Schnittstellenabschnitts 36 hält. Der
Schnittstellenabschnitt 36 beinhaltet: einen Steuersignaleingabeschaltkreis 40,
der Steuersignale /CS, /RAS, /CAS, /WE und DQM empfängt; einen Zeitpuffer 44,
der ein Taktsignal CLK und ein Clock-Enable-Signal CKE zum Erzeugen
eines internen Taktes empfängt;
einen Adresspuffer 46, der Adresssignale A0 bis An in Synchronisation
mit einer Ausgabe vom Zeitpuffer 44 einbaut; und einen
Eingabe/Ausgabe-Schaltkreis 52 zum Eingeben/Ausgeben von
Datensignalen DQ0 bis DQn in Synchronisation mit dem internen Takt.
-
Der
Schnittstellenabschnitt 36 beinhaltet weiterhin: einen
Steuerschaltkreis 42, der Befehlssignale ACT, PRE und ähnliche,
entsprechend einer Ausgabe von dem Steuersignaleingabeschaltkreis 40 ausgibt;
und einen Multiplexer 48, der eine Ausgabe von dem Adresspuffer 46 als
X- und Y-Adressen entsprechend einer Ausgabe von dem Steuerschaltkreis 42 multiplext.
-
Multiplexer 48 beinhaltet
ein Modusregister 50, das entsprechend einem Signalbit
von einem der Adresssignale A0 bis Am unter einem Mode-Register-Set
(MRS)-Befehl gesetzt werden kann.
-
Der
DRAM-Kern 38 beinhaltet: ein Speicherzellenfeld 54,
das in einer Matrix angeordnete Speicherzellen aufweist; einen Zeilendecoder 56 zum Auswählen einer
Zeile des Speicherzellenfeldes 54 entsprechend einer Zeilenadresse,
die vom Multiplexer 48 angelegt wird; einen Zeilendecoder 56 zum Auswählen einer
Spalte des Speicherzellenfeldes 54 entsprechend der Spaltenadresse,
die vom Multiplexer 48 angelegt wird; und ein Leseverstärkertreiber
+ Schreibtreiber 60, der von/in der/die ausgewählte Speicherzelle
liest/schreibt.
-
Der
Logikbereich 34 beinhaltet: eine Chiffriervorgangslogik 74;
und einen Registerabschnitt 72, der Modusinformation hält, die
zum Steuern der Chiffriervorgangslogik 74 verwendet wird,
Daten die in die Chiffriervorgangslogik eingegeben werden sollen,
und ein Vorgangsergebnis der Chiffriervorgangslogik entsprechend
einer Ausgabe vom Schnittstellenabschnitt 36.
-
Der
Registerabschnitt 72 beinhaltet: einen Selektor 76,
der aktiviert wird, wenn ein von den Adresssignalen A0 bis Am bezeichneter
Bereich einen vorgeschriebenen Wert zum Einbauen eines durch den
Eingabe/Ausgabe-Schaltkreis 52 extern eingegebenen Datensignals
aufweist; ein Steuerregister 78, Modusregister 80,
und Datenregister 84 zum Schreiben extern angelegter Daten
durch den Selektor 76; und ein Statusregister 82 und
Datenregister 86, das von der Chiffriervorgangslogik ausgegebene
Daten hält
und die gehaltenen Daten als Datensignale DQ0 bis DQn durch den
Selektor 76 und den Eingabe/Ausgabe-Schaltkreis 52 liest.
-
8 ist
ein Diagramm, das eine Speicherdarstellung eines Systems zeigt,
das auf den DRAM mit Logik gemäß der zweiten
Ausführungsform
angewandt wird.
-
Bezug
nehmend auf 8 entspricht ein externer RAM-Bereich
in der Systemspeicherdarstellung dem DRAM mit Logik. Der DRAM mit
Logik ist in einen Logiksteuerbereich und einen DRAM-Bereich unterteilt
und steuert eine Chiffrierlogik durch Zugreifen auf den Logiksteuerbereich.
Der Bereich in der Systemspeicherdarstellung, der dem Logiksteuerbereich
entspricht, ist ein für
das System reservierter Bereich. Wenn ein Cache von einer CPU und
ein MMU (Memory Management Unit/ Speicherverwaltungseinheit) verwendet
werden, wäre
es ein Bereich, in dem das Verwenden des Cache-Speichers verhindert
ist (im weiteren Cacheverhinderungsbereich bezeichnet). Um zu verhindern,
dass ein Betriebssystem in diesen Bereich geladen wird, wird die Steuerung
vorhergehend durch eine Firmware auf dem System durchgeführt. Zusätzlich wird
das Steuern so durchgeführt,
dass ein allgemeines Anwendungsprogramm diesen Bereich nicht verwenden kann.
-
Der
Logiksteuerbereich entspricht zum Beispiel einer Zeilenad0OH bis
FFh des DRAM.
-
Das
Steuerregister 78 von 7 entspricht X=3FFFh,
Y=00h. Das Modusregister 80 entspricht X=3FFFh, Y=01h.
Das Statusregister 82 entspricht X=3FFFh, Y=02h. Das erste
Datenregister 84 entspricht X=3FFFh, Y=03h. Das zweite
Datenregister 86 entspricht X=3FFFh, Y=04h.
-
In
diesem Beispiel ist eine Seite (Y=00h bis FFh) von X=3FFFh dem Steuerbefehlsbereich
zugeordnet. Wenn beim Eingeben eines ACT-Befehls in die Konfiguration
von 7 X=3FFFh eingegeben wird, wird dementsprechend
der Multiplexer gesteuert, um Zugriff zu dem Registerabschnitt 72 zu
ermöglichen.
Desweiteren wird ein Freigabesignal (enable) des Registers oder
ein Takt (clock) zum Steuern des Registers aktiviert. Auf diese
Art kann der Stromverbrauch durch den Registerabschnitt 72 außer während der
Eingabe des Steuerbefehls reduziert werden. Zusätzlich ist Zugriff auf das
Register nicht verzögert,
da der Registerabschnitt 72 bereits aktiviert war, selbst
wenn ein Lese- oder Schreibbefehl auf die Seite von X=3FFFh eingegeben
wird.
-
Die
Chiffriervorgangslogik 74 von 7 ist intern
mit einem Beschleuniger vom Hauptverschlüsselungssystem versehen, das
verwendet wird um die Sicherheit in einem Netzwerk zu sichern.
-
Die
Chiffriervorgangslogik 74 unterstützt eine Funktion eines Public-Key-Verschlüsselungssystems,
das zur elektronischen Autorisierung verwendet wird, und ein Secret-Key-Verschlüsselungssystem,
das für
Datenkommunikation nach der Autorisierung verwendet wird. Die Datenverarbeitung
wird durch einen Logikschaltkreis durchgeführt, der zum Verschlüsseln ausgelegt
ist, so dass die Datenverarbeitung mit einer höheren Geschwindigkeit bei geringerem
Stromverbrauch durchgeführt
wird als es bei einer Universal-CPU der Fall ist. Als solches ist
es für batteriebetriebene
Systeme oder ähnliches
geeignet.
-
9 ist
ein Diagramm, das Verschlüsselungssysteme
zeigt, die durch die Chiffriervorgangslogik 74 von 7 unterstützt sind.
-
Bezug
nehmend auf 9 unterstützt die Chiffriervorgangslogik 74 RSA
als Public-Key-Verschlüsselungssystem
und DES und Triple-DES als Secret-Key-Verschlüsselungssystem. In dem Secret-Key-Verschlüsselungssystem
wird weiterhin jeder der Hauptblockverschlüsselungsmodi ECB (Electric Code
Book), CBC (Cipher Block Chaining), OCFB (Output Feed Back), CFB
(Cipher Feed Back) unterstützt.
Die Chiffriervorgangslogik 74 führt einen kritischen Prozess
zum Verschlüsseln
durch, um die Anpassungsfähigkeit
der Anwendung zu erhöhen.
Die anderen Prozesse werden durch eine Software auf der Seite des
mikrocomputersteuernden DRAM 30 mit Logik durchgeführt. Die
bemerkenswerteste Eigenschaft ist, dass Chiffriersteuerung in einer
stiftkompatiblen Art mit einem Universal-SDRAM implementiert werden
kann.
-
Nun
wird die Zuweisung zu jedem Register in dem Logiksteuerbereich beschrieben,
wie in 8 gezeigt ist.
-
Die 10 bis 18 sind
Diagramme, die in Verbindung mit Daten gezeigt sind, die dem Register
zugewiesenen sind.
-
Bezug
nehmend auf die 7 und 10 entspricht
das Steuerregister 78 16 Bits von D0 bis D15, die bei Y=0h
gespeichert sind. Eine Verschlüsselungsfunktion
wird durch Schreiben von 1 in Bit D0 zurückgesetzt. Es wird nämlich ein
Prozess des Anwendens eines Reset-Pulses auf die Chiffriervorgangslogik 74 entsprechend
einer vorgeschriebenen Zeitdauer durchgeführt. Wenn das Bit D1 1 ist,
bedeutet dies, dass die Chiffriervorgangslogik 74 in einem
Verschlüsselungsprozess
ist. Wenn extern auf die Chiffriervorgangslogik zugegriffen wird,
muss folglich bestätigt
werden, dass vor dem Zugreifen eine Flag, die auf Bit D1 angewandt
ist, 0 ist.
-
Das
Steuerregister 78 wird sowohl für das Public- als auch für das Secret-Key-Verschlüsselungssystem
verwendet.
-
Als
nächstes
werden einige exemplarische Register beschrieben, die zum Steuern
in dem Secret-Key-Verschlüsselungssystem
verwendet werden.
-
Bezug
nehmend auf die 7 und 11 wird
einer Adresse Y=1h ein Modusregister 80 zugewiesen. Die
Bits D1 und D0 von 16 Bits werden zur Auswahl des Chiffriersystems
verwendet. Wenn diese beiden Bits „01" sind, ist das Verschlüsselungsverfahren
DES. Wenn sie „10" sind, ist das Verschlüsselungsverfahren
Triple-DES. Wenn sie „00" sind, wird die Verschlüsselungsmethode
gehalten.
-
Die
Bits D5 bis D2 werden zur Auswahl eines Blockverschlüsselungsmodus
verwendet. Wenn die Bits „0001" sind, ist ECB als
der Blockverschlüsselungsmodus
bestimmt. Wenn sie „0010" sind, ist CBC bestimmt.
Wenn sie „0100" sind, ist OFB bestimmt. Wenn
sie „1000" sind, ist CFB64
bestimmt. Wenn sie „0000" sind, wird der Blockverschlüsselungsmodus gehalten.
-
Die
Bits D8 bis D6 werden zur Auswahl eines Datenverarbeitungsmodus
verwendet, der eine Einheitsanzahl während eines Verschlüsselungsprozesses
bestimmt. Wenn diese Bits „001" sind, ist ein normaler
Modus bestimmt, bei dem der Prozess mit einer Einheit von 8 Byte
durchgeführt
wird. Wenn sie „010" sind, ist ein Blockmodus
bestimmt, bei dem der Prozess von einer Blockeinheit durchgeführt wird,
die zur Bestimmung einer Blocklänge
verwendet wird. Wenn sie „100" sind, ist ein Puffermodus
bestimmt, bei dem Information, die in dem Puffer gespeichert ist,
kollektiv als eine Einheit verarbeitet wird. Wenn sie „000" sind, wird der Datenverarbeitungsmodus gehalten.
-
Folglich
können
16 Bits von 1 Adresse und 2 Byte Daten bei Y=1h einer Vielzahl von
Modi zugewiesen werden. Selbst wenn eine Vielzahl von Modi bestimmt
werden soll, kann dementsprechend durch effektives Ausnutzen von
Kombinationen aus 216 die Bestimmung des
Betriebsmodus durch einen einzelnen Zugriff durchgeführt werden.
-
Bezug
nehmend auf die 7 und 12 entspricht
das Statusregister 82 einer Adresse Y=02h. Die Bits D1
und D0 des Statusregisters repräsentieren
als „01", „10" bzw. „00" Verschlüsselung, Entschlüsselung
und Halten. Die Bits D5 und D4 repräsentieren als „01", „10" bzw. „00" Starten der Eingabe
von Klartext oder Kryptogramm, Beenden der Eingabe, und Halten.
-
Die
Bits D9 bis D6 repräsentieren
eine Textlänge
in einem Block von OFB, CFB.
-
Bezug
nehmend auf die 7 und 13 entsprechen
die Y-Adressen 3h bis 6h einem Bereich, in dem ein Schlüssel von
DES, der 64 Bits hat, oder ähnliches
gespeichert ist.
-
Bezug
nehmend auf die 7 und 14 entspricht
das erste Datenregister 86 einem Bereich, in dem ein Schlüssel, der
für Triple-DES
verwendet wird, gespeichert ist. Er entspricht dem Bereich bei den
Adressen Y=7h bis Ah.
-
Obwohl
jedes der Datenregister 84 und 86 wie ein Einzelregister
aussieht, ist es in Wirklichkeit aus einer Vielzahl von Registern
gebildet, wobei es sich um eine Art von First-In-First-Out (FIFO)-Speicher handelt.
-
Beispiele
für Register
beinhalten ein Register zum Setzen eines Anfangsvektors, wie in 15 gezeigt
ist obwohl es nicht in 7 gezeigt ist, ein Register
zum Setzen einer Blocklänge,
wie in 16 gezeigt ist, ein Register
zum Bestimmen der Anzahl von Puffern, wie in 17 gezeigt
ist, ein Register zum Anzeigen von Puffer-ID, wie in 18 gezeigt ist,
und ähnliche.
-
Es
sei bemerkt, dass für
ein Public-Key-Verfahren, wie z.B. einen RSA-Verschlüsselungsprozess,
der Bereich von Y=12h bis 1Fh reserviert ist. Im Fall des Public-Key-Verfahrens
wird ein Ergebnis eines Verschlüsselungsprozesses
in dem intern vorgesehenen Register gehalten, so dass Zugriff auf
den DRAM-Bereich
selbst während
der Verschlüsselung erlaubt
ist.
-
Wenn
die Zeilenadresse X, die durch den ACT-Befehl mit Bezug auf den
SDRAM gelesen wurde, 3FFFh ist, detektiert der Multiplexer 48 das
und aktiviert den Selektor 76. Dann wird das Register,
auf das zugegriffen werden soll, ausgewählt, wenn die Spaltenadresse
Y durch den Lesebefehl oder den Schreibbefehl eingegeben wird. Dann
werden extern eingegebene Daten durch den Eingabe/Ausgabe-Schaltkreis 52 in
das Register geschrieben.
-
Bei
der zweiten Ausführungsform
ist die als Logiksteuerbereich bestimmte Adressregion 3FFF00h bis
3FFFFFh. Das DRAM mit Logik der vorliegenden Erfindung kann jedoch
in vielerlei Mikrocomputersystemen installiert werden, wenn die Adressen,
die zugewiesen werden sollen, in dem Multiplexer entsprechend dem
Inhalt von Register 50 von 7, das durch
eine Mode-Register-Set-Anweisung
gesetzt werden kann, geändert
werden können.
-
Wenn
die Adressen nicht durch die Mode-Register-Set-Anweisung gesetzt
werden, kann der DRAM mit Logik der vorliegenden Erfindung als allgemeiner
64Mbit-SDRAM verwendet werden. Zum Verwenden als allgemeinen SDRAM
kann ein Bit zum Bestimmen, ob die interne Logik verwendet werden
soll oder nicht, in dem Modusregister hinzugefügt werden.
-
Dritte Ausführungsform
-
19 ist
ein Diagramm, das zeigt, dass ein DRAM 92 mit Logik der
vorliegenden Erfindung mit einem Mikrocomputer 90 verbunden
ist.
-
Der
Mikrocomputer 90 beinhaltet einen CPU-Kern 94,
einen Cache-Speicher 96, einen Speicher-Kontroller 98 und
einen Extern-Bus-Schnittstellenschaltkreis 100, die miteinander über einen
internen Bus 102 verbunden sind. Der Extern-Bus-Schnittstellenschaltkreis 100 gibt
ein Steuersignal, ein Adresssignal und Daten für den DRAM mit Logik entsprechend
einer Anweisung vom CPU-Kern 94 aus. Der Extern-Bus-Schnittstellenschaltkreis 100 und
der DRAM mit Logik 92 sind folglich durch einen Steuersignalbus
zum Übertragen von
Steuersignalen /RAS, /CAS,..., /CS und ähnlichen, einen Adressbus zum Übertragen
des Adresssignals ADD. und einen Datenbus zum Übertragen von Daten DATA verbunden.
-
Um
den DRAM 92 mit Logik in einem solchen System zu steuern,
muss auf einige Eigenschaften einer Software, die auf dem Mikrocomputer 90 läuft, Obacht
gegeben werden.
-
20 ist
ein Flussdiagramm, das einen Steuerprozess des DRAM mit Logik zeigt.
-
Bezug
nehmend auf 20 wird erst in einem Schritt
S1 eine Adresse für
einen Logiksteuerbereich einem reservierten Bereich zugewiesen.
Es wird nämlich
verhindert, dass ein Programm einem Adressraum zum Steuern eines
Befehls mit Bezug auf einen Logikschaltkreis zugewiesen wird. Zu
diesem Zweck kann z.B. der Logiksteuerbereich als der reservierte
Bereich unter Verwendung einer Funktion eines OS (Operation System)
bestimmt werden.
-
Es
muss beim Start des OS auch Obacht gegeben werden, um Zuweisung
eines „kernel
per se", was ein
Kern des OS zum Durchführen
von grundlegender Steuerung des Systems, wie z.B. Speichermanagement,
Unterbrechungsmanagement und Kommunikation zwischen Prozessen ist,
an einen Logiksteuerbereich zu verhindern. Dementsprechend wird
der reservierte Bereich an der Sei te des OS bestimmt, wobei Obacht
gegeben wird, um Zuweisung des „kernel per se" auf den Logiksteuerbereich
zu verhindern.
-
In
einem Schritt S2 wird dann der Logiksteuerbereich als ein Cache-Verhinderungsbereich
in einem System mit einem Daten-Cache
bestimmt.
-
Selbst
wenn ein vorgeschriebener Adressraum bestimmt ist und Daten entsprechend
einem Befehl zu dem internen Bus 102 mit Bezug auf den DRAM 92 von
dem CPU-Kern 94 in 19 übertragen
werden, kann das Arbeiten eines Cache-Speichers 96 nämlich verursachen,
dass Daten, die zu diesem Befehl gehören, in den Cache-Speicher 96 geschrieben
werden und nicht zu dem DRAM 92 mit Logik übertragen
werden. In diesem Fall wird der Logikschaltkreis von DRAM 92 daran
gehindert, seinen Vorgang entsprechend dem Befehl durchzuführen. Folglich
muss eine Einstellung vorgenommen werden, um Einkassieren des Logiksteuerbereichs
zu verhindern. In den meisten Mikrocomputern Steuern zum Bestimmen
eines Teiles des Adressraums als ein uncachebarer Bereich.
-
Wenn
eine Speichermanagementeinheitsfunktion vorgesehen ist, wird eine
Einstellung vorgenommen, um das Verwenden eines virtuellen Adressraumes
in dem Logiksteuerbereich zu verhindern.
-
Folglich
wird in einem System mit einem Cache-Speicher bei dem anfänglichen
Einstellen des Systems eingestellt, dass das Verwenden des Cache-Speichers
für den
Logiksteuerbereich des DRAM verhindert ist und dass Zugriff darauf
immer zugesichert ist.
-
In
einem Schritt S3 erlaubt es dann normales Schreiben zu dem zugewiesenen
Bereich, einen Befehl zur Logiksteuerung einzugeben. In einem Schritt S4
ermöglicht
normales Lesen, das Überprüfen eines Vorgangszustands
der Logik oder Lesen des Vorgangsergebnisses. Wenn der Prozess in
einem Schritt S5 noch nicht beendet ist, werden desweiteren die
Schritte S3 und S4 wiederholt. Spezieller kann, wie in Verbindung
mit 10 ausgesagt wird, durch überprüfen einer Flag, die in Bit
D1 an der Adresse Y=0h geschrieben wurde, der Prozesszustand bestimmt
werden. Durch Überprüfen dieser Flag
kann der Mikrocomputer die Beendigung des Prozesses bestätigen, um
zu dem nächsten
Schritt von z.B. Zugriff auf das Vorgangsergebnis zu springen.
-
Dementsprechend
ermöglicht
die vorliegende Erfindung das Überprüfen des
Flag-Zustandes durch übliches
normales Lesen mit Bezug auf den SDRAM, während die Beendigung eines
Prozesses dem Empfänger
konventionell über
dazu bestimmte Stifte mitgeteilt wird.
-
Vierte Ausführungsform
-
In
der ersten bis dritten Ausführungsform
ist ein Teil des Raums des auf dem Chip installierten DRAM-Speichers
als ein Raum zum Steuern eines Befehls bestimmt. Folglich kann der
zugewiesene Abschnitt nicht als ein Hauptspeicher des Mikrocomputersystems
verwendet werden.
-
In
der vierten Ausführungsform
ist ein Geisterraum zum Steuern bestimmt.
-
21 ist
ein Diagramm, das eine Speicherdarstellung der vierten Ausführungsform
zeigt.
-
Bezug
nehmend auf 21 sind, vorrausgesetzt dass
ein verwendetes DRAM ein SDRAM mit einer Kapazität von 64Mbit und einer Busbreite
von 16 Bit ist, die X-Adressen X0 bis X13 und die Y-Adressen Y0
bis Y7. Es wird ein weiterer X-Adressen-Anschluss hinzugefügt, wobei ein Bereich von X14="0" ein realer Speicherraum ist und ein
Bereich von X14="1" ein Geisterraum
ist. Ein Teil dieses Dummy-Geisterraumes ohne jeglichen Speicher
ist als Logiksteuerbereich bestimmt. Einige Maßnahmen werden für diesen
Raum unternommen, um direkten Zugriff wie in der dritten Ausführungsform
beschrieben zuzusichern.
-
Ein
zusätzlicher
Anschluss für
X14 wird verwendet, aber es kann ein unbenutzter Anschluss des Gehäuses verwendet
werden, wenn einer vorhanden ist. Zum Beispiel können NC-Anschlüsse wie
Stifte 40 und 36 von 53 verwendet
werden. Obwohl in 21 die Adresse X14 hinzugefügt ist,
kann auch 1 Bit Y-Adresse
hinzugefügt
werden. Es kann nämlich der
Bereich von Y8=0 als DRAM-Raum und der Bereich von Y8=1 als Geisterraum
verwendet werden. In dem DRAM werden X- und Y-Adressen generell gemultiplext
und die X-Adresse weist eine größere Anzahl
an Bits auf. Folglich ist kein zusätzlicher Anschluss notwendig,
wenn die Y-Adresse hinzugefügt wird.
-
In
der vorhergehenden Beschreibung ist der Logiksteuerbereich einem
Abschnitt des Geisterraumes zugewiesen. Wenn der Geisterraum ausgelesen wird,
kann ein Vorgang an den an einer Adresse des entsprechenden Realraumes
gespeicherten Daten zur Ausgabe durchgeführt werden, oder die Daten
an dieser Adresse können
geändert
werden. Spezieller kann, falls mit X14=1 Zugriff erfolgt, irgendeine
Art von Datenverarbeitung mit den Daten in dem Realraum an der entsprechenden
Adresse von X14=0 durchgeführt
werden. In diesem Fall kann die Y8-Adresse anstelle der X14-Adresse
hinzugefügt werden.
Obwohl X14=1 dem Geisterraum entspricht, kann auch X14=0 dem Geisterraum
entsprechen und X14=1 kann dem Realspeicherraum entsprechen. Im Fall
des Hinzufügens
der Y8-Adresse kann ähnlich Y8=0
dem Geisterraum entsprechen und Y8=1 kann dem Realspeicherraum entsprechen.
-
Die
Halbleiterspeichervorrichtung und ihre Modifikationen, die mit Bezug
auf die 22 bis 26 beschrieben
werden, sind nicht Teil der Erfindung sondern damit verwandter technologischer
Hintergrund.
-
22 ist
ein Diagramm, das die Konfiguration eines DRAM 111, das
intern mit einer Logik versehen ist, zeigt.
-
Bezug
nehmend auf 22 beinhaltet das DRAM 111 mit
Logik zusätzlich
zu den Anschlüssen zum
Steuern einer Adresse ADD., der Daten DQ, des Taktsignals CLK, und
der Steuersignale /RAS, /CAS,..., /CS, /WE zum Steuern eines universellen DRAM 114 noch
einen Anschluss zum Anlegen der Signale WE L, ADD L.
-
DRAM 111 mit
Logik beinhaltet weiterhin einen allgemeinen DRAM 114,
ein Register 116, das ein vorgeschriebenes Steuersignal
hält, und
einen Logikschaltkreis 118, der basierend auf den in Register 116 gehaltenen
Informationen arbeitet.
-
Ein
Steuerbereich kann nämlich
mit einer minimalen Anzahl von Anschlüssen zum Steuern frei gesetzt
werden. In 22 wird ein zusätzlicher
Steueranschluss zum Eingeben der Steuersignale WE L, ADD L verwendet.
Die zusätzlichen
Anschlüsse
können
den NC-Stiften wie z.B. Stift 36 oder Stift 40,
die in 53 gezeigt sind, zugewiesen
werden.
-
Wenn
das Steuersignal ADD L auf einem L-Niveau ist, ist ein DRAM-Zugriffsmodus
gesetzt. Wenn das Steuersignal ADD L ein H-Niveau erreicht, ist der DRAM 114 inaktiviert
und dem Register 116 ist ermöglicht, Signale zu empfangen,
und Logik 118 tritt in einen Arbeitsmodus ein.
-
23 ist
ein Diagramm, das eine Speicherdarstellung eines Mikrocomputersystems
der Halbleiterspeichervorrichtung von 22 zeigt.
-
Bezug
nehmend auf 23 sind 0h bis 3FFFFFh einem
DRAM-Raum zugewiesen. Es gibt 14 Bits an X-Adressen X0 bis X13 und
8 Bits an Y-Adressen Y0 bis Y7. Als Adressbits, die verwendet werden
um den DRAM-Raum in dem Mikrocomputersystem zu bestimmen, können die
gesamten A0 bis A21 verwendet werden.
-
Wenn
dann der Anschluss, der zum Eingeben des Steuersignals ADD L verwendet
wird, mit einem Adressbit A23 des Mikrocomputersystems verbunden
wird, dann können
800000h bis 803FFFh dem Logiksteuerbereich zugewiesen werden. Spezieller
entspricht ein dem Logiksteuerbereich zuweisbarer Bereich einem
Bereich, der die Bestimmung als X-Adressen des DRRM durch die maximale
Anzahl von Anschlüssen,
die zur Eingabe von Adressen verwendet werden, wie z.B. 0h bis 3FFFh,
ermöglicht. Dies
ist der maximale Bereich, der als Adresse bestimmt werden kann,
wenn das Adressbit A23 auf „1" gesetzt ist und
das Adressenmultiplexverfahren nicht verwendet wird. Im praktischen
Gebrauch kann die Grenze des Logiksteuerbereichs wie benötigt gesetzt werden.
-
Man
bemerke, dass, wenn es eine Möglichkeit
gibt, dass der Mikrocomputer einen anderen Adressbereich verwenden
kann, der mit dem Adressbit A23="1" bestimmt wird, ein
Chip-Select-Signal /CS
mit Bezug auf den DRAM mit Logik nur dann aktiviert werden muss,
wenn auf den Logiksteuerbereich (80000h bis 803FFFh) zugegriffen
wird.
-
24 ist
ein Diagramm, das Vorgangswellenformen zum Steuern des DRAM mit
Logik von 22 zeigt.
-
Bezug
nehmend auf 24 wird genereller Zugriff auf
den DRAM in Synchronisation mit einem Taktsignal CLK vor einer Zeit
t1 durchgeführt.
-
Wenn
das Steuersignal ADD_L das H-Niveau bei t1 erreicht, erfolgt ein
Eintreten in einen Befehlssteuermodus in Bezug auf den Logikschaltkreis. Demzufolge
werden Daten mit Bezug auf ein Register, das durch das Adresssignal
ADD bestimmt ist, in Synchronisation mit dem Taktsignal CLK eingegeben/ausgegeben.
In dem Fall von 24 ist das zusätzliche
Steuersignal /WE_L auf dem L-Niveau, sodass ein Befehl in ein Register
zum Steuern eines Befehls eingegeben wird.
-
Modifikation
der Halbleiterspeichervorrichtung von 22
-
25 ist
ein Diagramm, das eine Modifikation der Halbleiterspeichervorrichtung
von 22 zeigt.
-
Wenn
ein Mikrocomputer 132 auf einen Adressraum eines generellen
DRAM zugreift, wird ein Speicherkontroller 136 unter Verwendung
eines Multiplexerschaltkreises 140 eine durch den CPU-Kern 134 bestimmte
Adresse multiplexen und an einen Adressbus ausgeben, der die Adresssignale
A0 bis A13 überträgt.
-
Falls
jedoch der Logiksteuerungsbereich einem Bereich zugewiesen wird,
der sich von dem DRAM-Raum unterscheidet, dann gibt der Speicherkontroller 136 direkt
die Adresse vom externen Busschnittstellenschaltkreis 140 aus,
ohne den Multiplexerschaltkreis 140 zu verwenden, wie in 23 gezeigt
ist.
-
In
diesem Fall wird die Adresse durch ein Verfahren bestimmt, das ähnlich dem
ist, das in dem SRAM abläuft
und Adresssignale A0 bis A14 der Adresssignale A0 bis A20 verwendet,
die der Anzahl von Stiften entsprechen, die nachdem sie gemultiplext
wurden validiert sind. Die Signale A14 bis A20 sind dann z.B. in
einem sogenannten „Don't Care"-Zustand, sie können in
jedem beliebigen Zustand sein. Wenn solche Adresssignale A0 bis
A20 infolge der Aktivierung von /CS bestimmt sind, führt der DRAM 121 mit
Logik einen Prozess durch.
-
Man
bemerke, dass, wenn es die Möglichkeit gibt,
dass der Mikrocomputer einen anderen Adressbereich des Adressbit
A23="1" verwenden kann,
ein Chip-Select-Signal /CS mit Bezug auf den DRAM mit Logik nur
dann aktiviert werden muss, wenn auf den Logiksteuerbereich (80000h
bis 803FFFh) zugegriffen wird.
-
In
einem solchen Fall ist der DRAM 121 mit einem ATD (Address
Transition Detect)-Schaltkreis 130 versehen, der einen Übergang
in der Adresse in einem Teil von Register 126 detektiert.
-
26 ist
ein Diagramm, dass Vorgangswellenformen zeigt, die verwendet werden,
um die Arbeitsweise der Modifikation der Halbleiterspeichervorrichtung
von 22 zu erklären.
-
In
diesem Fall ist vor t1 ein Steuersignal ADD_L auf dem L-Niveau und ein genereller
Zugriff auf den DRAM wird durchgeführt. Wenn ADD_L das H-Niveau
erreicht, wird in einen Befehlssteuermodus bezügliches des Logikschaltkreises
eingetreten. Zu der Zeit wird ein Schreibmodus bestimmt, falls /WE_L auf
dem L-Niveau ist. Falls /WE_L auf dem H-Niveau ist, wird ein Lesemodus
bestimmt.
-
Wenn
eine durch die Adressensignale A0 bis A13 bestimmte Adresse ADD
geändert
wird, detektiert der ATD-Schaltkreis 130 die Änderung
und erzeugt eine interne Arbeitsuhr, die unabhängig von dem Taktsignal CLK
ist, zum Schreiben eines an DQ angelegten Signals in ein internes
Befehlsregister oder zum Lesen des Inhalts des Registers, das durch die
Adresse von dem DQ-Anschluss bestimmt ist.
-
Wie
oben beschrieben wird durch Verbinden eines Anschlusses zum Empfangen
des Steuersignals /WE_L der Halbleiterspeichervorrichtung 121 mit
einem Anschluss zum Ausgeben eines Signals A23, das um den SRAM
zu steuern auf der Seite des Mikrocomputers 132 ausgegeben
wird, der Bedarf für eine
spezielle Funktionalität
auf der Seite des Mikrocomputers beseitigt, wenn die Halbleiterspeichervorrichtung 121 als
der SRAM gesteuert wird. Der Mikrocomputer kann den Logikschaltkreis
in der Halbleiterspeichervorrichtung 121 steuern, falls
ein genereller Befehl zum Schreiben oder Lesen von Daten bezüglich eines
Speichers, wie z.B. eines extern erweiterten SRAM, ausgeführt wird.
-
Fünfte Ausführungsform
-
In
der fünften
Ausführungsform
wird ein spezifischerer DRAM, der intern mit einer Chiffrierlogik versehen
ist, beschrieben. Der DRAM mit der Chiffrierlogik wird im Weiteren
als ein Sicherheits-SDRAM (ScRAM) bezeichnet.
-
27 ist
ein Blockdiagramm, das eine Konfiguration eines ScRAM 200 zeigt.
-
Bezug
nehmend auf 27 beinhaltet das ScRAM 200:
einen Zeitpuffer 202, der ein externes Taktsignal CLK empfängt; einen
Eingabe/Ausgabe-Puffer 204 zum Übertragen/Empfangen eines Datensignals
DQ zu/von einem externen Abschnitt; und einen Eingabepuffer 206,
der extern ein Adresssignal ADD, Befehlssignal CMD und Signal CRYP
empfängt.
-
Der
ScRAM 200 beinhaltet weiterhin: ein Modusregister 208,
das Arbeitsmodusinformation entsprechend einer Ausgabe des Eingabepuffers 206 hält; einen
DRAM-Steueradressenzähler 210,
zum Steuern des ScRAM entsprechend den Ausgaben des Eingabepuffers 206 und
des Modusregisters 208; und einen DRAM-Abschnitt 212,
der einen Datenhaltevorgang unter Steuerung von dem DRAM-Steueradressenzähler 210 durchführt.
-
Der
Eingabe/Ausgabe-Puffer 204 und der DRAM-Abschnitt 212 sind
durch einen internen Bus mbus [15:0] verbunden. Der DRRM-Abschnitt 212 hat
eine Vielzahl von Speichereinheiten, die jeweils ein Speicherfeld,
Zeilendecoder, Spaltendecoder, Leseverstärker und Eingabe/Ausgabe-Steuerschaltkreis
enthalten.
-
Der
ScRAM 200 beinhaltet weiterhin einen Selektor 214,
Register REG0, REG1, REG2, Zähler 220, 224,
einen Steuerschaltkreis 222 und eine Chiffrierlogik 228.
-
Die
Parameter zur Zeit des Modusregistersetzens (MRS), was ein Steuerbefehl
für den SDRAM
ist, sind in dem Modusregister 208 gespeichert. Nicht nur
die Moduseinstellungen des SDRAM, sondern auch die Einstellungen
von Zugriffs-Freigabe/Sperre (enable/disable) der Steuerregister
REG0 bis REG2 können
zum Gespeichertwerden bestimmt werden. Wenn der MRS-Befehl eingegeben
wird, werden die Steuerregister REG0 bis REG2 und die Chiffrierlogik 228 zurückgesetzt.
-
Das
ScRAM 200 hat drei Arten von Steuerregistern REG bis REG3
zum Steuern einer Chiffrierlogikfunktion.
-
Das
Steuerregister REG0 wird zum Halten eines Befehls oder eines Modus,
der die Chiffrierlogik steuert, verwendet. Das Steuerregister REG1
wird zum Halten von Eingabedaten der Chiffrierlogik verwendet. Das
Steuerregister REG1 weist eine maximale Kapazität von 4kb auf.
-
Das
Steuerregister REG wird zum Halten eines Ausgabeergebnisses der
Chiffrierlogik verwendet. Das Steuerregister REG2 weist ebenfalls
eine maximale Kapazität
von 4kb auf.
-
Jetzt
wird ein Verfahren des Zugriffs auf die Steuerregister REG1 bis
REG2 beschrieben.
-
Durch
Zugriff auf das Steuerregister von einem externen Abschnitt kann
Steuern der Chiffrierlogik in dem ScRAM 200, Eingabe/Ausgabe
von Daten und Steuern eines Modus für geringeren Stromverbrauch
durchgeführt
werden.
-
28 ist
ein Diagramm, das in Verbindung mit einer Änderung in dem Zustand einer
Speicherdarstellung entsprechend dem Setzen des Steuerregisters
gezeigt ist.
-
Bezug
nehmend auf 28 gibt es zwei Verfahren zum
Steuern der Chiffrierfunktion des ScRAM.
-
Bei
dem ersten Verfahren wird extern 1 als ein Steuerregisterzugriffsfreigabesignal
CRYP eingegeben. Folglich wird eine Seite von X=#3FFF ein Steuerregisterbereich.
-
Bei
dem zweiten Verfahren wird, falls das Steuerregisterzugriffsfreigabesignal
CRYP 0 ist, 1 als Adressbit A10 eingegeben, wenn ein MRS-Befehl zum
Setzen des Modus des SDRAM eingegeben wird. Falls das Adressbit
A11 0 ist, wird in diesem Fall die Seite von X=#3FFF zu einem Steuerregisterbereich.
Wenn das Adressbit A11 1 ist, dann wird eine Seite von X=#0000 ein
Steuerregisterbereich.
-
Wenn
das Steuerregister des ScRAM nicht verwendet wird, wird durch Setzen
von 0 an A10 ein genereller MRS-Befehl zum Setzen des Modus des SDRAM
eingegeben. In diesem Fall muss das Steuerregisterzugriffsfreigabesignal
CRYP 0 sein. Wenn nach der Eingabe von CRYP-Signal und MRS-Befehl
tRSC verstrichen ist, kann der ScRAM bezüglich neuer Befehle arbeiten.
-
Wenn
der Zugriff auf das Steuerregister freigegeben ist, kann auf die
Steuerregister REG0 bis REG2 durch Schreiben/Lesen von vorgeschriebenen Daten
in den Adressraum einer spezifischen Zeilenadresse (X=#3FFF oder
X=#0) zugegriffen werden. Während
dieser Zeit kann der 4-kbit Adressraum, der der Logiksteuerung zugewiesen
ist, nicht als ein Speicher verwendet werden. Auf den anderen Teil des
Raumes kann extern als generellen Speicherbereich zugegriffen werden.
-
Wenn
auf den Adressraum für
den Steuerregisterzugriff extern zugegriffen wird, würde auf
den DRAM-Abschnitt 212 nicht zugegriffen. Wenn der Freigabezustand
des Steuerregisterzugriffs einmal endet, kann folglich auf den Speicherraum,
der der spezifischen Zeilenadresse in dem Steuerregisterbereich
entspricht, als einen generellen Speicherraum zugegriffen werden.
Der Wert, der bevor das Ende des Freigabezustands des Steuer registerzugriffs
beendet ist in das Register gesetzt wurde, wird gehalten, falls
der Arbeitsmodus durch auf 0 Setzen des Signals CRYP beendet wird.
Falls der Arbeitszustand jedoch durch Verwenden des MRS-Befehls
beendet wird, wird der Wert, der in das Register gesetzt wurde,
zurückgesetzt.
Das Register kann nämlich
durch Eingeben des MRS-Befehls zurückgesetzt werden.
-
Auf
die Steuerregister REG0 bis REG2 kann durch Zugriff in derselben
Folge, wie der bei einem Universal-SDRAM auf den Adressraum, der
den Steuerregistern zugewiesen ist, zugegriffen werden. Von den
Steuerregistern gelesene Daten werden mit der gleichen CAS-Latenz
ausgegeben, die zur Zeit des Setzens des Modusregisters des SDRAM
gesetzt wurde, die Datenblocklänge
zur Zeit des Zugreifens auf das Steuerregister ist jedoch auf 1
festgelegt.
-
Jetzt
wird das Modusregister 208 von 27 beschrieben.
-
Die 29, 30 und 31 sind
Diagramme, die in Verbindung mit dem Modusregister 208 von 27 gezeigt
sind.
-
Bezug
nehmend auf 29 wird eine Modusregistersetzanweisung
durch auf ein L-Niveau setzen all der Signale /CS, /RAS, /CAS und
/WE des Befehlssignals CMD zur Zeit des Ansteigens eines Taktsignals
CLK angewendet. Die Werte, die durch die im Adresssignal AD beinhalteten
Adressbits BA0, BA1 und A0 bis A11 gesetzt werden, werden in die entsprechenden
Bits geschrieben, die in 30 gezeigt
sind. Man bemerke, dass die Adressbits A8 und A7 auf 0 gesetzt sind.
Die anderen Bits sind verschiedenen Einstellungen zugewiesen, wie
in 31 gezeigt ist.
-
Das
Modusregister ermöglicht
das Modussetzen des SDRAM, Setzen des Energiesparmodus des SDRAM
und Zugriff auf die Steuerregister.
-
In
den Moduseinstellungen des SDRAM können Datenblocklänge, Datenblocktyp
und /CAS-Latenz programmiert werden.
-
Durch
Setzen des Energiesparmodus des SDRAM kann der Vorladungs-Standby-Strom
im Non-Power-Down-Modus reduziert werden. Man bemerke, dass das
Verwenden dieses Modus es erfordert, dass die Setup-Zeit des Eingangssignals
mindestens 5 ns beträgt.
-
Durch
Zugreifen auf die Steuerregister wird, falls Bit A10 zur Zeit des
Modusregistersetzens auf 1 gesetzt ist, ein Registerraum zum Steuern
einer Chiffrierfunktion erreicht. Dieses Verfahren ermöglicht nicht
das Steuern eines Anschlusses zum Eingeben des Signals CRYP, und
ist deshalb für
ein mit dem Anschluss auf 0 festgelegtes System geeignet. Auf die
Steuerregister wird mit derselben Zugriffsfolge zugegriffen, wie
auf das SDRAM, und Daten werden mit derselben /CAS-Latenz ausgegeben.
Die Datenblocklänge
ist jedoch beim Zugreifen auf das Steuerregister immer auf 1 festgelegt.
-
Die
Daten, die durch das Modusregistersetzen gesetzt werden, werden
in dem Modusregister gespeichert, bis der nächste MRS-Befehl eingegeben wird. Der nächste MRS-Befehl
kann eingegeben werden, falls beide Speichereinheiten in einem Inaktiviertheitszustand
sind. Wenn nachdem der MRS-Befehl eingegeben wurde tRSC verstrichen
ist, kann der SDRAM bezüglich
neuer Befehle arbeiten. Wenn der MRS-Befehl eingegeben wird, werden
die Steuerregister zurückgesetzt.
Der Vorgang des Umschaltens zwischen Sperr/Freigabe-Zustand beim Zugreifen
auf die Steuerregister bei gleichzeitigem Halten des Inhalts des
Steuerregisters kann durch Steuern des Signals CRYP mit dem Bit
A10 von 0 zur Zeit des Modusregistersetzens des SDRAM durchgeführt werden.
-
32 ist
ein Diagramm, das einen Zustandsübergang
zeigt, der mit dem Chiffriersteuerungsbeginn/ende des ScRAM zusammenhängt.
-
Wenn
der Strom eingeschaltet wird, wird der Zustand des ScRAM in einen
Anfangszustand 340 geändert.
Wenn das Signal CRYP auf 1 gesetzt ist, wird der Zustand sukzessiv
zu einem Zustand 344 geändert,
der Chiffriersteuerung ermöglicht.
Falls das Signal CRYP 0 ist, kann der Zustand durch Setzen des Bits
A10 auf 1 durch einen Modusregistersetzbefehl in einen Chiffriersteuerungsfreigabezustand 344 geändert werden.
-
Durch
auf 0 Setzen des Signals CRYP im Anfangszustand 340 des
Stromanschaltens und Setzen von 0 an Bit A11, ein Modusregisterbefehl,
wird der Zustand in einen Chiffriersteuerungssperrzustand 342 geändert.
-
Der Übergang
vom Zustand 342 auf 344 kann durch 1 Setzen des
Signals CRYP1 oder durch Setzen von 1 an Bit A10 durch den Modusregisterbefehl,
wobei Signal CRYP 0 ist, erfolgen.
-
Nun
wird der Übergang
vom Chiffriersteuerungsfreigabezustand 344 zu dem Chiffriersteuerungssperrzustand 342 beschrieben.
Der Übergang kann
durch 0 Setzen des Signals CRYP erfolgen, falls der Chiffriersteuerungsfreigabezustand 344 durch
auf 1 Setzen des Signals CRYP begonnen wurde. Falls der Freigabezustand 344 durch
auf 0 Setzen des Signals CRYP und auf 1 Setzen des Bit A10 durch
den Modusregistersetzbefehl begonnen wurde, erfolgt der Übergang
zum Sperrzustand 342 durch auf 0 Setzen des Bit A10 durch
den Modusregistersetzbefehl.
-
33 ist
ein Diagramm, das exemplarische Vorgangswellenfunktionen beim Zugreifen
auf die Steuerregister zeigt.
-
Bezug
nehmend auf 33 wird angenommen, dass eine
Seite von X=#3FFF dem Steuerregisterzugriffsbereich zugewiesen ist.
Da der SCRAM in einen Modus gesetzt ist, in dem die CRS-Latenz CL gleich
3 ist, hat die Ausgabe des Registers eine zeitliche Abstimmung von
CL=3.
-
Hierbei
ist die Datenblocklänge
unabhängig von
einer Datenblocklänge
BL, die durch das Modusregistersetzen gesetzt wurde, für den Registerzugriff auf
1 festgelegt. Folglich müssen
bei jedem Zyklus ein Lese/Schreib-Befehl und eine Spaltenadresse eingegeben
werden.
-
Die 34 bis 37 sind
Diagramme, die in Verbindung mit einer Adressdarstellung des Steuerregisters
gezeigt sind.
-
34 betrifft
den Fall, in dem die Spaltenadresse h00, h01 ist, 35 entspricht
h02, 36 h03, h04, h05, h06 und 37 entspricht
h13 bis h20.
-
Diese
X-Adressen werden anfänglich
auf h3FFF oder h0 gesetzt.
-
Als
nächstes
werden Eigenschaften der Chiffrierfunktion des ScRAM beschrieben.
-
Der
ScRAM ist intern mit einem Beschleuniger eines Hauptchiffrierverfahrens
versehen, das verwendet wird, um die Sicherheit in dem Netzwerk
zu sichern. Der ScRAM unterstützt
auch die Funktionen eines Public-Key-Chiffriersystems, das zur elektronischen
Autorisierung verwendet wird, und ein Secret-Key-Chiffrierverfahren, das zum Übertragen/Empfangen
von Daten nach der Autorisation verwendet wird. Diese Funktionen
werden von einer dazu bestimmten Chiffrierlogik 228 durchgeführt, die in 27 gezeigt
ist, sodass sie gut für
ein System geeignet sind, das einen schnellen Verschlüsselungsprozess
bei geringem Stromverbrauch erfordert.
-
Die
Verschlüsselungsmethode,
die unterstützt
wird, ist ähnlich
der von 9. Es werden sowohl RAS als
auch DES und Triple- DES
als Public-Key-Verschlüsselungssystem
bzw. Secret-Key-Verschlüsselungssystem
unterstützt.
Weiterhin unterstützt
das Secret-Key-Verschlüsselungssystem
ECB, CBC, OFB, CFB-64, die die Hauptblockchiffriermodi sind.
-
Diese
Verschlüsselungssysteme
werden als Hauptverschlüsselungssysteme
nicht nur in einem generellen Netzwerk verwendet, sondern auch über das
Internet. Das ScRAM kann für
Haupt-Blouser wie den
Netscape Communicator oder den Internet Explorer und S/MIME eines
Verschlüsselungs-E-Mail-Verfahrens
verwendet werden. Für
einen elektronischen Handelsplatz mit projizierter Ausdehnung würde Sicherheit
mit diesen Verschlüsselungssystemen
wichtiger werden. Das oben genannte Verschlüsselungssystem wird im kabellosen
Anwendungsprotokoll (WAP) unterstützt, das potentiell auf tragbare
Telefone in der Zukunft angewendet würde, und folglich hat das ScRAM
eine ausreichende Anpassbarkeit an verschiedene Systeme.
-
Der
ScRAM führt
nur kritische Prozesse zur Verschlüsselung durch eine interne
Chiffrierlogik durch, um die Anpassbarkeit an Anwendungen zu erhöhen. Die
Prozesse, wie zum Beispiel Hash, Datenverschlüsselung und Padding, werden
nämlich
durch eine Software wie im herkömmlichen
Fall durchgeführt.
Folglich kann die Anwendung einen größeren Freiheitsgrad genießen. Bei
RSA, werden nur die folgenden Vorgänge a) und b) durchgeführt, die
den größten Teil
der Verarbeitungszeit verbrauchen, die für einen Softwareprozess erforderlich
ist.
- a) Zur schnellen elektronischen Autorisierung durch
RSA werden die folgenden Vorgänge durchgeführt.
Potenz-Residuumsoperation
Me mod N
Montgomery-Multiplikations-Residuumsoperation
X*Y*R–1 mode
N
Residuumsoperation Y mod N
- b) Zur schnellen Verschlüsselungskommunikation werden
die Vorgänge
von Triple-DES, DES (CBC, ECB, OFB, CFB-64) durchgeführt. Man
beachte, das der Padding-Prozess des letztendlichen Textblockabschnitts
abhängig
von Standards variiert; er muss durch eine Software durchgeführt werden.
-
Dann
wird die Verschlüsselungsprozessgeschwindigkeit
beschrieben.
-
Einzelchipintegration
einer Logik, die für
einen Adressvorgang vorgesehen ist, und des DRAM ermöglicht einen
schnellen Prozess und eine Reduzierung des Stromverbrauchs. Folglich
würde eine RSA-Chiffriersignaturvorgangszeit
mit 1024 Bit bei einer niedrigen Stromversorgungsspannung (2.5V-System),
die für
tragbare Geräte
geeignet ist, etwa 100ms bis 200ms benötigen. Triple-DES bzw. DES
können
nämlich
60 Mbps und etwa 180 Mbps bereitstellen.
-
Der
SCRAM steuert einen Chiffrierlogikabschnitt durch Zugreifen auf
einen spezifischen Adressraum, stellt dabei Stiftkompatibilität bezüglich eines
Universal-SDRAM bereit. Zusätzlich
kann, wenn die Chiffrierfunktion gesperrt ist, nur die Funktion
als der SDRAM verwendet werden.
-
Nun
wird ein Chiffrierfunktionssteuerverfahren beschrieben.
-
Wie
zuvor bemerkt, kann die Chiffrierfunktion des ScRAM durch Zugreifen
auf die Steuerregister gesteuert werden. Auf die Steuerregister
kann durch Eingeben einer vorgeschriebenen Adresse zur Zeit des
Modusregistersetzens oder durch 1 setzen des Anschlusses, der mit
dem Signal CRYP versorgt wird, und Zugreifen auf eine vorgeschriebene
Adresse zugegriffen werden. Hierbei entspricht der Default-Adressraum,
der dem Steuerregister zugewiesen ist, einer Seite von X=h3FFF.
Falls auf beide Bits A10 und A11 bei der Eingabe des MRS-Befehls 1 gesetzt wird,
können
die Steuerregister einer Seite von X=h0 zugewiesen werden.
-
Bei
einem Firmware-Design ist es jedoch erforderlich, dass der zum Zugriff
auf die Steuerregister reservierte Raum nicht für andere Zwecke verwendet werden
sollte. Zum Beispiel ist eine Zuweisung dieses Raums an die Anwendung
oder den Kernel verhindert. Den Kernel betreffend muss Obacht gegeben
werden, dass er nicht zur Zeit des Bootens zugewiesen wird.
-
Nun
wird ein Beispiel des Systemdesigns beschrieben.
-
38 ist
ein Diagramm, das in Verbindung mit einem System gezeigt ist, das
einen Anschluss steuern kann, an den das Signal CRYP angelegt ist.
-
Bezug
nehmend auf 38 ist ein System gezeigt, das
einen I/O-Port eines generellen Mikrocomputers (MCU) mit einem Anschluss
verbinden kann, an den das Signal CRYP anliegt. Falls der CRYP-Anschluss
vor dem Hochfahren des Systems auf 0 gesetzt werden kann, ist der
Adressraum in dieser Struktur noch nicht dem Steuerregister zugewiesen,
sodass der Raum zum anfänglichen
Laden des Programms nicht beschränkt
ist. Falls der Bereich, in den das Programm geladen wird X=h3FFF
beinhaltet, wird der CRYP-Anschluss demzufolge auf 1 gesetzt und
der Adressraum, der dem Steuerregister zugewiesen wird, muss zu
der Seite von X=h0 geändert
werden.
-
Die 39 und 40 sind
Diagramme, die in Verbindung mit einem System gezeigt sind, das den
CRYP-Anschluss nicht steuern kann.
-
Bezug
nehmend auf 39 wird , wenn der an den CRYP-Anschluss anliegende
Wert auf 0 festgelegt ist, der Zugriff auf das Steuerregister durch Setzen
des Bit A0 auf A1 beim Eingeben des Modusregistersetzens (MRS) des
ScRAM ermöglicht.
-
Zu
dieser Zeit wird der Raum, in den das Programm nicht geladen ist,
durch das Bit A11 ausgewählt.
-
Bezug
nehmend auf 40 ist, wenn der dem CRYP-Anschluss
bereitgestellte Wert auf 1 festgelegt ist, der Zugriffsraum auf
das Steuerregister einer Seite von X=h3FFF zugewiesen, so dass das Programm
nicht geladen werden darf, während
dieser Raum vermieden wird.
-
41 ist
ein Diagramm, das Vorgangswellenfunktionen zeigt, die verwendet
werden, um die Einstellungen der Steuerregister zu erklären.
-
Bezug
nehmend auf 41 sind exemplarische Signaleingaben
zum Setzen der Steuerregister gezeigt. Der einzige Unterschied zu
dem DRAM beim Zugreifen auf die Steuerregister ist, dass die Datenblocklänge unabhängig von
den Einstellungen des MRS 1 ist. Andererseits wird auf
die Steuerregister mit derselben Zeitfolge und in derselben Reihenfolge wie
beim DRAM zugegriffen.
-
In 41 ist
der Adressraum zum Zugreifen auf das Steuerregister beispielhaft
X=3FFF.
-
Zuerst
wird zu einer Zeit t1 die Adresse X=h3FFF zum Zugreifen auf das
Steuerregister eingegeben.
-
Dann
wird zu einer Zeit t2 eine Software zurückgesetzt.
-
Zu
einer Zeit t3 wird ein Modussetzen (1) durchgeführt. Beim
Modussetzen (1) wird DES-56 als Secret-Key-Verschlüsselungssystem
ausgewählt und
ein Prozess im CBC-Modus wird durchgeführt.
-
Zu
einer Zeit t4 wird dann ein Modussetzen (2) durchgeführt. Beim
Modussetzen (2) wird gesetzt, das Verschlüsselung
durch geführt
wird, die Adresszähler
von REG und REG2 werden zurückgesetzt und
IV wird als Startwert verwendet.
-
Zwischen
den Zeiten t5 und t6 wird ein Geheimschlüssel (secret key) eingegeben.
-
Zwischen
den Zeiten t6 und t7 wird ein Startvektor IV eingegeben.
-
Zwischen
den Zeiten t7 und t8 wird ein Klartext von 8 Byte eingegeben und
bei t8 wird nach der Eingabe des Klartextes EOF (End of File) eingegeben.
-
Zu
einer Zeit t9 wird Lesen bezüglich
eines Flag-Bereiches durchgeführt,
um zu überprüfen, ob eine
Chiffrierlogik arbeitet oder nicht.
-
Das Überprüfsignal
wird als Datensignal DQ mit CAS-Latenz gelesen.
-
Als
nächstes
wird ein Secret-Key-Verschlüsselungssystem,
das durch den ScRAM unterstützt wird,
beschrieben.
-
42 bis 44 sind
schematische Diagramme, die in Verbindung mit einer Grundeinheit
für einen
Verschlüsselungsprozess
gezeigt sind.
-
42 betrifft
DES mit einer Schlüssellänge von
56 Bit, 43 betrifft ein Triple-DES-Verfahren mit
einer Schlüssellänge von
112 Bit und 44 betrifft ein Triple-DES-Verfahren
mit einer Schlüssellänge von
168 Bit. In dem ScRAM werden DES und Triple-DES als das Secret-Key-Verschlüsselungssystem unterstützt. Diese
Verschlüsselungssysteme
werden von einer Sicherheitssockelschicht im Internet, E-Mail von
S/MIME und einem kabellosen Anwendungsprotokoll verwendet. Man bemerke,
dass bei Triple-DES, DES drei Prozessen von Verschlüsseln, Entschlüsseln und
Verschlüsseln
unterworfen ist.
-
Die 45 bis 47 sind
schematische Diagramme, die in Verbindung mit einer Einheit für einen
Entschlüsselungsprozess
gezeigt sind.
-
45 betrifft
Entschlüsselung
entsprechend der Verschlüsselung
von 42, 46 betrifft Entschlüsselung
entsprechend der Verschlüsselung
von 43 und 47 betrifft
Entschlüsselung entsprechend
der Verschlüsselung
von 44.
-
Als
nächstes
wird ein Chiffriernutzungsmodus einer Secret-Key-Chiffrierung, die durch den ScRAM unterstützt wird,
beschrieben. Beispielhaft werden zwei Modi von ECB und CBC beschrieben.
-
Die 48 und 49 sind
Diagramme, die in Verbindung mit einem ECB-Modus gezeigt sind.
-
Bezug
nehmend auf die 48 und 49 ist
der ECB-Modus ein Grundmodus, der einer Basiseinheit für einen
Verschlüsselungs/Entschlüsselungsprozess
entspricht. Zum Verschlüsseln
wird an jedem der Blöcke
Mi (M=M1, M2, M3...), die durch Unterteilen der allgemeinen Daten
(Klartext) M durch jede 64Bits erlangt werden, wie in 48 gezeigt, unter
Verwendung der Daten K, die Secret-Key (Geheimschlüssel) genannt
werden und von dem Übertrager
und dem Empfänger
geteilt werden, ein Verschlüsselungsprozess
durchgeführt.
Folglich werden die Kryptogramme Ci (C=C1, C2, C3...) erzeugt, die jeweils
64 Bit aufweisen. Zum Entschlüsseln
wird, wie in 49 gezeigt ist, das Kryptogramm
Ci mit 65 Bit empfangen und unter Verwendung derselben Schlüsseldaten
K, wie die zur Verschlüsselung,
wird Klartext Mi (M=Mi, M2, M3 ...) erzeugt.
-
Jetzt
wird der CBC-Modus beschrieben.
-
50 ist
ein Diagramm, das in Verbindung mit einem Vorgang im CBC-Modus gezeigt
ist.
-
Bezug
nehmend auf 50 wird in dem CBC-Modus Verschlüsselung
an Blocks Mi durchgeführt,
die je durch Unterteilen des Klartextes M durch jede 64Bit, wie
im Fall des ECB-Modus, erhalten werden. Dann wird ein ausschließliches
ODER (exclusive OR) von Kryptogrammblock Ci und dem nächsten Block
Mi+1 als eine Eingabe für
die nächste
Verschlüsselung
verwendet. Dies wird eine Kette bildend wiederholt.
-
Andererseits
wird zum Entschlüsseln
ein Ergebnis Mi durch Durchführen
des Entschlüsselns
an dem Chiffrierblocktext Ci wie im Fall des ECB-Modus erhalten.
Es wird ausschließliches
ODER (exclusive OR) von Ci und dem Entschlüsselungsergebnis des Kryptogrammblocks
Ci+1 genommen, um den Ausgabeklartextblock Mi+1 zu erzeugen. Dies
wird eine Kette bildend wiederholt. Es sei bemerkt, dass in 50 der
Klartext, das Kryptogramm, der Verschlüsselung nutzende Chiffrierschlüssel K und
die Entschlüsselung
durch Mi, Ci(i=1, 2,...), Ek bzw. Dk repräsentiert werden.
-
IV
(initial vector) repräsentiert
einen Startwert, der für
anfängliche
Verschlüsselung
und Entschlüsselung
verwendet wird. IVs stimmen auf den Seiten der Verschlüsselung
und der Entschlüsselung überein.
Da der Wert von IV der dritten Partei bekannt sein darf, ist geheime Übertragung
von IV zwischen dem Übermittler
und dem Empfänger
nicht nötig.
Der Wechsel in dem Wert von IV resultiert in einem unterschiedlichen
Kryptogramm von derselben Nachricht.
-
Die 51 und 52 sind
schematische Diagramme, die in Verbindung mit Verschlüsselung und
Entschlüsselung
im CBC-Modus gezeigt sind.
-
Bezug
nehmend auf die 51 und 52 ist
die Länge
von Klartext, die zu einer Zeit in den ScRAM eingegeben werden kann,
4kbit, was einer Größe von Register
REGT entspricht. Beim Bearbeiten eines Klartextes, der eine größere Länge als
4kbit aufweist, ist das Steuerregister folglich derart gesetzt,
dass der Kryptogrammblock Ci unmittelbar zuvor einen Startwert aufweist.
-
In
den Ausführungsformen
der vorliegenden Erfindung wird der SDRAM beispielhaft auf die vorliegende
Erfindung angewendet. Die vorliegende Erfindung ist jedoch nicht
auf die Anwendung auf einen SDRRM beschränkt und kann auf einen asynchronen DRAM,
wie z.B. EDO (Extended Data Out) DRAM angewendet werden. Desweiteren
kann die vorliegende Erfindung auf andere synchrone DRAM einschließlich eines
DRAM mit einer DDR (Double Data Rate)-Schnittstelle oder auf ähnliches
angewendet werden.
-
Obwohl
die vorliegende Erfindung im Detail beschrieben und illustriert
wurde, versteht es sich deutlich, dass dieses nur zum Illustrieren
und als Beispiel diente und nicht als Einschränkung aufgefasst werden kann
und der Umfang der vorliegenden Erfindung nur durch die beiliegenden
Ansprüche
beschränkt
ist.