Sadržaj:

Sustav razvoja geto programabilne logike (CPLD): 13 koraka
Sustav razvoja geto programabilne logike (CPLD): 13 koraka

Video: Sustav razvoja geto programabilne logike (CPLD): 13 koraka

Video: Sustav razvoja geto programabilne logike (CPLD): 13 koraka
Video: СУПЕР УПРАЖНЕНИЕ — ОСТАНАВЛИВАЕМ КАТАРАКТУ! 2024, Studeni
Anonim
Sustav za razvoj geto programabilne logike (CPLD)
Sustav za razvoj geto programabilne logike (CPLD)

Posljednjih nekoliko mjeseci uživam u Ghetto Development Systemu za AVR procesore. Zapravo, ovaj alat od gotovo nula dolara pokazao se toliko fascinantnim i korisnim da sam se zapitao je li moguće proširiti koncept i na razvoj FPGA/CPLD -a. (FPGA: Field Programmable Gate Array. CPLD: Complex Programmable Logic Device.) Pa sam malo kopao po webu i smislio razvojni sustav za Atmel CPLD -ove. Usporedba s Altera uređajima pokazuje da im je ispis isti (unutar ograničenja koja sam detaljno opisao u nastavku), pa će i oni raditi. Izgradnjom razvojne ploče i kabela sučelja koje ću predstaviti, a zatim preuzimanjem alata, možete razviti vlastite CPLD aplikacije. Imajte na umu sljedeća ograničenja i ograničenja. Pokušao sam uravnotežiti sposobnosti i jednostavnost kako biste mogli izgraditi nešto u čemu ćete uživati i naučiti samo na uređajima od 5 V. Proširenje sustava na pokrivanje dodatnih napona (3,3 V, 2,5 V, 1,8 V podržavaju uređaji Atmel u istoj obitelji) nije teško, ali komplicira i razvojnu ploču i programski kabel. Za sada to preskočimo. Imajte na umu da na ploči morate osigurati napajanje od 5 V. Samo 44 -polni PLCC. Konkretno, programirao sam Atmel ATF1504AS. Koncept Ghetto CPLD lako se može proširiti i na druge Atmelove uređaje, no činilo se da je ovaj uređaj dobar kompromis između cijene, jednostavnosti korištenja i mogućnosti. Koncept bi se trebao proširiti i na druge uređaje kao što su oni iz Altera, Xilinx, Actel itd. Zapravo, obitelji Max7000 EPM7032 i EPM7064 radit će u istoj utičnici sve dok koristite 44 -pinske PLCC verzije. Do sada sam koristio samo programski kabel Atmel, ali Altera Byte-Blaster podržava softver Atmel i također bi trebao raditi. Zapravo je malo jednostavnijeg dizajna od kabela Atmel. (Napravio sam verziju Atmel i radi, pa nisam probao verziju Altera.) SparkFun nudi verziju kabela Altera od 15 USD. Budući da će ovo raditi i za Atmel i za Alteru, preporučujem. Ako ćete se razvijati s dijelovima Altera, poželjet ćete nabaviti i softver Altera. Ovo zapravo nisam probao, ali nema razloga da pomislim da ne bi uspio. Brzina je ograničena. Budući da je Ghetto CPLD razvojni sustav izgrađen s ručnim ožičenjem i bez uzemljenja, ne očekujte pouzdan rad pri brzinama većim od nekoliko megaherca. Čak ni to nije zajamčeno da se vaša kilometraža može razlikovati! Naravno, ako izgradite prototipni hardver koji ima ravninu uzemljenja, tada bi vaš CPLD mogao raditi sasvim u redu pri većim brzinama. Samo nemojte očekivati da će se brzo ugraditi u Ghetto Development System.

Korak 1: Idite naručiti dijelove

Idi naručiti dijelove
Idi naručiti dijelove

Trebat će vam 44-polna plcc utičnica, neki poklopci za odvajanje, neki neprogramirani CPLD-ovi, utičnice za povezivanje matične ploče, pull-up otpornik i možda neka perf ploča za nadogradnju. Ako imate nešto od ovoga u kutiji za smeće, možete uštedjeti nekoliko dolara. Radi vaše udobnosti, ovdje su Digikey brojevi dijelova: CONN PLCC UTIČNICA 44POS TIN PN: 1-822473-4-ND UTIČNICA IC OPEN FRAME 14POS.3 "PN: 3M5462-ND Količina: 2SOCKET IC OPEN FRAME 18POS.3 "PN: 3M5464-ND Količina: 2CAP ELECT 10UF 50V SU BI-POLAR PN: P1280-ND Količina: 1, C1CAP CER.10UF 50V 20% DISK RAD PN: 478 -4275-1-ND Količina: 4, C2-C5RES METALNI FILM 5,10 K OHM 1/4W 1% PN: P5,10KCACT-ND PC PLAST FR4 1-STRANA PPH 4,0X4,0 PN: V2010-ND IC CPLD 64 MACROCELL 10NS 44PLCC PN: ATF1504AS-10JC44-ND Nekoliko dijelova može imati minimalne količine, ali bi ipak trebalo biti prilično jeftino. Ako želite izgraditi nekoliko bljeskalica (korak 8) ili napraviti niz prekidača (korak 9), možda ćete željeti naručiti i ove. Imajte na umu da Digikey ima minimum od 25 USD kako bi izbjegao troškove rukovanja, pa biste možda htjeli nabaviti nekoliko dodatnih ne programiranih CPLD -ova ili AVR procesor ili dva samo za zabavu. Preporučujem da kupite programski kabel Altera od SparkFuna. Evo brojeva dijelova. Uzmite i kabel i priključak. (Inače, naručite dijelove za kabel od Digikey-a ako sami gradite.) Altera FPGA kompatibilni programer PN: PGM-087052x5 Pin IDC vrpčasti kabel PN: PRT-085352x5 Zakrivljeno zaglavlje pin-a PN: PRT-08506

Korak 2: Nabavite i instalirajte softver

Nabavite i instalirajte softver
Nabavite i instalirajte softver

Trenutno koristim lanac alata Atmel Prochip Designer 5.0. Ovaj alat zahtijeva da se registrirate u Atmelu i ispunite službeni obrazac zahtjeva. Rekao sam im da sam inženjer dizajna, trenutno nezaposlen, i da mi je primarna svrha naučiti njihove uređaje i VHDL (sve istina, BTW). Odobrili su zahtjev za licencu. Jedina je zamjerka da je licenca dobra samo 6 mjeseci. Nadam se da ću pronaći lanac alata javne domene do isteka. Altera također ima lanac alata koji mogu provjeriti. Svaki prijedlog bit će uvažen. Pogledajte komentare i veze u posljednjem koraku. Ovdje je Atmel Prochip Designer 5.0. Ako ga nabavite, svakako nabavite i servisni paket 1 za njega.

Korak 3: Napravite kabel za programiranje

Napravite kabel za programiranje
Napravite kabel za programiranje

Najjednostavniji pristup ovdje je kupiti slično djelo Altera Byte-Blaster od Sparkfuna (vidi 1. korak). Ako je 15 USD više nego što želite potrošiti, tada možete upotrijebiti shemu kabela SparkFun Altera ili shemu kabela Atmel i izraditi je po nuli. (Ako postoji veliko zanimanje za izradu kabela od ogrebotina, mogu vam ponuditi neke prijedloge, ali Sparkfun komplet mi se čini kao pravi odgovor.)

Korak 4: Napravite ležište za programere

Napravite postolje za programere
Napravite postolje za programere
Napravite ležište za programere
Napravite ležište za programere
Napravite postolje za programere
Napravite postolje za programere

Pogledajte programera Atmel. Ovo je vrlo fleksibilno i izvrsna je opcija ako imate para i planirate puno raditi na razvoju CPLD -a. Vjerujem da Altera nudi nešto slično. No, krenuo sam s jeftinijim pristupom - o tome se ovdje radi! Slike prikazuju prednji i stražnji pogled na kolijevku koju sam sagradio. Obratite pozornost na DIP utičnice koje se koriste kao priključci za matičnu ploču. Svi pinovi s jedne strane svakog konektora spojeni su na masu; pinovi s druge strane spajaju se na signalne pinove na CPLD -u. Uključio sam i nekoliko priključaka za napajanje; stavite ih tamo gdje odgovaraju. Dijagrami su svojevrsne slikovne sheme; samo dodatne veze za napajanje nisu prikazane. Za slike o idejama pogledajte slike.

Korak 5: Izgradnja kolijevke - 1. dio

Izgradnja kolijevke - 1. dio
Izgradnja kolijevke - 1. dio
Izgradnja kolijevke - 1. dio
Izgradnja kolijevke - 1. dio

Počnite graditi kolijevku umetanjem utičnica na mjesta na kojima ih želite. Dopustite prazan red ili dva kako bi bilo mjesta za odvojne kape. Ovo također olakšava spajanje na signalne pinove CPLD. Priključite utičnice s malo lema ili epoksida ovisno o vrsti perf ploče koju koristite. Omogućite dodatni prostor na vrhu (iznad pina 1 CPLD utičnice) za JTAG konektor i priključak za napajanje. Pogledajte slike ove koju sam sagradio. Provucite golu žicu (oko 20 -ak mjerača) oko vanjske strane utičnica za uzemljenje sabirnice. Također usmjerite sabirnicu napajanja. (Crvena žica na slikama.) Pogledajte slike za neke smjernice, ali vaša će ploča vjerojatno biti malo drugačija - i to je sasvim u redu. Lemite vanjske igle utičnica na sabirnicu za uzemljenje. To će pomoći pri sidrenju žice sabirnice.

Korak 6: Izgradnja kolijevke - 2. dio

Izgradnja kolijevke - 2. dio
Izgradnja kolijevke - 2. dio
Izgradnja kolijevke - 2. dio
Izgradnja kolijevke - 2. dio

Ugradite poklopce za odvajanje i spojite ih na uzemljenje i priključke za napajanje sa svake strane CPLD utičnice. Predlažem usmjeravanje žica prema vanjskim redovima pinova kako bi dosegli unutarnje redove. Pogledajte dijagrame broja pinova da biste dobili ispravne pinove - pin -out CPLD utičnice daleko je od očitog. Ostavite dovoljno prostora za spajanje na sve pinove preko kojih prolazite žice. Nakon povezivanja poklopca, spojite sabirnicu napajanja i uzemljenja. Svi crveni pinovi na dijagramima su Vcc i trebaju biti povezani. Crne iglice su uzemljene i također ih treba spojiti. Opet, usmjeravanje u zraku je dobar pristup. Za slike pogledajte slike.

Korak 7: Izgradnja kolijevke - zaključak

Izgradnja kolijevke - zaključak
Izgradnja kolijevke - zaključak
Izgradnja kolijevke - zaključak
Izgradnja kolijevke - zaključak
Izgradnja kolijevke - zaključak
Izgradnja kolijevke - zaključak

Usmjerite JTAG veze na ispravne pinove. Pogledajte svoj programski kabel kako biste bili sigurni da je priključak ispravno orijentiran. Ne zaboravite na podizanje na TDO iglici. Ovo je prikazano samo na slici i ide između TDO pina i Vcc. Zadnji korak je povezivanje svakog I/O pina CPLD -a s pinom na utičnicama. Za povezivanje koristite brojeve na dijagramima. Ovo traje najduže! Ako slijedite moju shemu numeriranja, tada možete koristiti dijagram Top View kao vodič pri povezivanju svojih krugova. Zaista ne morate spojiti sve ovo u početku, možete pričekati dok vam ne zatrebaju za sklopove koje dizajnirate. Pažljivo provjerite svoj rad. Budite sigurni da napajanje i uzemljenje nisu kratki!

Korak 8: Napravite Blinkenlights (TTL verzija)

Napravite Blinkenlights (TTL verzija)
Napravite Blinkenlights (TTL verzija)

Naravno, htjet ćete vidjeti kako vaša kola rade. Dakle, poželjet ćete blinkenlights (proslavio ih je The Real Elliot). Jedina je zamjerka u tome što CPLD nemaju jake izlaze koje imaju AVR procesori. Koristite LED diode ocijenjene za 10 mA i otpornike serije 1KOhm. Oni će vam dati jasne izlazne signale bez naprezanja CPLD izlaza.

Korak 9: Napravite prekidače

Napravite prekidače
Napravite prekidače
Napravite prekidače
Napravite prekidače

Da biste osigurali poticaje za svoje krugove, trebat će vam neki prekidači. Ovdje imate neke mogućnosti, ali zahtjevi su drugačiji nego za AVR procesore. CPLD izlazi nemaju ugrađene pull-up-ove i nije tako lako odvojiti softver od softvera. (Moguće je, ali zahtijeva resurse koje vjerojatno želite koristiti u svojim krugovima.) Prikazani DIP prekidači pružaju nekoliko prekidača u prikladnom pakiranju, ali ih je potrebno povući prema gore. Koristio sam 1K navlake. Tipke se mogu izraditi pomoću sklopa koji Atmel preporučuje za svoju demo ploču. Sheme su na stranici 36. Otprilike. Druga je mogućnost spojiti AVR procesor za pružanje poticaja - pa čak i provjeriti reakcije. Ali to je vježba koja ostaje studentu.

Korak 10: Izradite svoj prvi krug

Kreirajte svoj prvi krug
Kreirajte svoj prvi krug
Kreirajte svoj prvi krug
Kreirajte svoj prvi krug

Do tada ste već trebali nabaviti i instalirati softver. Slijedite temeljit i detaljan vodič kako biste stvorili svoj prvi jednostavni CPLD sklop (dva ulaza I vrata; ne postaje mnogo jednostavnije). Budite sigurni da ste odabrali ispravan uređaj (44 -polni PLCC, 5V, 1504AS [detalji]) i odabrali dostupne I/O pin brojeve (koristio sam 14 i 16 kao ulaze; 28 kao izlaz). Ovi se detalji malo razlikuju od vodiča, ali ne bi vam trebali stvarati probleme.

Korak 11: Programirajte svoj prvi CPLD

Programirajte svoj prvi CPLD
Programirajte svoj prvi CPLD
Programirajte svoj prvi CPLD
Programirajte svoj prvi CPLD

Priključite svoj kabel za programiranje na paralelni priključak na računalu, spojite ga na postolje za programere, priključite 5 volti na priključak za napajanje i slijedite upute za programiranje vašeg prvog CPLD -a. Odaberite ispravnu verziju kabela. Imajte na umu da je Altera Byte-Blaster jedna od opcija.

Korak 12: Testirajte svoj programirani dio

Testirajte svoj programirani dio!
Testirajte svoj programirani dio!
Testirajte svoj programirani dio!
Testirajte svoj programirani dio!

Odspojite svoj programski kabel s postolja. Uključite prekidače i bljeskalice u ispravne pinove, uključite napajanje i isprobajte ga. Budući da započinjete s jednostavnim krugom, testiranje nije veliki izazov. Ako radi, ne radite! Dijagram s pogledom odozgo vodit će vas pri povezivanju prekidača i bljeskalica za testiranje.

Korak 13: Kraj i neki web resursi

Kraj i neki web resursi
Kraj i neki web resursi

Nije svrha ovog vodiča naučiti vas koristiti VHDL. (Tek sam počeo učiti da sam zato stvorio programera, sjećate se?) Rečeno je da sam pronašao nekoliko vrlo korisnih vodiča i neke korisne resurse na koje vam mogu ukazati. Povratne informacije i drugi prijedlozi su iznimno cijenjeni. Imajte na umu da također možete koristiti razvojni sustav Ghetto CPLD za učenje Veriloga i drugih tehnika programiranja CPLD -a koji hardver ne zanima. VHDL izvori na webu: osnove i neke veze ovdje i ovdje. besplatni alati. Tutoriali koji mi se sviđaju su ovdje i ovdje, ali pronaći ćete mnogo drugih. Konačno (za sada), htjet ćete provjeriti diskusionu grupu. Uživajte, naučite puno i podijelite ono što znate.

Preporučeni: