Forum: Digitale Signalverarbeitung / DSP / Machine Learning Unterschied SIL PIL MIL HIL mit MATLAB Simulink


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von asdf (Gast)


Lesenswert?

Ich habe jetzt schon öfter gehört wie Leute darüber diskutierten, aber 
auf Nachfrage konnte niemand klar die Grenze ziehen bzw. es mir 
verständlich machen.

Bisher haben wir einen HIL genutzt, um unser Steuergerät zu testen, 
bevor die anderen Komponenten des Gesamtsystems verfügbar waren. Dabei 
kam es auch schon vor, dass die Anforderungen für den HIL anders 
interpretiert burden, als später in der anderen Komponente umgesetzt.

Als PIL würde ich einen Unit Test verstehen, wo der Debugger die 
einzelnen SW Module auf den Zielprozessor überträgt und schaut, ob der 
jeweilige Input zu dem erwarteten Output/Resultat führt.

Was ist aber nun MIL und SIL? Andere Wörter für PIL und HIL? Ich würde 
mich freuen, wenn jemand das klar abgrenzen und erläutern könnte.

von Strubi (Gast)


Lesenswert?

Die Abkürzung "IL" ist dir ja klar, ne?
"In the loop" heisst ja nur, dass man das erstgenannte Ding in die 
Testschleife steckt und gegen eine bekannte funktionierende Referenz 
evaluiert.
Also:

H: Hardware generell
P: Prozessor
M: Modell
S: Software

Unter PIL verstehe ich, dass a priori eine Prozessorarchitektur in den 
Test geschickt wird. In der Praxis ist's dann so, dass bereits 
verifizierte SW nochmal wie du sagst im schrittweisen Modus auf der 
Ziel-Hardware regress-getestet wird.
Wie das zu erfolgen hat, das definiert jeder so auf seine Weise, je nach 
Anwendung.

Und SIL kann auch "Safety integrity level" bedeuten :-)

von Martin K. (mkmannheim) Benutzerseite


Lesenswert?

Strubi schrieb:
> Unter PIL verstehe ich, dass a priori eine Prozessorarchitektur in den
> Test geschickt wird. In der Praxis ist's dann so, dass bereits
> verifizierte SW nochmal wie du sagst im schrittweisen Modus auf der
> Ziel-Hardware regress-getestet wird.

Wie macht ihr das genau?

von Walter T. (nicolas)


Lesenswert?

Strubi schrieb:
> Unter PIL verstehe ich, dass a priori eine Prozessorarchitektur in den
> Test geschickt wird.

Nicht unbedingt - eher wird eine Softwarekomponente (Modultest) oder 
eine Steuergerätesoftware (Integrationstest) in den Test gesteckt. Das 
trifft bis auf MIL auch auf alle anderen "IL"s zu.

Die Steigerung zwischen MIL -> SIL -> PIL -> HIL steckt darin, welche 
Komponenten mitgetestet werden:

MIL: Nur Reglerbeschreibung in Simu- oder TargetLink (deckt Fehler in 
der Regelstrategie auf)

SIL: Reglerbeschreibung und erzeugter C-Quelltext (deckt zusätzlich 
Fehler in der Codeerzeugung auf)

PIL: Reglerbeschreibung, erzeugter C-Quelltext und Kompilat (deckt 
zusätzlich die Auswirkungen von Compilerfehlern [die bei den 
Automotive-Plattformen weitaus häufiger als für weitverbreitete 
Plattformen wie x86, ARM, AVR sind] auf)

HIL:  Reglerbeschreibung, erzeugter C-Quelltext, Kompilat und Peripherie 
(deckt zusätzlich Fehler im Zusammenspiel mit Bussen, I/O etc. auf)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.