Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs
A newer version of this document is available. Customers should click here to go to the newest version.
Visible to Intel only — GUID: gqh1679590976411
Ixiasoft
Visible to Intel only — GUID: gqh1679590976411
Ixiasoft
5.8.7.2.2. Programming Timing Registers
Set the following register fields to program timing registers:
- SCL_I3C_OD_TIMING: Program the I3C_OD_LCNT and I3C_OD_HCNT fields with the required SCL low and high period values for the I3C open-drain phase. These counts are in terms of the core_clk period used.
- SCL_I3C_PP_TIMING: Program the I3C_PP_LCNT and I3C_PP_HCNT fields with the required SCL low and high period values for the I3C push-pull phase. These counts are in terms of the core_clk period used.
- BUS_FREE_AVAIL_TIMING: Program the BUS_FREE_TIME field with the required value of bus free period. The count is in terms of the core_clk period used.
- SCL_I2C_FMP_TIMING: Program the I2C_FMP_LCNT and I2C_FMP_HCNT fields with the required SCL low and high period values for the I2C FM+ transfer. These counts are in terms of the core_clk period used.
- SCL_I2C_FM_TIMING: Program the I2C_FM_LCNT and I2C_FM_HCNT fields with the required SCL low and high period values for the I2C FM transfer. These counts are in terms of the core_clk period used.
- BUS_IDLE_TIMING: Program the BUS_IDLE field with the required value of bus idle period. The count is in terms of the core_clk period used.
- SCL_EXT_LCNT_TIMING: Program the I3C_EXT_LCNT_1, I3C_EXT_LCNT_2, I3C_EXT_LCNT_3, and I3C_EXT_LCNT_4 fields with the required SCL push-pull low period values for I3C data transfers in SDR1, SDR2, SDR3, and SDR4 speeds respectively. These counts are in terms of the core_clk period used.
- SCL_EXT_TERMN_LCNT_TIMING[I3C_EXT_TERMN_LCNT]: Program the I3C_EXT_TERMN_LCNT field with the required extended SCL Push-pull low period value for I3C read termination bit. This count is in terms of the core_clk period used.
- SDA_HOLD_SWITCH_DLY_TIMING: Program the SDA_TX_HOLD field with the required SDA (Data) Hold delay. This count is in terms of the core_clk period used.
To ensure proper I/O timing, all these register fields must be set before any I3C/I2C bus transaction takes place. Effective Read Termination-Bit Low Period is derived based on the following SDR speed:
- SDR0 speed: I3C_PP_LCNT + I3C_EXT_TERMN_LCNT
- SDR1 speed: I3C_EXT_LCNT_1 + I3C_EXT_TERMN_LCNT
- SDR2 speed: I3C_EXT_LCNT_2 + I3C_EXT_TERMN_LCNT
- SDR3 speed: I3C_EXT_LCNT_3+ I3C_EXT_TERMN_LCNT
- SDR4 speed: I3C_EXT_LCNT_4 + I3C_EXT_TERMN_LCNT
For information on the I3C timing characteristic, refer to the Intel® Agilex™ 5 FPGAs and SoCs Device Data Sheet.