Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Verilog

Tutorial Verilog


Nos primeiros dias dos circuitos integrados, os engenheiros tinham que sentar e desenhar fisicamente os transistores e suas conexões no papel para projetá-los de modo que pudessem ser fabricados em silício. Circuitos maiores e complexos exigiam mais engenheiros, tempo e outros recursos e logo surgiu a necessidade de ter uma maneira melhor de projetar circuitos integrados.

VHDL foi logo desenvolvido para aprimorar o processo de design, permitindo que os engenheiros descrevessem a funcionalidade do hardware desejado e permitindo que as ferramentas de automação convertessem esse comportamento em elementos de hardware reais, como portas combinacionais e lógica sequencial. Verilog foi desenvolvido para simplificar o processo e tornar a linguagem de descrição de hardware (HDL) mais robusto e flexível. Hoje, o Verilog é o HDL mais popular usado e praticado em toda a indústria de semicondutores.

Como o Verilog é útil?


A Verilog cria um nível de abstração que ajuda a esconder os detalhes de sua implementação e tecnologia.

Por exemplo, o projeto de um flip-flop D exigiria o conhecimento de como os transistores precisam ser organizados para obter um FF acionado pela borda positiva e quais os tempos de subida, descida e clk-Q necessários para travar o valor em um flop entre muitos outros detalhes orientados para a tecnologia. A dissipação de energia, o tempo e a capacidade de conduzir redes e outros flops também exigiriam uma compreensão mais completa das características físicas de um transistor.

Verilog nos ajuda a focar no comportamento e deixar o resto para resolver depois.

Exemplo


O código a seguir ilustra a aparência de um código Verilog. Vamos nos aprofundar em mais detalhes do código no próximo artigo. Por enquanto, vamos simplesmente entender que o comportamento de um contador é descrito. O código essencialmente faz o contador contar para cima se o sinal up_down for 1 e para baixo se seu valor for 0. Ele também reinicializa o contador se o sinal rstn se tornar 0, tornando-o um reset ativo-baixo.
  
  
	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

  

O exemplo simples mostrado acima ilustra como todos os detalhes da implementação física foram ocultados enquanto ainda fornece uma ideia clara de como o contador funciona.

ctr é um module que representa um contador ascendente/descendente, e é possível escolher a implementação física real do projeto a partir de uma ampla variedade de estilos diferentes de flops otimizados para área, potência e desempenho. Eles geralmente são compilados em bibliotecas e estarão disponíveis para seleção nas ferramentas EDA em um estágio posterior do processo de design.

Agora que você sabe o que é Verilog, vamos começar a aprender Verilog!

Verilog

  1. C Tutorial
  2. Concatenação Verilog
  3. Atribuições Verilog
  4. Verilog Blocking &Non-Blocking
  5. Funções Verilog
  6. Tarefa Verilog
  7. Gerador de Relógio Verilog
  8. Funções matemáticas Verilog
  9. Formato de hora Verilog
  10. Tutorial de design de placa de circuito impresso do Ultiboard