CSIT Laboratory




Constantinescu Laurentiu
Staverescu Iulian
Vicovan Ionut

Procesor DLX

Capitolul 1

________________

[Inapoi la prima pagina] [Capitolul anterior] [Capitolul urmator]

Cuprins :


1.1 Resursele hardware ale procesorului DLX sunt :
  • UAL (Unitatea Aritmetica Logica pentru intregi)
  • RG[ 32: 32]- registre generale biport;
  • TS1, TS2, TD- registre tampon pentru registrele generale, transparente pentru programator;
  • TEMP- registru temporar, transparent pentru programator;
  • RAI – Registrul Adresei de Intrerupere ( Registru Special);
  • CP – Contorul de program;
  • RA, RD Registrul de Adrese, Registrul de Date
  • RI – Registrul Instructiunii;
  • M – memoria principala

1.2 Operatiile pe care unitatea aritmetica logica le poate executa sunt :
  • operatii aritmetice/ logice: S1+ S2; S1 – S2; S1 . S2; S1 . S2; S1 . S2;
  • operatii de deplasare: S1 < < S2 (deplasare logica stanga); S1 > > S2 (deplasare logica dreapta);
  • S1 > > a S2 (deplasare aritmetica dreapta);
  • constante: 0; 1.

1.3 Formatele instructiunilor
Toate instructiunile au 32 de biti, dintre care 6 sunt folositi pentru codificarea operatiei.
  1. Instructiuni de tip I (imediat) au urmatorul format :
    6 5 5 16
    COP rs rd imediat

    Semnificatia notatiilor este :
    • COP reprezinta codul operatiei;
    • rs, rd sunt adresele registrului sursa si destinatie;
    • imediat constituie fie adresa, fie operand imediat;

    Instructiunile care se incadreaza in acest tip sunt urmatoarele:
    • Incarca/ Memoreaza octet, semicuvant, cuvant;
    • Immediate (cu operand imediat): RG[ rd] <- RG[ rs] @ imediat, unde @ reprezinta un operator aritmetic/ logic;
    • Ramificare conditionata: rs – registru, rd – nefolosit;
    • Salt la adresa specificata de registru, cu sau fara revenire (cu sau fara legatura):
      rt= 0, rs = destinatie, imediat= 0.

  2. Instructiuni de tip R (Registru - Registru)
    6 5 5 5 11
    COP rs rt rd func

    Operanzii se gasesc in registrele generale specificate de campurile rs si rt, iar rezultatul este depus in registrul specificat de campul rd. Campul funct reprezinta o extensie a codului de operatie, pentru a putea codifica mai multe instructiuni, decat ar permite un camp de cod de operatie de 6 biti. Acest camp codifica instructiunile operationale aritmetice si logice, instructiunile de scrie/ citeste in /din registrul special RAI si instructiunile de deplasare: RG[ rd] <- RG[ rs] (func) RG[ rt].

  3. Instructiunile de tip J
    6 26
    COP imediat/offset pe 26 de biti

    Campul imediat/offset este utilizat pentru generarea adresei de salt. Instructiunile care intra in aceasta categorie sunt cele de salt simplu, salt cu legatura, revenire (RET) si intrerupere (TRAP).

1.4 Moduri de adresare prevazute in instructiuni
  1. Imediat. Operandul se afla in instructiune :

    COP rs rd imediat

  2. Registru. Operandul se afla intr- un registru specificat de campul rs.

    COP rs rt rd imediat

  3. Cu deplasare bazata.
    Continutul unui registru se aduna cu campul imediat pentru a forma adresa.


    COP rs rd imediat/offset pe 16 biti
    Memorie
    ...
    octet/semicuvant/cuvant
    in memorie
    ...
    registru general

  4. Relativa la CP, cu offset de 16 biti (extensia semnului)
    COP rs rd imediat/offset pe 16 biti
    Memorie
    ...
    octet/semicuvant/cuvant
    in memorie
    ...
    contor program

  5. Relativa la CP, cu offset de 26 de biti (extensia semnului)
    COP offset pe 26 de biti
    Memorie
    ...
    octet/semicuvant/cuvant
    in memorie
    ...
    contor program


[Inapoi la prima pagina] [Sus] [Capitolul anterior] [Capitolul urmator]