Home
Accesso / Registrazione

Mifert4

ritratto di Mifert4

User title

User+

Cronologia

Membro da
2 anni 32 settimane

 

 

Ultimi POST

ritratto di Mifert4

[VHDL] Errori nella simulazione

quando provo a simulare questo:
-----------------------------------------------------------
library IEEE;
use IEEE.std_logic_1164.all;

entity rds2in is
port ( clk : in std_logic;
reset : in std_logic;
a : in std_logic;
b : in std_logic;
goal : out std_logic
);
end entity rds2in;

architecture RTL of rds2in is
--dichiarazione del component FFD
component FFD

ritratto di Mifert4

[Progettazione] Riconoscitore di frequenza sincrono a due ingressi

Mi si chiede di progettare un Riconoscitore Di Sequenza sincrono a 2 bit di ingresso A e B che si deve comportare così:
l'uscita del RDS sarà a 1 se si verifica la seguente sequenza d'ingresso: A=1,B=0; A=0,B=1; A=1,B=1

non ho proprio idea di come gestire contemporaneamente due ingressi:Ad esempio il grafo degli stati quanti stati avrà e come sarà fatto?

ritratto di Mifert4

[VHDl]Significato codice

Nel test bench di un decoder 4:16 è presente questo processo:
process
begin
for i in 0 to 15 loop
binary_in <= std_logic_vector(to_unsigned(i,4));
ideal_out <= std_logic_vector(to_unsigned(2**i,16));
wait for 10 ns;
end loop;

wait;
end process;

ma non mi sono chiare alcune cose:innanzitutto la scrittura "for i in 0 to 15 loop";

Ultimi Commenti

Dunque...l'entity del circuito è: ------------------------------------ entity rds2in is port ( clk : in std_logic; reset : in std_logic; a : in std_logic; b : in std_logic; goal : out std_logic ); end entity rds2in; ------------------------------------ mentre questo è il test: ------------------------------------ UUT: rds2in port map (CLK => CLK, reset => reset, a=>a, b=>b, goal=>goal); stim_proc: process begin reset<='1'; wait for clk_period*3; reset<='0';a<='0'; b<='0'; wait for clk_period; a<='0'; b<='1'; wait for clk_period; a<='1'; b<='0'; wait for clk_period; a<='1'; b<='1'; wait for clk_period; a<='1'; b<='0'; wait for clk_period; a<='0'; b<='1'; wait for clk_period; a<='1'; b<='1'; wait for clk_period; a<='1'; b<='1'; wait for clk_period; a<='0'; b<='0'; wait for clk_period; a<='1'; b<='0'; wait for clk_period; ----------------------------------
niente,è un esercizio in cui mi si chiede di progettare questo tipo di riconoscitore e scriverlo in vhdl(quindi devo partire dal grafo degli stati,per arrivare poi a disegnare il circuito,credo utilizzando dei flip flop) il mio dubbio sta proprio nel realizzare il grafo
Il [code] l'ho usato per distinguere la parte di codice dal resto(in altri forum si usa così). Comunque ho provato a metterci i ;,ma non vanno bene lo stesso. tra l'altro non ho capito una cosa in generale:che differenza c'è tra scrivere x <= '01' e x <= "01" ?
Perfetto,grazie mille per i chiarimenti
Già che ci siamo,questa tecnica di "mettere le mani avanti" e assegnare un valore prestabilito a tutti gli altri casi oltre quelli previsti,si può utilizzare anche in questo caso: ho un decoder 4-16 one-hot,in cui se le entrate vanno da 1 a 16(in decimale) si deve accendere solo il bit corrispondente,mentre negli altri casi(alta impedenza,don't care eccetera l'uscita deve andare a 0).Seguendo il tuo consiglio ho scritto questo: process(binary_in) begin decoder_out<=x"0000"; case binary_in is when x"0" => decoder_out<= x"0001"; when x"1" => decoder_out<= x"0002"; when x"2"=> decoder_out<=x"0004"; when x"3"=> decoder_out<=x"0008"; when x"4"=> decoder_out<=x"0010"; when x"5"=> decoder_out<=x"0020"; when x"6"=> decoder_out<=x"0040"; when x"7"=> decoder_out<=x"0080" ; when x"8"=> decoder_out<=x"0100"; when x"9"=> decoder_out<=x"0200"; when x"A"=> decoder_out<=x"0400"; when x"B"=>...
Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Chi è online

Ci sono attualmente 9 utenti e 146 visitatori collegati.

Ultimi Commenti