Arhitectura Calculatoarelor - cs.ucv.ro - Universitatea din Craiova

74 downloads 1208 Views 614KB Size Report
ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare. Astăzi... ▫ Comunicaţia între unităţile calculatorului;. ▫ Structuri de interconectare ...
Universitatea din Craiova Facultatea de Automatică, Calculatoare și Electronică Catedra de Ingineria Calculatoarelor și Comunicații

Arhitectura Calculatoarelor Structuri de interconectare Criterii de clasificare a calculatoarelor Cătălina Mancaș [email protected]

Dan Mancaș [email protected]

Astăzi...  Comunicaţia între unităţile calculatorului;  Structuri de interconectare;  Magistrala: – Magistrala dedicată; – Magistrala multiplexată; – Magistrala sincronă; – Magistrala asincronă.

 Magistrala de sistem: – Magistrala de date; – Magistrala de adrese; – Magistrala de control. ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

2

Astăzi...  Clasificarea calculatoarelor 1) D.p.d.v al magistralei: – Calculatoare cu o singură magistrală;

– Calculatoare cu o două magistrale; – Calculatoare cu trei magistrale; – Calculatoare cu organizare multiport/multibus.

2) După criteriul Flynn: – SISD; – SIMD;

– MISD; – MIMD. ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

3

Comunicaţia între unităţile calculatorului

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

4

Structura în 5 unități Flux dede date Flux date

CPU = ALU + UC

Flux date alternativ Flux dede date alternativ Flux dede instructiuni Flux instrucțiuni Comenzi linii de control Linii desau control Informatii de stare sau linii de stare Linii de stare

Date de intrare si programe

Unitatea de Intrare (UI)

Unitatea de Control (UC)

Unitatea LogicoAritmeticã (ALU) Date

DMA

Unitatea de Memorie (UM)

Unitatea de Iesire (UO)

Date de iesire sau rezultate

Instructiuni DMA

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

5

Structura redusă la 3 unități Linii de control

R/ W

ALU UC

….

DEPLASATOR

Flags

SUMATOR/SCAZATOR

BLOC DE CONTROL

RS RT3 RT2

DECODIFICATOR FUNCTIE

RT1 ACC

Incr 1........L RI

OPCODE

1........K ADRESA

PC

K

1...

n

..K

K

CPU

n UM

U I/O

UM

n

MBR

n REGISTRU INPUT

. . . MAR

UI

0

n UO

REGISTRU OUTPUT

K

R/ W

i . . . .

2k x n

U I/O

2k-1 UIA pe n biti

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

6

Structura de interconectare  Aceste unități comunică între ele pentru a transfera: – Date; – Instrucţiuni; – Comenzi; – Informaţii de stare.

 Aceste transferuri se realizează prin căi de comunicaţie;

 Definiţie: Reuniunea tuturor căilor de comunicaţie se numeşte structură de interconectare.

 Pentru a stabili structura de interconectare trebuie să se identifice principalele căi de comunicaţie. ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

7

Structura de interconectare

U I/O I/O U

CPU

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

UM

8

Magistrala  Cea mai des folosit structură de interconectare este magistrala;  Există mai multe magistrale: –

organizate ierarhic => structura cu magistrale multiple.

 Definiţie: O magistrală este ansamblul de căi de comunicaţie, grupate funcţional, interconectând mai multe dispozitive din calculator şi pe care informaţia se transferă paralel.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

9

Magistrala  Căile de comunicaţie a unei magistrale: linii;  Lărgimea unei magistrale este dată de numărul de linii;

 Caracteristica fundamentală a unei magistrale: interconectează diferite dispozitive;  Este divizată între mai multe dispozitive => magistrala este un mediu de transmisie divizat;  Din mai multe dispozitive conectate la o magistrală:

Emisie: un dispozitiv odată; Recepţie: mai multe dispozitive. ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

10

Magistrala  D.p.d.v. al rolului distigem două tipuri de magistrale: 1) Magistrală dedicată; 2) Magistrală multiplexată.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

11

Magistrala dedicată 

Reprezintă fie: − o magistrală care este fizic conectată la o unitate din calculator sau la o submulţime de unităţi în mod permanent; − o magistrală care îndeplineşte în permanenţă acelaşi rol (ex. magistrala de adrese).

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

12

Magistrala multiplexată 

Reprezintă o magistrală care foloseşte un set de linii pentru diferite funcţii sau roluri cum ar fi, de exemplu date şi adrese;



Un element de identificare: o linie suplimentară: – –

dacă se emite un semnal (linie activă) atunci pe liniile magistralei există o adresă; dacă nu se emite un semnal (linie inactivă) atunci pe magistrală este o dată.



Acest tip de magistrală este recomandat sistemelor mici;



Multiplexare temporală;



Avantaj: se folosesc puţine linii de magistrală => cost redus;



Dezavantaj: reduce performanţele globale prin reducerea vitezei.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

13

Magistrala  D.p.d.v. al funcţionării magistralele sunt de două feluri: 1) Magistrală sincronă; 2) Magistrală asincronă.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

14

Magistrala sincronă 

Toate evenimentele de pe magistrală sunt corelate cu un tact;



Întotdeauna există o linie de sincronizare pe care se transferă tactul de sistem;



Distanţa dintre două fronturi de acelaşi tip defineşte ciclul de magistrală sau ciclul tactului;



Toate dispozitivele conectate la magistrală pot citi linia de sincronizare;



Toate evenimentele de pe magistrală sunt corelate cu începutul unui ciclu de magistrală.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

15

Magistrala asincronă  Producerea unui eveniment pe magistrală urmează sau depinde de producerea evenimentului anterior;  Un lanţ de evenimente interdependente; unul acţionează asupra următorului.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

16

Magistrala sincronă vs. asincronă  Magistrala sincronă este mai simplu de implementat şi de testat;  Mai puţin flexibilă ca evoluţie temporală, deci viteză limitată;  Magistrala asincronă: mai dificil de implementat şi de testat;  Avantaj: flexibilitate temporală;

 Mai rapidă;  Există evenimente foarte evenimentul următor;

rapide

care

pot

declanşa

 În funcţionarea sincronă acest lucru nu este relevant pentru că trebuie aşteptat ciclul următor. ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

17

Magistrala de sistem  Magistrala ce conectează principalele unităţi ale unui calculator;  O magistrală de sistem conţine 50-100 linii;

 Liniile acesteia pot fi grupate în 3 grupe funcţionale: – Date; – Adrese;

– Linii de control.

 Suplimentar, magistralele de sistem conţin: – O linie de sincronizare;

– O linie de distribuţie a alimentării.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

18

Magistrala de sistem

CPU

UM1

UMm

U I/O1

U I/On

LINII DE CONTROL

LINII DE ADRESA LINII DE DATE

MAGISTRALA DE SISTEM

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

19

Magistrala de sistem  Magistrala de date: linii de date;  Magistrala de adrese: linii de adrese;  Magistrala de control: linii de control.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

20

Magistrala de date  Grupul liniilor de date formează magistrala de date;  Lărgime: de regulă o putere a lui 2 (8 biţi, 16 biţi, 32 biţi, 64 biţi);

 Lărgimea magistralei de date determină performanţele globale ale calculatorului: cu cât lărgimea este mai mare cu atât performanţele sistemului sunt mai bune.  De regulă, pe magistrala de date se transportă un cuvânt calculator.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

21

Magistrala de adrese  Grupul de linii de adresă formează magistrala de adrese;  Aceasta defineşte sursa şi destinaţia datelor de pe magistrala de date;  Lărgimea magistralei de adresă stabileşte capacitatea maximă a memoriei din sistem (inclusiv porturile de I/O).

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

22

Magistrala de control  Grupul liniilor control;

de

control

formează

magistrala

de

 Mixtă, conţine comenzi şi informaţie de stare;  Utilizată pentru a controla accesul datelor şi generarea adreselor precum şi pentru a transporta informaţia de stare către CPU;  Semnalele tipice de control sunt: – MEMORY READ; – MEMORY WRITE; – I/O READ, semnal pentru transferul dintr-un port de intrare pe magistrala de date => operaţie de input; – I/O WRITE, semnal pentru transferul de pe magistrala de date într-un port de ieşire => operaţie de output; – BUS REQUEST, atunci când un dispozitiv solicită accesul la magistrală; ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

23

Magistrala de control – BUS GRANT, semnal de confirmare că un anumit dispozitiv a primit accesul la magistrală; – BUS BUSY, semnal care arată că magistrala este ocupată, este lansat de un dispozitiv în momentul în care primeşte accesul la magistrală pentru a informa celelalte dispozitive că magistrala este ocupată; – INTERRUPT REQUEST, cerere de întrerupere a funcţionării CPU lansată de un dispozitiv conectat la magistrală; – INTERRUPT ACKNOWLEDGE, confirmare lansată de CPU că întreruperea a fost recunoscută; – CLOCK, semnal pentru sincronizarea definirea ciclului de magistrală;

evenimentelor

şi

– RESET, semnal destinat iniţializării dispozitivelor conectate la magistrală. ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

24

Clasificarea calculatoarelor din punct de vedere al magistralei

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

25

Calculatoare cu o singură magistrală  Structură relativ simplă;  Toate modulele calculatorului gravitează în jurul magistralei unice;

 În orice comunicaţie există o sursă şi un receptor;  Toate comunicaţiile între module se realizează prin aceasta: – viteză mare; – întreaga informaţie este vehiculată pe această magistrală.

 Magistrala unică  magistrala sistem;   UNI-BUS.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

26

Calculatoare cu o singură magistrală  La magistrala unică se conectează: – – –

CPU; modulele de memorie (memoria principală); toate unităţile de intrare-iesire. UM1

UMm

CPU

U I/O1

U I/On

UNI-BUS

 Memoria secundară se leagă prin unitaţile de I/O;  Lărgimea magistralei trebuie să fie suficient de mare pentru a acoperi toate tipurile posibile de transfer: transfer de date, transfer de adrese, transfer de comenzi. ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

27

Calculatoare cu o singură magistrală  Un exemplu de calculator cu o astfel de organizare: PDP 11, al firmei DEC;  Magistrala are 56 de linii, distribuite astfel: – 18 linii de adrese A0 … A17 - capacitatea de adresare fizică este de 218=256 kcuvinte; – 16 linii de date D0 … D15 - lăţimea unui cuvânt calculator este de 16 biţi. Deci, magistrala de date era pe 16 biţi şi de aceea PDP 11 se numea calculator pe 16 biţi; – 22 linii de control (comenzi), care alcătuiau magistrala de control.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

28

Calculatoare cu o singură magistrală  Principalele comenzi sunt: – – – – – –

BUS REQUEST (BR - cerere de magistrală); BUS AVAILABLE (BA - magistrală disponibilă); BUS BUSY (BB - magistralã ocupată); INTERRUPT REQUEST (IR - cerere de întrerupere); INTERRUPT AKNOWLEDGE (IA - confirmarea întreruperii); DATA READY (DRD – dată pregătită) – semnal pt transfer asincron al datelor; – DATA RECEIVED (DRV - confirmare recepţie dată) – semnal pt transfer asincron al datelor.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

29

Calculatoare cu o singură magistrală  Transferurile între sursă şi receptor se realizează prin tranziţii de magistrală;  Toate dispozitivele care pot prelua magistrala în vederea transferului se numesc master potenţial;  În momentul atribuirii magistralei unui master potenţial, acesta devine master curent;  Dispozitivul care întră în comunicaţie cu un master se numeste slave. Sursă

Master curent

Receptor

Slave

 UNI-BUS

UNI-BUS

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

30

