vnútornej pamäte je povolené v FPGA

S

samuel_raja_77

Guest
nemusím mať na pamäti, že môj návrh je možné mať vnútornú pamäť niektorých 10K v FPGA alebo potrebujeme len vonkajšie pamäti ........ já am using Xilinx verzia 8.1i zariadenia a já si je Virtex - II, ktorý má pre xc2vp7 11.088 logické bunky
792 BRAM (kb) 44 (18x18), násobič ........... pomôžte mi s nejakým návrhom
Naposledy upravil samuel_raja_77 dňa 04. Oct 2006 11:19, upraveno 1 celkom

 
Myslím, že áno, môžete používať Brams (ak boli dostatočné pre ur design).skutočnosti, ktoré používajú pre tieto účely.dokonca môžete použiť ako určitý druh pamäti ROM.Ak by ste ju inicializovať, s ur konštantnej dáta.

 
1.Does tieto ROM a RAM musí byť codded ako samostatný modul ......... tj ak mám RAM 2K je prísne byť uvedené ako samostatný modul alebo môžem používať v mojej už Existujúce modul s ďalším bloku vždy ......
2. Ak mám v pamäti v modulu ako ďalší blok vždy, ako sa k ........ prosím pomôžte mi ..., ktorým sa v prevedení s niektorými návrhmi ,......... .......

 
Môžete použiť v module.
Najprv určiť, okr potrebného size.Then vyhlásiť ukazovateľ, ktorý vie čítať a písať memory.When písať pamäti čiastkové ukazovateľ na každej hodiny okraji.
napr

pre písanie
vstup;
mem [0:1023];
Vždy @ (posedge CLK)
začať
i = i 1;
mem = v;
koniec

iba pre čítanie bode mem [34], alebo čokoľvek miesta, ktoré chcete.

 
áno, môžu mať pamäť nevynulujú v návrhu HDL ako pole
alebo použite aj samostatné pamäťové uvedené v vývojový kit

Opravte ma, či sa mýlim, prosím:)

 
Môžete použiť BRAM, alebo ak máte navyše LUT v návrhu môžete využiť ako pamäť, rovnako

 
BRAM je k dispozícii v FPGA.ale na úrovni opisu správania nebude fungovať.pls odkazujú na mannul

 
Máte plné dobrovoľnosti v tomto prípade.
môžete vytvoriť samostatný modul, ako MY_RAM a definovať jeho správanie a prístup do jej prístavov, rovnako ako externé ram.
alebo u možno definovať barana vnútri konštrukcie veľmi jednoducho.napríklad pre duálny port BRAM máme:

proces (<clock>)
začať
if (<clock> 'udalosť a <clock> = '1') then
if (<enableA> = '1 ') then
if (<write_enableA> = '1 ') then
<ram_name> (conv_integer (<addressA>)) <= <input_dataA>;
end if;
<ram_outputA> <= <ram_name> (conv_integer (<addressA>));
<ram_outputB> <= <ram_name> (conv_integer (<addressB>));
end if;
end if;
end process;od tejto chvíle, ak u chceli prečítať smthing z zadanú adresu, musíte nastaviť "address" s Zaujímate adresa a potom dal '1 'in "enableA" signál.požadované údaje, je pripravená na "ram_outputA" na nasledujúcej hodiny okraji.a ak chcete písať somthing poskytnúť addreassA a input_dataA s Zaujímate dáta a potom dal '1 'na "write_enableA" signál ....

 

Welcome to EDABoard.com

Sponsor

Back
Top