Claims
- 1. A method for dynamically multiplexing a plurality of signals [S1,S2, . . . ,Sn] onto a driven conductor line within the interconnect [101,102] of an FPGA, where said FPGA [100] has variably granulatable building elements [124-126] that may be folded-together during configuration to define differently-sized dynamic multiplexers, said method comprising the steps of:
(a) using a first subset of the variably granulatable building elements of the FPGA during configuration to implement a first dynamic multiplexer [124a] of a first size that is minimally sufficient for dynamically selecting one signal from among said plurality of signals; and (b) configuring a first coupling [711/712] for coupling the selected one signal [761] or a derivative [765] thereof to said conductor line [Bp].
- 2. The method of claim 1 wherein:
(a.1) said first dynamic multiplexer [124a] consumes no more lookup tables than one programmably-configured lookup table (LUT) [535] of said FPGA and said first dynamic multiplexer provides no more than a two-to-one (2:1) dynamic multiplexing function.
- 3. The method of claim 1 wherein:
(a.1) said first dynamic multiplexer [125] consumes no more lookup tables than two programmably-configured lookup tables (LUT's) [535,545] of said FPGA and said first dynamic multiplexer provides no more than a four-to-one (4:1) dynamic multiplexing function [575,1275Y].
- 4. The method of claim 1 wherein:
(a.1) said first dynamic multiplexer [126] consumes no more lookup tables than four programmably-configured lookup tables (LUT's) [W,Y] of said FPGA and said first dynamic multiplexer provides no more than an eight-to-one (8:1) dynamic multiplexing function [1280A].
- 5. The method of claim 1 wherein:
(a.1) said first dynamic multiplexer [500c] consumes no more lookup tables than eight programmably-configured lookup tables (LUT's) [W,Y,Z,X] of said FPGA and said first dynamic multiplexer provides no more than a thirteen-to-one (13:1) dynamic multiplexing function [1275X].
- 6. The method of claim 1 wherein:
(a.1) said first dynamic multiplexer [800] consumes no more lookup tables than thirty-two programmably-configured lookup tables (LUT's) [801-804] of said FPGA and said first dynamic multiplexer correspondingly provides no more than a fifty-two-to-one (52:1) dynamic multiplexing function [850].
- 7. The method of claim 1 wherein:
(b.1) said first coupling [711/712] is programmably-configured for coupling the selected one signal [761] or a derivative [765] thereof to a conductor line selected from at least two of a group consisting of:
(b.1a) a linear double-length (2×L) line; (b.1b) a linear quad-length (4×L) line; (b.1c) a linear octal-length (8×L) line.
- 8. The method of claim 1 wherein:
(b.1) said first coupling [711/712] is programmably-configured for coupling the selected one signal [761] or a derivative [765] thereof to a conductor line selected from at least two of a group consisting of:
(b.1a) a linear maximum-length (MaxL) line; (b.lb) a nonlinear direct connect line (DCL); and (b.lc) a nonlinear feedback line (FBL).
- 9. The method of Claim 1 and further comprising the step of:
(c) using a remainderment second subset [127] the variably granulatable building elements of the FPGA during configuration to implement logic functions other than that of said first dynamic multiplexer [124a].
- 10. A programmed FPGA device capable of dynamically miltiplexing a plurality of signals [S1, S2, . . . , Sn] onto a driven conductor line within an interconnect [101, 102] that may be folded-together during configuration of the FPGA device to define differently-sized dynamic multiplexers, said programed FPGA device comprising:
(a) a first subset of the variably granulatable building elements that have been programably-configured to implement a first dynamic multiplexer [124a] of a first size that is minimally sufficient for dynamically selecting one signal from among said plurality of signals; and pg,69(b) a first coupling means [711/712] that has been programmably-configured to couple the selected one signal [761] or a derivative [765] thereof to said conductor line [Bp].
- 11. A method for configuring a field programmable gate array comprising the steps of:
(a) using one or more of the techniques described for FIGS. 7A and 7B to implement dynamic multiplexers within logic blocks and to use the remainder of logic available within the logic blocks for processing dynamically-multiplexed data signals.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] The following co-pending U.S. patent applications(s) are owned by the owner of the present application and their disclosures are incorporated herein by reference:
[0002] (A) Ser. No. 08/948,306 [Attorney Docket No. AMDI 8222] filed Oct. 9, 1997 by Om P. Agrawal et al. and originally entitled, “VARIABLE GRAIN ARCHITECTURE FOR FPGA INTEGRATED CIRCUITS”;
[0003] (B) Ser. No. 08/996,361 [Attorney Docket No. AMDI8223] filed Dec. 22, 1997, by Om Agrawal et al. and originally entitled, “SYMMETRICAL, EXTENDED AND FAST DIRECT CONNECTIONS BETWEEN VARIABLE GRAIN BLOCKS IN FPGA INTEGRATED CIRCUITS”;
[0004] (C) Ser. No. 08/995,615 [Attorney Docket No. AMDI8236] filed Dec. 22, 1997, by Om Agrawal et al. and originally entitled, “A PROGRAMMABLE INPUT/OUTPUT BLOCK (IOB) IN FPGA INTEGRATED CIRCUITS”;
[0005] (D) Ser. No. 08/995,614 [Attorney Docket No. AMDI8237] filed Dec. 22, 1997, by Om Agrawal et al. and originally entitled, “INPUT/OUTPUT BLOCK (IOB) CONNECTIONS TO MAXL LINES, NOR LINES AND DENDRITES IN FPGA INTEGRATED CIRCUITS”;
[0006] (E) Ser. No. 08/995,612 [Attorney Docket No. AMDI8238] filed Dec. 22, 1997, by Om Agrawal et al. and originally entitled, “FLEXIBLE DIRECT CONNECTIONS BETWEEN INPUT/OUTPUT BLOCKs (IOBs) AND VARIABLE GRAIN BLOCKs (VGBs) IN FPGA INTEGRATED CIRCUITS”;
[0007] (F) Ser. No. 08/997,221 [Attorney Docket No. AMDI8239] filed Dec. 22, 1997, by Om Agrawal et al. and originally entitled, “PROGRAMMABLE CONTROL MULTIPLEXING FOR INPUT/OUTPUT BLOCKs (IOBs) IN FPGA INTEGRATED CIRCUITS”;
[0008] (G) Ser. No. 09/008,762 [Attorney Docket No. AMDI8231] filed Jan. 19,1998 by Om P. Agrawal et al. and originally entitled, “SYNTHESIS-FRIENDLY FPGA ARCHITECTURE WITH VARIABLE LENGTH AND VARIABLE TIMING INTERCONNECT”; and
[0009] (H) Ser. No. 08/996,049 [Attorney Docket No. AMDI8233] filed Dec. 22, 1997 by Om P. Agrawal et al. and originally entitled, “DUAL PORT SRAM MEMORY FOR RUN-TIME USE IN FPGA INTEGRATED CIRCUITS.
[0010] The following U.S. patent(s) are related to the present application and their disclosures are incorporated herein by reference:
[0011] (A) Pat. No. 5,212,652 issued May 18, 1993 to Om Agrawal et al, (filed as Ser. No. 07/394,221 on Aug. 15, 1989) and entitled, PROGRAMMABLE GATE ARRAY WITH IMPROVED INTERCONNECT STRUCTURE;
[0012] (B) Pat. No. 5,621,650 issued Apr. 15, 1997 to Om Agrawal et al, and entitled, PROGRAMMABLE LOGIC DEVICE WITH INTERNAL TIME-CONSTANT MULTIPLEXING OF SIGNALS FROM EXTERNAL INTERCONNECT BUSES; and
[0013] (C) Pat. No. 5,185,706 issued Feb. 9, 1993 to Om Agrawal et al.
Continuations (4)
|
Number |
Date |
Country |
Parent |
09472645 |
Dec 1999 |
US |
Child |
09626094 |
Jul 2000 |
US |
Parent |
08948306 |
Oct 1997 |
US |
Child |
09472645 |
Dec 1999 |
US |
Parent |
09669186 |
Sep 2000 |
US |
Child |
09841209 |
Apr 2001 |
US |
Parent |
09212022 |
Dec 1998 |
US |
Child |
09669186 |
Sep 2000 |
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
09626094 |
Jul 2000 |
US |
Child |
09841209 |
Apr 2001 |
US |