Calculatoare cu o singură magistrală  Magistrala fiind unică, atât locaţiile de memorie cât şi dispozitivele de intrare-ieşire se adresează similar;  De obicei: formate distincte de instrucţiuni pentru adresarea memoriei şi pentru adresarea dispozitivelor de intrare-ieşire;  În cazul magistralei unice se adoptă un format unic de instrucţiuni, deci se foloseşte o tehnică de adresare unitară;  Funcţionarea pe magistrala unică este de tip asincron: evenimentele nu sunt corelate cu un tact, ci se condiţionează unul pe următorul;  Tehnicã de dialog: de tip “Hand Shaking” (strângere de mână), ce reprezintă un protocol impus de proiectant. ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

31

Comunicația master-slave  Un dialog tipic pentru stabilirea legăturii de comunicaţie între 2 dispozitive conectate la magistrala unică este următorul: 1) Dispozitivul care doreşte să iniţieze dialogul (masterul potenţial) lanseazã semnalul de control cerere de magistrală (BR);

2) Acest semnal este interpretat de controllerul de magistrală plasat în CPU; 3) Controllerul de magistrală după recepţionarea unei cereri de acces analizează linia BB; 4) Dacă această linie este activă înseamnã că un alt dispozitiv foloseşte magistrala; Dacă linia nu este activă înseamnă că magistrala este liberă şi dispozitivul solicitator primeste dreptul de acces. Acest lucru este marcat de controllerul de magistrală prin activarea semnalului BA. ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

32

Comunicația master-slave 5) După ce dispozitivul solicitator este informat prin linia BA că poate prelua magistrala acesta devine master curent; 6) Se cuplează la magistrală și lansează semnalul BB; Prin acest semnal controllerul de magistrală este informat că magistrala a fost ocupată şi ca urmare anulează (dezactivează) semnalul BA; După ce dispozitivul s-a cuplat la magistrală (a activat semnalul BB) şi a devenit master curent acesta lansează pe liniile magistralei de adrese adresa dispozitivului cu care doreşte dialogul; 7) Dispozitivul este identificat și devine slave curent; 8) Din acest moment poate începe transferul datelor; Transferul datelor este asincron, a.î. un bloc de date se transferă cuvânt după cuvânt.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

33

Comunicația master-slave Masterul depune data pe magistrala de date şi lansează semnalul DRD. 9) Dispozitivul receptor (slave-ul curent) după primirea datei lansează semnalul de control DRV; Acest dialog de tip hand shaking continuă până la transmiterea întregului bloc de date. 10)Dispozitivul master curent la terminarea transmiterii datelor informează controllerul de magistrală despre încheierea comunicaţiei prin anularea semnalului BB; 11)Controllerul dezactivează linia BB şi modifică starea liniei BA pe care o activează; 12)Magistrala este pregătită pentru următorul dialog hand shaking.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

34

Comunicația master-slave  Observaţii: Acest dialog hand shaking este identic pentru orice pereche de dispozitive conectate la magistrala sistem;

Pe parcursul funcţionării calculatorului un dispozitiv poate fi uneori master, uneori slave, în funcţie de natura transferului cu excepţia modulelor de memorie care sunt întotdeauna slave.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

35

Comunicația master-slave  Condiţii impuse magistralei sistem: 1) Magistrala trebuie să fie foarte rapidă, adică să aibă o rată de transfer foarte mare. Acest lucru este necesar pentru că toate dispozitivele comunică prin aceeaşi magistrală şi deci performanţa globală a întregului calculator va fi afectată puternic de timpul consumat cu propagarea datelor. În orice calculator numeric: rata cea mai ridicată de transfer corespunde comunicaţiei procesor-memorie. În practică se recomandă ca rata de transfer a magistralei să fie de 2 ori mai mare decât viteza memoriei principale.

2) Lungimea magistralei trebuie să fie suficient de lungă pentru a permite cuplarea tuturor dispozitivelor (CPU, modulele de memorie, dispozitivele de intrare-ieşire).

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

36

Comunicația master-slave Cuplarea se face prin metode specifice de natură mecanică şi electrică, şi anume prin interfeţe specializate care se numesc controllere de magistrală ale modulului sau dispozitivului.

3) Fiecare dispozitiv (modul) cuplat la magistrală conţine un controller propriu de magistrală. Un bloc pretenţios şi scump căci trebuie să fie foarte rapid.

4) Fiecare controller de magistrală conţine în mod obligatoriu un driver de magistrală pentru depunerea informaţiei care trebuie să aibă o impedanţă cât mai coborâtă şi să prezinte facilităţi tri-state. 5) În sistemele moderne trebuie să se prevadă facilităţi de comunicare directă între dispozitivele intrare-ieşire şi memoria principală - controllere DMA. ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

37

Calculatoare cu două magistrale  Pentru a simplifica diferitele transferuri între dispozitive, s-a trecut la fragmentarea magistralei unice în două magistrale: – magistrala de memorie; – magistrala de intrare-ieşire.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

38

Magistrala de memorie  Trebuie să fie foarte rapidă pentru a asigura transferul de instrucţiuni şi date între CPU şi memorie;  Scumpă, dar compensată de faptul că magistrala este mai scurtă reducând astfel costurile.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

39

Magistrala de I/O  Se conectează dispozitivele I/O, adică echipamentele periferice;  Poate fi mult mai lungă pentru a permite cuplarea tuturor dispozitivelor de I/O;  Dispozitivele de I/O au o viteză de lucru coborâtă => magistrala de I/O nu trebuie să îndeplinească condiţii restrictive de rată de transfer mare;  Costul coborât;  Lentă, deci nu necesită condiţii speciale din punct de vedere al funcţionării.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

40

Magistrala de I/O  Comunică cu magistrala de memorie prin DMA;  Atunci când este necesar un transfer de date între un periferic şi memorie se activează DMA care asigură transferul cu o rată de transfer mare între dispozitivele I/O şi memorie;  Unitatea DMA: un controller care este conectat la cele două magistrale;  Canal DMA;  Activitatea pe magistrala de I/O este controlată de CPU;  De obicei există un procesor I/O (IOP) care este în comunicaţie cu CPU şi magistrala I/O.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

41

Calculatoare cu două magistrale  Funcţionarea celor două magistrale este independentă;  Dacă pe magistrala de memorie se vehiculează instrucţiunile care se execută de CPU, pe magistrala I/O se vehiculează lent date;  Atunci când se foloseşte controllerul DMA, acesta devine master pentru magistrala de memorie, CPU eliberând magistrala de memorie;  Având în vedere natura diferită a celor două magistrale se pot folosi formate diferite pentru instrucţiunile de adresare a memoriei şi cele de I/O;  D.p.d.v tehnologic se recomandă ca magistrala de memorie să fie de minim 5 ori mai rapidă decât magistrala I/O. ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

42

Calculatoare cu două magistrale UM1

UM2

UMm

MAGISTRALA DE MEMORIE

Controller DMA

CPU

MAGISTRALA I/O

U I/O1

U I/O2

U I/On

Dispozitiv I/O1

Dispozitiv I/O2

Dispozitiv I/On

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

43

Calculatoare cu trei magistrale  Numărul de dispozitive I/O conectate la un calculator este mare;  Dacă se foloseşte o singură magistrală I/O atunci pot fi afectate dispozitivele I/O rapide;  Dispozitivele de I/O diferă prin viteza de funcţionare, natura semnalelor, metodele de dialog;  => gruparea dispozitivelor după viteză şi astfel crearea mai multor magistrale de I/O.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

44

Calculatoare cu trei magistrale  Metodele de realizare ale transferurilor de I/O sunt următoarele: – transfer programat I/O – este un procedeu lent de tip software prin execuţia unor instrucţiuni de I/O; – transfer sub controlul mecanismului întreruperilor; – transfer prin DMA – este cel mai rapid procedeu.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

45

Calculatoare cu trei magistrale  Metodele de realizare ale transferurilor de I/O sunt următoarele: – transfer programat I/O – este un procedeu lent de tip software prin execuţia unor instrucţiuni de I/O; – transfer sub controlul mecanismului întreruperilor; – transfer prin DMA – este cel mai rapid procedeu.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

46

Calculatoare cu trei magistrale  S-a propus divizarea magistralei I/O în două magistrale: 1) Magistrala I/O lentă, la care se conectează dispozitivele I/O cu transfer programat şi cu transfer dirijat prin întreruperi; 2) Magistrala I/O rapidă, la care se conectează dispozitivele I/O care asigură transferul prin DMA.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

47

Calculatoare cu trei magistrale UM1

UM2

UMm

MAGISTRALA DE MEMORIE

Controller DMA

CPU

MAGISTRALA I/O lenta

MAGISTRALA I/O rapida

U I/O1

U I/Ok

U I/O1

U I/Op

Dispozitiv I/O1

Dispozitiv I/Ok

Dispozitiv I/O1

Dispozitiv I/Op

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

48

Calculatoare cu organizare multiport/multibus  Arhitecturi recente;  Depind de existenţa modulelor de memorie de tip multiport, adică memorii care au mai multe accese;  Specifice structurilor multiprocesor;  Procesoarele funcţionează anumite taskuri;

simultan

fiecare

executând

 Fiecare CPU dispune de propria magistrală de sistem;  Resursele calculatorului precum modulele de memorie şi dispozitivele de I/O trebuie folosite în comun;  De aceea toate magistralele de sistem trebuie să aibă acces la aceste resurse comune.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

49

Calculatoare cu organizare multiport/multibus  Aceasta presupune existenţa de porturi de acces pentru toate magistralele de sistem;  Un modul de memorie comunică cu fiecare magistrală sistem prin portul corespunzător;  Principul general de realizare: Fiecare procesor îşi controlează propria magistrală sistem la care se pot conecta toate sau o parte din modulele de memorie şi dispozitivele de I/O;  Această organizare permite funcţionarea simultană a tuturor CPU şi oferă o mare productivitate a sistemului; De exemplu, în timp ce procesorul CPUi extrage o data din modulul de memorie UMj, un alt procesor CPUk, înscrie o dată în modulul UMp. ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

50

Calculatoare cu organizare multiport/multibus  Funcţionarea magistralelor este independentă;  Fiecare procesor are acces la orice modul de memorie sau orice dispozitiv de I/O;

 Funcţionarea unui astfel de sistem este complexă deoarece pe fiecare magistrală se pot vehicula în acelaşi moment de timp diferite date necesare diferitelor procesoare;  Pot apărea conflicte de acces: procesoarele CPUi, CPUj au nevoie de date în acelaşi moment de timp, adică în acelaşi ciclu de memorie, de la aceeaşi memorie;  Rezolvare: se adaugă fiecărui modul de memorie şi fiecărui dispozitiv de I/O un bloc de analiză a priorităţilor de acces, care să stabilească alegerea elementului prioritar. ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

51

Calculatoare cu organizare multiport/multibus

magistrala sistem 1 magistrala sistem 2

UM1

port de acces

CPU1

UMm

CPU2

U I/O1

multibus

U I/On

Bloc interfata multiacces+analiza prioritatilor

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

52

Clasificarea calculatoarelor după criteriul Flynn

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

53

Criteriul Flynn  Flynn, 1969;  Criteriul fluxului de date şi fluxului de instrucţiuni;  O clasificare modernă specifică paralel;

sistemelor

de calcul

 Clasificare bazată pe interpretarea fluxurilor de date şi instrucţiuni dintr-un calculator;  Flux de date (FD): o secvenţă de operanzi codificaţi binar care se vehiculează spre CPU în vederea prelucrării (procesării);  Flux de instrucţiuni (FI): o secvenţă de comenzi codificate binar care se transferă spre CPU în vederea interpretării şi execuţiei.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

54

Clase de calculatoare  În funcţie de cele două fluxuri există următoarele patru clase de calculatoare numerice: 1) SISD (Single Instruction Single Data) – flux unic de instrucţiuni, flux unic de date; 2) SIMD (Single Instruction Multiple Data) – flux unic de instrucţiuni, flux multiplu de date; 3) MISD (Multiple Instructions Single Data) – flux multiplu de instrucţiuni, flux unic de date; 4) MIMD (Multiple Instructions Multiple Data) – flux multiplu de instrucţiuni, flux multiplu de date.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

55

Clasa SISD  Corespunde calculatoarelor cu flux unic de date şi flux unic de instrucţiuni;  O structură foarte răspândită;

 Corespunde organizării standard Neumann;  Flux de date unic => datele sunt scalari, adică clasa SISD corespunde calculatoarelor scalare;  Flux de instrucţiuni unic => la un moment dat se prelucrează o singură instrucţiune, de aceea aceste tipuri de calculatoare se mai numesc şi seriale (instrucţiune după instrucţiune);  Foarte ieftine şi au sistem de operare modest.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

56

Clasa SISD

FI

FD

UC

ALU

CPU

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

57

Clasa SIMD  Corespunde calculatoarelor cu flux unic de instrucţiuni şi flux multiplu de date;  Se obţine din SISD prin multiplicarea fluxului de date;

 La un moment dat: se execută o instrucţiune dar în procesul prelucrării intervin mai multe date care sosesc prin mai multe căi spre CPU;  Această clasă de calculatoare corespunde calculatoarelor vectoriale;  Fiecare instrucţiune acţionează asupra unui vector;  Astfel, calculatoarele SIMD sunt eficiente în rezolvarea numai a aplicaţiilor de natură vectorială.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

58

Clasa SIMD  Componentele unui vector trebuie prelucrate identic => necesitatea fragmentării ALU în mai multe subunităţi;  Subunitățile funcţionează sincron, fiecare prelucrând câte o componentă a vectorului;  Funcţionarea ALU este coordonată de UC unică şi asigură prelucrarea identică, simultană în toate subunităţile;  UC puternice: coordoneză tot setul de instrucţiuni;

 UC-urile din SIMD sunt mai complexe decât cele din SISD.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

59

Clasa SIMD

ALU1

FI

UC

ALU2

ALUn

FD1

FD2

FDn

CPU

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

60

Clasa SIMD  Subunităţile ALU comunică între ele printr-o reţea de interconectare numită reţea interprocesor;  Prin această reţea ALU-urile se informează reciproc asupra unor stări particulare ale acestora şi interschimbă date între memoriile ataşate;  SO este mult mai complex decât cel al SISD;  Costul este ridicat;

 Este nerentabil să se folosească un calculator SIMD pentru a prelucra date scalare, deoarece ar funcţiona doar un singur ALU.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

61

Clasa SIMD  Structură SIMD: ILLIAC 4: ALU1

M1 Retea de comunicatie intre ALU

ALU2

M2

ALUn

MAGISTRALA DE MEMORIE

UC

(retea interprocesor)

Mn

MAGISTRALA DE MEMORIE

spre dispozitive I/O

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

62

Clasa SIMD  ALU: n subunităţi;  Implicit şi MP este divizată în n module fiecare ataşat unui ALU;

 Toate modulele de memorie sunt interconectate între ele prin magistrala de memorie;  Această magistrală trebuie să aibă o rată de transfer foarte mare, comparabilă cu viteza de funcţionare a UC;

 UC este unică deoarece şi fluxul de instrucţiuni este unic şi are o structură complexă;  Instrucţiunile sunt citite din memoria principală transferate în UC care are rolul de a le interpreta;  UC decodifică fluxul de instrucţiuni şi funcţionarea sincronă a tuturor celor n ALU.

şi

coordonează

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

63

Clasa SIMD  Instrucţiunile care vin spre UC sunt de două tipuri: – de prelucrare vectorială, prin care se coordonează funcţionarea sincronă a tuturor ALU, adică stabilesc natura operaţiei care trebuie să fie executată de ALU vectorial; – de control, care se adresează numai UC-ului.

 În ambele cazuri fluxul de instrucţiuni este unic, fiecare instrucţiune executându-se secvenţial;  Toate instrucţiunile trec prin UC;  UC-ul stabileşte natura instrucţiunilor;  Numai în cazul în care sunt determinate instrucţiuni vectoriale, acestea se transferă către procesoarele aritmetice.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

64

Clasa MISD  Corespunde calculatoarelor cu flux multiplu de instrucţiuni şi flux unic de date;  Natură inconsistentă: acelaşi set de date ar trebui prelucrat în mai multe ALU în conformitate cu fluxul de instrucţiuni corespunzător;  D.p.d.v practic nu se justifică.

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

65

Clasa MISD FI1

UC1

ALU1

UC2

ALU2

UCn

ALUn

FI2 FD

FIn

CPU

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

66

Clasa MIMD  Corespunde calculatoarelor cu flux multiplu de instrucţiuni şi flux multiplu de date;  Cele mai complexe;  Corespunde structurii multiprocesor: n UC şi n ALU;  Prelucrările sunt independente una de alta;  Procesoarele pot omogene) sau eterogene);

fi

identice (structuri diferite (structuri

multiprocesor multiprocesor

 În mod curent structurile MIMD se fabrică cu 100-1000 procesoare;  Sunt cele mai flexibile în aplicaţii, permiţând abordarea unui registru mare de probleme;  Au cost ridicat. ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

67

Clasa MIMD FI1

FD1

UC1

ALU1

FI2

UC2

ALU2

FD2

FDn

FIn

UCn

ALUn

CPU

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

68

Clasa MIMD  SO foarte complexe;  Trebuie sincronizate activităţile celor n UC şi n ALU;  Între divesele părţi ale unei structuri MIMD există interdependenţe ce se realizează prin reţele de interconectare de tip CROSS-BAR;  Având în vedere complexitatea programelor executate de aceste sisteme de calcul, în vederea calculului adresei efective a operanzilor, între procesoare şi segmentele de memorie s-au introdus un ansamblu de blocuri (HM) care se numeşte harta memoriei;  Rolul unui astfel de bloc este de a face calculele de conversii de adrese astfel încât să se asigure accesul la segmentul de memorie corespunzător. ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

69

Clasa MIMD



M1

Memoria principala

M2

Retea de interconectare CROSS-BAR mxn

Mm

HM1

Retea de interconectare a procesoarelor

HM2

HMn



Harti de memorie

ALU1 ALU2 ALUn



I/O1

Periferice

I/O2

Retea de interconectare CROSS-BAR nxp

I/Op

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

70

Clasa MIMD  n ALU, m segmente de memorie şi p canale I/O;  Interconexiuni complexe;  Fiecare ALUi poate comunica cu: – orice segment de memorie Mj; – orice dispozitiv de intrare-ieşire I/Ok;

 Reţele de interconectare de tip CROSS-BAR: – una de dimensiune n x m (între ALU şi segmentele de memorie); – alta de dimensiune n x p (între ALU şi canalele I/O).

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

71

Clasa MIMD  În realizarea unei structuri MIMD se urmăreşte ca numărul segmentelor de memorie să fie cel puţin egal cu numărul procesoarelor aritmetice (nm);  Astfel, la momentul t: fiecare ALU are acces la un segment de memorie de unde extrage o instrucţiune, sau extrage o dată, sau depune o dată;  Deci, dacă două ALU cer acces simultan la acelaşi segment de memorie, atunci nu este satisfăcută dubla acţiune;  Situaţia inversă este posibilă: la un procesor aritmetic se pot dirija date de la 2 sau mai multe surse (segmente de memorie sau canale intrare-ieşire).

ARHITECTURA CALCULATOARELOR – Structuri de interconectare. Clasificare.

72