Integrierter Emulator

Ein integrierter Emulator (ICE) ist ein Hardware-Gerät, das verwendet ist, um bei der Software eines eingebetteten Systems die Fehler zu beseitigen. Es war historisch in der Form des Band-Verarbeiters, der viele innere zum Zweck herausgebrachte Signale hat die Fehler zu beseitigen. Diese Signale haben Auskunft über den Staat des Verarbeiters gegeben.

Mehr kürzlich bedeckt der Begriff auch gestützte Hardware-Testhilfeprogramme von JTAG, die gleichwertigen Zugang mit der Beseitigen-Hardware auf dem Span mit Standardproduktionschips zur Verfügung stellen. Das Verwenden von Standardchips statt kundenspezifischer Versionen des Bandes macht die Technologie allgegenwärtige und niedrige Kosten, und beseitigt die meisten Unterschiede zwischen der Entwicklung und den Laufzeitumgebungen. In diesem allgemeinen Fall ist der Begriff des integrierten Emulatoren eine falsche Bezeichnung manchmal verwirrend so, weil Wetteifer nicht mehr beteiligt wird.

Eingebettete Systeme werfen spezielle Probleme für einen Programmierer auf, weil sie gewöhnlich an Tastaturen, Monitoren, Laufwerken und anderen Benutzerschnittstellen Mangel haben, die auf Computern da sind. Diese Mängel machen Softwarebeseitigen-Werkzeuge im Stromkreis notwendig für viele allgemeine Entwicklungsaufgaben.

Wetteifer im Stromkreis kann sich auch auf den Gebrauch des Hardware-Wetteifers beziehen, wenn der Emulator in ein System (nicht immer eingebettet) im Platz noch eingesteckt wird, um gebauter Span (nicht immer ein Verarbeiter) zu sein. Diese integrierten Emulatoren stellen eine Weise zur Verfügung, das System mit "lebenden" Daten zu führen, während sie noch relativ gute Beseitigen-Fähigkeiten erlauben. Es kann nützlich sein, das mit einer auf Unternehmensservern manchmal verwendeten Untersuchung im Ziel (ITP) zu vergleichen.

Funktion

Ein integrierter Emulator stellt ein Fenster ins eingebettete System zur Verfügung. Der Programmierer verwendet den Emulator, um Programme ins eingebettete System zu laden, sie, Schritt durch sie langsam, und Ansicht und durch die Software des Systems verwendete Änderungsdaten zu führen.

Ein "Emulator" bekommt seinen Namen, weil er wetteifert (imitiert) die in einer Prozession gehende Haupteinheit des Computers des eingebetteten Systems. Traditionell hatte es einen Stecker, der in die Steckdose einfügt, wohin der Zentraleinheitsspan normalerweise gelegt würde. Modernste Systeme verwenden die Zielsystemzentraleinheit direkt mit dem speziellen JTAG-basierten Fehlersuchprogramm-Zugang. Die Emulierung mit dem Verarbeiter oder direktem JTAG Zugang dazu, lässt das EIS irgendetwas tun, was der Verarbeiter tun kann, aber unter der Kontrolle eines Softwareentwicklers.

EIS fügt ein Terminal oder PC zum eingebetteten System bei. Das Terminal oder der PC stellen eine interaktive Benutzerschnittstelle für den Programmierer zur Verfügung, um das eingebettete System zu untersuchen und zu kontrollieren. Zum Beispiel ist es alltäglich, um eine Quelle Niveau-Testhilfeprogramm mit einer grafischen Fenstertechnik-Schnittstelle codieren zu lassen, die durch einen JTAG Adapter ("Emulator") zu einem eingebetteten Zielsystem kommuniziert, das keine grafische Benutzerschnittstelle hat.

Namentlich, wenn ihr Programm scheitert, werden am meisten eingebettete Systeme einfach träge Klumpen der nichtfungierenden Elektronik. Eingebettete Systeme haben häufig an grundlegenden Funktionen Mangel, Zeichen des Softwaremisserfolgs wie ein MMU zu entdecken, um Speicherzugriffsfehler zu fangen. Ohne ein EIS kann die Entwicklung von eingebetteten Systemen äußerst schwierig sein, weil es gewöhnlich keine Weise gibt zu erzählen, was schief gegangen ist. Mit einem EIS kann der Programmierer gewöhnlich Stücke des Codes prüfen, dann die Schuld zu einer besonderen Abteilung des Codes isolieren, und dann den Mangel-Code untersuchen und es umschreiben, um das Problem zu beheben.

Im Gebrauch versorgt ein EIS den Programmierer mit Ausführungsunterbrechungspunkten, Speicheranzeige und Überwachung und Kontrolle des Eingangs/Produktion. Außer dem kann das EIS programmiert werden, um nach jeder Reihe zu suchen, Kriterien zu vergleichen, um an in einem Versuch Pause zu machen, den Ursprung des Misserfolgs zu identifizieren.

Einige neue EIS-Entwicklungen (Mikrochip MPLAB ECHTES EIS) verwerten Mittel, die auf der verfertigten Version des Mikrokontrolleurs für den Wetteifer und die die Fehler beseitigenden Eigenschaften zur Verfügung gestellt sind, anstatt eine andere spezielle Wetteifer-Version (d. h. Band) vom Zielmikrokontrolleur zu brauchen. Wenn auch es eine rentable Methode ist, da die EIS-Einheit nur den Wetteifer führt, anstatt wirklich mit dem Zielmikrokontrolleur wettzueifern, müssen Umtausche gemacht werden, um die Preise niedrig in der Fertigungszeit zu behalten, stellen Sie noch genug Wetteifer-Eigenschaften für (relativ wenige) Wetteifer-Anwendungen zur Verfügung.

Vorteile

Eigentlich haben alle eingebetteten Systeme ein Hardware-Element und ein Softwareelement, die getrennt, aber dicht voneinander abhängig sind. Das EIS erlaubt dem Softwareelement, geführt und auf der wirklichen Hardware geprüft zu werden, auf der es laufen soll, aber noch Programmierer-Bequemlichkeiten erlaubt zu helfen, fehlerhaften Code, wie "das Quellniveau-Beseitigen" zu isolieren (der das Programm auf die Weise zeigt, hat der Programmierer es geschrieben) und einzelnes Treten (der den Programmierer das Programm führen lässt, das schrittweise ist, um Fehler zu finden).

Der grösste Teil des EISES besteht aus einer Adapter-Einheit, die zwischen dem EIS-Gastgeber-Computer und dem zu prüfenden System sitzt. Ein Kopfball und Kabelzusammenbau verbinden den Adapter mit einer Steckdose, wo die wirkliche Zentraleinheit oder der Mikrokontrolleur innerhalb des eingebetteten Systems steigen. Neues EIS ermöglicht einem Programmierer, auf den Fehlersuchprogramm-Stromkreis auf dem Span zuzugreifen, der in die Zentraleinheit über JTAG oder BDM integriert wird (Hintergrundfehlersuchprogramm-Weise), um bei der Software eines eingebetteten Systems die Fehler zu beseitigen. Diese Systeme verwenden häufig eine Standardversion des Zentraleinheitsspans, und können einfach einem Fehlersuchprogramm-Hafen auf einem Produktionssystem anhaften. Sie werden manchmal Testhilfeprogramme im Stromkreis oder ICDs genannt, um die Tatsache zu unterscheiden, dass sie die Funktionalität der Zentraleinheit nicht wiederholen, aber stattdessen eine bereits vorhandene, normale Zentraleinheit kontrollieren. Da die Zentraleinheit nicht ersetzt werden muss, können sie auf Produktionseinheiten funktionieren, wo die Zentraleinheit darin verlötet wird und nicht ersetzt werden kann. Ein Beispiel ist Mikrochip-Technologie-ICD, der mit den meisten neuen FOTO-Mikrokontrolleuren verbindet, um bei Software durch die Befestigung dem Hafen der Programmierung/Beseitigens im Stromkreis des FOTOS die Fehler zu beseitigen. Auf x86 Pentiums wird eine spezielle 'Untersuchungsweise' durch das EIS verwendet, um im Beseitigen zu helfen.

Das EIS eifert mit der Zentraleinheit wett. Aus dem Gesichtspunkt des Systems ließ es einen echten Verarbeiter eignen, aber aus dem Gesichtspunkt des Programmierers ist das System unter dem Test unter der vollen Kontrolle, dem Entwickler erlaubend, Code direkt zu laden, die Fehler zu beseitigen und ihn zu prüfen.

Die meisten Gastgeber-Systeme sind gewöhnliche kommerzielle Computer, die zur Zentraleinheit ohne Beziehung sind, die für die Entwicklung - zum Beispiel verwendet ist, ein Linux PC könnte verwendet werden, um Software für ein System mit Freescale 68HC11 Span zu entwickeln, der selbst Linux nicht führen konnte.

Der Programmierer editiert gewöhnlich und kompiliert den Code des eingebetteten Systems auf dem Gastgeber-System ebenso. Das Gastgeber-System wird spezielle Bearbeiter haben, die rechtskräftigen Code für das eingebettete System erzeugen. Diese werden böse Bearbeiter oder böse Monteure genannt.

Referenzen

Siehe auch

  • Joint Test Action Group
  • Hintergrundfehlersuchprogramm-Weise verbindet
  • Hardware-geholfene Virtualisierung
  • SoftICE

Links


Bürger für eine kanadische Republik / John Stossel
Impressum & Datenschutz