14 tűs ZIF-aljzat

Egy komplex programozható logikai eszköz (CPLD) elengedhetetlen hardvereszköz a repertoárunkban. Ahogy a neve is sugallja, ezeket a chipeket úgy programozhatjuk, hogy a szükséges logikai funkciókat biztosítsák. Ez lehet elavult chipek cseréje, vagy egyszerűen csak egy módja a különböző technológiák elsajátításának és kipróbálásának. Mi lehetne jobb módja a tanulásnak, mint a CPLD használata és kipróbálása?
Létrehoztam egy CPLD modult, hogy sok mindenhez csatlakoztathassam, beleértve a forrasztásmentes próbapaneleket is, de elrontottam. Úgy tűnik, hogy a forrasztásmentes próbapanelen a rendelkezésre álló csatlakozóhely 2,8 cm. A lenyomatot 2,5 cm szélesre készítettem, így nem maradt hely a vezetéksoroknak mindkét oldalon. Ööö.
De hadd térjek vissza a témához, és mutassam meg bővebben, hogy mit is csinálok. Egy programozható logikát szeretnék készíteni, ami készletként összeszerelhető, könnyen forrasztható otthon, áramkörben programozható, és 3,3 vagy 5 volton is működik.
Egy könnyen forrasztható készlet megvalósításához egy régi CPLD alkatrészt használtam, amely 3,3 V-os és 5 V-os változatban is kapható, és a tápegységtől függetlenül megőrzi programozását. Maga a logika egy Altera Max sorozatú CPLD IC, amely két változatban kapható, és 32 vagy 64 makrocellás áramköri lapokhoz alkalmas. A makrocellák az alapvető logikai építőelemek, amelyeket logikai "kifejezések" segítségével programoznak, majd programozható összeköttetéseken keresztül más makrocellákkal összekapcsolnak.
A kapcsolási rajzot nézve látható, hogy nincs sok információja: alapvetően a CPLD, az áramkörön belüli programozó áramkör és az oszcillátor, amely a CPLD logikát hajtja.
Ez az alkatrész EPM7032 és EPM7064 néven ismert, és 44 tűs műanyag kivezetéses chiptartót (PLCC) használ, amelyet néha J-kivezetésnek is neveznek a kivezetés J alakja miatt. Ez a tokozás átmenőfuratos foglalatba helyezhető, vagy közvetlenül a NYÁK-ra forrasztható.
Beépített oszcillátort tartalmaz, így a CPLD állapotkövetően képes műveleteket végrehajtani és gyors számlálókat létrehozni külső órajel nélkül. Ha rendelkezésre áll külső órajel, a modul nagysebességű órája használható órajel-esemény létrehozására a külső órajel minden egyes felfutó vagy lefutó élén, és továbbra is követni kell a CPLD/FPGA irányelveit, azaz a belső globális órajel-hálózatot kell használni az órajel bemenetének "aszinkron" vezérlése helyett. Ennek az oszcillátornak a névleges tápfeszültsége 1,8 és 5,5 volt között van.
Ha megnézed a videót, látni fogod, hogy a személyes preferenciáimat ismertetem az oszcillátor "INH" lábának kezelésével kapcsolatban; egyszerűen fogalmazva, miután ellenőriztem, hogy a specifikációs lap szabályos-e, hajlamos vagyok hagyni, hogy lebegjen.
Amikor ilyen funkciókkal foglalkoztam, többek között az jutott eszembe, hogy nem szeretem a bemeneti lábakat közvetlenül a tápsínekhez kötni (ha lehetséges). Vagyis jobban szeretem a soros ellenállásokat használni az áram korlátozására tranziensek esetén, még akkor is, ha erre nincs szükség.
Az évek során láttam néhány problémát a gyártás során (nagy tételekben), és időnként olyan dolgok, mint a feszültség-ciklus, lehetővé tették, hogy a közvetlenül a tápvezetékhez csatlakoztatott lábak magasabb feszültséget kapjanak, mint maga a chip, ami rossz. Végül, csatlakoztasd a lábat a tápvezetékhez egy ellenálláson keresztül (legyen az táp vagy föld), és az emberek meggondolhatják magukat, és később használhatják a lábat. Ez különösen igaz a használaton kívüli ajtókkal kapcsolatos tapasztalataim alapján, valószínűleg tudod, hogy ezeket az ajtókat soha nem szabad lebegni vagy csatlakoztatás nélkül hagyni. Egy felhúzó ellenállás használatával csatlakoztathatod a jelet és használhatod a kaput rézvezetékek elvágása nélkül.
A 10 tűs csatlakozó és néhány ellenállás alkotja a programozó áramkört. Ha az összes ellenállás felhúzó ellenállás, akkor ellenálláshálózatot használnék, de sajnos az egyik földelt.
Egy ilyen független CPLD programozásához egy dedikált programozó szükséges. Könnyű ezt megmondanom, mert általában van mellettem pár, de ha neked nincs, nem lesz túl fájdalmas belépni a játékba. A jóváhagyott "Altera USB Blaster" 50 dollárért kapható, és a Digikey-n és más helyeken is megvásárolható. Több klónom is van az Ebay-en, az egyik olyan, amely egyszerre támogatja az Alterát, a Xilinxet és a Lattice-ot. Van egy projekt és kód az interneten, amellyel saját klónt lehet készíteni, fel fogom tüntetni a programozó klónok készítésének projektjéhez tartozó lehetséges videók listájában. Mutatok egy pajzs dizájnt is, amelyben az alaplap, az Arduino, a PIC stb. programozható.
A CPLD fordításához és programozásához szükséges szoftver ingyenesen elérhető az Alterától, de ehhez a régi részhez a régi 9.1-es verzió szükséges. A jó hír az, hogy ez volt a kedvenc régi verzióm. Volt benne egy intuitív időzítés-analizátor, de azt egy későbbi verzióban eltávolították.
A NYÁK egy egyszerű, kétoldalas kialakítású, amíg az áramköri lap illeszkedik, általában rezet használok földelésre és néha tápegységre. Néha a kiöntés annyira megtörik, hogy problémákat vagy hanyag végeredményt okozhat, ezért a rézkiöntés ismét egy eszköz, de kezelni kell.
Manapság sok (ha nem a legtöbb) CAD szoftvercsomag tartalmazza a végtermék 3D-s nézeteit, bár a képek pontossága csak annyira pontos, mint az alkatrészek ábrázolásához használt 3D modellek. Itt láthatja, hogy én melyik 3D-s modellt választottam a 44 tűs foglalathoz, a programozó csatlakozóhoz és az oszcillátorhoz. Íme néhány 3D-s csomag, amit szívesen használok:
Sok vállalat rendelkezik alkatrészeinek 3D-s modelljeivel is. A Molex csak egy példa azokra a vállalatokra, amelyek jó munkát végeztek ezen a területen.
A hiba, amit elkövettem, nem befolyásolja a funkciót, mint például az esztétikát, és nem is ez a fő probléma, azaz nem alkalmas egyetlen forrasztásmentes kenyérpanelhez.
Amint arra gondoltam, hogy megosztom bárkivel a tervet, azonnal elégedetlen lettem a CPLD kapcsolási rajzával és a 40 tűs csatlakozó lábkiosztásával, ami a teljes helyigénye. Fogtam egy 40 tűs, kétsoros csatlakozó szimbólumát, és 1 hüvelykesre igazítottam, de a lábszámok nem 1, 2, 3, 4... hanem 1-gyel vannak számozva az oldalon, mint egy DIP tokozásnál 3, 5, 7... akárcsak a szalagkábel csatlakozóinál. Ezért ez egy nem intuitív alaprajz a modulhoz való csatlakozás módjának meghatározásához és a hibaelhárításhoz.
Hasonlóképpen, a CPLD lábkiosztások kissé zavaróak, és egy olyan segédprogramkészletet használtam, amely a Boundary Scan Description Language (BSDL) nyelvre támaszkodik a szimbólumok létrehozásához. A legtöbb nagyobb gyártó rendelkezik BSDL fájlokkal a mainstream komponenseihez, amelyek lehetővé teszik a szimbólumok és csomagok (félig) automatikus létrehozását. Mint minden automatizálást, ezt is eszközként kell tekinteni, és a legjobb eredmény elérése érdekében további módosításokra lehet szükség. Ebben az esetben hagytam, hogy a lábakat ábécé sorrendben listázza, ami szinte véletlenszerű, amikor a lábakat a panelen követjük. Csak azt mondhatom, hogy nagyon izgultam aznap.
Ezekért a rövidítésekért útközben fizetni kell. Amikor módosítani fogom ezt a modult, meghatározom és megadom neki a hozzá illő lábelhelyezést, hogy az oszcilloszkóp mérőfejének elhelyezése olyan egyszerű legyen, mint egy pillantás a kapcsolási rajz szimbólumára.
Az áramköri kártyák használatakor vannak más, főként esztétikai vagy hasznos fejlesztések is. Az 1-es láb indikátorának gyakoribbnak kellene lennie több tokozásban, és én mindig egy egyszerű földelési pontot részesítek előnyben az oszcilloszkóp földeléséhez vagy a VOM vezetékéhez. Ezt esetleg egy kéttűs csatlakozó hozzáadásával tehetném meg, hogy a tápellátást és a földelést közvetlenül a panelre lehessen vezetni, ahelyett, hogy az alsó tűkhöz kellene szorítani.
Mielőtt módosítanám az áramköri lapot, szeretném ellenőrizni, hogy megfelelően működik-e fizikai és esztétikai problémák esetén. Bekapcsolás után, és miután meggyőződtem az oszcillátor megfelelő működéséről, csatlakoztattam a programozót. Bár a 3,3 V-os verzió újabb, mint a programozó szoftver, az érzékelte a CPLD-t, és "ismeretlen" eszközként jelenítette meg.
Ezután létrehoztam egy számlálót a Quartusban, és hozzárendeltem a lábszámokat. A gyors fordítás és letöltés, valamint az oszcilloszkóp által látható számlálófüggvény igazolja, hogy a terv megvalósítható.
A Verilog gyors tesztáramköre nagyon egyszerű. A kód alább látható. Letölthetsz egy ZIP fájlt, amely tartalmazza a kapcsolási rajzot és a Verilog tesztáramkört Quartus II projektként (9.1-es verzió szükséges hozzá).
Ahogy említettem, elvégzem a nyomtatott áramköri lap egy második felülvizsgálatát, hogy jobban odafigyeljek a részletekre, amikor megosztom a tervet, vagy bármilyen hibaelhárítást végzek. Mivel az alsó csatlakozó szélességét 0,9 hüvelykre vagy kevesebbre kell állítanom, továbbra is 0,6 hüvelykre állíthatom, ami egy szabványos "széles" DIP tokozásnak felel meg. Ez azt jelenti, hogy az alsó lábak kiállnak a CPLD foglalat alapterületéből. Gyártási helyzetben ezt nem tenném, mert akkoriban kézzel szerelték össze, de az egyik cél egy kézi forrasztókészlet elkészítése volt. A kézi forrasztás kompromisszuma az, hogy az oszcillátornak SMD felületszerelt házban kell lennie, az átmenőfuratos változat nagyon nagy, és általában nem támogatja a kívánt feszültségtartományt.
Lehetséges ezeket a modulokat felhasználni egy komplett egyszerű számítógép megépítéséhez? Azt hiszem, memóriát kell hozzáadnom.
Lol...igen, attól függ, milyen számítógépről van szó. Azonban az "igazi" mikrovezérlőket/mikroszámítógépeket befolyásolja a modul "tűkötése", ami azt jelenti, hogy nem lehet elég terminológiát kinyerni a modulból ahhoz, hogy bármi igazán hasznosat csinálj.
Készítettem egy komplett NTSC kamera időzítési és mód vezérlőt 64-es mérettel, így nincs szükség processzorra.
A Nandról Tetrisre című könyvben használt strukturális Verilog és HDL többé-kevésbé ugyanaz.
Miért átmenő furatú alkatrészek? A 0805-ös hegesztés egyszerű! Itt az ideje, hogy minden barkácsoló elsajátítsa ezt a készséget.
Ha a felső foglalatot átfedéssel készítem el az alulról forrasztott lábakkal, akkor használhatok "6 középpontot" (egy 40 tűs chipet szimulálva) vagy átlósan stb. Ez szigorúan manuális forrasztási alkatrészeket fog jelenteni az alsó vezetékek forrasztásához. A felső foglalatot a lábak mögé kell helyezni.
De a kezdőknek nehéz alulról forrasztani. Amikor a kenyérpirító panel NYÁK-jához forrasztok csatlakozókat (ezek az olcsó SMD adapterlapok, amiket az eBay-en lehet használni prototípuskészítéshez), behelyezem a csatlakozókat a kenyérpirító panelbe, majd ráteszem a NYÁK-ot, és így könnyen forraszthatom. Nagyon alkalmas kenyérpirító panelekhez. Ha alulról kell forrasztani, az még nehezebb.
Ha a CPLD középen van (könnyebb lehet bekötni), akkor átlósan, átfedés nélkül telepíthető, 4 sor van, vagy a CPLD lehet az egyik oldalon:
Köszönöm a tippet, hogy a csatlakozót a próbapanelbe forrasztás előtt kell behelyezni. Az enyém kicsit instabil.
Mi a helyzet a DIP formátumú próbapanel lábaival az egyik végén, és a chipfoglalat "dongle" típusú részével a másik végén? A chipet fel lehet akasztani a próbapanel végére. A vezetékezés szoros lesz.
|####### ********************* |. Igen, úgy döntöttem, hogy az Altera „ingyenes” verzióját használom, ahogy a Xilinxnek és a Lattice-nak is vannak „ingyenes” verziói. Be kell fejeznem a ciklust Al Williamsszel, hogy megértsem, mit támogat az összes nyílt támogatás, beleértve az eszközsorozatok specifikus tulajdonságait is. Ennek ellenére sokat tettem az ingyenes verzióval.
Igen, azt mutatod be, hogy a CPLD átfedésben van a lábakkal, amiket szerintem. Ha jól követem, ez úgy nézhet ki, mint a 2. rev. (Tömeg)gyártásra tervezve mindig allergiás vagyok a „kézi forrasztásos összeszerelés” lépésre, mert átfedésben vannak (valójában a forrasztólábak a nem alkatrész oldalon). ) Már egy kézzel forrasztott alkatrész), de ez csak egy kis készlet, nem gyártásorientált tervezés. Csak vannak olyan szokásaim, amiktől nehéz megszabadulni az én koromban. :)
Szerintem egy T-alakú áramköri lap CPLD-vel és passzív alkatrészekkel, széles T-alakú résszel, nagyon hasznos lesz, ha a próbapanel szélére akasztjuk. Valami hasonló, mint az Adafruit RasPi T-Cobbler (http://www.adafruit.com/products/2028). Ez a próbapanel területének nagy részét kihasználja.
Sajnos a megszűnés jelentősen korlátozni fogja a használatát mellékprojektekben, akárcsak az összes XR2206 és ICL8038 alapú függvénygenerátornál.
Érdekes ötlet. Tetszik ez a két chip. A CPLD nem elavult, csak olcsóbb módja a 3,3 V-os beszerzésének.
A "hülyeségeiddel" kapcsolatban... tényleg nem csináltál új elrendezést, hogy a próbapanelre tedd. Először csak a vezetéket tedd a próbapanelre, majd a cpld-t. Vagy, ha le tudod húzni a táp- és földelőcsíkokat az egyikről, használj két próbapanelt.
Altiumról és Eagle-ről. Gondoltál már a KiCad-re? Nincsenek olyan korlátai, hogy az Altiumot jobban kedvelnéd az Eagle-lel szemben, és alapértelmezés szerint DRC hibákat generál minden nem csatlakoztatott lábnál. Ha tényleg meg akarsz nyitni egy lábat, akkor ezt meg kell mondanod. (Lehet, hogy csak a bemenetnél, a kimenetnél nem, és ezt még nem ellenőrizték). Egy másik nagyszerű tulajdonsága, hogy nagyon könnyű megtanulni. Csak egy délutánt vett igénybe, és a kiváló bevezető kézikönyv segített elindulni.
Én a (nagyobb részt) az átmenő furat feletti SMD-t szeretem jobban. Könnyebb használni őket. Nem kell állandóan forgatni a NYÁK-ot. (Néhány hülye hiba történt a tükrözés miatt...). És nem kell elvágni az ellenállás kivezetését. Egy terv megosztásakor több tok kényelmesen elhelyezhető egy NYÁK-on vagy egyetlen alkatrészen. SMD ellenállás TH. (Ez egy kicsit bonyolultabbá teszi az elrendezést).
A "KiCad Getting Started" című dokumentumot pdf formátumban használtam. A régebbi verzió, amit használtam, 29 oldalas, a legújabb pedig 52 oldalas. Más oktatóanyagokban (videólinkekkel együtt) is megtalálhatod: http://kicad-pcb.org/help/tutorials/
Tudom, hogy [Chris Gemmell] a Hackaday-től és az Amp Hour-tól készített egy sorozatot a Kicad-ről: http://kicad-pcb.org/help/tutorials/
A Kicad hasznos lehet, majd meglátjuk, mi történik a 2. verzióban. Köszönöm a javaslatokat. A nem csatlakoztatott bemenetek jók a DRC (ERC) számára, a csatlakozók és más, ezeket szoftveresen vagy I/O-ként kezelő dolgok esetében pedig a legtöbb CAD-leválasztási üzenet általában elkerülhető.
Futtass egy gyors tesztet, és helyezd a csatlakozót egy üres táblázatba, futtasd le annotációkat és DRC-t. DRC hibákat adott minden egyes lábnál. Az ismert, nem csatlakoztatott lábak megjelölése azonban nagyon egyszerű.
Passzívra állítva. Keresnem kell (Komponens szerkesztése -> Szerkesztés a Könyvtárszerkesztővel). A könyvtárszerkesztő megnyílik és egy külön ablakban betölti az alkatrészt, az alkatrész bármely részét ellenőrizheted vagy módosíthatod. A módosított alkatrész menthető vagy frissíthető a kapcsolási rajzon. Ez nagyon megkönnyíti az alkatrészek módosítását. A könyvtárral nem igazán foglalkozom. Például, ha cpld-t használsz, értelmes neveket szeretnél rendelni a lábakhoz. Ami még fontosabb, van egy jó felület a saját alkatrészek tervezéséhez.
A KiCad ERC-jében a „nem csatlakoztatott” lábak más típusú lábak, mint a „passzív lábak”, és minden „nem csatlakoztatott” láb hibát generál. Az ERC működése könnyen testreszabható a saját preferenciáinknak megfelelően: Eszközök -> Elektromos szabályok ellenőrzője -> Beállítások.


Közzététel ideje: 2021. november 18.