Red de conocimientos sobre prescripción popular - Conocimiento del confinamiento - ¡Diseñe un temporizador FPGA usando VerilogHDL!
¡Diseñe un temporizador FPGA usando VerilogHDL!
En primer lugar, no es necesario explicar la aplicación de PLL, simplemente llame directamente a la implementación interna del núcleo blando, sin involucrar ningún código. En cuanto al código de división de frecuencia, simplemente escribo un código de división de 8 y los demás son casi iguales.
Módulo div_8(clk_100M, rst, clk_125m);
Entrada clk_100M, rst
Registro de salida clk_125m; //Salida de 8 divisiones 12,5 M
reg[3:0]temp;
siempre @(posedge clk_100M o negedge rst)
iniciar
if (! rst) p>
Inicio
temp lt= 4' b0000
clk_125m lt;= 1' B0;
Fin
p>else if(temp==4'd3)
Inicio
clk _ 125m lt; = ~ clk _ 125m
temp lt = 4; ' b0000
Fin
Otro
temp lt= temp 1 ' b 1;
Fin
Terminal módulo
Este es solo un código de 8 divisiones. Se pueden escribir otros códigos de 16 divisiones con referencia a esto.