Hallo, ich habe bisher nur mit dem Motorola 68HC11 gearbeitet. Dort war es so, dass man Daten auf die Parallel-Ports ausgab, indem man in bestimmte Port-Register schrieb. Wie läuft das beim MicroBlaze-Softcore? Wie heißen die entsprechenden Register? Werde aus der Beschreibung nicht schlau. Dort ist nur von einem Bus-Interface die Rede. Gibt es keine Parallel-Ports? Vielleicht kann mich hier jemand aufklären. Gruß Beginner
Ja die hab ich hier, werd aber wie gesagt nicht daraus schlau. Dort sind nirgendwo Register für die Datenausgabe erwähnt. Wenn du dich so gut auskennst könntest du es mir auch einfach sagen. Danke.
Denke mal die GPIO-Ports (Referenzdesign) sind dafür zuständig. Aber wie spreche ich die an? Wie heißen die Register?
Du baust dir die Register selber also in VHDL oder vielleicht ist in der uB-Entwicklungsumgebung schon ein Klicki-Kacki Schalterchen für sowas da. Das Businterface ist im FPGA intern, also Adressleitungen und Datenbus. Mit VHDL oder wie auch immer schaltest Du deine register an den erwähnten Bus. Diese Register sind dann mit den FPGA-Pins verbunden. Du kannst selber definieren wie diese Pins sich verhalten (INput/Output etc) in dem du die in dein design einbaust (VHDL). Wahrscheinlich bist Du auf dem falschen Dampfer, weil Dir jemand von FPGA programmieren erzählt. Das ist aber kein programmieren, sondern Hardwareentwicklung. Schau mal ins EDK und die Demo-videos auf www.xilinx.com. Dann wird es dann klarer. Du musst dir das System erst bauen, das du programmieren kannst. Entweder in VHDL (nicht easy!) oder wie erwähnt kannst Du dir in der EDK Software vielleicht alles zusammen klickern. Das EDK kost aber Geld.
Hallo, mir war schon klar dass man FPGAs nicht programmieren kann. Allerdings dachte ich, dass durch implementieren des Softcores auch das ganze "Drumherum", z.B. die I/O-Register mit implementiert werden. Wenn ich deinen Post richtig verstehe ist man da aber sehr flexibel und legt das selbst fest. Danke.
Sorry eigenltich kenne ich mich damit überhaupt nicht aus. habe es mir aber mal durchgelesen und hatte den subjektiven Eindruck das es dort gut erklärt war.
Kannst du mir sagen wo in der Doku erklärt wird dass man die Register für I/O selbst basteln muss?
Es ist ein FPGA-Softcore, damit ist es selbstverständlich, das man I/O Register nach belieben hinzufügen kann (muß). Explizit habe ich diesen Satz in der Doku nicht gefunden, es ist für FPGA-Entwickler selbstverständlich das es so ist. Eventuell reicht für das selber bauen, der entsprechende Button im Platform Studio/EDK, und der VHDL/Verilig-Code fürs register wird automatisch erzeeugt. Da kenn ich mich nicht so aus, ich schreibs mir halt in VHDL. Dann musst du aber immer noch sagen, das dieses register an den FPGA-Pins AA2,J3 oder wie auch immer hängen muß. Das macht man nicht in der Microblaze-Umgebung (EDK) sondern mit den FPGA-tools (ISE). Mikroblaze heisst nun mal einen FPGA mit CPU zu bauen, nicht eine Universal-CPU zu programmieren. Auf www.Xilinx.com gibt es Videos (Demo) die zeigen wie man ein System mit uB zusammenklackert. Schau dir das mal an.
Mit dem GPIO-Ports liegst du schon ganz richtig. Das module heißt OPB General Purpose IO. Im PDF für das Modul ist beschrieben wie die Register heißen. Wenn du den Wizard benutzt um ein neues Projekt zu erstellen, einfach mal den GPIO Core hinzufügen. danach das Häckchen bei Peripheral selftest setzen. In deinem Project ist jetzt eine Beispiel C Code der die Ports Blinken läßt. im #include "xparameters.h" sind jetzt die Basisadressen und im #include "xgpio.h" sind fertige Routinen um die Ports zu benutzen da braucht man sich keine Gedangen mehr zu machen. Wenn man jetzt im Core die Parameter ändert z.B. andere Basis Adr ändert sich das xparameters.h automatisch mit. Das ist ganz Praktisch. Die Pins werden auch im EDK einegegben. Das EDK ist eine alternative Oberfläche und benutzt die ISE Programme wie das IMPACT zum Programmieren. Ich wollte damit sagen mann braucht Die ISE Oberfläch nicht mehr bei EDK Projekten.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.