Page 1 of 1

accumulatore

PostPosted: 20 Sep 2013, 00:21
by giuseppe01051984
Salve,
avrei un problema con l'accumulatore di cui fornisco il codice in allegato.
Praticamente a prima vista tutto sembra funzionare(nessun errore in compilazione ne warning),
solo che in simulazione mi da ogni uscita Undefined.Il bello è che i componenti del progetto (registro e addizionatore)
messi come top-level e simulati funzionano.
Gentilmente avete qualche idea di cosa potrebbe essere?????

Re: accumulatore

PostPosted: 20 Sep 2013, 11:57
by giuseppe01051984
Qualcuno di buona volontà avrebbe qualche consiglio da darmi????

Re: accumulatore

PostPosted: 20 Sep 2013, 12:27
by giuseppe01051984
Trovato.
Penso dovevo resettare prima il registro!!!!!

Re: accumulatore

PostPosted: 20 Sep 2013, 12:32
by Leonardo
Salve Giuseppe,

Purtroppo non si possono avere risposte garantite in tempo reale.

Il valore indefinito (simbolo U per undefined) è il valore che normalmente viene assegnato ai segnali non inizializzati in quanto previsto dal tipo STD_LOGIC che non contiene solamente 1 e 0. Sulla FPGA devi consultare il datasheet, in genere tutti i registri vengono inizializzati automaticamente al valore 0.

Durante la simulazione devi forzare manualmente tutti i valori di ingresso per avere tutti i valori di uscita.

Puoi definire via codice dei valori iniziali predefiniti allo scopo di simulazione (alcuni sintetizzatori inizializzano lo stato iniziale della FPGA con tale sintassi ma ciò non è garantito), un esempio di sintassi di inizializzazione è il seguente:

Code: Select all
entity accumulatore is
    generic (size : integer :=8);
    port(
         a : in STD_LOGIC_VECTOR(size-1 downto 0) := (others => '0');
         clka : in STD_LOGIC;
         c_in : in STD_LOGIC := '0';
         resa : in STD_LOGIC := '0';
         ena : in STD_LOGIC := '1';
         sout : out STD_LOGIC_VECTOR(size-1 downto 0);
         cout : out STD_LOGIC         
        );
end accumulatore;


Basterà applicare il clock sul segnale clka e forzare altri eventuali ingressi a componenti utilizzati (segnali aux nel tuo codice) prima di eseguire la simulazione

Leonardo

Re: accumulatore

PostPosted: 20 Sep 2013, 12:57
by giuseppe01051984
Figurati Leonardo.Ti ringrazio come al solito!!!