Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Verilog

Tutorial de Verilog

En los primeros días de los circuitos integrados, los ingenieros tenían que sentarse y dibujar físicamente los transistores y sus conexiones en papel para diseñarlos de manera que pudieran fabricarse en silicio. Los circuitos más grandes y complejos exigieron más ingenieros, tiempo y otros recursos y muy pronto surgió la necesidad de tener una mejor forma de diseñar circuitos integrados.

VHDL pronto se desarrolló para mejorar el proceso de diseño al permitir que los ingenieros describieran la funcionalidad del hardware deseado y dejar que las herramientas de automatización convirtieran ese comportamiento en elementos de hardware reales como puertas combinacionales y lógica secuencial. Verilog fue desarrollado para simplificar el proceso y hacer que el lenguaje de descripción de hardware (HDL) más robusto y flexible. En la actualidad, Verilog es el HDL más popular utilizado y practicado en la industria de los semiconductores.

¿Cómo es útil Verilog?

Verilog crea un nivel de abstracción que ayuda a ocultar los detalles de su implementación y tecnología.

Por ejemplo, el diseño de un flip-flop D requeriría el conocimiento de cómo deben organizarse los transistores para lograr un FF activado por flanco positivo y cuáles son los tiempos de subida, bajada y clk-Q necesarios para fijar el valor en un flop. entre muchos otros detalles orientados a la tecnología. La disipación de energía, la sincronización y la capacidad de impulsar redes y otros fracasos también requerirían una comprensión más profunda de las características físicas de un transistor.

Verilog nos ayuda a centrarnos en el comportamiento y dejar el resto para que se resuelva más tarde.

Ejemplo

El siguiente código ilustra cómo se ve un código Verilog. Profundizaremos en más detalles del código en el próximo artículo. Por el momento, entendamos simplemente que el comportamiento de un contador se describe. Básicamente, el código hace que el contador cuente hacia arriba si la señal up_down es 1 y hacia abajo si su valor es 0. También restablece el contador si la señal rstn se convierte en 0, lo que lo convierte en un restablecimiento activo-bajo.

  
  
	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

  

El ejemplo simple que se muestra arriba ilustra cómo se han ocultado todos los detalles de implementación física y, al mismo tiempo, proporciona una idea clara de cómo funciona el contador.

ctr es un module que representa un contador ascendente/descendente, y es posible elegir la implementación física real del diseño entre una amplia variedad de diferentes estilos de flops optimizados para el área, la potencia y el rendimiento. Por lo general, se compilan en bibliotecas y estarán disponibles para que las seleccionemos dentro de las herramientas de EDA en una etapa posterior del proceso de diseño.

Ahora que sabe qué es Verilog, ¡comencemos a aprender Verilog!


Verilog

  1. Tutorial C
  2. Concatenación Verilog
  3. Asignaciones de Verilog
  4. Bloqueo y no bloqueo de Verilog
  5. Funciones de Verilog
  6. Tarea Verilog
  7. Generador de reloj Verilog
  8. Funciones matemáticas de Verilog
  9. Formato de hora de Verilog
  10. Tutorial de diseño de placa de circuito impreso de placa base
  11. Tutorial de diseño de PCB de KiCAD