Obsah:

Systém vývoja programovateľnej logiky (GPLD) v Ghete: 13 krokov
Systém vývoja programovateľnej logiky (GPLD) v Ghete: 13 krokov

Video: Systém vývoja programovateľnej logiky (GPLD) v Ghete: 13 krokov

Video: Systém vývoja programovateľnej logiky (GPLD) v Ghete: 13 krokov
Video: ZEITGEIST: MOVING FORWARD | OFFICIAL RELEASE | 2011 2024, November
Anonim
Systém vývoja programovateľnej logiky (GPLD) v Ghette
Systém vývoja programovateľnej logiky (GPLD) v Ghette

Posledných niekoľko mesiacov ma baví Ghetto Development System pre procesory AVR. V skutočnosti sa tento takmer nulový dolárový nástroj ukázal byť taký fascinujúci a užitočný, že ma prinútilo premýšľať, či je možné rozšíriť koncept aj na vývoj FPGA/CPLD. (FPGA: Field Programmable Gate Array. CPLD: Complex Programmable Logic Device.) Tak som sa trochu prekopal na webe a prišiel som na vývojový systém pre Atmel CPLD. Porovnanie so zariadeniami Altera ukazuje, že ich vývod je rovnaký (v rámci obmedzení, ktoré podrobne uvádzam nižšie), takže budú fungovať tiež. Postavením vývojovej dosky a kábla rozhrania, ktoré predstavím, a stiahnutím nástrojov si môžete vyvíjať vlastné aplikácie CPLD. Upozorňujeme na nasledujúce obmedzenia a obmedzenia. Snažil som sa vyvážiť schopnosť a jednoduchosť, aby ste mohli stavať niečo, čo vás bude baviť a učiť sa to iba z 5V zariadení. Rozšírenie systému na pokrytie ďalších napätí (zariadenia Atmel v rovnakej rodine podporujú 3,3 V, 2,5 V, 1,8 V) nie je náročné, ale komplikuje vývojovú dosku aj programovací kábel. Teraz to preskočme. Všimnite si toho, že na dosku musíte poskytnúť 5V napájanie. Iba 44 pinový PLCC. Konkrétne som naprogramoval Atmel ATF1504AS. Koncept Ghetto CPLD je možné ľahko rozšíriť aj na ďalšie zariadenia Atmel, ale toto zariadenie sa javilo ako dobrý kompromis medzi cenou, jednoduchosťou použitia a schopnosťou. Tento koncept by sa mal rozšíriť aj na ďalšie zariadenia, ako sú napríklad zariadenia Altera, Xilinx, Actel atď. V skutočnosti bude rodina MaxM000 EPM7032 a EPM7064 pracovať v rovnakej zásuvke, pokiaľ budete používať 44 -pinové verzie PLCC. Zatiaľ som používal iba programovací kábel Atmel, ale Altera Byte-Blaster je podporovaný softvérom Atmel a mal by tiež fungovať dobre. Je to vlastne trochu jednoduchší dizajn ako kábel Atmel. (Postavil som verziu Atmel a funguje, takže verziu Altera som neskúsil.) SparkFun ponúka verziu kábla Altera za 15 dolárov. Pretože to bude fungovať pre Atmel aj Altera, odporúčam to. Ak sa chystáte vyvíjať s dielmi Altera, budete chcieť získať aj softvér Altera. V skutočnosti som to neskúsil, ale nie je dôvod, aby som si myslel, že by to nefungovalo. Rýchlosť je obmedzená. Pretože vývojový systém Ghetto CPLD je vyrobený s ručným zapojením a bez základnej dosky, nečakajte spoľahlivú prevádzku pri rýchlostiach nad niekoľko megahertzov. Aj keď to nie je zaručené, váš počet najazdených kilometrov sa môže líšiť! Samozrejme, ak zostrojíte prototyp hardvéru, ktorý má základnú rovinu, potom môže vaša CPLD fungovať dobre aj pri vyšších rýchlostiach. Len nečakajte, že sa v systéme rozvoja geta rýchlo namontuje.

Krok 1: Objednajte si diely

Choďte objednať diely
Choďte objednať diely

Na jeho vybudovanie budete potrebovať 44-pinovú zásuvku plcc, niekoľko oddeľovacích krytiek, niektoré neprogramované CPLD, zásuvky na prepojenie prepojovacích panelov, výsuvný odpor a možno aj nejakú výkonnú dosku. Ak máte niečo z tohto vo svojom nevyžiadanej schránke, môžete ušetriť pár dolárov. Pre vaše pohodlie sú tu čísla dielov Digikey: CONN PLCC SOCKET 44POS TIN PN: 1-822473-4-ND SOCKET IC OPEN FRAME 14POS.3 "PN: 3M5462-ND Množstvo: 2SOCKET IC OTVORENÝ RÁM 18POS.3 "PN: 3M5464-ND Množstvo: 2CAP ELECT 10UF 50V SU BI-POLAR PN: P1280-ND Množstvo: 1, C1CAP CER.10UF 50V 20% DISC RAD PN: 478 -4275-1-ND Množstvo: 4, C2-C5RES KOVOVÝ FILM 5,10K OHM 1/4W 1% PN: P5.10KCACT-ND PC DOSKA FR4 1-STRANNÁ PPH 4,0X4,0 PN: V2010-ND IC CPLD 64 MACROCELL 10NS 44PLCC PN: ATF1504AS-10JC44-ND Niekoľko dielov môže mať minimálne množstvo, ale malo by byť stále dosť lacné. Ak chcete postaviť pár blinkenlightov (krok 8) alebo vytvoriť sadu spínačov (krok 9), môžete si objednať aj tieto. Majte na pamäti, že Digikey má minimum 25 dolárov, aby ste sa vyhli manipulačnému poplatku, takže si možno budete chcieť kúpiť pár neprogramovaných CPLD alebo procesor AVR alebo dva len tak pre zábavu. Odporúčam vám kúpiť si programovací kábel Altera od spoločnosti SparkFun. Tu sú čísla dielov. Získajte aj kábel a konektor. (V opačnom prípade si diely pre kábel objednajte od spoločnosti Digikey, ak si staviate vlastnú.) Programátor kompatibilný s Altera FPGA PN: PGM-087052x5 Pin IDC plochý kábel PN: PRT-085352x5 zahalený kolíkový konektor PN: PRT-08506

Krok 2: Získajte a nainštalujte softvér

Získajte a nainštalujte softvér
Získajte a nainštalujte softvér

Aktuálne používam reťazec nástrojov Atmel Prochip Designer 5.0. Tento nástroj vyžaduje, aby ste sa zaregistrovali u spoločnosti Atmel a vyplnili oficiálny formulár žiadosti. Povedal som im, že som konštruktér, v súčasnej dobe nezamestnaný, a mojím primárnym cieľom bolo naučiť sa ich zariadenia a VHDL (všetko pravda, BTW). Schválili žiadosť o licenciu. Jediným háčikom je, že licencia je dobrá iba na 6 mesiacov. Dúfam, že do konca jeho platnosti nájdem verejný reťazec nástrojov. Altera má tiež reťazec nástrojov, ktorý môžem vyskúšať. Akékoľvek návrhy budú vítané. V poslednom kroku si pozrite komentáre a odkazy. Atmel Prochip Designer 5.0 je tu. Ak ho získate, nezabudnite k nemu získať aj balík Service Pack 1.

Krok 3: Vytvorte programovací kábel

Vytvorte programovací kábel
Vytvorte programovací kábel

Najľahším prístupom je kúpiť podobné dielo Altera Byte-Blaster od spoločnosti Sparkfun (pozri krok 1). Ak je 15 dolárov viac, ako by ste chceli minúť, potom môžete použiť schému SparkFun Altera Cable alebo schému Atmel Cable a schému na výstavbu. (Ak je veľký záujem o stavbu kábla od začiatku, môžem ponúknuť niekoľko návrhov, ale sada Sparkfun sa mi zdá byť správnou odpoveďou.)

Krok 4: Vytvorte kolísku programátora

Vyrobte si kolísku programátora
Vyrobte si kolísku programátora
Vyrobte si kolísku programátora
Vyrobte si kolísku programátora
Vyrobte si kolísku programátora
Vyrobte si kolísku programátora

Pozrite sa na programátora Atmel. Je to veľmi flexibilné a je to skvelá voľba, ak máte peniaze a plánujete veľa vývoja CPLD. Verím, že Altera ponúka niečo podobné. Ale ja som išiel s lacnejším prístupom - o tom to je! Obrázky zobrazujú pohľad spredu a zozadu na kolísku, ktorú som postavil. Všimnite si zásuviek DIP používaných ako konektory na doske. Všetky kolíky na jednej strane každého konektora sú spojené so zemou; piny na druhej strane sa pripájajú k signálnym kolíkom na CPLD. Zahrnul som aj niekoľko napájacích pripojení; dajte ich tam, kde sa hodia. Diagramy sú akousi obrazovou schémou; nezobrazujú sa iba pripojenia dodatočného napájania. Pozrite sa na obrázky, kde nájdete nápady na tieto otázky.

Krok 5: Stavba kolísky - časť 1

Budovanie kolísky - 1. časť
Budovanie kolísky - 1. časť
Budovanie kolísky - 1. časť
Budovanie kolísky - 1. časť

Začnite stavať kolísku vložením zásuviek na požadované miesta. Nechajte prázdny rad alebo dva, aby bolo miesto na oddeľovacie čiapky. To tiež uľahčuje pripojenie k signálnym kolíkom CPLD. Zásuvky ukotvite trochou spájky alebo epoxidu v závislosti od typu použitej dosky. V hornej časti (nad kolíkom 1 zásuvky CPLD) ponechajte trochu miesta navyše pre konektor JTAG a napájací konektor. Pozrite sa na obrázky toho, ktorý som postavil. Veďte vonkajší drôt (približne 20 gauge) okolo vonkajšej strany zásuviek pre pozemnú zbernicu. Nasmerujte tiež napájaciu zbernicu. (Červený vodič na obrázkoch.) Pokyny nájdete na obrázkoch, ale vaša doska bude pravdepodobne trochu iná - a to je v poriadku. Vonkajšie kolíky zásuviek spájkujte so zemnou zbernicou. Pomôže to ukotviť drôt zbernice.

Krok 6: Stavba kolísky - časť 2

Budovanie kolísky - časť 2
Budovanie kolísky - časť 2
Budovanie kolísky - časť 2
Budovanie kolísky - časť 2

Nainštalujte oddeľovacie krytky a pripojte ich k uzemňovacím a napájacím kolíkom na každej strane zásuvky CPLD. Navrhujem nasmerovať drôty hore a cez vonkajšie rady čapov, aby sa dostali do vnútorných radov. Správne piny nájdete v diagramoch s číslami pinov - vývod na zásuvke CPLD nie je ani zďaleka zrejmý. Ponechajte dostatok priestoru, aby sa umožnilo pripojenie k akýmkoľvek kolíkom, cez ktoré vediete vodiče. Akonáhle sú pripojenia uzáveru hotové, pripojte napájaciu a uzemňovaciu zbernicu. Všetky červené kolíky na diagramoch sú Vcc a mali by byť pripojené. Čierne kolíky sú uzemnené a mali by byť tiež spojené. Jeho smerovanie vo vzduchu je opäť dobrý prístup. Pozrite sa na obrázky, kde nájdete nápady.

Krok 7: Budovanie kolísky - záver

Budovanie kolísky - záver
Budovanie kolísky - záver
Budovanie kolísky - záver
Budovanie kolísky - záver
Budovanie kolísky - záver
Budovanie kolísky - záver

Veďte pripojenia JTAG na správne kolíky. Pozrite sa na svoj programovací kábel a uistite sa, že je konektor správne orientovaný. Nezabudnite na výťah na čape TDO. Toto je zobrazené iba na obrázku a ide medzi pin TDO a Vcc. Posledným krokom je pripojenie každého I/O kolíka CPLD k kolíku na zásuvkách. Na zapojenie použite čísla v diagramoch. Toto trvá najdlhšie! Ak sa budete riadiť mojou schémou číslovania, potom môžete diagram Top View použiť ako sprievodcu pri pripájaní obvodov. Na začiatku skutočne nemusíte spájať všetky tieto položky, môžete počkať, kým ich nebudete potrebovať pre obvody, ktoré navrhujete. Starostlivo skontrolujte svoju prácu. Zaistite, aby napájanie a zem neboli skratované!

Krok 8: Vytvorte blinkenlights (verzia TTL)

Make Blinkenlights (verzia TTL)
Make Blinkenlights (verzia TTL)

Budete chcieť vidieť, ako vaše obvody fungujú, samozrejme. Takže budete chcieť nejaké blinkenlights (preslávené The Real Elliot). Jediným úlovkom je, že CPLD nemajú také silné výstupy, aké majú procesory AVR. Používajte LED diódy dimenzované na 10mA a používajte odpory radu 1KOhm. Tým získate jasné výstupné signály bez namáhania výstupov CPLD.

Krok 9: Vykonajte prepínače

Vykonajte prepínače
Vykonajte prepínače
Vykonajte prepínače
Vykonajte prepínače

Aby ste svojim obvodom poskytli podnety, budete potrebovať niekoľko prepínačov. Máte tu niekoľko možností, ale požiadavky sú iné ako na procesory AVR. Výstupy CPLD nemajú vstavané prísuvy a nie je také jednoduché vykonať softvérovú demontáž. (Je to možné, ale vyžaduje zdroje, ktoré pravdepodobne chcete použiť vo svojich obvodoch.) Zobrazené prepínače DIP poskytujú niekoľko prepínačov vo výhodnom balení, ale je potrebné ich vytiahnuť. Použil som 1K pull-up. Pushbutttons môžu byť vyrobené pomocou obvodu, ktorý Atmel odporúča pre ich demo dosku. Schémy sú na strane 36 alebo tak. Ďalšou možnosťou je pripojiť procesor AVR, aby poskytoval podnety - a dokonca kontroloval reakcie. Ale to je cvičenie, ktoré zostáva na študentovi.

Krok 10: Vytvorte svoj prvý obvod

Vytvorte svoj prvý obvod
Vytvorte svoj prvý obvod
Vytvorte svoj prvý obvod
Vytvorte svoj prvý obvod

Do tejto doby by ste mali softvér získať a nainštalovať. Nasledujte dôkladný a podrobný návod a vytvorte si prvý jednoduchý obvod CPLD (brána s dvoma vstupmi a hradlom; už to nebude jednoduchšie). Uistite sa, že vyberiete správne zariadenie (44 pin PLCC, 5V, 1504AS [podrobnosti]) a vyberiete dostupné čísla pinov I/O (použil som 14 a 16 ako vstupy; 28 ako výstup). Tieto podrobnosti sa mierne líšia od tutoriálu, ale nemali by vám spôsobovať problémy.

Krok 11: Naprogramujte svoju prvú CPLD

Naprogramujte svoju prvú CPLD
Naprogramujte svoju prvú CPLD
Naprogramujte svoju prvú CPLD
Naprogramujte svoju prvú CPLD

Pripojte programovací kábel k paralelnému portu na počítači, zapojte ho do kolísky programátora, zapojte 5 voltov do napájacieho konektora a podľa pokynov si skutočne naprogramujte úplne prvú CPLD. Vyberte správnu verziu kábla. Upozorňujeme, že Altera Byte-Blaster je jednou z možností.

Krok 12: Otestujte si naprogramovanú časť

Otestujte si naprogramovanú časť!
Otestujte si naprogramovanú časť!
Otestujte si naprogramovanú časť!
Otestujte si naprogramovanú časť!

Odpojte programovací kábel od kolísky. Zapojte prepínače a svetlá do správnych kolíkov, zapnite napájanie a vyskúšajte to. Keďže začínate s jednoduchým obvodom, testovanie nie je veľká výzva. Ak to funguje, môžete vyraziť! Schéma horného pohľadu vás prevedie pripojením prepínačov a blinklov na testovanie.

Krok 13: Koniec a niektoré webové zdroje

Koniec a niektoré webové zdroje
Koniec a niektoré webové zdroje

Cieľom tohto tutoriálu nie je naučiť vás používať VHDL. (Začínam sa učiť, preto som vytvoril programátora, pamätáte?) To znamená, že som našiel niekoľko veľmi užitočných návodov a niekoľko užitočných zdrojov, na ktoré vás môžem nasmerovať. Veľmi si ceníme spätnú väzbu a ďalšie návrhy. Všimnite si toho, že môžete použiť aj vývojový systém Ghetto CPLD na osvojenie si Verilogu a ďalších programovacích techník CPLD, ktoré hardvér nezaujíma. Zdroje VHDL na webe: Základy a niektoré odkazy tu a tu. Odkazy na bezplatné nástroje. Návody, ktoré sa mi páčia, sú tu a tu, ale nájdete mnoho ďalších. Nakoniec (zatiaľ) sa budete chcieť pozrieť do diskusnej skupiny. Bavte sa, veľa sa naučte a podeľte sa o to, čo viete.

Odporúča: