INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Dieses Thema hat akzeptierte Lösungen:

Probleme beim erzeugen der Intermediate Files



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

28.03.2014, 22:09
Beitrag #1

Boggy Offline
LVF-Neueinsteiger


Beiträge: 2
Registriert seit: Mar 2014

Myrio 2013
2014
DE



Probleme beim erzeugen der Intermediate Files
Hi,

Ich habe gerade mein Abitur gemacht und bin mit Hochtouren dabei mein Projekt für den Jugend-Forscht-Wettbewerb fertigzustellen.
Allerdings habe ich so meine Probleme mit dem Compilieren der FPGA-VIs.

Zu meinem Projekt:
Ich habe mit zwei Klassenkameraden letztes Jahr angefangen ein kugelförmiges Display zu bauen. Zuerst auf Basis eines normalen FPGA-Dev.Boards und Arduinos und sind dann dieses Jahr auf einen myRio umgestiegen.
Bis zum Regionalwettbewerb sind wir dann soweit gekommen: http://youtu.be/wyryOee_t4o (nicht mein Video, hab keine Ahnung wie der Name zustande gekommen ist Blink)
Das entwickeln mit LabView habe ich mir dann im Hauruck verfahren selber beigebracht, dementsprechend entspricht der Code nicht bedingt den Best-Practices Blush . Tipps sind gern gesehen...

Theoretisch sind jetzt auch alle VIs fertig um das Display in Betrieb zu nehmen, die FPGA-VIs sind auch schon auf dem PC simuliert und verhalten sich so wie sie sollen.
Wenn ich jetzt allerdings versuche die VIs zu kompillieren bekomme ich beim Erzeugen der Intermediate Files eine Fehlermeldung das mein PC zu wenig Speicher hat.
Ich vermute das es einfach daran liegt, dass das Projekt einfach zu komlex/verpfuscht ist sodas unnötig Speicher beim erzeugen der Dateien verbraucht wird.

Wär cool wenn ihr mir helfen könntet.

Grüße Boggy


Angehängte Datei(en)
0.0 .zip  Kugeldisplay.zip (Größe: 1,48 MB / Downloads: 207)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
29.03.2014, 10:25 (Dieser Beitrag wurde zuletzt bearbeitet: 29.03.2014 10:41 von GerdW.)
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.465
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Probleme beim erzeugen der Intermediate Files
Hallo Boggy,

nicht schlecht…

Zitat:Wenn ich jetzt allerdings versuche die VIs zu kompillieren bekomme ich beim Erzeugen der Intermediate Files eine Fehlermeldung das mein PC zu wenig Speicher hat.
Quick&Dirty: Neueren/besseren PC verwenden? Speicher nachrüsten?

Ansonsten wirklich erst noch etwas aufräumen! Genereller Tipp: AutoCleanup-Tool oder Ctrl-U…
Spezielle Tipps:
TicksProUmdrehung: Warum hast du eine endlos laufende Schleife innerhalb einer anderen endlos laufenden Schleife? Die äußere ist zwecklos…
Zustand.vi: Hier hast du zwei kleinere Loops innerhalb einer äußeren. Die zweite dieser kleinen Loops verwendet die selbe Stop-Bedingung wie die erste Loop und ist damit zwecklos: es funktioniert ohne diese zweite Loop genau gleich!
die drei CLK-VIs: hier der gleiche Unsinn mit endlos laufenden Schleifen innerhalb anderer endlos laufender Schleifen…
CLK.vi: wozu die Select-Funktion, wenn immer nur der TRUE-Case ausgewählt wird?
Blank.vi: Der Vergleich mit 4095 wird zweimal durchgeführt, einmal davon ließe sich sicherlich einsparen…
Main-FPGA: um die "einzelnen" Funktionen fehlt eine Schleife (nicht um die subVIs). Ansonsten wird "LED Power" etc. nur genau einmal zu Beginn der Ausführung aufgerufen, alle späteren Kommunikationsversuche vom RT-Host landen im Nirwana… Deine SIN1/2 müssen auch mit den genau einmal zu FPGA-Start eingelesenen Daten arbeiten - und zwar "ewig" aufgrund endlos laufender Schleifen!

Allgemein: THINK DATAFLOW!

Edit:
Das TicksProZustand in MainCPU ist ebenfalls eine Endlos-Schleife, die für Stillstand in MainCPU sorgt. THINK DATAFLOW!
"myRIO customized FPGA" ist schon ziemlich groß…
ExpandSortInsert ist sowohl ziemlich umständlich als auch buggy…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.03.2014, 12:48
Beitrag #3

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Probleme beim erzeugen der Intermediate Files

Akzeptierte Lösung

Hallo Boggy,

auch ich muss sagen, nicht schlecht!

Gerd hat ja schon viele Kleinigkeiten kritisiert, denen kann ich nur zustimmen. Ich nehme mal an, vieles stammt noch aus der Testphase (z.B. die unnötigen doppelten Loops).

Dein "kein Speicher" Problem kann ich leider nur bestätigen. Ich befürchte, der Tipp mit Speicher-Aufrüsten bringt da auch nicht viel, solange die Xilinx Tools unter Windows noch 32bit sind.

Dafür habe ich mir ein wenig Arbeit gemacht, und schrittweise die Ursachen des Speicherproblems eingegrenzt.
Diese sind:
- der riesige DMA Host->Target FIFO: ein Array mit 26880 Boolean Elemente!
- das riesige Boolean-Array im FPGA, auf dessen Elemente du auch noch in 2 verschiedenen SCTL parallel und dynamisch zugreifen willst.

Das bringt den armen kleinen FPGA im myRIO zum Überlauf.

Meine Empfehlung:
-FIFO kleiner machen und Daten in Blöcken an den FPGA übertragen.
-Block-Memory anstatt Boolean-Array verwenden.

Als erster Verbesserungsschritt, der auch wieder kompilierbar ist, kommt dann das hier raus:

0.0 .zip  Kugeldisplay_JG.zip (Größe: 1,61 MB / Downloads: 209)

Ich hoffe, ich habe beim Auflösen der SubVIs und Zusammenfassen in weniger SCTLs keinen Copy-Paste Fehler gemacht. Wink

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.03.2014, 13:40
Beitrag #4

Boggy Offline
LVF-Neueinsteiger


Beiträge: 2
Registriert seit: Mar 2014

Myrio 2013
2014
DE



RE: Probleme beim erzeugen der Intermediate Files
Vielen vielen vielen Dank für die Antworten und die Mühe meinen Code zu verstehen und umzuarbeiten.

Ich werd mich jetzt mal Stück für Stück durcharbeiten und eure Tipps umsetzen und alles testen.
So Techniken wie z.B. das Verwenden von Block Memory sind mir neu. Mit "Learning by doing" verpasst man halt den ein oder anderen ganz nützlichen Trick.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Probleme beim Sampeln von Daten und Ticks Dracotin 1 3.979 01.03.2013 19:32
Letzter Beitrag: GerdW
  Probleme beim Compilieren im FPGA PhilipDehm 3 6.242 04.11.2009 16:16
Letzter Beitrag: chrissyPu

Gehe zu: