Limbajul de Programare VHDL

Curs
8/10 (2 voturi)
Domeniu: Automatică
Conține 2 fișiere: doc
Pagini : 39 în total
Cuvinte : 12233
Mărime: 94.27KB (arhivat)
Cost: Gratis
Un curs despre programarea in VHDL

Extras din document

VHDL ca un limbaj de programare

VHDL seamana cu un limbaj de programare; cei care sint familiarizati cu limbajul de programare Ada vor observa similaritati cu acest limbaj.

1.Elemente lexicale

a)Comentarii:

Comentarife in VHDL incep cu ' ' si se continua pina la sfirsitul rindului. Ele nu au semnificatie intr o descriere VHDL.

b)Identificatori:

Identificatorii in VHDL sint cuvinte rezervate sau nume definite de programator. Se formeaza dupa regula:

identificator ::= litera {[_ ] litera_sau_cifra}

Nu se face diferenta intre litere mari si litere mici, de exemplu id si Id reprezinta acelasi lucru.

c)Numere:

Numerele sint reprezentate in baza 10 (numere zecimale) sau in alta baza de numeratie (de la 2 la 16). Numerele care contin '.' sint considerate numere reale, celelalte fiind numere intregi. Numerele zecimale sint definite de:

numar_zecimal ::= intreg[.intreg][exponent]

intreg ::= cifra{[_]cifra}

exponent :.= E[+]intreg |E[-]¬intreg

Exemple:

0 1 123_456 678E9 numere intregi

0.0 0.1 2.345 67 12.3E 4 numere reale

Numerele date intr o baza de numeratie sint definite de:

numar bazat ::= baza#intreg bazat[.intreg bazat]#[exponent]

baza ::= intreg

intreg_bazat ::= cifra_extinsa{[_]cifra extinsa}

cifra extinsa ::= cifra | litera

Baza si exponentul sint in baza 10. Exponentul reprezinta puterea la care se ridica baza, cu care va fi inmultit numarul. Literele de la A la F (de la a la f) sint 'cifre extinse' si reprezinta numerele de la 10 la 15.

Exemple:

2# 1100 0100# 16#C4# 4#301 #E1 nr. intreg 196

2# 1.1111_1111_111 #E+ 11 16#F. FF#E2 nr. real 4095

d) Caractere:

Caracterele sint delimitate de ’ ’.

Exemple: 'A' 'a'

e)Siruri de caractere:

Sirurile de caractere sint delimitate de "". Pentru a include " intr un sir, ghilimelele trebuie dublate. Un sir de caractere poate reprezenta valoarea unui obiect care a un vector de caractere.

Exemple:

“Un sir in sir: “”Un sir”” “ --sir care contine "

f)Siruri de biti:

VHDL permite o reprezentare convenabila a vectorilor de biti ('0' sau ' 1'). Sintaxa este:

sir biti ::= baza_de_reprezentare"valoare_bit"

baza de_reprezentare ::= B | O | X

valoare bit ::= cifra extinsa{[ ]cifra_extinsa}

Baza de reprezentare poate fi B (in binar), O (in octal) sau H (in hexazecimal).

Exemple:

B"1010110" --lungimea sirului e 7

O"126" --lungimea a 9, B”001_010_110"

H"56" --lungimea a 8, B"0101_0110"

2.Tipuri de date si obiecte

In VHDL exista doua feluri de tipuri: tipuri SCALARE si tipuri COMPUSE.

Tipurile scalare includ numere, cantitati fizice si enumerari, si tipuri predefinite. Tipurile compuse sint vectori si inregistrari. In VHDL sint definite si tipurile 'access' (pointeri) si 'file' (fisiere).

declaratie_de_tip :.= type identificator is tip

tip ::= tip_scalar

tip_compus

tip_access

tip_file

tip_scalar ::= tip_enumerare I tip-intreg I tip_real tip_fizic

tip-compus ::= tip_tablou I tip_inregistrare

a)Tip intreg:

Tipul intreg reprezinta o multime de numere intregi dintr-un interval specificat. Sintaxa este:

tip_intreg ::= multime_in_interval

multime_in_interval ::= range

interval interval ::= expresie_simpla directie expresie_simpla

directie :.= to I downto

Expresiile care specifica intervalul trebuie sa aiba valori intregi. Limitele intervalului sint cuprinse intre -2147483647 si +2147483647.

Exemple:

type byte_int is range 0 to 255;

type signed is range -32768 to 32767;

type bit_index is range 31 downto 0;

Exista tipul predefinit 'integer', care reprezinta numere intregi cuprinse intre -2147483647 si +2147483647.

b)Tip fizic:

Tipul fizic este un tip numeric de reprezentare a unor cantitati fizice (lungime, timp, volti). Declaratia de tip include specificarea unei unitati de masura de baza si eventual un numar de unitati de masura secundare, care reprezinta multiplii ai unitatii de baza. Sintaxa este:

tip_fizic ::= constructor_interval

units

unitate_de_baza

{unitati secundare}

end units

unitate_de baza ::= identificator;

unitati_secundare ::= identificator = literal_fizic;

literal_fizic :.= [literal_abstract]nume_unit;

Exemple:

Preview document

Limbajul de Programare VHDL - Pagina 1
Limbajul de Programare VHDL - Pagina 2
Limbajul de Programare VHDL - Pagina 3
Limbajul de Programare VHDL - Pagina 4
Limbajul de Programare VHDL - Pagina 5
Limbajul de Programare VHDL - Pagina 6
Limbajul de Programare VHDL - Pagina 7
Limbajul de Programare VHDL - Pagina 8
Limbajul de Programare VHDL - Pagina 9
Limbajul de Programare VHDL - Pagina 10
Limbajul de Programare VHDL - Pagina 11
Limbajul de Programare VHDL - Pagina 12
Limbajul de Programare VHDL - Pagina 13
Limbajul de Programare VHDL - Pagina 14
Limbajul de Programare VHDL - Pagina 15
Limbajul de Programare VHDL - Pagina 16
Limbajul de Programare VHDL - Pagina 17
Limbajul de Programare VHDL - Pagina 18
Limbajul de Programare VHDL - Pagina 19
Limbajul de Programare VHDL - Pagina 20
Limbajul de Programare VHDL - Pagina 21
Limbajul de Programare VHDL - Pagina 22
Limbajul de Programare VHDL - Pagina 23
Limbajul de Programare VHDL - Pagina 24
Limbajul de Programare VHDL - Pagina 25
Limbajul de Programare VHDL - Pagina 26
Limbajul de Programare VHDL - Pagina 27
Limbajul de Programare VHDL - Pagina 28
Limbajul de Programare VHDL - Pagina 29
Limbajul de Programare VHDL - Pagina 30
Limbajul de Programare VHDL - Pagina 31
Limbajul de Programare VHDL - Pagina 32
Limbajul de Programare VHDL - Pagina 33
Limbajul de Programare VHDL - Pagina 34
Limbajul de Programare VHDL - Pagina 35
Limbajul de Programare VHDL - Pagina 36
Limbajul de Programare VHDL - Pagina 37
Limbajul de Programare VHDL - Pagina 38
Limbajul de Programare VHDL - Pagina 39

Conținut arhivă zip

  • Limbajul de Programare VHDL
    • cuprins.doc
    • VHDL.doc

Alții au mai descărcat și

Limbajul VHDL

1.Limbajul VHDL Limbajul VHDL este unul dintre limbajele standard folosite pentru a descrie sistemele numerice.VHDL – Very Hight Speed Integrated...

Proiect Verilog

Numarator 4 biti- Counter Intrari: - Clk -intrare de ceas, ale carei fronturi sunt numerate; - Reset -intrare de reset, active pe nivel ridicat;...

Programarea automatelor programabile

Elementele de programare ale limbajului orientat pe scheme cu contacte Scrierea unui program în limbajul orientat pe scheme de contacte (Ladder...

Vulnerabilitati de Securitate in Retele Radio Wi-Fi

1. Introducere in retele wireless Necesitatea unei retele de calculatoare este evidenta, fie ca este vorba de o firma mica sau mijlocie, fie ca...

Teoria Sistemelor

Reprezentarea Sistemelor Dinamice Liniare Multivariabile prin Matrice de Transfer 1. Matricea de transfer; legatura cu reprezentarile de tip...

Reprezentarea Informațiilor cu Obiecte

Informatiile pe care le reprezentam în memoria calculatorului sunt rareori atât de simple precum culorile sau literele. În general, dorim sa...

Aplicatii de retea în internet

Posta electronica (e - mail) Milioane de oameni sunt conectati într-un fel sau altul la reteaua Internet si pot trimite mesaje prin intermediul...

Fundamentele Calculatoarelor

Prin proces industrial se întelege un ansamblu de transformari mecanice, electrice sau de alta natura care au loc în instalatii industriale....

Ai nevoie de altceva?