Sisällysluettelo:

Ghetto Programmable Logic (CPLD) -kehitysjärjestelmä: 13 vaihetta
Ghetto Programmable Logic (CPLD) -kehitysjärjestelmä: 13 vaihetta

Video: Ghetto Programmable Logic (CPLD) -kehitysjärjestelmä: 13 vaihetta

Video: Ghetto Programmable Logic (CPLD) -kehitysjärjestelmä: 13 vaihetta
Video: Programmable Logic Array (PLA) | Easy Explanation 2024, Marraskuu
Anonim
GPL -ohjelmoitavan logiikan (CPLD) kehittämisjärjestelmä
GPL -ohjelmoitavan logiikan (CPLD) kehittämisjärjestelmä

Olen nauttinut AVR -prosessorien Ghetto Development Systemistä viime kuukausien aikana. Itse asiassa tämä lähes nollan dollarin työkalu on osoittautunut niin kiehtovaksi ja hyödylliseksi, että se sai minut miettimään, olisiko mahdollista laajentaa konsepti myös FPGA/CPLD -kehitykseen. (FPGA: Kenttäohjelmoitava porttijärjestelmä. CPLD: Monimutkainen ohjelmoitava logiikkalaite.) Joten kaivoin hiukan verkkoa ja keksin Atmel CPLD -laitteiden kehittämisjärjestelmän. Vertailu Altera -laitteisiin osoittaa, että niiden pinout on sama (alla yksityiskohtaisten rajoitusten rajoissa), joten ne toimivat myös. Rakentamalla esittelemäni kehityskortin ja liitäntäkaapelin ja lataamalla työkalut voit kehittää omia CPLD -sovelluksiasi. Huomaa seuraavat rajoitukset. Olen yrittänyt tasapainottaa valmiuksia ja yksinkertaisuutta, jotta voit rakentaa jotain, josta nautit ja opit vain 5 V: n laitteista. Järjestelmän laajentaminen kattamaan ylijännitteet (3,3 V, 2,5 V, 1,8 V tukevat saman perheen Atmel -laitteita) ei ole vaikeaa, mutta se vaikeuttaa sekä kehityskorttia että ohjelmointikaapelia. Ohitetaan se nyt. Huomaa, että kortille on toimitettava 5 V: n syöttö. Vain 44 -nastainen PLCC. Erityisesti olen ohjelmoinut Atmel ATF1504AS: n. Ghetto CPLD -konsepti voidaan laajentaa helposti muihin Atmel -laitteisiin, mutta tämä laite vaikutti hyvältä kompromissilta hinnan, helppokäyttöisyyden ja suorituskyvyn välillä. Konseptin pitäisi ulottua myös muihin laitteisiin, kuten Alteran, Xilinxin, Actelin jne. Laitteisiin. Itse asiassa Max7000 -sarja EPM7032 ja EPM7064 toimivat samassa pistorasiassa niin kauan kuin käytät 44 -nastaisia PLCC -versioita. Toistaiseksi olen käyttänyt vain Atmel-ohjelmointikaapelia, mutta Attera-ohjelmisto tukee Altera Byte-Blasteria, ja sen pitäisi myös toimia hyvin. Se on itse asiassa hieman yksinkertaisempi muotoilu kuin Atmel -kaapeli. (Rakensin Atmel -version ja se toimii, joten en ole kokeillut Altera -versiota.) SparkFun tarjoaa 15 dollarin version Altera -kaapelista. Koska tämä toimii sekä Atmelille että Alteralle, suosittelen sitä. Jos aiot kehittää Altera -osia, sinun kannattaa hankkia myös Altera -ohjelmisto. En ole itse kokeillut tätä, mutta ei ole mitään syytä ajatella, että se ei toimisi. Nopeus on rajoitettu. Koska Ghetto CPLD -kehitysjärjestelmä on rakennettu käsijohdotuksella ja ilman maatasoa, älä odota luotettavaa toimintaa muutaman megahertsin nopeuksilla. Vaikka tämä ei ole taattu, kilometrimäärä voi vaihdella! Tietenkin, jos rakennat prototyyppilaitteiston, jossa on maataso, CPLD -laitteesi voi toimia hienosti suuremmilla nopeuksilla. Älä vain odota, että se menee nopeasti asennettuna Ghetto Development System -järjestelmään.

Vaihe 1: Tilaa osat

Siirry tilaamaan osia
Siirry tilaamaan osia

Tarvitset 44-nastaisen plcc-pistorasian, joitain irrotuskorkkeja, joitain ohjelmoimattomia CPLD-levyjä, pistorasioita leipälautaliitäntöjä varten, vetovastusvastuksen ja ehkä jonkin perf-levyn, johon voit rakentaa sen. Jos sinulla on tämä roskapostissasi, voit säästää muutaman dollarin. Tässä on sinulle Digikeyn osanumerot: CONN PLCC SOCKET 44POS TIN PN: 1-822473-4-ND SOCKET IC OPEN FRAME 14POS.3 "PN: 3M5462-ND Määrä: 2SOCKET IC OPEN FRAME 18POS.3 "PN: 3M5464-ND Määrä: 2CAP ELECT 10UF 50V SU BI-POLAR PN: P1280-ND Määrä: 1, C1CAP CER.10UF 50V 20% DISC RAD PN: 478 -4275-1-ND Määrä: 4, C2-C5RES METAL FILM 5,10 K OHM 1/4W 1% PN: P5.10KCACT-ND PC WARD FR4 1-SIDE PPH 4.0X4.0 PN: V2010-ND IC CPLD 64 MACROCELL 10NS 44PLCC PN: ATF1504AS-10JC44-ND Joissakin osissa voi olla vähimmäismääriä, mutta niiden pitäisi silti olla melko halpoja. nämä myös. Muista, että Digikeylla on vähintään 25 dollaria käsittelykulujen välttämiseksi, joten saatat haluta hankkia pari ylimääräistä ohjelmoimatonta CPLD: tä tai AVR -prosessorin tai kaksi huvin vuoksi. Suosittelen ostamaan Altera -ohjelmointikaapelin SparkFunilta. Tässä ovat osanumerot. Hanki myös kaapeli ja liitin. (Muussa tapauksessa tilaa kaapelin osat Digikeyltä, jos rakennat itse.) Altera FPGA -yhteensopiva ohjelmoija PN: PGM-087052x5-nastainen IDC-nauhakaapeli PN: PRT-085352x5-napainen koteloitu otsikko PN: PRT-08506

Vaihe 2: Hanki ja asenna ohjelmisto

Hanki ja asenna ohjelmisto
Hanki ja asenna ohjelmisto

Käytän tällä hetkellä Atmel Prochip Designer 5.0 -työkaluketjua. Tämä työkalu edellyttää rekisteröitymistä Atmeliin ja hänen virallisen pyyntölomakkeensa täyttämistä. Kerroin heille, että olin suunnitteluinsinööri, tällä hetkellä työtön, ja ensisijainen tarkoitukseni oli oppia heidän laitteensa ja VHDL (kaikki totta, BTW). He hyväksyivät lisenssipyynnön. Ainoa saalis on, että lisenssi on voimassa vain 6 kuukautta. Toivon löytäväni julkisen työkaluketjun siihen mennessä, kun se vanhenee. Alteralla on myös työkaluketju, jonka voin tarkistaa. Kaikki ehdotukset otetaan huomioon. Katso kommentit ja linkit viimeisessä vaiheessa. Atmel Prochip Designer 5.0 on täällä. Jos saat sen, muista hankkia myös Service Pack 1.

Vaihe 3: Tee ohjelmointikaapeli

Tee ohjelmointikaapeli
Tee ohjelmointikaapeli

Helpoin tapa on ostaa Altera Byte-Blaster -työkalu Sparkfunilta (katso vaihe 1). Jos 15 dollaria on enemmän kuin haluat käyttää, voit käyttää kaaviota SparkFun Altera Cable tai käyttää Atmel Cable -kaaviota ja naarmuuntumista. (Jos kaapelin rakentaminen on erittäin kiinnostavaa, voin ehdottaa joitain ehdotuksia, mutta Sparkfun-pakkaus näyttää minusta oikealta vastaukselta.)

Vaihe 4: Tee ohjelmointiteline

Tee ohjelmointiteline
Tee ohjelmointiteline
Tee ohjelmointiteline
Tee ohjelmointiteline
Tee ohjelmointiteline
Tee ohjelmointiteline

Katso Atmel -ohjelmoijaa. Tämä on erittäin joustava ja loistava vaihtoehto, jos sinulla on rahaa ja aiot tehdä paljon CPLD -kehitystä. Uskon, että Altera tarjoaa jotain vastaavaa. Mutta valitsin halvemman lähestymistavan - tästä on kyse! Kuvissa näkyy rakentamani kehto edestä ja takaa. Huomaa DIP -liittimet, joita käytetään leipälevyn liittiminä. Kaikki liittimien toisella puolella olevat nastat on kytketty maahan; toisella puolella olevat nastat kytkeytyvät CPLD: n signaalitappeihin. Mukana oli myös muutama sähköliitäntä; laita nämä sinne, minne ne sopivat. Kaaviot ovat eräänlaisia kuvallisia kaavioita; vain lisävirtaliitäntöjä ei näytetä. Katso kuvista ideoita näihin.

Vaihe 5: Kehikon rakentaminen - Osa 1

Kehikon rakentaminen - Osa 1
Kehikon rakentaminen - Osa 1
Kehikon rakentaminen - Osa 1
Kehikon rakentaminen - Osa 1

Aloita telineen rakentaminen asettamalla pistorasiat haluamiisi paikkoihin. Jätä tyhjä rivi tai kaksi, jotta irrotuskorkille jää tilaa. Tämä helpottaa myös yhteyden muodostamista CPLD -signaalitappeihin. Anna ylimääräistä tilaa ylhäällä (CPLD -liitännän nastan 1 yläpuolella) JTAG -liittimelle ja virtaliittimelle. Reititä paljain johdin (20 gauge tai noin) maadoitusväylän pistorasioiden ulkopuolelle. Reititä myös power bussi. (Kuvissa oleva punainen johto.) Katso ohjeita saadaksesi kuvista, mutta korttisi on todennäköisesti hieman erilainen - ja se on hieno. Tämä auttaa kiinnittämään väyläjohdon.

Vaihe 6: Kehikon rakentaminen - Osa 2

Kehikon rakentaminen - Osa 2
Kehikon rakentaminen - Osa 2
Kehikon rakentaminen - Osa 2
Kehikon rakentaminen - Osa 2

Asenna irrotuskorkit ja kytke ne CPLD -pistorasian kummallakin puolella oleviin maadoitus- ja virtatappeihin. Ehdotan, että johdot johdetaan ylös ja ylimpään tapin ulkoriviin, jotta saavutetaan sisäiset rivit. Katso nastanumerokaaviot saadaksesi oikeat nastat - CPLD -pistorasian nasta on kaukana ilmeisestä. Jätä tarpeeksi tilaa, jotta voit liittää kaikki nastat, joiden kautta johdot kulkevat. Kun suojakytkennät on tehty, kytke virta- ja maaväylä. Kaikki kaavioiden punaiset nastat ovat Vcc ja ne on kytkettävä. Mustat nastat on maadoitettu ja ne on myös kytkettävä. Jälleen sen reitittäminen ilmaan on hyvä lähestymistapa. Katso ideoita kuvista.

Vaihe 7: Kehikon rakentaminen - Johtopäätös

Kehton rakentaminen - Johtopäätös
Kehton rakentaminen - Johtopäätös
Kehton rakentaminen - Johtopäätös
Kehton rakentaminen - Johtopäätös
Kehton rakentaminen - Johtopäätös
Kehton rakentaminen - Johtopäätös

Reititä JTAG -liitännät oikeisiin nastoihin. Katso ohjelmointikaapelia varmistaaksesi, että liitin on suunnattu oikein. Älä unohda TDO-tapin vetämistä. Tämä näkyy vain kuvassa ja kulkee TDO -nastan ja Vcc: n välillä. Käytä liitäntöjen kaavioiden numeroita. Tämä kestää pisimpään! Jos noudatat numerointisuunnitelmaani, voit käyttää ylhäältä katsottuna kaaviota oppaana kytkiessäsi piirejäsi. Sinun ei todellakaan tarvitse kytkeä kaikkia näitä aluksi voit odottaa, kunnes tarvitset niitä suunnitelluille piireille. Tarkista työsi huolellisesti. Varmista, että sähkö ja maa eivät ole oikosulussa!

Vaihe 8: Tee vilkkuvalot (TTL -versio)

Make Blinkenlights (TTL -versio)
Make Blinkenlights (TTL -versio)

Haluat tietysti nähdä piirisi toimivan. Joten haluat vilkkua (The Real Elliot teki tunnetuksi). Ainoa saalis on, että CPLD -laitteilla ei ole AVR -prosessoreiden vahvoja lähtöjä. Käytä 10 mA: n LED -valoja ja käytä 1KOhm -sarjan vastuksia. Nämä antavat sinulle selkeitä lähtösignaaleja rasittamatta CPLD -lähtöjä.

Vaihe 9: Tee kytkimet

Tee kytkimet
Tee kytkimet
Tee kytkimet
Tee kytkimet

Piirien stimuloimiseksi tarvitset joitain kytkimiä. Tässä on joitain vaihtoehtoja, mutta vaatimukset ovat erilaiset kuin AVR -prosessoreille. CPLD-lähdöissä ei ole sisäänrakennettua vetoa, eikä ohjelmiston poistaminen ole niin helppoa. (Se on mahdollista, mutta vaatii resursseja, joita haluat todennäköisesti käyttää piireissäsi.) Näytetyt DIP -kytkimet tarjoavat useita kytkimiä kätevässä paketissa, mutta ne on vedettävä ylös. Käytin 1K-pull-up-painikkeita. Painikkeita voidaan valmistaa käyttämällä piiriä, joita Atmel suosittelee demokortilleen. Kaavioita on sivulla 36 tai toinen vaihtoehto on kytkeä AVR -prosessori ärsykkeiden tarjoamiseksi - ja jopa tarkistaa vastaukset. Mutta se on harjoitus, joka jää opiskelijan tehtäväksi.

Vaihe 10: Luo ensimmäinen piiri

Luo ensimmäinen piiri
Luo ensimmäinen piiri
Luo ensimmäinen piiri
Luo ensimmäinen piiri

Tähän mennessä sinun olisi pitänyt hankkia ja asentaa ohjelmisto. Seuraa perusteellista, yksityiskohtaista opetusohjelmaa luodaksesi ensimmäisen yksinkertaisen CPLD-piirisi (kaksituloinen JA-portti; ei tule paljon yksinkertaisemmaksi). Muista valita oikea laite (44 -nastainen PLCC, 5 V, 1504AS [tiedot]) ja valita käytettävissä olevat I/O -nastanumerot (käytin tuloja 14 ja 16; lähtöinä 28). Nämä yksityiskohdat poikkeavat hieman opetusohjelmasta, mutta niiden ei pitäisi aiheuttaa sinulle ongelmia.

Vaihe 11: Ohjelmoi ensimmäinen CPLD

Ohjelmoi ensimmäinen CPLD
Ohjelmoi ensimmäinen CPLD
Ohjelmoi ensimmäinen CPLD
Ohjelmoi ensimmäinen CPLD

Kytke ohjelmointikaapeli tietokoneesi rinnakkaisporttiin, kytke se ohjelmointitelineeseen, kytke 5 volttia virtaliittimeen ja seuraa opetusohjelmaa ensimmäisen CPLD -laitteen ohjelmointiin. Valitse oikea kaapeliversio. Huomaa, että Altera Byte-Blaster on yksi vaihtoehdoista.

Vaihe 12: Testaa ohjelmoitu osa

Testaa ohjelmoitu osa!
Testaa ohjelmoitu osa!
Testaa ohjelmoitu osa!
Testaa ohjelmoitu osa!

Irrota ohjelmointikaapeli telineestä. Kytke kytkimet ja vilkkuvalot oikeisiin nastoihin, kytke virta päälle ja kokeile sitä. Koska aloitat yksinkertaisella piirillä, testaus ei ole suuri haaste. Jos se toimii, olet käynnissä! Ylhäältä tuleva kaavio opastaa kytkimien ja vilkkuvalojen liittämisessä testausta varten.

Vaihe 13: Loppu ja joitain verkkoresursseja

Loppu ja joitain verkkoresursseja
Loppu ja joitain verkkoresursseja

Tämän opetusohjelman tarkoituksena ei ole opettaa sinulle VHDL: n käyttöä. (Olen vasta alkanut oppia, siksi loin ohjelmoijan, muistatko?) Siitä huolimatta olen löytänyt useita erittäin hyödyllisiä opetusohjelmia ja hyödyllisiä resursseja, joihin voin osoittaa sinut. Huomaa, että voit myös käyttää Ghetto CPLD -kehitysjärjestelmää Verilogin ja muiden CPLD -ohjelmointitekniikoiden oppimiseen, laitteisto ei välitä. ilmaisia työkaluja. Harjoitukset, joista pidän, ovat täällä ja täällä, mutta löydät paljon muita. Lopuksi (toistaiseksi) haluat tarkistaa keskusteluryhmän. Nauti, opi paljon ja jaa tietämäsi.

Suositeltava: