mikrocontroller.net

Forum: Projekte & Code Virtuelle Prozessor-Hardware ('MaSoCist')


Autor: Martin S. (strubi)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Moin,

ich habe mal die Tage bei github einen frischen OpenSource-Branch des 
"Masocisten" hochgeladen. Ist sowohl für HDL-Spezis wie auch für 
uC-Hacker was dabei:

https://github.com/hackfin/MaSoCist

Die groben Details, was das Ding tut:

- msp430 kompatiblen neo430-Kern interaktiv simulieren (Docker demo)
- Verschiedene SoC Konfigurationen (CPU-Kern, Peripherie) verwalten
- VHDL-Hardware-Designs, C-Header und Dokumentation automatisch bauen
- Komplette CPU und Peripherie zyklengenau virtualisieren und debuggen, 
z.B. wie hier: Youtube-Video "ZPUng virtual example session"

Da eine Menge Tools nötig sind, habe ich das ganze in einen 
Docker-Container gepackt, die Anleitung findet sich im README.md (die 
Doku ist bisher nur Englisch, in der Annahme, dass das jeder kann).

Wenn nix schiefgeht, wird die CPU und das Programm gebaut, und man kann 
per Terminal (minicom) mit dem virtuellen UART der neo430 quatschen.
Da immer alles frisch ausgecheckt und gebaut wird, kann es auch mal 
sein, dass es nicht hinhaut. Vielleicht hat ja jemand Lust, sich mit der 
CI zu beschäftigen :-)

Grüsse,

- Strubi

Autor: c-hater (Gast)
Datum:

Bewertung
-8 lesenswert
nicht lesenswert
Martin S. schrieb:

> Da immer alles frisch ausgecheckt und gebaut wird, kann es auch mal
> sein, dass es nicht hinhaut.

Vielleicht lernst du erst einmal, wie man ein Versionsverwaltungssystem 
richtig benutzt?

Autor: Martin S. (strubi)
Datum:

Bewertung
3 lesenswert
nicht lesenswert
c-hater schrieb:
> Martin S. schrieb:
>
>> Da immer alles frisch ausgecheckt und gebaut wird, kann es auch mal
>> sein, dass es nicht hinhaut.
>
> Vielleicht lernst du erst einmal, wie man ein Versionsverwaltungssystem
> richtig benutzt?

Normalerweise antworte ich auf kein Hater-Geunke.

Der Vollständigkeit halber, für diejenigen, die auch Ahnung davon haben:
Es sind third-party Git-Submodule dabei, wer es will, kann für sich eine 
fixe Revision auschecken. Meine CI-Strategie will das nicht.

Autor: M. W. (elektrowagi78) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Angeschaut und nicht gecheckt. Komme nicht damit klar.

Warum nur ist es so schwer, einmal eine klare Anleitung zu liefern,

WAS das ist
WOFÜR es gedacht ist
WAS man braucht?
WIE man es laden muss?
WIE man es erzeugt?
WIE man es benutzt?

Wenn ich so eine DOku zu einem gelieferten System abgeben würde, bekäme 
ich weder Geld noch einen weiteren Auftrag.

Autor: wtf? (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du damit nicht klar kommst liegt das eher an dir als an dem 
Projekt, das Projekt ist doch wahrlich hinreichend dokumentiert.

Wenn du jemanden zum Haendchen halten brauchst musst du halt bezahlen 
...

Ich persoenlich halte nicht viel von solchen 'Lockvogelangeboten' bei 
denen bei Gefallen bzw kommerzieller Verwendung Geld abgedrueckt werden 
muss, aber mangelnde Dokumentation kann man hier wahrlich nicht 
vorwerfen.

Autor: nokianer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe es mal ueber die tage ausprobiert. ok, nicht tiefer damit 
beschaeftigt aber hat auf anhieb geklappt in docker, laeuft nur sehr 
langsam.
@elektrowagi78: verstehe dein problem nicht, dir ist schon klar was open 
source bedeutet?
Und was isr daran lockvogel angebot? habe bisher kein catch gefunden. 
man kann das design frei verwenden solange man sich an die licensen 
haelt.

Autor: Schniegel (Gast)
Datum:

Bewertung
-5 lesenswert
nicht lesenswert
> ... dir ist schon klar was open source bedeutet?

Das weiß doch jeder. Kostet nichts - taugt nichts.

Autor: W.S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
M. W. schrieb:
> WAS das ist

Eine Art von Spielzeug.

> WOFÜR es gedacht ist

Zum Spielen.

> WAS man braucht?

Linux. Und diverse Eval-Boards.

> WIE man es laden muss?

Von Linux auf ein spezielles Evalboard.

> WIE man es erzeugt?

Mit den Tools von Xilinx, oder Lattice, oder mit Synplify pro. 
Vermutlich.

> WIE man es benutzt?

Von BENUTZEN ist hier nicht die Rede. Es ist wirklich nur ein sehr 
spezielles Spielzeug für einen eher kleinen Kreis von Leuten, die in 
exakt DIESER Materie bereits drinstehen und alle Zutaten bereits haben.

Zitat:
The MaSoCist distribution enables you to quickly design, maintain, 
document and automatically create a family of Soft core featured System 
on Chip solutions on various FPGA architectures. It is relying heavily 
on the Linux kernel config utility and the section5 device description 
XML language.

note:
The full MaSoCist development environment is supported for Unix 
operating systems only

Das Projekt hat als Dokumentation einige XML-Dateien. Dort werden über 
diverse Details Bemerkungen gemacht, die als notwendig erachtet wurden. 
Das, was als Einführung dient, hab ich oben zitiert.

Wahrscheinlich wäre es doch besser gewesen, am Anfang mal ganz klar eine 
Ansage zu treffen. So in dem Stil:

"Dieses Projekt richtet sich an erfahrene Ingenieure mit gründlichen 
Kenntnissen von:
(hier die Liste der notwendigen Vorbedingungen hinein)
und es beinhaltet die Simulation einer MSP430-artigen Architektur auf 
diversen Eval-Boards von (hier die Liste rein), zu dem Zwecke, daß man 
über eine serielle Verbindung zwischen Linux-PC und Evalboard mit dem 
Quasi-MSP430 kommunizieren kann."


W.S.

Autor: Strubi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Scheint ja das grosse Rätselraten ausgebrochen zu sein.
Leider ist auch der Herr W.S. komplett auf dem Holzweg, ein Spielzeug 
ist es wahrlich nicht, wie einige Referenzdesigns wie z.B. eine 
MJPEG-Streaming-Kamera demonstrieren dürften.

Was es ist, und wie man es benutzt ist m.E. hinreichend dokumentiert.
Erwarte natürlich, dass die User mit Docker und gängigen Basics vertraut 
sind und "read the source" praktizieren.
Und ja, es gelten Opensource-Prinzipien. Ich komme mit der Offenlegung a 
priori den entsprechenden Verpflichtungen (auch in Bezug auf den 'third 
party' neo430) nach, dazu kommt die Motivation, dass das System einer 
gegenüber den üblichen QSys/Vivado (u.a. Klickitools) gesteigerten 
Nachhaltigkeit genügen soll, d.h. so ein SoC auch noch in 10 Jahren für 
verschiedene Architekturen generierbar ist.
Gab mal so'n Sprichwort: Nem geschenkten Gaul schaut man nicht ins Maul.
In dem Sinne: Wenn ihr maulen/spielen wollt, gibt es genügend andere, 
weniger komplexe Projekte.

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]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [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.

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