专利摘要:
Verfahren und Halbleiterchip zum Emulieren einer integrierten Schaltung, insbesondere einer programmgesteuerten Einrichtung, mittels einer auf demselben Halbleiterchip der integrierten Schaltung angeordneten Emulationsschaltung, welche einen Trace-Speicher aufweist und welche über eine interne Schnittstelle mit der zu emulierenden integrierten Schaltung gekoppelt ist, mit den folgende Verfahrensschritte: Emulieren der integrierten Schaltung unter Verwendung der Emulationsschaltung, fortwährendes Abspeichern der während der Emulation gewonnenen Emulationsergebnisse in den Trace-Speicher solange, bis der Trace-Speicher voll ist; Unterbrechen der Emulation; Auslesen der Emulationsergebnisse aus dem Trace-Speicher; Fortsetzen der Emulation der integrierten Schaltung.Method and semiconductor chip for emulating an integrated circuit, in particular a program-controlled device, by means of an emulation circuit arranged on the same semiconductor chip of the integrated circuit, which has a trace memory and which is coupled to the integrated circuit to be emulated via an internal interface, with the following method steps By emulating the integrated circuit using the emulation circuit, continuously storing the emulation results obtained during the emulation into the trace memory until the trace memory is full; Interrupting the emulation; Reading the emulation results from the trace memory; Continue the emulation of the integrated circuit.
公开号:DE102004008499A1
申请号:DE200410008499
申请日:2004-02-20
公开日:2005-09-15
发明作者:Albrecht Mayer
申请人:Infineon Technologies AG;
IPC主号:G06F9-455
专利说明:
[0001] DieErfindung betrifft ein Verfahren zum Emulieren einer integriertenSchaltung, insbesondere einer programmgesteuerten Einrichtung, sowieein Halbleiterchip mit einer solchen integrierten Schaltung.TheThe invention relates to a method for emulating an integratedCircuit, in particular a program-controlled device, as wella semiconductor chip with such an integrated circuit.
[0002] Derartigeintegrierte Schaltungen können beispielsweiseeine programmgesteuerte Einrichtung, zum Beispiel einem Mikroprozessor,Mikrokontroller, Signalprozessor oder dergleichen, enthalten. DerAufbau solcher programmgesteuerter Einrichtungen ist seit vielenJahren in unzähligenAusführungsformenvielfach bekannt, so dass nachfolgend darauf nicht näher eingegangenwird.suchIntegrated circuits can, for examplea program-controlled device, for example a microprocessor,Microcontroller, signal processor or the like included. Of theConstruction of such programmatic devices has been for manyYears in countlessembodimentswidely known, so that subsequently not discussedbecomes.
[0003] Mitder zunehmenden Komplexitätsolcher integrierter Schaltungen sowie mit der immer höheren Geschwindigkeit,mit der diese betrieben werden, kommt der Überprüfung der ordnungsgemäßen Funktiondieser integrierten Schaltungen eine immer größere Bedeutung zu. Ein bekanntesProblem von programmgesteuerten Einrichtungen besteht darin, dassderen ordnungsgemäße Funktionnur sehr schwer und mit relativ großem Aufwand überprüfbar ist,so dass in der programmgesteuerten Einrichtung auftretende Fehlerhäufignicht ohne weiteres lokalisierbar und/oder behebbar sind.Withthe increasing complexitysuch integrated circuits as well as with the ever-increasing speed,with which these are operated comes the verification of the proper functionThese integrated circuits are becoming increasingly important. A well-knownProblem of programmable devices is thattheir proper functioningvery difficult and verifiable with relatively great effort,such that errors occurring in the program-controlled deviceoftenare not readily locatable and / or recoverable.
[0004] Für besonderskomplexe integrierte Schaltungen wurden so genannte Emulatoren entwickelt, mitwelchen sich währenddes normalen Betriebs der integrierten Schaltung interne Zustände undAbläufe, beispielsweiseRegisterinhalte, Speicherinhalte, über interne/externe Leitungen übertrageneAdressen, Daten und Steuersignale, etc., beobachten und entsprechendder gewünschtenKonfiguration auch verändernlassen. Bei der Emulation einer integrierten Schaltung wird dieseim Allgemeinen aus dem diese enthaltenen System entfernt und durcheine spezielle Schaltung ersetzt, wobei diese spezielle Schaltung diezu testende integrierte Schaltung selbst oder eine besondere Versionder integrierten Schaltung, eine so genannte Bond-Out-Version, welchezusätzliche Anschlüsse zurBeobachtung interner Zuständeoder Vorgängeaufweist, enthält.For specialComplex integrated circuits have been developed using so-called emulatorswhich are duringnormal operation of the integrated circuit internal states andProcedures, for exampleRegister contents, memory contents, transmitted via internal / external linesObserve addresses, data and control signals, etc., and accordinglythe desiredChange configuration as wellto let. When emulating an integrated circuit, this becomesgenerally removed from the system it contains and throughreplaced a special circuit, this special circuit theto be tested integrated circuit itself or a special versionthe integrated circuit, a so-called bond-out version, whichadditional connections toObservation of internal statesor operationscontains.
[0005] Einanderer Ansatz ist es Systeme zu simulieren. In Simulationsmodellenlassen sich sehr detailliert alle internen Zustände (Busse, Signale, Registerinhalte)beobachten, ohne das damit eine Erhöhung Systemkosten einhergeht.Ein weiterer Vorteil der Simulation ist, dass sie auch schon vorder Verfügbarkeitvon Systemkomponenten durchgeführt werdenkann und dass verschiedene Systemauslegungen kostengünstig ausprobiertwerden können.OneAnother approach is to simulate systems. In simulation modelscan be very detailed all internal states (buses, signals, register contents)without any increase in system costs.Another advantage of the simulation is that they are already beforethe availabilitybe performed by system componentscan and tried out that different system designs cost-effectivelycan be.
[0006] Voraussetzungfür eineSystemsimulation ist offensichtlich das Vorhandensein von Modellenfür alleSystemkomponenten und eine akzeptable Simulationsgeschwindigkeitdes Gesamtmodells.requirementfor oneSystem simulation is obviously the presence of modelsfor allSystem components and an acceptable simulation speedof the overall model.
[0007] EinProblem bei der Simulation moderner integrierter Schaltungen bestehtdarin, dass die Komplexitätmoderner integrierter Schaltungen sehr viel schneller steigt, alsdie Geschwindigkeit der vorhandenen Simulationsrechner. Die exakteSimulation von integrierten Schaltungen bzw. der entsprechendenGesamtsysteme erfordert die Einbindung von möglichst zyklengenauer Modelledieser integrierten Schaltung bzw. der entsprechenden Systeme. Im Verhältnis zuder Komplexitätder integrierten Schaltungen werden diese Modelle allerdings immerlangsamer und lassen deshalb eine ausreichende Simulationstiefe,d. h. wie lange füreine Simulation gebraucht wird, um ausreichend nachvollziehbareErgebnisse zu erhalten, fürdie integrierte Schaltung bzw. das entsprechende System nicht mehrzu.OneProblem exists in the simulation of modern integrated circuitsin that complexitymodern integrated circuits is rising much faster thanthe speed of the existing simulation computer. The exact oneSimulation of integrated circuits or the correspondingEntire systems require the integration of models that are as accurate as possible to the cyclethis integrated circuit or the corresponding systems. In relation tothe complexityHowever, these models are always the integrated circuitsslower and therefore leave a sufficient depth of simulation,d. H. how long fora simulation is needed to be sufficiently traceableTo get results forthe integrated circuit or the corresponding system no longerto.
[0008] Inder US 5,748,875 sowiein der US 6,202,044B1 sind jeweils Vorrichtungen zur Simulation einer integriertenSchaltung beschrieben. Dort sind so genannte Hardware-Adapter für die E mulationbzw. Simulation einer integrierten Schaltung, die zum Beispiel einFPGA-Schaltung oder eine programmgesteuerte Einrichtung enthaltenkann, vorgesehen. Mittels eines Hardware-Adapters lässt sich eineexterne Emulation der integrierten Schaltung realisieren, wobeiein hier beliebig wählbarerDetaillierungsgrad fürdie Beobachtung der integrierten Schaltung wählbar ist. Die Emulation erfolgthier durch Anlegen von Eingangssignalen an die zu emulierende integrierteSchaltung sowie durch Anlegen eines Taktsignals. Die in der integriertenSchaltung dadurch erzeugten Ausgangssignale werden ausgelesen undausgewertet.In the US 5,748,875 as well as in the US 6,202,044 B1 In each case devices for simulating an integrated circuit are described. There are so-called hardware adapter for E mulation or simulation of an integrated circuit, which may include, for example, a FPGA circuit or a program-controlled device is provided. By means of a hardware adapter, an external emulation of the integrated circuit can be realized, whereby a degree of detail which can be selected here as desired for the observation of the integrated circuit can be selected. The emulation takes place here by applying input signals to the integrated circuit to be emulated and by applying a clock signal. The output signals generated thereby in the integrated circuit are read out and evaluated.
[0009] DasAufsetzen des Hardware-Adapters auf die zu emulierende integrierteSchaltung zum Zwecke der Emulation hat allerdings den grundsätzlichen Nachteil,dass sich die zu emulierende integrierte Schaltung praktisch wieeine "Blackbox" verhält. Diesedie integrierte Schaltung repräsentierendeBlackbox enthältallerdings je nach Komplexitäteine Vielzahl von Bauelementen, Schaltungsteilen und Funktionseinheitensowie eine mehr oder weniger komplexe Software. Der Inhalt der erwähnten Blackboxbzw. die einzelnen Zuständesind füreinen externen Beobachter, also für den Hardware-Adapter, nichtbekannt und könnendaher aus den Emulationsergebnissen auch nicht abgeleitet werden.ThePlacing the hardware adapter on the integrated to be emulatedCircuit for the purpose of emulation, however, has the fundamental disadvantagethat the integrated circuit to be emulated practically likea "black box" behaves. Theserepresenting the integrated circuitBlackbox containshowever, depending on the complexitya variety of components, circuit parts and functional unitsas well as a more or less complex software. The content of the mentioned black boxor the individual statesare foran external observer, so for the hardware adapter, notknown and cantherefore can not be derived from the emulation results.
[0010] Dervorliegenden Erfindung liegt daher die Aufgabe zugrunde, eine möglichsteinfache und zuverlässigeMöglichkeitzur Emulation einer integrierten Schaltung bereitzustellen.The present invention is therefore based on the object, a possible simple and reliable way to emulate an integrated to provide the circuit.
[0011] DieseAufgabe wird erfindungsgemäß durch einVerfahren mit den Merkmalen des Patentanspruchs 1 sowie durch einenHalbleiterchip mit den Merkmalen des Patentanspruchs 11 gelöst.TheseThe object is achieved by aMethod with the features of claim 1 and by aSemiconductor chip with the features of claim 11 solved.
[0012] Demgemäß ist vorgesehen: – EinVerfahren und Halbleiterchip zum Emulieren einer integrierten Schaltung,insbesondere einer programmgesteuer ten Einrichtung, mittels einer aufdem selben Halbleiterchip der integrierten Schaltung angeordnetenEmulationsschaltung, welche einen Trace-Speicher aufweist und welche über eineinterne Schnittstelle mit der zu emulierenden integrierten Schaltunggekoppelt ist, mit den Verfahrensschritten: Emulieren der integriertenSchaltung unter Verwendung der Emulationsschaltung, FortwährendesAbspeichern der währendder Emulation gewonnenen Emulationsergebnisse in den Trace-Speichersolange, bis der Trace-Speicher voll ist; Unterbrechen der Emulation;Auslesen der Emulationsergebnisse aus dem Trace-Speicher; Fortsetzender Emulation der integrierten Schaltung. (Patentanspruch 1) – EinHalbleiterchip, mit einer integrierten Schaltung, insbesondere miteiner programmgesteuerten Einrichtung, mit einer integrierten Emulationsschaltung,welche eine Trace-Logikschaltungzum Emulieren der integrierten Schaltung sowie einen Trace-Speicherzum Abspeichern der bei der Emulation der integrierten Schaltungermittelten Emulationsergebnisse aufweist, mit einer interne Schnittstellezur Ankopplung der Emulationsschaltung an die integrierte Schaltung,mit einer externen Schnittstelle, über die die integrierte Schaltungund die Emulationsschaltung mit einem Taktsignal versorgbar sindund überdie der Trace-Speicherauslesbar ist. (Patentanspruch 11) Accordingly, it is provided: A method and semiconductor chip for emulating an integrated circuit, in particular a program-controlled device, by means of an emulation circuit arranged on the same semiconductor chip of the integrated circuit, which has a trace memory and which is coupled to the integrated circuit to be emulated via an internal interface, comprising the steps of: emulating the integrated circuit using the emulation circuit, continuously storing the emulation results obtained during the emulation into the trace memory until the trace memory is full; Interrupting the emulation; Reading the emulation results from the trace memory; Continue the emulation of the integrated circuit. (Claim 1) A semiconductor chip, comprising an integrated circuit, in particular a program-controlled device, with an integrated emulation circuit, which has a trace logic circuit for emulating the integrated circuit and a trace memory for storing the emulation results determined during the emulation of the integrated circuit, with a internal interface for coupling the emulation circuit to the integrated circuit, with an external interface, via which the integrated circuit and the emulation circuit can be supplied with a clock signal and via which the trace memory can be read out. (Claim 11)
[0013] Erfindungsgemäß ist dieintegrierte Schaltung mit einer auf demselben Halbleiterchip derintegrierten Schaltung integrierten Emulationsschaltung ausgestattet.Die Emulationsschaltung weist zum einen eine Trace-Logik-Schaltungauf, die übereine interne Schnittstelle mit der integrierten Schaltung gekoppeltist und überdie somit eine Emulation der integrierten Schaltung erfolgen kann.Die Emulationsschaltung weist ferner einen Trace-Speicher auf, in demdie Emulationsergebnisse abspeicherbar sind. Durch die Emulationsschaltungkann so entsprechend der Programmierung und Konfiguration der integriertenSchaltung der interne Programmfluss und alle Bustransaktionen innerhalbder integrierten Schaltung übermehrere tausend bis hunderttausend Taktzyklen beobachtet werden.Dies hängtvornehmlich davon ab, wie groß derTrace-Speicher ausgestaltetist. Indem somit jeweils einzelne Zustände der integrierten Schaltungauslesbar sind, verhältsich die integrierte Schaltung beim Emulieren nicht mehr wie eineeingangs erwähnte "Blackbox", sondern eher wieeine "Whitebox". Indem nämlich beiAnlegen eines Eingangssignals und eines Taktsignals für die Emulationjeweils zyklengenau einzelne Zustände der integrierten Schaltunggewonnen werden, lassen sich daraus gezielte und nachvollziehbareRückschlüsse aufdie integrierte Schaltung selbst und somit auf gegebenenfalls vorhandeneFehler in der integrierten Schaltung ziehen. Falls die integrierte Schaltungeine programmgesteuerte Einrichtung enthält, lässt sich die darauf ablaufendeSoftware insbesondere auch beobachten und Fehler analysieren.According to the inventionintegrated circuit with one on the same semiconductor chipintegrated circuit integrated emulation circuit equipped.On the one hand, the emulation circuit has a trace logic circuiton that overan internal interface coupled to the integrated circuitis and aboutthus an emulation of the integrated circuit can be done.The emulation circuit further comprises a trace memory in whichthe emulation results can be stored. Through the emulation circuitcan be so according to the programming and configuration of the integratedCircuit of internal program flow and all bus transactions withinthe integrated circuit overseveral thousand to one hundred thousand clock cycles are observed.This dependsmainly on how big theTrace memory designedis. By thus each individual states of the integrated circuitare readable, behavesthe integrated circuit no longer emulates when emulatinginitially mentioned "black box", but more likea "whitebox". By namely atApply an input signal and a clock signal for the emulationin each case individual individual states of the integrated circuit, corresponding to the cyclecan be obtained from it, purposeful and comprehensibleConclusions onthe integrated circuit itself and thus possibly existingDraw errors in the integrated circuit. If the integrated circuitcontains a program-controlled device, the running on itWatch software in particular and analyze errors.
[0014] Nacheiner vorgegebenen Zeit, die abhängt vonder Speichergröße des Trace-Speichers,ist dieser voll und muss ausgelesen werden. Eine Randbedingung beimAuslesen des Trace-Speichersbesteht nun darin, dass in dieser Phase der Zustand der integriertenSchaltung bzw. der diese integrierte Schaltung emulierenden Trace-Logikschaltungnicht verändertwerden darf. Aus diesem Grunde wird erfindungsgemäß die Emulationangehalten, sobald der Trace-Speicher voll ist. Anschließend, d.h. nach dem Auslesen, kann der Trace-Speicher über eine externe Schnittstellewieder ausgelesen werden. Nachdem der Trace-Speicher ausgelesenwurde, wird die Emulation fortgesetzt, beispielsweise bei dem letzten Zustandvor dem Unterbrechen bzw. Anhalten der Emulation.Toa given time, which depends onthe memory size of the trace memory,this is full and must be read out. A constraint on theReading out the trace memoryis now that at this stage the state of the integratedCircuit or the trace circuit emulating this integrated circuitnot changedmay be. For this reason, according to the invention, the emulationstopped as soon as the trace memory is full. Subsequently, d.H. after reading out, the trace memory can be accessed via an external interfacebe read out again. After reading the trace memorywhen the emulation is continued, for example at the last statebefore interrupting or stopping the emulation.
[0015] Dasvorgeschlagene Verfahren hat also als notwendige Bedingung, dassder Ablauf fürdas Gesamtsystem zu beliebigen Zeitpunkten angehalten und danachwieder fortgesetzt werden kann. Das ist für simulierte Systeme immerder Fall, kann aber auch fürmit FPGAs oder Hardwarebeschleunigern emulierte Systeme oder hybrideSysteme, die teilweise die realen Hardwarekomponenten enthalten,erreicht werden.Theproposed method has as a necessary condition thatthe expiration forthe entire system stopped at any time and aftercan be continued again. This is always the case for simulated systemsthe case, but also forSystems emulated with FPGAs or hardware accelerators or hybridSystems that partly contain the real hardware components,be achieved.
[0016] Mittelsdes erfindungsgemäßen Verfahrens bzw.der erfindungsgemäßen Anordnunglässt sich aufsehr elegante, jedoch nichts desto Trotz sehr zuverlässige Artund Weise diese integrierte Schaltung emulieren, indem einzelneZuständeder integrierten Schaltung auslesbar sind. Aus diesen ausgelesenen Zuständen lassensich somit Rückschlüsse aufeinzelne Schaltungselemente, Schaltungsteile, Schaltungsmodule undauch Programmelemente ziehen.throughof the method orthe inventive arrangementlets upvery elegant, but nevertheless defiance very reliable wayand emulate this integrated circuit by adding individual onesconditionsthe integrated circuit are readable. Let out of these read statesthus conclusions onindividual circuit elements, circuit parts, circuit modules andalso draw program elements.
[0017] Derbesondere Vorteil des erfindungsgemäßen Verfahrens besteht auchdarin, dass die Emulation der integrierten Schaltung und damit dieBeobachtbarkeit dieser Schaltung über einen beliebig langen Zeitraumerfolgen kann, ohne dass Datenverluste aufgrund des Auslesens desTrace-Speichers aufgenommen werden müsste. Durch das Anhalten der Emulation,sofern der Trace-Speicher voll ist, wird das gesamte System zwargeringfügigverzögert,jedoch erhältder Benutzer dadurch die Sicherheit, dass die Beobachtung bzw. dieEmulation der integrierten Schaltung vollständig erfolgt ist und so alle möglichenZuständeder integrierten Schaltung tatsächlichermittelt wurden.The particular advantage of the method according to the invention is also that the emulation of the integrated circuit and thus the observability of this circuit can be done over an arbitrarily long period of time without data loss due to the reading of the trace memory would have to be recorded. Stopping the emulation, if the trace memory is full, will slightly delay the entire system, but it will give the user the security the observation or the emulation of the integrated circuit has taken place completely and thus all possible states of the integrated circuit have actually been determined.
[0018] VorteilhafteAusgestaltungen und Weiterbildungen der Erfindung ergeben sich ausden Unteransprüchensowie aus der Beschreibung unter Bezugnahme auf die Zeichnungen.advantageousRefinements and developments of the invention will become apparentthe dependent claimsand from the description with reference to the drawings.
[0019] Ineiner sehr vorteilhaften Ausgestaltung des erfindungsgemäßen Verfahrenswerden fürdas Auslesen der Emulationsergebnisse aus dem Trace-Speicher lediglichsolche Teile der Emulationsschaltung bzw. der integrierten Schaltungverwendet, die fürden Zustand der Emulationsschaltung bzw. der integrierten Schaltungaus Sicht der Emulation nicht benötigt werden und somit keineRolle spielen. Alle anderen Schaltungselemente und Schaltungsteilebefinden sich dann vorteilhaft erweise in einem Modus, in denen sichihr Zustand nicht ändert.Dies kann beispielsweise dadurch geschehen, dass diese Teile derEmulationsschaltung und/oder der integrierten Schaltung taktlosbetrieben werden.Ina very advantageous embodiment of the method according to the inventionbe forreading the emulation results from the trace memory onlysuch parts of the emulation circuit or the integrated circuitused that forthe state of the emulation circuit or the integrated circuitfrom the point of view of the emulation are not needed and thus noneRole-play. All other circuit elements and circuit partsare then advantageous in a mode in whichher condition does not change.This can for example be done by these parts of theEmulation circuit and / or the integrated circuit tactlessoperate.
[0020] Alternativkann ein augenblicklicher Zustand der integrierten Schaltung auchbeispielsweise über Scan-Kettenausgelesen werden. Anschließendwird dieser Zustand aus dem Trace-Speicher ausgelesen. Nach dem Auslesendes Trace-Speichers wird der Zustand wieder in die integrierte Schaltungzurück geschrieben.alternativemay also be an instantaneous state of the integrated circuitfor example via scan chainsbe read out. SubsequentlyThis state is read from the trace memory. After readingthe trace memory will restore the state to the integrated circuitwritten back.
[0021] Vorteilhafterweisewird ein Füllstandssignal ausgegeben,welches anzeigt, dass der Trace-Speicher voll ist bzw. kurz davorist, voll zu sein. Auf dieses Füllstandssignalhin wird die Emulation der integrierten Schaltung unterbrochen.advantageously,a level signal is output,which indicates that the trace memory is full or just beforeis to be full. On this level signalThe emulation of the integrated circuit is interrupted.
[0022] Ineiner ebenfalls sehr vorteilhaften Ausgestaltung der Erfindung wirdzur Einstellung der gewünschtenKonfiguration die Emulationsschaltung bzw. die darin enthalteneTrace-Logikschaltungvor dem Start der Emulation vorprogrammiert.Ina likewise very advantageous embodiment of the inventionto set the desiredConfiguration of the emulation circuit or the contained thereinTrace logic circuitpre-programmed before the start of the emulation.
[0023] Ineiner vorteilhaften Ausgestaltung des erfindungsgemäßen Verfahrenswird der Systemtakt der integrierten Schaltung extern, d.h. vonaußerhalb desHalbleiterchips eingestellt.Inan advantageous embodiment of the method according to the inventionFor example, the system clock of the integrated circuit becomes external, i. fromoutside theSemiconductor chips set.
[0024] Eindazu alternatives, besonders vorteilhaftes Verfahren sieht vor,dass sämtlicheTeile des Halbleiterchips, d.h. sämtliche Teile der integrierten Schaltungund der Emulationsschaltung, die zum Auslesen des Trace-Speichersnicht erforderlich sind, in eine Art "Sleep-Modus" versetzt werden. Dies kann beispielsweisedurch Abschalten des Systemtaktes für diese Module realisiert werden.Auf diese Weise werden sämtlicheZuständedieser Module quasi eingefroren.Onealternative, particularly advantageous method providesthat allParts of the semiconductor chip, i. all parts of the integrated circuitand the emulation circuit used to read the trace memoryare not required to be put in a kind of "sleep mode". This can be, for examplebe realized by switching off the system clock for these modules.In this way, allconditionsthese modules are virtually frozen.
[0025] Ineiner sehr vorteilhaften Ausgestaltung des erfindungsgemäßen Verfahrenskann währenddes Auslesemodus des Trace- Speichersdie integrierte Schaltung bzw. auch die Emulationsschaltung zusätzlich modifiziertwerden. Dabei könnenbeispielsweise Registerinhalte, Dateninhalte von Flip-Flops unddergleichen, die zu der selben Applikation des emulierten Teilsder integrierten Schaltung gehören, gezieltgelesen oder modifiziert werden. Es ist so ein bewusstes Eingreifenin einzelne Zuständeder integrierten Schaltung währendder Emulation derselben möglich.Zusätzlichoder alternativ ist auch ein bewusstes Eingreifen in die Konfigurationder Trace-Logikschaltung 31 während desTrace-Auslesemodus möglich.In a very advantageous embodiment of the method according to the invention, the integrated circuit or the emulation circuit can additionally be modified during the read-out mode of the trace memory. In this case, register contents, data contents of flip-flops and the like which belong to the same application of the emulated part of the integrated circuit can be read or modified in a targeted manner. It is thus possible to consciously intervene in individual states of the integrated circuit during the emulation thereof. Additionally or alternatively, there is also deliberate intervention in the configuration of the trace logic circuit 31 possible during the trace readout mode.
[0026] Dieexterne Schnittstelle des Halbleiterchips ist vorteilhafterweiseals JTAG-Schnittstelle ausgebildet. Über diese JTAG-Schnittstellewird die Taktverteilung in der integrierten Schaltung gesteuertbzw. auch geändert.Im Auslesebetrieb kann überdie JTAG-Schnittstelle die Taktversorgung der integrierten Schaltungunterbrochen bzw. quasi "eingefroren". In diesem Auslesebetriebwird lediglich die Emulationsschaltung, genauer gesagt der Trace-Speicher, mitdem Systemtakt versorgt. Auf diese Weise lässt sich der Trace-Speicherauslesen. Nach dem Auslesen des Trace-Speichers wird dies über einSteuersignal signalisiert, so dass die integrierte Schaltung wiedermit einem Systemtakt versorgt wird. Mit wieder eingeschaltetem Systemtaktwird die Emulation der integrierten Schaltung wieder bei dem letzten, zumBeispiel dem eingefrorenen Zustand fortgesetzt.Theexternal interface of the semiconductor chip is advantageouslydesigned as a JTAG interface. About this JTAG interfacethe clock distribution in the integrated circuit is controlledor changed.In the readout mode can overthe JTAG interface the clock supply of the integrated circuitinterrupted or quasi "frozen". In this readout operationonly the emulation circuit, more precisely the trace memory, is includedsupplied to the system clock. This is how the trace memory can be storedread. After reading the trace memory this will be overControl signal is signaled, so that the integrated circuit againsupplied with a system clock. With the system clock switched on againis the emulation of the integrated circuit again at the last, forExample continued the frozen state.
[0027] Dererfindungsgemäße Halbleiterchipweist vorteilhafterweise eine Steuerschaltung auf, die abhängig vonder eingestellten Konfiguration die integrierte Schaltung und/oderdie Emulationsschaltung mit dem Systemtakt versorgt.Of theinventive semiconductor chipadvantageously has a control circuit which depends onthe configuration set the integrated circuit and / orsupplies the emulation circuit with the system clock.
[0028] Zusätzlich kanndie Steuerschaltung auch dazu ausgelegt sein, den Füllstanddes Trace-Speichers zu ermitteln und bei Überschreiten eines vorgegebenenFüllstandesden Auslesevorgang des Trace-Speichers einzuleiten. Dies geschiehtzum Beispiel durch Unterbrechen des Systemtaktes für die integrierteSchaltung sowie der Trace-Logikschaltung.In addition, canthe control circuit also be designed to fill the levelTrace memory to determine and when exceeding a predeterminedfilling levelinitiate the reading process of the trace memory. this happensfor example by interrupting the system clock for the integratedCircuit as well as the trace logic circuit.
[0029] Vorteilhafterweiseweist die Emulationsschaltung einen mit einer externen Schnittstelleverbundenen Ausgangsanschluss auf, über den nach außen signalisierbarist, ob und dass der Trace-Speicher voll ist. Alternativ kann aufdiese Weise auch signalisiert werden, dass der Trace-Speicher inKürze vollsein wird, so dass die entsprechenden Maßnahmen zum Auslesen des Trace-Speichersbereits eingeleitet werden können,bevor dieser vollständigvoll ist.advantageously,The emulation circuit has one with an external interfaceconnected output terminal, via which can be signaled to the outsideis whether and that the trace memory is full. Alternatively, onThis way also be signaled that the trace memory is inBrevity fullwill be, so the appropriate measures to read the trace memorycan already be initiatedbefore this is completeis full.
[0030] ZumAuslesen der integrierten Schaltung weist diese bzw. die Trace-Logikschaltungeine Scan-Kette auf. Überdie Scan-Kette lassen sich einzelne oder auch mehrere Zustände derintegrierten Schaltung auslesen.To theReading the integrated circuit has this or the trace logic circuita scan chain on. aboutThe scan chain can be single or multiple states ofread integrated circuit.
[0031] Ineiner typischen Ausgestaltung ist die zu emulierende integrierteSchaltung als programmgesteuerte Einrichtung ausgebildet. Eine solcheprogrammgesteuerte Einrichtung ist zum Beispiel ein Mikroprozessoroder ein Mikrokontroller. Die Erfindung eignet sich insbesonderebei als programmgesteuerte Einrichtungen ausgebildeten integriertenSchaltungen, da hier erfahrungsgemäß der höchste Komplexitätsgrad derintegrierten Schaltung vorhanden ist und somit das Emulieren bzw.Simulieren dieser integrierten Schaltung besonders schwierig ist.Ina typical embodiment is the integrated to be emulatedCircuit designed as a program-controlled device. Suchprogram-controlled device is for example a microprocessoror a microcontroller. The invention is particularly suitablein integrated as program-controlled devices integratedCircuits, since experience shows that the highest degree of complexity ofintegrated circuit is present and thus emulating orSimulating this integrated circuit is particularly difficult.
[0032] DieErfindung wird nachfolgend anhand der einzigen Figur der Zeichnungnäher erläutert. DieFigur zeigt dabei ein Blockschaltbild zur Darstellung eines erfindungsgemäßen Halbleiterchips,der eine zu emulierende integrierte Schaltung sowie eine Emulationsschaltungaufweist.TheInvention will now be described with reference to the single figure of the drawingexplained in more detail. TheFIG. 1 shows a block diagram for illustrating a semiconductor chip according to the invention, FIG.the one to be emulated integrated circuit and an emulation circuithaving.
[0033] Inder Figur ist mit Bezugszeichen 1 der erfindungsgemäße Halbleiterchipbezeichnet. Der Halbleiterchip 1 weist eine integrierteSchaltung 2 sowie eine Emulationsschaltung 3 auf,die auf demselben Halbleiterchip 1 integriert sind. Diein tegrierte Schaltung 2 und die Emulationsschaltung 3 sindintern übereinen internen Bus 4, der eine interne Schnittstelle bildet,miteinander gekoppelt. Ferner ist eine externe Schnittstelle 5 vorgesehen,die der externen Anbindung der integrierten Schaltung 2 bzw.der Emulationsschaltung 3 dient. Diese Schnittstelle mussnicht notwendigerweise Teil der integrierten Schaltung 2 sein.Sie kann auch Teil der Emulationsschaltung 3 sein. Alternativist auch denkbar, dass beide Schaltungen jeweils ihre eigene Schnittstellen haben.In the figure, with reference numerals 1 designates the semiconductor chip according to the invention. The semiconductor chip 1 has an integrated circuit 2 as well as an emulation circuit 3 on top of the same semiconductor chip 1 are integrated. The integrated circuit 2 and the emulation circuit 3 are internally via an internal bus 4 , which forms an internal interface, coupled together. Furthermore, an external interface 5 provided that the external connection of the integrated circuit 2 or the emulation circuit 3 serves. This interface does not necessarily have to be part of the integrated circuit 2 be. It can also be part of the emulation circuit 3 be. Alternatively, it is also conceivable that both circuits each have their own interfaces.
[0034] Imvorliegenden Ausführungsbeispielsei angenommen, dass die integrierte Schaltung 2 als programmgesteuerteEinrichtung, insbesondere als Mikrokontroller, ausgebildet ist.Die integrierte Schaltung 2 weist eine CPU 20,Peripherieeinheiten 21, 22, 23, wie beispielsweiseeinen Timer, einen oder mehrere AD-Wandler, Speicher, Watch-Dog,Oszillator, etc. eine CPU 20 sowie einen die Peripherieeinheiten 21 – 23 verbindendeninternen Bus 24 auf. Zur Unterstützung der In-Circuit-Emulationist die externe Schnittstelle 5 als JTAG-Schnittstelleausgebildet und weist zu diesem Zwecke ein JTAG-Modul 26 auf, über welchesdie integrierte Schaltung 2 sowie die Emulationsschaltung 3 andie externe Schnittstelle 5 angebunden ist. Die externeSchnittstelle 5 bzw. das diese externe Schnittstelle repräsentierende JTAG-Modul 26 ist über einenBusmaster 25, der den Debug-Zugangsport bildet, mit deminternen Bus 24 verbunden.In the present embodiment, it is assumed that the integrated circuit 2 as a program-controlled device, in particular as a microcontroller is formed. The integrated circuit 2 has a CPU 20 , Peripheral units 21 . 22 . 23 such as a timer, one or more AD converters, memory, watchdog, oscillator, etc. a CPU 20 and one of the peripheral units 21 - 23 connecting internal bus 24 on. To support in-circuit emulation is the external interface 5 designed as a JTAG interface and has for this purpose a JTAG module 26 on, over which the integrated circuit 2 as well as the emulation circuit 3 to the external interface 5 is connected. The external interface 5 or the JTAG module representing this external interface 26 is via a bus master 25 Making the debug access sport with the internal bus 24 connected.
[0035] DieEmulationsschaltung 3 dient der Emulation, d.h. der Beobachtungund Aufnahme der Zuständeder integrierten Schaltung 2. Zu diesem Zwecke weist dieEmulationsschaltung 3 eine Trace-Logikschaltung 31 sowieeinen Trace-Speicher 32 auf, die miteinander über einebidirektionale Datenleitung 33 gekoppelt sind. Die Trace-Logikschaltung 31 ist ferner über dieinterne Schnittstelle 4 mit der integrierten Schaltung 2,dabei insbesondere mit der CPU 20 sowie dem internen Bus 24,verbunden. Überdiese interne Schnittstelle 4 lassen sich gesteuert über dieTrace-Logikschaltung 31 Zustände der integ rierten Schaltung 2 beobachtenund überDatenleitungen 33 in den Trace-Speicher 32 einspeichern. Darüber hinauslassen sich diese in den Trace-Speicher 32 gespeichertenZuständeauch wieder über dieTrace-Logikschaltung 31 in die dafür vorgesehenen Stellen derintegrierten Schaltung 2 zurückschreiben.The emulation circuit 3 is used for emulation, ie the observation and recording of the states of the integrated circuit 2 , For this purpose, the emulation circuit 3 a trace logic circuit 31 as well as a trace memory 32 on top of each other via a bidirectional data line 33 are coupled. The trace logic circuit 31 is also via the internal interface 4 with the integrated circuit 2 , especially with the CPU 20 as well as the internal bus 24 , connected. About this internal interface 4 can be controlled via the trace logic circuit 31 States of the integrated circuit 2 watch and over data lines 33 in the trace memory 32 save. In addition, these can be stored in the trace memory 32 stored states again via the trace logic circuit 31 in the designated places of the integrated circuit 2 Restoring.
[0036] DieTrace-Logikschaltung kann beispielsweise als FPGA-Schaltung oder alsPLD-Schaltung ausgebildet sein, die über die integrierte Schaltung 2 oder über dieexterne Schnittstelle so programmierbar ist, dass die gewünschte Konfigurationder Trace-Logikschaltung 31 bedarfsgemäß eingestellt werden kann.The trace logic circuit can be designed, for example, as an FPGA circuit or as a PLD circuit, which is connected via the integrated circuit 2 or via the external interface is so programmable that the desired configuration of the trace logic circuit 31 can be adjusted as needed.
[0037] DieEmulationsschaltung 3 weist ferner Peripherieeinheiten 34, 35,zum Beispiel einen Pufferspeicher, einen Timer, etc., sowie eineSteuereinrichtung 36 auf, die an einen internen Bus 37 angebundensind. An diesen internen Bus 37 sind auch die Trace-Logikschaltung 31 sowieder Trace-Speicher 32 angebunden. In gleicher Weise, wiedie integrierte Schaltung 2 weist auch die Emulationsschaltung 3 einenBusmaster 38 auf, der mit dem JTAG-Modul 26 unddamit mit der externen Schnittstelle 5 verbunden ist undder somit eine Anbindung des internen Busses 37 an dieexterne Schnittstelle 5 ermöglicht.The emulation circuit 3 also has peripheral units 34 . 35 , for example, a buffer memory, a timer, etc., as well as a controller 36 on that to an internal bus 37 are connected. To this internal bus 37 are also the trace logic circuit 31 as well as the trace memory 32 tethered. In the same way as the integrated circuit 2 also has the emulation circuit 3 a bus master 38 on top of that with the JTAG module 26 and thus with the external interface 5 is connected and thus the connection of the internal bus 37 to the external interface 5 allows.
[0038] Nachfolgendsei das erfindungsgemäße Verfahrenzur Emulation der integrierten Schaltung 2 mittels derEmulationsschaltung 3 anhand der Figur näher erläutert: Vordem Beginn der Emulation werden die Elemente der Trace-Logikschaltung 31 zunächst vorprogrammiert.Ein normaler Reset bei Beginn der Emulation ändert damit die Konfigurationder Trace-Logikschaltung nicht.Below is the inventive method for emulation of the integrated circuit 2 by means of the emulation circuit 3 explained in more detail with reference to the figure Before the start of emulation, the elements of the trace logic circuit 31 initially programmed. A normal reset at the beginning of the emulation does not change the configuration of the trace logic circuit.
[0039] Für die Emulationder integrierten Schaltung 2 muss ein in der Figur nichtdargestelltes Taktsignal an die integrierte Schaltung sowie dieEmulationsschaltung 3 angelegt werden. Um sicherzustellen, dassder zeitliche Ablauf der integrierten Schaltung und des äußeren Systemssynchron ist, wird dieser Takt zum Beispiel in einem so genannten „direktdrive modus" dasheißtohne einen dazwischen geschalteten Phasenregelkreis, verwendet.For the emulation of the integrated circuit 2 a clock signal, not shown in the figure, must be sent to the integrated circuit and the emulation circuit 3 be created. To ensure that the timing of the integrated circuit and the outer system is synchronous, this clock is used, for example, in a so-called "direct drive mode", that is, without a phase locked loop interposed therebetween.
[0040] Während derEmulation der integrierten Schaltung 2 werden taktsynchronstetig Emulationsergebnisse, welche Aufschluss über die einzelnen Zustände derintegrierten Schaltung 2 geben, über die interne Schnittstelle 4 übertragen.Die Steuerung dieses Auslesens erfolgt über die Trace-Logikschaltung 31 oderzusätzlichoder alternativ auch überdie Steuereinrichtung 36. Diese Emulationsergebnisse werdenvon der Trace-Logikschaltung 31 über Datenleitungen 33 ineigens dafürvorgesehene Bereiche des Trace-Speichers 32 abgespeichert.Die Emulation der integrierten Schaltung 2, das Auslesender Emulationsergebnisse durch die Trace-Logikschaltung 31 sowiedas Abspeichern der Emulationsergebnisse im Trace-Speicher 32 wirdsolange fortgesetzt, bis der Trace-Speicher 32 voll istoder kurz davor ist voll zu sein.During the emulation of the integrated circuit 2 are clock-synchronously continuous emulation results, which shed light on the individual states of the integrated circuit 2 through the internal interface 4 transfer. This readout is controlled via the trace logic circuit 31 or additionally or alternatively also via the control device 36 , These emulation results are taken from the trace logic circuit 31 via data lines 33 in dedicated areas of the trace memory 32 stored. The emulation of the integrated circuit 2 , the reading out of the emulation results by the trace logic circuit 31 and storing the emulation results in the trace memory 32 will continue until the trace memory 32 is full or about to be full.
[0041] DieserFüllstanddes Trace-Speichers 32 und damit das Feststellen der nochfreien Resourcen des Trace-Speichers 32 wird beispielsweise über die Steuereinrichtung 36 bzw.die Trace-Logikschaltung 31 gesteuertund überprüft. DieSteuereinrichtung 36 bzw. die Trace-Logikschaltung 31 stelltdaher fest, zu welchem Zeitpunkt der Trace-Speicher 32 voraussichtlichvoll sein wird. Abhängigdavon wird ein Füllstandsignalausgegeben, welches signalisiert, dass der Trace-Speicher voll ist.Dieses Füllstandsignal kannentweder übereinen dedizierten Pin signalisiert oder zum Beispiel über dieexterne JTAG-Schnittstelle 5, 26 zyklisch ausgelesenwerden. Bei Vorhandensein eines solchen Füllstandsignals wird die Emulationder integrierten Schaltung 2 angehalten. Dies geschiehtbeispielsweise durch Unterbrechen des Taktsignals für die integrierteSchaltung 2, worauf die jeweiligen Zustände innerhalb der integrierten Schaltung 2 angehaltenbzw. eingefroren wer den. Sobald die Emulation der integrierten Schaltung 2 angehaltenworden ist, wird dies der Trace-Logikschaltung 31 signalisiert.Alternativ erkennt dies die Trace-Logikschaltung 31 auch selbst.In der Folge wird der Trace-Speicher 32 zumAuslesen freigegeben. Überdie externe JTAG-Schnittstelle 5, 26 undden Busmaster 38 wird dann die Emulationsschaltung 3, genauergesagt der Trace-Speicher 32, mit einem extern generiertenTaktsignal versorgt, so dass der Trace-Speicher 32 ausgelesenwerden kann. Dieser Auslesevorgang wird solange durchgeführt, bisder Trace-Speicher 32 vollständig leer ist. In diesem Fallewird wiederum ein Steuersignal ausgegeben, welches signalisiert,dass der Trace-Speicher 32 nun leerist.This level of trace memory 32 and thus the determination of the remaining resources of the trace memory 32 is for example via the control device 36 or the trace logic circuit 31 controlled and checked. The control device 36 or the trace logic circuit 31 therefore, determines at what time the trace memory 32 is expected to be full. Depending on this, a level signal is output, which signals that the trace memory is full. This level signal can either be signaled via a dedicated pin or, for example, via the external JTAG interface 5 . 26 be read cyclically. In the presence of such a level signal, the emulation of the integrated circuit 2 stopped. This happens, for example, by interrupting the clock signal for the integrated circuit 2 , whereupon the respective states within the integrated circuit 2 stopped or frozen who the. Once the emulation of the integrated circuit 2 this is the trace logic circuit 31 signaled. Alternatively, this detects the trace logic circuit 31 also itself. In the consequence becomes the Trace memory 32 released for reading. Via the external JTAG interface 5 . 26 and the bus master 38 then becomes the emulation circuit 3 , more specifically, the trace memory 32 , supplied with an externally generated clock signal, allowing the trace memory 32 can be read out. This read is performed until the trace memory 32 completely empty. In this case, in turn, a control signal is output, which signals that the trace memory 32 now empty.
[0042] Istder Auslesevorgang abgeschlossen, dann wird die integrierte Schaltung 2 wiederummit dem extern generierten Taktsignal versorgt, so dass die Emulationfortgeführtwerden kann. Die Emulation startet dann vorteilhafterweise genauin dem Zustand, in dem sie zum Zwecke des Auslesens des Trace-Speichers 32 angehaltenbzw. eingefroren wurde.When the reading process is completed, then the integrated circuit 2 again supplied with the externally generated clock signal, so that the emulation can be continued. The emulation then advantageously starts exactly in the state in which it is used for the purpose of reading out the trace memory 32 stopped or frozen.
[0043] Obgleichdie vorliegende Erfindung vorstehend anhand eines bevorzugten Ausführungsbeispielsnäher beschriebenwurde, sei sie darauf nicht beschränkt, sondern ist auf verschiedensteArt und Weise modifizierbar.Althoughthe present invention above based on a preferred embodimentdescribed in more detailif it was not limited to that, it is differentModifiable manner.
[0044] Sosei die Erfindung nicht notwendigerweise auf die Ausgestaltung einerals programmgesteuerten Einrichtung ausgebildeten integrierten Schaltung beschränkt. Vielmehrlässt sichdie Erfindung bei beliebigen integrierten Schaltungen zum Zweckeder Emulation derselben einsetzen. Besonders vorteilhaft ist dieErfindung aber bei sehr komplex ausgebildeten integrierten Schaltungen.Denkbar wäredie Erfindung auch zum Zwecke der Emulation von sehr komplexen aufFPGAs oder PLDs abgebildete Schaltungen.Sothe invention is not necessarily to the embodiment of alimited as a program-controlled device integrated circuit. Much morelet yourselfthe invention in any integrated circuits for the purposeto emulate them. Particularly advantageous is theInvention but with very complex integrated circuits.It would be possiblethe invention also for the purpose of emulation of very complexFPGAs or PLDs mapped circuits.
[0045] Darüber hinaussei die Erfindung auch nicht auf die in der Figur dargestellte Architekturbeschränkt.Vielmehr kann die externe Anbindung der integrierten Schaltung bzw.der Emulationsschaltung sowie die interne Kopplung der beiden Schaltungsteilebeliebig geändertwerden. Es versteht sich von selbst, dass die integrierte Schaltungje nach Applikation neben dem internen Bus sowie den Peripherieeinheitennoch weitere interne Daten und/oder Adressbusse und darüber hinausnoch weitere Peripherieeinheiten und programmgesteuerte Einrichtungenaufweisen kann.Furthermorethe invention is not on the architecture shown in the figurelimited.Rather, the external connection of the integrated circuit orthe emulation circuit and the internal coupling of the two circuit partschanged as desiredbecome. It goes without saying that the integrated circuitdepending on the application, next to the internal bus and the peripheral unitseven more internal data and / or address buses and beyondeven more peripheral units and program-controlled devicescan have.
[0046] Indem vorstehenden Ausführungsbeispiel wurdezudem zum Zwecke der Verallgemeinerung auf eine sehr detaillierteDarstellung einer als programmgesteuerten Einrichtung ausgebildetenintegrierten Schaltung verzichtet, ohne die Erfindung aber daraufzu beschränken.InThe above embodiment has beenalso for the purpose of generalization to a very detailedRepresentation of a trained as a program-controlled deviceintegrated circuit omitted without the invention but on itto restrict.
11 HalbleiterchipSemiconductor chip 22 integrierteSchaltung, programmgesteuerte EinrichtungintegratedCircuit, program-controlled device 33 Emulationsschaltungemulation circuit 44 interneSchnittstelleinternalinterface 55 externe(JTAG-)Schnittstelleexternal(JTAG) interface 2020 CPU,zentrale VerarbeitungseinheitCPU,central processing unit 2121 Peripherieeinheitperipheral unit 2222 Peripherieeinheitperipheral unit 2323 Peripherieeinheitperipheral unit 2424 internerBusinternalbus 2525 Busmasterbus master 2626 JTAG-ModulJTAG module 3131 Trace-LogikschaltungTrace logic circuit 3232 Trace-SpeicherTrace memory 3333 Datenleitungendata lines 3434 Peripherieeinheitperipheral unit 3535 Peripherieeinheitperipheral unit 3636 Steuereinrichtungcontrol device 3737 internerBusinternalbus 3838 Busmasterbus master
权利要求:
Claims (17)
[1]
Verfahren zum Emulieren einer integrierten Schaltung(2), insbesondere einer programmgesteuerten Einrichtung,mittels einer auf dem selben Halbleiterchip (1) der integriertenSchaltung (2) angeordneten Emulationsschaltung (3),welche einen Trace-Speicher (32) aufweist und welche über eineinterne Schnittstelle (4) mit der zu emulierenden integriertenSchaltung (2) gekoppelt ist, mit den folgenden Verfahrensschritten: (a)Emulieren der integrierten Schaltung (2) unter Verwendungder Emulationsschaltung (3); (b) FortwährendesAbspeichern der währendder Emulation gewonnenen Emulationsergebnisse in den Trace-Speicher (32)solange, bis der Trace-Speicher (32) voll ist; (c)Unterbrechen der Emulation; (d) Auslesen der Emulationsergebnisseaus dem Trace-Speicher(32); (e) Fortsetzen der Emulation der integriertenSchaltung (2) durch Rücksprungzum Verfahrensschritt (a).Method for emulating an integrated circuit ( 2 ), in particular a program-controlled device, by means of one on the same semiconductor chip ( 1 ) of the integrated circuit ( 2 ) arranged emulation circuit ( 3 ), which contains a trace memory ( 32 ) and which via an internal interface ( 4 ) with the integrated circuit to be emulated ( 2 ), comprising the following steps: (a) emulating the integrated circuit ( 2 ) using the emulation circuit ( 3 ); (b) Continuously storing the emulation results obtained during the emulation into the trace memory ( 32 ) until the trace memory ( 32 ) is full; (c) interrupting the emulation; (d) reading the emulation results from the trace memory ( 32 ); (e) continuing the emulation of the integrated circuit ( 2 ) by returning to step (a).
[2]
Verfahren nach Anspruch 1, dadurch gekennzeichnet,dass währenddes Verfahrensschrittes (d) nur solche Teile der Emulationsschaltung(3) und/oder der integrierten Schaltung (2) verwendet werden,die hinsichtlich der Emulation fürden Zustand der Emulationsschaltung (3) und/oder der integriertenSchaltung (2) nicht benötigtwerden.Method according to Claim 1, characterized in that during the method step (d) only those parts of the emulation circuit ( 3 ) and / or the integrated circuit ( 2 ), which are emulated for the state of the emulation circuit ( 3 ) and / or the integrated circuit ( 2 ) are not needed.
[3]
Verfahren nach einem der vorstehenden Ansprüche, dadurchgekennzeichnet, dass während desVerfahrensschrittes (d) diejenigen Teile der Emulationsschaltung(3) und/oder der integrierten Schaltung (2), diefür dasAuslesen des Trace-Speichers (32) nicht benötigt werden,in einem Betriebsmodus betrieben werden, in dem sich ihr Zustandnicht ändert.Method according to one of the preceding claims, characterized in that during the method step (d) those parts of the emulation circuit ( 3 ) and / or the integrated circuit ( 2 ), which are used to read the trace memory ( 32 ) are not needed in an operating mode in which their state does not change.
[4]
Verfahren nach Anspruch 3, dadurch gekennzeichnet,dass in dem Betriebsmodus die Teile der Emulationsschaltung (3)und/oder der integrierten Schaltung (2) taktlos betriebenwerden.Method according to Claim 3, characterized in that in the operating mode the parts of the emulation circuit ( 3 ) and / or the integrated circuit ( 2 ) are operated without a clock.
[5]
Verfahren nach einem der vorstehenden Ansprüche, gekennzeichnetdurch die Verfahrensschritte: – Vollständiges Auslesen und Speicherneines Zustands der integrierten Schaltung (2) in den Trace-Speichern(32); – Auslesendes Trace-Speichers (32); – Zurückschreiben des ausgelesenenZustands in die integrierte Schaltung (2).Method according to one of the preceding claims, characterized by the method steps: - complete readout and storage of a state of the integrated circuit ( 2 ) in the trace stores ( 32 ); - reading the trace memory ( 32 ); - writing back the read-out state into the integrated circuit ( 2 ).
[6]
Verfahren nach einem der vorstehenden Ansprüche, dadurchgekennzeichnet, dass kurz bevor der Trace-Speicher (32)voll ist ein Füllstandssignal ausgegebenwird, welches anzeigt, dass der Trace-Speicher (32) vollist, und woraufhin die Emulation unterbrochen wird.Method according to one of the preceding claims, characterized in that shortly before the trace memory ( 32 ) a full level signal is output, indicating that the trace memory ( 32 ) is full, and then the emulation is interrupted.
[7]
Verfahren nach einem der vorstehenden Ansprüche, dadurchgekennzeichnet, dass zur Einstellung der gewünschten Konfiguration für die Emulationdie Emulationsschaltung (3), insbesondere die in der Emulationsschaltung(3) enthaltene Trace-Logikschaltung (31), vordem Start der Emulation vorprogrammiert wird.Method according to one of the preceding claims, characterized in that for setting the desired configuration for the emulation, the emulation circuit ( 3 ), in particular those in the emulation circuit ( 3 ) contained trace logic circuit ( 31 ), is preprogrammed before starting the emulation.
[8]
Verfahren nach einem der vorstehenden Ansprüche, dadurchgekennzeichnet, dass der Systemtakt der integrierten Schaltung (2)von außerhalbdes Halbleiterchips (1) gesteuert wird.Method according to one of the preceding claims, characterized in that the system clock of the integrated circuit ( 2 ) from outside the semiconductor chip ( 1 ) is controlled.
[9]
Verfahren nach einem der vorstehenden Ansprüche, dadurchgekennzeichnet, dass zum Unterbrechen der Emulation der Systemtaktzu der integrierten Schaltung (2) unterbrochen wird undzum Auslesen der Emulationsdaten lediglich die Emulationsschaltung(3) mit einem Systemtakt versorgt wird.Method according to one of the preceding claims, characterized in that, in order to interrupt the emulation, the system clock to the integrated circuit ( 2 ) is interrupted and to read the emulation data only the emulation circuit ( 3 ) is supplied with a system clock.
[10]
Verfahren nach einem der vorstehenden Ansprüche, dadurchgekennzeichnet, dass während demAuslesen der Emulationsergebnisse aus dem Trace-Speicher (32)die integrierte Schaltung (2) bzw. auch die Emulationsschaltung(3) zusätzlichgelesen, modifiziert und/oder konfiguriert werden.Method according to one of the preceding claims, characterized in that during the reading out of the emulation results from the trace memory ( 32 ) the integrated circuit ( 2 ) or the emulation circuit ( 3 ) additionally read, modified and / or configured.
[11]
Halbleiterchip (1) mit einer integriertenSchaltung (2), insbesondere mit einer programmgesteuertenEinrichtung (2), mit einer integrierten Emulationsschaltung(3), welche eine Trace-Logikschaltung (31) zumEmulieren der integrierten Schaltung (2) sowie einen Trace-Speicher(32) zum Abspeichern der bei der Emulation der integriertenSchaltung (2) ermittelten Emulationsergebnisse aufweist, miteiner interne Schnittstelle (4) zur Ankopplung der Emulationsschaltung(3) an die integrierte Schaltung (2), miteiner externen Schnittstelle (5, 26), über diedie integrierte Schaltung (2) und die Emulationsschaltung(3) mit einem Systemtakt versorgbar sind und über dieder Trace-Speicher(32) auslesbar ist.Semiconductor chip ( 1 ) with an integrated circuit ( 2 ), in particular with a program-controlled device ( 2 ), with an integrated emulation circuit ( 3 ), which is a trace logic circuit ( 31 ) for emulating the integrated circuit ( 2 ) as well as a trace memory ( 32 ) for storing in the emulation of the integrated circuit ( 2 ) has detected emulation results, with an internal interface ( 4 ) for coupling the emulation circuit ( 3 ) to the integrated circuit ( 2 ), with an external interface ( 5 . 26 ) through which the integrated circuit ( 2 ) and the emulation circuit ( 3 ) can be supplied with a system clock and via which the trace memory ( 32 ) is readable.
[12]
Halbleiterchip nach Anspruch 11, dadurch gekennzeichnet,dass die externe Schnittstelle (5, 26) als JTAG-Schnittstelle(26) ausgebildet ist, überdie in der Emulationsschaltung (3) abgelegte Emulationsergebnisseauslesbar sind.Semiconductor chip according to claim 11, characterized in that the external interface ( 5 . 26 ) as a JTAG interface ( 26 ) is formed, via which in the emulation circuit ( 3 ) stored emulation results are readable.
[13]
Halbleiterchip nach einem der Ansprüche 11 bis12, dadurch gekennzeichnet, dass eine Steuerschaltung (31, 36)vorgesehen ist, die abhängigvon der eingestellten Konfiguration und des aktuellen Betriebsmodusdie integrierte Schaltung (2) und/oder die Emulationsschaltung(3) mit einem Systemtakt versorgt.Semiconductor chip according to one of Claims 11 to 12, characterized in that a control circuit ( 31 . 36 ) which, depending on the set configuration and the current operating mode, the integrated circuit ( 2 ) and / or the emulation circuit ( 3 ) supplied with a system clock.
[14]
Halbleiterchip nach einem der Ansprüche 10 bis13, dadurch gekennzeichnet, dass eine Steuerschaltung (31, 36)vorgesehen ist, die den Füllstand desTrace-Speichers (32) ermittelt und die bei Überschreiteneines vorgegebenen Füllstandesdes Trace-Speichers(32) den Auslesevorgang des Trace-Speichers (32)einleitet.Semiconductor chip according to one of Claims 10 to 13, characterized in that a control circuit ( 31 . 36 ), which determines the fill level of the trace memory ( 32 ) and when exceeding a predetermined level of the trace memory ( 32 ) the read-out process of the trace memory ( 32 ).
[15]
Halbleiterchip nach einem der Ansprüche 11 bis14, dadurch gekennzeichnet, dass die Emulationsschaltung (3)einen mit der externen Schnittstelle (5, 26) verbundenenAusgangsanschluss (38) aufweist, über den nach außen signalisierbarist, dass der Trace-Speicher (32) voll ist bzw. kurz davorist, voll zu sein.Semiconductor chip according to one of Claims 11 to 14, characterized in that the emulation circuit ( 3 ) one with the external interface ( 5 . 26 ) connected output terminal ( 38 ), via which it can be signaled to the outside, that the trace memory ( 32 ) is full or about to be full.
[16]
Halbleiterchip nach einem der Ansprüche 11 bis15, dadurch gekennzeichnet, dass mindestens eine Scan-Kette zumAuslesen der integrierten Schaltung (2) vorgesehen ist.Semiconductor chip according to one of Claims 11 to 15, characterized in that at least one scan chain for reading out the integrated circuit ( 2 ) is provided.
[17]
Halbleiterchip nach einem der Ansprüche 11 bis16, dadurch gekennzeichnet, dass die integrierte Schaltung (2)als programmgesteuerte Einrichtung (2), insbesondere alsMikroprozessor oder als Mikrocontroller, ausgebildet ist.Semiconductor chip according to one of Claims 11 to 16, characterized in that the integrated circuit ( 2 ) as a program-controlled device ( 2 ), in particular as a microprocessor or as a microcontroller is formed.
类似技术:
公开号 | 公开日 | 专利标题
DE102016200514B4|2019-08-14|Methods and apparatus for controlled recovery of error information between independently operable processors
US6754599B2|2004-06-22|Debug output loosely coupled with processor block
DE112006002265B4|2011-02-17|Reliable computing with a multi-core processor
US7089175B1|2006-08-08|Combined in-circuit emulator and programmer
US6928403B2|2005-08-09|Automatic detection of connectivity between an emulator and a target device
DE60100754T2|2004-07-15|SYSTEM AND METHOD FOR TESTING SIGNAL CONNECTIONS USING A BUILT-IN SELF-TEST FUNCTION
DE102006002526B4|2011-06-30|A solid state disk controller and method of operating the same
US4901259A|1990-02-13|Asic emulator
DE4205524C2|1999-04-29|Programmable logic controller
US8108729B2|2012-01-31|Memory-based trigger generation scheme in an emulation environment
US7324363B2|2008-01-29|SPICE optimized for arrays
EP3274825A1|2018-01-31|Verfahren und ausführungsumgebung zum gesicherten ausführen von programmbefehlen
DE102005040226B4|2014-02-13|Non-volatile memory device and test method
US6957180B1|2005-10-18|System and a method for communication between an ICE and a production microcontroller while in a halt state
US8786310B1|2014-07-22|Partially programming an integrated circuit using control memory cells
DE112010001824B4|2016-10-13|Packaged interface for coupling agents
DE4244266C2|1997-02-27|Method and circuit device for dynamically configuring device drivers for computer system equipment
DE19882486B4|2005-01-27|Synchronous non-volatile page mode memory
DE10052877B4|2008-07-03|microcontroller
DE60319125T2|2009-02-05|INTEGRATED CIRCUIT WITH SEVERAL OPERATING MODES
DE4309532C2|1996-10-31|Method for backing up a system image of a computer system on a permanent storage device and a computer system
DE19882418B4|2005-11-24|System of source-synchronous interface between master and slave devices and associated method
US8032329B2|2011-10-04|Method and system to monitor, debug, and analyze performance of an electronic design
DE2941123C2|1990-01-04|
DE10085374B4|2010-04-15|System management memory for the system management interrupt handlers is integrated into the memory controller, regardless of the BIOS and operating system
同族专利:
公开号 | 公开日
DE102004008499B4|2008-05-08|
US20050192791A1|2005-09-01|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
法律状态:
2005-09-15| OP8| Request for examination as to paragraph 44 patent law|
2008-11-06| 8364| No opposition during term of opposition|
2020-09-01| R119| Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee|
优先权:
申请号 | 申请日 | 专利标题
DE200410008499|DE102004008499B4|2004-02-20|2004-02-20|Method for emulating an integrated circuit and semiconductor chip|DE200410008499| DE102004008499B4|2004-02-20|2004-02-20|Method for emulating an integrated circuit and semiconductor chip|
US11/058,144| US20050192791A1|2004-02-20|2005-02-15|Method for emulating an integrated circuit and semiconductor chip for practicing the method|
[返回顶部]