+ All Categories
Home > Documents > Micro Program Are

Micro Program Are

Date post: 13-Oct-2015
Category:
Upload: alexandru-shapovalov
View: 29 times
Download: 0 times
Share this document with a friend

of 26

Transcript
  • MICROPROGRAMAREMICROPROGRAMAREMICROPROGRAMAREMICROPROGRAMARE

  • 26.03.2014 Microprogramare 2

    ETAPELE DEZVOLTRIIETAPELE DEZVOLTRIIETAPELE DEZVOLTRIIETAPELE DEZVOLTRII Microprogramare

    apariie - n jurul anilor 50 concept introdus de Maurice Wilkes - Universitatea

    din Cambridge motivaie: elaborarea unor metode i mijloace

    tehnice noi pentru proiectarea i construcia unitilor de comand a sistemelor numerice

    microprogramarea presupune nregistrarea (memorarea) semnalelor de comand n memorii, ca alternativ la generarea lor de ctre o unitate de comand cablat (sistem secvenial)

    semnalele de comand sunt grupate n microinstruciuni

  • 26.03.2014 Microprogramare 3

    STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL MICROPROGRAMATMICROPROGRAMATMICROPROGRAMATMICROPROGRAMAT

    Model

    Registru ntrziere

    Semnale utile Semnale de adres (linii de control)

    Decodificare

    CLK matricea A matricea B de la bistabil

    de condiie

  • 26.03.2014 Microprogramare 4

    STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL MICROPROGRAMATMICROPROGRAMATMICROPROGRAMATMICROPROGRAMAT

    Model matricea A - conine linii de control - dau

    semnalele de comand necesar pentru execuia instruciunilor

    matricea B - conine linii de adres necesar pentru aflarea instruciunii urmtoare

    o linie orizontal reprezint o microinstruciune microinstruciunea se selecteaz conform

    adresei din registrul de adrese bistabili de condiie pentru decizie i salt

  • 26.03.2014 Microprogramare 5

    STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL MICROPROGRAMATMICROPROGRAMATMICROPROGRAMATMICROPROGRAMAT

    Model instruciunea - apeleaz o operaie operaia implic secvene de pai =

    microoperaii exemple de microoperaii:

    transfer registru - registru transfer registru - memorie operaii aritmetice operaii logice etc.

  • 26.03.2014 Microprogramare 6

    STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL MICROPROGRAMATMICROPROGRAMATMICROPROGRAMATMICROPROGRAMAT

    Definiie microprogramarea = controlul unui sistem

    numeric prin intermediul unor cuvinte (microinstruciuni) citite secvenial (pas cu pas) din memorie

    din microinstruciuni se genereaz semnalele de control pentru funcionarea corect a sistemului numeric

    proiectarea - sistematic i flexibil

  • 26.03.2014 Microprogramare 7

    STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL MICROPROGRAMATMICROPROGRAMATMICROPROGRAMATMICROPROGRAMAT

    Termeni emulator = ansamblu de resurse hardware i

    software incluse ntr-un calculator cu scopul interpretrii limbajului (setului de instruciuni) altui calculator

    firmware = ansamblu de resurse software care prin intermediul microprogramrii preia unele funcii care n mod tradiional revin sistemului de operare (de exemplu BIOS-ul)

  • 26.03.2014 Microprogramare 8

    STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL MICROPROGRAMATMICROPROGRAMATMICROPROGRAMATMICROPROGRAMAT

    Observaie microprogramarea este o tehnic de

    proiectare a structurilor numerice - se refer la o modalitate de implementare, la o arhitectur

    a nu se confunda cu programarea microprocesoarelor!!!

  • 26.03.2014 Microprogramare 9

    STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL MICROPROGRAMATMICROPROGRAMATMICROPROGRAMATMICROPROGRAMAT

    microadresa urmtoarei rezultatemicroinstruciuni intermediare

    datecondiii Registru de Memorie de Elementeexterne microadrese microprogram funcionaleintrri de datecontrol

    Registru demicroinstruciuni

  • 26.03.2014 Microprogramare 10

    STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL MICROPROGRAMATMICROPROGRAMATMICROPROGRAMATMICROPROGRAMAT

    Funcii 1. funcia de control - definete i

    controleaz toate microoperaiile care trebuie executate

    2. funcia de secveniere - determin i controleaz adresa microinstruciunii urmtoare

    funciile de regsesc n cuvntul de microinstruciune

  • 26.03.2014 Microprogramare 11

    STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL STRUCTURA DE CONTROL MICROPROGRAMATMICROPROGRAMATMICROPROGRAMATMICROPROGRAMAT

    Microoperaii selecie operanzi pentru unitatea aritmetico-

    logic (ALU) funcia executat de ALU destinaia rezultatului ALU control transport (carry sau borrow) control deplasare (shift) control ntreruperi control intrri / ieiri control resurse hardware

  • 26.03.2014 Microprogramare 12

    MEMORIA DE MICROPROGRAMEMEMORIA DE MICROPROGRAMEMEMORIA DE MICROPROGRAMEMEMORIA DE MICROPROGRAME tipuri: ROM sau RAM cerin: vitez mare organizare:

    1. fiecrui cuvnt de memorie i corespunde o microinstruciune pentru citire se folosete un singur ciclu de acces la memorie

    2. un cuvnt conine mai multe microinstruciuni se reduce numrul de accese la memorie crete viteza de lucru

    3. memorie mprit n blocuri exist 2 tipuri de microadrese se micoreaz lungimea cuvntului

    4. memorie divizat sunt 2 tipuri de microinstruciuni: simple - numr mic de bii complexe - lungime mare, controleaz simultan mai multe

    resurse 5. memorie structurat pe 2 nivele:

    nanoprograme - microprograme de nivel sczut nanoinstruciuni - microinstruciuni de nivel sczut

  • 26.03.2014 Microprogramare 13

    SECVENSECVENSECVENSECVENIATOR DE IATOR DE IATOR DE IATOR DE MICROPROGRAMMICROPROGRAMMICROPROGRAMMICROPROGRAM

    PUSH/POP4 FE Validare stiv

    RE Registru PointerValidare registru Adrese AR stiv SPDate 4 4 4Intrri directe 4 Stiv CLK

    S0 D AR F PC 4 x 4S1 MUX y

    X0 X1 X2 X3 Numrtor deOR3 microprogramOR2 PCOR1OR0

    4

    zero

    Cn+4Incrementare

    PC

    OE Cn

    y3 y2 y1 y0 microadrese(pt. cascadare)

  • 26.03.2014 Microprogramare 14

    SECVENSECVENSECVENSECVENIATOR DE IATOR DE IATOR DE IATOR DE MICROPROGRAMMICROPROGRAMMICROPROGRAMMICROPROGRAM

    Generare adres urmtoare adresa urmtoare selectat prin multiplexare:

    intrri directe (exterioare) intrri de la registrul de adrese intern intrri de la stiv intrri de la numrtorul de microprogram

    (program counter PC) MUX selectat (comandat) cu S1 i S0 registrul de adrese validat cu RE

  • 26.03.2014 Microprogramare 15

    SECVENSECVENSECVENSECVENIATOR DE IATOR DE IATOR DE IATOR DE MICROPROGRAMMICROPROGRAMMICROPROGRAMMICROPROGRAM

    Generare adres urmtoare numrtorul de microprogram - numrtor pe

    4 bii + CLC de incrementare cu 1 (Cn = 1 adresa curent + 1)

    stiva 4 x 4 memoreaz adrese de revenire din microsubrutine pointerul de stiv SP indic ultima locaie scris

    n stiv combinaiile ntre FE i PUSH/POP asigur

    memorarea n, respectiv citirea din stiv ieirile y indic microadresa urmtoare

  • 26.03.2014 Microprogramare 16

    SECVENSECVENSECVENSECVENIATOR DE IATOR DE IATOR DE IATOR DE MICROPROGRAMMICROPROGRAMMICROPROGRAMMICROPROGRAM

    Generare adres urmtoare intrrile OR pot fora anumite linii de adres

    la 1 logic permind astfel realizarea instruciunilor de salt

    zero face iniializarea adresei de memorie OE permite trecerea ieirilor de adres n

    regim three-state

  • 26.03.2014 Microprogramare 17

    FORMATUL MICROINSTRUCFORMATUL MICROINSTRUCFORMATUL MICROINSTRUCFORMATUL MICROINSTRUCIUNIIIUNIIIUNIIIUNII

    Definiie: formatul microinstruciunii = mprirea microinstruciunii n zone de control numite cmpuri

    clasificarea microinstruciunilor: verticale orizontale

  • 26.03.2014 Microprogramare 18

    FORMATUL MICROINSTRUCFORMATUL MICROINSTRUCFORMATUL MICROINSTRUCFORMATUL MICROINSTRUCIUNIIIUNIIIUNIIIUNII

    microinstruciuni verticale: operaii simple (op) pn la 24 bii compromis ntre lungimea cuvntului i lungimea

    microprogramului exemplu:

    cod op. cu UCcod op cu MEMcod op. cu I/Ocod op. salt

  • 26.03.2014 Microprogramare 19

    FORMATUL MICROINSTRUCFORMATUL MICROINSTRUCFORMATUL MICROINSTRUCFORMATUL MICROINSTRUCIUNIIIUNIIIUNIIIUNII

    microinstruciuni orizontale controleaz mai multe resurse n paralel lungime de 64 de bii codificarea microinstruciunii

    Controlsecveniere

    ControlALU

    Control UC ControlMEM

    Control I/O Controlceas

  • 26.03.2014 Microprogramare 20

    FORMATUL MICROINSTRUCFORMATUL MICROINSTRUCFORMATUL MICROINSTRUCFORMATUL MICROINSTRUCIUNIIIUNIIIUNIIIUNII

    microinstruciuni orizontale - codificarea a. fr codificare - fiecare bit = o microcomand

    (controleaz o microoperaie)

    b. codificare pe un nivel - cmpuri diferite cmpul A cmpul B

    Decodificator Decodificator 2 : 4 4 : 16

    0 3 0 15

  • 26.03.2014 Microprogramare 21

    FORMATUL MICROINSTRUCFORMATUL MICROINSTRUCFORMATUL MICROINSTRUCFORMATUL MICROINSTRUCIUNIIIUNIIIUNIIIUNII

    microinstruciuni orizontale - codificarea c. codificare pe 2 niveluri - semnificaia unui

    cmp depinde de valoarea altui cmp de control

    cmpul A cmpul B cmpul C

    Decodificator Decodificator Decodificator 4 : 16 6 : 64 2 : 4

  • 26.03.2014 Microprogramare 22

    FORMATUL MICROINSTRUCFORMATUL MICROINSTRUCFORMATUL MICROINSTRUCFORMATUL MICROINSTRUCIUNIIIUNIIIUNIIIUNII

    microinstruciuni orizontale - codificarea d. acelai cmp controleaz resurse hardware

    diferite, care au funcionare separat n timp; dirijarea cmpului se face cu ajutorul unui cmp separat de control

    A/Bvalidare resurs A/B

    Decodificator 4 : 16

    spre resursele A/B (microoperaii)

  • 26.03.2014 Microprogramare 23

    IMPLEMENTAREA IMPLEMENTAREA IMPLEMENTAREA IMPLEMENTAREA MICROINSTRUCMICROINSTRUCMICROINSTRUCMICROINSTRUCIUNIIIUNIIIUNIIIUNII

    Execuia microinstruciunii 1. citirea C

    determinarea adresei urmtoare obinerea datelor i ncrcarea n registrul de

    microinstruciuni 2. decodificarea 3. execuia propriu-zis E

  • 26.03.2014 Microprogramare 24

    IMPLEMENTAREA IMPLEMENTAREA IMPLEMENTAREA IMPLEMENTAREA MICROINSTRUCMICROINSTRUCMICROINSTRUCMICROINSTRUCIUNIIIUNIIIUNIIIUNII

    Implementarea serie C E C E

    I1 I2 pentru creterea vitezei suprapunerea

    execuiei microinstruciunii curente cu citirea microinstruciunii urmtoare (probleme la salt)

    C E I1C E I2

    C E I3

  • 26.03.2014 Microprogramare 25

    IMPLEMENTAREA IMPLEMENTAREA IMPLEMENTAREA IMPLEMENTAREA MICROINSTRUCMICROINSTRUCMICROINSTRUCMICROINSTRUCIUNIIIUNIIIUNIIIUNII

    Caracteristica monofaz - polifaz un ciclu principal de execuie a microinstruciunii

    poate avea mai multe faze utilizate implementare monofazat:

    microinstruciunea dureaz doar o perioad de tact (clock)

    semnalele de control - generate simultan cu execuia microinstruciunii

    implementare polifaz: fiecare ciclu principal conine cicluri secundare semnalele de comand se genereaz secvenial

  • 26.03.2014 Microprogramare 26

    MICROPROGRAMAREMICROPROGRAMAREMICROPROGRAMAREMICROPROGRAMARE

    Avantaje i dezavantaje avantaje:

    flexibilitatea modului de control adaptabilitate uurin n dezvoltare i ntreinere pre mai sczut

    dezavantaje: putere limitat a microinstruciunii - pierdere de

    performan volum i putere consumat mai mari


Recommended