Req: Synthesisable kodas FIFO

A

arunragavan

Guest
Well guys ..turiu synthesisable VHDL kodas FIFO ..asinchroninis FIFO.Can anyone help me su kodu ir taip pat paaiškinti pagrindines Workin už asyn FIFO vienetas.

 
arunragavan rašė:

Well guys ..
turiu synthesisable VHDL kodas FIFO ..
asinchroninis FIFO.
Can anyone help me su kodu ir taip pat paaiškinti pagrindines Workin už asyn FIFO vienetas.
 
gryna VHDL kodas FIFO be architectrural dependecies ...

synthesizable ir simulatable kodai FIFO

With Regards,

 
Labas,
Čia FIFO kodas ilgą Atgal I downloaded UART kodą, kad .....
Hope this helps!

Kodas

Biblioteka IEEE;

naudoti ieee.std_logic_1164.all;

naudoti ieee.std_logic_unsigned.all;subjektas dp_ram yra

generic (

PLOTIS: Natural: = 8; - duomenų plotis

ADDR_WIDTH: Natural: = 8 - adresas width

)

uostas (

RST: In std_logic - Reset

rd_clk: in std_logic - skaityti laikrodžio

wr_clk: in std_logic - rašyti laikrodisdata_in: in std_logic_vector (plotis-1 downto 0) - duomenų įvedimo

data_out: iš std_logic_vector (plotis-1 downto 0) - išvesties duomenųrd_addr: in std_logic_vector (ADDR_WIDTH-1 downto 0); - Skaityti adresas

wr_addr: in std_logic_vector (ADDR_WIDTH-1 downto 0) - užrašyti adresąrd_en: in std_logic, - skaityti galima

wr_en: in std_logic - parašyti kad

)

pabaigos subjektas dp_ram;Architektūra MEM apie dp_ram yra

tipo register_array yra masyvas (natūralaus paplitimo <>) ir std_logic_vector (plotis-1 downto 0);signalas Mem: register_array (nuo 0 iki (2 ** ADDR_WIDTH-1));pradėti

- citanje iz memorije

skaityti: procesas (RST, rd_clk, rd_en, rd_addr) yra

pradėti

if (RST = '1 ') then

data_out <= (Kita => '0 ');

dar - jei rising_edge (rd_clk), tada

- If (rd_en = '1 ') then

data_out <= Mem (conv_integer (rd_addr));

- Kitas

- Data_out <= Mem (conv_integer (rd_addr));

- Data_out <= (Kita => 'Z');

- END IF;

end if;

pabaigos procesą skaityti;rašo: procesas (RST, wr_clk) yra

pradėti

if (RST = '1 ') then

for i in 0 iki (2 ** ADDR_WIDTH-1) linijos

mem (i) <= (Kita => '0 ');

end loop;

elsif rising_edge (wr_clk), tada

if (wr_en = '1 ') then

mem (conv_integer (wr_addr)) <= data_in;

end if;

end if;

galutinio proceso rašyti;pabaigos architektūra atm;
 
Thanks dude ..galėjau sintezė it ..Kas fïka būti pagrindinis skirtumas n šios FIFO, architektūra, kai aš jį naudoti n asyn ryšių schema.jei man reikia tiek duomenis ir signalus (instructuctions - pavyzdžiui, prašymą ir ACK) turi būti passwed per ryšių pradėti FIFO.

With Regards,

 
Labas,
Atsiprašome kodas I provided for sinchroninio FIFO.Dėl
ASYNCH FIFO ą Xilinx paskirtį į nuorodą ...
http://www.xilinx.com/xlnx/xweb/xil_publications_display.jsp?sGlobalNavPick=&sSecondaryNavPick=&category=-1209897&iLanguageID=1Parašytas po 28 minučių:Labas,
Nuo Xilinx svetainė Download xapp258.pdf ir xzpp258.zip failus!

 

Welcome to EDABoard.com

Sponsor

Back
Top