Verilog: diferència entre les revisions

Contingut suprimit Contingut afegit
Cap resum de modificació
Cap resum de modificació
Línia 1:
'''Verilog''' és un llenguatge de descripció de hardware (HDL, de l'Anglès Hardware Description Language) usat per modelar sistemes electrònics. El llenguatge, algunes vegades anomenat Verilog HDL, suporta el disseny, test i implementació de circuits analògics, digitals i de senyal mixta a diferents nivells d'abstracció.
 
Els dissenyadors de Verilog volien crear un llenguatge amb una sintaxi similar a la del llenguatge de programació [[Llenguatge C]], de tal manera que li resultés familiar als enginyers i així fora ràpidament acceptada. El llenguatge té un preprocessador com C, i la majoria de paraules reservades de control com "if", "while", etc, són similars. El mecanisme de format en les rutines d'impressió i en els operadors del llenguatge (i la seva precedència) són també similars. A diferència del llenguatge C, Verilog usa Begin / End en lloc de claus per definir un bloc de codi. D'altra banda la definició de constants en Verilog requereix la longitud de bits amb la seva base. Verilog no té estructures, apuntadors o funcions recursives. Finalment el concepte de temps, molt important en un HDL, no es troba en C.
 
El llenguatge difereix dels llenguatges de programació convencionals, en què l'execució de les sentències no és estrictament lineal. Un disseny en Verilog consisteix d'una jerarquia de mòduls. Els mòduls són definits amb conjunts de ports d'entrada, sortida i bidireccionals. Internament un mòdul conté una llista de cables i registres. Les sentències concurrents i seqüencials defineixen el comportament del mòdul, descrivint les relacions entre els ports, cables i registres. Les sentències seqüencials són col·locades dins d'un bloc begin / end i executades en ordre seqüencial, però totes les sentències concurrents i tots els blocs begin / end són executades en paral·lel en el disseny. Un mòdul pot contenir una o més instàncies d'un altre mòdul per definir un sub-comportament.