IP Library Granted Patent US 7,009,423
Granted Patent B1
US 7,009,423 · App. 11/134,152 · Granted Mar 7, 2006

Programmable I/O interfaces for FPGAs and other PLDs

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,009,423
App. No.
11/134,152
Granted
Mar 7, 2006
Kind
B1
Abstract

A programmable logic device (PLD), such as a field programmable gate array (FPGA) has a logic core surrounded on one or more sides by an input/output (I/O) interface having one or more programmable I/O buffers (PIBs). At least one PIB can be programmed to perform two or more of (a) a pass-through data input mode, (b) an input register mode; (c) a double data rate (DDR) input mode, (d) one or more demux input modes, (e) one or more DDR demux input modes. In addition or alternatively, at least one PIB can be programmed to perform two or more of (a) a pass-through data output mode, (b) an output register mode, (c) a DDR output mode, (d) one or more mux output modes, and (e) one or more DDR mux output modes. As such, devices of the present invention are flexible enough to support both low-rate and high-rate interface applications, while efficiently using device resources.

Claims (29)

1. A programmable logic device (PLD), comprising: a logic core connected to an I/O interface, the I/O interface comprising one or more programmable I/O buffers (PIBs), wherein at least one PIB comprises:

double data rate (DDR) circuitry programmable to convert an incoming DDR data signal into two single data rate (SDR) data signals; and

demultiplexing circuitry coupled to the DDR circuitry and programmable to demultiplex at least one of the two SDR data signals into two or more lower-rate SDR data signals provided to the logic core of the PLD.

2. The programmable logic device of claim 1 , wherein the DDR circuitry and demultiplexing circuitry are clocked by a same clock signal.

3. The programmable logic device of claim 1 , including a bypass line coupled to an input of the DDR circuitry and operable to provide an incoming DDR data signal to the logic core.

4. The programmable logic device of claim 1 , including a bypass line coupled to an output of the DDR circuitry and operable to provide an SDR data signal to the logic core.

5. The programmable logic device of claim 1 , wherein the demultiplexing circuitry includes a shift register.

6. The programmable logic device of claim 1 , wherein the demultiplexing circuitry is operable to support a plurality of demux input modes.

7. The programmable logic device of claim 1 including an update generator responsive to a clock signal and operable to enable or disable flip-flops within the demultiplexing circuitry.

8. The programmable logic device of claim 1 including:

multiplexing circuitry programmable to multiplex two or more outgoing single data rate (SDR) data signals into at least one higher-rate SDR data signal; and

double data rate (DDR) circuitry coupled to the multiplexing circuitry and programmable to convert higher-rate SDR data signals into an outgoing DDR data signal.

9. A programmable logic device (PLD), comprising: a logic core connected to an I/O interface, the I/O interface comprising one or more programmable I/O buffers (PIBs), wherein at least one PIB comprises:

multiplexing circuitry programmable to multiplex two or more outgoing single data rate (SDR) data signals from the logic core of the PLD into at least one higher-rate SDR data signal; and

double data rate (DDR) circuitry coupled to the multiplexing circuitry and programmable to convert the at least one higher-rate SDR data signal into an outgoing DDR data signal.

10. The programmable logic device of claim 9 , wherein the DDR circuitry and multiplexing circuitry are clocked by a same clock signal.

11. The programmable logic device of claim 9 including a multiplexer operable to select between a higher-rate SDR data signal from the multiplexing circuitry and an unregistered data signal as a data signal to the DDR circuitry.

12. The programmable logic device of claim 9 including a multiplexer operable to select between an outgoing DDR data signal from the DDR circuitry and an unregistered data signal as an outgoing data signal of the I/O buffer.

13. The programmable logic device of claim 9 , wherein the multiplexing circuitry is operable to support a plurality of mux output modes.

14. The programmable logic device of claim 9 , wherein the multiplexing circuitry includes a shift register operable to support a plurality of mux output modes.

15. The programmable logic device of claim 9 , wherein the programmable logic device is a field programmable gate array (FPGA).

16. A programmable logic device (PLD), comprising: a logic core connected to an I/O interface, the I/O interface comprising one or more programmable I/O buffers (PIBs), wherein at least one PIB comprises:

multiplexing circuitry programmable to multiplex four or more lower-rate single data rate (SDR) data signals into two higher-rate SDR data signals;

demultiplexing circuitry programmable to demultiplex two higher-rate SDR data signals into four or more lower-rate SDR data signals; and

double data rate (DDR) circuitry coupled to the demultiplexing circuitry and programmable to convert an incoming DDR data signal into two higher-rate single data rate (SDR) data signals for the demultiplexing circuitry and further coupled to the multiplexing circuitry and programmable to convert two higher-rate SDR data signals from the multiplexing circuitry into an outgoing DDR data signal.

17. The programmable logic device of claim 16 including a bypass line coupled to an input of the DDR circuitry and operable to provide an incoming DDR data signal to the logic core.

18. The programmable logic device of claim 16 including a bypass line coupled to an output of the DDR circuitry and operable to provide a higher-rate SDR data signal to the logic core.

19. The programmable logic device of claim 16 including a multiplexer operable to select between a higher-rate SDR data signal from the multiplexing circuitry and an unregistered data signal as a data signal to the DDR circuitry.

20. The programmable logic device of claim 16 including a multiplexer operable to select between an outgoing DDR data signal from the DDR circuitry and an unregistered data signal as an outgoing data signal of the I/O buffer.

Assignments (4)
CHANGE OF NAME Recorded May 13, 2024
From: GENESYS TELECOMMUNICATIONS LABORATORIES, INC.
To: GENESYS CLOUD SERVICES, INC.
Reel/Frame 067391/0077 →
SECURITY INTEREST Recorded May 21, 2019
From: LATTICE SEMICONDUCTOR CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
Reel/Frame 049980/0786 →
RELEASE OF SECURITY INTEREST Recorded May 21, 2019
From: JEFFERIES FINANCE LLC
To: LATTICE SEMICONDUCTOR CORPORATION; SILICON IMAGE, INC.; SIBEAM, INC.; DVDO, INC.
Reel/Frame 049827/0326 →
SECURITY INTEREST Recorded Mar 18, 2015
From: LATTICE SEMICONDUCTOR CORPORATION; SIBEAM, INC.; SILICON IMAGE, INC.; DVDO, INC.
To: JEFFERIES FINANCE LLC
Reel/Frame 035223/0001 →