ClkCh.v 550 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. module ClkCh (
  2. input Rst_i,
  3. input clkCh,
  4. input clkOutMMCM,
  5. input clkMan,
  6. output SpiClk_o
  7. );
  8. reg spiClkReg;
  9. wire spiClk;
  10. assign spiClk = spiClkReg;
  11. always @(*) begin
  12. if (Rst_i) begin
  13. spiClkReg = 0;
  14. end
  15. else begin
  16. if (clkCh) begin
  17. spiClkReg = clkOutMMCM;
  18. end
  19. else begin
  20. spiClkReg = clkMan;
  21. end
  22. end
  23. end
  24. BUFG BUFG_inst (
  25. .O(SpiClk_o), // 1-bit output: Clock output
  26. .I(spiClk) // 1-bit input: Clock input
  27. );
  28. endmodule