Soy nuevo en FPGAs. Estoy usando un Artix-7 que viene en el Nexys4DDR, y estoy programando en Verilog. Quiero crear un D Flip-Flop simple que se activará con un CLK de 50MHz. El CLK en la placa viene a través del pin E3 y es de 100MHz, entiendo que puedo dividir por 2 este reloj en el mismo código de Verilog, pero pensé que quería usar un reloj derivado de 100MHz. Así que hago esto en el archivo de Restricción:
Señal de reloj
set_property -dict { PACKAGE_PIN E3 IOSTANDARD LVCMOS33 } [get_ports { CLK100MHZ }];
create_clock -name sys_clk_pin -period 10.00 -waveform {0 5} [get_ports { CLK100MHZ }];
create_generated_clock -name clkdiv2 -source [get_ports CLK100MHZ] -divide_by 2 [get_pins REGA/Q];
¿Cómo puedo usar el reloj generado en mi código de Verilog? Esta es probablemente una pregunta muy simple, pero ¿cómo puedo tomar el pin Q del REGA y usarlo como mi reloj en el D Flip-Flop ?, ¿cómo puedo completar este diseño? ¿Tengo que crear una instancia de REGA? ¿Si es así, cómo? He intentado de muchas maneras, pero ninguna funciona. Gracias por su ayuda.
module D_ff_behavior
(
input D,
input CLK100MHZ,
output reg Q
);
wire clk_div_2;
always @ (posedge clk_div_2)
Q <= D;
endmodule