Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Verilog

Tutoriel Verilog

Au début des circuits intégrés, les ingénieurs devaient s'asseoir et dessiner physiquement des transistors et leurs connexions sur papier pour les concevoir de manière à pouvoir les fabriquer sur du silicium. Des circuits plus gros et complexes ont exigé plus d'ingénieurs, de temps et d'autres ressources et assez tôt, il y a eu un besoin d'avoir une meilleure façon de concevoir des circuits intégrés.

VHDL a été rapidement développé pour améliorer le processus de conception en permettant aux ingénieurs de décrire les fonctionnalités du matériel souhaité et de laisser les outils d'automatisation convertir ce comportement en éléments matériels réels tels que les portes combinatoires et la logique séquentielle. Verilog a été développé pour simplifier le processus et rendre le Hardware Description Language (HDL) plus robuste et flexible. Aujourd'hui, Verilog est le HDL le plus populaire utilisé et pratiqué dans l'industrie des semi-conducteurs.

En quoi Verilog est-il utile ?

Verilog crée un niveau d'abstraction qui aide à masquer les détails de sa mise en œuvre et de sa technologie.

Par exemple, la conception d'une bascule D nécessiterait de savoir comment les transistors doivent être disposés pour obtenir un FF déclenché par un front positif et quels sont les temps de montée, de descente et de clk-Q nécessaires pour verrouiller la valeur sur un flop parmi de nombreux autres détails axés sur la technologie. La dissipation de puissance, la synchronisation et la capacité de piloter des réseaux et autres flops nécessiteraient également une compréhension plus approfondie des caractéristiques physiques d'un transistor.

Verilog nous aide à nous concentrer sur le comportement et à régler le reste plus tard.

Exemple

Le code suivant illustre à quoi ressemble un code Verilog. Nous approfondirons les détails du code dans le prochain article. Pour l'instant, comprenons simplement que le comportement d'un compteur est décrit. Le code fait essentiellement compter le compteur si le signal up_down est 1, et vers le bas si sa valeur est 0. Il réinitialise également le compteur si le signal rstn devient 0, ce qui en fait une réinitialisation active-basse.

  
  
	module ctr (input  				up_down,
									clk,
									rstn,
	            output reg [2:0] 	out);
		
		always @ (posedge clk)
			if (!rstn)
				out <= 0;
			else begin
				if (up_down)
					out <= out + 1;
				else
					out <= out - 1;
			end
	endmodule

  

L'exemple simple présenté ci-dessus illustre comment tous les détails de mise en œuvre physique ont été masqués tout en fournissant une idée claire du fonctionnement du compteur.

ctr est un module qui représente un compteur haut/bas, et il est possible de choisir l'implémentation physique réelle de la conception parmi une grande variété de styles différents de flops optimisés pour la surface, la puissance et les performances. Ils sont généralement compilés dans des bibliothèques et seront disponibles pour que nous les sélectionnions dans les outils EDA à un stade ultérieur du processus de conception.

Maintenant que vous savez ce qu'est Verilog, commençons à apprendre Verilog !


Verilog

  1. C Tutoriel
  2. Concaténation Verilog
  3. Affectations Verilog
  4. Verilog bloquant et non bloquant
  5. Fonctions Verilog
  6. Tâche Verilog
  7. Générateur d'horloge Verilog
  8. Fonctions mathématiques Verilog
  9. Format d'heure Verilog