Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Grafické karty a brutální PODtaktování sběrnice

No, ptám se
Na jaké nejnižší frekvenci by šlo provozovat starší grafárny (konkrétně mi tu leží ATI Radeon 9250 AGP, ale spíš mi jde o obecnou odpověď).

a ten zbytek je omáčka okolo.

Ze jde z Arduina přímo generovat signál, co něco vykreslí na VGA monitor vím, ale kvůli rychlosti to nezvládá
větší rozlišení, takže to většinou jede na něčem jako 128x96 (default pro TVOut), 120x60 (https://github.com/smaffer/vgax), Když se to nějakými triky vyžene na 640x480, tak je to za cenu omezených barev a značného zkreslení (asi 27%) https://dqydj.com/how-to-produce-640x480-vga-color-video-from-an-arduino/

Takže chci využít nějakou starší PC grafickou kartu, která bezproblémově zvládá 640x480 s plnýma barvama a stabilním obrazem, případně zvládá i víc. Protože má vlastní RAM, kde má uložený celý obraz a čip, který to vykreslí kvalitně (RAMDAC nebo něco lepšího), tak v podstatě by to Arduino nemuselo průběžně kreslit ten obraz pro každý pixel znova a znova, ale jen by do té grafárny zapisovalo změny.

Jenom je problém, že ta karta (co mi tu ležela v šuplíku) je na AGP sběrnici (nominálně 66 MHz a spousta pinů) - možná v šuplíku najdu i jinou pro PCI (nominálně 33MHz a mraky pinů) - a tuhle rychlost pomocí různých atmelů (a STM32 a podobných mikrokontrolerů) trvale nezvládám ani generovat, natož při tom něco dělat, jako třeba komunikovat, nebo renderovat čáry, obdélníky, kruhy a jiné útvary.

Takže přemýšlím, že když jdou ty grafické karty přetaktovat nahoru, tak by mohly jít podtaktovat i dolů do oblasti, kdy bych už stíhal na tu sběrnici posílat potřebná data. Pak by mohl ten zodpovědný mikrokontroler prostě čas od času odeslat další data, až je vymyslí. Stejně jako když nějaký skript na PC čas od času zapíše bod do grafické paměti. A AGP/PCI sběrnice přenese adresu a hodnotu a tím to pro ní hasne a o zbytek se už stará grafárna.

Samozřejmě nejlepší by bylo, kdyby ta karta zkousnula to, že na vstupní konektory přivedu nuly a jedničky (napětí/zem) a pak kliknu hodinama další tick - karta přečte data ze sběrnice - já vygeneruju a vystavím další data - další tick hodin - karta to načte ... až tam postupně přenesu že chci zapsat, adresu a hodnotu, tak si karta do svojí RAM zanese další bod a od nějakého dalšího průběhu se ten bod i zobrazí na monitoru a karta ho tam bude držet vlastní silou (tedy generovat příslušný VGA či jiný vhodný signál).

---

Přičemž bych měl jeden mikrokontroler určený pro danou grafárnu, v něm naprogramované něco jako drivery pro tu konkrétní kartu a ten mikrokontroler by byl dostupný normálními způsoby (I2C, seriál, ... cokoli mě napadne) a ostatní mikrokontrolery/8-bitové počítače/retropočítače/jiné bazmeky by mu prostě posílaly požadavky typu "nakresli obdélník odsud posud", "napiš text na tyto souřadnice" a tak podobně.

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny