DE60212455T2 - System und verfahren zum takten eines ip-core während einer fehlersuchoperation - Google Patents
System und verfahren zum takten eines ip-core während einer fehlersuchoperation Download PDFInfo
- Publication number
- DE60212455T2 DE60212455T2 DE60212455T DE60212455T DE60212455T2 DE 60212455 T2 DE60212455 T2 DE 60212455T2 DE 60212455 T DE60212455 T DE 60212455T DE 60212455 T DE60212455 T DE 60212455T DE 60212455 T2 DE60212455 T2 DE 60212455T2
- Authority
- DE
- Germany
- Prior art keywords
- clock
- emulator
- core
- design
- breakpoint
- 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
Links
- 238000000034 method Methods 0.000 title claims description 17
- 238000013024 troubleshooting Methods 0.000 title description 3
- 238000013461 design Methods 0.000 claims description 12
- 238000012360 testing method Methods 0.000 claims description 5
- 238000001514 detection method Methods 0.000 claims 1
- 235000019800 disodium phosphate Nutrition 0.000 description 3
- 238000013459 approach Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3648—Software debugging using additional hardware
- G06F11/3652—Software debugging using additional hardware in-circuit-emulation [ICE] arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Description
- Die vorliegende Erfindung betrifft ein System und ein Verfahren zum Takten eines IP-Kerns während einer Fehlersuchoperation.
- Im Design von integrierten Schaltungen gibt es eine zunehmende Nachfrage nach Emulations- und Prüfwerkzeugen. Auf Hardware beruhende Prüflösungen gibt es seit Jahren in zwei unterschiedlichen Ausführungsformen: Beschleuniger und Emulatoren. Nützliche Werkzeuge in Emulationssystemen sind sogenannte IP-Xpress-Sätze, die emulationsbereite Sätze zur gleichzeitigen Hardware- und Softwareprüfung von auf Prozessoren beruhenden Systemen sind. Solche IP-Xpress-Sätze verwenden Mikroprozessor- oder DSP-Chips, die auf einer gedruckten Schaltung angebracht sind, um die Funktionalität der Vorrichtung bereitzustellen, die mit einem Design verbunden werden soll, das im Emulator abgebildet wird, und die Sätze bestehen aus einer Schaltkarte und HDL-Hülldateien.
- Alle Prozessor-IP-Kerne benötigen eine gewisse äußere Taktquelle. Folglich werden ein oder mehrere Taktsignale für die IP-Xpress-Karten (d.h. Prozessorkarten oder Prozessorzielkarten) bereitgestellt. Die Takte werden entweder direkt von den inneren Taktgeneratoren des Emulators geliefert, oder sie können vom Design geliefert werden, das auf den Emulator geladen wird.
- Eine andere Art der Bereitstellung eines Takts für einen IP-Kern ist die Verwendung eines Taktoszillators, der auf der IP-Xpress-Karte angebracht ist. In diesem Fall kann jede Frequenz angelegt werden, d.h. es gibt keine Einschränkungen der maximalen Taktfrequenz infolge des Emulationssystems.
- Ein Hauptvorteil eines IP-Xpress-Satzes ist es, eine schnell laufende Prüfumgebung bereitzustellen, in der eine Anwendungssoftware auf dem IP-Kern läuft und das Design stimuliert, das auf den Emulator abgebildet ist. Im Fall eines fehlerhaften Systemverhaltens könnte der Grund dafür entweder in der Anwendungssoftware oder im Design liegen (vorausgesetzt der IP-Kern funktioniert korrekt). Um die fehlerhafte Komponente des Systems zu identifizieren, müssen sowohl die Anwendungssoftware als auch das Design ausgetestet werden. Dies kann am günstigsten durchgeführt werden, wenn die Hardware und Software synchron gestoppt werden. Einerseits ergibt dies eine gute Korrelation zwischen dem Status des Designs und der tatsächlichen Softwareausführung, und ermöglicht es andererseits, alle Ressourcen des Designs abzufragen, die auf das Emulatorsystem abgebildet werden. Dies kann jedoch bedeuten, daß die Emulatortakte gestoppt werden. Falls der IP-Kern durch einen Takt getaktet wird, der durch das Emulatorsystem erzeugt wird, würde dies bedeuten, daß der IP-Kern nicht mehr getaktet wird. Folglich würde die Softwarefehlersucheinrichtung nicht unbedingt arbeiten, und als Ergebnis wären die Ressourcen der Softwareausführung nicht sichtbar, und eine vollständige Fehlersuche im System wäre nicht möglich.
- Der Artikel „Co-Emulation and Debugging of HW/SW-Systems" von G. Koch u.a. beschäftigt sich allgemein mit den Eigenschaften von Systemen, die ausgetestet werden, und welche dieser Eigenschaften zur Problemen führen könnten, wenn die Ausführung einer Systemkomponente infolge eines Haltepunkts gestoppt wird. Das Hauptproblem, das auftreten würde, ist ein Datenverlust, da einer der beiden Prozesse (entweder in Hardware oder Software) infolge eines Haltepunkts gestoppt wird, wohingegen der andere Prozeß weiter Daten an den gestoppten Prozeß sendet, die nicht richtig aufgenommen werden können. Der Ansatz, den die Autoren dieses Artikels vorschlagen, ist, daß es für einen gegebenen Prozeß nicht nur das ursprüngliche Modell geben würde, das die beabsichtigte Funktionalität abdeckt, sondern es auch ein zweites, alternatives Fehlersuchmodell dieses Prozesses geben wür de, das zusätzlich zur ursprünglichen Funktionalität bestimmte interne Zustände und eine bestimmte externe Signalisierung ermöglicht, um anzuzeigen, daß ein gestoppter Prozeß keine Daten aufnehmen kann und der andere Prozeß es später erneut versuchen soll. Dies setzt im Grunde voraus, daß die Kommunikation zwischen den beiden Prozessen auf einer Quittierungsüberwachung beruht und imstande ist, Daten erneut zu senden.
- Es ist die Aufgabe der vorliegenden Erfindung, ein System und ein Verfahren zum Takten eines IP-Kerns während einer Fehlersuchoperation bereitzustellen. Diese Aufgabe wird durch die Merkmale der Ansprüche gelöst.
- Um diese Aufgabe zu lösen, ist erfindungsgemäß die Takterzeugung für den IP-Kern, wenn er in die Systemfehlersuchbetriebsart eintritt, auf der IP-Xpress-Karte selbst ausgeführt. Es sich ein Taktoszillator und eine Schalteinrichtung vorgesehen, und die Schalteinrichtung schaltet auf den Taktoszillator, der auf der IP-Xpress-Karte vorgesehen ist, sobald in die Systemfehlersuchbetriebsart eingetreten wird. Um die Schaltoperation einzuleiten, überwacht die Schalteinrichtung Signale, die für den IP-Kern spezifisch sind, die einen Haltepunkt anzeigen, z.B. EMU0/1 im Fall von TI C6x DSPs, und wenn diese anzeigen, daß ein Haltepunkt erfaßt worden ist, wird die Taktausgabe der Schalteinrichtung vom Taktoszillator betrieben. Folglich wird er IP-Kern selbst dann kontinuierlich getaktet, wenn die Takte des Emulatorsystems gestoppt werden. Ferner ist die Softwarefehlersucheinrichtung immer noch in ihrer Systemfehlersuchbetriebsart funktionsfähig, und alle internen IP-Kern-Ressourcen und der Softwareausführungsstatus können untersucht werden.
- Beim Verlassen der Systemfehlersuchbetriebsart wird der Schalteinrichtung signalisiert, auf die Takte des Emulatorsystems zurückzuschalten, und die Systemausführung kann in ihrer normalen Betriebsart weitergehen.
- Die vorliegende Erfindung wird nun unter Bezugnahme auf die Figur beschrieben. Die Figur zeigt eine bevorzugte Ausführungsform der vorliegenden Erfindung, die eine Schalteinrichtung
1 aufweist. Mit der Schalteinrichtung ist ein Taktoszillator2 verbunden. Auf der linken Seite der Figur werden zwei mögliche Taktquellen für den Normalbetrieb des Emulatorsystems gezeigt. Diese Taktsignale werden durch die Rückwandplatine des Emulatorsystems auf der IP-Xpress-Karte betrieben. Das Signal gpc2i_clkin ist ein Treibertakt vom Design, und gpc2i_j17_clkin ist ein Takt direkt aus dem Generator des Emulators. Abhängig vom Auswahlsignal, das an den Multiplexer3 geliefert wird, wird einer dieser Takte an den IP-Kern geliefert. Zum Beispiel ist der IP-Kern ein DSP. Der Taktoszillator2 , die Schalteinrichtung1 und die Signale, die einen Haltepunkt anzeigen, bilden den Taktgenerator, wenn in die Haltepunktbetriebsart eingetreten wird. Die Ausgabe der Schalteinrichtung ist ein Taktsignal, das den IP-Kern taktet. - Während des Normalbetriebs des Emulatorsystems führt die Schalteinrichtung einen „regulären" Takt durch ihren Ausgang zu. Wenn in die Systemfehlersuchbetriebsart eingetreten wird, schaltet die Schalteinrichtung von diesem „regulären" Takt auf den Taktoszillator, der auf der IP-Xpress-Karte vorgesehen ist.
- Die folgenden Codebruchteile zeigen, wie das Umschalten auf den Taktoszillator in der Schalteinrichtung implementiert werden kann.
Claims (7)
- Verfahren zum Takten eines IP-Kerns während einer Fehlersuchoperation, gekennzeichnet durch Umschalten von dem Takt, der zum Testen eines Designs verwendet wird, das auf einen Emulator abgebildet wird, auf einen Taktoszillator oder jede freischwingende Taktquelle (
2 ). - Verfahren nach Anspruch 1, wobei der Taktoszillator auf der IP-Prozessorkarte vorgesehen ist.
- Verfahren nach Anspruch 1 oder 2, wobei der Takt, der zum Testen des Designs verwendet wird, entweder: a) ein Takt ist, der aus dem Design erhalten wird, das in den Emulator abgebildet wird b) ein Takt ist, der direkt aus den Taktgeneratorschaltungen des Emulators erhalten wird, oder c) ein Taktoszillator ist, der lokal auf der IP-Prozessortochterkarte angebracht ist, oder irgendeine freischwingende Taktquelle.
- Verfahren nach Anspruch 1, 2 oder 3, das den Schritt der Überwachung von Signalen aufweist, die für den IP-Kern spezifisch sind, die einen Haltepunkt anzeigen, um den Haltepunkt zu detektieren.
- Verfahren nach einem der Ansprüche 1 bis 4, wobei das Umschalten bei der Detektion durchgeführt wird, daß der Haltepunkt erfaßt worden ist.
- Verfahren nach einem der Ansprüche 1 bis 5, wobei der IP-Kern ein Mikroprozessor oder ein DSP ist.
- System zum Takten eines IP-Kerns während einer Fehlersuchoperation, dadurch gekennzeichnet, daß es aufweist: eine Schalteinrichtung (
1 ); einen Taktoszillator oder irgendeine freischwingende Taktquelle (2 ); und eine Steuereinrichtung zum Senden eines Steuersignals an die Schalteinrichtung (1 ), wenn die Fehlersuchoperation gestartet wird, um die Schalteinrichtung (1 ) auf den Taktoszillator oder irgendeine freischwingende Taktquelle (2 ) umzuschalten.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2002/000503 WO2003060719A1 (en) | 2002-01-18 | 2002-01-18 | System and method of clocking an ip core during a debugging operation |
Publications (2)
Publication Number | Publication Date |
---|---|
DE60212455D1 DE60212455D1 (de) | 2006-07-27 |
DE60212455T2 true DE60212455T2 (de) | 2007-04-05 |
Family
ID=8164789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE60212455T Expired - Lifetime DE60212455T2 (de) | 2002-01-18 | 2002-01-18 | System und verfahren zum takten eines ip-core während einer fehlersuchoperation |
Country Status (5)
Country | Link |
---|---|
US (2) | US7676712B2 (de) |
EP (1) | EP1466249B1 (de) |
AU (1) | AU2002229714A1 (de) |
DE (1) | DE60212455T2 (de) |
WO (1) | WO2003060719A1 (de) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8214192B2 (en) * | 2008-02-27 | 2012-07-03 | Mentor Graphics Corporation | Resource remapping in a hardware emulation environment |
KR101992234B1 (ko) | 2012-05-22 | 2019-06-24 | 삼성전자주식회사 | 디버깅 회로를 위한 클럭 제어 회로를 구비하는 집적 회로 및 이를 포함하는 시스템-온-칩 |
US8799715B2 (en) * | 2012-06-26 | 2014-08-05 | Apple Inc. | System on a chip (SOC) debug controllability |
EP3262782B1 (de) | 2015-02-25 | 2022-07-27 | Private Machines Inc. | Manipulationssicheres system |
US11514174B2 (en) | 2019-01-23 | 2022-11-29 | Micron Technology, Inc. | Memory devices with cryptographic components |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08320804A (ja) * | 1994-03-09 | 1996-12-03 | Texas Instr Inc <Ti> | クロックドメインにおける試験インターフェースの分散制御を備えるエミュレーション装置、システムおよび方法 |
US6473727B1 (en) * | 1998-03-06 | 2002-10-29 | Lsi Logic Corporation | Processor development systems |
JPH11259329A (ja) * | 1998-03-12 | 1999-09-24 | Oki Micro Design:Kk | デュアルクロックを持つマイクロコントローラのインサーキットエミュレータ |
CN1196266C (zh) * | 1999-09-15 | 2005-04-06 | 汤姆森许可公司 | 具有时钟发生器和双向时钟引脚装置的多时钟集成电路 |
-
2002
- 2002-01-18 EP EP02710803A patent/EP1466249B1/de not_active Expired - Lifetime
- 2002-01-18 AU AU2002229714A patent/AU2002229714A1/en not_active Abandoned
- 2002-01-18 DE DE60212455T patent/DE60212455T2/de not_active Expired - Lifetime
- 2002-01-18 US US10/501,461 patent/US7676712B2/en not_active Expired - Fee Related
- 2002-01-18 WO PCT/EP2002/000503 patent/WO2003060719A1/en active IP Right Grant
-
2010
- 2010-02-04 US US12/700,227 patent/US8086921B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20060059388A1 (en) | 2006-03-16 |
AU2002229714A1 (en) | 2003-07-30 |
DE60212455D1 (de) | 2006-07-27 |
EP1466249B1 (de) | 2006-06-14 |
US7676712B2 (en) | 2010-03-09 |
US8086921B2 (en) | 2011-12-27 |
US20100313058A1 (en) | 2010-12-09 |
WO2003060719A1 (en) | 2003-07-24 |
EP1466249A1 (de) | 2004-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3903835C2 (de) | ||
EP1248198B1 (de) | Programmgesteuerte Einheit mit Emulations-Einheiten | |
DE69530141T2 (de) | Integrierter Prozessor der Indizen über interne Aktivitäten an einen externen Leistungssteuerungsbus liefert | |
DE19781620B4 (de) | Bus-Patcher | |
DE10196310B4 (de) | Vorrichtung und Verfahren zum Verifizieren eines Chip-Designs und zum Testen eines Chips | |
DE102006059156B4 (de) | Verfahren zum Testen eines integrierten Schaltkreischips mit zumindest zwei Schaltungskernen sowie integrierter Schaltkreischip und Testsystem | |
EP1720100B1 (de) | Verfahren und Vorrichtung zur Emulation einer programmierbaren Einheit | |
DE60319125T2 (de) | Integrierte schaltung mit mehreren betriebsarten | |
DE10333817A1 (de) | Emulationsschnittstellensystem | |
EP0503117A1 (de) | Prozessorschaltung | |
EP0104635A2 (de) | Verfahren und Anordnung zum Prüfen eines digitalen Rechners | |
DE60002908T2 (de) | Vorrichtung und verfahren zur verbesserten fehlerortung und diagnose in rechnern | |
DE3702408C2 (de) | ||
DE19604251C2 (de) | Emulationsvorrichtung für Microcomputer, Verfahren zur Erfassung einer Vielzahl von Statusdaten und Fehlerbeseitigungssystem | |
DE69815006T2 (de) | Datenverarbeitungseinheit mit Fehlerbeseitungsmöglichkeiten | |
DE102006041444B4 (de) | Schaltungsanordnung und Verfahren zum Erfassen einer Ausführungszeit eines Befehls in einem Rechnersystem | |
WO2004049159A2 (de) | Einrichtung und verfahren zur analyse von eingebetteten systemen | |
DE60212455T2 (de) | System und verfahren zum takten eines ip-core während einer fehlersuchoperation | |
DE19732113C2 (de) | Vorrichtung zur Erfassung von Platinenverdrahtungsfehlern | |
DE19960574A1 (de) | PCI-Fehlerbehebungsvorrichtung,-Verfahren und -System | |
DE102009052188A1 (de) | Fehlerbeseitigungssystem, Fehlerbeseitigungsverfahren, Fehlerbeseitigungssteuerverfahren und Fehlerbeseitigungssteuerprogramm | |
DE102009012768B4 (de) | JTAG Nachrichtenbox | |
DE102012221253B4 (de) | Verfahren zum Zählen von Ereignissen in einer elektronischen Einheit, Ereigniszähler für eine integrierte Schaltungseinheit sowie Computersystem und Computerprogrammprodukt hierfür | |
DE19962723A1 (de) | Verfahren und Vorrichtung zum Erkennen von Handshaking-Protokollfehlern auf einem asynchronen Datenbus | |
DE10139660A1 (de) | Programmgesteuerte Einheit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8327 | Change in the person/name/address of the patent owner |
Owner name: MENTOR GRAPHICS CORP., WILSONVILLE, OREG., US |
|
8364 | No opposition during term of opposition |