Video RAM: lasīšana un rakstīšana?

J

J90

Guest
Hi there,

Es esmu projektēšana VGA signālu ģenerators.Es esmu patiešām iestrēdzis konstrukcijas RAM interfeisu.RAM jāiekļauj dati, kas ir likts uz ekrāna, signālu ģeneratora.

Signālu ģenerators vajadzīgs (ja tas ir?) Nepārtrauktu piekļuvi RAM, tāpēc, ka ekrāns ir pastāvīgi atjaunots.Rezultātā adrese autobuss šīs ram pastāvīgi vada signālu ģenerators.
Tātad, ja mana sastāvdaļa pastāvīgi piekļūt RAM, saglabājot adresi autobusu aizņemts, cik ir viena vajadzēja rakstīt datus, ka RAM?Looking par interneta mēģināt atrast dažus piemērus es dabūju šo:

Kods:

vienība vga80x40 ir

osta (

......

TEXT_A: no std_logic_vector (11 downto 0) - teksts buferis

TEXT_D: ar std_logic_vector (07 downto 0);

......

);

beigās vga80x40;
 
Vai jūsu sistēma darbojas šādā veidā?
Signālu ģenerators nepārtraukti raksta datus RAM.And vienlaicīgi datus nolasīt no RAM, lai parādītu to VGA.Is tas, ko jūs vēlaties?
Ja šis ir jūsu prasība, tad tikai izmantot divu ostas RAM.You var rakstīt un lasīt RAM uz citu adresi, un tajā pašā laikā izmantojot divu portu RAM.If lietojat Xilinx FPGA, tad galvenais ģenerators ir IP serdeņiem pieejams RAM .

- Vipin
http://vhdlguru.blogspot.com/

 
Jā vipinlal, tas arī viss!

Bet ja kādreiz man būs nepieciešams vairāk vietas, un nolemj pāriet uz ārēju DDR RAM?Vai ir kāds veids, lai iegūtu tādu pašu rīcību no šādiem RAM?Vai man vajadzētu meklēt kādu citu īpašu RAM?

Paldies

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Smaids" border="0" />
 
jums tad būtu nepieciešams, lai palaistu RAM piemērotā pulksteni likmi.jums būtu nepieciešams, lai varētu bufera mazs blokus datus par FPGA, tad veic atmiņas piebraukšanai pie DDR.

Jums būtu nepieciešams, lai ieplānotu atmiņu pieeju, lai kopā lasīšanas / rakstīšanas joslas bija iespējams.SRAM varētu būt lieluma, piemēram, ka pietiekami daudz datu, var tikt amortizēts lai ņemtu vērā sliktākās apgrozījuma laiks, un ir iespējams vismaz 1k elementu kopumā.Tas ir tāpēc, ka ADR ņem Milzīgs sniegumu sodu, rakstot un lasot dažādus rindas vienā bankā.

 
Tā kā jums ir rakstīt 80 * 40 pikseļi uz vienu ekrānu doesn't nozīmē, ka jums ir nepieciešams saglabāt tās visas atmiņas vienā time.What jūs varat darīt, ir uzglabāt uzglabāt 2 rindas pixels.This būs tikai 2 * 40 baiti atmiņas.
Tagad rakstīt pikseļiem (pirmā rinda) pirmajā rindā sākotnēji un pēc tam uzrakstiet 2. Rindā pikseļu otrajā row.Once pirmajā rindā ir pilnīgi rakstīts varat sākt lasījums no it.By kad sākat lasījums 2. Rinda, 3. Rinda no signālu ģenerators var tikt ierakstītas pirmajā rindā.

Tātad, pirmā rinda iet uz pirmajā rindā atmiņā.
2. Rinda iet uz 2. Rinda atmiņā.
3. Rinda iet uz 1. Rinda atmiņā.
4. Dodas uz 2..
un 5 iet uz 1. un tā tālāk ...

lasīt atmiņas, izmantojot demultipleksors.
1. Rindu izlasīt par pirmo time.Then 2. Rindu read.Then 1. Rindu lasa again.Then atkal 2. Rinda.

Tas samazina atmiņas apjomu jums ir nepieciešams, un jums nav nepieciešams papildus ADR memory.I ceru, I didn't sajaukt jums daudz.

- Vipin
http://vhdlguru.blogspot.com/

 
Paldies jums abiem par jūsu padomiem, viņi vērtīgs

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Smaids" border="0" />apmainīt, iekšējā bufera ideja izklausās vienkārši labi.

vipinlal Es nedomāju, ka es got to 100% taisni.Par to, ko es sapratu, jūs sevi saprotams, lai izmantotu dubultā buferizācijas tehnika, lai veiktu vienlaicīgu lasīšanas un rakstīšanas.Lai to paveiktu man ir nepieciešams, lai iegūtu 2 standalone DDR RAM mikroshēmas, nebūtu es?

 

Welcome to EDABoard.com

Sponsor

Back
Top