A programmable circuit and emulation system is used to emulate the behavior of analog and mixed mode circuit. The emulation preserves circuit electrical behavior while operating at a lower frequency than an intended frequency of the original circuit. The emulation system comprises an emulation hardware that includes control circuit, function groups, on chip function generation circuit, on chip measurement circuit and on chip characterization circuit and all are connected through programmable interconnect. Each function group comprises of transistor arrays or programmable passive devices, each transistor array or programmable passive device is connected to others through local programmable interconnect. Each transistor array or programmable passive device can be programmed to match the behavior of a transistor or passive device in the circuit to be emulated.
|
25. A method of emulating an original circuit that has analog components, the method comprising:
providing a programmable circuit comprising components interconnected by switches and an interconnection network;
matching one or more analog electrical behaviors of the original circuit to analog electric behaviors of selected circuit components in the function groups of the programmable circuit at a lower frequency than an intended operating frequency of the original circuit.
1. An analog and mixed mode circuit emulation system that emulates analog and mixed mode circuit electrical behavior of an original circuit, comprising:
a control circuit; and
an emulation circuit controlled by the control circuit, the emulation circuit including programmable function groups that are connected to each other in an interconnection network, wherein the function groups match one or more analog electrical behaviors of the original circuit at a lower frequency than an intended frequency of the original circuit.
2. The circuit emulation system of
3. The circuit emulation system of
4. The circuit emulation system of
5. The circuit emulation system of
7. The circuit emulation system of
8. The circuit emulation system of
9. The circuit emulation system of
10. The circuit emulation system of
11. The circuit emulation system of
12. The circuit emulation system of
13. The circuit emulation system of
14. The circuit emulation system of
15. The circuit emulation system of
a processor coupled to the control circuit;
a memory coupled to the control circuit; and
an output device coupled to the control circuit that displays emulation results.
16. The circuit emulation system of
17. The circuit emulation system of
18. The circuit emulation system of
19. The circuit emulation system of
20. The circuit emulation system of
21. The circuit emulation system of
22. The circuit emulation system of
a first drain terminal connected to a neighboring transistor array;
a second drain terminal that bypasses the neighboring transistor array and connects to a non-neighboring transistor array; and
at least one switch at each of the first and second drain terminals.
23. The circuit emulation system of
24. The circuit emulation system of
26. The method of
27. The method of
28. The method of
29. The method of
30. The method of
31. The method of
|
The present invention refers to an analog and mixed mode circuit emulation system and a programmable analog and mixed mode circuit, and more specifically, the system can be programmed to emulate the behavior of an analog and mixed mode circuit.
User programmable devices, such as PLDs and FPGAs, have been known for decades. These devices, which are useful for fast prototyping, emulation, and reconfigurable systems, are used predominantly for digital circuits and constructed by a plurality of logic cells at the gate level. The cells are connected with one another through user-programmable interconnections.
One of the applications of programmable devices is circuit emulation. Devices such as FPGAs can emulate the behavior of a digital circuit at a speed that is tens or hundreds times faster than that of digital logic simulation software. Circuit emulation plays a vital role in verifying the functionality of large digital systems. An emulation system using PLDs or FPGAs emulates digital circuits, as described, for example, in U.S. Pat. No. 7,356,454, U.S. Pat. No. 6,842,729, and U.S. Pat. No. 7,348,827.
Unlike digital circuits, whose operations are based on a limited number of logic values (e.g., 0, 1), analog circuits operate based on voltages and currents, and each of these quantities may have any of an infinite number of values at any given time. Analog circuits can have digital or analog inputs and outputs but the internal signals contain analog signals. Digital signals can also reside within the analog circuit. A “mixed mode circuit” contains both analog and digital circuit blocks.
In the analog domain, most analog circuits are custom designed. Analog designs are typically verified with a circuit simulation software, such as a SPICE simulator. Analog circuit simulation is much slower than digital circuit simulation, and there has been no significant advancement in analog circuit design technique and circuit simulation technology over the past 30 years. The custom circuit design processes often require many re-design cycles for circuit verification and optimization. Once a mistake is made and corrected, a new verification cycle has to be performed through wafer fabrication, package substrate fabrication, assembly operation, and design verification, the combination of which could take months to complete. If multiple redesigns occur and a verification cycle is completed for each redesign, the iterations can take years to complete. Due to the slow speed of circuit simulation, many analog and mixed mode circuit designs either take too long to design or enter the manufacturing phase without being fully verified or optimized. As a result, there are more missed market opportunities, circuit functional failures, or losses of product yield than there should be.
Prior efforts in programmable analog circuits focused on using predefined analog function blocks connected through programmable interconnection networks. The predefined analog function blocks can be operational amplifier, comparator, analog-to-digital converter, digital-to-analog converter, voltage reference, filter and others. These circuits can provide programmability and controllability of analog circuits for specific applications with pre-defined analog building blocks. Examples that reflect this type of effort are presented in U.S. Pat. No. 7,280,058, U.S. Pat. No. 6,910,126, U.S. Pat. No. 6,724,220, U.S. Pat. No. 6,910,126, U.S. Pat. No. 6,728,666, U.S. Pat. No. 6,424,209, U.S. Pat. No. 5,677,691, U.S. Pat. No. 5,563,526. None of these references describe a user-programmable analog circuit emulation system. For example, some of these references may solve the connectivity issue of the fully programmable analog circuit without addressing the programmability of circuit element characteristics.
A problem with user-programmable analog circuit using predefined analog function blocks is that it is not suitable for circuit emulation since the circuit can not match arbitrary circuit element characteristic and circuit topology. Furthermore, this type of circuit is intended to run circuit at-speed, which usually means the circuit runs at too high of a speed to measure circuit behavior accurately. Also, the high resistance values in switches interfere with accurate analog circuit emulation. In more detail, a fully programmable analog circuit uses a network of switches to connect the circuit elements. A MOS transistor requires three switches (at its drain, gate and source terminals) and sometimes additional switches to connect to other transistors (see U.S. Patent Application No. 2006/0261846 and U.S. Pat. No. 6,728,666). Most switches used in existing programmable digital and analog circuits are of minimum channel length and width to minimize parasitic effect and area usage. However, such switches have high resistance values. While the high resistance values may be acceptable in digital circuit emulation since digital circuit emulation mainly emulates logic “0” and “1” state, they will greatly affect the functionality of analog circuit emulation since an analog circuit operation requires higher precision and accuracy.
For the above reasons, there is currently an unfulfilled need for a fully user-programmable analog and mixed mode circuit and an analog and mixed mode circuit emulation system.
In light of the above, the invention provides a fully programmable system which can emulate the behavior of analog and mixed mode circuits. By using the invention in combination with existing digital emulation system, an entire system with digital and analog circuit elements can be emulated.
In one aspect, the invention is an analog and mixed mode circuit emulation system that emulates analog and mixed mode circuit electrical behavior of an original circuit. The emulation system includes a control circuit and an emulation circuit controlled by the control circuit. The emulation circuit includes programmable function groups that are connected to each other in an interconnection network, wherein the function groups are capable of matching one or more electrical behaviors of the original circuit at a lower frequency than an intended frequency of the original circuit.
In another aspect, the invention is a transistor array that is capable of matching the threshold voltage and current of a transistor in an original circuit. The transistor array includes an array of transistors, each transistor having a drain terminal, a source terminal, a gate terminal, and switches at the source, drain and gate terminals. The transistor array is capable of being configured to match different transistor characteristics. Each transistor has an individually-controlled threshold voltage and each transistor is turned on/off independently of other transistors.
In yet another aspect, the invention is a method of emulating an original circuit that has analog components. The method entails matching one or more electrical behaviors of the original circuit at a lower frequency than an intended operating frequency of the original circuit.
Other features and aspects of the invention will become apparent from the following detailed description, taken in conjunction with the accompanying drawings which illustrate, by way of example, the features in accordance with embodiments of the invention. The summary is not intended to limit the scope of the invention, which is defined solely by the claims attached hereto.
In the following description, reference is made to the accompanying drawings which illustrate several embodiments of the present invention. It is understood that other embodiments may be utilized and mechanical, compositional, structural, electrical, and operational changes may be made without departing from the spirit and scope of the present disclosure. The following detailed description is not to be taken in a limiting sense, and the scope of the embodiments of the present invention is defined only by the claims of the issued patent.
Some portions of the detailed description which follows are presented in terms of procedures, steps, logic blocks, processing, and other symbolic representations of operations on data bits that can be performed on computer memory. Each step may be performed by hardware, software, firmware, or combinations thereof.
It will be understood that when an element or layer is referred to as being “on”, “connected to” or “coupled to” another element or layer, it can be directly on, connected or coupled to the other element or layer or intervening elements or layers may be present. In contrast, when an element is referred to as being “directly on,” “directly connected to” or “directly coupled to” another element or layer, there are no intervening elements or layers present. Like numbers refer to like elements throughout. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items.
As used herein, “emulated circuit” or “original circuit” refers to the circuit that the system of the invention emulates. “Emulated transistors” refer to transistors in the emulated/original circuit. A “minimum-resistance switch” refers to a switch that has a resistance below about 500Ω.
It will be understood that, although the terms first, second, third etc. may be used herein to describe various elements, components, regions, layers and/or sections, these elements, components, regions, layers and/or sections should not be limited by these terms. These terms are only used to distinguish one element, component, region, layer or section from another region, layer or section. Thus, a first element, component, region, layer or section discussed below could be termed a second element, component, region, layer or section without departing from the teachings of the present invention.
The emulation system of the invention emulates circuit behavior at a lower speed than the speed of the emulated circuit while preserving the intended circuit behavior. In a logic emulation system, the intent is to preserve the circuit logic behavior. In an analog and mixed mode emulation system of the invention, the intent is to preserve circuit electrical behavior, such as voltages and currents. The circuit is scaled or transformed such that some circuit elements are larger than the emulated circuit elements. By increasing the size of the circuit elements, the emulation errors due to switches and interconnection parasitic can be greatly reduced. By operating the circuit at a lower speed, the measurement accuracy of circuit behavior is improved. In one aspect, the invention is an analog and mixed mode emulation system that can emulate and verify the behavior of an arbitrary circuit.
The switch used in the interconnection network presents a major challenge in analog circuit emulation due to the high resistance in the switch. Previous approaches utilized regular threshold voltage transistors with minimum channel length and width. In contrast, an emulation system according to the present invention uses low threshold or zero threshold voltage or CMOS transistors with large channel width, which can provide low resistance when turned on and have low leakage when turned off. Although a larger switch creates a larger parasitic, any undesired effect from the parasitic is minimized when the circuit elements are much larger than the switches.
The programmable elements in the emulation circuit, such as a transistor array or programmable passive devices, are capable of being programmed to match the behavior of given circuit elements. The transistor array contains transistors with different channel lengths and widths and with different substrate connections. One or more transistors in the transistor array emulate threshold voltage and current characteristics of an original transistor. For example, the threshold voltage can be programmed by selecting transistors with threshold voltages close to target threshold voltage and fine tuned to the target threshold voltage by adjusting substrate bias voltage or using other methods. The target transistor current can likewise be programmed by turning on one or more transistors in the transistor array. After programming, the transistor array has similar threshold voltage and current as the emulated transistor but with a larger channel length and width. The programmable passive devices include resistors, capacitors and inductors. After programming, the resistors should have similar values as the resistors in the emulated circuit; likewise, the capacitors and inductors will have a larger value than the emulated elements.
As described in more detail below, the emulation circuit contains an on-chip function generation circuit which can generate DC and AC voltages and currents. The emulation circuit also contains an on-chip measurement circuit which can measure voltages and currents in the emulation circuit and store the data in memory to be sent back to a processor for post processing and display. The emulation circuit also contains an on-chip characterization circuit which can be characterized with the on-chip function generation circuit and on-chip measurement circuit or be characterized with external devices.
Reference is now made in detail to embodiments of the invention, a programmable mixed analog/digital circuit architecture and emulation system, examples of which are illustrated in the accompanying drawings. While the invention is described in conjunction with the embodiments, it will be understood that the invention is not limited to these embodiments. On the contrary, the invention is intended to cover alternatives, modifications and equivalents, which may be included within the spirit and scope of the invention as defined by the claims.
The emulation circuit 107 includes an on-chip function generation circuit 207, an on-chip measurement circuit 208, an on-chip characterization circuit 209, and a control register 210 in addition to an interconnection network and a function group array 211. The interconnection network includes interconnection wires 213 and switches 214 that connect programmable function groups 212 of the function group array 211. The programmable function groups 212 can match the circuit topology and characteristic of a function block in the original circuit. The function groups 212 are connected through a network of interconnection wires 213 and switches 214 to form the complete circuit. Each of the switches 214 is an NMOS transistor, a PMOS transistor, or both (i.e., a CMOS transistor) having the lowest threshold voltage in a given process technology, which is typically a voltage between 0.15 V to near zero or slightly below zero (e.g., −0.1 V) for an NMOS transistor and between −0.15 V to slightly above zero (e.g., 0.1 V) for a PMOS transistor. Each of the switches 214 can also be a CMOS transistor, which comprises both NMOS and PMOS transistors. The CMOS switch does not require a low threshold voltage as the single NMOS or PMOS switch.
The on-chip function generation circuit 207 provides input to the emulated circuit. The functional generation circuit 207 generates AC and DC voltages and currents, as will be explained in more detail in reference to
The interconnection network connecting the function groups 212 includes wires 213 and switches 214. The switches 214 can be NMOS, PMOS or CMOS (NMOS and PMOS) pass transistors with regular threshold voltage, low threshold voltage, zero threshold voltage, native transistor or depletion transistor.
Most MOS transistors cannot operate at a voltage much higher than their intended operating voltage for an extended period of time without causing long term reliability issues. Hence, the voltage Vgate_on 308 cannot be much higher than the intended operating voltage Vdd 306. To ensure that the NMOS switch has a low resistance when operating at a high voltage, the threshold voltage of the NMOS switch 301 is preferably made as low as possible.
The selection of a MOS element for a switch depends on the process technology. The selection of the transistor is to achieve minimum resistance when the transistor is turned on while consuming minimum area. Special circuit technique is needed to reduce leakage current when the switch is turned off. If a higher threshold voltage transistor is used, the emulation accuracy may be adversely affected due to higher resistance in the switch and the threshold voltage itself. In a preferred embodiment of the invention, the switch selection includes either a zero threshold voltage transistor or a native NMOS transistor and/or a CMOS transistor.
The switches may degrade emulation accuracy due to the voltages across the switches; however, the effect on accuracy is not the same for all switches.
Ids=β/2(Vgs−Vt)2(1+λVds),
wherein Vgs is the voltage difference between the gate and the source, Vt is the threshold voltage, and Vds is the voltage difference between the drain and the source.
The error in the curve 321 caused by the source switch 310 is a reduction of the overdrive voltage (Vgs−Vt), and the effect is large and quadratic. The error in the curve 320 caused by the drain switch 311 is a reduction of Vds, since the switch resistance is relatively small compared to that of the transistor and the effect is small and linear. The MOS transistor has a high gate input resistance compared to the resistance of the switch, and hence the error in the curve 322 caused by the gate switch 312 is negligible. If the resistance of the switch were made very small by increasing the channel width of the transistor, then the errors caused by the gate switch 312, the drain switch 311, and the source switch 310 would be small. However, when the emulation circuit requires millions of switches to program and connect the circuit, the switch system could become large enough to be prohibitively expensive.
Although the source switch 310 causes the largest error, the resistance at the source terminal 316 actually emulates the short channel effect due to velocity saturation in the MOS transistor. Thus, a switch at the source terminal 316 is also desirable to emulate other transistor behaviors. When the source switch 310 is used, the transistor current is smaller but the current can be increased by increasing the transistor width. Based on the above observations, it is preferable for the system of the invention to have either no switch or one switch at the source terminal 316 and minimum number of drain switches 311. The gate switch 312 is used as a main means for interconnection to emulate transistor behavior.
A “transistor array” can be an array of NMOS transistors residing within the same or different P-WELL substrate, wherein the P-WELL voltage can be individually controlled. A “transistor array” can also be an array of PMOS transistors residing within the same or different N-WELL substrate, wherein the N-WELL voltage can be individually controlled. In one embodiment of the invention, a triple well process technology is used. The triple well process has separate P-WELL and N-WELL to provide independent programmability for each NMOS and PMOS transistor substrate voltage. A transistor array may include a combination of different transistors selected from low threshold voltage transistors, high threshold voltage transistors, zero threshold voltage transistors, regular threshold voltage transistors, thin gate logic transistors, thick gate I/O transistors and high voltage transistors.
There are two source terminals, one with no switch and the other with one switch, and multiple drain and gate terminals in each of the transistor arrays 401 and 402. There is either one switch or no switch at the source terminal of the transistor arrays 401, 402 and two or more switches at at least some of the drain terminals within the transistor array. One of the drain terminals is connected to the neighboring transistor, and the other drain terminals are connected to the bypass connections 408, which bypasses the neighboring transistor array. With bypass connection, each column can be configured to have various numbers of NMOS and PMOS transistors. There is only one switch at the drain when a transistor in one transistor array is connected to a transistor in another transistor array. The interconnections are mainly made through the gate terminal; thus, there are more than one switch connected to the gate connection.
Besides transistor arrays 401, 402, there are different function groups 212 that can match commonly used analog circuit building blocks, such as current mirrors, reference circuits, amplifiers, oscillator, filter and other circuits. The predefined topology can better match the critical circuit portion of the emulated circuit, the predefined circuits eliminate unnecessary routing, preserve matching of the circuit and offers better accuracy. Some function groups may include BJT/diode 409 as shown in
The circuit in
The function group 212 of
The transistor arrays can also be combined in series as the composite transistor or self-cascode configuration 512. The transistor arrays can also be combined in both series and parallel 513. The combination of parallel and/or series of transistor arrays can provide different characteristic to emulate different kind of transistors.
Interconnection parasitic is a major concern in analog circuit layout, as interconnection parasitic degrades analog circuit performance. Accurate simulation of analog circuit needs to include extracted interconnection parasitic. The interconnection parasitic includes both resistance and capacitance. The interconnection resistance can be selectively emulated by combining interconnection wire resistances and switch resistances in series and/or parallel. The interconnection capacitance can be emulated with unused transistor arrays as programmable MOS capacitors. The output loading 606 can be emulated by the unused transistor arrays in the function group array 211. If the output capacitance loading is large, the capacitance loading can be emulated by the programmable capacitor array 608.
In
Another implementation of programmable capacitor and inductor is to use capacitance multiplication and inductance multiplication techniques. These techniques can greatly reduce the areas used by the capacitor and inductor elements.
There are at least two drain terminals 802 in the transistor array. Each drain terminal 802 is connected to the drain of a transistor through one of the switches 311. In the preferred embodiment of the invention, the switch 311 has one of the configurations shown in
There are at least two gate terminals 803 in each transistor array. Each gate terminal 803 is connected to the gate of a transistor through one of the switches 312. In the preferred embodiment of the invention, the switch 312 has one of the configurations illustrated in
All transistors in a transistor array share the same source terminal 801 (or source terminals 801, depending on the embodiment). This configuration will provide best accuracy. All transistors 800, 805 in the transistor array may be individually disabled by applying a control voltage Voff at one of the gate terminals 803 and turning on one of the gate switches 312. Depending on the situation, Voff may be implemented as a voltage equal to or less than GND for NMOS, and Voff may be implemented as a voltage equal to or greater than Vdd for PMOS to reduce leakage current.
A method is developed to match the MOSFET (Metal-Oxide Semiconductor Field Effect Transistor) or MOS transistor operating point with multiple MOS transistors; a MOS transistor can be NMOS (N-Type Metal Oxide Semiconductor) or PMOS (P-Type Metal-Oxide Semiconductor). A “transistor operating point” is defined as transistor threshold voltage and transistor current at specific transistor terminal voltages, temperature and other conditions.
Each transistor 800 within a transistor array 401/402/501/502 with the same channel length has the same threshold voltage. Each transistor within a transistor array with different channel length 805 has different threshold voltages. In general, a transistor with longer channel length has smaller threshold voltage.
The voltage applied to the substrate 317 of a transistor array 401/402/501/502 can be individually controlled. This substrate voltage controls the threshold voltage of the transistors within the transistor array. Transistors 800 in the transistor array 401/402/501/502 share the same channel length. There are transistors 805 with channel lengths that are different than that of transistors 800, and these transistors 805 can be used to fine-tune the transistor array electrical behavior. As shown, each of the transistors 800 and 805 correspond to the transistor 313 shown in
For both PMOS and NMOS transistors, increasing the voltage between the source terminal 801 and the substrate 804 increases the transistor threshold voltage, and decreasing the voltage between the source terminal 801 and the substrate 804 decreases the transistor threshold voltage. This effect is sometimes referred to as the body-effect of MOS transistor. This transistor behavior enables fine tuning of transistor threshold voltage by varying the transistor substrate voltage.
For each transistor 800 in the transistor array with the same channel length, the channel widths are different. When two transistors are turned on at the same time, the effective channel width equals the sum of the effective channel widths of the two transistors. In the preferred embodiment, the channel width is binary weighted with 1, 2, 4, 8, . . . times of a unit width. The total effective transistor width of a transistor array can be controlled by turning on or off selected transistors in the array. This mechanism is used to match the current of the emulated transistor. The transistor array also contains transistors 805 with different channel lengths and widths, and these transistors are used to fine tune the transistor behavior to better match the target transistor.
Each transistor array can match a transistor within certain ranges of threshold voltages and currents by controlling the substrate voltage and turning on/off transistors within the transistor array.
The transistor array 401/402/501/502 contains transistors that have a longer channel length and a greater channel width than the emulated transistor. The transistor array can emulate the threshold voltage and current of the emulated transistor but has a larger channel length and width than the original transistor and operates at a lower frequency than the emulated transistor. There are several advantages of having a larger transistor to improve emulation accuracy. The interconnection network in the programmable circuit has a large capacitance due to switches and long wires. The interconnection capacitance can degrade emulation accuracy when the interconnection capacitance is larger than device capacitance. As a large transistor has a large capacitance, the capacitance of the interconnection network has less effect on emulation accuracy. Device mismatch is an important factor that affects analog circuit performance. The emulation circuit also exhibits device mismatch which affects the emulation accuracy. The larger transistor has better device matching characteristic than smaller transistor and the degree of transistor mismatch is inversely proportional to the transistor area. Having a larger transistor improves device matching and thus improves emulation accuracy. When the circuit operates at very high frequency, it's very difficult to measure circuit behavior accurately. Having a larger transistor forces the emulation to be performed at lower frequency, thereby improving measurement accuracy.
The transistors in a transistor array 401/402/501/502 can also be a combination of different types of transistors, such as one of a low threshold voltage, a high threshold voltage, zero threshold voltage, and regular threshold voltage. Some process technologies also offer other threshold voltage options. The transistor array also includes I/O transistors with different operating voltages, and the I/O transistor operates at a higher voltage than a logic transistor. The I/O transistor is used in an analog circuit design when higher voltage operation is required. The transistor array also includes high voltage MOS transistors for high voltage applications.
In order to match the behavior of any transistor regardless of its type, different threshold voltage option, different threshold voltage value and current, the emulation circuit needs to have transistor arrays of different types, with different threshold voltage options, different channel lengths and a wide range of channel width.
The emulation system of the invention can closely match the operating point of a transistor with the same process technology as long as the transistor characteristics are similar. The system can also be used to match the operating point of a transistor in different process technology and it is accurate around the operating point of the transistor. If the transistor operates far away from the operating point where it is characterized, the error may be larger.
As shown in
In the embodiments of
The on-chip characterization circuit 209 is useful since the effect of process variation varies from wafer to wafer, from die to die and even within the die. As a result of this variation, the device characteristics of the emulation circuit cannot be pre-determined—it has to be measured from the actual die. However, measuring the characteristic of every device in the emulation circuit is not practical if not impossible.
The characterization can be done before emulation; the pre-characterization can speed up the emulation set-up time. The characterization can also be done during emulation, although doing so could mean a longer set-up time for the emulation. In the preferred embodiment, the characterization results are stored after the first characterization so there is no need for characterization in future emulations of the same circuit or same process technology.
Characterization involves measuring the device characteristics of the actual device in the emulation circuit. The characterization circuit contains at least one unique instance of NMOS, PMOS transistor array 1207, 1208 and programmable passive devices 1210, BJT/diode 1211 in the emulation circuit. The device characteristic is determined by applying different voltages or currents and measuring the resulting voltages or currents. The device characteristics are extracted from the measured results. For each device to be emulated, the device characteristic, such as threshold voltage, current, capacitance, resistance, and inductance is simulated with a circuit simulator, such as SPICE simulator. The emulation software can match the ideal characteristic of a device with the characteristic of the actual device in the emulation circuit.
The accuracy of the measured device characteristic relative to the actual device in the emulation circuit depends on process variation. Process variation can be classified as inter-die or die-to-die variation and intra-die or within-die variation, and the invention focuses on the latter. In another method of classification, process variation can be systematic or random. Generally, systematic variations are deterministic in nature and are caused by the structure of the device and its neighboring environment. Since the devices in measurement circuit and device in the emulation circuit have the same structure, most systematic variations are eliminated. Random variations are unpredictable by nature, and each device can vary independently. Random variations are inversely proportional to the size of the device. Since the transistor array, programmable resistor, capacitor and inductor have large size in the emulation system of the invention, random variations are greatly reduced and high accuracy can be achieved.
The characterization can be done with on chip function generation circuit and on chip measurement circuit. It can also be done with off chip equipments.
The analog and mixed mode emulation system emulates circuit at a lower frequency than the frequency of the emulated circuit. The circuit is scaled or transformed so that the circuit behavior is preserved while operating at lower frequency.
In summary, emulation of the analog and mixed mode circuit behavior involves the following steps:
Now, examples of several circuits will be described to demonstrate how emulation can be performed at lower frequency while preserving circuit voltage and current behavior. The examples include simplest RC circuit to a complicated PLL (phase-locked-loop) circuit.
First example uses an RC circuit including a resistor and a capacitor. Initially, the circuit is at Vdd and then discharges to GND. The circuit is emulated at a lower frequency with an emulation circuit, and this emulation involves scaling the capacitance to larger value while keeping the resistor value the same. With a larger capacitance, the circuit takes longer time to discharge the capacitance. If the emulation circuit capacitance value is 10 times larger than the emulated circuit, then discharge takes 10 times longer for the emulation circuit compared to the emulated circuit. The waveform generated by the emulation circuit has 10 times the delay compared with the waveform generated by the emulated circuit. As the RC circuit is linear, it should, at least theoretically, offer perfect accuracy when the circuit is scaled. However, in reality, the switch used in the circuit degrades the accuracy and most analog circuits are nonlinear; thus there will be error due to circuit non-linearity and switches.
Second example uses an inverter circuit with a capacitance load. The inverter contains an NMOS and a PMOS transistor. The input of the circuit is a pulse, and thus the output of the circuit toggles between logic “0” and logic “1”. The circuit is emulated at lower frequency with an emulation circuit. The transistor arrays are programmed to emulate the NMOS and PMOS transistors' threshold voltage and current. The transistor array of the emulation circuit has approximately five times the transistor length and width than the emulated transistor. Thus, the transistor array has approximately 25 times the capacitance than the original transistor; the capacitance load is scaled up 25 times and the input of the circuit is also scaled 25 times in time. The emulation circuit has approximately 25 times the delay of the emulated circuit. The differences or errors between the two results are due to differences in the behavior of the emulating transistor and the switches used in the emulation circuit.
Third example includes an operational amplifier circuit and examines its frequency response. The transistors in the emulated circuit are scaled up three times in channel width and length in the emulation circuit, and the transistor capacitances are scaled up approximately nine times. The frequency response of the emulation circuit is about nine times slower than that of the emulated circuit. The differences or errors between the two circuit frequency responses are primarily due to differences in the behavior of the emulated transistor and the switches used in the emulation circuit.
The fourth example includes a PLL (Phase Locked Loop) circuit which is commonly used in analog and mixed mode system. The transistors in the circuit are scaled up three times in channel width and length, and the transistor capacitances are scaled up approximately nine times. The capacitors in the circuit are also scaled up nine times. When compared with emulated PLL circuit, the settling time of the emulation circuit PLL is about nine times that of the emulated circuit. The final VCO (voltage controlled oscillator) control voltage of the emulated circuit and the emulation circuit shows a larger error. The differences or errors between the two waveforms are due to differences in the behavior of the emulated transistor and the switches used in the emulation circuit. Better accuracy can be obtained through fine tuning the emulation circuit to better match the circuit behavior of the original circuit.
The above examples, which are merely illustrative and not limiting of the invention, demonstrate how analog and mixed mode circuit can be emulated by the present invention with high accuracy. In the invention, the emulation accuracy is improved by reducing the interconnection parasitic effect, by improving device matching and by improving measurement accuracy.
Besides silicon technology, which creates BiCMOS transistors, NMOS and CMOS transistors, transistors made with other technologies that can offer analog behavior or simulate analog behaviors can also be used in conjunction with the present invention. Transistors made of III-V compound technology or molecular technology are examples that exhibit analog behaviors.
Embodiments of the present invention may provide various advantages not provided by prior art systems. An advantage of the invention is that analog and mixed-mode circuits can be quickly designed and redesigned by emulating the behavior of the circuit in real time and greatly reduces circuit development time. Thus, the present invention enables a designer to perform more thorough analysis of the circuit to meet design specification and even achieve higher performance and better yield.
Another advantage of the invention is that the programmable emulation circuit can be applied to various circuit designs targeting different application markets such as, data/voice communication, wire/wireless communication, networking, digital/analog audio, digital/analog video, display, storage, digital photography, automotive, power management, high voltage applications, measurement and others. The system of the invention can emulate RF (radio frequency) circuits, IF (intermediate radio frequency) circuits, base-band circuits, transceiver circuits, amplifiers, high speed data link circuits, data conversion circuits, frequency synthesis circuits, clock recovery circuits, power management circuits, memory circuits, high voltage circuits and other analog circuits
Another advantage of the invention is that a full system design containing both digital and analog circuitry can be emulated and verified together at high speed, thus reducing system design and production cycle. The system can be a SOC (system on chip), SIP (system in package) or other forms of electronic system.
Another advantage of the invention is that the emulation system can also be used for analog computing and hybrid analog/digital computing. The emulation system offers full programmability and performance tuning to achieve the best flexibility and accuracy for analog computing. The system can emulate hybrid electrical/mechanical/physical systems for manufacturing, communication, automotive, aerospace, oil drilling, power system, weather forecast, and earth science, among other systems. The system can also be used for building neural networks for artificial intelligence (AI) applications. In the electronic design area, the system can be used for control systems and to speed up parasitic extraction, OPC (optical proximity correction), litho simulation, packaging and interconnection simulation and other applications.
Accordingly, the present invention provides an emulation system consisting of processor, memory, emulation software, input device, and output device and emulation circuit. A programmable analog and mixed mode emulation circuit offers full programmability to emulate given analog/mixed mode circuit design. The present invention provides a solution to emulate a system which is analog/mixed mode or contains both analog and digital circuitries. The present invention can achieve an emulation task which could not be achieved in the past.
Therefore, it should be understood that the invention can be practiced with modification and alteration within the spirit and scope of the appended claims. The description is not intended to be exhaustive or to limit the invention to the precise form disclosed. It should be understood that the invention can be practiced with modification and alteration and that the invention be limited only by the claims and the equivalents thereof.
Patent | Priority | Assignee | Title |
Patent | Priority | Assignee | Title |
5677691, | Jun 25 1993 | Fraunhofer-Gesellschaft zur Forderung der Angewandten Forschung E.V. | Configurable analog and digital array |
5808351, | Feb 08 1994 | Prolinx Labs Corporation; PROLINX LABS CORPORATION 90 GREAT OAKS BOULEVARD, SUITE 107 | Programmable/reprogramable structure using fuses and antifuses |
6240010, | Feb 26 1999 | Sony Corporation | Semiconductor memory cell |
6424209, | Feb 18 2000 | Lattice Semiconductor Corporation | Integrated programmable continuous time filter with programmable capacitor arrays |
6724220, | Oct 26 2000 | MONTEREY RESEARCH, LLC | Programmable microcontroller architecture (mixed analog/digital) |
6728666, | Sep 13 1999 | The United States of America as represented by the Administrator of the National Aeronautics and Space Administration | Evolvable circuit with transistor-level reconfigurability |
6842729, | Dec 02 1988 | Cadence Design Systems, INC | Apparatus for emulation of electronic systems |
7038482, | Mar 19 2004 | MONTEREY RESEARCH, LLC | Circuit and method for automatic measurement and compensation of transistor threshold voltage mismatch |
7117143, | Dec 11 2003 | Synopsys, Inc | Clock distribution in a circuit emulator |
7233473, | Nov 18 2002 | MORGAN STANLEY SENIOR FUNDING, INC | Protection circuit and method for floating power transfer device |
7280058, | Aug 18 2006 | MICROSEMI SOC CORP | Mixed-signal system-on-a-chip analog signal direct interconnection through programmable logic control |
7348827, | May 19 2004 | TAHOE RESEARCH, LTD | Apparatus and methods for adjusting performance of programmable logic devices |
7356454, | Oct 17 2003 | University of Delaware | Method and apparatus for emulation of logic circuits |
8026739, | Apr 17 2007 | MUFG UNION BANK, N A | System level interconnect with programmable switching |
20060261846, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Date | Maintenance Fee Events |
Date | Maintenance Schedule |
Oct 09 2015 | 4 years fee payment window open |
Apr 09 2016 | 6 months grace period start (w surcharge) |
Oct 09 2016 | patent expiry (for year 4) |
Oct 09 2018 | 2 years to revive unintentionally abandoned end. (for year 4) |
Oct 09 2019 | 8 years fee payment window open |
Apr 09 2020 | 6 months grace period start (w surcharge) |
Oct 09 2020 | patent expiry (for year 8) |
Oct 09 2022 | 2 years to revive unintentionally abandoned end. (for year 8) |
Oct 09 2023 | 12 years fee payment window open |
Apr 09 2024 | 6 months grace period start (w surcharge) |
Oct 09 2024 | patent expiry (for year 12) |
Oct 09 2026 | 2 years to revive unintentionally abandoned end. (for year 12) |