EP1504326A2 - Verfahren zum gesteuerten abschalten von datenverarbeitungseinheiten - Google Patents

Verfahren zum gesteuerten abschalten von datenverarbeitungseinheiten

Info

Publication number
EP1504326A2
EP1504326A2 EP03732230A EP03732230A EP1504326A2 EP 1504326 A2 EP1504326 A2 EP 1504326A2 EP 03732230 A EP03732230 A EP 03732230A EP 03732230 A EP03732230 A EP 03732230A EP 1504326 A2 EP1504326 A2 EP 1504326A2
Authority
EP
European Patent Office
Prior art keywords
processor
functional units
register
signal processing
state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
EP03732230A
Other languages
English (en)
French (fr)
Inventor
Wolfram Drescher
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NXP BV
Original Assignee
Philips Semiconductors Dresden AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=29413829&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=EP1504326(A2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Philips Semiconductors Dresden AG filed Critical Philips Semiconductors Dresden AG
Publication of EP1504326A2 publication Critical patent/EP1504326A2/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3237Power saving characterised by the action undertaken by disabling clock generation or distribution
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the invention relates to a method for the functional control of the program and / or data flow in digital signal processors and processors, each with separate and separate modules for program and data flow control.
  • DSP fast digital signal processors
  • high energy consumption occurs in certain modules of the processor during signal processing.
  • the clock rate for reducing the energy consumption of the entire processor is primarily adapted to the tasks of signal processing (speed step mode). This means that the clock rate is gradually reduced when the processor is in standby or has a low load. An opposite sequence of steps is initiated in the event of continued performance requirements for the signal processing up to the highest possible clock rate.
  • a further disadvantage of the known methods for energy saving is that an algorithm-related shutdown of functional units is not possible, so that additional energy-saving effects cannot be exploited by temporarily switching off energy-intensive modules while certain algorithms are running in the various functional units.
  • the object of the invention is to expand the functioning of the processor in such a way that units of the processor with little or no time delays in their energy consumption are adapted to the current requirements of signal processing and that additional energy saving potentials in the processor are tapped by algorithm-related switching off of functional units.
  • the task according to the invention is achieved in that the clock supply for functional units is switched off by a hardware-related signal input from outside into the processor or by a software-related status output from the program flow of the processor in the time in which functional units are not used.
  • An advantageous embodiment of the method according to the invention consists in that a signal shutdown on an external connection or on a register of the processor causes the processor to be completely switched off in a "global stop" state.
  • the clock supply is switched off by a first and / or second gated clock cell directly at the clock supply gate of the respective functional unit of the processor and the processor assumes a "global DSP-HALT" state in which the processing unit including the interrupt in all functional units and the data and program memory no signal processing is carried out.
  • the "Global DSP STOP" status can only be resolved by canceling the triggering signal assignment on the external connection or on the register of the processor.
  • a special variant of the advantageous embodiment of the method according to the invention consists in that, in a triggered "global halt" state of the processor, in addition to the data and / or program memory, the processor undergoes a complete shutdown.
  • the aim of this solution is that, when the program memory is active, the program memory can be reloaded during the "global half" state of the processor and booting is possible.
  • the data memory is active during the "Global Half” state of the processor, it can be read out, for example for test purposes.
  • Another variant of the method is that a "software-related stop” status is triggered by the PCU (program control unit) when a stop command occurs on the program side.
  • the PCU which recognizes a halt command in the program sequence, decodes it and thereby subsequently the clock supply by means of a first and / or second gated clock cell, which represent the clock supply gates of the respective DP (data path) and also a further processing unit , turns off.
  • the aim of this solution is that the energy consumption is precisely adapted to the signal processing tasks in the processor.
  • energy-efficient adaptation to short-term changes in the signal processing requirement takes place.
  • a special embodiment of the solution of the task according to the invention is that during processing of the command to set up a new VLIW (Very Long Instruction Word) (ie this command is "in the pipeline"), signal processing on the functional units is prevented.
  • the VLIW unit transmits the command setup period of several cycles to the PCU via a special connection.
  • the PCU thereby triggers a "pipeline stop” state, which switches off the clock supply for the input and output registers of the respective DP and also of all functional units that are not involved in the construction of the VL W.
  • This state is not influenced by any software commands.
  • a special variant for the solution of the task according to the invention relates to processors whose processor architecture has a slice structure.
  • data paths are combined into slices, with a signal processing process being processed in a first slice with a respectively assigned bit width, regardless of the parallel signal processing process, in a second slice.
  • the slices are individually controlled by the SSM register bank which implements the commands of the PCU controlling each slice by means of an assigned bit of the SSM register bank.
  • the clock supply to the registers of the DP is switched on and off via the respective gated clock cell. This is done in such a way that each individual slice with its input register and / or accumulator and pipeline control register, depending on the signal processing involved, is temporarily stopped in its function by the SSM register and then released again.
  • the register file unit (RFU) and the memory access register of the processor always remain in operation and the SSM register bank can be written to by the PCU at any time.
  • the aim of this special solution is that the individual calculations are carried out in parallel in the slices in accordance with the SIMD command type, but that the calculation processes and their results are controlled by setting the SSM register bank and the results are thus made available at different times in the accumulators or result registers become.
  • Halt "state is assumed that the data to be calculated by the RFU 18 at the respective inputs of the data path 14 and at the inputs of the further processing unit 9.
  • This signal assignment interrupts the clock supply for the respective data path DP 4 and the further processing unit 9 of the processor 1. After the global stop signal has been withdrawn, the clock supply in the functional units is continued immediately.
  • the PCU 6 analyzes the incoming commands and recognizes a stop command. In this way, it drives a program stop line 16, which is connected to the first and second gated clock cell 3; 4 is connected.
  • the signal processing in the respective data path DP 14 to be controlled and the further functional unit 9 is thus controlled by software, the hardware configuration being used to implement the selection of the specific functional units whose signal processing can be switched by software commands. At the same time, it is ensured that the memory interface for signal processing with other functional units and external devices of processor 1 remains in operation regardless of the software-related control.
  • the VLIW unit 2 of the PCU 6 communicated the period for the prevention of signal processing.
  • the results in the slices are provided in the respectively associated accumulator 8 at different times.
  • One bit of the SSM register bank 13, which is connected to the data path 14 of the first or second slice 19; 20 is assigned.
  • the signal assignment of this bit is sent to the data path 14 of the first or second slice 19; 20 associated first and / or second gated clock cell 3; 4 fed and controls the signal processing in data path 14 individually, in the event of the present result in this data path 14, the clock supply at the associated input register and thus also the signal processing are prevented.
  • the assigned bit of the SSM register bank 13 is reset and all data paths of the slices begin the next signal processing by reading in the data provided by the RFU 18 at their input registers.
  • VLIW unit very long instruction word
  • first gated clock cell second gated clock cell
  • AGU address generating unit
  • PCU processing controlling unit
  • clock supply line accumulator further processing unit (with gated clock Cell) 0
  • Register of the further processing unit 1 external global stop signal input 2
  • SIMD command bus 3 SSM register bank (single slice mode) 4 data path 5 global stop line 6 program stop line 7
  • RFU register file unit 9 first slice 0 second slice

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Microcomputers (AREA)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zur funktionalen Steuerung des Programm- und/oder Datenflusses in digitalen Signalprozessoren und Prozessoren mit jeweils abgeschlossenen und voneinander getrennten Modulen zur Programm- und zur Datenflusskontrolle, die in parallelen Rechwerken arbeiten. Die erfindungsgemässe Aufgabenstellung, die Funktionsweise des Prozessors dahingehenden zu erweitern, dass die Einheiten des Prozessors ohne Zeitverzögerungen, in ihrem Energieverbrauch an die aktuellen Anforderungen der Signalverarbeitung angepasst und im Prozessor zusätzliche Energieeinsparpotentiale durch algorithmenbezogene Abschaltung von Funktionseinheiten erschlossen werden, wird dadurch gelöst, dass eine hardwarebedingte Signaleingabe von aussen in den Prozessor oder eine softwarebedingte Zustandsausgabe aus dem Programmfluss des Prozessors die Taktversorgung die jeweiligen Funktionseinheiten für die Zeit abschaltet, in der diese Funktionseinheiten nicht verwendet werden.

Description

Verfahren zum gesteuerten Abschalten von Datenverarbeitungseinheiten
Die Erfindung betrifft ein Verfahren zur funktionalen Steuerung des Programm- und/oder Datenflusses in digitalen Signalprozessoren und Prozessoren mit jeweils abgeschlossenen und voneinander getrennten Modulen zur Programm- und zur Datenfluss- kontrolle. In schnellen digitalen Signal-Prozessoren (DSP) , insbesondere in solchen mit ausgeprägter Datenpfadstruktur für die parallele Datenverarbeitung, tritt während der Signalverarbeitung ein hoher Energieverbrauch in bestimmten Modulen des Prozessors auf.
Gerade die hohen Anforderungen an die Signalverarbeitungsgeschwindigkeit der Prozessoren einerseits und anderseits die Anforderung, die Prozessoren in kompakten und mobil betriebenen Geräten einzusetzen und dabei eine lange Standby- und Betriebszeit mit einer Batterie (Akku) -Stromversorgung zu realisieren, bergen eine Diskrepanz der Entwicklungsrichtung.
Um diesen Widerspruch zu lösen, wird beim Stand der Technik, neben dem Einsatz grundsätzlich energiesparender Technologien, vorwiegend die Taktrate zur Reduzierung des Energieverbrauches des gesamten Prozessors an die Aufgaben der Signalverarbeitung angepasst (Speedstep-Mode) . Das heißt, bei einem Standby oder einer geringen Auslastung des Prozessors wird die Taktrate schrittweise zurückgefahren. Eine gegenteilige Schrittfolge wird bei anhaltender Leistungsanforderungen an die Signalverarbeitung bis zur höchstmöglichen Taktrate eingeleitet.
Diese Vorgehensweise zur Reduzierung des Energieverbrauches birgt den Nachteil, dass die effiziente Anpassung an die gefor- derte SignalVerarbeitung immer nur mit einer Zeitverzögerung auftritt. Außerdem wird dadurch keine spezielle Anpassung an bestimmte Funktionseinheiten, insbesondere solchen, die für den hohen Leistungs erbrauch verantwortlich sind, erreicht.
So sind solche Signalprozessoren, die durch externe Signalbelegungen eine sofortige Energiereduzierung ausführen, beim Stand der Technik nicht bekannt.
Weiterhin ist bei den bekannten Verfahren zur Energieeinsparung nachteilig, dass eine algorithmenbezogene Abschaltung von Funktionseinheiten nicht möglich ist, sodass zusätzliche Energiespareffekte durch temporäres Abschalten von energieverbrauchs- intensiven Modulen während des Ablaufes bestimmter Algorithmen in den verschiedenen Funktionseinheiten nicht ausgeschöpft werden können.
Die Aufgabe der Erfindung besteht darin, die Funktionsweise des Prozessors dahingehend zu erweitern, dass Einheiten des Prozes- sors mit geringen oder ohne Zeitverzögerungen in ihrem Energieverbrauch an die aktuellen Anforderungen der Signalverarbeitung angepasst und dass im Prozessor zusätzliche Energieeinsparpotentiale durch algorithmenbezogene Abschaltung von Funktionseinheiten erschlossen werden.
Die erfindungsgemäße Lösung der Aufgabenstellung wird dadurch erreicht, dass die TaktVersorgung für Funktionseinheiten durch eine hardwarebedingte Signaleingabe von außen in den Prozessor oder durch eine softwarebedingte Zustandsausgabe aus dem Pro- grammfluss des Prozessors in der Zeit abgeschalten wird, in der Funktionseinheiten nicht verwendet werden.
Eine vorteilhafte Ausführung des erfindungsgemäßen Verfahrens besteht darin, dass durch eine Signalbelegung an einem externen Anschluss oder an einem Register des Prozessors dieser in einem "Global Halt" -Zustand eine gesamte Abschaltung erfährt. Dadurch wird die Taktversorgung durch eine erste und/oder zweite Gated-Clock-Zelle unmittelbar am Taktversorgungstor der jeweiligen Funktionseinheit des Prozessors abgeschaltet und der Prozessor nimmt einen "Global-DSP-HALT"-Zustand ein, bei dem in allen Funktionseinheiten einschließlich Interrupt verarbeitende Einheit sowie dem Daten- und dem Programmspeicher keine Signalverarbeitung vorgenommen wird.
Nur durch eine Rücknahme der auslösenden Signalbelegung am externen Anschluss oder am Register des Prozessors wird der "Glo- bal-DSP-HALT" -Zustand wieder aufgelöst.
Bei dieser Lösung wird die verzögerungsfreie, unmittelbare und genaue Anpassung des Energieverbrauches auf die je Prozessor vorgenommene Signalverarbeitung realisiert. Es können auch kurzzeitige Änderungen an die Anforderung der Signalverarbeitung energieeffizient angepasst und große Energiespareffekte erreicht werden, indem eine Verlustleistung vermieden wird, die der Prozessor in auftretenden Wartezeiten, z.B. durch ausgeführte NOP (no-operation) -Befehle, sonst verbraucht.
Eine spezielle Variante der vorteilhaften Ausführung des erfindungsgemäßen Verfahrens besteht darin, dass in einem ausgelös- ten "Global Halt" -Zustand des Prozessors außer dem Daten- und/oder Programmspeicher der Prozessor eine gesamte Abschaltung erfährt .
Diese Lösung zielt darauf ab, dass bei aktivem Programmspeicher während des "Global Half'-Zustandes des Prozessors der Programmspeicher nachgeladen werden kann und ein Booten möglich ist.
Bei aktivem Datenspeicher während des "Global Half'-Zustandes des Prozessors kann dieser, z.B. zu Testzwecken, ausgelesen werden. Eine weitere Variante des Verfahrens besteht darin, dass bei einem Programmseitig auftretenden Halt-Befehl ein "softwarebe- dingter-Halt" -Zustand von der PCU (Programm-Control-Unit) aus- gelöst wird.
Das geschieht, indem die PCU, die im Programmablauf einen Halt- Befehl erkennt, diesen dekodiert und dadurch nachfolgend die Taktversorgung mittels einer ersten und/oder zweiten gated Clock-Zelle, welche die Taktversorgungstore des jeweiligen DP (Datenpfades) und ebenso einer weiteren Verarbeitungseinheit repräsentieren, abschaltet.
Dadurch wird in diesen bestimmten Funktionseinheiten keine Sig- nalVerarbeitung vorgenommen, wobei das Datenspeicherinterface zum Datenaustausch mit anderen Funktionseinheiten und externen Geräten in Betrieb bleibt.
Diese Lösung zielt darauf ab, dass eine genaue Anpassung des Energieverbrauches an die Aufgaben der Signalverarbeitung im Prozessor vorgenommen wird. Auch hierbei erfolgt eine energieeffiziente Anpassung an kurzzeitige Änderungen der Anforderung der Signalverarbeitung.
Diese Anpassung kann aber softwarebedingt gezielt auf bestimmte abzuschaltende energiekritische Funktionseinheiten angewendet werden. Andere Funktionseinheiten, die z.B. keine große Verlustleistung bei der Signalverarbeitung aufweisen und/oder zur schnellen Kommunikation unbedingt funktionsfähig sein müssen, bleiben in Betrieb.
Eine spezielle Ausführung der erfindungsgemäßen Lösung der Aufgabenstellung besteht darin, dass während der Befehlsabarbeitung zum Aufbau eines neuen VLIW (Very-Long-Instruction-Word) (d.h. dieser Befehl ist "in der Pipeline") eine Signalverarbeitung an den Funktionseinheiten unterbunden wird. Dabei wird von der VLIW-Einheit über eine spezielle Verbindung der Befehlsaufbau-Zeitraum von mehreren Takten der PCU übermittelt.
Die PCU löst dadurch einen "Pipeline-Halt"-Zustand aus, der die Taktversorgung für die Eingangs- und Ausgangsregister des jeweiligen DP und weiterhin aller Funktionseinheiten, die nicht am Aufbau des VL W beteiligt sind, abschaltet.
Hierbei wird dieser Zustand von keinen Software Kommandos be- einflusst .
Eine spezielle Variante für die erfindungsgemäße Lösung der Aufgabenstellung betrifft solche Prozessoren, deren Prozessor- Architektur eine Slice-Struktur aufweist.
Hierbei werden Datenpfade zu Slices zusammengefasst, wobei mit einer jeweilig zugewiesenen Bit-Breite in einem ersten Slice ein Signal erarbeitungsvorgang unabhängig vom parallel ablaufenden SignalverarbeitungsVorgang in einem zweiten Slice abgearbeitet wird.
Diese parallelen Signalverarbeitungsvorgänge werden mit der Be- fehlsart SIMD in den DP, die den jeweiligen Slice zugehören, ausgeführt. Es werden die Slices einzeln durch die PCU mittels eines von der SSM(Single Slice Mode) -Registerbank jeweilig ausgegebenen "Single-Slice-Hal ' -Zustandes in ihrer Signalverarbeitung angehalten.
Individuell werden die Slices dadurch gesteuert, dass von der SSM-Registerbank, welche die Befehle der PCU umsetzt, jeder Slice durch ein zugeordnetes Bit der SSM-Registerbank angesteuert wird. Über die jeweilige Gated-Clock-Zelle wird die Taktversorgung der Register der DP zu- und abgeschaltet. Das geschieht auf solche Weise, dass jeder einzelne Slice mit seinem Eingangsregister und/oder Akkumulator und Pipeline- Steuerregister je nach anfallender Signalverarbeitung in seiner Funktion zwischenzeitlich durch das SSM-Register gestoppt und danach wieder freigegeben wird.
Dabei bleiben die Register-File-Einheit (RFU) und das Speicherzugriffsregister des Prozessors ständig in Funktion und die SSM-Registerbank ist jederzeit durch die PCU beschreibbar.
Diese spezielle Lösung zielt darauf ab, dass in den Slices entsprechend der Befehlsart SIMD die einzelnen Berechnungen parallel durchgeführt werden, aber die Berechnungsabläufe und ihre Ergebnisse durch Setzen der SSM-Registerbank gesteuert werden und dadurch die Ergebnisse zu unterschiedlichen Zeitpunkten in den Akkumulatoren bzw. ErgebnisregiStern bereitgestellt werden.
Somit kann zum Energiesparen nach der Bereitstellung der Ergeb- niswerte in den einzelnen Slices, die nicht mehr ergebnisträchtige Signalverarbeitung unterbunden werden, bis mit einem weiteren SIMD Befehl parallel in den Slices weiter gearbeitet wird.
Die Erfindung soll nachfolgend anhand eines Ausführungsbei- spieles für die einzelnen Halt-Zustände näher erläutert werden.
In der Zeichnungsfigur liegt ein Blockschaltbild des Prozessors vor, in dem der Teil mit den zugehörigen Funktionseinheiten aufgeführt wird, welcher für das erfindungsgemäße Energiemanagement notwendig ist.
Für den Fall einer energiesparenden Wirkung durch den "Global-
Halt" -Zustand wird davon ausgegangen, dass die zu berechnenden Daten von der RFU 18 an den jeweiligen Eingängen des Datenpfa- des 14 und an den Eingängen der weiteren Verarbeitungseinheit 9 bereitgestellt werden.
Nach dem Anlegen eines externen Signals mit der erforderlichen Signal-Belegung wird dieses über eine Global-Halt-Leitung 15 an die erste und zweite Gated-Clock-Zelle 3; 4 angelegt.
Diese Signalbelegung unterbricht die Taktversorgung für den jeweiligen Datenpfad DP 4 und der weiteren Verarbeitungseinheit 9 des Prozessors 1. Nach der Rücknahme des Global-Halt-Signales wird die Taktversorgung in den Funktionseinheiten unmittelbar fortgesetzt.
Im Falle eines "softwarebedingten-Half'-Zustandes analysiert die PCU 6 die eingehenden Befehle und erkennt einen Halt- Befehl. Dadurch steuert sie eine Programm-Halt-Leitung 16 an, welche jeweils an der ersten und zweiten Gated-Clock-Zelle 3; 4 angeschlossen ist.
Über die erste und zweite Gated-Clock-Zelle 3; 4 wird die Taktversorgung nur für bestimmte Funktionseinheiten durch die Signal-Belegung der Programm-Halt-Leitung 16 geschaltet.
Damit wird die Signal erarbeitung in dem zu steuernden jeweili- gen Datenpfad DP 14 und der weiteren Funktionseinheit 9 softwarebedingt gesteuert, wobei durch die Hardwarekonfiguration die Auswahl der bestimmten Funktionseinheiten, deren Signalverarbeitung durch Softwarebefehle schaltbar ist, realisiert wird. Gleichzeitig wird abgesichert, dass das Speicherinterface zur Signalverarbeitung mit anderen Funktionseinheiten und externen Geräten des Prozessors 1 unabhängig von der softwarebedingten Steuerung in Betrieb bleibt.
Bei einer energiesparenden Steuerung der Signal erarbeitung in den Funktionseinheiten, infolge einer Ausgabe des "Pipeline- Halt"-Zustandes, wird über eine spezielle Verbindung von der VLIW-Einheit 2 der PCU 6 der Zeitraum für die Unterbindung der Signalverarbeitung mitgeteilt.
Während dieser Zeit wird in der VLIW-Einheit 2 jeweils ein neu- es VLIW aufgebaut. Innerhalb der Aufbauzeit ist eine neue Instruktionsausgabe nicht möglich. Darum wird diese Zeit auch zur Energieeinsparung genutzt und die Signalverarbeitung wird in den Datenpfaden dadurch unterbunden, dass die Programm-Hait- Leitung 16 aktiviert wird, wobei über diese Leitung die Signal- belegung an die erste und/oder zweite Gated-Clock-Zelle 3; 4 des jeweiligen Datenpfades DP 14 herangeführt wird.
Damit wird die SignalVerarbeitung energiesparend in den Datenpfaden DP 14 unterbunden.
Für den Fall, dass die Ausgabe des " Single-Slice-Halt" - Zustandes energiesparend wirkt, ist Voraussetzung, dass ein SIMD-Befehl über den SIMD-Bus 12 von der VLIW-Einheit 2 ausgegeben wird. Dieser einzelne SIMD-Befehl löst eine mehrfache Da- tenverarbeitung in dem jeweiligen einem ersten oder zweiten
Slice 19; 20 zugehörigen Datenpfad 14 aus. Die Ergebnisse in den Slices werden in dem jeweilig zugehörigen Akkumulator 8 zu unterschiedlichen Zeitpunkten bereitgestellt.
Hierbei wird jeweils ein Bit der SSM-Registerbank 13, welches zu dem Datenpfad 14 des ersten oder zweiten Slice 19; 20 zugeordnet ist, gesetzt.
Die- Signalbelegung dieses Bits wird an die zum jeweiligen Da- tenpfad 14 des ersten oder zweiten Slice 19; 20 zugehörige erste und/oder zweite Gated-Clock-Zelle 3; 4 zugeführt und steuert die Signal erarbeitung im Datenpfad 14 individuell, indem bei vorliegendem Ergebnis in diesem Datenpfad 14 die Taktversorgung am zugehörigen Eingangsregister und damit auch die Signalverar- beitung unterbunden wird. Bei der Ausgabe eines weiteren SIMD-Befehl auf dem SIMD-Bus 12, z.B. nach Bereitstellung des letzten in einem Datenpfad 14 des jeweilig im ersten oder zweiten Slice 19; 20 verarbeiteten Ergebnisses, wird das zugeordnete Bit der SSM-Registerbank 13 zurückgesetzt und alle Datenpfade der Slices beginnen die nächste Signalverarbeitung, indem sie an ihren Eingangsregistern die von der RFU 18 bereitgestellten Daten einlesen.
Verfahren zum gesteuerten Abschalten von Datenverarbeitungs- einheiten
Bezugszeichenliste
Prozessor VLIW-Einheit (Very-Long-Instruction-Word) erste Gated-Clock-Zelle zweite Gated-Clock-Zelle AGU (Address-Generating-Unit) PCU (Process-Controlling-Unit) Taktversorgungsleitung Akkumulator weitere Verarbeitungseinheit (mit Gated-Clock-Zelle) 0 Register der weiteren Verarbeitungseinheit 1 externer Global-Halt-Signaleingang 2 SIMD-Befehls-Bus 3 SSM-Registerbank (Single-Slice-Mode) 4 Datenpfad 5 Global-Halt-Leitung 6 Programm-Halt-Leitung 7 SIMD-Datenpfad-Steuerleitung 8 RFU (Register-File-Einheit) 9 erster Slice 0 zweiter Slice

Claims

Verfahren zum gesteuerten Abschalten von Datenverarbeitungs- einheitenPatentansprüche
1. Verfahren zur funktionalen Steuerung des Programmund/oder Datenflusses in digitalen Signalprozessoren und Prozessoren mit jeweils abgeschlossenen und voneinander getrennten Modulen zur Programm- und zur Datenflusskon- trolle, die in parallelen Rechwerken arbeiten, dadurch ge- kennzeichnet, ^dass die Taktversorgung für die Funktionseinheiten durch eine hardwarebedingte Signaleingabe von außen in den Prozessor (1) oder durch eine softwarebedingte Zustandsausgabe aus dem Programmfluss des Prozessors (1) in der Zeit abgeschalten wird, in der die Funktions- einheiten nicht verwendet werden.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass durch eine Signalbelegung an einem externen Anschluss oder an einem Register des Prozessors (1) dieser in einem "Glo- bal Half'-Zustand eine gesamte Abschaltung erfährt, indem die Taktversorgung durch eine erste und/oder zweite Gated- Clock-Zelle (3) , (4) unmittelbar am jeweiligen Taktversorgungstor des Prozessors (1) abgeschaltet wird, dass der Prozessor (1) einen "Global-DSP-HALT" -Zustand einnimmt, bei dem in allen Funktionseinheiten, einschließlich Interrupt verarbeitender Einheit, sowie dem Daten- und dem Programmspeicher keine Signalverarbeitung vorgenommen wird, wobei nur durch eine Rücknahme der auslösenden Signalbelegung am externen Global-Halt-Signaleingang (11), oder am Register des Prozessors (1) der "Global-DSP- HALT" -Zustand wieder aufgelöst wird.
3. Verfahren nach Ansprüchen 1 und 2, dadurch gekennzeichnet, dass in einem ausgelösten "Global Halt "-Zustand des Pro- zessors (1) außer dem Daten- und/oder Programmspeicher der Prozessor (1) eine gesamte Abschaltung erfährt.
4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass bei einem programmseitig auftretenden Halt-Befehl dieser von der PCU (6) erkannt, dekodiert und ein "softwarebedingter-Halt" -Zustand ausgelöst wird, indem die Taktversorgung mittels einer ersten und/oder zweiten gated Clock- Zelle (3), (4), welche die Taktversorgungstore des jeweiligen DP (Datenpfades) (14) und ebenso einer weiteren Verar- beitungseinheit (9) repräsentieren, abgeschaltet und dadurch in bestimmten Funktionseinheiten keine Signalverarbeitung vorgenommen wird, wobei das Datenspeicherinterface zum Datenaustausch mit anderen Funktionseinheiten und externen Geräten in Betrieb bleibt .
5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass während der Befehlsabarbeitung zum Aufbau eines neuen VLIW eine Signalverarbeitung an den Funktionseinheiten unterbunden wird, indem der PCU (6) über eine spezielle Verbin- düng der Befehlsaufbau-Zeitraum von mehreren Takten von der VLIW-Einheit (2) übermittelt wird und dadurch die PCU (6) einen "Pipeline-Halt "-Zustand auslöst, der die Taktversorgung für die Eingangs- und Ausgangsregister des jeweiligen DP (14) und weiterhin alle Funktionseinheiten, die nicht am Aufbau des VLIW beteiligt sind, abschaltet, wobei dieser Zustand von keinen Software Kommandos beein- flusst wird.
6. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass während der parallelen Signalverarbeitung mit der Befehlsart SIMD in dem jeweiligen DP (14) eines ersten oder zwei- ten Slice (19) , (20) jeder zugehörige Slice einzeln durch die PCU (6) mittels eines von der SSM-Registerbank (13) jeweilig ausgegebenen "Single-Slice Half'-Zustandes in seiner Signalverarbeitung angehalten und diese individuell dadurch gesteuert werden, dass von der SSM- Registerbank (13), welche die Befehle der PCU (6) umsetzt, jeder Slice durch ein zugeordnetes Bit der SSM- Registerbank (13) angesteuert wird, dass über die jeweilige erste und zweite Gated-Clock-Zelle (3, 4) die TaktVersorgung der Register der DP (14) zu- und abgeschaltet wird, dass das Schalten der Taktversorgung auf solche Weise vorgenommen wird, dass jeder einzelne Slice mit seinem Eingangsregister und/oder Akkumulator (8) und Pipeline- Steuerregister je nach anfallender Signalverarbeitung in seiner Funktion zwischenzeitlich durch ein Register der SSM-Registerbank (13) gestoppt und danach wieder freigegeben wird, dass dabei die Register-File-Einheit (RFU) (18) und das Speicherzugriffsregister des Prozessors (1) ständig in Funktion bleiben und die SSM-Registerbank (13) jederzeit durch die PCU (6)besehreibbar ist.
EP03732230A 2002-05-14 2003-05-13 Verfahren zum gesteuerten abschalten von datenverarbeitungseinheiten Ceased EP1504326A2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE10221529A DE10221529A1 (de) 2002-05-14 2002-05-14 Verfahren zum gesteuerten Abschalten von Datenverarbeitungseinheiten
DE10221529 2002-05-14
PCT/DE2003/001539 WO2003096586A2 (de) 2002-05-14 2003-05-13 Verfahren zum gesteuerten abschalten von datenverarbeitungseinheiten

Publications (1)

Publication Number Publication Date
EP1504326A2 true EP1504326A2 (de) 2005-02-09

Family

ID=29413829

Family Applications (1)

Application Number Title Priority Date Filing Date
EP03732230A Ceased EP1504326A2 (de) 2002-05-14 2003-05-13 Verfahren zum gesteuerten abschalten von datenverarbeitungseinheiten

Country Status (7)

Country Link
US (1) US7685439B2 (de)
EP (1) EP1504326A2 (de)
JP (1) JP4174472B2 (de)
CN (1) CN100373295C (de)
AU (1) AU2003239760A1 (de)
DE (1) DE10221529A1 (de)
WO (1) WO2003096586A2 (de)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7395419B1 (en) * 2004-04-23 2008-07-01 Apple Inc. Macroscalar processor architecture
US7617496B2 (en) 2004-04-23 2009-11-10 Apple Inc. Macroscalar processor architecture
US7937606B1 (en) 2006-05-18 2011-05-03 Nvidia Corporation Shadow unit for shadowing circuit status
JP4757836B2 (ja) * 2007-05-11 2011-08-24 パナソニック株式会社 データ処理装置
US8316252B2 (en) * 2008-05-30 2012-11-20 Advanced Micro Devices, Inc. Distributed clock gating with centralized state machine control
CN101841646B (zh) * 2009-03-18 2012-10-17 原相科技股份有限公司 图像感测装置及图像感测方法
JP5578811B2 (ja) * 2009-06-30 2014-08-27 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及びプログラム
JP5874399B2 (ja) * 2012-01-05 2016-03-02 株式会社リコー 処理装置
US9384055B2 (en) * 2012-04-16 2016-07-05 International Business Machines Corporation Programmatic load-based management of processor population
US9274591B2 (en) * 2013-07-22 2016-03-01 Globalfoundries Inc. General purpose processing unit with low power digital signal processing (DSP) mode
US10447461B2 (en) * 2015-12-01 2019-10-15 Infineon Technologies Austria Ag Accessing data via different clocks
EP3410243B1 (de) * 2016-01-28 2020-10-14 Fuji Corporation Energieverwaltungssystem für eine produktionslinie
CN105929928B (zh) * 2016-04-25 2018-11-27 天津大学 一种指令级并行处理器低功耗设计优化方法
CN111124496B (zh) * 2019-12-25 2022-06-21 合肥中感微电子有限公司 一种多周期指令处理方法、处理器和电子设备

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5271950A (en) 1975-12-11 1977-06-15 Nec Corp Clock control system
JP2762670B2 (ja) 1990-03-30 1998-06-04 松下電器産業株式会社 データ処理装置
JP3529805B2 (ja) 1992-03-27 2004-05-24 ナショナル・セミコンダクター・コーポレイション ハードウェア制御パワー管理機能と選択可能な入出力制御ピンとを有するマイクロプロセッサ
US5473767A (en) * 1992-11-03 1995-12-05 Intel Corporation Method and apparatus for asynchronously stopping the clock in a processor
US5918061A (en) * 1993-12-29 1999-06-29 Intel Corporation Enhanced power managing unit (PMU) in a multiprocessor chip
EP0809825A1 (de) * 1995-02-14 1997-12-03 Vlsi Technology, Inc. Verfahren und vorrichtung zur reduzierung des leistungsverbrauches in digitalen elektronischen schaltungen
JPH08234861A (ja) 1995-02-28 1996-09-13 Fujitsu Ltd 低消費電力プロセッサ
US5719800A (en) * 1995-06-30 1998-02-17 Intel Corporation Performance throttling to reduce IC power consumption
JPH09200026A (ja) 1996-01-22 1997-07-31 Oki Electric Ind Co Ltd Lsi論理回路
US6564328B1 (en) * 1999-12-23 2003-05-13 Intel Corporation Microprocessor with digital power throttle
EP1117031B1 (de) * 2000-01-14 2007-07-11 Texas Instruments France Mikroprozessor mit ermässigtem Stromverbrauch
US6845445B2 (en) * 2000-05-12 2005-01-18 Pts Corporation Methods and apparatus for power control in a scalable array of processor elements
US6895520B1 (en) * 2001-03-02 2005-05-17 Advanced Micro Devices, Inc. Performance and power optimization via block oriented performance measurement and control
US7051221B2 (en) * 2003-04-28 2006-05-23 International Business Machines Corporation Performance throttling for temperature reduction in a microprocessor

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO03096586A2 *

Also Published As

Publication number Publication date
WO2003096586A3 (de) 2004-07-01
AU2003239760A8 (en) 2003-11-11
US7685439B2 (en) 2010-03-23
US20060156062A1 (en) 2006-07-13
AU2003239760A1 (en) 2003-11-11
WO2003096586A2 (de) 2003-11-20
DE10221529A1 (de) 2003-12-04
CN100373295C (zh) 2008-03-05
JP4174472B2 (ja) 2008-10-29
JP2005525648A (ja) 2005-08-25
CN1653407A (zh) 2005-08-10

Similar Documents

Publication Publication Date Title
EP1504326A2 (de) Verfahren zum gesteuerten abschalten von datenverarbeitungseinheiten
DE69907512T2 (de) Gerät und verfahren zur automatischen frequenzregelung einer zentralen verarbeitungseinheit
EP0952520B1 (de) Vorrichtung zur fehlertoleranten Ausführung von Programmen
DE60007702T2 (de) Schlafmoduseinschaltung in einem slave-gerät
EP0948842A1 (de) VERFAHREN ZUM SELBSTÄNDIGEN DYNAMISCHEN UMLADEN VON DATENFLUSSPROZESSOREN (DFPs) SOWIE BAUSTEINEN MIT ZWEI- ODER MEHRDIMENSIONALEN PROGRAMMIERBAREN ZELLSTRUKTUREN (FPGAs, DPGAs, o.dgl.)
DE3311880A1 (de) Steuerung fuer multiprozessor-system
DE3248680A1 (de) Microcomputer mit energiespar-betriebszustand
EP1744236B1 (de) Konfiguration von Bauelementen bei einem Übergang von einem Niedrigleistungs-Betriebsmodus in einen Normalleistungs-Betriebsmodus
DE69909924T2 (de) Verfahren und Vorrichtung zur Reduzierung der Verlustleistung in einer Schaltung
DE19983975B3 (de) Programmierbares Steuersystem und Rücksetz-Steuerverfahren für das programmierbare Steuersystem
DE69333445T2 (de) Mikroprozessor mit hardwaregesteuerter Leistungsverwaltung und auswählbaren Eingangs-/Ausgangssteuerungssteckerstiften und Verfahren hierfür
DE3101270C2 (de) Rechneranordnung zur Wortverarbeitung mit einer Einrichtung zur Funktionserweiterung
DE2507405A1 (de) Verfahren und anordnung zum synchronisieren der tasks in peripheriegeraeten in einer datenverarbeitungsanlage
DE102017113698A1 (de) System und Verfahren zur Mikrocontrollerleistungsreduzierung
DE10138918A1 (de) Programmgesteuerte Einheit
DE10357284A1 (de) Multispannungsversorgung
WO2004109921A1 (de) Integrierte schaltung mit stromsparmodus und verfahren zum betreiben der integrierten schaltung
DE19624140A1 (de) System zum Übertragen von Daten
DE2535924C2 (de) Verfahren für den Betrieb der Steuereinrichtung einer Vermittlungsanlage, insbesondere Fernsprechvermittlungsanlage
DD218490A1 (de) Mikrorechnersteuereinheit fuer die stellantriebe von strickmaschinen, insbesondere flachstrickmaschinen
WO2003096184A2 (de) Verfahren und anordnung zur leistungseffizienten steuerung von prozessoren
DE102004017745B4 (de) Anordnung und Verfahren zur Datensicherung
DE102006004989A1 (de) Datenverarbeitungssystem mit mehreren Ausführungseinheiten
WO2011120562A1 (de) Automatisierungskomponente mit einem energiesparenden betriebszustand
DE102006043456B4 (de) Verfahren zum Auffrischen des Inhalts einer Speicherzelle einer Speicheranordnung sowie entsprechende Speicheranordnung

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20041106

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL LT LV MK

DAX Request for extension of the european patent (deleted)
RBV Designated contracting states (corrected)

Designated state(s): DE FR GB

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: NXP SEMICONDUCTORS GERMANY GMBH

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: NXP B.V.

17Q First examination report despatched

Effective date: 20090525

REG Reference to a national code

Ref country code: DE

Ref legal event code: R003

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED

18R Application refused

Effective date: 20110901