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 

FPGA (7811R) und Arrays



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!

05.12.2006, 14:25
Beitrag #1

Falk Offline
ja, das bin ich...
***


Beiträge: 343
Registriert seit: Jan 2006

8.0 :: 201x ::202x
2006
DE_EN


Deutschland
FPGA (7811R) und Arrays
Hallo zusammen!

Wie bestimmt die meisten Einsteiger in die FPGA-Programmierung habe auch ich einige Probleme meines erstens FPGA-Projektes. Um das ganze vielleicht etwas anschaulicher zu gestalten hier kurz die Problemstellung:

Wir möchten in unserer Arbeitsgruppe die National Instrument Karte PCI 7811R als Pattern Generator nutzen. Genau bedeutet das, dass ich ca. 80 DIO nur für die Triggerung externer Geräte nutzen will, um so das Experiment zu steuern bzw. kontrollieren.

Von Prinzip habe ich auch einen Lösungsansatz für das Problem, aber immer wieder scheitere ich an der Größenbegrenzung der FPGA. Prinzipiell dachte ich mir, der FPGA einfach 2 Arrays zu übergeben. Der eine Array besitzt die einzelnen Pattern-Zeiten welche mir die entsprechenden Pulslängen über "Wait" erzeugen. Der 2te Array soll die Output-Informationen erhalten, quasi welcher Output ist zu dieser Zeit low und welcher high. Genau genommen soll das ganze über die Ports und nicht über einzelne Leitungen laufen. Das ganze läuft dann in einer While-Schleife bis die Arrays abgearbeitet wurden.

Das Hauptproblem meinerseits besteht nun in der Array-Größe. Da ein Experiment schon mal mit einer zweistelligen Zahl an Pattern laufen, werden beide Arrays doch ziemlich gross und in vielen Fällen scheitert man dann am kompilieren.

Da weiterhin die Experimentsteuerung in vielen Teilen zeitkristisch läuft [us bis ns] wollte ich einmal die Einstellungen an die FPGA übergeben und nicht ständig mit einem Host-VI einzelnen Werte nachliefern.

In den zahlreichen Beispielen habe ich leider nichts annäherndes gefunden, wie man sowas umsetzen kann. Darum wollte ich hier mal nachfragen, ob jemand eventuell mit sowas schon einmal zu tun hatte und seine Erfahrungen teilen möchte.

Schöne Grüße
Falk

Currently: zzzZZZZZZZZ
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.12.2006, 21:05
Beitrag #2

packmers Offline
LVF-Grünschnabel
*


Beiträge: 11
Registriert seit: Sep 2006

8.61
2005
de

82205
Deutschland
FPGA (7811R) und Arrays
Hi Falk,
wieviel Speicher brauchst du und wie hast du denn angelegt?
Die 7811 hat glaub ich 48kB RAM also 12k X 32 - wenn das nicht reicht musst du wohl daten nachschieben, per DMA und FIFO, da liegst du je nach rechner und auslastung bei ein paar 100us, was aber nicht ausmacht wenn du die fifo-steuerung gut machst.
Arrays im Zellenbereich knacken schnell die Grenze.

packmers den FPGA Smile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.12.2006, 13:09
Beitrag #3

Falk Offline
ja, das bin ich...
***


Beiträge: 343
Registriert seit: Jan 2006

8.0 :: 201x ::202x
2006
DE_EN


Deutschland
FPGA (7811R) und Arrays
Moin packmers!

Ich hab das nun auch seit vorgestern über den internen Speicher der Karte gemacht. Passt alles wunderbar und funzt sogar. Wenn nicht das kompilieren so zeitaufwändig wäre, würde das sogar richtig Spass machen.Big Grin

Currently: zzzZZZZZZZZ
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.02.2007, 11:48
Beitrag #4

Falk Offline
ja, das bin ich...
***


Beiträge: 343
Registriert seit: Jan 2006

8.0 :: 201x ::202x
2006
DE_EN


Deutschland
FPGA (7811R) und Arrays
Hallo LV-Forum!

Ich hänge hier an dieser Stelle mal wieder einen Beitrag dran, der zwar nur indirekt was mit Arrays zu tun hat.

Hier mein jetziges Problem!

In einer U32 Zahl habe ich verschiedene Kontrollinformationen versteckt. Nun möchte ich mir aus dieser Zahl wieder einzelne Bits herausholen um an eine gewünschte Info zu kommen. Kurz und knapp, ich möchte einzelne Bits aus der Zahl gewinnen. Die Angabe ist hierbei das Start-Bit und die Länge, also wieviele Bits danach interessant sind.

An sich habe ich mir dafür auch etwas gebastelt, allerdings scheitere ich auf der FPGA stets an dem Problem, dass immer wenn ich die Zahl in einen Boolean-Array umwandel und anschließend mir den gewünschten Teilarray ausschneide, ich das Problem der festen Dimensionslänge von Arrays habe.
Darum frag möchte ich hier mal in die Runde fragen, ob jemand mir vielleicht einen kleinen Tipp dazu geben könnte, wie ich aus einer Zahl am besten ein oder mehrere Bits herausholen kann?

Schöne Grüße

Currently: zzzZZZZZZZZ
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.02.2007, 18:21
Beitrag #5

thomas.sandrisser Offline
LVF-SeniorMod


Beiträge: 1.298
Registriert seit: Sep 2005

xxxx
2005
EN

78759
United States
FPGA (7811R) und Arrays
1M Gate Karten haben IMMER 80kB und 3M Gate Karten immer 192kB wobei die kleines adressierbare memoryeinheit 2kB betraegt (Gilt fuer FIFO als auch fuer Memory Write/Read).

Arrays am FPGA zu verwenden ist ne schlechte Variante, weil Arrays, je nach Aufbau, sehr viel Gates sinnlos verbraten.
Besser waere es an der Stelle, einen FIFO zu definieren, skalare Werte in diesen FIFO zu schreiben (eigene Schleife) und in einer anderen Schleife die Werte wieder auszulesen und auf die div. Ports zu schreiben


(wenn du eine aeltere lv fpga version als 8.2 verwenden solltest, dann kommen zur 2kB minimal Adressierung noch andere Restrikitionen hinzu!)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.02.2007, 20:47
Beitrag #6

Falk Offline
ja, das bin ich...
***


Beiträge: 343
Registriert seit: Jan 2006

8.0 :: 201x ::202x
2006
DE_EN


Deutschland
FPGA (7811R) und Arrays
Hallo Freedive!

Danke für deine Antwort, allerdings ist diese Frage bezüglich der Nutzung der Memories schon geklärt. Mein letzter Beitrag sollte weniger auf die Arrays zu sprechen kommen, sondern vielmehr wie ich aus einer 32-bit Zahl beispielsweise das 8 und 9 Bit rauskriege. Die erste Idee war da freilich die Zahl in einen boolschen Array umzuwandeln und dann handelsüblich mit den Array Funktionen zu arbeiten (Teilarray ersetzen,...). Leider stellen sich hier auf der FPGA die üblichen Probleme mit Arrays ein. Nichts desto trotz hab ich das Problem gelöst bekommen. Nun ist stellt sich für mich bloss die Frage, wie ich eine Info wieder in die 32-bit Zahl hineinbekomme bzw. verändern kann. Na mal schauen was ich heute abend noch alles hinbekomme.

Schöne Grüße
Falk

Currently: zzzZZZZZZZZ
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
13.02.2007, 06:30
Beitrag #7

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
FPGA (7811R) und Arrays
Hi,

du könntest ganz klassisch "ver-UND-en" bzw. "ver-ODER-n", d.h. boolesche Funktionen anwenden.

An die booleschen Funktionen kannst du ja auch boolesche Arrays direkt anschließen!

Gruss
Achim

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.02.2007, 09:22
Beitrag #8

Falk Offline
ja, das bin ich...
***


Beiträge: 343
Registriert seit: Jan 2006

8.0 :: 201x ::202x
2006
DE_EN


Deutschland
FPGA (7811R) und Arrays
' schrieb:Hi,

du könntest ganz klassisch "ver-UND-en" bzw. "ver-ODER-n", d.h. boolesche Funktionen anwenden.

An die booleschen Funktionen kannst du ja auch boolesche Arrays direkt anschließen!

Gruss
Achim

Hallo Achim!

Also ich hab meine beiden Probleme nun gelöst bekommen. Weiß nicht ob es eine sinnvolle Lösung ist, aber ich werd mal schauen. Da ich jetzt gerade das Problem habe, dass ich mein Programm nicht auf die FPGA bekomme (von wegen zu gross) kann ich noch nicht sagen, ob es so klappt wie ich es mir vorgestellt habe.

Schöne Grüße
Falk

Currently: zzzZZZZZZZZ
Webseite des Benutzers besuchen 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
  Sind Referenzen auf FPGA-Variablen in FPGA vi möglich? Felix777 2 7.955 26.10.2015 20:41
Letzter Beitrag: Felix777
  FPGA-Referenz öffnen: FPGA-VI nicht kompiliert LauraP. 9 13.306 17.03.2015 16:58
Letzter Beitrag: LauraP.

Gehe zu: