Forum: FPGA, VHDL & Co. pAVR Core für FPGA


von Axel Meineke (Gast)


Lesenswert?

Hallo.
Ich habe mal wieder einen Blick auf die Seite opencores.org geworfen.
Dort habe ich den Core pAVR gefunden. Nun würde mich interessieren, ob
jemand schon mal getestet hat, wie der zu händeln ist. Ob er mit dem
hier so gut beschriebenen GCC Compiler zu programmieren íst. Ach ja,
wenn ihr erfahrungen mit µC in FPGA´s (wie zum Beispiel PicoBlaze etc)
habt, würde ich mich freuen mal eure erfahrungen damit zu hören. Ich
wollte mich demnächst auch mal dransetzen.

von Axel Meineke (Gast)


Lesenswert?

Hab schon überlegt ob ich das lieber in der µC Ecke poste, aber ich
denke mal die jungs schauen hier auch mal vorbei...

von chippy (Gast)


Lesenswert?

Würde ich nicht sagen.

Wie ich bis vor kurzem auch, schätze ich mal das diejenigen die
microcontroller programmieren bei programierbarer logik eher an GAL und
PAL bausteine denken. (Das war mal... 10-gatter auf einen baustein.) bis
vor kurzem dachte ich FPGA sei FCPGA ( flip chip pin grid array, also
eine verpackungsart für chips ) bis ich mal drauf gekommen bin das
damit programmierbare logik gemeint ist und grössenordnungen von
einigen millionen gates möglich sind ist vieeeel zeit vergangen.

Gibt es überhaupt irgendwelche vorzüge einen µC zu nutzen anstelle von
einem FPGA oder CPLD ? der kostenfaktor kann es ja wohl nicht sein.
cpld's mit >1000 gates gibt's schon < 2,- €

von Axel Meineke (Gast)


Lesenswert?

Nun ich denke mal einen integrierten AD/Wandler hat man bei einem FPGA
nicht zur verfügung, was die AVR und Pic schon integriert haben.
Hast du denn schon mal nen µC in ein FPGA integriert???

von Jochen Pernsteiner (Gast)


Lesenswert?

>Gibt es überhaupt irgendwelche vorzüge einen µC zu nutzen anstelle von
>einem FPGA oder CPLD ? der kostenfaktor kann es ja wohl nicht sein.

Das glaube ich aber schon. Kommt natürlich auch darauf an wieviele
Millionen Du zu kaufen bereit bist.
Um einen halbwegs passablen µC auf einen FPGA zu bringen, brauchst Du
schon einen mehr oder weniger großen.

>cpld's mit >1000 gates gibt's schon < 2,- €

Schon mal nachgeschaut was diese Gatter-Angabe bei CPLDs bedeutet?
Das ist irgendeine Zahl, die so gut wie gar nichts aussagt. Die haben
sich die Hersteller ausgedacht damit sie eine Zahl haben um ihre Chips

miteinander zu vergleichen. Ausrechnen tut sie jeder anders. Aber schön
groß ist sie, das macht sie gut auf bunten Werbebroschüren.

Was wirklich interessant ist, ist die Anzahl der Flip-Flops, und die
ist bei deinem 2€-CPLD bestimmt nicht größer als 32.

Damit kannst Du gerade mal 4 8-Bit-Register basteln.
Nicht viel, was?


Jochen

von spartakus (Gast)


Lesenswert?

Nun muss ich mal eine DAU frage stellen. Ist es bei diesen Intigrierten
Microcontrollern so, das ich z.B. mit dem GCC ein c Programm schreibe,
ich es dann in Assambler übersetzen lasse und diesen Code dann mit
hilfe des Tools pAVR (oder auch anderer Cores) in den passenden
VHDL-Code umwandelt? Diesen Code PAcke ich dann in mein im Webpack
aufgebautes Programm ???
Oder habe ich da noch was falsch verstanden?

von Hagen (Gast)


Lesenswert?

Hast du schon mal ein C Program für einen stinknormalen AVR programmiert
? Wenn ja, so wie du dort vorgehst kannst du auf im bestfalle mit pAVR
vorgehen. Nur das du eben zuerst in VHDL etc. den pAVR Core erzeugst,
ihn in den FPGA lädtst und danach kannst du diesen programmierten Chip
als echte AVR Kopie betrachten, im Bestfalle wohlgemerkt. Denn wenn du
dir mal pAVR genauer anschaust so ist es ein ziemlich abgespeckter
Universal-AVR. Das Universal bezieht sich auf den AVR Kern, sprich dem
Rechenwerk das größtenteils kompatibel zu den heutigen AVR's ist. Der
ganze wichtige Rest, wie die viele Timer, Brownout, PWM, ADC's, Analog
Comparator, Watchdog, Interrupts, FLASH Befehle, EEPROM fehlt komplett
im pAVR. Es ist also noch ne Menge Arbeit um pAVR wirklich kompatibel
zu bekommmen. Aber gerade bei diese nötigen Ausbau-Arbeiten stößt du an
die Grenzen. Den der pAVR VHDL ist nicht leicht zu synthetisieren und
jede kleine Erweiterung vesaut das komplette Timing.

Damit wird der Vorteil ersichtlich: benutzt du einen echten AVR dann
ist der fertig, getestet und funktionsfähig. Du musst nur noch deine
Software schreiben. Benutzt du einen FPGA mit AVR IP Core so musst du
erstmal das hinbekommmen. Das kann schonmal mehrere Monate Zeit
rauben.

Die ganzen IP Codes verschiedener MCU's sind zwar schön und gut.
Schaut man sie sich näher an dann sind es meistens abgespeckte
Versionen mit mehr akademischen Anspruch, vonwegens -> es ist machbar.

Sinn machen FPGA's IP Cores die komplett neue Design Strategien
verfolgen, zb. hochspezialisierte MCU's die hochparallele Berchnungen
durchführen können. Sprich Sinn macht auf FPGAs alles wofür es keine
billigen Fertig-MCU's gibt. Alles andere ist akademischer Natur, Hobby
und Spaß.

Gruß hagen

von spartakus (Gast)


Lesenswert?

Hey...TOP. Danke dir. Das war wirklich interessant. Ich denke ich werde
es mal ausprobieren um mir selbst ein Bild davon zu machen, aber dann
werde ich wohl erstmal bei meinen kleinen Pic´s bleiben. Aber
interessant war es... Danke

von Jürgen Schuhmacher (Gast)


Lesenswert?

Kennt jemand eine Alternative zu pAVR?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.