Clocking Interface Blocks

The Interface Designer defines clock connections to the interfaces in the <project name>.interface.csv file, which allows the software to connects the clocks between the core and periphery. To use a clock in the periphery, simply use the clock name in the relevent field in the interface block.
  • Clocks used in interfaces do not have to be used in the RTL.
  • Clocks feeding the interfaces should not drive outputs in the RTL.
Note: This section assumes you understand how to create and use the GPIO and PLL blocks.
The following sections show some common clocking examples to illustrate the general concept. There are other Interface Designer blocks that use clocks, and other modes for the GPIO and PLL blocks. You use the same method for referencing clocks in other blocks and modes.

GPIO Clocking I/O Register

To use a GPIO to clock an I/O register:

  1. Instantiate a GPIO in input mode with connection type gclk or rclk. Put the name in Input Clock tab > Pin Name, e.g., gpio_inst12. This name is the clock name.
  2. Instantiate a GPIO in output mode with Output tab > Register Option > register.
  3. In Output Clock tab > Pin Name, enter the clock name from step 1 (gpio_inst12).

If this clock is not used in your RTL design, you do not have to include it. It's simply a clock from one interface block to another.

PLL Output Clocking I/O Register

To use a PLL output clock to clock an I/O register:

  1. Instantiate a PLL and define an output clock, pll_out1. This name is the clock name.
  2. Instantiate a GPIO in output mode with Output tab > Register Option > register.
  3. In Output Clock tab > Pin Name, enter the clock name from step 1 (pll_out1).

If this clock is not used in your RTL design, you do not have to include it. It is simply a clock from one interface block to another.

Internal Clock Clocking I/O Register

To use an internally generated clock to clock an I/O register:

  1. You create an internally generated clock, div_clock. This name is the clock name.
  2. Instantiate a GPIO in output mode with Output tab > Register Option > register.
  3. In Output Clock tab > Pin Name, enter the clock name from step 1 (div_clock).

You do not need to connect the internally generate clock to an output in the RTL. The Interface Designer connects to the clock network automatically.

PLL Output Driving a Pin

To use a PLL output clock to clock a pin:

  1. Instantiate a PLL and define an output clock, pll_out1. This name is the clock name.
  2. Instantiate a GPIO in clkout mode.
  3. In Output Clock tab > Pin Name, enter the clock name from step 1 (pll_out1).

If this clock is not used in your RTL design, you do not have to include it. It is simply a clock from one interface block to another.

You can use this output pin to connect to other components on your board.