DE69616416T2 - Verfahren zur Simulation einer Schaltung - Google Patents

Verfahren zur Simulation einer Schaltung

Info

Publication number
DE69616416T2
DE69616416T2 DE69616416T DE69616416T DE69616416T2 DE 69616416 T2 DE69616416 T2 DE 69616416T2 DE 69616416 T DE69616416 T DE 69616416T DE 69616416 T DE69616416 T DE 69616416T DE 69616416 T2 DE69616416 T2 DE 69616416T2
Authority
DE
Germany
Prior art keywords
current
circuit
time
response
frequency
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69616416T
Other languages
English (en)
Other versions
DE69616416D1 (de
Inventor
David Sharrit
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agilent Technologies Inc
Original Assignee
Agilent Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Agilent Technologies Inc filed Critical Agilent Technologies Inc
Publication of DE69616416D1 publication Critical patent/DE69616416D1/de
Application granted granted Critical
Publication of DE69616416T2 publication Critical patent/DE69616416T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Measurement Of Resistance Or Impedance (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

    Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf Computerprogramme zum Simulieren von elektronischen Schaltungen.
  • Hintergrund der Erfindung
  • Die Komplexität von modernen integrierten Schaltungen und die hohen Herstellungskosten von Prototypen haben zu der Entwicklung einer Klasse von Computerprogrammen geführt, die die Operation einer Schaltung simulieren. Diese Simulatoren helfen dem Entwerfer beim Bestimmen der ordnungsgemäßen Vorspannungen, die an verschiedene Komponenten angelegt werden sollen, und beim Verifizieren der Operation der Schaltung, bevor Betriebsmittel für die Herstellung von Prototypen bereitgestellt werden.
  • Die Schaltung, die simuliert werden soll, wird herkömmlicherweise mit Hilfe einer Liste von Knoten und Komponenten beschrieben, die mit jedem Knoten verbunden sind. Der Benutzer kann tatsächlich eine Netzliste oder eine graphische Darstellung der Schaltung schaffen, von der das Programm die Netzliste ableitet. Jede Komponente kann als eine Vorrichtung gesehen werden, die einen Strom ausgibt oder annimmt, dessen Wert durch die Spannung an dem Knoten, mit dem diese verbunden ist, und möglicherweise durch die vorhergehenden Spannungen an dem jeweiligen Knoten bestimmt wird. Der Benutzer kann bestimmte Komponenten definieren oder eine Bibliothek von Standardkomponenten verwenden, die mit dem Simulationsprogramm geliefert wird.
  • Das Simulationsprogramm findet den Satz von Knotenspannungen, die zu einer Schaltung führen, bei der die Summe der Ströme an jedem Knoten null ist. Dies ist die Spannung, bei der die Ströme, die durch Komponenten geschaffen werden, die Quellen des Stroms sind, genau mit den Strömen übereinstimmen, die von den verbleibenden Komponenten- abgeleitet werden. Jede Komponente wird durch ein Unterprogramm beschrieben, das den Strom, der durch die Komponente ausgegeben oder angenommen wird, ansprechend auf eine Eingangsspannung schafft. Wie weiter unten detaillierter erläutert werden wird können die Komponentenunterprogramme auch die ersten Ableitungen des Stroms bezüglich der Knotenspannungen liefern. Zusätzlich kann der Ausgang eines Komponentenunterprogramms von der Historie des Knotens abhängen, mit dem die entsprechende Komponente verbunden ist. Wenn z. B. die Komponente Induktoren oder Kondensatoren enthält, hängt der Strom von der Knotenspannung und von der Veränderungsrate der Knotenspannung mit der Zeit ab. Die Veränderungsrate der Knotenspannung kann aus vorhergehenden Werten der Knotenspannungen, d. h. der "Historie der Knoten", berechnet werden.
  • Der einfachste Typ von Simulation bestimmt das Dauerzustandsverhalten der Schaltung, d. h. ihre DC- Betriebsbedingungen. Derartige Simulationen sind beim Einstellen verschiedener Vorspannungen an Schlüsselknoten in der Schaltung besonders nützlich. Unter Dauerzustandsbedingungen reduziert sich die Lösung des Simulationsproblems üblicherweise auf die Lösung eines Systems von nichtlinearen Gleichungen, die durch einen bestimmten iterativen Ansatz, wie z. B. die Newton-Raphson-Iteration, gelöst werden müssen. Die Zahl von Gleichungen in dem System ist zumindest N, wobei N die Zahl von Knoten in der Schaltung ist.
  • Die Simulation der Schaltung unter transienten oder Großsignal-Betriebsbedingungen ist wesentlich komplexer. Üblicherweise möchte der Entwerfer die Spannung als eine Funktion der Zeit an einem oder mehreren Knoten in der Schaltung bestimmen, wenn ein Eingangsknoten mit einer Spannungsquelle verbunden ist, die sich mit der Zeit verändert. Wie oben erläutert, nehmen eine oder mehrere Schaltungskomponenten Ströme an oder geben diese aus, deren Wert von der Veränderungsgeschwindigkeit der Knotenspannung sowie von der Knotenspannung selbst abhängt. So führt die Anforderung, daß die Ströme, die in einen Knoten fließen, sich mit den Strömen ausgleichen, die den Knoten verlassen, zu einem System von Differentialgleichungen. Eine Schaltung mit N Knoten wird nun durch ein System von zumindest N Gleichungen beschrieben. Ferner sind die Gleichungen, die Vorrichtungen entsprechen, die Induktoren oder Kondensatoren aufweisen, Differentialgleichungen.
  • Numerische Verfahren zum Lösen derartige Systeme von nichtlinearen Differentialgleichungen sind bekannt. Diese Verfahren erfordern üblicherweise zu jedem Zeitpunkt ein iteratives Verfahren. So ist die Lösung des Transiente- Simulation-Problem rechentechnisch wesentlich komplexer als die Lösung der DC-Simulation.
  • Ferner muß die Lösung zu jedem Zeitpunkt wiederholt werden. Der Abstand der Zeitpunkte wird üblicherweise durch die höchste Frequenz bestimmt, die an einem Knoten zu erwarten ist, der eine Komponente aufweist, die mit demselben verbunden ist, deren Ausgang von der Veränderungsgeschwindigkeit der Knotenspannung abhängt, was der ersten Ableitung der Knotenspannung entspricht. Die erste Ableitung wird durch Anpassen der gegenwärtigen Knotenspannung und einer oder mehrerer vergangener Knotenspannungen an eine Kurve bestimmt. Die Steigung der Kurve wird dann als eine Annäherung an die erste Ableitung verwendet. Wenn aufeinanderfolgende Zeitpunkte zu weit auseinanderliegen, führt die Annäherung zu einem wesentlichen Fehler der ersten Ableitung. Es wird angemerkt, daß ein derartiger Fehler gleichwertig mit dem Begehen eines unbekannten Fehlers bei einem Induktor- oder Kondensatorwert der Schaltung ist. Deshalb weisen Simulationen von Transienten Fehler auf, die mit zunehmenden Zeitstufen ansteigen. So kann die benötigte Zahl von Schritten pro Sekunde eine Größenordnung höher als die höchste Frequenz an dem empfindlichsten Knoten sein.
  • Es wird eine Simulation betrachtet, bei der das Eingangssignal in die Schaltung eine 10-kHZ-Modulation eines 10-Ghz- Mikrowellensignals ist. Um die Antwort der Schaltung über 10 Zyklen der Modulationshüllkurve, d. h. eine Millisekunde, mit einer Schrittgröße zu beobachten, die einem Zehntel der Periode des Trägers entspricht, muß das Schaltungsverhalten an 10 Millionen Zeitpunkten berechnet werden. Wenn das Verhalten an jedem von 1000 Knoten wiedererlangt werden soll, wird der Speicherraum für die Ergebnisse allein zu einem Problem.
  • Wenn der Eingangswellenverlauf periodisch ist, kann die Berechungsschwierigkeit im wesentlichen durch die Verwendung von Harmonic-Balance-Verfahren zum Berechnen des Verhaltens der Schaltung reduziert werden. In diesem Fall, kann das Eingangssignal als eine Summe von Sinuswellen mit festen Amplituden geschrieben werden. Jede Schaltungskomponente muß den Strom, der durch diese Komponente ausgegeben oder angenommen wird, ansprechend auf jede Sinuskurve an dem Knoten, der mit der Komponente verbunden ist, liefern. Wenn das Eingangssignal durch 10 Sinuskurven dargestellt ist, muß die Komponente 10 Stromwerte plus die Ströme bei Harmonischen dieser Werte liefern. Es wird angemerkt, daß jeder Strom eine komplexe Zahl ist, die die Amplitude und die Phase des Stroms darstellt. Die Ströme bei der Harmonischen werden benötigt, weil eine nichtlineare Vorrichtung eine oder mehrere Harmonische eines Eingangssignals anregen kann. Das Simulationsproblem wird dann auf ein Lösen eines Satzes von nichtlinearen Gleichungen reduziert, bei denen die Ströme, die bei jeder Frequenz in jeden Knoten fließen und diesen verlassen, ausgeglichen sind.
  • Das Harmonic-Balance-Verfahren erzielt seine Vorteile durch ein Beseitigen des Bedarfs, Lösungen zu jedem Zeitpunkt zu berechnen. In diesem Fall, liefert die Lösung des Systems von nichtlinearen Gleichungen die Dauerzustandslösung des Simulationsproblems. Das System von Gleichungen ist jetzt jedoch n mal größer, wobei n die Zahl von Harmonischen ist, für die jede Vorrichtung Stromdaten liefern muß. So ist das Harmonic-Balance-Verfahren auf Simulationen beschränkt, für die das verfügbare Computersystem ein System von Gleichungen der Ordnung nN lösen kann, wobei N die Zahl von Knoten ist.
  • Zusätzlich ist, wie oben erwähnt, das Harmonic-Balance- Verfahren auch auf die Situationen beschränkt, in denen das Eingangssignal periodisch ist. In vielen Situation von Interesse ist das Eingangssignal nicht periodisch. Die Modulation eines Trägers durch einen Datenstrom führt z. B. üblicherweise zu einem nichtperiodischen Signalverlauf. Diese Probleme können nur durch eine Zeitbereichsanalyse gelöst werden. Wie bereits oben erwähnt, wird, wenn die Trägerfrequenz sehr viel höher als die Modulationsfrequenz ist, die Zahl von Zeitpunkten, die benötigt wird, um die Schaltung unter Verwendung der Zeitbereichsanalyse zu simulieren, untragbar hoch. Deshalb gibt es eine große Klasse von Problemen, für die sowohl Zeitbereichs- als auch Harmonic- Balance-Simulatoren weniger als zufriedenstellend sind.
  • Zwei weitere verwandte Verfahren des Stands der Technik, das gemischte Frequenz-Zeit-Verfahren (MTF-Verfahren) und das Hüllkurvenfolge-Verfahren, wurden bei einem Versuch entwickelt, die oben beschriebenen Probleme zu überwinden. Beide Verfahren beruhen darauf, in der Lage zu sein, den gesamten Signalverlauf über eine Taktperiode unter Verwendung von zugrundeliegenden Zeitbereichsintegrationsverfahren iterativ zu lösen. Mehrere Taktzyklen werden dann weggelassen, bevor ein weiteres Taktperiodensegment gelöst wird. Diese Verfahren reduzieren die Zahl von Zeitpunkten, für die eine Lösung berechnet werden muß. Die Berechnungsschwierigkeit wird jedoch wesentlich erhöht, weil es nun Grenzverhältnisse, denen auch zwischen einem Taktperiodensegment und den angrenzenden Taktperiodensegmenten Genüge getan werden muß, gibt. Der MFT-Ansatz nimmt an, daß der Signalverlauf, nachdem er mit der Taktgeschwindigkeit abgetastet wurde, durch eine kleine Zahl von Harmonischen n dargestellt werden kann. Dieser abgetastete Signalverlauf kann durch 2*n-1 Zeitabtastungen dargestellt werden. Für jede dieser Zeitabtastungen werden die Schaltungsgleichungen von den anfänglichen Werten integriert, um die Werte eine Taktperiode später zu erhalten. Fourier-Verfahren werden dann verwendet, um den Satz von anfänglichen Werten einer Taktperiode zu verzögern. Beide Sätze von verzögerten Werten müssen gleich sein, so daß ein Satz von nichtlinearen Gleichungen definiert wird, die diese Werte miteinander in Verbindung setzen. Dieser Satz von nichtlinearen Gleichungen wird dann mit Shooting-Verfahren auf Newton- Raphson-Basis gelöst. Dies erfordert nicht nur ein wiederholtes Integrieren der Schaltungsgleichungen, sondern auch ein wiederholtes Berechnen der Empfindlichkeiten der integrierten Ergebnisse. Wenn die Zahl von Harmonischen n groß ist, kann ein Lösen dieses großen Satzes von Gleichungen sehr zeitaufwendig werden, wobei der Vorteil, der dadurch entsteht, daß die Schaltungsgleichungen nicht für jede Taktperiode gelöst werden müssen, verloren geht. Wie bei der Harmonic-Balance-Simulation, ist dieser MFT-Ansatz praktisch darauf beschränkt, die Dauerzustandslösung zu finden, wenn eine relativ kleine Zahl von Harmonischen und Tönen des abgetasteten Wellenverlauf vorhanden ist, wobei die Geschwindigkeit und Effizienz desselben eine starke Funktion dessen ist, wie linear sich die Schaltung von einer Zeitabtastung zu der nächsten verhält.
  • Das Hüllkurvenfolge-Verfahren ähnelt dem MFT dahingehend, daß es die Integration der Schaltungsgleichungen über eine gesamte Taktperiode gemeinsam mit den Empfindlichkeiten benötigt, wobei es anstelle der Verwendung von Frequenzbereichsverfahren eine "differenzialartige" Zeitbereichsgleichung verwendet, um die Lösung zu einer Taktperiode mit der Lösung von mehreren Taktperioden vorher in Verbindung zu setzen. Die Zahl von Taktperioden, die ausgelassen werden kann, hängt davon ab, wie schnell sich die Hüllkurve verändert. Wenn dies ein stabiler Algorithmus sein soll, muß eine implizite Integration analog zu der umgekehrten Eulerschen verwendet werden. Als ein Ergebnis wird das Verfahren zu einem iterativen Verfahren, wobei die Schaltungsgleichungen und -Empfindlichkeiten für die einzelne Taktperiode unter Umständen mehrere Male integriert werden müssen.
  • Beide oben erwähnten Verfahren beruhen darauf, in der Lage zu sein, die Schaltungsgleichungen über einzelnen Taktperioden in dem Zeitbereich zu lösen. Diese Einschränkung limitiert die Verfahren auf Schaltungsmodelle mit konzentrierten Elementen, d. h. Kondensatoren und Induktoren, weil die Modelle keine Faltung verwenden können oder vergangene Historieninformationen benötigen, da eine vergangene Historie für diese Taktperioden, die weggelassen werden, nicht verfügbar ist. Derartige Modelle können viele Schaltungen sehr genau beschreiben, die in Hochfrequenz- Kommunikationsschaltungen verwendet werden. Der MFT-Ansatz kann wirklich transiente oder sehr komplexe Modulationssignalverläufe nicht handhaben. Beide Ansätze erfordern, um die Konvergenzgeschwindigkeit von Newton-Raphson-Verfahren zu erlangen, die Berechnung einer Zeitbereichsempfindlichkeitmatrix, die teuer zu berechnen ist und die Umkehrung einer ganzen, und nicht einer schwach besetzten Matrix benötigt. Zusätzlich erzeugen beide Ansätze nur Zeitbereichssignalverläufe. Grundlegende Hüllkurveninformationen, wie z. B. die Augenblicksgröße, die Phase oder I/Q, sind nicht verfügbar, weder zur Verwendung bei der Simulation selbst, noch zu einer geeigneten Anzeige. Die Erzeugung dieser Informationen erfordert einen weiteren zeitaufwendigen Nachverarbeitungs-Schritt.
  • Allgemein ausgedrückt ist es die Aufgabe der vorliegenden Erfindung, ein verbessertes Verfahren zum Simulieren einer elektronischen Schaltung auf einem Computer zu schaffen.
  • Es ist eine weitere Aufgabe der vorliegenden Erfindung, einen Simulator zu schaffen, der mehrere modulierte Träger und Harmonische simulieren kann, bei denen die Modulationsfrequenzen verglichen mit den Trägerfrequenzen klein sind.
  • Es ist eine weitere Aufgabe der vorliegenden Erfindung, einen Simulator zu schaffen, der nicht auf Schaltungsmodelle mit konzentrierten Elementen beschränkt ist.
  • Diese und weitere Aufgaben der vorliegenden Erfindung werden den Fachleuten aus der folgenden detaillierten Beschreibung der Erfindung mit den beigefügten Zeichnungen klar werden.
  • Zusammenfassung der Erfindung
  • Die vorliegende Erfindung kann als eine Kombination eines Harmonic-Balance-Simulators und eines Zeitbereichssimulators gesehen werden. Das Anregungssignal wird durch einen oder mehrere Träger dargestellt, die zeitunterschiedliche Modulationshüllkurven aufweisen. Der Simulator unterscheidet sich dahingehend von einem Harmonic-Balance-Simulator, als daß die Ströme, die von jedem der Unterprogramme der Vorrichtung geliefert werden, einen zusätzlichen Term bei jeder Trägerfrequenz umfassen, der die Zeitabhängigkeit der Modulationshüllkurve bei dieser Frequenz aufweist. Diese zusätzlichen Stromterme benötigen eine Zeitbereichslösung des Simulationsproblems. Dennoch werden die Zeitschritte nun durch die Zeitabweichung der Hüllkurve und nicht durch die Zeitabweichung des Trägers bestimmt. Als ein Ergebnis wird die Zahl von Zeitschritten, die bei der Simulation benötigt wird, stark reduziert. Die vorliegende Erfindung kann durch Modifizieren eines herkömmlichen Harmonic- Balance-Simulators implementiert werden. Die Modifikationen umfassen ein Hinzufügen eines Codes zu verschiedenen Vorrichtungsprogrammen, um den Stromterm entsprechend der Modulationshüllkurve zu liefern. Bei dem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung wird entweder ein Ladungsterm oder ein Stromterm, der von gegenwärtigen oder vergangenen Werten der Modulationshüllkurve abhängt, durch jedes Vorrichtungsprogramm erhalten. Die Summe der Ladungsterme bei jeder Trägerfrequenz wird dann differenziert, um die Summe der Hüllkurvenstromterme zu liefern.
  • Kurze Beschreibung der Zeichnungen
  • Fig. 1 ist ein Flußdiagramm der gesamten Zeitbereichsberechnung, die durch einen Simulator gemäß der vorliegenden Erfindung implementiert wird.
  • Fig. 2 ist ein detaillierteres Flußdiagramm für den Code zum Initialisieren der linearen Vorrichtungen.
  • Fig. 3 ist ein detaillierteres Flußdiagramm für den Code, der verwendet wird, um die Vorrichtungen, wie in Fig. 1 gezeigt, auszuwerten.
  • Detaillierte Beschreibung der Erfindung
  • Das Verfahren der vorliegenden Erfindung kann als ein Anwenden von Zeitbereichsverfahren gemeinsam mit der Frequenzbereich-Harmonic-Balance-Lösung gesehen werden. Die vorliegende Erfindung nimmt an, daß die Eingangsanregungssignalverläufe durch eine kleine Zahl von Trägern dargestellt werden können, die durch eine zeitvariierende Hüllkurve moduliert werden, deren Veränderungsgeschwindigkeit verglichen mit der der Trägersinuskurve klein ist. Wenn der Anregungssignalverlauf durch v(t) angegeben ist, gilt:
  • ν(t) = Real( Vk(t)ejωkt) (1)
  • Im Gegensatz zu der standardmäßigen Harmonic-Balance- Lösung, bei der jeder der Vk-Terme eine komplexe Konstante ist, die den Dauerzustandswert eines diskreten Tons darstellt, ersetzt die vorliegende Erfindung jeden dieser Terme durch eine komplexwertige Funktion der Zeit Vk(t), die ein beliebiges Spektrum um jeden der Träger darstellen kann. Dieses Spektrum kann zeitzeitige Signale mit ihrem kontinuierlichen Spektrum darstellen. Die vorliegende Erfindung kann auch periodische Signale mit ihren diskreten Spektrallinien modulieren. Wie weiter unten detaillierter erläutert werden wird, weist ein Simulator gemäß der vorliegenden Erfindung den wesentlichen Vorteil gegenüber Zeitbereichssimulatoren auf, daß die Zeitschrittgröße nur durch die Bandbreite der Modulationshüllkurve vorgeschrieben ist, und nicht durch eine Trägerfrequenz.
  • Wie oben erwähnt, werden Schaltungen, die simuliert werden, durch Knoten beschrieben, die verschiedene Schaltungselemente verbinden. Jedes Schaltungselement liefert einen Strom ansprechend auf Eingangsspannungen an den verschiedenen Knoten, mit denen das Schaltungselement verbunden ist, und vielleicht eine Historie dieser Eingangsspannungen. Die Modifikationen, die benötigt werden, um den Signalverlauf, der in Gleichung (1) angegeben ist, aufzunehmen, können durch ein Beschreibung der Veränderungen der Vorrichtungsströme relativ zu denen leichter verstanden werden, die bei Simulatoren basierend auf dem Harmonic-Balance-Ansatz geliefert werden.
  • Wie oben erwähnt, lösen Harmonic-Balance-Simulatoren ein System von Gleichungen bei jeder Harmonische-Frequenz für jeden Knoten in der Schaltung. So beschreibt, wenn es K Harmonische in dem Signalverlauf gibt, der Simulator jeden Knoten durch einen Satz von K Gleichungen, wobei jede Gleichung die Summe der Ströme bei einer der Harmonische- Frequenzen darstellt. Der Code, der jedes Element beschreibt, liefert den Beitrag des entsprechenden Elementes bei dieser Frequenz ansprechend auf eine Anforderung, die Spannungen an jedem Knoten liefert, mit dem das Schaltungselement verbunden ist. Wenn ein Newton-Raphson-Algorithmus verwendet werden soll, um die Lösung zu finden, muß jedes Unterprogramm auch die erste Ableitung des Stroms als eine Funktion der Knotenspannungen liefern.
  • Ähnlich benötigt die vorliegende Erfindung die Lösung eines Systems von Gleichungen, bei dem die Gleichungen, die jeden Knoten beschreiben, eine Gleichung für jede Frequenz umfassen. Der Code, der jedes Schaltungselement beschreibt, muß den Beitrag des Schaltungselements bei jeder Trägerfrequenz liefern. Zusätzlich muß der Code die ersten Ableitungen liefern, wenn ein Newton-Raphson-Algorithmus verwendet wird, um das System von Gleichungen zu lösen.
  • Für lineare und nichtlineare Widerstandselemente, die z. B. Diodennichtlinearitäten umfassen, bei denen der Strom eine algebraische Funktion der Spannung ist, umfassen die Gleichungen keine Zeitableitungen oder vergangene Historien. So sind die Implementierung des Ausgleichs und die der vorliegenden Erfindung des Codes, der derartige Vorrichtungen beschreibt, identisch. Das Programm, das das Element beschreibt, liefert folgenden Ausgang.
  • Ik = Fk(ν(t)), für i = 1, ... N (2)
  • wobei Fk(v) der Strom bei der Frequenz ωk ist, die durch die in Frage stehende Vorrichtung erzeugt wird. Die Ableitungen, die benötigt werden, um das System unter Verwendung eines Newton-Raphson-Algorithmus zu lösen, sind identisch mit denen, die bereits durch einen Harmonic-Balance- Simulator berechnet wurden, und werden dann aus dem Zeitbereichsableitungswellenverlauf
  • bestimmt, wobei der
  • Ausgangsstrom des Elements ansprechend auf die Spannung v(t) durch f(v(t)) gegeben ist.
  • Für lineare Kondensatoren müssen die Gleichungen, die bei einem herkömmlichen Harmonic-Balance-Simulator verwendet werden, modifiziert werden. Der Strom, der von einem Kondensator geliefert wird, ist durch folgende Gleichung gegeben:
  • Bei einem herkömmlichen Harmonic-Balance-Simulator liefert jedes Element einen Strom bei der k-ten Harmonischen, gleich jωkCVk. Bei einem Simulator gemäß der vorliegenden Erfindung ist der Strom, der durch den Code geliefert wird, der einen Kondensator für die k-te Harmonische beschreibt, durch folgende Gleichung gegeben:
  • Der erste Term ist identisch mit dem Harmonic-Balance- Dauerzustandsterm für die Trägeramplitude zu dem gegenwärtigen Zeitpunkt. Der zweite Term stellt den transienten Hüllkurvenstrom bei einer Frequenz k dar, der durch eine zeitlich variierende Veränderung der Hüllkurvenspannung bei der Frequenz k bewirkt wird. Dieser Ableitungsterm kann nun unter Verwendung der normalen diskretisierten Annäherung mit einer Schrittgröße berechnet werden, die nur durch die zweite Ableitung der Hüllkurvenspannung bei der Frequenz k beschränkt ist. So ist es offensichtlich, daß Schritte, die bezüglich der Hüllkurvenspannungsveränderung klein sind, das einzige sind, was benötigt wird. Die Ableitungen, die für den Newton-Raphson-Algorithmus benötigt werden, können annäherungsweise durch folgende Gleichung bestimmt werden:
  • wobei Δt die Schrittgröße des Zeitbereichs ist. Wiederum ist der erste Term derjenige, der durch ein herkömmliches Harmonic-Balance-System geliefert wird. Der zweite Term wird durch die vorliegende Erfindung hinzugefügt. Die Gleichung (5) implementiert eine numerische 2-Punkt- Differenzierungsformel. Es wird den Fachleuten ersichtlich sein, daß andere numerische Differenzierungsformeln verwendet werden können. Es wird jedoch angemerkt, daß ein Fehler bei der Differenzierung höchstens die Konvergenzgeschwindigkeit des Newton-Raphson-Algorithmus reduziert.
  • Das Hüllkurvenverfahren der vorliegenden Erfindung kann auch verwendet werden, um Vorrichtungen mit einer Antwort H(s) einer beliebigen Frequenz zu formen. Der genaue Ansatz des Formens einer derartigen Vorrichtung hängt von der Hüllkurvenbandbreite um jeden Träger und den Charakteristika der Antwort der Frequenz ab. Es wird eine Vorrichtung betrachtet, die durch eine Faltung geformt werden kann, d. h. durch:
  • i(t) = h(t) ν(t) (6)
  • Es kann verdeutlicht werden, daß der Strom, der an dem k- ten Träger durch eine derartige Vorrichtung geliefert wird, durch folgende Gleichung gegeben ist:
  • jk(t) = Vk(t) (h(t)e-jωkt) (7)
  • Es ist aus einer Fourier-Transformierten dieses Ausdrucks ersichtlich, daß die Frequenzantwort der Vorrichtung durch folgende Gleichung gegeben ist:
  • Ik(S) = Vk(S)·H(S - jωk) (8)
  • Dieser H(s - jωk)-Term ist die Frequenzantwort, die mittig um den k-ten Träger ist, und die im folgenden als Hk(s) bezeichnet wird. So wird das Problem auf die Darstellung reduziert, die für Hk(s) verwendet wird. Wenn Hk(s) relativ konstant über die Hüllkurvenbandbreite ist, kann sie als eine Konstante behandelt werden. Dann wird die Faltung eine Multiplizierung. Es wird angemerkt, daß jede Trägerfrequenz immer noch eine unterschiedliche Frequenzantwort aufweisen kann.
  • Für Fälle mit einer wesentlichen Abweichung der Frequenzantwort über die Hüllkurvenbandbreite können FFT-Verfahren verwendet werden, um ein FIR-Modell (FIR = Infinite Impulse Response) zu erzeugen, mit der Standardfaltungen auf eine analoge Weise durchgeführt werden können, wie dies bei einer Basisbandfaltung bei Systemen des Stands der Technik der Fall ist, wie z. B. dem HP 5154A High Frequency Transient Simulator von Hewlett Packard. Die Hauptunterschiede liegen darin, daß die Pulsantworten und-Signalverläufe nun komplexwertig und nicht nur reellwertig sind. Zusätzlich gibt es möglicherweise eine unterschiedliche Pulsantwort für jeder der Trägerfrequenzen. Eine weitere Alternative ist es, stabile, zu der Kurve passende Algorithmen zu verwenden, um ein IIR-Modell (IIR = Infinite Impulse Response) zu erzeugen. Dies entspricht einem Annähern von Hk(s) mit einem rationalen Polynom N(z)/D(z) anstelle einer Polynomserie P(z). Dieser Ansatz erfordert die Implementierung einer rekursiven Faltung in dem Simulator. In diesem Fall müssen vergangene Werte der Eingangs- und Ausgangswerte gespeichert werden und den verschiedenen Vorrichtungsunterprogrammen zur Verfügung gestellt werden.
  • Schließlich kann Hk(s) unter Verwendung eines existierenden Volle-Bandbreite-Pulsantwort-Generators geformt werden, um h(t) zu liefern. Ein Code für eine derartige Implementierung ist in einigen Simulatoren des Stands der Technik, wie z. B. dem Pulssimulator von HP, der oben erwähnt ist, verfügbar. Aus diesem h(t) können die unterschiedlichen hk(t)- Pulsantworten durch Mischen mit e-jωkt und durch ein folgendes ordnungsgemäßes Filtern und Dezimieren berechnet werden, um eine Anpassung an die Bandbreite und den Zeitschritt des Simulators zu schaffen.
  • Aus der obigen Erklärung geht hervor, daß ein Hüllkurvenschaltungssimulator gemäß der vorliegenden Erfindung den wesentlichen Vorteil gegenüber Zeitbereichssimulatoren aufweist, daß die Zeitschrittgröße nur durch die Bandbreite der Modulationshüllkurve und nicht durch eine Trägerfrequenz eingeschränkt ist. Es wird z. B. von einem 5GHz-Signal mit einer signifikanten dritten Harmonischen ausgegangen. Um dem grundlegenden Nyquist-Kriterium zu genügen, muß die Abtastfrequenz größer als 30GHz sein. Um eine angemessene Genauigkeit aus den Integrationsalgorithmen zu erhalten, ist eine Abtastfrequenz von 100GHz ein realistisches Minimum. Es wird nun davon ausgegangen, daß der Träger mit einer symbolischen Geschwindigkeit von 100KHz moduliert wird, und daß die Schaltung für 500 Symbole simuliert werden soll. Dies bedeutet, daß eine Gesamtsimulationszeit von 5 msek. Erwünscht wird. Die hohe Trägerfrequenz macht es jedoch nötig, daß die Zeitschrittgröße 10 ps oder kleiner sein muß. Als ein Ergebnis würde ein Simulator des Stands der Technik mehr als 500 Millionen Zeitpunkte benötigen. Im Gegensatz dazu würde der Hüllkurvensimulator der vorliegenden Erfindung vier Trägerfrequenzen aufweisen: eine Gleichfrequenz, die zugrundeliegende Frequenz von 5GHz und die zweite und die dritte Harmonische bei 10 bzw. 15GHz. Bei einem angenommenen doppelseitigen Spektrum von 200KHz liefert eine Abtastrate von 1MHz eine ausreichende Genauigkeit. So müssen nur 5000 Zeitpunkte berechnet werden, um die Zeitaufzeichnung der 5 msek zu erhalten.
  • Eine weitere Einschränkung von zeitbereichsbasierenden Simulatoren, wie z. B. Spice-artigen und Nitswit-artigen Simulatoren, besteht darin, daß die Genauigkeit eines numerischen Integrationsprogramms bei höheren Frequenzen abnimmt, und zwar relativ zu der niedrigen Frequenz oder DC- Genauigkeit. Ein Verwenden eines standardmäßigen, trapezförmigen Integrationsverfahrens zweiter Ordnung, nur um den Strom durch einen Kondensator bei einer gegebenen Trägerfrequenz zu bestimmen, macht es erforderlich, daß die Abtastrate 10 mal der Trägerfrequenz für 1 Prozent Genauigkeit und circa 32 mal die Trägerfrequenz für 0,1 Prozent Genauigkeit erfordert. Für Modulationsträgeranwendungen sollte die beste Genauigkeit bei der Trägerfreguenz, nicht für DC erzielt werden, da dort die Informationen gebündelt sind. Für diese Zeitbereichssimulatoren ist die Genauigkeit bei DC am besten und nimmt bei höheren Frequenzen ab.
  • Im Gegensatz dazu führt der Hüllkurvensimulator gemäß der vorliegenden Erfindung mehrere Integrationen durch, wobei jede um eine Trägerfrequenz zentriert ist. So wird die beste Genauigkeit genau bei jeder Trägerfrequenz erreicht, wobei jede Abnahme der Genauigkeit aufgrund der Zeitbereichsintegration nur auf die äußeren Modulationsfrequenzen um jeden Träger zutrifft. Der Hüllkurvenzeitschritt muß klein genug eingestellt werden, um die gewünschte Genauigkeit des Hüllkurvenspektrum beizubehalten, wobei aber die Genauigkeit an und sehr nahe an den tatsächlichen Trägern gleich der vollen Dauerzustandsgenauigkeit des zugrundeliegenden Harmonic-Balance-Simulators ist.
  • Ein weiterer Vorteil eines Hüllkurvenschaltungssimulators gemäß der vorliegenden Erfindung liegt in der unmittelbaren Verfügbarkeit der augenblicklichen Amplitude, Phase und I/Q-Informationen jedes Trägers. Diese Informationen können bei dem Simulator selbst verwendet werden, um effiziente Modelle von Gegenständen wie Größen-, Leistungs-, Phasen- oder Frequenzdetektoren zu erzeugen, oder sie können beim Anzeigen der gewünschten Ergebnisse für den Benutzer verwendet werden. Keine zusätzlichen, langen und fehleranfälligen Berechnungen werden benötigt, um den Zeitbereichssignalverlauf in Hüllenkurveninformationen umzuwandeln.
  • Ein Hüllkurvensimulator gemäß der vorliegenden Erfindung weist im wesentlichen alle Vorteile von Harmonic-Balance- Simulatoren auf. Frequenzbereichsmodelle sind effektiver und genauer in die Schaltungsgleichungen eingebaut. Wenn eine beliebige Frequenzantwort H(s) nicht wesentlich über die Modulationsbandbreite variiert, kann diese mittels einer einfachen Multiplizierung implementiert werden, was im Gegensatz zu der langen Faltung steht, die bei Zeitbereichssimulatoren benötigt wird. Dennoch kann die Antwort immer noch wesentlich unterschiedliche Werte bei jeder Trägerfrequenz aufweisen. Sogar in den Fällen, bei denen es eine Abweichung der Frequenzantwort von H(s) über die Modulationsbandbreite an einem bestimmten Träger gibt, sind die Faltungen, die für einen Hüllkurvensimulator gemäß der vorliegenden Erfindung benötigt werden, viel kürzer und schneller. Diese Faltungen, die bei der vorliegenden Erfindung benötigt sind, müssen nur die Frequenzantwort über eine relativ schmale Modulationsbandbreite darstellen, im Gegensatz zu den gesamten Bereich von DC bis zu der Maximalfrequenz, die bei Zeitbereichssimulatoren benötigt wird.
  • Ein Hüllkurvenschaltungssimulator gemäß der vorliegenden Erfindung teilt auch den Vorteil einer Harmonic-Balance- Simulation, daß die Lösung mit einer Dauerzustandslösung beginnen kann. Der Hüllkurvensimulator kann seine Simulation bei allen Trägern, Lokaloszillatoren, HF- und DC- Signalverläufen mit ihrem Dauerzustandswert starten. Es gibt keinen Bedarf, zu warten, bis die Schaltung einen Dauerzustand erreicht, wie dies bei den meisten Zeitbereichssimulatoren der Fall ist. Deshalb kann der Hüllkurvensimulator seine Simulation dessen beginnen, wie die Modulationshüllkurve sich mit der Zeit verändert, ohne darauf warten zu müssen, bis die Transienten verschwunden sind. Trotzdem weist die vorliegende Erfindung nicht die Einschränkung der Unfähigkeit eines Harmonic-Balance- Simulators auf, diese Anfangstransiente, falls erwünscht, zu simulieren. Die HF-, Lokaloszillatoren und sogar die DC- Quellen können zu einer Zeit t=0 eingeschaltet werden, so daß die gesamten Anfangstransienten beobachtet werden können. So teilt die vorliegende Erfindung die meisten Vorteile von sowohl Zeit- als auch Frequenzbereichssimulatoren.
  • Verglichen mit einer normalen Harmonic-Balance-Simulation benötigt der Hüllkurvenschaltungssimulator der vorliegenden Erfindung weniger Töne. Als ein Ergebnis sind die Matrizen, die invertiert werden müssen, wesentlich kleiner als diejenigen, die bei Harmonic-Balance-Simulatoren vorzufinden sind. Die Modulationsinformationen müssen nicht als separate Töne dargestellt werden, wie dies bei dem normalen Harmonic-Balance-System von Gleichungen der Fall ist, bei dem alle Frequenzkomponenten gleichzeitig gelöst werden müssen. Üblicherweise müssen nur die Träger-, Lokaloszillator-, HF- und IF-Frequenzen, gemeinsam mit den wesentlichen Intermodulationsfrequenzen und -harmonischen, in der Hüllkurvensimulation enthalten sein. Die Modulationsinformationen erscheinen typischerweise als zeitvariierender Basisbandsignalverlauf oder Hüllkurve.
  • Nach einer Erklärung der allgemeinen Weise, auf die ein Hüllkurvensimulator gemäß der vorliegenden Erfindung wirkt, folgt nun eine detailliertere Beschreibung der Implementierung der vorliegenden Erfindung. Um die folgende Erläuterung zu vereinfachen, wird sich diese Erläuterung auf die zusätzlichen Elemente konzentrieren, die bei einem herkömmlichen Harmonic-Balance-Simulator hinzugefügt oder verändert werden müssen, um die vorliegende Erfindung zu implementieren. Laien auf diesem Gebiet werden auf Kundert u. a., Steady-State Methods for Simulating Analog and Microwave Circuits, Kluwer Academic Publishers, 1990 verwiesen.
  • Bei dem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung müssen die einzelnen Vorrichtungen, die Kondensatoren aufweisen, den Term
  • nicht berechnen. Statt
  • dessen wird ein Ladungsvektor zusätzlich zu dem standardmäßigen Stromvektor verwendet. Die Kapazitätsvorrichtungen müssen nur ihren Beitrag zu der Ladung, CVk(tn), berechnen. Nachdem alle Vorrichtungen ihre Ladung und ihren Strom geladen haben, führt ein globales Programm die Differenzierung der Ladung durch. Dieser zusätzliche Strom wird dann zu dem Standardstromvektor hinzugefügt.
  • Für nichtlineare Kondensatoren kann gezeigt werden, daß folgende Gleichung gilt
  • So können die Programme, die eine Ladung in den Stromvektor laden, die Differenzierung durch ein Multiplizieren mit jωk durchführen. Diese Operation wird auch für den Harmonic- Balance-Abschnitt der Berechnung benötigt. So führen die in Frage stehenden Programme die Multiplizierung für den normalen Harmonic-Balance-Abschnitt durch und laden die Ladung in den Ladungsvektor, was, wie oben beschrieben wird, zu einem späteren Zeitpunkt differenziert und zu dem Stromvektor hinzugefügt wird. Ähnlich weist die Ableitung, die für die Newton-Raphson-Jakobi-Matrix benötigt wird, den standardmäßigen Harmonic-Balance-Abschnitt und zusätzlich nun auch den neuen Hüllkurvenabschnitt auf.
  • Es wird angemerkt, daß die obigen Gleichungen und Beispiele nur nichtlineare Ströme und Ladungen als Funktionen der Spannung beschreiben. Es können jedoch unter Verwendung der Modifizerte-Knotenanalyse-Struktur des Simulators nichtlineare Flüsse, Ladungen, Ströme und Spannungen, die Funktionen des Stroms oder der Spannung sind, mit den gleichen allgemeinen Gleichungen gestützt werden. Der Leser wird hier an Vlach u. a., COMPUTER METHODS FOR CIRCUIT ANALYSES AND DESIGN, Van Nostrand Reinhold, N.Y. 1983 zu einer detaillierteren Beschreibung von Analysen verwiesen.
  • Es wird nun Bezug auf Fig. 1 genommen, die ein Flußdiagramm der Gesamtzeitbereichsberechnung ist. Das Verfahren beginnt durch ein Initialisieren der linearen Vorrichtungen, wie bei 12 gezeigt ist. Diese Verfahren wird weiter unten Bezug nehmend auf Fig. 2 näher erläutert. Die anfängliche Lösung V(0) wird dann unter Verwendung herkömmlicher Harmonic- Balance-Verfahren berechnet, wie bei 13 gezeigt. Die anfängliche Lösung wird auch verwendet, um die "vergangene Historie" zu initialisieren, wie bei 14 gezeigt ist. Die Basiszeitschrittschleife ist bei 19 gezeigt. Für jeden Zeitschritt berechnet der Code entsprechend jeder Vorrichtung in der simulierten Schaltung seinen Strom I und den Beitrag zu der Jakobi-Matrix J, wobei [J] = [∂I/∂V] gilt, wie bei 15 gezeigt ist. Wenn die Lösung konvergiert, wird diese ausgegeben und die vergangene Historie aktualisiert, wie bei 17 gezeigt. Wenn die Lösung nicht konvergiert, wird ein neuer Satz von Spannungen für die Schaltungsknoten berechnet, wie bei 16 gezeigt ist, wobei die Vorrichtungen noch einmal ihre Ströme und Beiträge zu der Jakobi-Matrix berechnen.
  • Fig. 2 ist ein detaillierteres Flußdiagramm für den Code zum Initialisieren der linearen Vorrichtungen. Die Schleife, die bei 30 gezeigt ist, wird für jede Trägerfrequenz in der Array-Frequenz (k) durchgeführt. Wenn die Frequenzantwort um den Träger relativ konstant ist, wird Hk(f) mit dem Dauerzustandswert geformt, wie bei 31 gezeigt ist. Um zu bestimmen, ob Hk(f) ausreichend konstant ist, wird H bei einer Zahl von Frequenzen um die Trägerfrequenz abgetastet, wie bei 32 gezeigt ist.
  • Wenn die Antwort nicht konstant ist, fährt das Programm damit fort, ein FIR-Modell oder ein IIR-Modell für die Frequenzantwort zu finden. Die Wahl basiert auf dem Eingang des Schaltungsentwerfers. Alternativ kann das Programm beide Paßtypen probieren und denjenigen auswählen, der das beste Passen liefert. Das FIR-Modell verwendet einen inversen FFT, um Hk(f) zu formen, wie bei 33-34 gezeigt ist, während das IIR-Modell ein Kurvenpassen mit einem rationalen Polynom verwendet, wie bei 35-36 gezeigt ist. Das Programm prüft das Passen jedes Modells auf die Kriterien, die von dem Schaltungsentwerfer geliefert werden, und paßt die Ordnung des Modells an, bis das Modell zufriedenstellend paßt, wie bei 39 gezeigt. Wenn ein ausreichendes Passen für Hk(f) erzielt ist, werden die Werte gespeichert und die Frequenz auf die nächste Trägerfrequenz inkrementiert, wie bei 40 gezeigt ist.
  • Fig. 3 ist ein detaillierteres Flußdiagramm für den Code, der verwendet wird, um die Vorrichtungen auszuwerten, wie in Fig. 1 bei 15 gezeigt ist. Jede Vorrichtung ist durch ein Unterprogramm dargestellt, das drei Informationstypen für jede Trägerfrequenz liefert. Die ersten beiden Größen sind komplexwertige Skalare, die den Strom Ik bei der k-ten Trägerfrequenz und die Ladung Qk darstellen, die durch die Vorrichtung bei der k-ten Trägerfrequenz gespeichert wird. Für nichtkapazitive Vorrichtungen ist Qk gleich 0. Die dritte Größe ist der Beitrag zu der Jakobi-Matrix, Jij, die bei dem Newton-Raphson-Verfahren verwendet wird. Für lineare Vorrichtungen ist der Beitrag nur für das diagonale Element Jkk der Matrix. Für nichtlineare Vorrichtungen werden nichtdiagonale Terme allgemein durch den Vorrichtungscode zurückgeführt. Die Beiträge, die durch Widerstände, Kondensatoren und lineare Vorrichtungen geliefert werden, die eine konstante Frequenzabweichung über der Trägerhüllkurve aufweisen, sind jeweils bei 51-53 gezeigt. Da diese Beiträge oben detailliert erklärt wurden, werden sie hier nicht weiter erläutert.
  • Die Beiträge für lineare Vorrichtungen mit nichtkonstanten Antworten über die Trägerhüllkurve sind bei 54 gezeigt. Der Beitrag zu der Jakobi-Matrix ist der konstante Term von der Serienexpansion, die bei dem Formen der Vorrichtung bestimmt wird.
  • Für nichtlineare Vorrichtungen sind die Beiträge bei 55 gezeigt. Allgemein hängen die Beiträge von den spezifischen Charakteristika der Vorrichtung ab. Verfahren zum Berechnen des Stroms und der Ladung, die von einer Vorrichtung gespeichert werden, sind den Fachleuten bekannt und werden deshalb hier nicht weiter erläutert. Zu Zwecken der vorliegenden Erläuterung ist es ausreichend, anzumerken, daß das Unterprogramm den Strom an dem k-ten Träger, I(k), und die Ladung, die bei der k-ten Trägerfrequenz gespeichert ist, Q(k), liefert, wie bei 55 gezeigt. Der Beitrag zu der Jakobi-Matrix wird von den Ableitungen dieser Größen abhängen, wie bei 55 gezeigt ist.
  • Wenn alle Vorrichtungen, die mit einem bestimmten Knoten verbunden sind, ihre Beiträge für alle Trägerfrequenzen rückgeführt haben, werden die Ströme durch die Ableitung der Ladungen inkrementiert, die von jeder Vorrichtung summiert werden, wie bei 56 gezeigt. Es wird angemerkt, daß SQk, bei 56 gezeigt, Summen der Qk sind, die von jeder der Vorrichtungen, die mit dem Knoten verbunden ist, für den k- ten Träger geliefert wird. Ähnlich sind SIk die Summen der Ströme, die bei dem k-ten Träger durch jede Vorrichtung geliefert werden.
  • Die obige Erklärung hat Vorrichtungen hervorgehoben, die einen Strom als eine Funktion der Spannung liefern, wie z. B. Widerstände und Kondensatoren. Es wird für Fachleute aus der obigen Erläuterung ersichtlich sein, daß die Lehren der vorliegenden Erfindung auf Induktoren und andere Vorrichtungen, die eine Spannung als eine Funktion des Stroms liefern durch eine modifizierte Knotenanalyse ausgeweitet werden können. Da derartige Analysen in der Technik bekannt sind, wird keine detaillierte Beschreibung neuer Gleichungen, die zusätzlich zu denen gelöst werden müssen, die oben beschrieben sind, gegeben.
  • Während die oben beschriebenen Ausführungsbeispiele der vorliegenden Erfindung Newton-Raphson-Verfahren zum Lösen der Knotengleichungen verwenden, wird es für Fachleute offensichtlich sein, daß andere Verfahren zum Lösen der Knotengleichungen verwendet werden können, ohne sich von den Lehren der vorliegenden Erfindung zu entfernen. Die Knotengleichungen können z. B. unter Verwendung von "Temper"- Verfahren gelöst werden, die keine Berechnung der Ableitungen der Ströme bezüglich der unterschiedlichen Knotenspannungen benötigen.
  • Verschiedene Modifikationen der vorliegenden Erfindung werden den Fachleuten aus der vorhergehenden Beschreibung und hinbeigefügten Zeichnungen ersichtlich sein. Folglich soll die vorliegende Erfindung nur durch den Schutzbereich der folgenden Ansprüche beschränkt sein.

Claims (5)

1. Ein Verfahren zum Simulieren der Antwort einer Schaltung auf ein Anregungssignal unter Verwendung eines digitalen Computers, wobei die Schaltung durch eine Mehrzahl von Knoten dargestellt wird, wobei jeder Knoten mit einer oder mehreren Vorrichtungen verbunden ist, wobei jede Vorrichtung einem Computerprogramm entspricht, das den Strom liefert, der von der entsprechenden Vorrichtung erzeugt wird, wenn die Knoten bei einem Satz von Potentialen gehalten werden, die an das Programm geliefert werden, gekennzeichnet durch den Schritt des Annäherns des Anregungssignals v(t) durch folgende Gleichung:
ν(t) = Real( Vk(t)ejωkt)
wobei Vk(t) eine zeitveränderliche Spannung ist und K ≥ 0.
2. Das Verfahren gemäß Anspruch 1, bei dem das Computerprogramm, das einem Kondensator mit einer Kapazität C entspricht, K Stromwerte ansprechend auf den Satz von Knotenpotentialen liefert, wobei der k-te Strom durch folgende Gleichung gegeben ist:
3. Das Verfahren gemäß Anspruch 1, bei dem das Computerprogramm, das einem Kondensator mit einer Kapazität C entspricht, K Stromwerte ansprechend auf den Satz von Knotenpotentialen liefert, wobei der k-te Strom durch folgende Gleichung gegeben ist:
Ik = jωkCVk(t)
wobei das Computerprogramm ferner die K Ladungswerte liefert, wobei der k-te Ladungswert durch folgende Gleichung gegeben ist:
Qk = CVk(t)
und wobei das Verfahren ferner die Schritte des Summierens der Qk-Werte, die durch die Computerprogramme geliefert werden, um eine Gesamtladung zu erhalten, die jedem Wert von K entspricht, sowie des Berechnens einer Annäherung der Veränderungsrate der gesamten Ladung mit der Zeit aufweist.
4. Das Verfahren gemäß Anspruch 1, bei dem das Computerprogramm einen ersten und einen zweiten Strom liefert, wenn das Verfahren die Operation der Schaltung zur Zeit T simuliert, wobei der erste Strom dem Strom entspricht, der von der entsprechenden Vorrichtung ausgegeben wird, wenn die Schaltung mit einem Dauerzustandsanregungssignal verbunden ist, das eine Amplitude aufweist, die durch folgende Gleichung gegeben ist:
ν(t) = Real( Vk(T)ejωkt)
und wobei der zweite Strom eine Zeitabhängigkeit aufweist, die durch Vk(t), für k = 0 bis K, bestimmt wird.
5. Das Verfahren gemäß Anspruch 1, bei dem eine der Vorrichtungen eine lineare Faltungsvorrichtung ist, wobei das Verfahren ferner den Schritt des Annäherns der Antwort der linearen Faltungsvorrichtung an entweder eine finite Pulsantwort oder eine infinite Pulsantwort aufweist.
DE69616416T 1995-05-12 1996-03-27 Verfahren zur Simulation einer Schaltung Expired - Lifetime DE69616416T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/440,204 US5588142A (en) 1995-05-12 1995-05-12 Method for simulating a circuit

Publications (2)

Publication Number Publication Date
DE69616416D1 DE69616416D1 (de) 2001-12-06
DE69616416T2 true DE69616416T2 (de) 2002-06-06

Family

ID=23747862

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69616416T Expired - Lifetime DE69616416T2 (de) 1995-05-12 1996-03-27 Verfahren zur Simulation einer Schaltung

Country Status (4)

Country Link
US (1) US5588142A (de)
EP (1) EP0742526B1 (de)
JP (1) JP3894375B2 (de)
DE (1) DE69616416T2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10343346A1 (de) * 2003-09-12 2005-04-28 Infineon Technologies Ag Verfahren zum Prüfen einer elektrischen Schaltung

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5838949A (en) * 1995-12-28 1998-11-17 Design Acceleration Inc. System and method for execution-sequenced processing of electronic design simulation results
US6151698A (en) * 1996-04-30 2000-11-21 Cadence Design Systems, Inc. Method for determining the steady state behavior of a circuit using an iterative technique
CN1043256C (zh) * 1996-11-05 1999-05-05 中国科学院物理研究所 一种有序排列的碳纳米管及其制备方法和专用装置
US5808915A (en) * 1996-11-08 1998-09-15 Hewlett-Packard Company Method for reducing the memory required to simulating a circuit on a digital computer
US5946211A (en) * 1997-02-28 1999-08-31 The Whitaker Corporation Method for manufacturing a circuit on a circuit substrate
US6367064B1 (en) 1998-05-22 2002-04-02 Micron Technology, Inc. Verification of sensitivity list integrity in a hardware description language file
US6237007B1 (en) 1998-07-02 2001-05-22 Micron Technology, Inc. Verification of port list integrity in a hardware description language file
US6154716A (en) * 1998-07-29 2000-11-28 Lucent Technologies - Inc. System and method for simulating electronic circuits
US6195623B1 (en) 1998-09-15 2001-02-27 Lucent Technologies Inc. Time-frequency method and apparatus for simulating the initial transient response of quartz oscillators
US7493240B1 (en) * 2000-05-15 2009-02-17 Cadence Design Systems, Inc. Method and apparatus for simulating quasi-periodic circuit operating conditions using a mixed frequency/time algorithm
US7085700B2 (en) * 2001-06-20 2006-08-01 Cadence Design Systems, Inc. Method for debugging of analog and mixed-signal behavioral models during simulation
US7038468B2 (en) * 2003-06-11 2006-05-02 Jan Verspecht Method and a test setup for measuring large-signal S-parameters that include the coefficients relating to the conjugate of the incident waves
US7299428B2 (en) * 2004-02-06 2007-11-20 Cadence Design Systems, Inc Model stamping matrix check technique in circuit simulator
US7403884B2 (en) * 2004-06-08 2008-07-22 International Business Machines Corporation Transient simulation using adaptive piecewise constant model
US7325210B2 (en) * 2005-03-10 2008-01-29 International Business Machines Corporation Hybrid linear wire model approach to tuning transistor widths of circuits with RC interconnect
US8478573B2 (en) * 2005-06-23 2013-07-02 Synopsys, Inc. Modeling circuit cells for waveform propagation
US8200467B1 (en) * 2007-05-31 2012-06-12 Cadence Design Systems, Inc. Adaptive solver for cyclic behavior of a circuit
FR2946166A1 (fr) * 2009-05-29 2010-12-03 Inst Nat Rech Inf Automat Simulateur de circuit electrique ameliore
US9002692B2 (en) * 2012-03-13 2015-04-07 Synopsys, Inc. Electronic circuit simulation method with adaptive iteration
JP6077476B2 (ja) * 2014-02-05 2017-02-08 日本電信電話株式会社 光デバイスシミュレーション方法
US10423744B1 (en) * 2015-01-28 2019-09-24 Cadence Design Systems, Inc. Reduced resource harmonic balance circuit simulations
CN113094887B (zh) * 2021-03-31 2024-05-03 清华大学 移频电磁暂态仿真的优化方法、装置和电子设备

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2578668B1 (fr) * 1985-03-08 1989-06-02 Hennion Bernard Systeme de simulation d'un circuit electronique
US4918643A (en) * 1988-06-21 1990-04-17 At&T Bell Laboratories Method and apparatus for substantially improving the throughput of circuit simulators
JP2765888B2 (ja) * 1988-12-02 1998-06-18 株式会社日立製作所 プログラム生成方法および実行方法
US5025402A (en) * 1989-04-07 1991-06-18 Northern Telecom Limited Method of transient simulation of transmission line networks using a circuit simulator
US5233628A (en) * 1991-05-29 1993-08-03 Virginia Polytechnic Institute And State University Computer-based bit error simulation for digital wireless communications
US5467291A (en) * 1991-09-09 1995-11-14 Hewlett-Packard Company Measurement-based system for modeling and simulation of active semiconductor devices over an extended operating frequency range
US5349539A (en) * 1991-10-28 1994-09-20 Zeelan Technology, Inc. Behavioral model parameter extractor
US5335191A (en) * 1992-03-27 1994-08-02 Cadence Design Systems, Inc. Method and means for communication between simulation engine and component models in a circuit simulator
US5379231A (en) * 1992-05-29 1995-01-03 University Of Texas System Method and apparatus for simulating a microelectric interconnect circuit
US5369594A (en) * 1992-06-18 1994-11-29 International Business Machines Corporation Conjugate gradient method in computer-aided circuit design
US5469366A (en) * 1993-09-20 1995-11-21 Lsi Logic Corporation Method and apparatus for determining the performance of nets of an integrated circuit design on a semiconductor design automation system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10343346A1 (de) * 2003-09-12 2005-04-28 Infineon Technologies Ag Verfahren zum Prüfen einer elektrischen Schaltung
US7313498B2 (en) 2003-09-12 2007-12-25 Infineon Technologies Ag Device and method for testing an electrical circuit
DE10343346B4 (de) * 2003-09-12 2011-01-27 Qimonda Ag Verfahren zum Prüfen einer elektrischen Schaltung und Einrichtung zur Durchführung des Verfahrens

Also Published As

Publication number Publication date
JPH0916660A (ja) 1997-01-17
JP3894375B2 (ja) 2007-03-22
DE69616416D1 (de) 2001-12-06
EP0742526B1 (de) 2001-10-31
US5588142A (en) 1996-12-24
EP0742526A1 (de) 1996-11-13

Similar Documents

Publication Publication Date Title
DE69616416T2 (de) Verfahren zur Simulation einer Schaltung
Gilmore et al. Nonlinear circuit analysis using the method of harmonic balance—A review of the art. Part I. Introductory concepts
Hinich Testing for Gaussianity and linearity of a stationary time series
DE69230551T2 (de) Verfahren und Gerät zur Erzeugung von Korrektionssignalen zur Bildung von analogen Signalen mit niedriger Verzerrung
Okumura et al. An efficient small signal frequency analysis method of nonlinear circuits with two frequency excitations
US5394346A (en) Simulation of an electronic system including analog and digital circuitry using high level macro models
US5629845A (en) Parallel computation of the response of a physical system
DE19702600A1 (de) Elektrische Analyse integrierter Schaltungen
DE102004036813A1 (de) Verfahren zum Erzeugen eines Schaltungsmodells
EP0855663B1 (de) Effiziente integrierte Schaltung
DE2152687B2 (de) Verfahren und Einrichtung zum Erkennen einer vorbestimmten Frequenz in einem Frequenzgemisch
EP1062604A1 (de) Verfahren und vorrichtung zur ermittlung einer störung eines technischen systems
DE60021888T2 (de) Fehlergrenzenmodell zur identifizierung von stochastischen modellen fuer einen steuerungsentwurf
DE19602125C2 (de) Schaltungssimulationsverfahren zur rechnergestützten Bestimmung des Einschwingverhaltens einer Quarzresonatorschaltung
DE102012016610A1 (de) Echtzeit-Schaltungssimulation
Nam et al. Utilization of digital polyspectral analysis to estimate transfer functions of cubically nonlinear systems with nonGaussian inputs
EP0481117A1 (de) Verfahren zur Beschleunigung der Simulation beim rechnergestützten Entwurf elektronischer Schaltungen und Systeme
DE60318141T2 (de) Modellierung einer elektronischen Vorrichtung
DE19701067B4 (de) Verfahren und Schaltungsanordnung zur Frequenzvervielfachung
DE2220416A1 (de) Anordnung zum digitalen steuern einer vibrationspruefeinrichtung
Franklin Difference methods for stochastic ordinary differential equations
Yang et al. Efficient finite-difference method for quasi-periodic steady-state and small signal analyses
EP1034494B1 (de) Verfahren und vorrichtung zur rechnergestützten ermittlung eines anschwingbereichs einer elektrischen schaltung
DE102004014178B4 (de) Rechnergestütztes, automatisiertes Verfahren zur Verifikation analoger Schaltungen
EP1212691B1 (de) Rechnergestütztes verfahren zur parallelen berechnung des arbeitspunktes elektrischer schaltungen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: AGILENT TECHNOLOGIES, INC. (N.D.GES.D. STAATES, US