Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Domanda VHDL

Strumenti informatici per la matematica applicata, le simulazioni, il disegno: Mathcad, Matlab, Scilab, Microcap, PSpice, AutoCad ...

Moderatori: Foto Utenteg.schgor, Foto Utentedimaios

0
voti

[1] Domanda VHDL

Messaggioda Foto Utentedeltax » 13 apr 2014, 14:59

Salve, è possibile in VHDL inserire una struttura "with...when" all'interno di una struttura if/elseif?
perché ci ho provato in un codice molto semplice e mi da errori di sintassi nel with, anche se la sintassi è corretta.
Avatar utente
Foto Utentedeltax
936 1 4 6
Sostenitore
Sostenitore
 
Messaggi: 566
Iscritto il: 12 apr 2013, 14:41

0
voti

[2] Re: Domanda VHDL

Messaggioda Foto UtenteRenzoDF » 13 apr 2014, 17:07

Forse per il semplice fatto che non è possibile usare un costrutto concorrente all'interno di un costrutto sequenziale?
"Il circuito ha sempre ragione" (Luigi Malesani)
Avatar utente
Foto UtenteRenzoDF
52,8k 8 12 13
G.Master EY
G.Master EY
 
Messaggi: 12475
Iscritto il: 4 ott 2008, 9:55

1
voti

[3] Re: Domanda VHDL

Messaggioda Foto Utentedeltax » 13 apr 2014, 18:18

RenzoDF ha scritto:Forse per il semplice fatto che non è possibile usare un costrutto concorrente all'interno di un costrutto sequenziale?

interessante. Scusa se sembro newbie ma...è effettivamente cosi :lol: E' da poco che studio il VHDL, nemmeno una settimana. Nelle guide che ho a disposizione non ho letto (forse ci ho messo poca attenzione) alla differenza tra costrutti che si possono usare SOLO sequenzialmente o in maniera concorrente (anche se questa differenza mi è chiara).
Adesso quindi devo trovare un alternativa a quel costrutto che vada bene per il sequenziale...se avete consigli, cosi magari risparmio qualche ora a cercare nei manuali :lol:

EDIT: come non detto, risolto. Ho usato altri if ed elsif annidati.

Grazie, mi hai risparmiato ore e ore di ricerche
Avatar utente
Foto Utentedeltax
936 1 4 6
Sostenitore
Sostenitore
 
Messaggi: 566
Iscritto il: 12 apr 2013, 14:41

1
voti

[4] Re: Domanda VHDL

Messaggioda Foto Utentedeltax » 13 apr 2014, 20:43

Bhè, adesso ho un problema. Sto implementando un contatore updwon con svariate funzioni (impostazioni di valore iniziale e finale, impostazione di un valore qualsiasi ecc); il conteggio al contrario funziona correttamente, quello in avanti non funziona :shock:
Credo che il problema sia in questa parte di codice:
Codice: Seleziona tutto
UD <= UD + '1' ;

poiché UD non ha una dimensione predefinita, ma è parametrizzato con una variabile N, io dovrei scrivere tutti 0 tranne l'ultimo bit che è 1; in sostanza il valore binario corrispondente al 1 decimale, ma con un numero N di bit che non conosco a priori (nel caso di 4 bit, quindi, 0001).
Ho letto che con quel codice sopra quella somma fa si che l'1 venga "adattato" alla dimensione di UD.
Potrebbe anche essere giusto eh, non so se è quello il problema, ma il codice dopo è praticamente identico sia per la funzione di conteggio in avanti che indietro, essendo appunto UD il valore che viene sommato dal contatore (che deve essere 1 nel caso di avanti, -1 nel caso di indietro). Questo mi fa essere molto fiducioso sul fatto che sia quella riga di codice il problema.
Ho provato anche con i doppi apici, ma non funziona.
Avatar utente
Foto Utentedeltax
936 1 4 6
Sostenitore
Sostenitore
 
Messaggi: 566
Iscritto il: 12 apr 2013, 14:41

0
voti

[5] Re: Domanda VHDL

Messaggioda Foto UtenteRenzoDF » 13 apr 2014, 20:48

In questo periodo non ho molto tempo a disposizione, ma se posti il codice completo del contatore, prima o poi, potrei darci un occhio. ;-)
"Il circuito ha sempre ragione" (Luigi Malesani)
Avatar utente
Foto UtenteRenzoDF
52,8k 8 12 13
G.Master EY
G.Master EY
 
Messaggi: 12475
Iscritto il: 4 ott 2008, 9:55

0
voti

[6] Re: Domanda VHDL

Messaggioda Foto Utentedeltax » 13 apr 2014, 22:09

non ti preoccupare, ho risolto usando un altro costrutto. Era quello il problema, avevo individuato bene. Usando un construtto più basilare, ovvero facendo una conversione da decimale a vettore di std_logic a N bit, ha funzionato tutto.
Comunque se poi vuoi il codice dimmelo che te lo passo ;-)
Avatar utente
Foto Utentedeltax
936 1 4 6
Sostenitore
Sostenitore
 
Messaggi: 566
Iscritto il: 12 apr 2013, 14:41

1
voti

[7] Re: Domanda VHDL

Messaggioda Foto UtenteTardoFreak » 13 apr 2014, 23:14

Non passarlo, postalo.
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,4k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15764
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

1
voti

[8] Re: Domanda VHDL

Messaggioda Foto Utenterini » 14 apr 2014, 0:54

In questo sito del prof. Mattoccia (Unibo) c'è un po' di materiale sul VHDL (a mio avviso spiegato bene) con annessi progetti ed esercizi. Spero che potrà esservi di aiuto.

http://www.t3lab.it/wp-content/uploads/ ... /20110517/
http://vision.deis.unibo.it/~smatt/VHDL.html

buona lettura
rini - \existslectroYou
Avatar utente
Foto Utenterini
1.345 2 5 13
Master EY
Master EY
 
Messaggi: 460
Iscritto il: 17 dic 2007, 1:04
Località: Bologna \ Salento

0
voti

[9] Re: Domanda VHDL

Messaggioda Foto Utentedeltax » 14 apr 2014, 12:52

grazie mille, i PDF del secondo link però non funzionano....

TardoFreak quando è finito lo posterò, anche se è un progettino semplice semplice e sicuramente si può scrivere con un codice moooolto più pulito e sintetico
Avatar utente
Foto Utentedeltax
936 1 4 6
Sostenitore
Sostenitore
 
Messaggi: 566
Iscritto il: 12 apr 2013, 14:41

0
voti

[10] Re: Domanda VHDL

Messaggioda Foto Utenterini » 15 apr 2014, 0:18

Si infatti, i pdf del secondo link sono nel primo. Mi sono dimenticato di scrivere la volta scorsa che nelle slide c'è un esempio pratico di un contatore a modulo N con reset asincrono.
rini - \existslectroYou
Avatar utente
Foto Utenterini
1.345 2 5 13
Master EY
Master EY
 
Messaggi: 460
Iscritto il: 17 dic 2007, 1:04
Località: Bologna \ Salento


Torna a Programmi applicativi: simulatori, CAD ed altro

Chi c’è in linea

Visitano il forum: Nessuno e 3 ospiti