zif yuvası 14 pin

Mürəkkəb proqramlaşdırıla bilən məntiq cihazı (CPLD) repertuarınızdakı vacib bir aparat parçasıdır. Adından da göründüyü kimi, bu çipləri sizə lazım olan məntiq funksiyalarını təmin etmək üçün proqramlaşdıra bilərsiniz. Bu, köhnəlmiş çiplərin əvəz edilməsi və ya sadəcə öyrənmə və fərqli texnologiyaları sınamaq üçün bir yol ola bilər. CPLD-dən istifadə etməkdən və onu sınamaqdan daha yaxşı öyrənmə yolu ola bilərmi?
Lehimsiz lövhələr də daxil olmaqla bir çox şeyə qoşula bilmək üçün CPLD modulu yaratdım, amma səhv etdim. Deyəsən, lehimsiz lövhədə mövcud qoşulma sahəsi 1,1 düymdür. Hər iki tərəfdə bir sıra naqillər üçün yer qoymadan, sahəni 1 düym enində etdim. Həəəə.
Amma icazə verin, geri qayıdıb nə etdiyim barədə daha çox məlumat verim. Mən dəst şəklində qurula bilən, evdə asanlıqla lehimlənə bilən, dövrədə proqramlaşdırıla bilən və 3.3 və ya 5 voltda işləyə bilən proqramlaşdırıla bilən bir məntiq yaratmaq istəyirəm.
Asan lehimləmə dəsti yaratmaq üçün 3.3v və 5v versiyalarında da mövcud olan və enerji mənbəyindən asılı olmayaraq proqramlaşdırmasını qoruyub saxlayan köhnə CPLD komponentindən istifadə etdim. Məntiqin özü Altera Max seriyasından olan CPLD IC-dir və iki versiyada mövcuddur və 32 və ya 64 makroelementli dövrə lövhələri üçün uyğundur. Makroelementlər məntiqi "terminlər" istifadə edərək proqramlaşdırılan və sonra proqramlaşdırıla bilən qarşılıqlı əlaqələr vasitəsilə digər makroelementlərlə birləşdirilən əsas məntiqi tikinti bloklarıdır.
Sxemə baxdıqda, onun çox məzmununun olmadığını görə bilərsiniz: əsasən CPLD, dövrədaxili proqramlaşdırma dövrəsi və CPLD məntiqini idarə edən osilator.
Bu hissə EPM7032 və EPM7064 adlanır və 44 pinli plastik qurğuşun çip daşıyıcısından (PLCC) istifadə olunur. Qurğuşun telinin J formasına görə bəzən J tel adlanır. Bu paket dəlikli yuvaya daxil edilə və ya birbaşa PCB-yə lehimlənə bilər.
Daxili osilator ehtiva edir, buna görə də CPLD əməliyyatları vəziyyəti sabit şəkildə yerinə yetirə və xarici saata ehtiyac olmadan öz-özünə sürətli sayğaclar yarada bilər. Xarici saat mövcuddursa, moduldakı yüksək sürətli saat xarici saatın hər yüksələn və ya düşən kənarında saat hadisəsi yaratmaq üçün istifadə edilə bilər və yenə də CPLD/FPGA qaydalarına əməl edə bilər, yəni saat girişini "Asinxron" idarə etmək əvəzinə daxili qlobal saat şəbəkəsindən istifadə etməlisiniz. Bu osilatorun nominal enerji təchizatı gərginliyi 1,8 ilə 5,5 volt arasındadır.
Videoya baxsanız, osilatordakı "INH" pinini necə idarə edəcəyimə dair şəxsi seçimimi müzakirə etdiyimi görəcəksiniz; sadə dillə desək, texniki şərtlər vərəqinin qanuni olduğunu yoxladıqdan sonra, adətən onu üzməyə qoyuram.
Bu cür funksiyalarla işləyərkən ağlıma gələn səbəblər arasında giriş pinlərini birbaşa elektrik relslərinə qoşmağı xoşlamamağım da var idi (mümkünsə). Yəni, keçidlər zamanı cərəyanı məhdudlaşdırmaq üçün ardıcıl rezistorlardan istifadə etməyə üstünlük verirəm, hətta buna ehtiyac olmasa belə.
İllər ərzində istehsalda bəzi problemlərlə qarşılaşmışam (böyük partiyalarda) və bəzən elektrik dövriyyəsi kimi şeylər elektrik relsinə birbaşa qoşulmuş sancaqların çipin özündən daha yüksək gərginliyə malik olmasına imkan verirdi ki, bu da pisdir. Nəhayət, sancağı elektrik relsinə bir rezistor (elektrik və ya torpaq) vasitəsilə qoşun və insanlar fikirlərini dəyişib sancağı sonradan istifadə edə bilərlər. Bu, xüsusilə istifadə olunmamış qapılarla bağlı təcrübəmdə doğrudur, yəqin ki, bu qapıların heç vaxt üzən və ya qoşulmamış qalmamalı olduğunu bilirsiniz. Dartma rezistorundan istifadə etməklə, mis izlərini kəsmədən siqnalı qoşa və qapıdan istifadə edə bilərsiniz.
10 pinli konnektor və bir neçə rezistor proqramlaşdırma dövrəsini təşkil edir. Əgər bütün rezistorlar dartılan rezistorlardırsa, mən rezistor şəbəkəsindən istifadə edərdim, amma təəssüf ki, onlardan biri torpaqlanıb.
Belə müstəqil CPLD-ni proqramlaşdırmaq üçün xüsusi bir proqramçı tələb olunur. Bunu demək mənim üçün asandır, çünki adətən yanımda bir neçəsi olur, amma əgər yoxdursa, oyuna girmək çox da çətin olmayacaq. Təsdiqlənmiş "Altera USB Blaster" 50 dollara satılır və Digikey və digər yerlərdən əldə edilə bilər. Ebay-dan bir neçə klonum var, bunlardan biri eyni zamanda Altera, Xilinx və Lattice-i dəstəkləyən klondur. İnternetdə öz klonunuzu yaratmaq üçün istifadə edilə bilən bir layihə və kod var, mən onu proqramçı klonları hazırlamaq layihəsi üçün mümkün videolar siyahımda sadalayacağam. Həmçinin ana plata, Arduino, PIC və s.-nin proqramlaşdırıla biləcəyi bir qalxan dizaynını göstərəcəyəm.
CPLD-ni kompilyasiya etmək və proqramlaşdırmaq üçün tələb olunan proqram təminatı Altera-dan pulsuz olaraq əldə edilə bilər, lakin bu köhnə hissə üçün köhnə 9.1 versiyası tələb olunur. Xoş xəbər odur ki, bu, mənim ən sevdiyim köhnə versiya idi. Onun intuitiv zamanlama analizatoru var idi, lakin sonrakı versiyada çıxarıldı.
PCB sadə iki tərəfli dizayna malikdir, dövrə lövhəsi ona uyğun olduğu müddətcə, mən adətən torpaqlama və bəzən enerji təchizatı üçün misdən istifadə edirəm. Bəzən tökmə o qədər pozulur ki, əslində problemlərə və ya səliqəsiz nəticələrə səbəb ola bilər, buna görə də misin yenidən tökülməsi bir vasitədir, lakin onu idarə etmək lazımdır.
Bu gün bir çox (əksəriyyəti olmasa da) CAD proqram paketləri son məhsulun 3D görünüşlərini ehtiva edir, baxmayaraq ki, şəkillərin dəqiqliyi yalnız hissələri təmsil etmək üçün istifadə edilən 3D modellər qədər dəqiqdir. Burada 44 pinli rozetka, proqramlaşdırma konnektoru və osilator üçün 3D modeli harada seçdiyimi görə bilərsiniz. İstifadə etməyi xoşladığım bəzi 3D paketlər bunlardır:
Bir çox şirkətin həmçinin komponentlərinin 3D modelləri var. Molex bu sahədə yaxşı iş görən şirkətlərdən yalnız biridir.
Etdiyim səhv estetika kimi funksiyaya təsir etmir və əsas problem deyil, yəni tək bir lehimsiz çörək lövhəsi üçün uyğun deyil.
Dizaynı hər kəslə paylaşa biləcəyimi düşündükdən sonra dərhal CPLD-nin sxematik simvollarından və ümumi istifadə sahəsi olan 40 pinli konnektorun pinoutundan narazı qaldım. 40 pinli iki sıralı konnektor simvolunu götürüb 1 düymlük bir istifadə sahəsinə uyğunlaşdırdım, lakin pin nömrələri 1, 2, 3, 4... deyil, lent kabel konnektorları kimi DIP paketi 3, 5, 7... yan tərəfində 1 ilə nömrələnib. Buna görə də, modula necə qoşulacağınızı və problemlərin aradan qaldırılmasını müəyyən etmək üçün qeyri-intuitiv bir istifadə sahəsidir.
Eynilə, CPLD pin təyinatları bir az qarışıqdır və mən simvollar yaratmaq üçün Sərhəd Tarama Təsvir Dilinə (BSDL) əsaslanan bir sıra yardımçı proqramlardan istifadə etdim. Əksər böyük satıcıların əsas komponentləri üçün BSDL faylları mövcuddur ki, bu da sizə (yarı)avtomatik olaraq simvollar və paketlər yaratmağa imkan verir. Hər hansı bir avtomatlaşdırma kimi, buna bir vasitə kimi baxmaq lazımdır və ən yaxşı nəticələr üçün əlavə masaj tələb edə bilər. Bu halda, mən ona pinləri əlifba sırası ilə sadalamağa icazə verdim ki, bu da lövhədəki pinləri izləyərkən demək olar ki, təsadüfi olur. Yalnız deyə bilərəm ki, həmin gün çox narahat idim.
Yolda olarkən bu qısa yollar üçün pul ödəyirsiniz. Bu modulu dəyişdirməyə gedəndə, hissənin özünə uyğun bir sancaq yerini müəyyən edib ona verəcəyəm ki, osiloskop zondunuzun hara qoyulacağını bilmək sxematik simvola baxmaq qədər asandır.
Dövrə lövhələrindən istifadə edərkən, əsasən estetik və ya faydalı olan digər təkmilləşdirmələr də mövcuddur. 1-ci pin göstəricisi bir neçə paketdə daha çox istifadə olunmalıdır və mən həmişə osiloskopun torpaqlama və ya VOM naqilini birləşdirmək üçün sadə torpaqlama nöqtəsinə üstünlük verirəm. Bunu iki pinli konnektor əlavə etməklə əlavə edə bilərəm ki, güc və torpaqlama alt pinlərə bərkidilmək əvəzinə birbaşa lövhəyə verilə bilsin.
Dövrə lövhəsini dəyişdirməzdən əvvəl, onun fiziki və estetik problemlər altında düzgün işlədiyinə əmin olmaq istəyirəm. Elektrik enerjisini yandırdıqdan və osilatorun düzgün işlədiyini təsdiqlədikdən sonra proqramçını qoşdum. 3.3v versiyası proqramlaşdırma proqramından daha yeni olsa da, CPLD-ni aşkarladı və onu "naməlum" cihaz kimi göstərdi.
Daha sonra Quartus-da sayğac yaratdım və pin nömrələri təyin etdim. Sürətli kompilyasiya və yükləmə, eləcə də osiloskop tərəfindən görülən sayğac funksiyası dizaynın mümkün olduğunu təsdiqləyir.
Verilog-dakı sürətli test dövrəsi çox sadədir. Kod aşağıda verilmişdir. Sxemi və Verilog test dövrəsini ehtiva edən ZIP faylını Quartus II layihəsi kimi yükləyə bilərsiniz (9.1 versiyası tələb olunur).
Qeyd etdiyim kimi, dizaynı paylaşarkən və ya bir sıra problemlərin aradan qaldırılması zamanı lazım olan detallara daha çox diqqət yetirmək üçün dövrə lövhəsinin ikinci bir versiyasını hazırlayacağam. Alt konnektorun enini 0,9 düym və ya daha az təyin etməliyəm, ona görə də onu standart "geniş" DIP paketi olan 0,6 düymə təyin etməyə davam edə bilərəm. Bunu etmək, alt sancaqların CPLD yuvasının izindən çıxmasına imkan vermək deməkdir. Bunu istehsal vəziyyətində etməzdim, çünki o vaxt əl ilə yığılmışdı, amma məqsədlərdən biri əl ilə lehimləmə dəsti hazırlamaq idi. Əl ilə lehimləmə kompromissi odur ki, osilatorun həqiqətən SMD səth montaj korpusunda olması lazımdır, dəlikli versiya çox böyükdür və adətən istədiyim gərginlik diapazonunu dəstəkləmir.
Bu modullardan istifadə edərək tam sadə bir kompüter qurmaq mümkündürmü? Düşünürəm ki, yaddaş əlavə etməliyəm.
Lol... bəli, bu, hansı kompüter növündən asılıdır. Lakin, "əsl" mikrokontrollerlər/mikrokompüterlər modulun "pin birləşməsi"ndən təsirlənir, bu da o deməkdir ki, moduldan çox faydalı bir şey etmək üçün kifayət qədər terminologiya əldə edə bilməzsiniz.
Mən 64 ölçülü tam bir NTSC kamera vaxtlama və rejim nəzarətçisi hazırladım, buna görə də heç bir prosessor tələb olunmur.
"Nand ​​to Tetris" kitabında istifadə edilən Struktur Verilog və HDL az-çox eynidir.
Niyə hissələr dəlikli olur? 0805 qaynağı asandır! İndi hər bir tinkerin bu bacarığı öyrənməsinin vaxtıdır.
Əgər üst yuvanı altdan lehimlənmiş sancaqlarla üst-üstə salsam, onda "6 mərkəzdən (40 pinli çipi simulyasiya etmək) və ya diaqonaldan və s. istifadə edə bilərəm. Bunlar alt telləri lehimləmək üçün yalnız əl ilə lehimləmə komponentləri olacaq. Üst yuvanı ayaqların arxasında.
Amma yeni başlayanlar üçün onu altdan lehimləmək çətindir. Çörək lövhəsinin lövhəsi üçün başlıqları lehimləyərkən (eBay-da istifadə edə biləcəyiniz bu ucuz SMD adapter lövhələri prototipləmə üçün istifadə edilə bilər), başlıqları lövhəyə yerləşdirirəm, sonra lövhəni üzərinə qoyuram və sonra asanlıqla lehimləyə bilirəm. Bu, lövhələr üçün çox uyğundur. Əgər onu altdan lehimləmək lazımdırsa, bu daha da çətindir.
Əgər CPLD ortadadırsa (naqil çəkmək daha asan ola bilər), üst-üstə düşmədən diaqonal olaraq quraşdırıla bilər, 4 sıra var və ya CPLD bir tərəfdə ola bilər:
Lehimləmədən əvvəl konnektoru çörək lövhəsinə yerləşdirmək üçün məsləhətinizə görə təşəkkür edirəm. Mənimki bir az qeyri-sabitdir.
Bəs bir ucunda DIP formatlı çubuq sancaqları, digər ucunda isə çip yuvasının özünün "donql" tipli olması necə olar? Çipi çubuğun ucuna asıla bilər. Routing sıx olacaq.
|####### ******************** |. Bəli, Xilinx və Lattice-in "pulsuz" versiyaları kimi, Altera-nın "pulsuz" versiyasından istifadə etməyə qərar verdim. Bütün açıq dəstəyin nəyi dəstəklədiyini, cihaz seriyasının spesifik atributlarını da əhatə etməli olduğunu anlamaq üçün Al Williams ilə dövrü bitirməliyəm. Bununla belə, pulsuz versiya ilə çox iş görmüşəm.
Bəli, CPLD-nin sancaqlarla üst-üstə düşdüyünü göstərirsiniz, məncə. Düzgün izləsəm, bu, 2-ci versiya kimi görünə bilər. (Kütləvi) istehsal üçün dizayn edərkən, həmişə "əl ilə lehimləmə yığımı" mərhələsinə qarşı allergiyam olur, çünki onlar üst-üstə düşür (əslində komponent olmayan tərəfdəki lehim sancaqları). ) Artıq əl ilə lehimlənmiş bir komponentdir), amma bu, istehsal yönümlü bir dizayn deyil, sadəcə kiçik bir dəstdir. Sadəcə, yaşımda qurtulması çətin olan bəzi vərdişlərim var. :)
Düşünürəm ki, CPLD və geniş T-şəkilli hissəsi olan passiv komponentləri olan T-şəkilli dövrə lövhəsi çörək lövhəsinin kənarına asıldıqda çox faydalı olacaq. Adafruit RasPi T-Cobbler-ə bənzər bir şey (http://www.adafruit.com/products/2028). Bu, çörək lövhəsi sahəsinin çox hissəsini əlçatan edəcək.
Təəssüf ki, dayandırılması, XR2206 və ICL8038 əsaslı bütün funksiya generatorları kimi, onun əlavə layihələrdə istifadəsini ciddi şəkildə məhdudlaşdıracaq.
Maraqlı fikirdir. Bu iki çipi bəyənirəm. CPLD köhnəlməyib, sadəcə onu 3.3v-da almaq daha ucuzdur.
"Cəfəngiyatınıza" gəldikdə isə... onu lövhəyə yerləşdirmək üçün yeni bir plan hazırlamamısınız. Əvvəlcə teli lövhəyə, sonra isə cpld-i telin üzərinə qoyun. Yaxud, əgər onlardan birindən elektrik və torpaqlama zolaqlarını çıxara bilirsinizsə, 2 lövhədən istifadə edin.
Altium və Eagle haqqında. KiCad-ı nəzərdən keçirmisinizmi? Onun Eagle-dan daha çox Altium-a üstünlük verəcəyiniz heç bir məhdudiyyəti yoxdur və standart olaraq bütün qoşulmamış pinlər üçün DRC səhvləri yaradır. Əgər həqiqətən bir pin açmaq istəyirsinizsə, onu deməlisiniz. (Bəlkə də yalnız giriş üçündür, çıxış üçün deyil və hələ yoxlanılmayıb). Digər əla xüsusiyyəti isə öyrənməyin çox asan olmasıdır. Cəmi bir günortadan sonra vaxt apardı və əla giriş təlimatı məni işə saldı.
Mən dəliyin üstündəki (böyük hissəli) smd-yə üstünlük verirəm. Onlardan istifadə etmək daha asandır. PCB-ni hər zaman çevirməyə ehtiyac yoxdur. (Güzgüləmə səbəbindən bəzi axmaq səhvlərə yol verildi...). Və rezistorun ucunu kəsməyə ehtiyac yoxdur. Bir dizaynı paylaşarkən, birdən çox paketi PCB-yə və ya tək bir hissəyə rahatlıqla yerləşdirmək olar. SMD rezistoru TH. (Bu, düzülüşü bir az daha mürəkkəbləşdirir).
Mən "KiCad Getting Starting" kitabını pdf formatında istifadə etdim. İstifadə etdiyim köhnə versiya 29 səhifəlik, ən son versiya isə 52 səhifəlikdir. Onu digər dərsliklərdə (video linkləri daxil olmaqla) tapa bilərsiniz: http://kicad-pcb.org/help/tutorials/
Bilirəm ki, Hackaday və The Amp Hour-dan [Kris Gemmell] Kicad haqqında bir seriya hazırlayıb http://kicad-pcb.org/help/tutorials/
Kicad faydalı ola bilər, baxım 2-ci versiyada nə baş verir. Təklifləriniz üçün təşəkkür edirəm. Qoşulmamış girişlər DRC (ERC) üçün yaxşıdır və onları yavaş və ya IO saxlayan bağlayıcılar və digər şeylər üçün əksər CAD bağlantısı mesajlarından yayınmaq olar.
Sürətli bir test keçirin və konnektoru boş bir cədvələ atın, annotasiyaları və DRC-ni işə salın. Hər bir pin üçün drc səhvləri verdi. Lakin, məlum qoşulmamış pinləri işarələmək çox sadədir.
Passiv olaraq təyin edin. Axtarış etməliyəm (Komponenti Düzəliş Et -> Kitabxana Redaktoru ilə Düzəliş Et. Kitabxana redaktoru komponentinizi açır və ayrı bir pəncərədə yükləyir, komponentin istənilən hissəsini yoxlaya və ya dəyişdirə bilərsiniz. Dəyişdirilmiş komponent sxeminizdə saxlanıla və ya yenilənə bilər. Bu, komponentləri dəyişdirməyi çox asanlaşdırır. Kitabxana ilə o qədər də maraqlanmıram. Məsələn, cpld istifadə etsəniz, pinlərə mənalı adlar təyin etmək istəyirsiniz. Daha da əhəmiyyətlisi, öz komponentlərinizi dizayn etmək üçün yaxşı bir interfeys var.
KiCad-ın ERC-də "qoşulmamış" pinlər "passiv pinlərdən" fərqli bir pin növüdür və bütün "qoşulmamış" pinlər səhvlərə səbəb olacaq. ERC-nin işləmə tərzi asanlıqla öz seçimlərinizə uyğunlaşdırıla bilər: Alətlər -> Elektrik Qaydaları Yoxlayıcısı -> Seçimlər.


Yayımlanma vaxtı: 18 Noyabr 2021