Мазмуну:

Ghetto Programmable Logic (CPLD) өнүктүрүү системасы: 13 кадам
Ghetto Programmable Logic (CPLD) өнүктүрүү системасы: 13 кадам

Video: Ghetto Programmable Logic (CPLD) өнүктүрүү системасы: 13 кадам

Video: Ghetto Programmable Logic (CPLD) өнүктүрүү системасы: 13 кадам
Video: Programmable Logic II: Program a CPLD from start to finish. 2024, Июль
Anonim
Ghetto Programmable Logic (CPLD) өнүктүрүү системасы
Ghetto Programmable Logic (CPLD) өнүктүрүү системасы

Акыркы бир нече ай бою мен AVR процессорлору үчүн Геттону өнүктүрүү системасынан ырахат алып жатам. Чындыгында, бул дээрлик нөл доллар куралы ушунчалык кызыктуу жана пайдалуу болуп чыкты, бул концепцияны FPGA/CPLD өнүгүүсүнө чейин кеңейтүү мүмкүнбү деп ойлондум. (FPGA: Field Programmable Gate Array. CPLD: Complex Programmable Logic Device.) Ошентип, мен интернетте бир аз казып көрдүм жана Atmel CPLDs үчүн иштеп чыгуу системасын ойлоп таптым. Altera түзмөктөрү менен салыштыруу алардын түйүнүн бирдей көрсөтөт (мен төмөндө деталдуу чектөөлөрдүн чегинде), ошондуктан алар дагы иштешет. Мен көрсөтө турган өнүктүрүү тактасын жана интерфейстин кабелин куруу менен, андан кийин инструменттерди жүктөп алуу менен, сиз өзүңүздүн CPLD тиркемелериңизди өнүктүрө аласыз. Сураныч, төмөнкү чектөөлөргө жана чектөөлөргө көңүл буруңуз. Мен жөндөмдүүлүктү жана жөнөкөйлүктү тең салмакташтырууга аракет кылдым, ошондо сиз 5V түзмөктөрүнөн гана ырахат алып, үйрөнө аласыз. Системаны кошумча чыңалууларды жабуу үчүн кеңейтүү (3.3V, 2.5V, 1.8V бир үй -бүлөдө Atmel түзмөктөрү тарабынан колдоого алынат) кыйын эмес, бирок ал өнүгүү тактасын да, программалоо кабелин да татаалдаштырат. Азырынча өткөрүп жиберели. Белгилей кетүүчү нерсе, сиз тактага 5V менен камсыз кылышыңыз керек.44 пин PLCC гана. Тактап айтканда, мен Atmel ATF1504ASты программаладым. Ghetto CPLD концепциясын башка Atmel түзмөктөрүнө оңой эле жайылтууга болот, бирок бул түзмөк баанын, колдонуунун оңойлугунун жана жөндөмүнүн ортосундагы жакшы компромисс сыяктуу көрүндү. Концепция Altera, Xilinx, Actel ж. Азырынча мен Atmel программалоо кабелин гана колдондум, бирок Altera Byte-Blaster Atmel программасы тарабынан колдоого алынат жана жакшы иштеши керек. Бул чынында Atmel кабелине караганда бир аз жөнөкөй дизайн. (Мен Atmel версиясын кургам жана ал иштейт, ошондуктан мен Altera версиясын сынап көргөн жокмун.) SparkFun Altera кабелинин 15 долларлык версиясын сунуштайт. Бул Atmel жана Altera үчүн иштей тургандыктан, мен аны сунуштайм. Эгерде сиз Altera бөлүктөрү менен иштей турган болсоңуз, анда Altera программасын да алгыңыз келет. Мен чындыгында муну сынап көргөн жокмун, бирок иштебейт деп ойлоого эч кандай себеп жок. Ылдамдык чектелген. Ghetto CPLD өнүктүрүү тутуму кол зымдары менен курулгандыктан жана жерде учак жок болгондуктан, бир нече мегагерцтен ашык ылдамдыкта ишенимдүү иштөөнү күтпөңүз. Ал тургай, бул сиздин километражыңыз ар кандай болушу мүмкүн деп кепилдик бере албайт! Албетте, эгер сиз жердеги учагы бар прототип аппаратын курсаңыз, анда CPLDңиз жогорку ылдамдыкта жакшы иштеши мүмкүн. Гетто өнүктүрүү системасына тез орнотулат деп күтпөңүз.

1 -кадам: Бөлүктөрдү заказ кылуу

Бөлүктөрдү заказ кылуу
Бөлүктөрдү заказ кылуу

Сизге 44 пин плкс розеткасы, кээ бир ажыратуучу капкактар, кээ бир программаланбаган CPLDлер, панель байланыштары үчүн розеткалар, тартуучу резистор жана балким, аны куруу үчүн кээ бир такта керек болот. Эгерде сизде булардын баары керексиз кутуңузда болсо, анда бир нече доллар сактай аласыз. Ыңгайлуулугуңуз үчүн бул жерде Digikey Part Numbers: CONN PLCC SOCKET 44POS TIN PN: 1-822473-4-ND SOCKET IC OPEN FRAME 14POS.3 "PN: 3M5462-ND Qty: 2SOCKET IC АЧЫК ЧЕКИ 18POS.3 "PN: 3M5464-ND Qty: 2CAP ELECT 10UF 50V SU BI-POLAR PN: P1280-ND Qty: 1, C1CAP CER.10UF 50V 20% DISC RAD PN: 478 -4275-1-ND саны: 4, C2-C5RES METAL FILM 5.10K OHM 1/4W 1% PN: P5.10KCACT-ND PC BOARD FR4 1-SIDE PPH 4.0X4.0 PN: V2010-ND IC CPLD 64 MACROCELL 10NS 44PLCC PN: ATF1504AS-10JC44-ND Бир нече бөлүктөр минималдуу санда болушу мүмкүн, бирок дагы эле абдан арзан болушу керек. Эгерде сиз кээ бир жаркыраган чырактарды (8-кадам) кургуңуз келсе же өчүргүчтөрдүн топтомун жасоону кааласаңыз (9-кадам) булар да. Эскерте кетүүчү нерсе, Digikey 25 доллардан кем болбошу керек, андыктан сиз программаланбаган CPLDлерди же AVR процессорлорун же экөөнү көңүл ачуу үчүн алууну каалашыңыз мүмкүн. Бул жерде бөлүк номерлери. Кабелди жана туташтыргычты алыңыз. (Болбосо, эгер сиз өзүңүз куруп жатсаңыз, Digikeyден кабелдин бөлүктөрүнө заказ кылыңыз.) Altera FPGA шайкеш программисти PN: PGM-087052x5 Pin IDC тасма кабели PN: PRT-085352x5 пин капталган баш PN: PRT-08506

2 -кадам: Программаны алыңыз жана орнотуңуз

Программаны алуу жана орнотуу
Программаны алуу жана орнотуу

Учурда Atmel Prochip Designer 5.0 куралдар тизмегин колдонуп жатам. Бул курал Atmelге катталып, алардын расмий суроо формасын толтурууну талап кылат. Мен аларга инженер -дизайнер экенимди, учурда жумушсуз экенимди жана менин негизги максатым - алардын түзмөктөрүн жана VHDLди үйрөнүү (баары чын, BTW). Алар лицензия алуу өтүнүчүн жактырышты. Бир гана нерсе - лицензия 6 айга гана жакшы. Мен ал аяктаганга чейин коомдук домен куралдар чынжырын табам деп үмүттөнөм. Альтерада мен текшере турган куралдар тизмеги бар. Ар кандай сунуштар бааланат. Акыркы кадамдагы комментарийлерди жана шилтемелерди караңыз. Atmel Prochip Designer 5.0 бул жерде. Эгер сиз аны алсаңыз, анда ал үчүн Service Pack 1ди алууну унутпаңыз.

3 -кадам: Программалоо кабелин жасаңыз

Программалоо кабелин жасаңыз
Программалоо кабелин жасаңыз

Бул жердеги эң оңой жол-Sparkfunдан Altera Byte-Blaster жумушун сатып алуу (1-кадамды караңыз). Эгерде 15 доллар сарптоого караганда көбүрөөк болсо, анда SparkFun Altera Cable схемасын колдонсоңуз же Atmel Cable схемасын колдонсоңуз болот. (Эгерде кабелди чийүүгө кызыккандар көп болсо, мен кээ бир сунуштарды айта алам, бирок Sparkfun комплект мага туура жооп окшойт.)

4 -кадам: Программистти бешик кылыңыз

Программистти бешикке айландырыңыз
Программистти бешикке айландырыңыз
Программистти бешик кылуу
Программистти бешик кылуу
Программистти бешик кылуу
Программистти бешик кылуу

Atmel программистин карап көрүңүз. Бул абдан ийкемдүү жана эгерде сизде акчаңыз болсо жана CPLDди өнүктүрүүнү пландасаңыз, эң сонун вариант. Altera окшош нерсени сунуштайт, мен ишенем. Бирок мен арзаныраак ыкма менен бардым - мунун баары ушул! Сүрөттөр мен курган бешиктин алдыңкы жана арткы көрүнүшүн көрсөтөт. DIP розеткаларына көңүл буруңуз, алар панель коннекторлору катары колдонулат. Ар бир туташтыргычтын бир жагындагы бардык казыктар жерге туташтырылган; башка жагындагы казыктар CPLDдеги сигнал казыктарына туташат. Мен ошондой эле бир нече электр байланыштарын киргиздим; буларды ылайыктуу жерге койгула. Диаграммалар кандайдыр бир сүрөттүү схемалар; бир гана кошумча электр байланыштары көрсөтүлгөн эмес. Бул боюнча идеялар үчүн сүрөттөрдү караңыз.

5 -кадам: Бешикти куруу - 1 -бөлүк

Бешикти куруу - 1 -бөлүк
Бешикти куруу - 1 -бөлүк
Бешикти куруу - 1 -бөлүк
Бешикти куруу - 1 -бөлүк

Бешикти курууну өзүңүз каалаган жерге оюкчаларды салып баштаңыз. Бош катарга уруксат бериңиз, ошондо капкактарды ажыратуу үчүн орун болот. Бул ошондой эле CPLD сигналына туташтырууну жеңилдетет. Сиз колдонгон тактайдын түрүнө жараша розеткаларды бир аз ширетүү же эпоксиден бекитүү. JTAG туташтыргычы жана кубат туташтыргычы үчүн үстүңкү бөлмөдө (CPLD розеткасынын 1 -пин жогору) уруксат бериңиз. Мен курган сүрөттөргө кайрылгыла. Жер астындагы автобус үчүн розеткалардын сыртына жылаңач зымды (20 калибрдей) буруңуз. Электр автобусун да маршрутуңуз. (Сүрөттөрдөгү кызыл зым.) Кээ бир жетекчилик үчүн сүрөттөргө кайрылыңыз, бирок тактаңыз бир аз башкачараак болот - жана бул жөн эле. Розеткалардын сырткы казыктарын жерге автобуска солет. Бул автобустун зымын бекитүүгө жардам берет.

6 -кадам: Бешикти куруу - 2 -бөлүк

Бешикти куруу - 2 -бөлүк
Бешикти куруу - 2 -бөлүк
Бешикти куруу - 2 -бөлүк
Бешикти куруу - 2 -бөлүк

Ажыратуучу капкактарды орнотуп, аларды CPLD розеткасынын ар бир тарабындагы жерге жана электр казыктарына туташтырыңыз. Мен зымдарды ички катарларга жетүү үчүн төөнөгүчтөрдүн сырткы катарларын өйдө -ылдый багыттоону сунуштайм. Туура казыктарды алуу үчүн пиндин диаграммаларына кайрылыңыз - CPLD розеткасынын пин -чыкканы айдан ачык эмес. Зымдарды өткөрүп берген казыктарга туташууга мүмкүнчүлүк берүү үчүн жетиштүү орун калтырыңыз. Капкак туташуулары бүткөндөн кийин, кубаттуулукту жана жерге шинаны туташтырыңыз. Диаграммалардагы бардык кызыл казыктар Vcc жана туташуусу керек. Кара казыктар жерге тигилген жана аларды туташтыруу керек. Дагы, аны абада багыттоо жакшы ыкма. Идеялар үчүн сүрөттөрдү караңыз.

7 -кадам: Бешикти куруу - Жыйынтык

Бешикти куруу - Жыйынтык
Бешикти куруу - Жыйынтык
Бешикти куруу - Жыйынтык
Бешикти куруу - Жыйынтык
Бешикти куруу - Жыйынтык
Бешикти куруу - Жыйынтык

JTAG байланыштарын туура казыктарга багыттаңыз. Программалоо кабелиңизди карап, туташтыргыч туура багытталганын текшериңиз. TDO төөнөгүчүн тартууну унутпаңыз. Бул сүрөттө гана көрсөтүлгөн жана TDO пини менен Vccтин ортосунда жүрөт. Акыркы кадам - CPLDдин ар бир I/O пинин розеткаларга туташтыруу. Байланыш үчүн диаграммалардагы сандарды колдонуңуз. Бул эң көп убакытты талап кылат! Эгерде сиз менин номерлөө схемамды ээрчисеңиз, анда схемаңызды туташтырууда Top View диаграммасын колдонмо катары колдоно аласыз. Сиз чындыгында мунун баарын туташтыруунун кажети жок, сиз өзүңүз иштеп чыккан схемаларга муктаж болгонго чейин күтө аласыз. Жумушуңузду кылдат текшериңиз. Күч жана жер кыска эмес экенине ишениңиз!

8 -кадам: Blinkenlights жасаңыз (TTL версиясы)

Blinkenlights жасаңыз (TTL версиясы)
Blinkenlights жасаңыз (TTL версиясы)

Албетте, сиздин схемаңыздын иштешин көргүңүз келет. Ошентип, сиз жаркыраган жарыктарды каалайсыз (The Real Elliot тарабынан атактуу болгон). Жалгыз кармоочу нерсе, CPLDлерде AVR процессорлору сыяктуу жакшы жыйынтыктары жок. Жарык диоддорун 10ма үчүн баалаңыз жана 1KOhm сериядагы резисторлорду колдонуңуз. Бул CPLD жыйынтыктарын кыйналбастан сизге ачык чыгуу сигналдарын берет.

9 -кадам: которгучтарды жасаңыз

Коммутаторлорду жасоо
Коммутаторлорду жасоо
Коммутаторлорду жасоо
Коммутаторлорду жасоо

Сиздин микросхемаларыңызга стимул берүү үчүн сизге кээ бир өчүргүчтөр керек болот. Бул жерде сизде кээ бир параметрлер бар, бирок талаптар AVR процессорлоруна караганда башка. CPLD чыгуулары камтылган тартууларга ээ эмес жана программалык камсыздоону жок кылуу оңой эмес. (Бул мүмкүн, бирок сиздин схемаларыңызда колдонууну каалаган ресурстарды талап кылат.) Көрсөтүлгөн DIP которгучтары ыңгайлуу пакетте бир нече которуштурууну камсыз кылат, бирок аларды көтөрүү керек. Мен 1K тартууну колдондум. Pushbutttons Атмелдин демо тактасына сунуштаган схемасын колдонуп жасалышы мүмкүн. Схемалар 36 -бетте. Башка вариант - сигналдарды берүү үчүн AVR процессорун туташтыруу - ал тургай жоопторду текшерүү. Бирок бул окуучуга калган көнүгүү.

10 -кадам: Биринчи схемаңызды түзүңүз

Биринчи схемаңызды түзүңүз
Биринчи схемаңызды түзүңүз
Биринчи схемаңызды түзүңүз
Биринчи схемаңызды түзүңүз

Бул убакытка чейин сиз программаны алып, орнотушуңуз керек болчу. Биринчи жөнөкөй CPLD схемасын түзүү үчүн кылдат, деталдуу үйрөткүчтү аткарыңыз (эки киргизүү ЖАНА дарбаза; анча жөнөкөй эмес). Туура түзмөктү (44 Pin PLCC, 5V, 1504AS [деталдары]) тандап алууну унутпаңыз жана жеткиликтүү болгон I/O пин сандарын териңиз (мен 14 жана 16ны кириш катары; 28ди чыгаруу катары колдондум). Бул деталдар үйрөткүчтөн бир аз айырмаланат, бирок сизге кыйынчылык жаратпашы керек.

11 -кадам: Биринчи CPLD программаңыз

Биринчи CPLD программаңыз
Биринчи CPLD программаңыз
Биринчи CPLD программаңыз
Биринчи CPLD программаңыз

Программалоо кабелин компьютериңиздин параллель портуна туташтырыңыз, аны Программист бешикке илип коюңуз, 5 вольтту Power туташтыргычына туташтырыңыз жана биринчи CPLDди иш жүзүндө программалоо үчүн окуу куралын аткарыңыз. Кабелдин туура версиясын тандаңыз. Altera Byte-Blaster тандоолордун бири экенин эске алыңыз.

12 -кадам: Программаланган бөлүгүн текшериңиз

Программаланган бөлүктү сынап көрүңүз!
Программаланган бөлүктү сынап көрүңүз!
Программаланган бөлүктү сынап көрүңүз!
Программаланган бөлүктү сынап көрүңүз!

Программалоо кабелин бешиктен ажыратыңыз. Түзгүчтөрдү өчүргүчтөрдү жана жаркыраган жарыктарды сайыңыз, кубатты күйгүзүңүз жана сынап көрүңүз. Сиз жөнөкөй схемадан баштап жаткандыктан, тестирлөө чоң кыйынчылык эмес. Эгер ал иштесе, анда сиз иштеп жатасыз! Жогорку кароо диаграммасы сыноо үчүн өчүргүчтөрүңүздү жана жаркыраган жарыкты туташтырууга жардам берет.

13 -кадам: End жана кээ бир веб -ресурстар

End жана кээ бир веб -ресурстар
End жана кээ бир веб -ресурстар

Бул окуу куралынын максаты сизге VHDLди кантип колдонууну үйрөтүү эмес. (Мен үйрөнө баштагам, ошон үчүн мен программистти эмнеге жараткам, эсиңдеби?) Ушуну менен мен сизди көрсөтө ала турган бир нече абдан пайдалуу окуу куралдарын жана пайдалуу ресурстарды таптым. Сын -пикирлер жана башка сунуштар абдан жогору бааланат. Верилогду жана CPLDдин башка программалоо ыкмаларын үйрөнүү үчүн, Ghetto CPLD өнүктүрүү тутумун колдонсоңуз болот, бул жабдууларга маани бербейт. бекер куралдар. Мага жаккан үйрөткүчтөр бул жерде жана бул жерде, бирок сиз башкаларды таба аласыз. Акыры (азырынча), сиз талкуу тобун текшерип көргүңүз келет, ырахат алыңыз, көп нерсени үйрөнүңүз жана билгениңиз менен бөлүшүңүз.

Сунушталууда: