Minimig
Minimig (prescurtare pentru Mini Amiga ) este o reimplementare open source a unui Amiga 500 prin FPGA .
Istorie
Proiectarea Minimig a fost începută în secret în ianuarie 2005 ca o dovadă a conceptului de către inginerul olandez Dennis van Weeren . Primul prototip al Minimigului se bazează pe Xilinx Spartan-3 Starter Kit ; întregul chipset Amiga OCS este sintetizat în FPGA. Două plăci cu circuite imprimate sunt conectate la porturile extinderii kitului FPGA: prima conține o versiune a procesorului 3.3V MC68000 , în timp ce a doua conține un slot MMC cu un microcontroler PIC cu controler de funcții al hard diskului , capabil să suporte Sistemul de fișiere FAT și decodarea directă a fișierelor ADF (Amiga Disk Format).
VGA - + - PS2 (joystick etc.) | CPU <-> FPGA <-> Microcontroler <-> Flashmemory | RAM
Prototipul a fost prezentat [2] la o întâlnire Amiga; în ciuda unor bug-uri , poate încărca majoritatea programelor Amiga. Van Weeren a preferat verilogul decât VHDL și a folosit un computer cu software-ul Webpack al Xilinx pentru dezvoltare.
Codul sursă și schema de conectare au fost lansate sub licența GPL versiunea 3 pe 25 iulie 2007 . La 23 decembrie 2007, ACube Systems a anunțat că va vinde plăcile Minimig v1.1 asamblate [3] .
Caracteristici
- Rulați software-ul specific Amiga pentru a converti fișiere în formate și platforme mai noi.
- Rulați software-ul disponibil numai pe Amiga.
- Joacă jocuri video pentru Amiga.
- Obțineți experiență de dezvoltare FPGA folosind Verilog .
- Permiteți crearea de software nou care utilizează noile caracteristici ale dispozitivului, menținând în același timp compatibilitatea deplină cu Amigas .
Hardware
Platformă
La rev. 1.0 din Minimig:
- Xilinx Spartan-3 FPGA (XC3S400-4PQ208C) cu 400k porturi, 82% folosit.
- Freescale MC68SEC000, 3,3 V , până la 7,09379 MHz . Printre incompatibilități: nu există ceas 'È, instrucțiunea MOVE sr, <EA> este privilegiată și nu există o instrucțiune reală care să o înlocuiască. Cu toate acestea, acest lucru nu pare să aibă impact asupra niciunui program.
- Autobuzele Amiga ChipRAM și FastRAM sunt combinate într-o singură magistrală sincronă tactată la 7,09379 MHz.
- 2 MB [4] de 70 ns SRAM asincron, organizat ca 2 bănci de 524288 cuvinte de 16 biți.
- PIC 18LF252-I / SP MCU [5] (O alternativă ar fi Atmel AVR ), care implementează un sistem de fișiere FAT16 și gestionează configurația FPGA și încărcarea kickstart. Simulează o dischetă Amiga, codificând din mers din fișierele .ADF .
- Carduri de memorie flash de tip MMC pentru încărcarea configurației FPGA, kickstart și software pentru computerul emulat.
- 3 × LED-uri pentru a afișa activitatea discului, alimentarea principală și alimentarea Amiga. La fel ca pe un Amiga real, acest din urmă LED schimbă intensitatea pentru a arăta starea filtrului audio, care însă nu este implementat.
- Convertorul digital-analog este format din 4 rezistențe pentru fiecare dintre culorile roșu, verde, albastru (4 biți / culoare) și ieșire pe conectorul VGA . [6]
- Audio obținut de la un convertor de dithering sigma-delta pe 8 biți cu filtru de ordinul 2.
- Alimentare principală de + 5V DC (~ 200 mA ).
Ușile
- 4 GPIO (General Purpose Input / Output) de la FPGA
- JTAG pentru programarea cipurilor (TMS, TDI, TDO, TCK)
- Un port serial RS232
- 2 Joystick tip Atari 2600 DE9M .
- Un port VGA DE15F (poate emite semnale compatibile PAL pentru conectarea la un SCART ).
- Un slot MMC pentru carduri de memorie flash .
- Conectori PS / 2 pentru tastatură + mouse
- Port audio jack de 3,5 mm
- Port de alimentare de 2,1 mm, + 5V DC .
Implementare
- CPU Motorola 68000 .
- Video OCS / ECS , PAL și NTSC .
- 512 kB [7] de SRAM pentru Kickstart folosit ca ROM .
- 512 kB SRAM RAM lentă. [8]
- 1024 kB SRAM Chip RAM.
- Sistem de afișare pe ecran (OSD) pentru selectarea imaginilor de disc în format ADF (Amiga Disk File) de pe cardul MMC prin tastatură sau joystick.
Probleme
- Din motive de copyright , este necesară o copie a kickstart-ului unui Amiga 500 real. Există, de asemenea, o versiune gratuită, care nu este pe deplin compatibilă. [ fără sursă ]
- Motorul sprite încă suferă de erori .
- Firmware-ul actual gestionează doar un singur director și 8.3 nume de fișiere.
Instrumente utilizate pentru o anumită dezvoltare
- Software: Xilinx Webpack versiunea 6.3.03i (2007-07-22 9.1).
Viitor
- Evoluțiile posibile includ un procesor mai rapid, chipset-ul ECS , precum și unul AGA , suport pentru hard disk-uri , pentru Ethernet , un mini core RISC pentru funcții AROS avansate etc.
- Utilizarea unui kickstart gratuit (de ex. AROS ). [9]
- O versiune cu o interfață de rețea ar elimina necesitatea utilizării mai multor memorii flash.
Actualizări
Suport pentru citire / scriere
Pe 3 martie 2008, un nou nucleu FPGA a pus la dispoziție suport pentru citire / scriere, precum și câteva îmbunătățiri grafice. [10]
Card cu controler ARM
La 22 decembrie 2008, a fost anunțat un card de înlocuire care se instalează în soclul controlerului PIC ( MCU ). Acest card implementează un hard disk, 4 dischete și suport pentru scriere. [11] Nucleul FPGA este același pentru firmware-ul noilor ARM și PIC, dar numai ARM are resurse suficiente pentru a suporta patru unități; PIC acceptă doar două. Actualizarea vă permite, de asemenea, să măriți ceasul procesorului de la 7.09 la 49.63 MHz cu o memorie cache de stat de așteptare zero de 4KB, dar necesită un nucleu FPGA pentru implementarea efectivă (care funcționează cu jetoane 68SEC000 de 16 MHz). [12]
Suportul pentru hard disk este implementat ca o interfață virtuală ATA GAYLE în stil A600 / A1200 . Cu o mică modificare hardware este posibil să se atingă până la 551 KB / s [12] , altfel viteza maximă este de ~ 300 KB / s. [13]
2 MB de memorie RAM suplimentară
Prin sudarea unui alt grup de cipuri SRAM pe spatele celor existente, este posibil să se obțină un total de 4 MB RAM [11] .
Suport AGA
Nucleul Minimig a fost actualizat cu suport AGA și extins pentru a suporta cel puțin 50 MB de memorie cu cip pe prototipul Replay proiectat de Mike Johnson la FPGA Arcade. [14] [15] [16]
Proiecte similare
Illuwatar , un designer de hardware privat în Suedia, a implementat o versiune Mini-ITX a Minimig licențiată sub licența de proiectare Open Source. În această versiune, cu dimensiunea de 17 cm x 17 cm, porturile de conectare au fost mutate în spatele cardului în conformitate cu specificațiile Mini-ITX.
Pe 11-10-2006, Jens Schönfeld de la Individual Computers a dezvăluit că acesta din urmă lucra deja de un an la un proiect comercial Amiga într-un FPGA , numit „ Clona A ”, similar cu Minimig. Spre deosebire de Minimig, Clona-A a fost dezvoltată de o echipă de trei, echipată cu un puternic analizor logic . Sistemul va folosi clone de cipuri Amiga (CIA, Paula, Gary, Agnus și Denise), în timp ce CPU va fi originalul Motorola. Cipurile finale vor implementa, de asemenea, arhitectura AGA și un port paralel, utilizabil pentru jocurile cu patru jucători. [17]
NatAmi este un proiect similar, cu scopul de a crea un Amiga high-end, dar mai orientat spre compatibilitatea cu arhitectura AGA și cu caracteristicile suplimentare ale succesorului A4000. Caracteristicile NatAmi includ chipram rapid, design pe 32 de biți cu viteză mai mare a magistralei, PCI, Floppy, ATA MC68030 (în prototip) și extindere RAM [18] .
Notă
- ^ Minimig rev 1.0 PCB , pe amiga.org (arhivat din original la 2 martie 2009) . 2006-06-11 amiga.org
- ^ HCC Commodore GG meet , pe amigaroxx.zuurkool.com (arhivat din original la 28 septembrie 2007) . 060218 amigaroxx.zuurkool.com
- ^ Acube Systems Minimig. Arhivat 16 februarie 2009 la Internet Archive .
- ^ 1 MB = 1024 kB ; 1 KB = 1024 B
- ^ PIC18F252 , pe microchip.com . 070715 microchip.com
- ^ Scheme minimig v1 Pagina3
- ^ 1 KB = 1024 B
- ^ Amiga.org - Album foto , pe amiga.org (arhivat din original la 2 martie 2009) . 070902 amiga.org
- ^ Recompensă de înlocuire ROM AROS Kickstart (Faza II) , la thenostromo.com . Adus la 28 februarie 2009 (arhivat din original la 16 septembrie 2008) .
- ^ Amiga.org - Știri , pe amiga.org . 090629 amiga.org
- ^ a b Amiga.org - Forum , pe amiga.org . 090629 amiga.org
- ^ a b youtube.com . 090629 youtube.com
- ^ Amiga.org - Forum , pe amiga.org . 090629 amiga.org
- ^ youtube.com . 100221 youtube.com
- ^ www.fpgaarcade.com , pe fpgaarcade.com .
- ^ Amiga.org - Forum , pe amiga.org . Adus la 24 februarie 2011 (arhivat din original la 17 iulie 2011) . 100221 amiga.org
- ^ Calculatoare individuale la CeBit, prezentare Clone-A pe 31-03-2007 2007-03-09 amigaworld.net
- ^ Natami , pe natami.net (arhivat din original la 4 mai 2016) .
Alte proiecte
- Wikimedia Commons conține imagini sau alte fișiere pe Minimig
linkuri externe
- ( RO ) Pagina principală a proiectului , la home.hetnet.nl .
- ( EN ) Forum oficial , pe minimig.net . Adus la 15 mai 2010 (arhivat din original la 27 mai 2010) .
- ( EN ) Grupul Yahoo al proiectului Sister Altera DE1 & DE2 , pe gamesource.groups.yahoo.com . Adus la 28 februarie 2009 (arhivat din original la 3 aprilie 2012) .
- ( EN ) Xilinx ISE Webpack , pe xilinx.com .
- ( RO ) Recompensă de înlocuire ROM AROS Kickstart (Faza II) , pe thenostromo.com (arhivată din original la 16 septembrie 2008) .
- ( EN ) BitFellas: Content / Jurassic Pack # 17/3 - Amiga Extreme - 6 - The MiniMig Project , pe bitfellas.org .
- ( RO ) Versiune neoficială Mini-ITX , pe illuwatar.se .
- ( EN ) Mini Minig neoficial , pe illuwatar.se .
- ( FR ) Revizuire minimă , pe obligement.free.fr .
- ( RO ) ACube Minimig v.1.1 Review Partea 1 (cu listă de software compatibil), februarie 2008 Arhivat 22 ianuarie 2009 la Internet Archive . șiPartea 2 Arhivat2 martie 2009 la Internet Archive .
- ( EN ) Loriano Pagni lansează primul wrapper comercial pentru Minimig, iulie 2008 , pe loriano.pwp.blueyonder.co.uk . Adus la 28 februarie 2009 (arhivat din original la 22 ianuarie 2009) .