Architektura DLX

Z Wikipedii, wolnej encyklopedii
(Przekierowano z DLX)

Architektura DLX (wym. Deluxe) – architektura procesora typu RISC, zaprojektowana w latach 90. przez Johna Hennessy’ego oraz Davida Pattersona – głównych twórców architektur odpowiednio Stanford MIPS i Berkeley RISC. DLX jest 32-bitową, zmodyfikowaną i uproszczoną wersją architektury MIPS. Została stworzona głównie w celach dydaktycznych i jest wykorzystywana w ramach akademickich kursów architektury i organizacji komputerów, najczęściej z wykorzystaniem symulatorów, przedstawiających graficznie etapy potoku oraz interpretujących programy asemblerowe.

Format rozkazów[edytuj | edytuj kod]

W architekturze DLX wyróżnia się trzy formaty rozkazów: R-type, I-type oraz J-type. We wszystkich rozkazów musi zostać określony kod operacji, natomiast format pozostałej części rozkazu zależy od jego rodzaju.

Rozkazy typu R (ang. register) działają na trzech rejestrach: dwóch rejestrach źródłowych (rs1, rs2) oraz jednym rejestrze docelowym (rd):

Rozkazy typu I (ang. immediate) określają dwa rejestry: jeden źródłowy (rs1) i jeden docelowy (rd) oraz 16-bitową wartość „natychmiastową”:

Rozkazy typu J (ang. jump) są natomiast rozkazami skoku i oprócz kodu operacji zawierają 26-bitowy operand, z którego wyznaczany jest adres docelowy.

Kody operacji mają długość 6 bitów, co pozwala na określenie w sumie 64 możliwych rozkazów.

Rejestry[edytuj | edytuj kod]

Komputer DLX składa się z trzydziestu dwóch 32-bitowych rejestrów całkowitoliczbowych oraz 32 rejestrów zmiennoprzecinkowych, które mogą być wykorzystywane jako rejestry 32-bitowe (pojedynczej precyzji) lub parami F0–F1, F2–F3 itd. jako rejestry 64-bitowe (podwójnej precyzji).

Potokowość[edytuj | edytuj kod]

Podobnie jak architektura MIPS, DLX wykorzystuje przetwarzanie potokowe. W celu usprawnienia wykonywania programu, stosowana jest także technika forwardingu. Potok składa się z pięciu faz:

  • pobranie rozkazu – ang. instruction fetch (IF),
  • zdekodowanie rozkazu/pobranie zawartości rejestrów – ang. instruction decode/register fetch (ID),
  • wykonanie rozkazu/wyznaczenie adresu – ang. execute/address calculation (EX),
  • dostęp do pamięci – ang. memory access (MEM),
  • zapis do rejestrów – ang. write back (WB).

Bibliografia[edytuj | edytuj kod]

  • Ethan Miller: The DLX Processor, csee.umbc.edu (ang.) [data dostępu: 2021-02-01].
  • Gurpur M. Prabhu: DLX Architecture, web.cs.iastate.edu (ang.) [data dostępu: 2021-02-01].

Linki zewnętrzne[edytuj | edytuj kod]