Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR RECOGNISING A CORRECT COMMAND ENTRY ADDRESS, WHEN COMMAND WORDS OF DIFFERENT LENGTHS ARE USED
Document Type and Number:
WIPO Patent Application WO/2003/065203
Kind Code:
A2
Abstract:
The invention relates to a method for recognising a correct command entry address, according to which each command word has a predetermined start bit code, which indicates the length of said word.

Inventors:
DIRSCHERL GERD (DE)
SMOLA MICHAEL (DE)
Application Number:
PCT/DE2003/000218
Publication Date:
August 07, 2003
Filing Date:
January 27, 2003
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
INFINEON TECHNOLOGIES AG (DE)
DIRSCHERL GERD (DE)
SMOLA MICHAEL (DE)
International Classes:
G06F9/26; G06F9/30; G06F9/318; G06F9/32; G06F11/10; (IPC1-7): G06F9/26
Foreign References:
US6209079B12001-03-27
US6049863A2000-04-11
Attorney, Agent or Firm:
Epping, Hermann Fischer Patentanwaltsgesellschaft Mbh (München, DE)
Download PDF:
Claims:
Patentansprüche
1. Verfahren zum Erkennen einer korrekten Befehls Einsprungadresse, bei Verwendung unterschiedlich langer Be fehlsworte, bei dem jedes Befehlswort eine für die Länge des Befehlswortes entsprechende vorbestimmte Startbitcodierung (a) aufweist.
2. Verfahren nach Anspruch 1, bei dem am Beginn eines langen Befehlswortes nach einem ersten Startbit (a) ein zweites Startbit (b) folgt.
3. Verfahren nach Anspruch 2, bei dem eine zweite Hälfte des langen Befehlswortes mit einem dritten Startbit (a) beginnt, das mit dem ersten Startbit (a) übereinstimmt.
4. Verfahren nach Anspruch 3, bei dem dem dritten Startbit (a) ein viertes Starbit (b) folgt, das zum zweiten Startbit einen komplementären Wert aufweist.
Description:
Beschreibung Verfahren zum Erkennen einer korrekten Befehls-Einsprung- Adresse bei Verwendung unterschiedlich langer Befehlsworte Die Erfindung betrifft ein Verfahren zum Unterscheiden einer korrekten Befehls-Einsprung-Adresse bei Verwendung unter- schiedlich langer Befehlsworte gemäß Patentanspruch 1. Werden für den Befehlscode eines Prozessors unterschiedlich lange Befehlsworte verwendet, so ist es möglich, daß der Programm- zähler nicht auf die Einsprungsadresse eines Befehlswortes zeigt. Werden beispielsweise Befehlsworte normaler Länge und solche mit halber Länge der normallangen Befehlsworte verwen- det, so ist es möglich, daß der Adreßzähler auf die Mitte, daß heißt auf die. zweite Worthälfte eines normallangen Be- fehlswortes den Adreßzeiger richtet. Somit kann das Befehls- wort nicht korrekt ausgelesen werden. Ein solches unkorrektes Einspringen in die Mitte eines Befehlswortes wurde gemäß dem intern vorliegenden Stand der Technik bisher geduldet, da man davon ausgeht. Dabei wird eine Folge von fehlerhaften Befehlen ausgeführt bis sich der Befehlszähler wieder mit dem Befehls- strom synchronisiert.

Der Erfindung liegt somit die Aufgabe zugrunde ein Verfahren zur Erkennung korrekter Befehls-Einsprung-Adressen vorzuse- hen, auch wenn unterschiedliche lange Befehlsworte verwendet sind.

Diese Aufgabe wird erfindungsgemäß mit den in Patentanspruch 1 angegebenen Maßnahmen gelöst. Dadurch, daß bei Verwendung unterschiedlich langer Befehlsworte, jedes Befehlswort eine für die Länge des Befehlswortes entsprechende vorbestimmte Startbitcodierung (A) aufweist, sind unterschiedlich lange Befehlsworte leicht unterscheidbar. Diese Codierung weist zu-

sätzlich den Vorteil auf, daß jeder Befehl implizit die Be- fehlslänge enthält. Gesonderte Befehle, um diese Information bereitzustellen erübrigen sich damit.

Weitere vorteilhafte Ausgestaltungen sind in den Unteransprü- chen angegeben, wodurch ein Einspringen in die Mitte eines langen Befehlswortes leicht erkennbar wird.

Nachfolgend wird die Erfindung unter Erläuterung eines Aus- führungsbeispiels unter Bezugnahme auf die Zeichnung näher erläutert.

In der Figur ist ein Ausführungsbeispiel ein normal langes, d. h. 32 Bit langes Befehlswort (B) symbolisch dargestellt.

Dabei steht an der Stelle des niedrigsten Bits, das mit"a" gekennzeichnet ist und dem ersten Bit erspricht, ein Start- bit, das in diesem Fall als"0"ausgebildet ist. Beim 17. Bit handelt es sich um das Startbit der zweiten Befehlsworthälf- te, das mit"a"gekennzeichnet ist. Mit A) ein halblanges Befehlswort dargestellt. Dieses weist an der ersten Stelle ebenfalls ein Startbit auf, das ebenfalls mit"a"gekenn- zeichnet ist und den Wert"1"aufweist.

Zu Beginn eines jeden Befehlswortes kann somit leicht beim Einsprung auf dieser Adresse überprüft werden, welchen Wert das Startbit hat und ob es sich um ein halblanges oder normal langes Befehlswort handelt.

Wird nach dem Einsprung"zu einem langen Befehlswort durch überprüfung des ersten Bits (a, a) erkannt, daß es sich um ein normal langes Befehlswort handelt, wird das zweite Start- bit (b) überprüft. Weist dieses den Wert"0"auf ist der Ein- sprung korrekt erfolgt.

Wird unerlaubter Weise in die Befehlswortmitte des normal langen Befehlswortes eingesprungen, nämlich zum 17. Bit, so wird das zweite Startbit (a), entsprechend mit dem Wert"0" gelesen. Bei der Überprüfung des zweiten Startbits (b) wird am Wert l"somit sofort erkannt, daß es sich hierbei um kei- ne korrekte Einsprungsadresse handelt und ein Lesen der zwei- ten Befehlsworthälfte ist unterbindbar.

Auf die angegebene Weise sind lange von halblangen Befehlen leicht unterscheidbar und es ist mit einfachen Mitteln ver- hindert, daß in unerlaubter Weise in die Mitte eines langen Befehlswortes eingesprungen wird und ein nicht zugelassener Befehl, nämlich die zweite Befehlsworthälfte, gelesen wird.

Für den Befehlscode bedeutet das beschriebene verfahren, daß bei 16 Bit Befehlsworten nur 15 Bit und bei 32 Bit Befehls- worten nur 30 zur Verfügung stehen.

Entsprechend der zuvor beschriebenen Codierung der"Start- bits"für zwei unterschiedliche Befehlswortlängen, können mehr als zwei unterschiedliche Befehlswortlängen vorgesehen sein. Die Anzahl der"Startbits"in denen die Länge kodiert ist ist dann ggf. anzupassen.

Bezugszeichenliste a erstes Startbit b zweites Startbit a' drittes Starbit b' viertes Startbit