-
Gebiet der vorliegenden Offenbarung
-
Die
vorliegende Offenbarung betrifft im Allgemeinen digitale integrierte
Schaltungen mit Speicherbereichen, die mit geringer Leistungsaufnahme
zu betreiben sind, etwa integrierte Schaltungen mit einer Taktquelle
und Taktausblendeeinheiten, sowie ein Verfahren zum Entwerfen solcher
Schaltungen.
-
Beschreibung des Stands der
Technik
-
Bei
der Herstellung von Halbleiterbauelementen mit relativ komplexer
Schaltung ist der Entwurf und die Verifizierung, d. h. das Prüfen und
das Simulieren des Bauelements, ein wesentlicher Teil des Fertigungsprozesses,
der häufig
unterschätzt wird
im Hinblick auf die Kosten und den Aufwand, der erforderlich ist,
um zuverlässige
Daten im Hinblick auf die korrekte Funktion und Zuverlässigkeit
des Bauelements zu erhalten. Ein Grund für das Nichteinhalten von Leistungsspezifikationen
der integrierten Schaltungen liegt in Entwurfsfehlern, die durch Schaltungsverifizierung
auf der Grundlage von Softwaresimulation und/oder Prototypenprüfung vor
der Massenfertigung der betrachteten integrierten Schaltungen erkannt
und behoben werden können.
Eine nicht korrekte Funktion der integrierten Schaltung kann ferner
durch den Fertigungsprozess selbst hervorgerufen werden, wenn die
vollständige
Schaltung nicht den verifizierten Schaltungsaufbau entspricht, etwa
auf Grund von Prozessschwankungen in einem oder mehreren der großen Anzahl
an beteiligten Prozessschritten. Obwohl Mess- und Testverfahren
an vielen Punkten des Fertigungsprozesses vorgesehen sind, ist es
dennoch äußerst wichtig,
die korrekte Funktion des fertigen Halbleiterbauelements zu prüfen, da
gemäß einer
Faustregel, die durch fehlerhafte Chips hervorgerufenen Kosten mit
jeder Montagephase um eine Größenordnung
zunehmen. Z. B. sind die Kosten, die durch eine defekte Leiterplatte
mit einem fehlerhaften Chip hervorgerufen werden, deutlich höher als
das Erkennen eines fehlerhaften Chips vor dem Ausliefern und dem
Montieren der Leiterplatte. Das gleiche gilt für ein System, wenn ein Fehler durch
ein oder mehrere fehlerhafte Leiterplatten hervorgerufen wird, da
eine Standzeit eines industriellen Systems zu mittleren Kosten von
ungefähr
mehreren hundert Dollar pro Minute im Vergleich zu einem Preis von
einigen wenigen Dollar für
eine integrierte Schaltung betragen, die den Defekt hervorgerufen hat.
-
Somit
gibt es ein großes
Interesse bei der Entwicklung effizienter Entwurfsstrategien und
Test- und Verifizierungsverfahren, um die Entwurfsphase zu beschleunigen,
ohne zu Schaltungsfehlern, die durch Entwurfsfehler hervorgerufen
werden, beizutragen. Insbesondere mit der Forderung nach immer mehr
Strukturelementen und geringeren Kosten von Schaltungen gibt es
ein Bestreben, eine Vielzahl unterschiedlicher Schaltungsbereiche
in einen einzelnen Chip zu integrieren, um damit ein vollständiges System
auf einem Chip (SOC) bereitzustellen. Ein Halbleiterbauelement mit
diversen Funktionsblöcken enthält typischerweise
zusätzlich
zu einem oder mehreren Logikblöcken
einen oder mehrere eingebettete Speicherbereiche, wie sie etwa als
chipinterner Cache-Speicher oder Zwischenspeicher für CPU's oder als Puffer
für Datenpakete
verwendet werden, die zwischen unterschiedlichen Taktsignalbereichen
ausgetauscht werden.
-
Die
zunehmende Komplexität
moderner digitaler Schaltungen ist typischerweise auch von einer Zunahme
der Leistungsaufnahme begleitet, da in digitalen Schaltungen die
Leistungsaufnahme mit zunehmender Taktfrequenz und der Anzahl der
aktiven Komponenten ansteigt, d. h. der Transistoren, die zum Aufbau
der grundlegenden digitalen Schaltungskomponenten verwendet werden,
etwa von Invertern, Signalspeichern bzw. Latches, Flipflops, und
dergleichen. Beispielsweise benötigt
ein komplexer Mikroprozessor mit mehreren 100 Million Transistorelementen,
der bei einer Taktfrequenz von einigen 100 MHz oder mehr arbeitet,
etwa 50 bis 100 Watt an Leistung, wodurch deutliche Beschränkungen
im Hinblick auf die Erfordernisse für die Wärmeabfuhr in Bezug auf das
Gehäuse
des Bauelements auferlegt werden. In anderen Fallen sind mobile
elektronische Bauelemente mit komplexer Steuerschaltung auf der Grundlage
digitaler Funktionsblöcke
zunehmend in vielen technischen Gebieten in Verwendung, wobei ein
Aspekt des ökonomischen
Erfolges die zur Verfügung
stehende Betriebsdauer auf der Grundlage der in diesen Geräten verwendeten
Leistungsquelle ist. Folglich werden große Anstrengungen unternommen,
um die Leistungsaufnahme für
ein gegebenes Maß an
Komplexität
eines digitalen Schaltungsblocks zu reduzieren. In einer komplexen
digitalen Schaltung werden typischerweise zwei Arten von Schaltungsentwurf
eingesetzt, d. h. ein synchroner Entwurf und ein asynchroner Entwurf.
In einer synchronen Gestaltung wird die gesamte Schaltung auf der
Grundlage eines Systemtaktsignals betrieben, das mit allen getakteten
digitalen Gattern verbunden ist. Andererseits wird in einer asynchronen
Gestaltung die Schaltung oder zumindest Teile davon ohne ein Taktsignal
betrieben, so dass Schaltereignisse nur auftreten, wenn ein Eingang
eines spe ziellen Funktionselementes sich ändert. Obwohl im Prinzip eine
asynchrone Gestaltung die Möglichkeit
bietet, Leistung einzusparen, sind andere Probleme, die mit asynchronen
Schaltungsentwürfen
verknüpft
sind, derart, dass diese für
komplexe Schaltungen wenig attraktiv sind, da der Aufwand zum Gestalten
und Verifizieren asynchroner Schaltungsbereiche deutlich größer ist
im Vergleich zu einem taktsignalbasierten Entwurf, der auf der Grundlage
eines Systemtaktsignals arbeitet. D. h., für synchrone digitale Schaltungsentwürfe sind
automatisierte Synthetisierungsregeln, beispielsweise in Form von
CAD (computergestützte Entwurfs-)Werkzeuge
vorhanden und verwendbar, um einen spezifizierten Schaltungsentwurf
zu erzeugen, wobei gut definierte Zeitrandbedingungen betrachtet
werden. Beispielsweise kann die gesamte Verteilung der Taktsignale
innerhalb der synchronen digitalen Schaltung auf der Grundlage einer
gewünschten
Zeitablaufstruktur beruhen, wodurch das Erzeugen eines entsprechenden
Taktraumes möglich
ist, um damit das Taktsignal in einer spezifizierten minimalen Verzögerung zu
Schaltungsbereichen des digitalen Schaltungsentwurfs zuzuführen. Somit
kann das Entwerfen und das Verifizieren der Schaltung auf der Grundlage
gut etablierter statischer Analyseverfahren erfolgen, wodurch die
Gesamtzeit zum Entwerfen und zur Herstellung komplexer digitaler
integrierter Schaltungen reduziert wird, wie dies zuvor erläutert ist.
Ferner kann der grundlegende Entwurf einer synchronen digitalen
Schaltung für
unterschiedliche Technologiestandards ohne Änderungen verwendet werden,
da die Funktion beibehalten wird, solange entsprechende fertigungsbezogene
Beschränkungen
eingehalten werden, d. h. solange die Taktsignalverzögerungen
innerhalb der Toleranzen liegen, die durch den betrachteten Technologiestandard
vorgegeben sind.
-
Andererseits
können
digitale Schaltungen, die einen deutlichen Anteil an asynchronem
Schaltungsentwurf enthalten, an sich einen deutlich geringeren Leistungsbedarf
besitzen, erfordern jedoch einen hohen Aufwand zum Gestalten und
insbesondere zum Verifizieren des asynchronen Schaltungsentwurfs.
D. h., während
eines Prüfvorgangs
muss eine dynamische Simulation der Schaltung ausgeführt werden,
wodurch deutlich zu den Gesamtherstellungszeiten beigetragen wird,
insbesondere, wenn sehr komplexe Schaltungen betrachtet werden.
Des weiteren kann der Schaltungsentwurf nicht in einfacher Weise
auf einen anderen Technologiestandard übertragen werden, da die „Antwort” der digitalen Schaltung
ein sehr dynamisches Verhalten beinhaltet, das deutlich von der
betrachteten Fertigungstechnologie abhängt, wodurch eine deutliche
Umgestaltung oder sogar ein neuer Entwurf der betrachteten Schaltung
erforderlich ist.
-
Da
typischerweise die Vorteile des synchronen Entwurfs, etwa ein geringerer
Aufwand beim Entwerfen und Verifizieren komplexer Schaltungen, wesentliche
Aspekte bei der Herstellung von Halbleiterbauelementen repräsentieren,
worin eine Vielzahl von Techniken entwickelt, um auch die Leistungsaufnahme
in synchronen digitalen Schaltungen zu reduzieren. Zusätzlich zu
dem Beibehalten einer geringen Betriebsspannung werden auch andere
Konzepte eingesetzt, in denen aktuell nicht verwendete Schaltungsbereiche
durch Abschalten des Taktsignals für diese Schaltungsbereiche
deaktiviert werden. Eine entsprechende Technik zum zeitweiligen
Deaktivieren des Taktsignals wird auch als Taktausblendung bezeichnet.
Während
der Taktausblendung wird ein Steuersignal, das auf der Grundlage
der Kenntnis erzeugt wird, dass spezielle Logikelemente nicht aktiv sein
müssen,
als ein „Tor” bzw. als
eine „Zeitschablone” für das Taktsignal
verwendet, das den betrachteten Logikschaltungsbereich zugeführt wird.
Der zusätzliche
Aufwand an Schaltung, der zum Realisieren eines geeigneten Taktausblendemechanismus
erforderlich ist, wird durch die Vorteile im Hinblick auf die Leistungseinsparung überkompensiert,
wobei auch die Möglichkeit
geboten wird, einen vollständig
synchronen Schaltungsentwurf mit den zuvor genannten Vorteilen zu
verwenden.
-
In
der
EP 1 223 583 A2 wird
ein taktsynchrones Speicherbauteil beschrieben, in dem Ein- und Ausgaben von
Daten sowie Befehlen taktsynchron erfolgen und ein Zugriffsbefehl
sämtliche
Adressdatenbits zur gleichen Zeit liefert.
-
In
der
DE 10 2004
009 693 A1 wird ein Halbleiterbauteil mit Logikschaltung
und eingebetteten Speichern beschrieben, in dem Flipflops in einer
Abtastkette mit einem Steuereingang einer MBIST-Logik verbunden
sind.
-
Wie
zuvor erläutert
ist, werden zunehmend mehr Schaltungsfunktionen in einer Vielzahl
von elektronischen Geräten
eingebaut, die auf der Grundlage tragbarer Leistungsquellen zu versorgen sind,
wobei auch eine gewisse Grundfunktion in einem im Wesentlichen deaktivierten
Zustand des elektronischen Geräts
beibehalten werden soll. Eine wichtige Funktion in dieser Hinsicht
ist das Beibehalten und das Überwachen
der Zeit und des Datums, um damit zeitgesteuerte Ereignisse, etwa
das Aktivieren des gesamten Systems oder Teile davon oder der zeitgesteuerte
Betrieb des Systems beim Reaktivieren der Schaltung, zu ermöglichen.
Zu diesem Zweck wurde sogenannte Echtzeituhren entwickelt, in denen
die aktuelle Zeit in einer für
Menschen gut wahrnehmbaren Weise überwacht wird, d. h., die Zeit wird
in Form von Sekunden, Minuten, Stunden, Tagen, Wochen, Monaten,
Jahren und dergleichen überwacht
und bereitgehalten in Abhängigkeit
von der gewünschten
Kapazität
der Echtzeituhr. Somit ist für
leistungskritische Anwendungen die Leistungsaufnahme der Echtzeituhr,
wenn diese als ein interner Teil der gesamten digitalen Schaltung
vorgesehen ist, so zu gestalten und zu betreiben, dass die Leistungsaufnahme
möglichst
gering ist, da die Echtzeituhreinheit auch aktiv ist, wenn der restliche
Teil der Schaltung deaktiviert ist. Somit hängt die Fähigkeit, die Zeit aufzuzeichnen,
von der gesamten Leistungsaufnahme der Echtzeituhr und der Kapazität einer
entsprechenden Leistungsquelle ab, die häufig in Form eines Stützkondensators,
einer wiederaufladbaren Batterie, und dergleichen vorgesehen ist.
Eine Echtzeituhr enthält
typischerweise einen Speicherbereich in einer spezifizierten Anzahl
an Speicherzellen, um damit die entsprechenden Echtzeitwerte in einem
geeigneten Format zu speichern, wobei auch geeignete Zeitzähler und
zusätzliche
Schaltungen vorgesehen sind, um die Echtzeitwerte in den Speicherzellen
regelmäßig zu aktualisieren.
-
1 zeigt
schematisch eine Blockansicht eines grundlegenden Aufbaus einer
Echtzeituhreinheit, die für
einen geringen Leistungsverbrauch gestaltet ist. In 1 umfasst
eine Echtzeituhr 190 einen Speicherbereich 110 mit
einer entsprechenden Anzahl an Speicherzellen, etwa Register, und
dergleichen, die gestaltet sind, um Echtzeitwerte in Form von Sekunden,
Minuten, Stunden, und dergleichen, abhängig von den gewünschten
Zeitauflösung
und dem Zeithorizont für
die Zeitüberwachungsfähigkeit der
Einheit 100 zu halten. Ferner sind in einer Zeitaktualisierungseinheit 120 entsprechende
Zeitgeber eingebaut, um damit die gewünschten Echtzeitwerte auf der
Grundlage eines Taktsignal CLK zu erzeugen. Die Zeitaktualisierungseinheit 120 umfasst
ferner geeignete Schaltungen, beispielsweise Komparatoren und dergleichen,
um damit vorprogrammierte Ereignisse zu erkennen und entsprechende
Alarmsignale abhängig
von der Gesamtprogrammierung der Einheit 100 bereitzustellen.
Die Einheit 120 steht mit dem Speicherbereich 110 über eine
Busschnittstelle 130 in Verbindung, wodurch ein Daten-
und Steuersignalaustausch zwischen den Komponenten der Einheit 100 möglich ist.
Des weiteren ist eine Schnittstelle 140 vorgesehen, um
mit anderen Schaltungsbereichen eine Kommunikation zu ermöglichen,
einen Zugriff auf die Einheit 100 durch externe Komponenten zu
gewährleisten,
und dergleichen. Es sollte beachtet werden, dass, wenn die Echtzeiteinheit 100 ein
einzelnes Gerät
repräsentiert,
das Taktsignal CLK intern auf der Grundlage geeignet gestalteter
Oszillatoren in Verbindung mit Verteilerschaltungen und dergleichen
erzeugt wird. Wie zuvor erläutert
ist, im Hinblick auf eine geringe Leistungsaufnahme wird die Gesamtgestaltung
der Einheit 100 als eine asynchrone Gestaltung vorgesehen,
beispielsweise als eine Latch-basierte Gestaltung, so dass entsprechende Schaltungsbereiche
der Einheit 100 „nach
Bedarf” aktiviert
werden, wobei insbesondere im Speicherbereich 110 lediglich
Teile aktiviert werden, auf die tatsächlich von der Zeitaktualisierungseinheit 120 zugegriffen
wird. Folglich kann eine minimale Leistungsaufnahme während des
Betriebs der Einheit 100 erreicht werden, wobei die Zeitaktualisierungseinheit 120 aktualisierte
Echtzeitwerte liefert, die dann in entsprechenden Speicherzellen
des Speicherbereichs 110 gespeichert werden.
-
Wie
jedoch zuvor erläutert
ist, kann insbesondere, wenn die Einheit 100 einen Teil
einer komplexen digitalen Schaltung repräsentiert, die Gestaltung der
Gesamtschaltung einen höheren
Aufwand beim Implementieren erfordern, und das Übertragen der betrachteten
Schaltungsgestaltung kann nicht auf einfache Weise auf andere Chiptechnologien
auf Grund der Verwendung eines technologieabhängigen Entwurfs erfolgen.
-
Angesichts
der zuvor beschriebenen Situation liegt der vorliegenden Erfindung
die Aufgabe zugrunde, eine integrierte Schaltung und einen Entwurf für eine solche
bereitzustellen, die bzw. der einen verlässlichen Speicherzugriff unter
geringem Leistungsverbrauch ermöglicht.
-
Überblick über die Offenbarung
-
Im
Allgemeinen betreffen die hierin offenbarten Prinzipien Techniken,
in denen ein Speicherbereich einer digitalen Schaltung in „Häufigkeitsgruppen” unterteilt
wird, wobei jede Häufigkeitsgruppe
einer Gruppe aus Speicherzellen entspricht, auf die in einer vorhersagbaren
Weise während
des Betriebs das Bauelements gemeinsam zugegriffen wird. Auf diese
Weise kann der Speicherbereich als eine synchrone Gestaltung bereitgestellt
werden, wobei jede Häufigkeitsgruppe
mit einem geeigneten Gateausblendemechanismus verknüpft ist,
so dass auf den Speicherbereich zugegriffen werden kann, indem lediglich
ein oder mehrere spezielle Häufigkeitsgruppen
aktiviert werden, ohne dass der gesamte Speicherbereich aktiviert
wird, was ansonsten zu einem unerwünschten Leistungsverbrauch
führen
würde.
Somit kann ein vollständig
synchroner Entwurf eingesetzt werden, wobei dennoch der Leistungsverbrauch
während
des Zugreifens auf den Speicherbereich auf einem geringen Niveau
bleibt. In einem anschaulichen Aspekt, der hierin offenbart ist,
wird eine Echtzeituhreinheit in einer synchronen Gestaltung bereitgestellt,
wobei der Speicherbereich in entsprechende Häufigkeitsgruppen unterteilt
ist, da auf die Speicherzellen in einer vorhersagbaren Weise zugegriffen
wird, ohne dass der Gesamtbetrieb der Echtzeituhr beeinflusst wird.
Folglich können
gut etablierte automatisierte Synthese- und Verifizierungsverfahren
eingesetzt werden, wobei dennoch ein Schaltungsentwurf bereitgestellt
wird, der zu einem geringen Leistungsverbrauch führt.
-
Eine
anschauliche hierin offenbarte integrierte Schaltung umfasst eine
Taktquelle, die ausgebildet ist, ein Taktsignal bereitzustellen.
Des weiteren sind mehrere Taktausblendeeinheiten vorgesehen, wovon jede
so angeschlossen ist, dass das Taktsignal und ein Steuersignal empfangen
werden, wobei die mehreren Taktausblendeeinheiten ausgebildet sind,
das Taktsignal bereitzustellen, wenn das Steuersignal in einem aktiven
bzw. gesetzten Zustand ist. Die integrierte Schaltung umfasst ferner
einen Speicherbereich mit Speicherzellen, die in mehrere Häufigkeitsgruppen
unterteilt sind, wobei jede Häufigkeitsgruppe aus
Speicherzellen eine vorbestimmte unterschiedliche Zugriffshäufigkeit
während
eines spezifizierten Betriebsmodus aufweist und das Taktsignal von
einer entsprechenden der mehreren Taktausblendeeinheiten empfängt.
-
Ein
hierin offenbartes anschauliches Verfahren betrifft das Entwerfen
einer integrierten Schaltung. Das Verfahren umfasst das Bestimmen
einer ersten Häufigkeit
zum Zugreifen auf eine erste Gruppe von Speicherzellen des Halbleiterbauelements während eines
spezifizierten Betriebsmodus. Das Verfahren umfasst ferner das Bestimmen
einer zweiten Häufigkeit
zum Zugreifen auf eine zweite Gruppe an Speicherzellen in dem spezifizierten
Betriebsmodus. Ferner wird das Halbleiterbauelement auf der Grundlage
eines synchronen Entwurfs gestaltet, indem ein erster Taktausblendemechanismus,
der zu der ersten Gruppe aus Speicherzellen gehört, und ein zweiter Taktausblendemechanismus
für die
zweite Gruppe aus Speicherzellen bereitgestellt wird. Schließlich umfasst
das Verfahren das Herstellen des Halbleiterbauelements unter Anwendung
des synchronen Entwurfs.
-
Kurze Beschreibung der Zeichnungen
-
Weitere
Ausführungsformen
der vorliegenden Offenbarung sind in der Beschreibung und den angefügten Patentansprüchen definiert
und gehen deutlicher aus der folgenden detaillierten Beschreibung
hervor, wenn diese mit Bezug zu den begleitenden Zeichnungen studiert
wird, in denen:
-
1 schematisch
eine Schaltungsansicht einer konventionellen Echtzeituhreinheit
mit geringer Leistungsaufnahme zeigt;
-
2a schematisch
ein Schaltbild einer synchronen Digitalschaltung mit einem Speicherbereich mit
mehreren Häufigkeitsgruppen
zeigt, die mit zugeordneten Gateausblendeeinheiten gemäß anschaulicher
Ausführungsformen
verbunden sind;
-
2b schematisch
ein Schaltbild einer integrierten Schaltung mit einer Echtzeituhreinheit zeigt,
die auf der Grundlage eines synchronen Entwurfs mit mehreren Taktausblendeeinheiten
gebildet ist, die mehreren Gruppen aus Speicherzellen mit identischen
Zugriffshäufigkeiten
gemäß anschaulicher
Ausführungsformen
verbunden sind; und
-
3 schematisch
ein Flussdiagramm eines Verfahrens zur Herstellung eines Halbleiterbauelements
auf der Grundlage einer synchronen Gestaltung mit einem Speicherbereich
zeigt, etwa dem Speicher einer Echtzeituhr, der mit mehreren Taktausblendeeinheiten
gemäß noch weiterer
anschaulicher Ausführungsformen
verbunden ist.
-
Detaillierte Beschreibung
-
Obwohl
die vorliegende Offenbarung mit Bezug zu den Ausführungsformen
beschrieben ist, wie sie in der folgenden detaillierten Beschreibung
sowie in den Zeichnungen gezeigt sind, sollte beachtet werden, dass
die folgende detaillierte Beschreibung sowie die Zeichnungen nicht
beabsichtigen, die vorliegende Offenbarung auf die speziellen offenbarten Ausführungsformen
einzuschränken,
sondern die beschriebenen Ausführungsformen
stellen lediglich beispielhaft die diversen Aspekte dar, wie sie
hierin offenbart sind.
-
Im
Allgemeinen betrifft der hierin offenbarte Gegenstand Verfahren
und integrierte Schaltungen, die auf Grundlage eines synchronen
Entwurfs gebildet werden können,
wodurch das Entwerfen und das Verifizieren der Bauelemente vereinfacht
wird, wobei auch die Übertragbarkeit
auf eine gewünschte
Chiptechnologie ermöglicht
wird. In einigen anschaulichen hierin offenbarten Aspekten wird
ein Betriebsmodus mit geringer Leistungsaufnahme für Schaltungsbereiche
mit einem Speicherbereich verwirklicht, wobei die einzelnen Speicherzellen
des Speicherbereichs in entsprechende Häufigkeitsgruppen eingestuft
werden, wobei eine Häufigkeitsgruppe als
eine Gruppe zu verstehen ist, in der die Speicherzellen mit der
gleichen Häufigkeit
während
des Betriebsmodus mit geringer Leistungsaufnahme angesprochen werden.
D. h., in vielen Anwendungen ist die Häufigkeit des Zugreifens auf
spezifizierte Speicherbereiche auf Grund der Natur der Funktion des
betrachteten Schaltungsbereichs vorhersagbar. Wenn beispielsweise
Werte mit einem vorbestimmten Format regelmäßig gespeichert oder abgerufen werden
sollen, können
die entsprechenden Speicherzellen von einem Systemtakt während beliebiger Zeitintervalle
zwischen den regelmäßig auftretenden Zugriffszeiten
abgekoppelt werden. Somit können Speicherbereiche,
die während
des Zugreifens auf eine spezielle Gruppe an Speicherzellen nicht
benötigt
werden, deaktiviert bleiben, wodurch die Zufuhr des Taktsignals
zu dem gesamten Speicherbereich vermieden wird, was ansonsten in
unerwünschter Weise
Leistung verbrauchen würde.
Wenn somit mehrere unterschiedliche Werte, die unterschiedliche
Formate besitzen können,
in einem Speicherbereich abzulegen sind oder daraus abzurufen sind, können geeignet
ausgewählte
Speicherzellen des Speicherbereichs kombiniert werden, um eine Häufigkeitsgruppe
zu definieren, wovon jede eine unterschiedliche Zugriffshäufigkeit
besitzt. Somit kann der Speicherbereich gemäß einer synchronen Gestaltung
auf der Grundlage eines Systemtaktsignals gebildet werden, wobei
entsprechende Taktausblendemechanismen das Systemtaktsignal separat
zu den einzelnen Häufigkeitsgruppen
zuführen,
da typischerweise nur diese einzelne Häufigkeitsgruppe zum Ausführen der
anhängigen
Speicheroperation erforderlich ist.
-
In
einem anschaulichen Aspekt repräsentiert der
synchron gestaltete Speicherbereich den Speicher einer Echtzeituhreinheit,
in welcher Zugriffsereignisse und das Format der Werte, die in den Speicherbereich
abzulegen sind, auf Grund der Natur des Funktionsverhaltens der
Echtzeituhreinheit vorhersagbar sind. Beispielsweise liefert eine
Zeitaktualisierungseinheit, d. h. eine entsprechende Anordnung aus
Zählern
und anderen Schaltungen, Echtzeitwerte, beispielsweise in Form von
Sekunden, Minuten und dergleichen, gemäß einer gewünschten Zeitauflösung der
Echtzeituhreinheit. Da das Format der jeweiligen Echtzeitwerte vorbestimmt
ist und auch die Echtzeitwerte regelmäßig zu speichern sind, jedoch
mit unterschiedlicher Häufigkeit,
können die
Speicherzellen so entsprechend gruppiert werden, dass eine Speicherzelle,
die beispielsweise mit Echtzeitwerten für Sekunden verknüpft ist,
mit einem Taktausblendemechanismus verbunden ist, während andere
Speicherzellen, die mit anderen Echtzeitwerten verknüpft sind,
etwa Minuten, ebenfalls mit einer Taktausblendeeinheit verbunden
sind, wodurch das Zuführen
des Systemtaktsignals zu dem Speicherbereich so beschränkt wird,
dass lediglich jene Speicherzellen aktiviert werden, auf die während der
betrachteten Speicheroperation tatsächlich zugegriffen wird. Folglich
kann die Gesamtleistungsaufnahme des Speicherbereichs vergleichbar
oder kleiner sein in Bezug auf eine asynchronische Speichergestaltung,
wobei der Implementierungsaufwand deutlich geringer ist im Vergleich
zu beispielsweise einer Latch-basierten Gestaltung, wie sie typischerweise für Echtzeituhreinheiten
eingesetzt wird, die in einem Betriebsmodus mit geringer Leistungsaufnahme
zu betreiben sind. Des weiteren kann der Gesamtschaltungsentwurf
durch eine formale statische Zeitanalyse verifiziert werden und
während
der automatisierten Synthese kann eine gemeinsame Zeitrahmenbedingung
für den
gesamten Taktraum der digitalen Schaltung verwendet werden.
-
Mit
Bezug zu den 2a, 2b und 3 werden
nunmehr weitere anschauliche Ausführungsformen detaillierter
beschrieben.
-
2a zeigt
schematisch eine synchron entworfene integrierte Schaltung 200 gemäß anschaulicher
Ausführungsformen.
Die Schaltung 200 umfasst somit einen „Taktbaum” 251, der ein Taktsignal
aus einer Systemtaktquelle (nicht gezeigt) zu jeder der taktsignalbasierten
digitalen Komponenten der Schaltungen 200 liefert. D. h.,
die Schaltung 200 wird auf der Grundlage eines Taktsignals
CLK betrieben, das über
den Taktbaum 251 bereitgestellt wird, wobei der Taktbaum
gemäß gut etablierter
Konzepte so gestaltet ist, dass dieser mit der betrachteten Fertigungstechnologie
kompatibel ist. Der Taktbaum 251 ist typischerweise so
gestaltet, dass eine maximale Taktverzögerung innerhalb vordefinierter
Toleranzen liegt, die auf der Grundlage der Prozesstechnologie und
der entsprechenden betrachteten Fertigungsschwankungen bestimmt
sind. Des weiteren umfasst die Schaltung 200 mehrere Funktionseinheiten,
die in geeigneter Weise mit dem Taktbaum 251 verbunden sind.
In der gezeigten Ausführungsform
ist ein Speicherbereich 210 vorgesehen und enthält mehrere
Speicherzellen (nicht gezeigt), die ebenfalls in Form von synchron
gestalteten Speicherzellen vorgesehen sind, wodurch das Anlegen
des Systemtaktsignals CLK erforderlich ist. Der Speicherbereich 210 kann
einen Speicher repräsentieren,
in welchem Zugriffsereignisse für
gewisse Bereiche vorhersagbar sind, beispielsweise auf Grund des
Funktionsverhaltens der integrierten Schaltung 200, wie
dies zuvor erläutert
ist. Daher können
Speicherzellen mit der gleichen vorhersagbaren Zuspitzhäufigkeit
zu einer speziellen Häufigkeitsgruppe
bzw. Frequenzgruppe zusammengefasst werden, etwa den Gruppen 210, ..., 210n.
Des weiteren ist jede der Gruppen 210a, ..., 210n mit
einer entsprechenden von mehreren Taktausblendeeinheiten 240 verbunden.
Somit ist eine entsprechende der Taktausblendeein heiten 240a,
..., 240n mit einer zugeordneten Gruppe 210a,
..., 210n verbunden. Jede der Taktausblendeeinheiten 240 ist aufgebaut,
das Systemtaktsignal CLK zu empfangen und das Signal CLK zu seiner
zugeordneten Gruppe beim Empfang eines gesetzten bzw. Gegensteuersignals 241 zuzuführen. D.
h., das Steuersignal 241 enthält individuelle Steuersignalbereiche 241a, 241n, um
selektiv die Taktausblendeeinheiten 240a, ..., 240n zu
aktivieren. Im Grunde kann jede der Taktausblendeeinheiten 240 eine
logische „UND”-Funktion
repräsentieren,
die das Systemtaktsignal CLK und das Steuersignal 241 kombiniert.
Das Steuersignal 241 wird mittels einer Schnittstelle 230 von
einer Aktualisierungseinheit 220 bereitgestellt, um mehrere
Funktionseinheiten 220a, ..., 220d umfasst, die
mit dem Taktbaum 251 so verbunden sind, dass ein synchroner
Betrieb realisiert, wie dies zuvor erläutert ist. Die Schaltung 200 umfasst
eine Funktionsblock 250, der komplexe digitale Schaltungen
aufweisen kann und dergleichen, die mit dem Taktbaum 251 gemäß gut etablierter
Entwurfprinzipien verbunden sind, wobei der Einfachheit halber entsprechende
Funktionseinheiten des Blocks 250 in 2a nicht
gezeigt sind. Es sollte beachtet werden, dass die integrierte Schaltung 200 einen
Entwurfszustand der Schaltung 200 repräsentieren kann, während in
anderen Fällen die
diversen Komponenten in einem Halbleiterchip gemäß einer spezifizierten Fertigungstechnologie eingerichtet
sind.
-
Während des
Betriebs der Schaltung 200 liefert, unabhängig davon,
ob diese sich in einem Entwurfszustand befindet oder eine tatsächliche
Hardwarekonfiguration repräsentiert,
der Taktbaum 251 das Taktsignal CLK zum Betrieb des Funktionsblocks 250 und
der Aktualisierungseinheit 220. Beispielsweise kann die
Aktualisierungseinheit 220 Speicheranforderungen für die diversen
Gruppen 210a, ..., 210n mit unterschiedlicher
Häufigkeit
erzeugen, wenn beispielsweise Daten regelmäßig zu speichern oder aufzurufen
sind, wobei entsprechende Zugriffszeitintervalle für die Gruppen 210a,
..., 210n unterschiedlich sind. Folglich kann beim Ausführen einer Speicheroperation
die Aktualisierungseinheit 220 ein spezielles der Steuersignale 241a,
..., 241n ersetzen bzw. aktivieren, wodurch die jeweilige
Gruppe 210a, ..., 210n aktiviert wird, auf die
mittels der anhängigen Speicheroperation
zugegriffen werden soll. Während dieses
Betriebsmodus, d. h. eines Betriebsmodus mit regelmäßigem Zugriff
auf den Speicherbereich 210, kann folglich eine deutliche
Leistungseinsparung erreicht werden, da die Gruppen 210a,
..., 210n individuell angesprochen werden können, während die verbleibenden
Gruppen in einem deaktivierten Zustand bleiben. Beispielsweise in
einem Betriebsmodus mit geringer Leistungsaufnahme, in welchem der Funktionsblock 250 im
Wesentlichen deaktiviert ist, kann die Leistungsaufnahme der Schaltung 200 im Wesentlichen
durch den Betrieb der Aktualisierungseinheit 220 und des
Taktbaums 251 bestimmt sein, wobei auch der Speicherbereich 210 nicht
wesentlich zur Gesamtleistungsaufnahme beiträgt, da lediglich spezielle
Gruppen 210a, ..., 210n zu einer gegebenen Zeit
aktiviert werden.
-
2b zeigt
schematisch die synchrone integrierte Schaltung 200 gemäß einer
weiteren anschaulichen Ausführungsform,
in der die Schaltung 200 in Echtzeituhreinheit 260 aufweist.
In diesem Falle umfasst der Speicherbereich 210 mehrere
Speicherzellen 211a, ..., 211k, die zu Gruppen 210a,
..., 210n so zusammengefasst sind, dass die Speicherzellen 211 in
jeder einzelnen Gruppe einem Echtzeitwert entsprechen, wie der zum
Verfolgen der aktuellen Zeit und des Datums erforderlich ist. Beispielsweise
kann die Häufigkeitsgruppe 210a den
Speicherzellen entsprechen, die zu den Echtzeitwerten gehören, die
die Anzahl der Sekunden der aktuellen Zeit angeben. In ähnlicher
Weise kann die Gruppe 210b dem aktuellen Wert der Anzahl
der Minuten entsprechen, während
die Gruppen 210c, jenen Speicherzellen entsprechen, die
dem Speichern von Echtzeitwerten für Stunden bzw. Tage zugeordnet sind.
Abhängig
von der gewünschten
Zeitauflösung der
Echtzeituhreinheit 260 können weitere Gruppen 210 Wochen,
Monaten, Jahren, Sekundenbruchteilen, und dergleichen entsprechen.
Somit weist jede der Gruppen 210a, ..., 210n zumindest
eine ausreichende Anzahl an Speicherzellen 211 auf, um
damit das Speichern des Echtzeitwertes in einem geeigneten Format
zu ermöglichen.
Es sollte jedoch beachtet werden, dass der Speicherbereich 210 weitere
Speicherzellen aufweisen kann, um zusätzliche Daten zu speichern,
wobei einige diese zusätzlichen
Speicherzellen ebenfalls ein vorhersagbares Zugriffsverhalten besitzen
und daher einer geeigneten Gruppen 210 zugeordnet werden
können.
Andere Speicherzellen mit einem nicht-vorhersagbaren Zugriffsverhalten können ebenfalls
mit dem Taktbaum 251 ohne die dazwischengeschalteten Taktausblendeeinheiten 240a, ..., 240d verbunden
sein. Die Aktualisierungseinheit 220, die nunmehr als Zeitaktualisierungseinheit
bezeichnet wird, kann ausgebildet sein, die mehreren Steuersignale 241a,
..., 241d so bereitzustellen, dass das Systemtaktsignal
CLK zu einem oder mehreren der Gruppen 210 selektiv zugeführt wird,
wie dies zuvor erläutert
ist. Des weiteren umfasst die Zeitaktualisierungseinheit 220 eine
weitere Schaltung zum Ausführen
gewünschter
Echtzeituhrfunktionen, etwa das Erzeugen von Alarmsignalen und dergleichen. Es
sollte beachtet werden, dass die Echtzeituhreinheit 260 prinzipiell
auch als ein Einzelgerät
vorge sehen werden kann, während
in anderen Fällen
die Einheit 260 ein Teil der Schaltung 200 ist,
die zusätzlich weitere
Funktionsblöcke,
etwa dem Block 250 aufweist. In diesem Falle ermöglicht die
Echtzeituhreinheit 260 in Verbindung mit dem Block 250 ein
verbessertes Entwurfs- und Verifizierungsverhalten auf Grund der
synchronen Gestaltung, wobei auch ein Modus mit geringer Leistungsaufnahme
möglich
ist, da der Speicherbereich 210, obwohl dieser als sein synchroner
Entwurf vorgesehen ist, nach Bedarf aktiviert werden kann, wobei
lediglich Speicherzellen mit dem Systemtakt verbunden sind, auf
die von der Zeitaktualisierungseinheit 220 tatsächlich zugegriffen wird.
Somit kann ein vergleichbares oder sogar verbessertes Verhalten
im Hinblick auf die Leistungsaufnahme im Vergleich zu einer asynchronen
Gestaltung erreicht werden, wie dies zuvor mit Bezug zu 1 erläutert ist.
Daher kann die Echtzeituhreinheit 260 auf der Grundlage
geringer Leistungserfordernisse betrieben werden, was wichtig sein
kann für tragbare
Geräte,
in denen während
des Betriebs und auch während
im Wesentlichen inaktiver Zustände,
in denen die größten Teile
der Gesamtschaltung 200 deaktiviert sind, mit Ausnahme
der Echtzeituhreinheit 260, ein geringer Leistungsbedarf
deutlich die Anwendbarkeit der integrierten Schaltung 200 verbessert.
-
Mit
Bezug zu 3 wird ein typischer Prozessablauf
zur Herstellung der integrierten Schaltung 200 beschrieben,
wobei die Entwurfs- und Verifizierphase enthalten sind. Der Gesamtfertigungsprozess 300 beginnt
im Block 310, in welchem die Zugriffshäufigkeit der mehreren Speicherzellen
für ein
gegebenes Funktionsverhalten einer synchron gestalteten integrierten
Schaltung, die betrachtet wird, bestimmt wird. In diesem Zusammenhang
ist die Zugriffshäufigkeit
nicht nur als die Häufigkeit
des Ausführens
von Speicheroperationen an einer spezifizierten Speicherzelle zu
verstehen, sondern auch als der „Zeitpunkt” des Zugriffs, was bedeutet,
dass Mitglieder der gleichen Häufigkeitsgruppe
gemeinsam angesprochen werden, d. h. innerhalb einer vordefinierten Anzahl
an Taktzyklen des Systemtaktsignals CLK. D. h., in diesem Schritt
wird entschieden, welche Speicherzellen stets mit einer spezifizierten
Anzahl an Taktzyklen angesprochen werden, wobei der Zeitabstand
in Form an der Anzahl der Taktzyklen zu einer „benachbarten” Häufigkeitsgruppe,
d. h. einer Gruppe, auf die häufiger
oder weniger häufiger
zugegriffen wird, typischerweise deutlich größer ist als die Zeitspanne
der betrachteten Häufigkeitsgruppe,
so dass eine große
Anzahl an Taktzyklen „eingespart” werden kann,
indem die einzelnen Gruppen separat akti viert werden. Beispielsweise
sind für
Anwendungen in Form einer Echtzeituhr die Anzahl der Speicherzellen,
d. h. das Datenformat, sowie das Ausführen von Speicheroperationen,
gut vorhersagbar, da die diversen Echtzeitwerte regelmäßig gespeichert
werden müssen,
wobei die Speicherzellen, die „Sekunden” repräsentieren,
innerhalb einer spezifizierten An zahl an Taktzyklen angesprochen
werden, während
Ereignisse zum Zugreifen auf die Gruppe, die die „Minuten” repräsentier,
durch eine große
Anzahl an Taktzyklen „getrennt” ist, mit
der Ausnahme für
die „seltenen” Fälle, wenn
die Gruppe „Sekunden” und die Gruppe „Minuten” beide
zu aktualisieren sind.
-
Nach
dem Erkennen entsprechender Speicherzellen mit der gleichen vorhergesagten
Zugriffshäufigkeit
im Schritt 320 werden Speicherzellen mit identischer Zugriffshäufigkeit
zu einer Gruppe zusammengestellt und mit einem entsprechenden zugeordneten
Taktausblendemechanismus verknüpft. Auf
der Grundlage der Kenntnis der Anzahl und der Mitglieder der jeweiligen
Häufigkeitsgruppen
und der Anzahl der erforderlichen Taktausblendemechanismen wird
die synchrone Schaltung gestaltet, indem beispielsweise andere Funktionen
berücksichtigt werden,
die nicht direkt mit dem betrachteten Speicherbereich und der entsprechenden
dazugehörigen
Schaltung verknüpft
sind. Nach dem Erstellen des Entwurfs der Schaltung, was auf der
Grundlage gut etablierter automatischer Syntheseverfahren unter
Anwendung automatischer Synthesewerkzeuge bewerkstelligt werden
kann, wie dies im Stand der Technik bekannt ist, wird im Schritt 340 der
resultierende Schaltungsentwurf verifiziert, wobei gemäß der synchronen
Gestaltung formale statische Zeitanalyseverfahren eingesetzt werden
können.
Da der betrachtete Speicherbereich, der einen Teil einer Echtzeituhreinheit
repräsentieren
kann, wie dies zuvor erläutert
ist, mit einer synchronen Gestaltung vorgesehen wird, können folglich
die Schritte 330 und 340 mit hoher Effizienz im
Vergleich zu Schaltungsgestaltungen, die asynchrone Schaltungsbereiche enthalten,
ausgeführt
werden. Nach dem Verifizieren des Gesamtentwurfs kann die integrierte
Schaltung tatsächlich
als eine Hardware-Konfiguration eingerichtet werden, was bewerkstelligt
werden kann, indem ein oder mehrere Prototypen bereitgestellt werden
und danach der Entwurf verwendet wird, um Halbleiterbauelemente
während
der Massenfertigung gemäß dem Schritt 350 herzustellen.
In diesem Schritt wird eine geeignete Chiptechnologie eingesetzt.
D. h., entsprechende Fertigungsprozesse werden so ausgeführt, dass
einzelne Transistoren, Kondensatoren und dergleichen gemäß dem etablierten synchronen
Schaltungskonzept hergestellt werden, wobei die einzelnen Halbleiterbauelemente
vorbestimmte kritische Bauteilabmessungen aufweisen, etwa die Gatelänge von
Feldeffekttransistoren, wodurch geeignet angepasste Fertigungsprozesse
erforderlich sind, beispielsweise Photolithographieschritte, Abscheideschritte,
Ionenimplantationsschritte, Ätzschritte
und dergleichen. Wie zuvor erläutert
ist, hängt
die tatsächliche
Hardware-Implementierung des synchronen Schaltungsentwurfs von der
verfügbaren
Chiptechnologie ab, wobei jedoch der grundlegende Schaltungsentwurf
eine beliebige geeignete Chiptechnologie eingesetzt werden kann, solange
Rahmenbedingungen im Hinblick auf den Taktbaum mit den fertigungsspezifischen
Eigenheiten der betrachteten Chiptechnologie kompatibel sind.
-
Es
gilt also: Der hierin offenbarte Gegenstand stellt Techniken und
integrierte Schaltungen bereit, die auf der Grundlage einer synchronen
Gestaltung hergestellt sind, wobei in anschaulichen Ausführungsformen
eine Echtzeituhreinheit so gebildet wird, dass diese eine geringe
Leistungsaufnahme zeigt, indem ein entsprechender Speicherbereich
unter Anwendung von Taktausblendetechniken betrieben wird. D. h.,
da ein Zugriff auf Speicherzellen in dem Speicherbereich vorhersagbar
ist, werden Speicherzellen mit identischem Zugriffsverhalten kombiniert,
wodurch die Aktivierung aller Speicherzellen vermieden wird, wenn
eine Speicheroperation zum Lesen oder Schreiben von Daten ausgeführt wird. Folglich
wird eine geringe Leistungsaufnahme erreicht, wobei deutliche Vorteile
im Hinblick auf den Entwurf und die Verifizierung im Vergleich zu
asynchronen Entwürfen
möglich
sind.