I'm designing a basic PCB for testing equipment in lab. The goal is to take a clock input, a clock enable (from a PC indicating that the measurement is beginning), and then distribute it to a number of additional instruments which are all positive edge sensitive. I would like it to work for clocks of up to 1 MHz. Since the PC signal isn't synchronized to the input clock, I run the risk of generating short pulses if the enable signal arrives while the clock is already high which could corrupt data or measurements.
Instead, I would like to wait one or more cycles and then enable the output while the clock is low so that the next output edge will rise synchronously with the input clock:
Here is my schematic that attempts this:
Invert clock (SN74LVC1G04DBVR), feed into two sequential D flip-flops (74VHCV574FT), and then use that as the output enable for the clock fan out chip (CDCLVC1108PW). This should store the Enable signal for 1.5 cycles and then pass it through just after the next following clock edge. I used two sequential flip flops in order to reduce the (probably low) likelihood of a metastable state that lasts more than 0.5 microseconds.
Question
Does this design work and is it a sensible approach to avoid producing short clock cycles and spurious rising edges? Is there anything I am doing wrong or not considering?