tpac1_2011

13
Tehnici de proiectare asistata de calculator Dr. Doru Todinca www.cs.upt.ro/~todinca E-mail: [email protected]

description

c1

Transcript of tpac1_2011

Page 1: tpac1_2011

Tehnici de proiectare asistata de calculatorde calculator

Dr. Doru Todincawww.cs.upt.ro/~todinca

E-mail: [email protected]

Page 2: tpac1_2011

Organizare

• 2 ore curs, 2 ore laborator pe saptamina• Examen cu pondere 50%, laboratorul 50%• Prezenta la laborator este obligatorie• Laborator:• Laborator:

– Lucrari introductive in VHDL– Mini-proiecte in VHDL– Simularea unor retele in OMNeT++

Page 3: tpac1_2011

Obiectivele cursului

• Tehnici de proiectare asistata de calculator a:– Sistemelor hardware– Sistemelor de telecomunicatii

• Insusirea unor tehnici de modelare si simulare, adica• Un nou mod de a programa !(mai corect – de a • Un nou mod de a programa !(mai corect – de a modela): timp de simulare, descrierea structurii modelului, descrierea comportamentului

• Studiul limbajului VHDL, ca limbaj reprezentativ de descriere hardware (HDL = Hardware Description Language)

• Verificarea prin simulare a unor proiecte realizat anteriore

• Utilizarea unui simulator de retele : OMNeT++

Page 4: tpac1_2011

Realizarea obiectivelor: pentru sistemele hardware

• La curs: elemente ale limbajului VHDL – Mecanismul de simulare– Modelarea comportamentala secventiala– Citeva elemente de modelare structurala– Descrierea unor circuite: registre, MUX, automate

secventiale (FSM), magistrale– Fata de anii trecuti se va reduce partea de VHDL

• La laborator:– Realizarea unor mini-proiecte in VHDL, pornind de la

proiecte realizate la materii studiate anterior

Page 5: tpac1_2011

Realizarea obiectivelor: pentru sistemele de telecomunicatii

• La curs: – Calitatea serviciilor (QoS) si diferentierea calitatii serviciilor in

Internet– Arhitecturi: servicii integrate (IntServ), servicii diferentiate

(DiffServ)– Tehnici: planificare (scheduling), admiterea utilizatorilor

(admission control), rutare (routing), controlul congestiei (admission control), rutare (routing), controlul congestiei (congestion control), controlul erorilor, etc.

– Aceasta parte a cursului va fi mult extinsa fata de anii trecuti !• La laborator:

– Utilizarea unui simulator de retele (OMNeT++)– Realizarea unor modele de simulare pentru studiul

performantelor unor arhitecturi (IntServ, DiffServ) si a unor algoritmi (de scheduling, admission control, etc)

– Colectarea si interpretarea rezultatelor simularilor

Page 6: tpac1_2011

Bibliografie

• Petru Eles, Krzysztof Kuchcinski, Zebo Peng, “System Synthesis with VHDL”, Kluwer Academic Publishwers, 1998 (capitolul 2, mai ales pt partea de modelare secventiala)

• J. Bhasker, “A VHDL Primer”, Prentice Hall, 1995• P. Ashenden, “VHDL Cookbook”, www…• P. Ashenden, “VHDL Cookbook”, www…• Capitole de curs, pentru partea de VHDL, pe pagina

cursului (NU contin tot cursul !!!)• William Stallings, Data and Computer Communications,

Eight Edition, Pearson Prentice Hall, 2007• Slide-uri in Power Point

Page 7: tpac1_2011

Partea I: Limbajul VHDL

Capitolul 1: INTRODUCERE

Page 8: tpac1_2011

Introducere• VHDL – VHSIC Hardware Description Language• VHSIC – Very High Speed Integrated Circuits – program al DoD in

anii ‘80, – Pornea de la situatia data:

• existau numeoase tool-uri si limbaje, de obicei proprietatea unor firme• Fiecare dintre acestea acopereau citeva niveluri ale unui proiect hardware,

dar nu toate nivelurile• Existau numeroase probleme de compatibilitate intre ele• Existau numeroase probleme de compatibilitate intre ele

– DoD lanseaza o competitie internationala pentru un limbaj de descriere hardware care:

• Sa devina standard international (adica, sa nu fie proprietatea unei companii)

• Sa acopere cit mai multe niveluri ale unui proiect hardware (toate)• Sa permita comunicarea intre echipe diferite ce lucreaza la acelasi proiect

• Prima standardizare a limbajului: VHDL’87, standard IEEE 1072-87• Apoi: VHDL’93:

– ofera o sintaxa mai omogena– Mai multe (prea multe !!) facilitati de lucru la nivel inalt (variabile globale,

pointeri)

Page 9: tpac1_2011

Introducere (2)

• Concurentul VHDL: limbajul Verilog – A pornit ca limbaj dezvoltat de o firma (Gateway),

fiind apoi proprietatea firmei Cadence Design Systems

– A devenit public in 1991, fiind acum standard IEEE– A devenit public in 1991, fiind acum standard IEEE– Diferente de sintaxa fata de VHDL (sintaxa

asemanatoare cu C) – si uneori de filozofie: porti predefinite, functii de

rezolutie predefinite in limbaj, spre deosebire de VHDL, unde nu exista asa ceva.

Page 10: tpac1_2011

Caracteristici ale VHDL

• VHDL permite – Descrierea (specificarea) unor circuite / sisteme– Documentare– Simularea functionarii unor circuite /sisteme– Sinteza circuitelor

• Caracteristici comune limbajelor de programare de nivel inalt:– Tipuri de date, instructiuni, etc – VHDL e un limbaj puternic tipizat !

Page 11: tpac1_2011

Caracteristici ale VHDL specifice HDL

• Mecanismul de simulare: ordoneaza evenimentele, se ocupa de avansul timpului

• Exista timpul inclus in limbaj: in VHDL tipul time de tip fizic, bazat pe Integer

• de ex in Omnet++, timpul e de tip real in versiunile de Omnet mai mici de 4.0• Avantajele utilizarii unui timp de tip intreg: reprezentarea intregilor depinde

mai putin de implementare decit a nr flotantemai putin de implementare decit a nr flotante• Permite descrieri structurale• Instructiunile VHDL sunt descrise in termeni de simulare (au o

semantica bazata pe simulare)– Avantaj: simularea este determinista (rezultatul simularii unui model va fi

acelasi indiferent de sistemul pe care este rulata simularea)– Dezavantaj: face mai dificila sinteza circuitelor (exista instructiuni care nu

sunt potrivite pt sinteza) • VHDL este un limbaj concurent:

– deoarece si hardware-ul functioneaza concurent– Exista in limbaj structuri in cadrul carora instructiunile se executa

secvential: procese si subprograme

Page 12: tpac1_2011

Niveluri de descriere (abstractizare)

Nivel Domeniul comportamental

Domeniul structural

Domeniul fizic

Circuit Ecuatii diferentiale Tranzistori Poligoane

Logic Ecuatii booleene Porti, bistabile Celule elementareelementare

RTL (Register Transfer Level)

Fluxuri de date Registre, multiplexoare, ALU

Circuit sau macrocelula

Sistem Algoritmi si procese CPU, memorii Circuite, placi

-Gradul de abstractizare creste de la circuit spre sistem

-Diagrama Y [Gajski]: o reprezentare grafica a continutului tabelului de mai sus

-VHDL acopera nivelurile de la logic la sistem, in cadrul domeniilor comportamental si structural

Page 13: tpac1_2011

Sinteza

• Se defineste in general ca fiind transformarea unei descrieri comportamentale intr-o descriere structurala

• In functie de nivelul de la care se porneste, exista • In functie de nivelul de la care se porneste, exista sinteza de nivel sistem, de nivel inalt, de nivel logic si de nivel fizic

• Se incearca automatizarea procesului de sinteza: mai dificila la nivelurile mai inalte

• In cadrul cursului nu vom studia sinteza circuitelor