Autor Thema: Logisim FPGA  (Gelesen 2990 mal)

MasterLee

  • Beiträge: 49
    • Profil anzeigen
Gespeichert
« am: 15. January 2013, 22:33 »
Versuche gerade einen FPGA in Logisim zu realisieren. Besonders weit bin ich noch nicht aber immerhin kann ich schon einen Addierer realisieren. Das Design jeder Zelle ist relativ einfach alle vier Eingangsbit bilden einen Index zum nachschlagen in einem Look-Up-Table von dem es für jedem der 4 Ausgänge einen gibt. Für kleine Schaltungen scheint das OK allerdings befürchte ich das es Später mit dem Routing schwierig wird. Hat hier jemand schon mal ähnliches versucht?

Jidder

  • Administrator
  • Beiträge: 1 625
    • Profil anzeigen
Gespeichert
« Antwort #1 am: 17. January 2013, 01:50 »
Einen FPGA hab ich noch nicht versucht zu bauen, aber ich nehme mal an, dass du später viele von diesen qlut-Komponenten in der Simulation haben willst. Je nachdem wie weit du das später skalieren willst, kannst du große Performanceprobleme bekommen.

Ich habe vor einer Weile mal versucht eine Schaltung zu bauen, die das Mandelbrotfraktal in 32x32-Auflösung parallel berechnet und auf der LED-Matrix darstellt. Zu jedem Pixel gab es eine kleine Schaltung, die dann die Iteration durchgeführt hat. Dazu hab ich 32 dieser Iteratoren zu einer Row-Schaltung zusammengefasst und dann 32 dieser Row-Schaltungen in meiner Hauptschaltung gehabt. Abgesehen davon, dass die Iteration (vermutlich) keine korrekten Ergebnisse geliefert hat, dauert es ziemlich lange die Datei zu laden und die Simulation scheint auch extrem langsam zu sein. Vermutlich war mein Design besonders schlecht, aber vielleicht ist Logisim auch einfach nicht für so große Schaltungen gedacht.

Ich hab die Datei mal angehängt, falls du dir selbst ein Bild davon machen willst. Aber sei gewarnt: Das dauert relativ lange zu laden (>= 1 Min) und ich weiß nicht mehr genau wie das Teil eigentlich funktionieren soll. (Aber ich erinnere mich noch, dass das Zahlenformat 4.12 signed fixed point war, falls jemand versuchen will die Schaltung nachzuvollziehen.)
« Letzte Änderung: 17. January 2013, 01:58 von Jidder »
Dieser Text wird unter jedem Beitrag angezeigt.

erik.vikinger

  • Beiträge: 1 277
    • Profil anzeigen
Gespeichert
« Antwort #2 am: 18. January 2013, 14:42 »
Hallo,


eine FPGA virtuell nachzubauen ist IMHO schon ein ziemlich umfangreiches Unterfangen. Das schwierige dabei sind aber nicht die einzelnen Logik-Zellen sondern eben das Routing dazwischen (das belegt wimre auch in dem Bitstreams für die FPGAs den meisten Platz). In einem simulierten FPGA (ohne Signallaufzeiten) könnte man vielleicht der Einfachheit halber an jeden Eingang einer Logik-Zelle einen großen MUX anschließen der sich aus allen Ausgängen aller Logik-Zellen bedienen kann, aber in realen FPGAs geht das natürlich nicht. Da werden die Signale durch komplexe Routing-Netze durchgeschaltet (so ähnlich wie das alte analoge Telefonnetz nur viel stärker vernetzt und verwoben).


Grüße
Erik
Reality is that which, when you stop believing in it, doesn't go away.

 

Einloggen