Dr. Baruch Zoltan Francisc
Profesor




BARUCH, ZOLTAN FRANCISC

STRUCTURA SISTEMELOR DE CALCUL
CU APLICAȚII


Editura TODESCO, Cluj-Napoca, 2001, ISBN 973-8198-13-5 (350 pagini)










CUPRINS


1. CALCULATORUL DIDACTIC CD

1.1. PREZENTAREA GENERALĂ A CALCULATORULUI DIDACTIC
1.2. INSTRUCȚIUNILE CALCULATORULUI DIDACTIC

1.2.1. Limbajul de descriere utilizat. 1.2.2. Structura cuvântului. 1.2.3. Setul de instrucțiuni. 1.2.4. Exemple de programe

1.3. STRUCTURA CALCULATORULUI DIDACTIC

1.3.1. Structura generală. 1.3.2. Semnalele de comandă. 1.3.3. Structura detaliată

1.4. EXECUȚIA INSTRUCȚIUNILOR
1.5. APLICAȚII

2. DISPOZITIVE DE ÎNMULȚIRE ȘI ÎMPĂRȚIRE BINARĂ

2.1. ÎNMULȚIREA BINARĂ

2.1.1. Metode de înmulțire binară. 2.1.2. Înmulțirea prin metoda directă. 2.1.3. Înmulțirea prin metoda Booth. 2.1.4. Înmulțirea pe grupe de cifre

2.2. ÎMPĂRȚIREA BINARĂ

2.2.1. Principiul împărțirii binare. 2.2.2. Metode de împărțire binară. 2.2.3. Metoda refacerii restului parțial. 2.2.4. Metoda fără refacerea restului parțial

2.3. Aplicații

3. DISPOZITIVE DE ÎNMULȚIRE ȘI ÎMPĂRȚIRE ZECIMALĂ

3.1. ÎNMULȚIREA ZECIMALĂ

3.1.1. Metoda adunării repetate. 3.1.2. Metoda celor nouă multipli ai deînmulțitului. 3.1.3. Metoda componenților din dreapta și din stânga

3.2. ÎMPĂRȚIREA ZECIMALĂ

3.2.1. Metoda refacerii restului parțial. 3.2.2. Metoda fără refacerea restului parțial. 3.2.3. Metoda celor nouă multipli ai împărțitorului

3.3. APLICAȚII

4. CALCULATOARE MICROPROGRAMATE

4.1. PRINCIPIUL CALCULATOARELOR MICROPROGRAMATE

4.1.1. Introducere. 4.1.2. Microprogramarea pe orizontală și pe verticală. 4.1.3. Structura unei unități de comandă microprogramate

4.2. EXEMPLU DE CALCULATOR MICROPROGRAMAT PE ORIZONTALĂ

4.2.1. Structura căii de date. 4.2.2. Formatul microinstrucțiunilor. 4.2.3. Secvențierea microinstrucțiunilor. 4.2.4. Limbajul de microasamblare

4.3. EXEMPLU DE CALCULATOR MICROPROGRAMAT PE VERTICALĂ

4.3.1. Microinstrucțiunile verticale. 4.3.2. Structura secțiunii de control

4.4. APLICAȚII

5. SISTEMUL DE PROIECTARE ACTIVE-HDL

5.1. PREZENTARE GENERALĂ A SISTEMULUI ACTIVE-HDL
5.2. COMPONENTELE SISTEMULUI ACTIVE-HDL

5.2.1. Editorul pentru codul sursă. 5.2.2. Editorul pentru scheme bloc. 5.2.3. Editorul pentru diagrame de stare. 5.2.4. Compilatorul. 5.2.5. Simulatorul: Etapele simulării; Definirea stimulilor; Execuția simulării. 5.2.6. Editorul pentru forme de undă. 5.2.7. Componenta Design Explorer. 5.2.8. Componenta Design Browser. 5.2.9. Componenta Library Manager: Structura bibliotecilor; Fereastra Library Manager; Operații cu biblioteci. 5.2.10. Fereastra Console. 5.2.11. Fereastra Processes. 5.2.12. Fereastra Watch. 5.2.13. Fereastra Call Stack. 5.2.14. Fereastra Dataflow. 5.2.15. Fereastra List

5.3. EXEMPLU DE PROIECTARE

5.3.1. Descrierea proiectului. 5.3.2. Crearea unui nou proiect: Introducerea numelui proiectului; Crearea unui fișier sursă; Adăugarea porturilor. 5.3.3. Editarea și compilarea codului sursă: Descrierea arhitecturii numărătorului; Specificarea bibliotecii pentru compilare; Compilarea. 5.3.4. Vizualizarea structurii proiectului. 5.3.5. Simularea: Inițializarea simulării; Asignarea stimulatorilor; Execuția simulării; Editarea formelor de undă; Trasarea codului sursă; Setarea punctelor de întrerupere; Validarea punctelor de întrerupere; Vizualizarea rezultatelor simulării sub formă textuală. 5.3.6. Adăugarea unui nou fișier la proiect. 5.3.7. Utilizarea editorului pentru automate de stare: Editarea porturilor automatului de stare; Plasarea simbolurilor stărilor; Editarea simbolului unei stări; Adăugarea tranzițiilor; Editarea tranzițiilor; Adăugarea condițiilor pentru tranziții; Adăugarea acțiunilor pentru generarea ieșirilor; Specificarea proprietăților automatului; Generarea codului sursă. 5.3.8. Crearea unui fișier de nivel ierarhic superior. 5.3.9. Compilarea întregului proiect. 5.3.10. Simularea proiectului

5.4. APLICAȚII

6. ELEMENTE DE BAZĂ ALE LIMBAJULUI VHDL

6.1. UNITĂȚI DE PROIECTARE
6.2. ENTITĂȚI

6.2.1. Nume de entități: identificatori. 6.2.2. Declararea entităților. 6.2.3. Semnale și porturi: Conceptul de semnal; Declararea porturilor; Modul porturilor; Tipul porturilor. 6.2.4. Generice

6.3. ARHITECTURI

6.3.1. Definirea arhitecturilor. 6.3.2. Declararea semnalelor. 6.3.3. Asignarea valorilor la semnale. 6.3.4. Stiluri de descrieri arhitecturale: Descrieri funcționale; Descrieri de tipul fluxului de date; Descrieri structurale; Compararea descrierilor arhitecturale

6.4. MODELAREA PENTRU SIMULARE

6.4.1. Simularea bazată pe evenimente. 6.4.2. Drivere de semnal. 6.4.3. Ciclul de simulare. 6.4.4. Drivere multiple și funcții de rezoluție

6.5. MODELAREA PENTRU SINTEZĂ
6.6. APLICAȚII

7. TIPURI, ATRIBUTE ȘI OPERATORI ÎN LIMBAJUL VHDL

7.1. OBIECTE DE DATE

7.1.1. Constante. 7.1.2. Variabile. 7.1.3. Fișiere

7.2. TIPURI DE DATE

7.2.1. Prezentare generală a tipurilor de date: Clasificarea tipurilor de date; Tipuri care se pot utiliza pentru sinteza logică; Tipuri standard; Operatori standard. 7.2.2. Tipuri scalare: Tipuri enumerate; Tipuri întregi; Tipuri flotante; Tipuri fizice. 7.2.3. Tipuri compuse: Tablouri; Înregistrări

7.3. ATRIBUTE

7.3.1. Atribute pentru tipuri. 7.3.2. Atribute pentru tablouri. 7.3.3. Atribute pentru semnale

7.4. OPERATORI

7.4.1. Setul de operatori standard și precedența acestora. 7.4.2. Operatori logici. 7.4.3. Operatori relaționali. 7.4.4. Operatori de deplasare. 7.4.5. Operatori aritmetici. 7.4.6. Operatorul de concatenare

7.5. APLICAȚII

8. INSTRUCȚIUNI SECVENȚIALE ȘI CONCURENTE ÎN LIMBAJUL VHDL

8.1. INSTRUCȚIUNI SECVENȚIALE

8.1.1. Procese: Structura și execuția unui proces; Procese cu liste de sensibilitate incomplete; Instrucțiunea wait; Procese combinaționale și procese secvențiale. 8.1.2. Instrucțiunea secvențială de asignare a semnalelor: Execuția instrucțiunii secvențiale de asignare; Reacții inverse; Întârzierea inerțială; Întârzierea de transport. 8.1.3. Variabile: Declararea și inițializarea variabilelor; Instrucțiunea de asignare a variabilelor. 8.1.4. Instrucțiunea if: Sintaxa și execuția instrucțiunii if; Interpretarea sintezei instrucțiunii if; Instrucțiuni if incomplete; Instrucțiuni if în care apar variabile. 8.1.5. Instrucțiunea case. 8.1.6. Instrucțiuni de buclare: Instrucțiunea loop; Instrucțiunea while loop; Instrucțiunea for loop; Instrucțiunea next; Instrucțiunea exit. 8.1.7. Instrucțiunea secvențială assert

8.2. INSTRUCȚIUNI CONCURENTE

8.2.1. Structura și execuția unei arhitecturi. 8.2.2. Procese. 8.2.3. Instrucțiuni concurente de asignare a semnalelor: Instrucțiunea de asignare simplă; Instrucțiunea de asignare condițională; Instrucțiunea de asignare selectivă; Instrucțiunea block; Instrucțiunea concurentă assert

8.3. DESCRIEREA UNOR CIRCUITE COMBINAȚIONALE

8.3.1. Multiplexoare. 8.3.2. Codificatoare prioritare

8.4. DESCRIEREA UNOR CIRCUITE SECVENȚIALE

8.4.1. Circuite secvențiale sincrone și asincrone. 8.4.2. Bistabile. 8.4.3. Registre. 8.4.4. Numărătoare. 8.4.5. Resetarea componentelor sincrone. 8.4.6. Buffere cu trei stări și semnale bidirecționale

8.5. APLICAȚII

9. AUTOMATE DE STARE ÎN LIMBAJUL VHDL

9.1. EXEMPLU DE PROIECTARE

9.1.1. Proiectarea tradițională. 9.1.2. Proiectarea utilizând limbajul VHDL

9.2. PROIECTAREA UNUI CONTROLER DE MEMORIE
9.3. TEHNICI PENTRU GENERAREA SEMNALELOR DE IEȘIRE

9.3.1. Ieșiri decodificate din biții de stare. 9.3.2. Ieșiri decodificate în registre paralele de ieșire. 9.3.3. Ieșiri codificate în cadrul biților de stare. 9.3.4. Codificarea cu un bistabil pe stare

9.4. AUTOMATE DE STARE DE TIP MEALY
9.5. ALTE CONSIDERAȚII DE PROIECTARE

9.5.1. Codificarea stărilor utilizând tipuri enumerate. 9.5.2. Codificarea explicită a stărilor. 9.5.3. Toleranța la defecte a automatelor codificate cu un bistabil pe stare

9.6. APLICAȚII

10. PROIECTAREA STRUCTURALĂ ÎN LIMBAJUL VHDL

10.1. AVANTAJELE PROIECTĂRII STRUCTURALE
10.2. ELEMENTELE UNEI DESCRIERI STRUCTURALE

10.2.1. Exemplu de descriere structurală. 10.2.2. Declarația componentelor. 10.2.3. Instanțierea componentelor. 10.2.4. Instanțierea directă a entităților. 10.2.5. Specificarea configurației

10.3. BIBLIOTECI
10.4. PACHETE

10.4.1. Declarația pachetelor. 10.4.2. Corpul pachetelor. 10.4.3. Pachete cu declarații de componente

10.5. GENERICE ȘI COMPONENTE PARAMETRIZATE

10.5.1. Principiul genericelor. 10.5.2. Definirea entităților generice. 10.5.3. Utilizarea componentelor generice. 10.5.4. Tipul parametrilor generici. 10.5.5. Construirea unei biblioteci de componente

10.6. INSTRUCȚIUNEA GENERATE

10.6.1. Instrucțiunea for generate. 10.6.2. Instrucțiunea if generate. 10.6.3. Instanțierea componentelor în instrucțiunile generate

10.7. APLICAȚII

11. SUBPROGRAME ÎN LIMBAJUL VHDL

11.1. ROLUL SUBPROGRAMELOR
11.2. FUNCȚII

11.2.1. Definirea funcțiilor. 11.2.2. Utilizarea funcțiilor. 11.2.3. Valori inițiale. 11.2.4. Parametri cu domeniul nelimitat. 11.2.5. Valori returnate cu domeniul nelimitat. 11.2.6. Instrucțiuni return multiple. 11.2.7. Redefinirea funcțiilor. 11.2.8. Funcții pentru conversii de tip: Conversii de tip predefinite; Conversii de tip definite de utilizator. 11.2.9. Funcții ca alternativă la instanțierea componentelor. 11.2.10. Funcții problematice pentru sinteză. 11.2.11. Definirea operatorilor ca și funcții: Operatori predefiniți; Redefinirea operatorilor. 11.2.12. Funcții standard. 11.2.13. Plasarea definiției funcțiilor

11.3. PROCEDURI

11.3.1. Definirea procedurilor. 11.3.2. Apelul procedurilor. 11.3.3. Parametri cu domeniul nelimitat. 11.3.4. Parametri cu modul inout. 11.3.5. Semnale utilizate ca parametri. 11.3.6. Redefinirea procedurilor

11.4. APLICAȚII

12. CALCULATORUL DLX

12.1. ARHITECTURA CALCULATORULUI DLX

12.1.1. Setul de registre. 12.1.2. Structura căii de date pipeline și execuția instrucțiunilor. 12.1.3. Hazarduri

12.2. LIMBAJUL DE ASAMBLARE DLX

12.2.1. Expresii. 12.2.2. Directive. 12.2.3. Setul de instrucțiuni: Instrucțiuni pentru transferul datelor; Instrucțiuni aritmetice și logice; Instrucțiuni de control; Instrucțiuni pentru operații în virgulă mobilă

12.3. SIMULATORUL WinDLX

12.3.1. Prezentare generală. 12.3.2. Apelul funcțiilor de sistem: Deschiderea unui fișier; Închiderea unui fișier; Citirea unui bloc dintr-un fișier; Scrierea unui bloc într-un fișier; Scrierea la dispozitivul standard de ieșire

12.4. UTILIZAREA SIMULATORULUI WinDLX

12.4.1. Lansarea și configurarea simulatorului. 12.4.2. Încărcarea programelor de test. 12.4.3. Simularea: Fereastra căii de date pipeline; Fereastra de cod; Fereastra diagramei ciclurilor de ceas; Fereastra punctelor de întrerupere; Fereastra registrelor; Fereastra de statistici

12.5. APLICAȚII

BIBLIOGRAFIE