Apparatus for automatically configured interface and associated methods
View Patent ↗An integrated circuit (IC) includes a first circuit implemented using programmable circuitry of the IC, and a second circuit implemented using hardened circuitry of the IC. The IC further includes a configurable interface circuit to couple the first circuit to the second circuit using ready/valid signaling with a configurable ready-latency value.
1. An integrated circuit (IC), comprising:
a first circuit implemented using programmable circuitry of the IC;
a second circuit implemented using hardened circuitry of the IC; and
a configurable interface circuit to couple the first circuit to the second circuit using ready/valid signaling with a configurable ready-latency value.
2. The IC according to claim 1 , wherein the configurable interface circuit comprises a first interface circuit implemented using programmable circuitry of the IC;
and a second interface circuit implemented using hardened circuitry of the IC.
3. The IC according to claim 1 , wherein the first circuit comprises programmable logic, programmable interconnect, or both.
4. The IC according to claim 1 , wherein the second circuit comprises a processor, a memory, a controller, or a peripheral.
5. The IC according to claim 1 , wherein the ready-latency value is configured to meet a desired clock frequency of the ready/valid signaling.
6. The IC according to claim 1 , wherein the first circuit operates according to a first protocol.
7. The IC according to claim 6 , wherein the second circuit operates according to a second protocol.
8. The IC according to claim 1 , wherein the ready-latency value is configured to meet at least a part of timing specifications for the IC.
9. A field programmable gate array (FPGA), comprising FPGA fabric and hardened circuitry integrated in the FPGA; and an interface circuit to couple the FPGA fabric to the hardened circuitry, the interface circuit having a configurable ready-latency value.
10. The FPGA according to claim 9 , wherein the interface circuit communicates information from the FPGA fabric to the hardened circuitry.
11. The FPGA according to claim 9 , wherein the interface circuit communicates information from the hardened circuitry to the FPGA fabric.
12. The FPGA according to claim 9 , wherein the interface circuit communicates information between the FPGA fabric and the hardened circuitry according to AMBA AXI, Avalon MM, Avalon ST, User Proprietary Protocol, or OCP.
13. The FPGA according to claim 9 , wherein the ready-latency value used by the interface circuit is configured to meet a specified frequency of communication between the FPGA fabric and the hardened circuitry.
14. A method of configuring a field programmable gate array (FPGA) to implement a user's circuit using resources in the FPGA, the method comprising configuring an interface circuit coupled to a first circuit implemented using FPGA fabric and to a second circuit implemented as hardened circuitry, wherein the interface circuit is adapted to provide communication between the first and second circuits using a ready/valid signaling protocol with a configurable ready-latency value.
15. The method according to claim 14 , further comprising configuring the interface circuit to provide communication from the first circuit to the second circuit.
16. The method according to claim 14 , further comprising configuring the interface circuit to provide communication from the second circuit to the first circuit.
17. The method according to claim 14 , further comprising configuring the ready-latency value based on input from the user.
18. The method according to claim 14 , further comprising configuring the ready-latency value such that the interface circuit meets a specified frequency of communication between the first and second circuits.
19. The method according to claim 14 , further comprising configuring the ready-latency value so as to obtain timing closure for the FPGA.
20. The method according to claim 14 , further comprising synthesizing and placing-and-routing the interface circuit with a ready-latency value that meets at least one specification of the user's design.