Patent Publication Number: US-5298803-A

Title: Programmable logic device having low power microcells with selectable registered and combinatorial output signals

Description:
CROSS-REFERENCES TO RELATED AND COPENDING APPLICATIONS 
     U.S. patent application Ser. No. 817,167, filed Jan. 6, 1992, is a CMOS logic cell for high-speed, zero-power programmable array logic devices, having common assignee with the present invention. 
     U.S patent application Ser. No. 865,007, filed Apr. 8, 1992, is a field programmable logic array with speed optimized architecture, having common assignee with the present invention. 
     U.S. patent application Ser. No. 884,104, filed May 15, 1992, is a field programmable logic array with two OR arrays, having common assignee with the present invention. 
     U.S. patent application Ser. No. 883,076, filed May 15, 1992, is a programmable logic device macrocell with an exclusive feedback line and an exclusive external input line, having common assignee with the present invention. 
     U.S. patent application Ser. No. 883,759, filed May 15, 1992, is a field programmable logic device macrocell with an exclusive feedback line and an exclusive external input line, having common assignee with the present invention. 
     U.S. patent application Ser. No. 884,505, filed May 15, 1992, is a field programmable logic device macrocell with an exclusive feedback line and an exclusive external input line for a combinatorial mode and accommodating two separate programmable or planes, having common assignee with the present invention. 
     U.S. patent application Ser. No. 883,843, filed May 15, 1992, is a field programmable logic device macrocell with an exclusive feedback line and an exclusive external input line for a state counter or registered sum-of-products, having common assignee with the present invention. 
     U.S. patent application Ser. No. 883,078, filed May 15, 1992, is a field programmable logic device macrocell with an exclusive feedback line and an exclusive external input line for registered and combinatorial modes using a dedicated product term for control, having common assignee with the present invention. 
     FIELD OF THE INVENTION 
     This invention relates to programmable logic arrays (PLA); particularly, a field PLA, known as an FPLA, having macrocells that provides either a set of combinatorial or a set of registered signals which are routed to each output pin. 
     BACKGROUND OF THE INVENTION 
     History 
     The introduction of programmable logic devices (PLD) was a true revolution in the hardware design world. It enabled engineers to shrink circuits requiring several devices onto a single device thus simplifying their designs while saving space and power. Traditionally, PLDs have been used in combinational circuits such as address decoders as well as sequential circuits such as bus arbitration schemes. During the last few years. advances and improvements in PLD architectures enabled the devices to grow more complex while addressing the never-ending quest for higher density and faster speeds. 
     A certain class of FPLDs has been developed which are known as field programmable logic devices, or FPLDs for short. FPLDs chips that can be programmed or modified by the chip users or purchasers with the aid of readily available programming equipment to change the logic circuitry as desired. 
     For example, one common usage of PLDs is to provide two types of output signals. A first type of output signal is known as registered or stored signals. This signal is enabled through the use of registers positioned in output structures known as macrocells. A second type of output signal is known as combinatorial or non-registered signals. This second type of signal is accomplished by not sending the logic signals, entering the macrocell, through registers; thus being unstored signals or combinatorial logic signals. 
     Problem 
     A problem occurs when the FPLD&#39;s output macrocells are required to produce varying numbers of registered and combinatorial output signals. Specifically, there are a limited number of output pins for each chip, and many FPLDs have only a combinatorial output for one set of pins, and registered outputs for a second set of pins. For example, a twelve pin chip may have six pins for each output signal type. 
     Another problem occurs when certain designs produce all the signal choices and send them to each single output pin even though only one will be used. Specifically, there is a great deal of power required to produce all the needed signals to choose from for outputting over a pin. 
     SUMMARY OF THE INVENTION 
     The present invention provides for a PLD architecture involving a macrocell which allows both registered and combinatorial output signals to reach each output pin requiring low power for providing the selected signal choice to the output pin. 
     Features of the present invention will become clear from the following detailed description of the invention, taken in conjunction with the accompanying drawings. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is an illustration of the PLD macrocell. 
     FIG. 2 is a detailed overall illustration of the invention. 
    
    
     DETAILED DESCRIPTION OF THE ILLUSTRATED EMBODIMENT 
     Incorporated Material 
     For the purpose of providing background material which may in some respects illustrate the state of the art, the following books are herein incorporated by reference: &#34;Programmable Logic Handbook,&#34; fourth edition, by Monolithic Memories Inc., 2175 Mission College Blvd., Santa Clara, Calif.; and &#34;Practical Design Using Programmable Logic,&#34; by D. Pellerin and M. Holley, Prentice Hall, library of Congress no. TK7872 .L64 P44 1991. 
     The following U.S. patents are herein incorporated by reference: U.S. Pat. No. 3,423,646, is a computer logic device consisting of an array of tunneling diodes, isolators and short circuits. U.S. Pat. No. 3,566,153, is a programmable sequential logic device. U.S. Pat. No. 4,124,899, is a programmable array logic circuit. U.S. Pat. No. 4,717,912, an apparatus for producing any one of a plurality of signals at a single output. U.S. Pat. No. 4,758,746, is a programmable logic array with added array of gates and added output routing flexibility. 
     Significant Words and Phrases 
     It is noted that in the following discussions, the term Tri-state, is another name for a three-state or 3-state device. Additionally, flip-flops are also referred to as registers, latches, storage devices, or memory elements. A macrocell can be defined as an output circuit coupled to the end of the logic circuits and containing multiplexers, buffers, registers, etc., and an output driver. Lastly, when discussing or illustrating output pads, drivers or buffers are not always stated or illustrated, although they are generally needed. 
     It is noted that this definitions section, in no way is meant to limit the scope of the defined words. The provided definitions are not meant to be exact and complete scientific or linguistic definitions. These definitions or explanations are only meant to be an assistance to the readers in a broad, and at times less than complete, manner. 
     SPECIFIC EMBODIMENT 
     FIG. 1 is a detailed illustration of the invention and includes the following elements: An OR array 74 has inputs from a programmable logical AND array (not shown), and an output that lead to macrocell 70. Multiplexer 76 takes a product term from the AND array to an 8×1 multiplexer 78 having a global enable line. Array 74 has its output sent to two three-fuse (F0, F1, and F2) one-zero multiplexers 73 and 75. Mux 73 is electrically coupled to I/O pad 90 via buffer 80, multiplexer 82, a D-type flip-flop 84 (register), an 8×1 multiplexer 86, and a tri-state 88. Clock signal 92 is coupled to register 84 via buffer 94 and multiplexer 96. Mux 75 is electrically connected to I/O pad 90 via buffer 98, mux 100, mux 86, and tri-state 88. An 8×1 multiplexer 102 has inputs from 1) I/O pad 90 via exclusive input line 89, 2) register 84 on Q bar via exclusive registered feedback line 85, 3) combinatorial signal line from mux 100 via exclusive combinatorial feedback line 101, and 4) an alternate input. The lone output of mux 102 is an input line to the programmable AND array via input buffer 104. 
     FIG. 2 illustrates a full view of a FPLA embodiment. One skilled in the art will recognize the programmable AND array having external IC signal inputs, and outputs that lead to the programmable OR array. Similarly, it is noted that the OR array is designed to rout signals to a selection of output macrocells. The macrocells are coupled to output pads which are coupled to output pins. Finally, it is noted that a fixed OR array would also work with this invention. 
     OPERATION 
     One skilled in the art will understand the operation of the invention with reference to the drawings and the following description. Uniquely, one signal enters the macrocell from OR array 74. If a registered signal is needed then mux 73 has fuses to program a 1 (one) and mux 75 is set to a 0 (zero). Thus, the input signal will only be coupled to flip-flop F/F or register 84, creating the registered mode from this first circuit path. Additionally, when the registered signal needs to be inverted, mux 82 will be programmed for a 0  (zero). Thus, a registered inverted signal is generated and sent to the output pin via pad 90. 
     One skilled in the art will understand from the above description and from the drawings that two other unique signals may be singularly generated in a similar fashion as described above by way of a second circuit path. Mux 73 will be set to a 0 (zero), preventing generation of any registered signals by not allowing logic signals from the OR array to enter this first circuit path. Whereby, mux 75 is set to a 1 (one), allowing generation of the combinatorial logic signals. Namely, the two combinatorial signals would be 1) a non-registered or combinatorial signal, and 2) an inverted combinatorial signal. 
     For allowing external input signals to enter over pad 90, three-state 88 is disabled via mux 78, and mux 102 selects the exclusive input line 89. This allows the external signal to be routed to the AND array and then to the OR array before entering the macrocell. 
     There are two ways to feedback array 74 signals to the AND array. Exclusive feedback line 85 is selected by mux 102 for registered signal feedback. Exclusive feedback line 101 is selected by mux 102 for combinatorial signal feedback. 
     While the invention has been taught with specific reference to one embodiment, someone skilled in the art will recognize that changes can be made in form and detail without departing from the spirit and the scope of the invention. 
     Although subheadings are used herein, these are merely provided for assisting the reader; wherein, the writer is free to enter any information under any heading/s.