Microprocesoare

Titularul disciplinei :  Conf. dr. ing. Mihai Horia Zaharia

 

Codul disciplinei :  TC210
Numărul de credite : 7
Semestrul : 4    
Nr.ore : Cursul = 3 ore/saptamana,  Lucrarile de laborator = 3 ore/saptamana 
Forma de evaluare : Examen
Discipline anterioare obligatorii : Analiza si sinteza dispozitivelor numeice       

Obiectivele cursului

Se urmareste obtinerea unei intelegeri bune atat asupra principiilor care stau la baza proiectarii unui microprocesor (arhitectura, algoritmi fundamentali, descriere vhdl) cat si a interfatarii acestua cu memoria sau cu alte dispozitive master pe o mgistrala de factura particulara sau apartinind unui standard anume.

Proceduri folosite la predare, cerinte la examinare

                  Nota finala (NF) este obtinuta astfel:

         evaluarea activitatii de laborator (daca se alege realizarea celor doua proiecte de laborator) 50%NF

         proba practica in cadrul examenului sau doua proiecte de semestru la alegere: 50% NF, nota 5 minim necesar pentru acordarea examenului.

         proba teoretica in cadrul examenului, 50 % NF

Continutul cursului

Cap. 1  Introducere

1.1    Introducere

1.2    Modelul masinii Turing

1.3    Memoria

1.3.1        1.3.1. Ierarhia de memorie

1.2    Performanta sistemelor de calcul

1.4.1        Evaluarea performantei unui procesor

1.5    Tehnici de crestere a performantei

1.5.1        Introducerea memorie "cache"

1.5.2        Procesare de tip "pipe-line" a informatiei

1.5.3        Procesare superscalara

1.6     Clasificarea evolutiei principalelor clase de arhitecturi ale sistemelor de calcul

 

Cap. 2  Fundamentele teoretice ale calculului binar

2.1   Numere binare

2.2  Reprezentarea numerelor in virgula fixa

2.3  Reprezentarea numerelor in virgula mobila

2.3.1        Reprezentarea numerelor in virgula mobila conform standardului IEEE

2.4   Adunarea numerelor binare

2.5  Inmultirea numerelor binare

2.5.1        Inmultirea numerelor binare reprezentate in cod complementar fata de doi

2.5.1        Algoritmul Booth

2.6    Impartirea numerelor in virgula fixa

2.6.1        Algoritm de impartire fara refacerea restului

2.6.2        Algoritm de impartire cu refacerea restului

2.7    Aritmetica in virgula mobila

Cap. 3  Operatori hardware primitivi

3.1   Structura de sumator scazator

3.2  Retele combinationare de inmultire

3.2.1        Inmultirea folosind sumatoare tip "Carry Save"

2.6  Impartirea numerelor in virgula fixa

3.3.1        Impartirea prin inmultiri repetate

Cap. 4  Elemente de proiectare a unui sisteme de calcul

4.1    Problema proiectarii

4.1.1        Teluri specifice

4.1.2        Nivelele proiectarii

4.1.2.1  Nivelul poarta

4.1.2.2  Nivelul registru

4.1.2.3  Nivelul procesor

4.2    Tehnici de proiectare

4.2.1        Exemplu de proiectare a unui multiplicator folosind metoda inmultirii normale

Cap. 5  Structura procesorului

5.1. Structura generica a unui procesor

5.2. Structura generica a unui procesor bazat pe idea de acumulator

5.3. Structura Intel a unui procesor bazat pe idea de acumulator

5.4. Exemplu de proiectare a unui microprocesor simplu RISC

Cap. 6  Magistrala si arhitecturi orientate pe magistrala

6.1    Magistrala

6.1.1        Definitie

6.1.2        Termeni specifici

6.1.3        Clasificari ale magistralelor

6.2    Magistrale Multibus I - Studiu de caz

6.2.1        Adresarea

6.2.2        Transferul de date

6.2.3        Ciclurile de baza

6.3    Arbitrarea cererilor de magistrala

6.3.1        Strategii bazate pe prioritate

6.3.2        Strategii "Round and Robin"

6.4    Arbitrarea pe magistrala Multibus I - Studiu de caz

6.5    Intreruperile si arbitrarea lor pe multibus

6.6    Arhitecturi specifice magistralei Multibus

Cap. 7  Sisteme de memorie

7.1    Clasificarea diverselor tipuri de memorie

7.2    Nivele ierarhice ale uni sistem de memorie

7.2.1        Celula elementara

7.2.2        Locatia de memorie

7.2.3        Sistemul de memorie

7.2.3.1  Sisteme de memorie de ordinul I

7.2.3.2  Sisteme de memorie de ordinul II

7.3    Notiunea de adresare

7.4    Parametri specifici memoriilor

7.5    Diagrama de semnal generica specifica functionarii memoriei

7.6    Memoria statica 2114 - Studiu de caz

7.6.1        Structura interna

7.6.2        Ciclurile de citire si de scriere

7.6.3        Exemplu de expandare

7.7    Memoria dinamica

7.7.1        Schema de principiu

7.7.2        Principii de implementare. Notiunea de reimprospatare (refresh)

7.7.3        Ciclul de citire scriere

7.7.4        Ciclul de refresh

7.8    Maparea memoriei intr-un spatiul de adrese

7.9    Organizarea memorie in sisteme cu magistrala de date de 16 biti

Cap. 8  Memoria Cache

8.1    Concepte de baza

8.2    Principiile localitatii

8.3    Arhitecturi specifice

8.3.1        "Look Through"

8.3.2        "Look Aside"

8.4    Coerenta si consistenta informatiei

8.4.1        Metoda "Write Through"

8.4.2        Metoda "Write Back"

 

Lucrarile de laborator. Proiect

 

Vezi la  http://eureka.cs.tuiasi.ro/~mike/LabMicro.htm  

 

Bibliografia recomandata

 

1.      Hayes J. P., "Computer architecture and organization", Mc. Graw Hill, 1998

2.      Hwang K., "Advanced Computer Architecture", Mc Graw Hill, 1993

3.      Sztonojov et al, "De la poarta TTl la microprocesor", Ed. Tehnica Bucuresti, 1987

4.      Valachi Al, Barsan M., "Tehnici Numerici Automate", Ed. Junimea, 1986

5.      Vintan L. N., Florea A., "Microarhitrecturi de procesare a informatiei", Ed. Tehnica, 2000

6.      Weste N, Ehroghian, K. "Principles of CMOS VLSI design", Adisson Wesley, 1985

7.      Musca Gh., "Programarea in limbaj de asamblare", Ed. Teora, 1997

8.      Stephen M. P., Douglas J. A., "The 80286 architecture", John Wiley & Sons, 1986