Surová data tak, jak byla v roce 2013 stažena z Pandory (HTML zdroj bez úprav, osobní e-mailové adresy jsou maskované).
<!-------------------------------------------------------------->
<table width="100%"><tr><td align="left" valign="middle"></td><td align=right valign="middle"></td></tr></table><BR><pre>
Ahoj Michale
- je mozno udelat schema na bilem podkladu?
(http://ordoz.com/sharp/new_memext/memext_cpld_cpu.png)
- planujete udelat tabulku soucastek a pouzder + pripadne kde to koupit
- planujete udelat Gerger data aby si to mohl kazdy udelat?
- ukazete VHD soubor aby se videlo jak to funguje? To byl potreboval nejvic.
- napiste proc je tam U2 (74HCP245) - k cemu slouzi
Ja bych byl pro verzi kde se da vse menit i treba ze cenu vetsiho CPLD
obvodu. Zjistoval jsem co existuje a hlavne kolik to stoji.
www.tme.eu XC9572XL10VQG44 cena 70Kc/kus bez DPH Integrovaný obvod:
CPLD; 72; Počet vst./výst:34; 10ns; VQFP44
www.tme.eu XC95144XL10TQG1 cena 129Kc/kus bez DPH Integrovaný obvod:
CPLD; 144; Počet vst./výst:81; 10ns; TQFP100
cz.farnell.com XC95144XL-10TQG100C cena 155Kc/kus bez DPH odkaz
http://cz.farnell.com/xilinx/xc95144xl-10tqg100c/cpld-isp-144mcells-3-3v-100tqfp
<img src="BODY_IMAGES_WRAP_GIF">/dp/1776144
Otazka je kolik z nas je schopno spravne zapajet ten 100 pinovy obvod?
Kdyz by byla sance, tak bych byl pro vymenu za tento a pak by se tam
mohl dat i ten 64bitovy registr
pro R/O na kazdy segment pameti. A soucasne by tam byl navic ten vyvod
pro RD.
Take potrebuji vysvetlit jak funguje:
LD BC, xxE7
LD A,yy
OUT (C),A
xx - cislo stranky pameti (je jich 8)
yy - cislo pametove banky (je jich 64)
0xE7 - adresa strankovaciho portu
stranka 0x00 - je pamet 0x0000 - 0x1fff
stranka 0x20 - je pamet 0x2000 - 0x3fff
stranka 0x40 - je pamet 0x4000 - 0x5fff
jedna se mi o to ze dle schematu nejsou do CPLD privedene D6 a D7 a tak
to nemuze fungovat.
Take logicky z toho vyplyva zda neprohodit "xx" a "yy" a pak staci jen
D0,D1 a D2 a tim padem neni potreba privest na CPLD D3,D4 a D5 a tak je
jeden privod volny pro RD.
Druhe reseni je, neprivest na CPLD nektere A signaly a tim umoznit
privest RD. Resenich je vice, zalezi co se bude chtit udelat.
Mozna se zjisti ze neni potreba A8, A9, D5 az D3 - celkem 5 signalu. V
jinem zapojeni bych zapojil jen A15, A14 a A13 (ne A12 - A8) a pak A7-A0
a D0 az D5 (ne D6 a D7) a nasledne na A13-15 da cislo stranky pameti a
na D0 az D5 se da cislo pametove banky. Pri tomto by slo zapojit i D6 a
D7 a tim padem cist cely bajt najednou, kdyz by to bylo potreba.
Nevim kolik zdroju je ted jeste volnych v CPLD ale tak by mozna slo
udelat R/O flag alespon pro tech 8 stranek pameti a tak treba simulovat
rom na zacatku pameti.
Radek
Dne 24.3.2012 17:12, Michal Hučík (sharpemu@pandora.cz) napsal(a):
<span class="replyquote1">>
> Dne 23.3.2012 20:42, Vaclav Peroutka (sharpemu@pandora.cz) napsal(a):
</span><span class="replyquote2">>> A protože stárnu a stávám se protivnějším, tak jen opravím drobnost ->> velikost stránky je 8kB. A je skutečně 64 stránek, tedy dokupy 512kB
>> SRAM.
</span><span class="replyquote1">>
> Dekuji, ze jsi mne opravil nacelniku :)
>
> Dnes jsem trochu experimentoval s kodem memexta. Jsou dve veci, ktere
> bych rad prenechal k diskuzi:
>
> 1) Cteni strankovacich registru - pro realizaci teto fce je potreba
> pridratovat i signal RD, coz by nemel byt problem, nicmene do xc9572
> se to cele zrejme nevejde a jediny zpusob jakym se mi to podarilo
> uspesne zkompilovat (zatim ne otestovat) je takovy, ze jsem musel
> obetovat jednu stranku pameti, coz by mozna taky melo svuj smysl.
> Predpokladam, ze by za obet padla napr. nulta stranka. To znamena, ze
> by obsah pameti 0x0000 - 0x1fff byl nemenny, vzdy by tam byla
> primapovana nulta banka, kterou by samozrejme slo duplicitne namapovat
> i kamkoliv jinam, pokud by to melo nejaky smysl.
>
> Otazka tedy zni: obetovat tu jednu stranku pameti, aby jsme meli
> moznost cist obsah strankovacich registru, nebo se na cteni vykaslat?
>
>
>
> 2) Zpusob nastavovani strankovacich registru - jak uz mne opravil
> Vasek, tak ted mame pamet Sharpa rozdelenu na 8 stranek po 8kB.
> Nastavovani strankovacich registru probiha nasledovne:
>
> LD BC, xxE7
> LD A,yy
> OUT (C),A
>
> xx - cislo stranky pameti (je jich 8)
> yy - cislo pametove banky (je jich 64)
> 0xE7 - adresa strankovaciho portu
>
> Dotaz se tyka xx - tedy cisla stranky. Prislo mi prehladnejsi, kdyz se
> bude urcovat cislo stranky podle toho, jaka je jeji startovaci adresa
> v pameti, coz je zaroven castecne kompatibilni s Davidovym memextem.
>
> stranka 0x00 - je pamet 0x0000 - 0x1fff
> stranka 0x20 - je pamet 0x2000 - 0x3fff
> stranka 0x40 - je pamet 0x4000 - 0x5fff
> ...
> ...
>
> Je tu samozrejme i moznost nastavovat stranky podle poradoveho cisla
> registru:
>
> stranka 0x00 - je pamet 0x0000 - 0x1fff
> stranka 0x01 - je pamet 0x2000 - 0x3fff
> stranka 0x02 - je pamet 0x4000 - 0x5fff
> ...
> ...
>
> Otazka zni: ktery zpusob se vam vic zamlouva? Ja osobne jsem spise pro
> ten prvni.
>
> Michal
>
>
> ---
>
>
</span>
</pre>