SPI Bus Clock Waveform and Timing Budget - 3.1 English

UltraScale Architecture Soft Error Mitigation Controller LogiCORE IP Product Guide (PG187)

Document ID
PG187
Release Date
2023-11-08
Version
3.1 English

The SPI flash device has requirements on the switching characteristics of its input clock. This analysis is for the clock signal generated for the SPI flash device by the system-level design example. Completion of this analysis requires board-level signal integrity simulation capability.

Figure 1. SPI Flash Device Input Clock Requirements

The following parameters, shown in the previous figure, are defined as requirements on the clock input to the SPI flash device:

Tclch
SPI bus clock maximum rise time requirement
Tchcl
SPI bus clock maximum fall time requirement
Tcl
SPI bus clock minimum low time requirement
Tch
SPI bus clock minimum high time requirement

Based on the physical construction of the SPI bus, the I/O characteristics of the FPGA, and the I/O characteristics of any level translator used, the SPI bus clock signal originating at the FPGA exhibits maximum rise and fall times (Trise and Tfall ) at the SPI flash device. Satisfaction of Tclch and Tchcl requirements by Trise and Tfall must be verified. Should Tclch and Tchcl requirements not be satisfied, avenues of correction include:

  • Change I/O slew rate for the system-level design example SPI bus clock output.
  • Change I/O drive strength for the system-level design example SPI bus clock output.
  • Select an alternate level translator with more suitable I/O characteristics.

Generally, the Tclch and Tchcl requirements are easy to satisfy. They exist to prohibit exceptionally long rise and fall times that might occur on a true bus with many loads, rather than the point-to-point scheme used with the system-level design example.

The SPI bus clock generated by the system-level design example is the input clock divided by two. Therefore, the SPI bus clock high and low times are nominally equal to Tclk . However, considering actual Trise and Tfall , also ensure satisfaction of the following:

  • Tclk ≥ Trise + Tch
  • Tclk ≥ Tfall + Tcl

Example :

  • Tclch = 33 ns (from SPI flash data sheet)
  • Tchcl = 33 ns (from SPI flash data sheet)
  • Tcl = 3.375 ns (from SPI flash data sheet)
  • Tch = 3.375 ns (from SPI flash data sheet)
  • Trise = 2 ns (from PCB simulation)
  • Tfall = 2 ns (from PCB simulation)

Given this data, perform the following:

  1. Check: Is Tclch ≥ Trise ? Is 33 ns ≥ 2 ns ? Yes
  2. Check: Is Tchcl ≥ Tfall ? Is 33 ns ≥ 2 ns ? Yes
  3. Calculate: Tclk ≥ Trise + Tch requires Tclk ≥ 2 ns + 3.375 ns, or Tclk ≥ 5.375 ns
  4. Calculate: Tclk ≥ Tfall + Tcl requires Tclk ≥ 2 ns + 3.375 ns, or Tclk ≥ 5.375 ns

The rise time requirements are satisfied. These requirements on Tclk indicate that the SPI Bus Clock Waveform and Timing Budget restrict the system-level design example input clock cycle time to be 5.375 ns or larger.