Školní deska s FPGA XILINX Spartan 3AN

Milan Horkel

Školní deska vznikla protože jsem se nechal přesvědčit kluky na radiotechnickém kroužku, že by je zajímalo jak fungují obvody FPGA a že by si rádi zkusili něco s nimi udělat. Tento dokument ale nepopisuje desku,  spíše ukazuje, že i taková deska se dá vyrobit podomácku. Skutečnou dokumentaci naleznete u verze S3AN01B, která se od této liší jen minimálně.

Image

Acrobat PDF verze

Technické parametry

Parametr Hodnota Poznámka
Použitý obvod FPGA XILINX Spartan3 XC3S50AN  
Náhrada Deska S3AN01B   

Popis konstrukce

Úvodem

Jak jsem psal v úvodu, motivace byla jednoznačná. Postavit dostatečně jednoduchou školní vývojovou desku s obvodem programovatelné logiky. Původně jsem uvažoval o obvodu CPLD, ale ukázalo se, že obvod FPGA se dá koupit za velmi podobnou cenu a přitom přináší nesrovnatelně bohatší možnosti.

Protože jsem od přírody skeptik, rozhodl jsem se nejdříve realizovat prototyp podomácku. Jen tak pro případ, že bych udělal nějakou chybu v návrhu. Přeci jenom objednání plošných spojů není úplně zdarma. A ukázalo se, že se to vyplatilo. Jak člověk dělá konstrukci po kouskách po večerech, skoro jako televizní seriál, přehlédne snadno spoustu drobností. Až se sám diví.

Takže jaké chyby se objevily? Tyhle:

První chyba, je skoro nepochopitelná. Normálně bych jí neudělal, ale protože jsem schéma kreslil na pokračování, snadno jsem zapomněl, že odpory nejsou ani stránce schématu s obvodem FPGA, ani na stránce schématu s LED displejem.

Druhá chyba je taková hloupá. Je trochu nepochopitelné, proč u tak komplexní součástky je několik nožiček (asi 6) jen vstupních.

Návrh desky

Základem je chytrý návrh desky. Součástka je dost rychlá (stovky MHz) a tomu musí odpovídat kvalita zemní plochy a rozvod napájení. Protože design je dost složitý, nelze vystačit s jednou stranou spojů a jednou stranou zemní plochy. Snahou bylo navrhnout desku tak, aby zemní plocha byla nezbytnými spoji narušena co nejméně. I na straně zemní plochy musí být pár spojů.

Profesionální deska bude tedy klasická dvoustranná se spoji na jedné straně a se zemní plochou a několika spoji na straně druhé.

Image Image

Obrázek vlevo ukazuje detail rozvodu napájení pro obvod FPGA. Jsou tam pěkně vidět prokovy a propojky. Velká plocha uprostřed je plocha napájecího napětí +1.2V pro jádro obvodu a tlustý vodič okolo plochy je +3.3V pro napájení IO vývodů. Blokování zajišťují kondenzátory vně obvodu FPGA zapojené do zemní ploch pomocí prokovů. Obrázek vpravo ukazuje celý motiv zemní strany včetně rozlité zemní plochy.

Amatérská výroba desky

Pro amatérskou výrobu si život usnadníme tím, že strana součástek bude celá měděná (zemní plocha přes celou desku) a chybějící spoje realizujeme propojkami. Prokovy realizujeme drátovými spoji pájenými z obou stran desky. To je běžné.

Chybějící spoje nahradíme drátovými propojkami. Pokud na desku nalepíme na samolepce vytištěný „potisk“, zabijeme tím dvě mouchy najednou. Nebudeme muset při používání desky koukat do dokumentace a propojky můžeme udělat z pocínovaného drátu. Jen nesmíme zapomenou vrtákem odvrtat okraje zemní plochy kolem otvorů, které nemají být uzemněné. Spoje od prokovů na straně součástí děláme co nejplacatější aby nevadily pod samolepkou.

Image

Problém je co se spoji pod obvodem FPGA? Obvod je velmi placatý a pod břichem má opravdu velmi málo místa. Tak asi 50um.

Image

50um, co s tím?

Jde to kupodivu snadno. Vezmeme dobrou vrtačku a upneme do ní malou frézu o průměru 2-3mm. Naštelujeme si doraz tak, abychom neodfrézovali měď, ale jen nadbytečný cín.

Image Image

Po dokončení ozkoušíme, jestli přeci jen spoje pod obvodem FPGA nepřečuhují a jestli se obvod neviklá a když je vše v pořádku pustíme se do osazování.

Osazení a oživení

Aby deska mohla fungovat, je třeba udělat tyto opravy.

Oprava chyb

Doplníme 2 drátové spoje dle obrázku. Tím se připojí LED displej chybně připojený na vývody FPGA, které jsou jen vstupní na vývody, které jsou i výstupní.

Image

Tyto použité vývody patřily rozhraní PS/2 a proto je třeba jejich spojení s PS/2 rozraním přerušit. Přiškrábneme dva spoje na obrázku vpravo od odporů 4k7. Aby mohlo PS/2 rozhraní fungovat doplníme 2 nové spoje směrem dolu na dosud nevyužité vývody (testovací body).

Image Image

Po dokončení těchto úprav získáme desku, která je kompatibilní s aktualizovanou deskou S3AN01B.