accumulatore

Sezione dedicata al linguaggio di descrizione hardware per logiche programmabili

accumulatore

Postby giuseppe01051984 » 20 Sep 2013, 00:21

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?????
Attachments
accumulatore.rar
(218.55 KiB) Downloaded 339 times
giuseppe01051984
 
Posts: 49
Joined: 06 Sep 2013, 13:16

Re: accumulatore

Postby giuseppe01051984 » 20 Sep 2013, 11:57

Qualcuno di buona volontà avrebbe qualche consiglio da darmi????
giuseppe01051984
 
Posts: 49
Joined: 06 Sep 2013, 13:16

Re: accumulatore

Postby giuseppe01051984 » 20 Sep 2013, 12:27

Trovato.
Penso dovevo resettare prima il registro!!!!!
giuseppe01051984
 
Posts: 49
Joined: 06 Sep 2013, 13:16

Re: accumulatore

Postby Leonardo » 20 Sep 2013, 12:32

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
Il mio blog di elettronica: http://electro-logic.blogspot.it
User avatar
Leonardo
 
Posts: 502
Joined: 29 May 2013, 22:31
Location: Parma

Re: accumulatore

Postby giuseppe01051984 » 20 Sep 2013, 12:57

Figurati Leonardo.Ti ringrazio come al solito!!!
giuseppe01051984
 
Posts: 49
Joined: 06 Sep 2013, 13:16


Return to VHDL x FPGA

Who is online

Users browsing this forum: No registered users and 26 guests

cron