Verilog: diferència entre les revisions

Contingut suprimit Contingut afegit
m Robot: zh:Verilog és un article bo; canvis cosmètics
mCap resum de modificació
Línia 3:
El IEEE 1364 estàndard defineix una lògica de quatre estats: 0, 1, Z (alta impedància) i X (valor lògic desconegut).<ref>{{cite book|author1=D. Michael Miller|author2=Mitchell A. Thornton|title=Multiple valued logic: concepts and representations|year=2008|publisher=Morgan & Claypool Publishers|isbn=978-1-59829-190-2|series=S{{lc:YNTHESIS LECTURES ON DIGITAL CIRCUITS AND SYSTEMS}}|volume=12}}</ref> En comparació [[VHDL]], IEEE 1164, defineix una norma específica per a nou nivells.
 
Els dissenyadors de Verilog volien crear un llenguatge amb una sintaxi similar a la del [[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, apuntadorspunters 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.