J1 CPU vo VHDL.

Ďalší záchvat prokrastinace. A napriek tomu aby som pracoval na dokončení VHDL verzie C_brainu, z dôvodu jednoduchšieho vývoja bez ROM emulátoru. Som sa flákal na nete a narazil na J1 CPU. Jedná sa o Forth CPU. To znamená že nemá žiadne registre ale len zásobníky.

CPU ji použitý aj v Gameduine. Kde funguje ako coprocesor.  Gameduino je veľmi pekný spôsob ako si predstavujem Grafické !karty pre 8bit projekty a OpenSource retro konzoly. Len to SPI rozhranie sa mi nepáči. Ale k mojej konverzii. Najprv som krvopotne upravil povodne Verilog core pre Altera Cyclone-II. TU som vlastne len vypreparoval pôvodnú RAM a nahradil som ju alteráckou.  Súbory nájdete tu. Ine zmeny som nerobil aj keď autor tam má chyby v poznámkach. Moju VHDL konverziou zatiaľ netestovanú nájdete tu. Aktuálne je moja verzia menšia co sa týka do použitia LUT-ov aj RAM. Ale podla TimeQuestu je pomalšia. Tiež obsahuje pár vylepšení. Či skôr z núdze cnosti. Asi najväčšia je spôsob realizácie stackou.  Verilog kód ich správne identifikuje ako pamäte a systetizér ich zrealizuje ako pamäťoví blok. Bohužiaľ moju konštrukciu cez definovanie typov, realizoval ako kvantum registrov.  Preto som to natvrdo zrealizoval ako jednu dvoj-portovú RAM. Keďže sa do pamäťového bloku vmestia oba stacky aj z rezervou som využil možnosť dvoch portov. Ak sa ešte budem nudiť chcem kód rozložiť na viaceré komponenty. Čím bude systém vizuálne prehľadnejší.

Ak ma niekto toto VHDL vyskúša  Dajte vedieť.

Print Friendly, PDF & Email