DLX

DLX

Der DLX-Mikroprozessor ist eine hypothetische Prozessorarchitektur die von John L. Hennessy und David A. Patterson (den ursprünglichen Designern der MIPS und Berkeley RISC-Architektur) entwickelt wurde. Er wurde in dem - von beiden gemeinsam verfassten - Buch 'Computer Architecture: A Quantitative Approach' vorgestellt. Der DLX-Prozessor wird mit einem RISC-Befehlssatz (Reduced Instruction Set Computing) angesteuert und besitzt 32 Register, wobei R0 immer fest verdrahtet mit 0 ist. Der Hauptspeicherzugriff erfolgt byteweise. Weiterhin erfolgt der Speicherzugriff aligned und im Big Endian-Modus. Die Befehlswortlänge beim DLX beträgt 32 Bit; es gibt drei Befehlsformate (I-, R- und J-Format).

Inhaltsverzeichnis

Die Bezeichnung DLX

Für die Herkunft der Bezeichnung "DLX "gibt es mehrere mögliche historische Erklärungen:

  • DLX wie deluxe
  • DLX als römische Zahl: 560 (Mittelwert aus den damals üblichen Prozessor-Architekturen: AMD 29K, DECstation 3100, HP 850, IBM 801, Intel i860, MIPS M/120A, MIPS m/1000, Motorola 88000, RISC 1, SGI 4D/60, SPARCstation-1, Sun-4/110, Sun-4/260)

Registerbedeutungen

  • R0 null; unveränderlich
  • R1 reserviert für den Assembler
  • R2-R3 Funktionsrückgabewerte
  • R4-R7 Funktionsparameter
  • R8-R15 beliebig
  • R16-R23 Registervariablen
  • R24-R25 beliebig
  • R26-R27 reserviert für das Betriebssystem
  • R28 Globaler Pointer
  • R29 Stackpointer
  • R30 Registervariable
  • R31 Rücksprungadresse

DLX Befehlsformate

Die Befehlsformate definieren die Aufteilung des 32-Bit-Befehls in Felder. Bei allen drei Formaten sind die ersten 6 Bit immer der Opcode.

I-Format

Befehle dieses Formates sind Load/Store Instruktionen, arithmetische Befehle oder bedingte/unbedingte Sprünge. Die Instruktion besteht aus einem Quellregister rs1 und einem Zielregister rd, zusätzlich sind 16 Bit für den Immediate-Wert vorgesehen, die je nach Befehlstyp benutzt werden.

 0         5 6  10 11 15 16              31
 ==========================================
 | opcode   | rs1 |  rd |  immediate      |
 ==========================================

Beispielbefehle: LW, SW, JALR

R-Format

Dieses Format wird benutzt um Operationen auf Registern durchzuführen, dabei werden die Quellregister rs1 und rs2 mit der Register-ALU Operation func ausgeführt, und das Ergebnis auf das rd–Register abgelegt.

 0         5 6  10 11 15 16 20 21        31
 ==========================================
 | opcode   | rs1 | rs2 |  rd |   func    |
 ==========================================

Beispielbefehl: SLT, ADD, SUB

J-Format

Befehle dieses Formates sind Sprungbefehle. Die (dist)anz wird einfach auf den Befehlszähler hinzuaddiert.

 0         5 6                           31
 ==========================================
 | opcode   |            dist             |
 ==========================================

Beispielbefehle: J, JAL

DLX Befehlssatz

Dies ist ein Auszug aus dem DLX-Befehlssatz ohne Floating-Point-Befehle.

                        

Instruction                       Instruction meaning
LB / LH / LW         R1,val(R2)   Load byte / load half word / load word
LBU / LHU            R1,val(R2)   Load byte unsigned / load half word unsigned
SB / SH / SW         val(R2),R1   Store byte / store half word / store word
LHI                  R1,#val      Load high immediate
ADD / SUB            R1,R2,R3     Add / subtract
ADDU / SUBU          R1,R2,R3     Add unsigned / subtract unsigned
ADDI / SUBI          R1,R2,#val   Add immediate / subtract immediate
ADDUI / SUBUI        R1,R2,#val   Add immediate unsigned / subtract immediate unsigned
AND / OR / XOR       R1,R2,R3     And / or / exclusive or
ANDI / ORI / XORI    R1,R2,#val   And immediate / or immediate / exclusive or immediate
SLL / SRL / SRA      R1,R2,R3     Shift left logical / shift right logical / shift right arithmetic
SLLI / SRLI / SRAI   R1,R2,#val   Shift- left log. / right log. / right arithmetic -immediate
SLT / SLE / SEQ      R1,R2,R3     Set- less than / less or equal than / equal
SLTI / SLEI / SEQI   R1,R2,#val   Set- less than / less or equal than / equal -immediate
SGT / SGE / SNE      R1,R2,R3     Set- greater than / greater equal than / not equal
SGTI / SGEI / SNEI   R1,R2,#val   Set- greater than / greater equal / not equal -immediate
BEQZ / BNEZ          R4,name      Branch equal zero / branch not equal zero
J                    name         Jump
JR                   R5           Jump register
JAL                  name         Jump and link (save return address in R31)
JALR                 R5           Jump and link register (save return address in R31)
val:  16 Bit Wert als Adress-Offset oder Immediate-Wert
name: 16 oder 26 Bit Adress-Distanz

Siehe auch

Weblinks


Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • DLX — Saltar a navegación, búsqueda El DLX es un microprocesador RISC diseñado por John Hennessy y David A. Patterson, los diseñadores principales de la arquitectura MIPS y de Berkeley RISC (respectivamente), los dos ejemplos de la arquitectura RISC.… …   Wikipedia Español

  • DLX — DLX  учебная 32 битная конвейерная микропроцессорная RISC архитектура, разработанная John L. Hennessy и David A. Patterson (архитекторами архитектур MIPS и Berkeley RISC соответственно). DLX является упрощенным MIPS и имеет архитектуру… …   Википедия

  • DLX — For other uses, see DLX (disambiguation). DLX Designer John L. Hennessy and David A. Patterson Bits 32 bit Design RISC Registers 32 The DLX is a RISC …   Wikipedia

  • DLX — Le DLX est un design de microprocesseur RISC effectué par John L. Hennessy et David A. Patterson, les principaux créateurs respectivement des modèles MIPS et Berkeley RISC, les deux types repères de la famille RISC. Le DLX est principalement un… …   Wikipédia en Français

  • DLX — El DLX es un microprocesador RISC diseñado por John Hennessy y David A. Patterson, los diseñadores principales de la arquitectura MIPS y de Berkeley RISC (respectivamente), los dos ejemplos de la arquitectura RISC. El DLX es básicamente un MIPS… …   Enciclopedia Universal

  • DLX (disambiguation) — DLX may refer to: DLX, RISC Processor Architecture Dancing Links, computer algorithm Dlx (gene) Short for the David Letterman Bypass. The proposed name of Interstate 465 in Indianapolis This disambiguation page lists articles associated with the… …   Wikipedia

  • DLX-Mikroprozessor — Der DLX Mikroprozessor ist eine hypothetische Prozessorarchitektur die von John L. Hennessy und David A. Patterson (den ursprünglichen Designern der MIPS und Berkeley RISC Architektur) entwickelt wurde. Er wurde in dem – von beiden gemeinsam …   Deutsch Wikipedia

  • Dlx (gene) — For other uses, see DLX (disambiguation). Dlx is a family of homeodomain transcription factors which are related to the Drosophila distal less (Dll) gene [1]. The family has been related to a number of developmental features. The family seems to… …   Wikipedia

  • DLX-Pipeline — Die DLX Pipeline ist eine 5 stufige Pipeline für RISC Prozessoren (beispielsweise MIPS), welche dem DLX Mikroprozessor entstammt. Die Stufen heißen: Instruction Fetch (IF): Laden des Befehls in den Befehlspuffer, Erhöhung des Befehlszählers.… …   Deutsch Wikipedia

  • DLX — Deluxe Corporation (Business » NYSE Symbols) …   Abbreviations dictionary

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”