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 

Problem mit Look up Table



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!

09.01.2012, 14:08
Beitrag #5

chrissyPu Offline
LVF-Stammgast
***


Beiträge: 467
Registriert seit: Jun 2006

2014 PDS
2006
DE_EN

64283
Deutschland
RE: Problem mit Look up Table
Puh, das ist schon eine Weile her... Anbei mal zwei Screenshots, ich hab keine Test-VIs mehr gerade, die das ganze einfacher hätten und das ganze ist sonst eher unübersichtlich...

Zuerst muss man den Memoryblock mit starrer Größe definieren, dann noch einen Fifo, um ihn zu beschreiben. Das setz ich jetzt mal voraus... Dann:

Schreiben ist glaube ich leicht erklärt:
   
Der N-Anschluss ist mit der Länge des Datenblocks belegt, man muss vor dem Schreiben in den FIFO kontrollieren, ob der Datenblock nicht größer als der vorher reservierte Speicherbereich ist. Ist aber ja eigentlich kein Problem, weil man die Sachen vorher weiß.

Lesen etwas aufwändiger:
   
Die Ausgabe ist in einer zweistufigen Pipeline, um die Durchlaufzeit gering zu halten. Man kauft sich eine Latenz von einem Schleifendurchlauf ein, dafür ist die Ausgabe genau so schnell wie der DA-Wandler es kann, da die Berechnung vorher deutlich kürzer als die DA-Wandlung ist. Da in der Schleife noch ein paar andere Sachen passieren, ist das dazugehörige Schieberegister außerhalb. Nicht verwirren lassen.
Ich skaliere meine Memoryausgabe auch nochmal im Nachhinein, das sind die Multiplikation und das Shiften im rechten Teil des BD.
Um jetzt mehrmals den Speicherbereich auszugeben, setze ich das ganze in eine For-Schleife, die als Durchlaufanzahl das Produkt aus Speichertiefe und Anzahl der Ausgaben bekommt. Vor die Adressierung des Speichers setze ich jetzt eine Logische Und-Verknüpfung des Durchlaufzählers i mit der Zahl (N_Sp - 1), wobei N_Sp für die Anzahl der Werte im Speicher steht. Damit werden alle Bits die größer sind als die Speichertiefe ausgeblendet und der Speicher wird periodisch ausgegeben. Hielt ich damals für berechnungstechnisch am effektivsten, weiß nicht, ob es da mittlerweile bessere Sachen gibt.

Ach ja, die Sequenz braucht man hier wahrscheinlich nicht... Müsste der Compiler aber ausbügeln... Wink

Viel Erfolg,

ch
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Nachrichten in diesem Thema
RE: Problem mit Look up Table - cRio - 09.01.2012, 12:05
RE: Problem mit Look up Table - chrissyPu - 09.01.2012 14:08
RE: Problem mit Look up Table - cRio - 09.01.2012, 15:38
RE: Problem mit Look up Table - cRio - 09.01.2012, 15:57
RE: Problem mit Look up Table - eb - 10.01.2012, 13:02
Problem mit Look up Table - GerdW - 11.02.2010, 15:56
Problem mit Look up Table - chrissyPu - 11.02.2010, 16:02

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Look-Up Table 1D Express VI cRio 5 8.301 08.11.2011 11:14
Letzter Beitrag: cRio

Gehe zu: