Various embodiments of the invention may involve layout, circuit design, and programming methodologies for programmable. vias.
Broadly defined, structured application-specific integrated circuits (ASICs) may attempt to reduce the effort, expense and risk of producing application-specific integrated circuits (ASIC) by standardizing portions of the physical implementation across multiple products. By amortizing the expensive mask layers of the device across a large set of different designs, the non-recurring engineering (NRE) seen by a particular customer for a customized ASIC can be significantly reduced. There may be additional benefits to the standardization of some portion of mask set, which may include improved yield through higher regularity and/or reduced manufacturing time from tape-out to packaged chip.
Compared to a field-programmable gate array (FPGA), the unit price of a structured ASIC solution may be reduced by an order of magnitude due to the removal of the storage and logic required for configuration storage and implementation. The unit cost of a structured ASIC may be somewhat higher than a full custom ASIC, primarily due to the imperfect fit between design requirements and a standardized base layer, with certain I/O, memory and logic capacities.
Structured ASIC products may be differentiated by the point at which the user customization occurs and how that customization is actually implemented. Most structured ASICs may only standardize transistors and the lowest levels of metal. A large set of metal and via masks may be needed in order to customize a product. This yields a marginal cost reduction for NRE. Manufacturing latency and yield benefits may also be compromised using this approach.
In some prior patents, all but one via layer in the mask set may be standardized. This single via layer may be implemented, for example, using one of at least two approaches:
A prototyping flow using direct-write e-beam technology may be used to eliminate the need for any mask layers.
A production flow may use a mask layer for the vias.
The disadvantage of structured ASICs compared to FPGAs is that FPGAs do not require any user design information during manufacturing. Therefore, FPGA parts can be manufactured in larger volumes and can exist in larger inventories. This allows the latency of getting parts to customers in the right volumes to be reduced. FPGAs can also be modified after their initial configuration, which means that design bugs can be removed without requiring a fabrication cycle. Design improvements can be made in the field, and even done remotely, which removes the requirement of a technician to physically interact with the system.
An ideal ASIC device may combine the field programmability of FPGAs with the power and size efficiency of ASICs or structured ASICs.
Numerous recently developed technologies can be used to create programmable, two-terminal switches with two or more stable, non-volatile states. Phase change memory materials may be used to store information reaching one of two physical phases: either an amorphous phase that may have high resistivity or a crystalline phase that may have low resistivity (while this is a typical way in which phase change memory materials work, the further possibility is envisioned of an atypical phase change memory material that may work in the opposite fashion or in some other fashion, and which may still be utilized in embodiments of the invention). One of the materials that may be used is chalcogenide. This material is often used, for example, in CD-RW and DVD-RW technology, where the phase change is performed by heating and cooling with a laser beam. It is also possible to change the state with an electric current. A high current may be used to create a higher temperature, and the material may then cool to the amorphous phase with a higher resistance. A medium current may be used to change the cooling to the crystalline phase with a lower resistance. A low current can be used to sense the resistance of the material without changing the phase of the material. This technology is patented and licensed by a company called Ovonyx.
There are other phase-change materials, such as oxide-based solid electrolytes. Memories using such technologies are sometimes referred to as Programmable Metallization Cells (PMCs).
More recently, carbon graphene sheets have been demonstrated to have highly resistive and highly conductive states. These two states can be reached by first creating a break in the graphene sheet with a breakdown voltage. After the breakdown voltage causes a break in the sheet, applying a second voltage, called the write voltage, which is lower than the breakdown voltage, restores the connectivity of the sheet. A voltage between the breakdown and write voltage, called the erase voltage, returns the material to a non-conductive state. The conductive or non-conductive state of the material is non-volatile. It remains in the same state that it was in when the write or erase voltage is removed. Smaller voltages can be applied to the material without affecting the state. This material has been demonstrated to behave this way when deposited in a traditional lithography-etched via hole and covered by a metal electrode.
Other resistive memory technologies behave in similar ways. Specifically, numerous metal-oxide combinations have been shown to exhibit non-volatile bistable behavior where one state is highly resistive, and the second state is conductive.
A combination of resistive memory technology and via-configured structured ASICs can be used to offer an improved customizable integrated circuit, with low cost, area, and power of the structured ASIC, and the field programmability of an FPGA. Unfortunately, the characteristics of these materials are not perfectly suited to integration into programmable semiconductor devices. Some of the shortcomings of these materials are:
Programmable via materials can have significant resistance in the ON state (ON resistance). In graphene-filled vias, resistances of thousands or tens of thousands of ohms have been reported. These resistances are much higher than the resistances in metal vias. In order to minimize the impact of these resistances on circuit performance, they may be used at the end of a signal net. That way, the capacitance that must drain through the programmable via may be minimized. A programmable via fabric architecture with good timing characteristics may have one or more programmable vias at the terminus of the net.
The actual programming of programmable vias using graphene or similar materials may often use higher voltage than may be tolerable by traditional CMOS circuits. In some embodiments of the invention, the sensitive gate oxides may be isolated by using pull-down transistors on the receiving side of any net. The driver side may then have to tolerate the high programming voltage. Since drivers may not typically connect sensitive gate oxide, this may be more tolerable, but to prevent further damage, thick-oxide devices may be used, either as the actual driver transistors, or in series with the net to isolate the driver circuit.
Generating the programming voltage on chip may need to be done carefully because DC supplies at the programming voltage may not be available in a modem digital system. In addition, a current spike may be caused when the programmable via switches from an OFF-state to an ON-state, and this current spike may damage numerous components in the integrated circuit. To solve this problem, embodiments of the present invention may use one or more capacitors to hold adequate voltage for the programming of the device, and the capacitance may serve to limit the current spike that may occur when the program state switches from OFF to ON. The capacitor can be the output stage of a charge pump, which can be used to generate the programming voltage, and can even be used to manipulate the voltage ramp function.
Programming the programmable vias may also require circuitry to provide the programming voltages to just the desired vias. The overhead of this can be substantial. Embodiments of the present invention may reduce this overhead by decoding the desired via by allocating one configuration transistor or other switch device at the sink of a net segment, and another transistor at the source of a net segment. Because multiple sources can potentially connect to a given sink through a programmable via, one may enable a unique programmable via by enabling the transistor or switch device at the source of the net and the transistor at the sink of the net. This may significantly reduce the number of transistors required to program the vias.
The set of programmable vias can be programmed using decoders to enable the programming voltage to be applied to a single programmable via. The set of programmable vias on a single chip can be separated into different subsets, with each subset programmed by having a single pull-up decoder, which may route the programming voltage to a particular programming pull-up transistor, and a pull-down decoder, which may enable one of the pull-down transistors to connect the second terminal of the programmable via to the ground. This partitioning may serve to increase the speed of programming.
Setting programmable vias into an ON or OFF stage may require the application of a voltage function. That voltage may often be higher than those voltages available in typical digital semiconductors. In addition, the higher voltages may damage the transistors in those semiconductors. Therefore, these voltages may need to be generated internally to the device and may also need to be segregated from the vulnerable circuits.
To generate a voltage higher than the input voltage, one may choose a charge-pump for this requirement. Charge pumps may often have input controls, such as frequency sources, that can be used to provide not only the programming voltage, but by manipulating the controls, it may be possible to provide an optimal voltage ramp as a function of time for reliable programming.
Efficient layout of a device having programmable vias is made challenging by the fact that transistors, which may typically exist on the diffusion layer, may often be many metal layers away from the optimal via layer for programmable interconnect. One solution to this may be to use a stack of non-programmable vias to connect transistors and wire segment that connects to programmable vias. However, some embodiments of the present invention may not use a stack, but rather may use an alternation of non-programmable vias and wire segments to implement the span of a programmable net.
Programmable vias may be placed on different layers according to their function. Vias that connect directly to the transistors may be placed close to the diffusion layer, and vias that are primarily dedicated to interconnect may be higher in the metal stack. A chip that consists of multiple layers of programmable vias, therefore, may enable the optimal location of those vias.
Various embodiments of the invention will now be described, with reference to the accompanying drawings, in which:
Additionally, a single logical output may fan-out to multiple programmable vias, as illustrated in
Static CMOS circuits may have inputs pins F104 that may connect to the gate of a single logical transistor F110 in a pull-up transistor network F11 and to the gate of a single logical transistor F112 in a pull-down network, F113. In static CMOS circuits, the pull-up transistor network may be built using PMOS transistors, and the pull-down network may be built using NMOS transistors. To minimize input capacitance, the input transistors may be made small. A single logical transistor may comprise one or more physical transistors that may have identical port connections.
The voltages used to program programmable vias may be too large to be compatible with high-performance, low-voltage transistors used in most IC technology. Therefore, the programming transistors may be differentiated by having a thicker gate oxide, or other structural modification to deal with the larger voltages and to shield the sensitive transistors from the high voltage. Since thin oxide gates are the most sensitive to higher voltages, the pull-down programming transistor may be placed on the gate-side of the device, because keeping this node at a low voltage may prevent the gates of the non-programming logic from being damaged. This is illustrated in
Various embodiments of the invention have now been described in connection with the accompanying figures, but the invention is understood to encompass variations and modifications of the above embodiments, as may be apparent to one of ordinary skill in the art.
This application is a continuation-in-part of co-pending U.S. patent application Ser. No. 12/046,626, filed on Mar. 12, 2008, which claims the priority of U.S. Provisional Patent Application No. 60/894,548, filed on Mar. 13, 2007, both of which are incorporated by reference herein in their entireties.
Number | Date | Country | |
---|---|---|---|
60894548 | Mar 2007 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12046626 | Mar 2008 | US |
Child | 12732436 | US |