holoso: Python to Verilog

OP #8087599
Lesenswert?
• ▲
▼

das sieht interessant aus:

https://github.com/Zubax/holoso

Konvertier Python zu verilog. Aber, aber es wird ein ZISC (Zero Instruction Set Computer) gebaut der dann was macht. Obwohl es gibt Beispiel für UART und PWM die womöglich kein ZISC verwenden?

Spannend ist auch zu sehen das .claude/skills Verzeichnis, alles vorbereitet für Claude/Code Integration!

(Firma: Zubax Robotics) #8096568
Lesenswert?
• ▲
▼

Hallo Antti, ich bin der Entwickler von Holoso. Danke fürs Erwähnen!

Auch die UART- und PWM-Beispiele verwenden dasselbe ZISC-Backend. Für jeden Kernel entsteht ein spezialisierter Datenpfad mit statisch geplantem Ablauf; hier läuft also kein Python auf einer allgemeinen Softcore-CPU. Ein Aufruf von tick() entspricht einer Transaktion, nicht zwangsläufig einem FPGA-Takt.

Die beiden Beispiele zeigen die Synthese zustandsbehafteter Funktionen. Der eigentliche Schwerpunkt liegt auf numerischen DSP- und Regelungsaufgaben: Gemeinsam genutzte Rechenwerke können dort Fläche sparen, auf Kosten des Durchsatzes.

Gibt es einen kleinen DSP- oder Regelungsalgorithmus, dessen Umsetzung du gerne vergleichen würdest? Mit einem Ziel-FPGA und der benötigten Abtastrate ließe sich daraus ein aussagekräftiger Versuch machen.

(Firma: Zubax Robotics) #8097166
Lesenswert?
• ▲
▼

Unter dem UART steckt keine fest vorgegebene ZISC-CPU, die mit einem Software-UART beschäftigt wird. Holoso erzeugt Datenpfad und Steuerlogik speziell für den jeweiligen Python-Kernel. In diesem Beispiel entsteht daraus ein dedizierter UART-Block. Andere Logik im FPGA läuft unabhängig davon parallel.

Dieser Block implementiert nur den UART. Ob er „zu 100 % ausgelastet“ ist, hängt aber davon ab, wie viele Taktzyklen ein tick()-Aufruf benötigt und wie oft man ihn aufruft. Es gibt hier keinen Universalprozessor, dessen freie Rechenkapazität man dafür aufgibt.

Das UART-Beispiel soll vor allem die Synthese zustandsbehafteter Logik zeigen. Holoso zielt hauptsächlich auf numerische DSP- und Regelungsalgorithmen. Dort kann die Wiederverwendung derselben Rechenoperatoren für mehrere Rechenschritte Fläche sparen, auf Kosten des Durchsatzes.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren