FPGA Nexys 2 Board
Nie dawniej niż miesiąc temu w moje ręce wpadła płyta ewaluacyjna Nexys 2 z układem FPGA typu Spartan XC3S500E. Płytę tę otrzymałem w celu realizacji części praktycznej mojej pracy magisterskiej, której tematem jest zaprojektowanie rdzenia procesora graficznego z akceleracją 2D. Płytka zawiera:
- FPGA: XC3s500E,
- RAM: 128Mb (8M x 16b) Micron Pseudo-Static RAM,
- FLASH: 128 Mb Intel StrataFlash,
- złącze RS232,
- złącze VGA z przetwornikiem DAC 8bit,
- 4 przyciski, 8 przełączników,
- 8 diód led, 4 wyświetlacze 7-segmentowe,
- złącze rozszerzeń.
Wszystko byłoby wspaniale, gdyby nie fakt że w roli pamięci zastosowano Pseudo Static RAM, a nie po prostu konwencjonalny Static RAM z jakimś sensownym czasem dostępu na poziomie 15 ns. Użyta kość odpowiada na rządania odczytu/zapisu dopiero po ok 70-80 ns, co jest wysoce niezadowalające w momencie, gdy chcemy wykorzystać ową pamięć jako bufor na dane graficzne… Pewnikiem będę musiał wykonać swoją płytkę zawierającą FPGA z pamięcią nieulotną (oznaczenia tych układów Xilinxa, które posiadają wbudowaną pamięć nieulotną kończą się na “AN”) oraz szybki statyczny RAM (kości 1Mbit są dostępne np. w tme.pl).
Niebawem zamieszczę informację o postępach moich prac nad GPU. Póki co ograniczę się do stwierdzenia, iż posiadam zaprojektowany RAMDAC, układ rysowania wypełnionych prostokątów, arbitera wewnętrznej magistrali, bank rejestrów konfiguracyjnych GPU oraz kilka innych przydatnych bajerów. Całość testuję z użyciem złącza VGA dostępnego na płycie. Poniżej zamieszczam zdjęcie całości.
