General-Purpose I/O User Guide: Agilex™ 5 FPGAs and SoCs
ID
813934
Date
8/04/2025
Public
1. Agilex™ 5 General-Purpose I/O Overview
2. Agilex™ 5 HSIO Banks
3. Agilex™ 5 HVIO Banks
4. Agilex™ 5 HPS I/O Banks
5. Agilex™ 5 SDM I/O Banks
6. Agilex™ 5 I/O Troubleshooting Guidelines
7. GPIO FPGA IP
8. Programmable I/O Features Description
9. Document Revision History for the General-Purpose I/O User Guide: Agilex™ 5 FPGAs and SoCs
2.5.1. I/O Standard Placement Restrictions for True Differential I/Os
2.5.2. Placement Restrictions for True Differential and Single-Ended I/O Standards in the Same or Adjacent HSIO Bank
2.5.3. VREF Sources and Input Standards Grouping
2.5.4. HSIO Pin Restrictions for External Memory Interfaces
2.5.5. RZQ Pin Requirement
2.5.6. I/O Standards Implementation Based on VCCIO_PIO Voltages
2.5.7. I/O Standard Selection and I/O Bank Supply Compatibility Check
2.5.8. Simultaneous Switching Noise
2.5.9. HPS Shared I/O Requirements
2.5.10. Clocking Requirements
2.5.11. Clock Restrictions for GPIO Interfaces
2.5.12. SDM Shared I/O Requirements
2.5.13. Unused Pins
2.5.14. VCCIO_PIO Supply for Unused HSIO Banks
2.5.15. HSIO Pins During Power Sequencing
2.5.16. Drive Strength Requirement for HSIO Input Pins
2.5.17. Maximum DC Current Restrictions
2.5.18. 1.05 V, 1.1 V, or 1.2 V I/O Interface Voltage Level Compatibility
2.5.19. Connection to True Differential Signaling Input Buffers During Device Reconfiguration
2.5.20. LVSTL700 I/O Standards Differential Pin Pair Requirements
2.5.21. Implementing a Pseudo Open Drain
2.5.22. Allowed Duration for Using RT OCT
2.5.23. Single-Ended Strobe Signal Differential Pin Pair Restriction
2.5.24. Implementing SLVS-400 or DPHY I/O Standard with 1.1 V VCCIO_PIO
7.7.3.2. DDIO Input Register
You can properly constrain the system by using a virtual clock to model the off-chip transmitter to the FPGA.
Figure 49. DDIO Input Register
| Command | Command Example | Description |
|---|---|---|
| create_clock | create_clock -name virtual_clock -period "200 MHz" create_clock -name ddio_in_clk -period "200 MHz" ddio_in_clk |
Create clock setting for the virtual clock and the DDIO clock. |
| set_input_delay | set_input_delay -clock virtual_clock 0.25 ddio_in_data set_input_delay -add_delay -clock_fall -clock virtual_clock 0.25 ddio_in_data |
Instruct the Timing Analyzer to analyze the positive clock edge and the negative clock edge of the transfer. Note the -add_delay in the second set_input_delay command. |
| set_false_path | set_false_path -fall_from virtual_clock -rise_to ddio_in_clk set_false_path -rise_from virtual_clock -fall_to ddio_in_clk |
Instruct the Timing Analyzer to ignore the positive clock edge to the negative edge triggered register, and the negative clock edge to the positive edge triggered register. |