14 kontaktu ZIF ligzda

Sarežģīta programmējama loģiskā ierīce (CPLD) ir būtiska aparatūras daļa jūsu repertuārā. Kā norāda nosaukums, jūs varat ieprogrammēt šīs mikroshēmas, lai nodrošinātu nepieciešamās loģiskās funkcijas. Tas var aizstāt novecojušas mikroshēmas vai vienkārši veids, kā apgūt un izmēģināt dažādas tehnoloģijas. Kā gan labāk mācīties, ja ne izmantot CPLD un to izmēģināt?
Es izveidoju CPLD moduli, lai to varētu pieslēgt daudzām lietām, tostarp bezlodēšanas maketplatēm, bet es kļūdījos. Šķiet, ka uz bezlodēšanas maketplates pieejamā spraudņa vieta ir 1,1 colla. Esmu izveidojis 1 collas platu pamatni, neatstājot vietu vadu rindai abās pusēs. Nu...
Bet ļaujiet man atgriezties pie sākuma un parādīt vairāk par to, ko es daru, es vēlos izveidot programmējamu loģiku, ko var salikt kā komplektu, ko var viegli pielodēt mājās, ko var programmēt ķēdē un kas var darboties ar 3,3 vai 5 voltiem.
Lai realizētu viegli lodējamu komplektu, es izmantoju vecu CPLD komponentu, kas ir pieejams arī 3,3 V un 5 V versijās un saglabās savu programmēšanu neatkarīgi no barošanas avota. Pati loģika ir CPLD integrālā shēma no Altera Max sērijas, kas pieejama divās versijās un ir piemērota shēmas platēm ar 32 vai 64 makrošūnām. Makrošūnas ir pamata loģiskie pamatbloki, kas tiek programmēti, izmantojot loģiskus "terminus", un pēc tam savienoti ar citām makrošūnām, izmantojot programmējamus savienojumus.
Aplūkojot shēmu, var redzēt, ka tajā nav daudz satura: būtībā CPLD, iekšējā programmēšanas shēma un oscilators, kas darbina CPLD loģiku.
Šo daļu sauc par EPM7032 un EPM7064, un tajā tiek izmantots 44 kontaktu plastmasas svina mikroshēmas nesējs (PLCC), ko dažreiz sauc par J vadu svina J formas dēļ. Šo korpusu var ievietot caurumotā ligzdā vai tieši pielodēt pie shēmas plates.
Satur iebūvētu oscilatoru, tāpēc CPLD var veikt darbības stāvokļa līmenī un pats izveidot ātrus skaitītājus, neizmantojot ārēju pulksteni. Ja ir pieejams ārējs pulkstenis, moduļa ātrdarbīgo pulksteni var izmantot, lai izveidotu pulksteņa notikumu katrā ārējā pulksteņa augošajā vai krītošajā malā, joprojām ievērojot CPLD/FPGA vadlīnijas, tas ir, jums patiešām vajadzētu izmantot iekšējo globālo pulksteņa tīklu, nevis "asinhroni" vadīt pulksteņa ieeju. Šī oscilatora nominālais barošanas spriegums ir no 1,8 līdz 5,5 voltiem.
Ja noskatīsieties video, redzēsiet, ka es apspriežu savu personīgo izvēli par to, kā rīkoties ar oscilatora "INH" tapu; vienkārši sakot, pēc tam, kad esmu pārbaudījis, vai specifikāciju lapa ir likumīga, es parasti ļauju tai peldēt.
Strādājot ar šādām funkcijām, starp iemesliem, kas man ienāca prātā, bija mana nepatika savienot ieejas kontaktus tieši ar barošanas sliedēm (ja iespējams). Tas ir, es dodu priekšroku virknes rezistoru izmantošanai, lai ierobežotu strāvu pārejas fāzēs, pat ja tas nebūtu nepieciešams.
Gadu gaitā esmu saskāries ar dažām problēmām ražošanā (lielās partijās), un reizēm tādas lietas kā barošanas cikls ļāva kontaktiem, kas tieši savienoti ar barošanas sliedi, iegūt augstāku spriegumu nekā pašai mikroshēmai, kas ir slikti. Visbeidzot, pievienojiet kontaktu barošanas sliedei caur rezistoru (vai nu barošanas, vai zemējuma), un cilvēki var pārdomāt un izmantot kontaktu vēlāk. Tas jo īpaši attiecas uz manu pieredzi ar neizmantotām durvīm, jūs droši vien zināt, ka šīs durvis nekad nedrīkst atstāt peldošas vai nepievienotas. Izmantojot pievilkšanas rezistoru, jūs varat savienot signālu un izmantot vārtus, nenogriežot vara vadus.
Programmēšanas shēmu veido 10 kontaktu savienotājs un daži rezistori. Ja visi rezistori ir pievilkšanas rezistori, es izmantotu rezistoru tīklu, bet diemžēl viens ir iezemēts.
Lai programmētu šādu neatkarīgu CPLD, ir nepieciešams īpašs programmētājs. Man to ir viegli pateikt, jo man parasti blakus ir daži, bet, ja jums tāda nav, nebūs pārāk sāpīgi iekļūt spēlē. Apstiprinātais "Altera USB Blaster" tiek pārdots par 50 USD un to var iegādāties Digikey un citur. Man ir vairāki kloni no Ebay, no kuriem viens ir klons, kas vienlaikus atbalsta Altera, Xilinx un Lattice. Internetā ir projekts un kods, ko var izmantot, lai izveidotu savu klonu, es to iekļaušu savā iespējamo video sarakstā par programmētāja klonu veidošanas projektu. Es arī parādīšu vairoga dizainu, kurā var programmēt mātesplati, Arduino, PIC utt.
Programmatūra, kas nepieciešama CPLD kompilēšanai un programmēšanai, ir brīvi pieejama no Altera, taču šai vecajai daļai ir nepieciešama vecā 9.1 versija. Labā ziņa ir tā, ka tā bija mana iecienītākā vecā versija. Tai bija intuitīvs laika analizators, taču tas tika noņemts jaunākā versijā.
PCB ir vienkārša divpusēja konstrukcija, ja vien shēmas plate tai der, es parasti izmantoju varu zemējumam un dažreiz barošanas avotam. Dažreiz liešana kļūst tik bojāta, ka tā var radīt problēmas vai neprecīzu gala rezultātu, tāpēc vara liešana atkal ir instruments, taču tā ir jāpārvalda.
Mūsdienās daudzas (ja ne lielākā daļa) CAD programmatūras pakotnes satur gatavā produkta 3D skatus, lai gan attēlu precizitāte ir tikpat precīza, cik precīzi ir 3D modeļi, kas izmantoti detaļu attēlošanai. Šeit varat redzēt, kur es izvēlējos 3D modeli 44 kontaktu ligzdai, programmēšanas savienotājam un oscilatoram. Šeit ir dažas 3D pakotnes, kuras man patīk izmantot:
Daudziem uzņēmumiem ir arī savu komponentu 3D modeļi. Molex ir tikai viens piemērs uzņēmumam, kas ir paveicis labu darbu šajā jomā.
Mana pieļautā kļūda neietekmē funkciju, piemēram, estētiku, un tā nav galvenā problēma, proti, tā nav piemērota vienai bezlodēšanas maizes platei.
Tiklīdz iedomājos, ka varētu padalīties ar dizainu ar kādu citu, mani uzreiz neapmierināja CPLD shematiskie simboli un 40 kontaktu savienotāja pieslēgumu izvietojums, kas ir tā kopējais izmērs. Es paņēmu 40 kontaktu divrindu savienotāja simbolu un pielāgoju to 1 collai, bet pieslēgumu numuri nav 1, 2, 3, 4... bet gan numurēti ar 1 sānos, tāpat kā DIP korpusam 3, 5, 7... gluži kā lentes kabeļu savienotājiem. Tāpēc tas nav intuitīvs izkārtojums, lai noteiktu, kā izveidot savienojumu ar moduli, un novērstu problēmas.
Līdzīgi, CPLD pieslēgvietu piešķiršana ir nedaudz mulsinoša, un es izmantoju utilītu komplektu, kas simbolu izveidei balstās uz Boundary Scan Description Language (BSDL). Lielākajai daļai lielāko pārdevēju ir pieejami BSDL faili to galvenajiem komponentiem, kas ļauj (daļēji) automātiski izveidot simbolus un pakotnes. Tāpat kā jebkura automatizācija, tā ir jāuztver kā rīks, un, lai sasniegtu labākos rezultātus, var būt nepieciešama papildu apstrāde. Šajā gadījumā es ļāvu tai uzskaitīt pieslēgvietas alfabētiskā secībā, kas ir gandrīz nejauša, izsekojot pieslēgvietas uz plates. Varu tikai teikt, ka tajā dienā biju ļoti nemierīgs.
Par šiem īsceļiem kādreiz ceļā būs jāmaksā. Kad es iešu modificēt šo moduli, es noteikšu un piešķiršu tam kontaktu izvietojumu, kas atbilst pašai detaļai, lai zināt, kur novietot osciloskopa zondi, būtu tikpat vienkārši kā paskatīties uz shēmas simbolu.
Izmantojot shēmas plates, ir arī citi uzlabojumi, kas galvenokārt ir estētiski vai noderīgi. 1. tapas indikatoram vajadzētu būt biežāk sastopamam vairākos korpusos, un es vienmēr dodu priekšroku vienkāršam zemējuma punktam, lai savienotu osciloskopa zemējumu vai VOM vadu. Es varētu to uzlabot, pievienojot divu kontaktu savienotāju, lai strāvu un zemējumu varētu pieslēgt tieši platei, nevis piestiprināt pie apakšējām tapām.
Pirms shēmas plates modificēšanas vēlos pārliecināties, ka tā darbojas pareizi gan fizisku, gan estētisku problēmu gadījumā. Pēc ieslēgšanas un oscilatora darbības apstiprināšanas es pievienoju programmētāju. Lai gan 3,3 V versija ir jaunāka nekā programmēšanas programmatūra, tā atpazina CPLD un parādīja to kā "nezināmu" ierīci.
Pēc tam es izveidoju skaitītāju Quartus un piešķīru tam pieslēgvietu numurus. Ātrā kompilēšana un lejupielāde, kā arī osciloskopa redzamā skaitītāja funkcija apstiprina, ka projekts ir īstenojams.
Ātrās pārbaudes shēma Verilog valodā ir ļoti vienkārša. Kods ir norādīts zemāk. Jūs varat lejupielādēt ZIP failu, kurā ir shēma un Verilog pārbaudes shēma kā Quartus II projekts (nepieciešama 9.1 versija).
Kā jau minēju, es veiksu otro shēmas plates pārskatīšanu, lai pievērstu lielāku uzmanību detaļām, kas nepieciešamas, kopīgojot dizainu vai veicot jebkādas problēmu novēršanas darbības. Tā kā man jāiestata apakšējā savienotāja platums uz 0,9 collām vai mazāk, es varu turpināt to iestatīt uz 0,6 collām, kas ir standarta "plats" DIP korpuss. Tas nozīmē, ka apakšējiem kontaktiem jāļauj izvirzīties ārpus CPLD ligzdas nostājas. Ražošanas situācijā es to nedarītu, jo tolaik tas tika salikts ar rokām, bet viens no mērķiem bija izveidot rokas lodēšanas komplektu. Manuālās lodēšanas kompromiss ir tāds, ka oscilatoram ir jābūt SMD virsmas montāžas korpusā, caurejošā cauruma versija ir ļoti liela un parasti neatbalsta vēlamo sprieguma diapazonu.
Vai šos moduļus var izmantot, lai izveidotu pilnīgu vienkāršu datoru? Manuprāt, man ir jāpievieno atmiņa.
Lol... jā, tas atkarīgs no datora veida. Tomēr "īstus" mikrokontrollerus/mikrodatorus ietekmē moduļa "kontaktu savienošana", kas nozīmē, ka no moduļa nevar iegūt pietiekami daudz terminoloģijas, lai paveiktu kaut ko pārāk noderīgu.
Es izveidoju pilnīgu NTSC kameras laika un režīma kontrolieri ar izmēru 64, tāpēc procesors nav nepieciešams.
Grāmatā “Nand to Tetris” izmantotie strukturālie Verilog un HDL ir vairāk vai mazāk vienādi.
Kāpēc detaļas ir paredzētas caurulēm? Metināšana 0805 ir vienkārša! Tagad ir īstais laiks ikvienam meistaram apgūt šo prasmi.
Ja augšējā ligzda pārklājas ar no apakšas pielodētiem tapām, tad varu izmantot "6 centrus" (simulējot 40 tapu mikroshēmu) vai diagonāli utt. Šeit būs stingri manuāli lodējamas detaļas apakšējo vadu lodēšanai augšējā ligzdā aiz kājām.
Bet iesācējiem to ir grūti lodēt no apakšas. Kad es lodēju kontaktligzdas maizes plates shēmas platei (šīs lētās SMD adapteru plates, ko var izmantot eBay, var izmantot prototipu veidošanai), es ievietoju kontaktligzdas maizes platē, pēc tam uzlieku uz tās shēmas plati, un tad es varu viegli pielodēt. Tas ir ļoti piemērots maizes platēm. Ja jums tas ir jālodē no apakšas, tas ir vēl grūtāk.
Ja CPLD atrodas pa vidu (varētu būt vieglāk savienot vadus), to var uzstādīt pa diagonāli bez pārklāšanās, ir 4 rindas vai CPLD var atrasties vienā pusē:
Paldies par padomu ievietot savienotāju maketplatē pirms lodēšanas. Manējais ir nedaudz nestabils.
Kā būtu ar DIP formāta maketplates tapām vienā galā un pašas mikroshēmas ligzdas "dongle" tipa pieslēgvietu otrā galā? Mikroshēmu var piekārt maketplates galā. Maršrutēšana būs stingra.
|####### ********************* |. Jā, es nolēmu izmantot Altera "bezmaksas" versiju, tāpat kā Xilinx un Lattice ir "bezmaksas" versijas. Man ir jāpabeidz cikls ar Alu Viljamsu, lai saprastu, ko atbalsta viss atvērtais atbalsts, tostarp ierīču sērijas specifiskie atribūti. Tomēr esmu daudz paveicis ar bezmaksas versiju.
Jā, jūs parādāt, ka CPLD pārklājas ar tapām, manuprāt. Ja es to pareizi izpildīšu, tas varētu izskatīties pēc 2. versijas. Projektējot (masveida) ražošanai, man vienmēr ir alerģija pret "manuālās lodēšanas montāžas" soli, jo tās pārklājas (faktiski lodēšanas tapas ne-komponentes pusē). ) Jau tā ir ar roku lodēta detaļa), bet šis ir tikai neliels komplekts, nevis uz ražošanu orientēts dizains. Man vienkārši ir daži ieradumi, no kuriem manā vecumā ir grūti atbrīvoties. :)
Es domāju, ka T-veida shēmas plate ar CPLD un pasīvajiem komponentiem ar platu T-veida daļu būs ļoti noderīga, ja to piekarinās pie maketa plates malas. Kaut kas līdzīgs Adafruit RasPi T-Cobbler (http://www.adafruit.com/products/2028). Tas padarīs pieejamu lielāko daļu maketa plates laukuma.
Diemžēl pārtraukšana ievērojami ierobežos tā izmantošanu blakusprojektos, tāpat kā visiem funkciju ģeneratoriem, kuru pamatā ir XR2206 un ICL8038.
Interesanta ideja. Man patīk šīs divas mikroshēmas. CPLD nav novecojis, tas ir tikai lētāks veids, kā to iegādāties par 3,3 V.
Runājot par tavām "muļķībām"... tu tiešām neizveidoji jaunu izkārtojumu, lai to novietotu uz maketplates. Vienkārši vispirms pievieno vadu uz maketplates un pēc tam pievieno cpld uz vada. Vai arī, ja vari no vienas no tām noņemt barošanas un zemējuma sloksnes, izmanto divas maketplates.
Par Altium un Eagle. Vai esat apsvēris KiCad? Tam nav nekādu ierobežojumu, ka jūs dotu priekšroku Altium salīdzinājumā ar Eagle, un pēc noklusējuma ģenerē DRC kļūdas visiem nesavienotajiem izvadiem. Ja jūs patiešām vēlaties atvērt izvadu, jums tas ir jāpasaka. (Varbūt tikai ieejai, nevis izejai, un tas vēl nav pārbaudīts). Vēl viena lieliska funkcija ir tā, ka to ir ļoti viegli apgūt. Tas aizņēma tikai pēcpusdienu, un lieliskā ievada rokasgrāmata man palīdzēja sākt.
Es dodu priekšroku (lielākajai daļai) SMD virs cauruma. Tos ir vieglāk lietot. Nav visu laiku jāgroza shēmas plate. (Dažas muļķīgas kļūdas tika pieļautas spoguļošanas dēļ...). Un nav jānogriež rezistora vads. Koplietojot dizainu, vairākus korpusus var ērti novietot uz shēmas plates vai vienas detaļas. SMD rezistors TH. (Tas gan nedaudz sarežģī izkārtojumu).
Es izmantoju "KiCad Getting Started" PDF formātā. Vecajā versijā, ko izmantoju, ir 29 lappuses, bet jaunākajā versijā ir 52 lappuses. To var atrast citās pamācībās (tostarp video saitēs): http://kicad-pcb.org/help/tutorials/
Es zinu, ka [Kriss Gemels] no Hackaday un The Amp Hour izveidoja tutoriālu sēriju par Kicad http://kicad-pcb.org/help/tutorials/
Kicad varētu būt noderīgs, ļaujiet man redzēt, kas notiks 2. versijā. Paldies par ieteikumiem. Nepievienotas ieejas ir laba lieta DRC (ERC) vajadzībām, un savienotājiem un citām lietām, kas tās uztur mīkstas vai IO, lielāko daļu CAD atvienošanas ziņojumu parasti var izvairīties.
Veiciet ātru testu un ievietojiet savienotāju tukšā tabulā, palaidiet anotācijas un DRC. Tas man katram kontaktam deva DRC kļūdas. Tomēr zināmu nesavienotu kontaktu atzīmēšana ir ļoti vienkārša.
Iestatīts uz pasīvu. Man jāmeklē (Rediģēt komponentu -> Rediģēt ar bibliotēkas redaktoru). Bibliotēkas redaktors atveras un ielādē jūsu komponentu atsevišķā logā, jūs varat pārbaudīt vai mainīt jebkuru komponenta daļu. Mainīto komponentu var saglabāt vai atjaunināt jūsu shēmā. Tas ļoti atvieglo komponentu maiņu. Man bibliotēka īpaši nerūp. Piemēram, ja izmantojat cpld, vēlaties piešķirt pieslēgvietām jēgpilnus nosaukumus. Vēl svarīgāk ir tas, ka ir labs interfeiss, lai izstrādātu savus komponentus.
KiCad ERC "nepievienotie" pieslēgumi atšķiras no "pasīvajiem" pieslēgumiem, un visi "nepievienotie" pieslēgumi radīs kļūdas. ERC darbības veidu var viegli pielāgot savām vēlmēm: Rīki -> Elektrisko noteikumu pārbaudītājs -> Opcijas.


Publicēšanas laiks: 2021. gada 18. novembris