- Codice: Seleziona tutto
entity testbench is
end testbench;
architecture behavior of testbench is
component D_ff
port(D,CLK,RESET:in bit;
Q:out bit);
end component;
signal a,b,c,d:bit;
constant c_period:=10ns
begin
UUT: D_ff port map (
D=>a,
RESET=>b,
Q=>d
);
a_pr:process
begin
a<='0' ;
wait for 15 ns;
a<='1';
wait for 10 ns;
end process;
b_pr:process
begin
b<='1';
wait for 50 ns;
b<='0';
wait for 200 ns;
end proces;
end behavior;
test bench D_ff in VHDL
Moderatori:
carloc,
g.schgor,
BrunoValente,
IsidoroKZ
5 messaggi
• Pagina 1 di 1
0
voti
salve a tutti volevo chiedervi se secondo voi un test bench cosi va bene in VHDL per un flip flop di tipo D con ingresso D,segnale di clock CLK e un RESET ed uscita Q
Ultima modifica di
rini il 12 lug 2012, 10:40, modificato 3 volte in totale.
Motivazione: Usa i tag [code]...[/code] per inserire il codice
Motivazione: Usa i tag [code]...[/code] per inserire il codice
2
voti
Ciao
Rabeluk, ho dato una occhiata al tuo testbench, ma giustamente tu hai fatto osservare che in un flip flop di tipo D ci sono 3 ingressi (D,CLK,RESET) ed un uscita (Q)
la tua associazione che hai fatto tra la UUT (Unit Under Test) e il testbench è stata
D => a
RESET => b
Q => d
(quindi manca l'ingresso del clock e di conseguenza sarà normale che questo codice non funziona)
poi hai creato due process che servono per modellari i segnali a, b. Ok, devi inserire un altro process sempre in parallelo a tutti gl'altri con l'obiettivo di modellare anche il segnale di clock.
PS: sarebbe meglio che inserisci il codice VHDL del D_ff
la tua associazione che hai fatto tra la UUT (Unit Under Test) e il testbench è stata
D => a
RESET => b
Q => d
(quindi manca l'ingresso del clock e di conseguenza sarà normale che questo codice non funziona)
poi hai creato due process che servono per modellari i segnali a, b. Ok, devi inserire un altro process sempre in parallelo a tutti gl'altri con l'obiettivo di modellare anche il segnale di clock.
PS: sarebbe meglio che inserisci il codice VHDL del D_ff
rini -
lectroYou
lectroYou0
voti
ciao rini e grazie dell'aiuto... guarda mi sono dimenticato proprio di inserire il clock
per scrivere in fretta
diciamo ke lo avrei inserito cosi (ovviamente dopo averlo inserito nel portmap) clk=>c
volevo chiederti un'altra cosa... questa stringa che ho inserito posso evitare di metterla o è necessaria?
constant c_period:=10ns...
tutto il resto l'ho capito ma questa stringa l'ho presa per buona dalla guida
per il codice del flip flop va bene cosi? (D_ff sensibile sul fronte di salita,reset attivo alto)
diciamo ke lo avrei inserito cosi (ovviamente dopo averlo inserito nel portmap) clk=>c
- Codice: Seleziona tutto
c_p: process
begin
c<='0';
wait for 10 ns;
c<='1';
wait for 10 ns;
end process
volevo chiederti un'altra cosa... questa stringa che ho inserito posso evitare di metterla o è necessaria?
constant c_period:=10ns...
tutto il resto l'ho capito ma questa stringa l'ho presa per buona dalla guida
per il codice del flip flop va bene cosi? (D_ff sensibile sul fronte di salita,reset attivo alto)
- Codice: Seleziona tutto
entiy D_ff is
port (D,CLK,RESET:in bit;
Q:out bit);
end D_ff;
architecture struct of D_ff is
begin
process (CLK,RESET)
begin
if (RESET='1') then
Q<='0';
elsif (clk' event and clk='1') then
Q<=D
end if;
end process;
end struct;
2
voti
Si certo la puoi togliere quella costante c_period.
Il codice potrebbe andare bene, hai fatto semplicemente degli errori di sintassi, ti sei dimenticato qualche punto e virgola e una s. Te li mando corretti e con una simulazione funzionale del tuo codice in ModelSim, attualmente uso questo programma per simulare.
Il codice potrebbe andare bene, hai fatto semplicemente degli errori di sintassi, ti sei dimenticato qualche punto e virgola e una s. Te li mando corretti e con una simulazione funzionale del tuo codice in ModelSim, attualmente uso questo programma per simulare.
- Allegati
-
D_ff.zip- Esempio in VHDL di un flip flop di tipo D
- (661 Byte) Scaricato 144 volte
rini -
lectroYou
lectroYou0
voti
ok grazie rini... c'è solo un problema nn ho il simulatore in questo momento... diciamo ke lo sto imparando a livello teorico perché all'esame o dobbiamo scrivere il codice allo scritto o in caso lo chiede all'orale
5 messaggi
• Pagina 1 di 1
Chi c’è in linea
Visitano il forum: Nessuno e 65 ospiti

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)


