From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Forum Italiano sui Prodotti NI

annulla
Visualizzazione dei risultati per 
Cerca invece 
Intendevi dire: 

problema con il formato dei numeri fixed-point

Risolto!
Vai alla soluzione

Salve a tutti!!

ho un problema con il formato dei numeri fixed-point.

Praticamente, uso LabVIEW FPGA 8.6 e sto realizzando un controllore PID utilizzando il formato dei numeri fixed-point, ho messo nel mio VI un While loop ma mi da il seguente errore: Loop Tunnel:Type not supported in current target. com'è possibile?cosa posso fare?

Grazie..

Teresa

0 Kudos
Messaggio 1 di 8
6.091Visualizzazioni

Ricompilando mi ha dato il seguente errore:

Status: Compilation failed due to timing violations.

The compile process reported a timing violation.

Suggestions for eliminating the problem:
  * For Timed Loops with timing violations
      - Reduce long arithmetic/combinatorial paths
      - Use pipelining within Timed Loops
      - Reduce the number of nested case structures
  * Reduce clock rates if possible
  * Reduce the amount of application logic to make routing easier
  * Recompile

 

Che devo fare??

Grazie mille...

Teresa

0 Kudos
Messaggio 2 di 8
6.089Visualizzazioni

Ciao Teresa,

immagino tu abbia già risolto il problema dei fixed-point del primo post del thread.

Quanto al secondo post, l'errore può essere dovuto a diverse cause. In generale significa che nel tuo vi richiedi più risorse di quante il target possa offrire, tipicamente dal punto di vista temporale.

L'errore potrebbe essere dovuto ad una catena di operazioni troppo lunga all'interno di un timed-loop.

Oppure semplicemente all'eccesivo uso di risorse nel tempo nel vi.

Quindi per capire come correggere il problema è necessario analizzare il vi specifico.

Se posti il vi sarà dunque più facile aiutarti.

Intanto, buon lavoro

Lucio

 

 

0 Kudos
Messaggio 3 di 8
6.067Visualizzazioni

Ciao Lucio,

grazie per la risposta!!! Ti allego il vi che non riesco a compilare. Spero che tu mi riesca a trovare una soluzione, perchè io proprio non ne ho idea..

Grazie mille

Buon lavoro anche a te

Teresa

0 Kudos
Messaggio 4 di 8
6.065Visualizzazioni

Ciao Teresa,

ho compilato con successo il tuo vi per un pxi-7811r.

Per poterti aiutare mi servirebbe sapere per quale target stai cercando di compilare, in modo da sapere esattamente quali risorse hai a disposizione.

Ciao e buon lavoro

Lucio 

0 Kudos
Messaggio 5 di 8
6.058Visualizzazioni

Buongiorno Lucio,

anche un'altra persona che aveva un'altro sistema diverso dal mio è riuscito a compilarlo, però io ancora no!!!

Comunque io uso il cestello NI PXI-1042 e una scheda NI PXI-7831R.

Grazie mille per la disponibilità..

Ciao e buon lavoro

Teresa

0 Kudos
Messaggio 6 di 8
6.055Visualizzazioni
Soluzione
Accettato da autore argomento tè86....

Ciao Teresa.

Ho fatto varie prove e sono riuscito a isolare il tuo problema.

L'errore in compilazione è dato dall'uso di un moltiplicatore di due fixed point.

In effetti il readme del modulo FPGA 8.6 di Labview riporta:

 

Multiplying fixed-point data might not meet 40 MHz timing—If you use the Multiply function with inputs above 32 bits that contain fixed-point data, the function might not meet 40 MHz timing requirements. You can place the Multiply function inside a single-cycle Timed Loop that is configured at a lower clock rate.

 

Evidentemente ciò accade NI PXI-7831R ma non su altre schede.

Le soluzioni quindi sono molte ma dipendono dalle tue necessità:  la migliore secondo me consiste nel valutare la minima dimensione utile nella rappresentazione dei dati e impostare tutti gli input e gli output a quella dimensione (nello specifico, ridurre gli fxp a meno di 32 bit). Aggiungo che la dimensione va impostata anche direttamente sui blocchi aritmetici (clicca col destro e vai sulle proprietà).

Ciao e buon lavoro

Messaggio 7 di 8
6.042Visualizzazioni

Ciao Lucio,

ho fatto come tu mi suggerivi, ho ridotto a 16 bits tutti gli input e gli output, tranne i coefficienti Ki, Kp e beta, per i quali questa riduzione non era possibile e sono finalmente riuscita a compilare!!!

Grazie per la disponibilità, il tuo aiuto è stato indispensabile..

Buona giornata

Teresa

0 Kudos
Messaggio 8 di 8
6.039Visualizzazioni