Orice sistem de prelucrare a datelor (ODS) este considerat un set de trei dispozitive:
Dispozitivul de comandă (CU) este proiectat pentru a genera semnale de control necesare pentru a efectua orice acțiune care apare în SOD
1. Despre organizarea structurală
• Mixed - centralizat + local
• Ierarhic (în Soare)
2. Prin organizarea tehnică
• Cu logica rigidă a muncii
• Dispozitive de control al microprogramelor
CU cu logică rigidă
Efectuarea operațiilor în mașină se reduce la informațiile elementare de transformare (informații de transmisie între nodurile din blocurile de informații la nodurile schimbare, operații logice la nivel de bit, condițiile de verificare etc.), în logica elementele, noduri și blocuri sub efectul blocurilor funcționale ale semnalelor de control (dispozitive) de management. Transformările elementare care sunt necompletabile în cele mai simple se realizează în cadrul unui ciclu de ceas al semnalelor de sincronizare și se numesc micro-operații.
Sunt cunoscute două abordări ale construirii logicii formării impulsurilor funcționale. Una dintre ele este cea hardware.
În dispozitivele de control hardware (circuite) ale fiecărei operații, există un set de circuite logice executate pe diode,
tranzistori etc., și care determină ce impuls funcțional (FI) și în ce măsură ar trebui să fie excitat. Ie circuitele logice produc
anumite semnale funcționale pentru efectuarea de micro-operații la anumite momente în timp. Cu această metodă de construire a CU, implementarea micro-operațiunilor se realizează datorită circuitelor logice conectate odată, astfel încât un computer cu un dispozitiv de control hardware este numit un calculator cu logică rigidă de control. Acest concept se referă la fixarea sistemului de comandă în structura conexiunilor pe calculator și
înseamnă imposibilitatea practică a oricăror modificări ale sistemului de comandă de calculator după fabricare.
Fie ca FI să apară în etapa j a operației m în condiția prezenței unui exces de adder sau în etapa i de operare n. Acțiunea necesară va fi îndeplinită dacă semnalele corespunzătoare codurilor, măsurilor și condițiilor de operare specificate sunt introduse la intrările circuitelor AND, iar ieșirile acestora din urmă prin circuitul OR sunt conectate la driverul FI (Figura 1).
Fig. 1. Formarea unui impuls funcțional
Acest principiu al gestionării operațiunilor se numește logică "tare" sau "sigilată" și este utilizat pe scară largă în multe computere.
Un alt principiu de organizare a managementului: fiecare micro-operație (MIO) 1 corespunde unui cuvânt (sau a unei părți a unui cuvânt), numit microcomandă și stocat în memorie, la fel cum comenzile unui calculator normal sunt stocate în memorie. Aici, echipa corespunde unui firmware, adică unui set de microinstrucții (MIC) care indică care FI-uri și în ce ordine este necesară inițierea acestei operații. Această abordare a fost numită microprogramare sau "logică stocată". Acest lucru subliniază
1 Microcomandă - un set de microplaci compatibili, care inițiază implementarea microoperațiilor
Micro-operarea este o acțiune elementară efectuată de un sau alt nod funcțional al unui computer
Microprogram - un set de micro-operațiuni
faptul că în calculatorul de microprograme logica de control este implementată nu sub forma unui circuit electronic, ci sub formă de informații codificate într-un registru.
Ideea de microprogramare, exprimată în 1951 de Wilks, a găsit o aplicație largă în seria IBM 360, când au apărut dispozitive de memorie fiabile și rapide pentru stocarea firmware-ului. Datorită controlului microprogramelor, a devenit posibilă emularea sistemului de comandă al modelelor vechi
Timp de mult timp, sarcinile și beneficiile microprogramării au fost greșit înțelese.
Se credea că valoarea microprogramării este că fiecare consumator își poate proiecta de la MIC setul de operațiuni de care are nevoie în această sarcină. Înlocuirea seturilor de comenzi ar fi obținută prin înlocuirea informațiilor din memorie fără modificări ale echipamentelor. Cu toate acestea, în acest caz, programatorul ar trebui să cunoască toate subtilitățile lucrării inginerului de calculator. Și tendința principală a dezvoltării unui calculator în legătură cu automatizarea programării este de a elibera programatorul de un studiu detaliat al dispozitivelor computerizate și de a maximiza limbajul calculatorului în limba unei persoane. Prin urmare, computerele cu microprograme au fost considerate dificile pentru utilizator.
Principiul microprogramului este relevant, deoarece:
• memorie de mare viteză unilaterală (citită) cu un mic ciclu de memorie;
• Microprogramarea nu este văzută ca un mijloc de creștere a flexibilității programării, ci ca o metodă de construire a unui sistem de management al procesorului, convenabil pentru un inginer de calculator.
Programatorul din lucrarea sa nu poate chiar să suspecteze structura microprogramă a calculatorului și să utilizeze toate instrumentele software și limbile de programare la cel mai înalt nivel. Utilizarea principiului microprogramului facilitează dezvoltarea și schimbarea logicii procesorului.
Odată cu apariția de acces software-ului la starea procesorului după fiecare MIC permite crearea unui sistem de diagnosticare a erorilor automat rentabilă și există posibilitatea de a emula, t. E. Pentru a efectua un program de calculator dat preparat într-un alt coduri de comandă calculator. Acest lucru se realizează prin introducerea unui set suplimentar de MIC corespunzătoare comenzilor calculatorului emulat.
Aceste capacități contribuie la proliferarea tehnicilor de microprogramare în construcția CU în computerele moderne.
Firmware-ul este scris într-o memorie specializată - memoria microprogramelor sau microcomandelor
Atunci când punerea în aplicare a firmware-ului W a acestuia din urmă este introdus de memorie, fiecare cod de ieșire de biți care definește apariția unui semnal specific de control al funcției. Prin urmare, fiecare micro-operație are propriul cod informativ - o microcomandă. Un set de microcomenzi și secvența implementării lor asigură executarea oricărei operații complexe. Un set de micro-operațiuni se numește firmware. metoda de control al funcționării, în mod secvențial citirea și interpretarea microinstrucțiunilor din memorie (cel mai adesea ca o memorie de microprogram utilizate rapid rețele logice programabile), precum și utilizarea codurilor de microinstrucțiuni pentru generarea unui semnal de conducere funcționale numite firmware, iar microcomputerul cu mijloacele de control - prin firmware sau stocate ( flexibilă).
Microprogramele sunt prezentate cu cerințele de completitudine și minimitate funcțională. Prima cerință este necesară pentru a permite dezvoltarea de microprograme a oricăror operații ale mașinilor, iar a doua este legată de dorința de a reduce cantitatea de echipamente utilizate. Contabilitatea factorului de performanță duce la extinderea microprogramelor, deoarece complexitatea acestora din urmă vă permite să scurtați timpul de execuție al comenzilor programelor.
Transformarea informației se realizează în blocul logic aritmetic universal al microprocesorului. Acesta este, de obicei, construit pe baza circuitelor logice combinaționale.
Pentru a accelera executarea anumitor operațiuni, se introduc în plus unități speciale de operare (de exemplu, schimbatoare ciclice). În plus, în setul de microprocesoare (MPC) al BIS sunt introduse blocuri operaționale specializate de expandoare aritmetice.
În general, principiul controlului microprogramelor include următoarele elemente:
1. orice operație realizată de dispozitiv este o secvență de acțiuni elementare - micro-operații;
2. Pentru a controla secvența de micro-operații, se folosesc condiții logice;
3. Procesul de efectuare a operațiilor în dispozitiv este descris sub forma unui algoritm reprezentat în termeni de micro-operații și condiții logice, numit firmware;
4. Firmware-ul este folosit ca o formă de reprezentare a funcției dispozitivului, pe baza căreia se determină structura și ordinea funcționării dispozitivului în timp.
Principiul controlului microprogramelor asigură flexibilitatea sistemului microprocesor și permite orientarea problemelor micro- și minicomputerelor.
Există două tipuri de control microprogram:
• Orizontal (schema cu codificare minimă, atunci când este necesară atingerea vitezei maxime a procesorului) și
• Vertical (folosind comenzi puternic codificate, dar costuri hardware mai mici pentru procesarea microcomandelor)
La orizontală - la fiecare categorie de MIK corespunde o anumită micro-operație efectuată independent de conținutul altor biți.
Firmware-ul poate fi reprezentat ca o matrice n × m, unde n este numărul de FI-uri, m este numărul de MIC-uri, adică rândul corespunde unui MIC și coloanei unui MIO (Figura 2).
Fig.2. Firmware cu microprogramare orizontală
Valorile aproximative ale biților MIC sunt prezentate în Fig. 3.
Figura 3. Valoarea biților MIC (MIO):
1 - golirea sumarului; 2 - blocarea indicatorului de supraîncălzire; 3 - codul invers al agregatului; 4 - ștergerea registrului factorului coeficientului; 5 - inversarea semnului; 6 - mutați conținutul agregatului la stânga; 7 - deplasarea conținutului adderului spre dreapta; 8 - să crească conținutul numărătorului cu 1; 9 - citirea de la memorie la sumarul; ...
Prezența lui "1" la intersecția oricărui rând și coloană înseamnă trimiterea FI la acest MIC, iar prezența "0" înseamnă absența acestuia.
Plasarea lui "1" în mai mulți biți ai MIC înseamnă că mai multe MIO sunt executate simultan. Desigur, M & E stimulate trebuie să fie compatibile.
Fie, de exemplu, biții MIC pe 9 biți să ia următoarele valori: 001001101. Apoi, dacă biții specificați corespund semanticii indicate în Fig. 3, atunci MIO, determinată de descărcările 9, 7 și 6, sunt incompatibile.
Pentru a extinde capacitățile MIC, se folosește uneori principiul multi-ciclu al execuției MIC. În acest caz, fiecărui număr i se atribuie un număr de măsură în care se efectuează M & E corespunzătoare, adică aici toate M & E compatibile au un număr de măsură. Toate celelalte bare sunt numerotate în ordinea execuției lor naturale. Cu toate acestea, este dificil să se indice numerotarea universală a M & E în MIC.
Avantajele microprogramării orizontale:
• posibilitatea executării simultane a mai multor M & E;
• Simplitatea formării FI (fără schemele de descifrare).
• o lungime MIC lungă, deoarece numărul de FI-uri în computerele moderne
ajunge la câteva sute și, în consecință, un volum mare de memorie pentru stocarea MIC;
• datorită limitărilor de compatibilitate ale operațiilor și datorită naturii coerente a execuției algoritmilor de operare, numai o mică parte din biții MIC va conține "1". În general, matricea va fi compusă din zerouri. Folosirea ineficientă a memoriei a avut ca rezultat o micșorare a microprogramării orizontale.
Cu microprogramare verticală, fiecare M & E este determinată nu de o stare de un singur bit, ci de un cod binar conținut într-un câmp MIC specific. Microcomanda seamănă într-o oarecare măsură cu formatul comenzilor obișnuite.
Diferența este că:
• • se efectuează o acțiune mai elementară - MIO în loc de o operație;
Formatul MIC pentru microprogramarea verticală este prezentat în Fig. 4.
Fig. 4. Formatul MIC vertical
este exprimată prin formula (P 1) (P 2) → P 1, sau (P 2) → P 1,
unde este simbolul MIO.
Fiecare MIC îndeplinește următoarele funcții:
• indică ce se face de M & E;
• stabilește durata MIC;
• indică acțiuni suplimentare - control, etc.
De obicei, în cuvântul MIC există patru zone care corespund funcțiilor specificate. În general, unele zone pot fi specificate implicit, de exemplu, selectarea următoarei MIC poate fi efectuată din celula următoare, durata MIC poate fi determinată ca fiind aceeași pentru toate MIC și așa mai departe.
Primele computere cu control microprogramar în computerele interne au fost WORLD, NAIRI, printre cele străine - IBM / 360, Spectra 70. (70s)
1. Există două abordări pentru implementarea blocului de control al procesorului
2. Implementarea hardware a CU este mai eficientă pentru utilizare, dacă în prim-plan viteza calculatorului
3. UU-ul firmware-ului se utilizează dacă în prim-plan este flexibilitatea implementării comenzilor