ҚАЗАҚСТАН РЕСПУБЛИКАСЫНЫҢ БІЛІМ ЖӘНЕ ҒЫЛЫМ МИНИСТРЛІГІ

 Алматы энергетика және байланыс университеті

коммерциялық емес акционерлік қоғамы 

 

 

 

О.Т. Шанаев

БАҒДАРЛАМАЛЫ ҚҰРЫЛЫМДАР

 Оқу құралы

 

 

Алматы 2011


УДК 681.3(075.8)

ББК 32.965.7273

Ш21 Бағдарламалы құрылымдар;

Оқу құралы / Шанаев О.Т. Алматы: АЭжБУ, 2011. – 80 бет.

 

ISBN 978-601-7098-72-8

 

 

Оқу құралында цифрлық техниканың заманауи элементтік базасы ретіндегі бағдарламалы және қайта бағдарламалы құрылымды құрылғылардың қолданылымына байланысты мәселелер қарастырылады. Қарастырылатын мәселелер жөнінде толық түсінік беру үшін алдымен оларды алғы бастамалары – бағдарланымды жады құрылғылары мен бағдарланымды матрицалы құрылғылардың құрылымы мен жұмыс принциптері қарастырылады.

Оқу құралының екінші тарауында қазіргі заманғы бағдарламалы құрылымды құрылғылардың негізгі түрлері (FPGA, CPLD, FLEX) және олардың құрылым ерекшеліктері қарастырылады. Оқу құралының үшінші тарауында келтірілген бағдарламалы құрылымды құрылғылармен жұмыс істеу жолдарын үйретуге бағытталған тәжірибелік жаттығуларда бұндай құрылғылардың құрамындағы қарапайым базалық элементтермен (примитивтермен) қатар параметрлі модулдермен және макрофункциялармен жоба құру жолдары талқыланады.

Оқу құралында берілген материалдарды оқып, оларды игеру арқылы студенттердің бағдарламалы құрылымды құрылғылардың құрылым принциптері және олар арқылы цифрлық жүйелерді жобалау тәсілдерін игеруге толық мүмкіндік алады.

Без. 89, кесте. 5, әдеб. көрсеткіші 18 атау.

 

ББК 32.965.7273

 

ПІКІР БЕРУШІЛЕР:

АЭжБу, физ-мат. ғылым. д-р., профессор С.Б. Бимурзаев,

КазНТУ, тех. ғыл. канд., доцент, А.К. Шайхин

                 

Казақстан Республикасының Білім және ғылым министрлігінің 2010 жылғы баспа жоспары бойынша басылады.

 

ISBN 978-601-7098-72-8

 

© “Алматы энергетика және байланыс университеті КЕАҚ, 2011 ж.

 

Кіріспе

Цифрлық техниканың алуан түрлі құралдарыЕМ, өлшеулер жүргізуге және технологиялық процестерді автоматтандыруға арналған микропроцессорлық жүйелердің және т.б.) барлығы да  біркелкі элементтер базасында құрылады. Цифрлық құрылғылардың (ЦУ) элементтік базасын жиналымды сұлбалар (ЖС) құрады. ЖС күрделілігінің сипаттамасы кристалда орналастырылған базалық элементтер санымен бағаланатын, жиналым деңгейі алынады.

Жиналым деңгейлерінің айырмашылығына қарай  ЖС бірнеше категорияға бөлінеді: КЖС, ОЖС, ҮЖС, АҮЖС (кішігірім, орташа, үлкен және аса үлкен ЖС).

КЖС қарапайым логикалық түрлендірімдерді жүзеге асырады және олар өздерінің әмбебаптылығымен сипатталады олар арқылы кез келген ЦҚ құруға болады. ОЖС түрінде шамалыразрядты регистрлер, санауыштар, дешифраторлар, қосуыштар және т.б. сияқты, іскерлігі жағынан толықтай бітірілген құрылғылар шығарылады. Іскерлігі жағынан жеке мақсаттарға арналғандығынан, олардың әмбебаптылығы төменірек болады, сондықтан олардың көптеген түрі шығарылады.

Күрделі құрылымы мыңдаған, тіпті миллиондаған логикалық элементтер арқылы жүзеге асырылған ҮЖС мен АҮЖС шығарылуымен, әмбебаптылық төмендеу проблемасы одан әрі қайшылана түсті  – оларды жобалауға кететін аса үлкен шығын олардың тар бағытта мамандандырылуымен қиылыспас еді.

Бұл қайшылықтың шешілімі микросұлбаның мамандандырылуын бағдарлау сферасына ауыстыру арқылы, яғни микропроцессорлар мен бағдарламалы құрылымды ҮЖС/АҮЖС пайдаланылуы арқылы табылды.

Микропроцессор, оның командалар жүйесіне кіретін, командалар тізбесін (бағдарламаны) орындайды. Бағдарламаны ауыстыру арқылы, әртүрлі есептерді бір ғана микропроцессорда шешуге болады. Өзгеше айтқанда, бұл жағдайда аппараттық құралдың құрылымы шешілетін есептің сипатымен байланысты емес, яғни ол өзгермеген түрінде қалады да, микропроцессормен орындалатын әрекеттердің тәртібі ғана өзгереді. Бұл жеке микропроцессордың құнын олардың шығарылым көлемін ұлғайту арқылы кемітуге мүмкіндік береді.

Бағдарламалы құрылымды ҮЖС/АҮЖС, арабайланыстарын пайдаланушының (системотехник) өзі қалыптастыратын (бағдарлайтын)  көптеген логикалық блоктары орналастырылған, кристалл түрінде шығарылады. Бұл кристалдарды, жеке пайдаланушыларға алақтамай, көптеп шығаруға мүмкіндік. ЖС құрылымын системотехниктің өзі шешілуші есептің сипатына сәйкесті бағдарлайды. Кристалдың блоктары мен элементтері арасындағы байланыстарды жүзеге асырудың, яғни оның құрылымын бағдарлаудың қазіргі заманда сан-алуан тәсілдері бар.

Микропроцессорлар информация өңделуін, командаларға сәйкесті, көптеген жеке әрекеттерді тізбелеп орындау арқылы жүргізеді. Есептің күрделілігі оның орындаушы аппараттық құралдарына емес, бағдарламаға ғана әсер етеді. Микропроцессор әрекеттерінің тізбелі сипаты қажетті тезәрекеттілікті қамтамасыз етпеуі мүмкін.

Бағдарламалы құрылымды ҮЖС/АҮЖС информация өңделуін, бұл процесті тізбелі орындалатын қарапайым әрекеттерге бөлмей-ақ жүргізуге мүмкіндік береді. Пайдаланушы, шешілетін есептің мазмұнына қарай, ондағы түрлендірімдердің құрылғының көптеген бөліктерінде қатар жүргізілетіндей етіп бағдарлай алады. Бағдарланған құрылғының күрделілігі есеп күрделілігіне байланысты болады.

Сонымен, бағдарламалы құрылымды ҮЖС/АҮЖС, күрделілігі микросұлбаның жиналым деңгейімен, яғни олардың құрылым мүмкіндігімен шектелетін, есептерді тез шешуге, ал микропроцессорлық құралдар – кез келген күрделілікті есепті шешуге мүмкіндік береді, бірақ соңғысы кемірек тезәрекеттілікпен орындалады.

Информацияны цифрлық өңдеу жүйелерінің құрамына жалпы жағдайда процессор, жады, перифериялық құрылғылар және интерфейстік сұлбалар кіреді. Процессор, қажетті есепті өзіне тән командалар жүйесіндегі нақтылы командаларды тізбелі түрде орындайтын стандартты құрылғы.

Жады да, қызметі қандай жүйе болса да бірдей болып қалатын, стандартты микросұлбалармен жүзеге асырылады.

Стандартты ҮЖС/АҮЖС, оның жобалануына кететін шығынның көптеп шығарылатын микросұлбаларға бөлінетіндігінен, олар жиналым деңгейі жағынан алғы қатарда.

Стандартты бөліктерімен қатар жүйеде, нақтылы құрылғының түріне байланысты, жүйенің стандартты емес бөліктері де болады. Оларға жүйе блоктарын басқару құрылғылары, олардың өзара әрекеттесуін қамтамасыз ету құрылғылары және т.б. жатады. Жүйенің бұндай стандартты емес бөліктері бұрын жиналым деңгейі кішігірім және орташа келетін микросұлбалармен жүзеге асырылғанды. КЖС мен ОЖС қолданылуы құру жұмысын күрделендіреді, жүйенің сенімділігі мен тезәрекеттілігін кемітеді. Бірақ бұндай жұмыстарға арнайы ЖС-ларға сұраныс беру көптеген қаражат қажет  қылатын аса қиын жұмыс.

Бұл қайшылық бағдарламалы және қайта бағдарламалы құрылымды ҮЖС/АҮЖС қолданылуы арқылы өз шешімін тапты.

Оқу құралында цифрлық техниканың заманауи элементтік базасына, яғни бағдарламалы және қайта бағдарламалы құрылымдардың қолданылымына байланысты мәселелер қарастырылады.

 

1 Бағдарламалы құрылымды құрылғылардың алғы бастамалары

1.1 Тұрақты жадылық құрылғылар

Бағдарламалы құрылымды құрылғылар пайдаланушының өз талабына сай, арнайы логикалық функциялардың орындалуын қамтамасыз етуге арналған, микросұлба құрамына орналастырылған тізбектер.

Бағдарламалы логикалы құрылғылардың бастапқы түріне тұрақты жадылық құрылғылар (ROM, Read-Only Memories) жатады. Бағдарлау тәсіліне байланысты олардың бірнеше түрі ажыратылады: ROM(M), PROM, EPROM и EEPROM.

1.1.1 Жасырым-жаппалы жадылық құрылғылар

ROM(M) түрлі жасырым-жаппалы жадылық құрылғыларға (ЖҚ) информация микросұлбаның өндіріс орындарында жасалуы кезіндегі технологиялық процестің ақырғы кезеңінде, жады элементтерінің матрицасының сәйкесті түйіндерінде сәйкесті жасырым-жаппамен байланыс элементтерін орналастыру арқылы жазылады. Олардың Жасырым байланыс элементтері ретінде диодтар, биполярлы транзисторлар, МТШ-транзисторлар (метал, тотық, шалаөткізгіш) және т.б. пайдаланылады.

Диодты ROM(M) матрицасындағы (1.1-суретті қара) адрес дешифрато-рының шығыстарына қосылған горизонталь жолдар – сөз таңдау жолдары, ал вертикаль жолдар – оқу жолдары. Тұрақты жадыны бағдарлау жады элемент-терінің горизонталь және вертикаль жолдарының сәйкесті қиылыстарына ара-сына  байланыс элементтерін орналастыру арқылы жүзеге асырылады. Оқыла-тын сөз диодтардың координаталық тор түйіндерінде орналасуымен анықта-лады. Онда диод тұрған болса, таңдалған горизонталь жолдың жоғарғы потен-циалы сәйкесті вертикаль жолға жіберіледі де, сөздің бұл разрядында логика-лық бір сигналы туады. Онда диодтың жоқ жағдайында, вертикаль жол резис-тор арқылы жерге қосылғандықтан, потенциал нөлге жуық болады. Суретте көрсетілген матрицаның А1 (Access – таңдам) жолы жандандырылғанда 11010001 сөзі, ал А2 жолы жандандырылғанда 10101011 сөзі оқылады.

1.1 Сурет

МТШ-транзисторлы матрицадағы нөл сақталуына сәйкесті МТШ-транзисторлардың жаппа астындағы тотықтың қалыңдығы ұлғайтылады да (1.2-суретті қара), ол транзистордың шектем кернеуін өсіреді. Бұл жағдайда ЖҚ-ның жұмыс кернеулері транзисторды аша алмайды. Транзистордың тұрақты түрде жабық болуы оның жоқтығымен бірдей. МТШ-транзисторлы матрица 1.2-суретте көрсетілген.

1.2 Сурет

1.1.2 Бір бағдарланымды ЖҚ

PROM (Programmable ROM) түрлі ЖҚ электрондық өнеркәсіп орнында шығарылғаннан кейін, тұтынушылардың зертханасында қарапайым құрылғылардың (арнайы бағдарлаушылардың) көмегімен бағдарланады.

PROM түрлі ЖҚ-лардың бастапқы дайындамаларының (микросұлба-лардың) матрицасының барлық түйінінде арнайы жалғамдар (немесе болмайды). Бұл микросұлбалар, олардың сәйкесті түйіндеріндегі арнайы жалғамдарды жою немесе оларды құру арқылы бағдарланады. Бағдар-ланғаннан кейін олардың қажеттілері ғана қалады (немесе тудырылады).

Жалғамдардың бір бөлігін жою балқыма жалғамды (fuse түрлі сақтағыш) ЖҚ-ларға тән. Оларда жалғамдар диодтардың немесе транзисторлардың электродтарына қосылады. Бұндай ЖҚ-лардың бастапқы жағдайында барлық жалғам болады (яғни элементтерде логикалық бір сақталған), ал бағдарлау кезінде олардың бір бөлігі амплитудасы мен ұзақтығы жеткілікті мөлшердегі ток импульсімен балқыту арқылы жойылады (яғни логикалық нөл жазылады).

Жалғамдардың бір бөлігін құру, бастапқы жағдайда матрицаның түйіндерінде, қарсы қосылған диодтар жұбы түріндегі, өткізбес жалғамдар болатын және бағдарлау кезінде оларды күйдіру арқылы төменгі кедергілі жағдай құрылатын, сұлбаларға сәйкес келеді. Бастапқы жағдайында бұндай құрылымдардың кедергісі (іс жүзіндегі ажыратылған тізбек сияқты) аса жоғары болады да, түйін логикалық нөл сақтаған элементке сәйкес келеді. Бір жазу үшін диодтарға кері бағытта ығыстырылған диодты тесетіндей жоғары кернеу беріледі. Тесілген диод тудырылған жалғам рөлін атқарады.

 

Балқыма жалғамды және жұп диодты жады элементтерінің бастапқы және бағдарлаудан кейінгі жағдайы 1.3, а, бсуретте көрсетілген.

a

b

1.3 Сурет

PROM бағдарлануы процесін түсіндіру үшін, байланыс элементі ретінде биполярлы транзисторлар пайдаланылған, ерітілме жалғамды ЖҚ қарастырамыз. 1.4-суретте ұйымдастырылымы 32x8, 2D құрылымды, көпэмиттерлі транзисторлар (КЭТ) негізінде құрылған ЖҚ көрсетілген. Кез келген таңдам жолындағы жоғарғы потенциал эмиттерлік қайталауыш режимінде жұмыс істеуші сәйкесті транзисторды жандандырады. Бағдарлауға дейін транзисторлар базаның жоғарғы потенциалын барлық шығыс (разрядтық) жолдарына жібереді, яғни ЖҚ-ның барлық ұяшығында бастапқы жағдайда бірлерден ғана тұратын сөздер болады.

 

1.4 Сурет

Бағдарлау кезінде дерек буферлері үшінші жағдайға (ОЕ = 0) ауысты-рылады  да,  қалыптастырғыштар (F)  жұмысына  рұқсат   беріледі (ОЕF = 1). Ұяшыққа жазылатын сөз дерек жолдарына (D7...D0) беріледі. Жазылатын деректердің бірлік мәндеріне сәйкесті қалыптастырғыштардың шығыстарында төменгі кернеу деңгейлері қалыптастырылады. Нәтижесінде КЭТ-тің сәйкесті эмиттерлеріне төменгі кернеу түседі де, олар арқылы жалғамдарды күйдіруші ток жүреді. Жалғамдарды күйдіру үшін оларға импульстер тізбесі түрінде ондаған миллиампер ток беріледі. Суретте сәйкесті адресі бойынша нөмірі 1 ұяшықты 10100101 сөзін сақтауға бағдарлау кезі көрсетілген.

Матрицаның (яғни, таңдалған жады элементінің) шығыстары сыртқы тізбектерге, жұмысына ОЕ сигналымен рұқсат берілетін, үш жағдайлы буферлік каскадтар арқылы қосылады. Бұл кезде бағдарлау импульстерін қалыптастырғыштарының жұмысына рұқсат сигналы ОЕF болмайды және олар сұлба жұмысына әсер етпейді.

Жалғам болмауы оқу кезінде дерек буферінің кірісіне нөл сигналын береді. Буфер терістеуші болғандықтан, оның шығысынан бірлік сигнал, яғни бұрынғы жазылған сигнал алынады. Бағдарланушы ұяшыққа сілтеу, әдеттегідей, сілтенуші КЭТ-тің базасында жоғары потенциал қалыптастырушы адрес дешифраторымен қамтамасыз етіледі.

Бағдарламалы логикалық микросұлбаларда, алдыңғыдай бағдарлау кезінде төменгі мөлшерлі кедергі құрып тесілетін, кішігірімділігімен көзге түсетін жұқа диэлектрлік қабат түріндегі (antifuse түрлі жалғамдар) сұлбалар қолданылады.

1.1.3 Қайта бағдарланымды ЖҚ

Қарастырылған PROM түрлі ЖҚ-ға информация бір рет жазылады. Құрамындағы ескі информацияны өшіріп, оны жаңасымен өзгертуге болатын ЖҚ-лар (EPROM және EEPROM түрлі) болады, олар қайта бағдарланымды ЖҚ деп аталады. EPROM-да (Electrically Programmable ROM) өшірілім кристалды ультракүлгін сәулелері арқылы жүзеге асырылады. EEPROM-да (Electrically Erasable Programmable ROM) өшірілім электр сигналдарымен жүзеге асырылады.

Қайта бағдарланымды заманауи ЖҚ-ларда жады элементтері ретінде МНТШ (металл, никель, тотық, шалаөткізгіш) және ТЗИМТШ (акронимдегі ТЗИ тасқынды заряд инжекциясы сөздерінен шыққан) түрлі транзисторлар пайдаланылады.

МНТШ-транзистордың әдеттегі МТШ-транзистордан ерекшелігі мынадай: өткізу арнасы мен жаппа арасында екі диэлектрик қабаты болады – жұқа (қалыңдығы 5 нм шамасынан аспайтын) кремний тотығының SiO2 қабаты, одан кейін – одан қалыңырақ кремний нитридінің Si3N4 қабаты (1.5, а-суретті қара). Диэлектрлік қабаттардың шекарасында зарядтарды ұстау орталықтары туады. Жоғарырақ кернеу (20 В шамасында) берілген кезде арна мен жаппа арасында, жұқа SiO2 қабаты арқылы заряд тасымалдаушыларының туннелді ауысуына жетерліктей электр өрісінің кернеулігі пайда болады да, бұған байланысты заряд тасымалдаушылары диэлектрик қабаттарының арасындағы зарядтарды ұстау орталықтарына түсіп, онда жинала алады. Осы заряд МНТШ-транзисторда сақталған информацияны сипаттайды. Диэлектрик қабаттарының арасында, жаппа астындағы аймақтағы электр өрісінің бағытына байланысты, кез келген таңбалы заряд құруға болады. Жиналған зарядтардың болуы транзистордың шектем кернеуіне әсер етеді.

a                                                  b

1.5 Сурет

n-арналы МНТШ-транзисторда қабаттар шекарасындағы теріс заряд жаппадағы транзисторды ашушы оң кернеудің әрекетіне кері әсер етеді, яғни оның шектем кернеуін көтереді. Жоғары кернеу алынғаннан кейін заряд тасымалдаушыларының диэлектрик арқылы туннельді өтуі тоқталады да,  транзисторға берілген шектем кернеуі өзгермес жағдайында қалады. Бұл кезде шектем кернеуін, транзистор жаппасындағы жұмыс кернеуі оны аша (онда өткізу арнасын құра) алмайтындай мөлшерге дейін көтеріледі. Заряды жоқ немесе заряды өзге таңбалы транзистор жұмыс кернеуімен жеңіл ашылады. МНТШ-транзисторда бит сақталуы осылай жүзеге асырылады, оның бір жағдайы – логикалық бір, ал екіншісі нөл сақталуын суреттейді.

Жаңа жазылым алдында ескі информация барлық жады элементіне нөл жазу арқылы өшіріледі. Осылай EEPROM түрлі ЖҚ құрылады.

ТЗИМТШ түрлі транзисторлардың, әрқашан жеке түріндегі  немесе қалыпты (басқарушы) жаппаға қосымша екінші жаппа  ретіндегі, қалқыма жаппа болады. Жалғыз қалқыма жаппалы транзисторлар EPROM түрлі ЖҚ-ларда пайдаланылады, ал қос жаппалы транзисторлар EPROM түрлі де, EEPROM түрлі ЖҚ-ларда қолдануға жарайды.

Бұлардың жаңарақ түрін – қос жаппалы ЛИЗМОП-транзисторды қарастыралық (1.5, б-суретті қара).

Қос жаппалы ТЗИМТШ-транзистордың құрылымы МНТШ-транзистордың құрылымынан өзгеше – онда да басқарушы жаппа мен өткізу аймағының арасында, бағдарлау кезінде транзистордың шектем кернеуіне әсер ететін заряд енгізуге болатын аймақ болады. Бірақ ондағы заряд енгізілу аймағы диэлектрик қабаттарының шекарасы емес, ол аса ұзақ уақытқа сақталатын заряд енгізілуге мүмкіншілігі бар, жан-жағынан диэлектрикпен қоршалған, поликристалдық кремний түріндегі өткізгіш аймағы болады. Тап осы аймақ қалқыма жаппа деп аталады.

Басқарушы жаппа (G, Gate) мен құйыс (S, Source) және ағыс (D, Drain) арасына үлкен амплитудалы (20...25 В) оң бағытты кернеу импульсін берілген кезде кері ығыстырылған р-n ауыспаларында тасқынды тесілім туып, бұл аймақ электрондарға қанығады. Электрондардың, энергиясы потенциальдық бөгеуілді өтуге жеткілікті бір бөлігі қалқыма жаппаға түседі. Жоғары мөлшерлі бағдарлау кернеуі алынған кезде электрондар қалқыма жаппада жабылып, онда олар ұзақ уақытқа қалады.

Электрондармен зарядталған қалқыма жаппа транзистордың шектем кернеуін, транзисторда жұмыс кернеуінің кеңістігінде өткізу арнасы құрылмайтындай (тумайтындай) мөлшерге дейін көбейтеді. Транзистордың қалқыма жаппасында заряд болмаған кезде транзистор әдеттегі кілттік режимінде істейді.

Информацияның өшірілуі екі тәсілмен – ультракүлгін сәулесімен немесе электр сигналдарымен жүзеге асырылады.

Бірінші жағдайда микросұлба корпусында, кристалды сәулелендіруге арналған, арнайы мөлдір терезе орналастырылады. Кремний тотығы мен поликремний ультракүлгін сәулелер үшін мөлдір, сондықтан бұл сәулелер транзистордың бұл аймақтарында  фототоктар мен жылу токтарын тудырады да, нәтижесінде аспаптың бұл аймақтары өткізгіш қалға келеді де, заряд қалқыма жаппаны тастап кетеді. Бұл жағдайда информация кристаллдан бірден түгелдей  өшіріледі.

Информацияның электрлік өшірілуі  басқарушы жаппаларға төменгі (нөлдік) беру арқылы жүзеге асырылады. Бұл жағдайда информацияны кристаллдан түгелдей  емес, таңдап (әрбір адрес бойынша жекелей) өшіруге болады. Оған қоса, ЖҚ микросұлбаcын құрылғыда тұрған жерінен шығармай-ақ қайта бағдарлауға болады.

Бір жаппалы транзисторлар әдетте р-арналы түрінде жасалады, сондықтан қалқыма жаппаға электрондар енгізілуі транзисторда өткізу арнасының құрылуына, ал зарядтардың әкетілуі бұл арнаның жойылуына әкеледі. Бұндай транзисторлардың пайдаланылуы кезінде жады элементтері тізбелеп қосылған екі транзистордан құрылады: кілттік транзистор ретінде (яғни, сілтенген элементті таңдауға) пайдаланылатын қалыпты түріндегі МТШ-транзисторынан және жағдайы сақталған битпен анықталатын ТЗИМТШ-транзисторынан құрылады. Бұндай құрылымдағы информацияның өшірілуі ультракүлгін сәулесімен жүзеге асырылады.

Қос жаппалы ТЗИМТШ-транзисторларға логикалық нөл жазу бағдарлау режимінде қалқыма жаппаны “ыстық” электрондардың инжекциясымен зарядтау арқылы жүзеге асырылады. Информацияның өшірілуі, яғни қалқыма жаппадан зарядтардың әкетілуі, барлық жады элементтеріне логикалық бір жазылуына әкеледі де, нәтижесінде сұрастырылатын транзисторлар ашылып, Ucc кернеуін оқу жолына жібереді.

PROM-ды бағдарлау және EPROM мен EEPROM-ды қайта бағдарлау қалыпты зертхана жағдайында әлде арнайы бағдарлаушылар көмегімен, әлде арнайы режимдерде (EEPROM үшін) жүзеге асырылады.

1.1.4 ЖҚ-ларды информация өңдеу жұмыстарына пайдалану

Қарастырылған ЖҚ-лардың негізгі қызметі, ешқашан өзгертілмейтін (ROM(M және PROM түрлі ЖҚ) немесе сирек өзгертілетін және өзгертілуі жұмысынан тыс жағдайда (EPROM және EEPROM түрлі ЖҚ) жүргізілетін информация сақтау.

Жадының бағдарлану мүмкіндігін информация өңдеуге байланысты алуан түрлі жұмыстарды шешуші әмбебап құрал ретінде пайдалануға болады. Бұндай құралдың көрсетілген аймақта қолданылымдылығы шешілетін есептің кестелі түрде көрсетілу мүмкіндігімен аныталады.

PROM-ның информация өңдеу жұмыстарын шешу мүмкіндіктерін түсіну үшін логикалық және сандық функцияларды суреттеуге байланысты негізгі байланыстарды қарастыру дұрыс болады.

1.1.4.1 Логикалық функцияларды жүзеге асыру

Ұйымдастырылымы 2mxl PROM m-разрядты адреске бірразрядты нәтижені (0 или 1) сәйкестіреді. PROM-ның бағдарланымдылығын ескере отырып, осындай PROM арқылы кез келген m айнымалылы логикалық (кілттік) функцияны жүзеге асыру мүмкіндігін көзге елестету қиын емес. Операцияның бұл кездегі орындалу уақыты деректердің ЖҚ-дан оқылу уақытымен анықталады.

Әрине, ұйымдастырылымы 2mxn PROM арқылы саны шығыс сөзінің разряд санына тең m айнымалылы логикалық функция (яғни, n функция) құруға болатындығы түсінікті.

PROM арқылы функциялар жетілген дизъюнктивтік қалыпты түрде (ЖДДҚ) жүзеге асырылады. Есепті PROM арқылы шешуге дайындау кезінде функцияларды ешқандай минимизациялаудың қажеті жоқ, тіпті егер функциялар минимизацияланған түрінде көрсетілген болса, онда ЖҚ-ны бағдарлауға дерек дайындалымының ыңғайлылығы үшін оларды ЖДДҚ түріне дейін ұлғайту керек.

1.1.4.2 Шектелімді автоматтарды жүзеге асыру

Алдыңғы тараудан автоматтың заңдастырылған сұлбасындағы қиыстырма бөлігін PROM-мен ауыстыруға болатындығы түсінікті. Сондықтан автомат құрылымын 1.6-суретте келтірілген түрде көрсетуге болады.

1.6 Сурет

 Регистрдің (RG) бастапқы қойылымы жады элементтерінің (автоматтың) бастапқы жағдайын береді. Осы жағдайлары мен кіріс сигналдары (In) арқылы жадыдан автоматтың жаңа жағдайының коды (DO) мен шығыс функциясы (Out) оқылады. Әрбір кезекті тактіде (C) автомат ауысу және шығыс кестелеріне сәйкесті жаңа жағдайға ауысады және шығыс функцияларын шығарады.

PROM сыйымдылығы автомат қызметін берілген кесте көлемімен определяется. Ауысу және шығыс кестелерін біріктіріп, жалпы кіріс санын m = k + q және шығыс санын n = р + q аламыз, демек, автоматтың жүзеге асырылуы үшін қажетті жады сыйымдылығы М = 2k+q(p + q).

1.1.4.3 Операциялар мен функциялардың орындалуы

Өрнекпен немесе кесте түрінде берілген арифметикалық операциялар мен сандық (логикалық емес) функциялардың мәндерін де PROM арқылы жүзеге асыруға болады.

Адрестік кірістеріне әртүрлі логикалық кіріс сигналдарын беріп, шығысында логикалық функциялардың пайдаланушының бағдарламасына сәйкесті орындалу нәтижелерін алуға болады.

Бір аргументті функция үшін аргументтер мен функцияның разряд саны арқылы қажетті жады көлемін есептеуге болады. Аргументі m-разрядты кодпен берілген функцияның анықталатын нүктелерінің саны 2m болады. Егер функцияны суреттеуші код разрядының саны n болса, онда жады көлемінің n2m айқын.

Аргументтер саны ұлғайған сайын функция кестесін сақтауға арналған жады көлемі тез өседі. Екі аргументті m разрядты функцияның берілген нүктелерінің саны , ал бұл жағдайдағы кесте көлемі М =  болады. Мысалы, екі 4-разрядты (екілік) сандардың көбейту нәтижелерін көлемі  = 256 бит PROM арқылы алуға болады.

Сөздердің разряд саны мен мен функция аргументтерінің саны ұлғайған сайын таза кестелі шешу тәсілі қиындай түседі. Мысалы, l аргументті функция үшін М =n2lm. Бұндай жағдайларда деректерге бірнеше қарапайым операция жүргізу арқылы жүргізілетін кестелі-алгоритмдік тәсілдер кесте көлемін әжептәуір кішірейтеді.

2.1 Бағдарламалы логика құрылғылары

Бағдарламалы және қайта бағдарламалы құрылымды микросұлбалардың алғы бастамаларына бағдарламалы логикалық матрицалар (PLA, Programmable Logic Array), бағдарламалы матрицалық логика  (PAL, Programmable Array Logic) және вентилді матрицалар (GA, Gate Array) жатады. PLA мен PAL құрылымдары PLD (Programmable Logic Devices) аталымымен біріктіріледі.

1.2.1 Бағдарламалы логикалық матрицалар

Бағдарламалы логикалық матрицаның (PLA, Programmable Logic Array) құрылым негізін ЖӘНЕ және НЕМЕСЕ элементтерінің матрицаларының (MAND және MOR) бағдарламалы матрицаларының тізбесі қалайды. Құрылымға оларға қоса кіріс және шығыс буферлік каскадтарының блоктары IU мен OU (Input Unit, Output Unit) кіреді.

Кіріс буферлері бірфазалы кіріс сигналдарын қосфазалы сигналдарға түрлендіреді және ЖӘНЕ элементтерінің матрицасының кірістеріне беруге жетерлік қуатты сигналдар қалыптастырады.

Шығыс буферлері шығыстарының қажетті жүктемелік мүмкіндігін қамтамасыз етеді, PLA шығысының сыртқы желіге жіберілуіне ОЕ сигналы арқылы рұқсат береді немесе оған тиым салады. Кіріс және шығыс буферлері кейде ода күрделірек жұмыстар да атқарады.

PLA құрылымының (1.7-суретті қара) негізгі параметрлеріне кіріс саны m, терм саны l және шығыс саны n жатады.

1.7 Сурет

 xi...xm айнымалылары IU арқылы ЖӘНЕ элементтерінің (конъюнкторлардың) кірістеріне беріледі де, MAND матрицасында, саны конъюнкторлардың санына, яғни MAND матрицасының шығысының санына тең, l конъюнктивті терм тудырылады.

Термдер бұдан кейін саны n шығыс функцияларын қалыптастыратын MOR матрицасының кірістеріне, яғни дизъюнкторлардың кірістеріне түседі.

Сонымен, PLA шығарылатын функциялардың дизъюнктивтік қалыпты түрін ҚТ), яғни екідеңгейлік логиканы жүзеге асырады. PLA m аргументті l термді n логикалық функциясының жүйесін жүзеге асыра алады. Шығарылатын функциялар MAND матрицасының қалыптастыратын термдерінің кез келген қиыстырмасы болуы мүмкін. Шығыс функциясының құрамына қандай термдердің кіретіндігі PLA-ның бағдарлануымен анықталады.

1.2.1.1 PLA сұлбақұралысы

PLA биполярлы технология негізінде де, МОП-транзисторлар арқылы да шығарылады. PLA матрицасында, қиылыс түйіндерінде бағдарлау кезінде құрылатын немесе жойылатын байланыс элементтері болатын, горизонталь және  вертикаль жолдарының жүйесі орналастырылады.

1.8, а-суретінде биполярлы PLA сұлбасының 4, 7, 3 өлшемді функциялар жүйесін жүзеге асыруға бағдарланған сұлбасының фрагменті (буферлік элементтерінсіз) қарапайым түрде келтірілген.

;

;

.

ЖӘНЕ матрицасында байланыс элементтері ретінде горизонталь және вертикаль жолдарын байланыстырушы диодтар пайдаланылады. 1.8, б-суретте t1 термінің шығарылу тізбегі көрсетілген. PLA-ның бастапқы жағдайында, яғни ол бағдарланбастан бұрын координата торының барлық түйінінде жалғамдар орналастырылған. Бұл кезде аргументтердің кез келген қиыстырмасы сұлба шығысында нөлдік деңгей (сұлба кірісіне аргументтердің тура және теріс мәндері қатар түсетіндіктен ) қалыптастырады. Бағдарлау кезінде сәйкесті байланыс элементтерін күйдіру арқылы олардың қажетсіздері жойылып, тек қажеттілері қалдырылады. Бағдарланған матрицаладың көрсетілімінде сәйкесті түйінде байланыс элементтерінің болуы (тұтас жалғамдар) нүкте арқылы белгіленеді.

 1.8 Сурет

1.8, б-суретте көрсетілген фрагментте t1 термінің тудырылу жолына , и  сигналдарының түсетіндігі көрсетілген. Резистор арқылы қорек көзіне қосылған терм тудыру тізбектері ЖӘНЕ қалыпты диодтық сұлбасын құрады. Шығыс кернеуінің жоғарғы деңгейі (логикалық бір) бұл жолда барлық кіріске кернеудің жоғарғы деңгейі түскенде ғана шығады, бір кіріске болсын бір түсуі шығыс кернеуін төменгі деңгейде бекітеді. Осылай ЖӘНЕ операциясы орындалады, суреттегі жағдайда термі тудырылады. Басқа термдер үшін де осылай.

НЕМЕСЕ матрицасында байланыс элементі ретінде, терм жолдарына қатысты эмиттерлік қайталауыш сұлбасымен қосылған және өзара ортақ резистор арқылы біріктірілген, транзисторлар (1.8, в-суретті қара) пайдаланылады. “Эмиттерлік дот” деп аталатын бұндай сұлба құрастырымды логика операциясын алуға мүмкіндік береді. Сәйкесті термнің кез келген транзисторының жоғарғы деңгейлі кернеу әрекетімен қанығуы эмиттерлік қайталауыш шығысында да жоғарғы деңгейлі кернеу қамтамасыз етеді. Нақтылы термге қатысты қандай да бір транзистордың төменгі деңгейлі кернеуден жабылуы элемент шығысында ешқандай кернеу деңгейін бермейді, шығыста бұл кезде белгісіз “қалқыма ” потенциал болады, сондықтан бұл транзистор өзге транзисторлардың қалыптастыратын шығыс кернеуінің деңгейіне әсер етпейді. Осылай НЕМЕСЕ бойынша кеңейтілу қамтамасыз етіледі (жалғанатын элементтердің кіріс айнымалылары біріктірілген дизъюнкция құрады). 1.8, в-суретте көрсетілген фрагментте F1 функциясының өндірілуі келтірілген.

МТШ-транзисторлы PLA сұлбаларында базалық логикалық ұяшық ретінде терістеуші құрылымдар (НЕМЕСЕ-ЕМЕС, ЖӘНЕ-ЕМЕС) пайдаланылады. Мысалы, n-МТШ сұлбақұралысты PLA, біреуі термдер құратын, екіншісі шығыс функциясын өндіретін, екі НЕМЕСЕ-ЕМЕС матрицасының тізбесі түрінде құрылған.

Бұл жағдайдағы t1 термі мен F1 функциясы:

, .

Осы өрнектердің негізінде және де Морган ережесін ескере отырып, биполярлы PLA мен МОП-транзисторлы PLA істеуінің іс жүзінде бірдейлігі туралы қорытындыға келуге болады: егер соңғысының кірістеріне биполярлы PLA аргументтеріне теріс берілсе, онда оның шығысында алдыңғысының шығысынан ерекшелігі терістігінде ғана болатын нәтиже аламыз.

1.2.1.2 PLA бағдарлануы

Минимальды күрделілікті PLA таңдап алу үшін, жүзеге асырылатын функциялар жүйесіндегі термдер санын мүмкіндігінше кеміту керек, яғни функцияларды ең қысқа дизъюнктивті түрінде суреттеу керек. Келтірілген есептің термдер бойынша минимальды өрнегін іздеуді термдер саны PLA құрамын сипаттаушы l параметріне тең болғанша ғана жүргізу керек. Егер қол астындағы PLA өлшемі есеп шешілімін өрнектің бастапқы түрінде қамтамасыз ететін болса, онда минимизациялаудың қажеті де жоқ.

PLA бағдарлануын пайдаланушы арнайы құрылғылар (бағдарлаушылар) арқылы жүргізеді және бағдарлауға қажетті мәліметтердің нақтылы түрде болуы қажет. PLA туралы информацияны істеу (ақиқаттық) кестесі түрінде қабылдайтын бағдарлаушылар бар, бірақ көбіне жалғамдар туралы мәліметтердің тікелей берілгені ыңғайлы келеді, ол үшін символдар пайдаланылады:

-       Н – айнымалы термге тура түрінде кіреді, яғни тура кірістегі жалғамды қалдырып, теріс кірістегісін жою керек;

-       L – айнымалы термге теріс түрінде кіреді, яғни теріс кірістегі жалғамды қалдырып, тура кірістегісін жою керек;

-       “–”  – айнымалы термге кірмейді және ол оған әсер етпеу керек, яғни екі кірістегі де жалғамды жою керек;

-       А – функция бағанасында көрсетіледі және ол осы ЖӘНЕ сұлбасының PLA шығысымен НЕМЕСЕ матрицасы арқылы байланысын куәлайды. Жалғам сақталу керек;

-       "." – осы ЖӘНЕ сұлбасының шығысқа жалғанбайтынын НЕМЕСЕ матрицасындағы жалғамның жойылуы керектігін суреттейді.

Қабылданған символикада алдыңғы алынған мысал үшін PLA бағдарлануына қажетті мәліметтер 1.1-кестесімен беріледі.

К е с т е 1.1

Терм

x1

x2

x3

x4

F1

F2

F3

t1

L

H

L

A

.

A

t2

H

L

A

A

.

t3

H

L

A

.

.

t4

L

H

L

.

A

.

t5

 

 

 

 

.

.

.

t6

 

 

 

 

.

.

.

t7

L

H

.

A

A

 

PLA сұлбаларының мөлшері аса үлкен, сондықтан әдетте оларды, көпкірісті ЖӘНЕ, НЕМЕСЕ элементтнрін шартты түрде біркірістілермен ауыстырып, қарапайымдалған түрде көрсетеді. Егер қиылыс нүктемен белгіленген болса, онда осы айнымалы көрсетілген элементтің кірісіне беріледі, ал егер нүкте болмаса, онда айнымалы элементке берілмейді. 1.8, а-суреттегі сұлбаның қарапайымдалған көрсетілімі 1.9-суретте келтірілген.

 1.9 Сурет

1.2.1.3 Ауыстырылым функцияларының жақшалы түрлері

PLA арқылы дизъюнктивтік қалыптық түрде ғана келтірілген логикалық функцияларды ғана емес, олардың жақшалы түрінде көрсетілгенін де жүзеге асыруға болады. Бұндай функциялар кері байланыс арқылы жүзеге асырылады: алдымен жақшалардағы өрнектер мәні шығарылып, одан кейін аралық нәтижелер ақырғы нәтиже алу үшін қайтадан аргумент ретінде кірістерге беріледі. Бұл кезде сұлбаның логикалық тереңдігінің ұлғаятындығын, демек ақырғы нәтиже шығарылуының кідірісі де өсетіндігін ескеру керек. Мысал ретінде 1.10-суретте келесі функцияның жүзеге асырылу сұлбасы келтірілген.

.

 1.10 Сурет

1.2.1.4 PLA ұлғайтылуы

Есептің өлшемі қолдағы PLA мүмкіншілігінен (яғни, m, l, n параметрлерінен) асып тұрса, онда оларды ұлғайту (кеңейту) қажет болады. Егер ЖӘНЕ жүйесіндегі функция саны PLA шығысының санынан асып тұрса (N > n), онда бірнеше PLA кірістері бойынша параллель қосылады. Әрбір PLA шығысында функцияның бір бөлігі шығарылады.

 Егер жүйедегі терм саны L PLA термдерінің санынан артық болса (L < l), онда бірнеше бірдей PLA кірістері бойынша параллель қосылады, ал сәйкесті шығыстары НЕМЕСЕ бойынша біріктіріледі немесе шығыстар үш жағдайлы болған жағдайда олар бірден біріктіріледі (құрастыру логикасы).

Шығарылатын есептің аргументтерінің саны M PLA кірістерінің санынан асып тұрса (M > m), онда  термдер жинағы бірнеше топқа бөлінеді де, функция жүзеге асырылу үшін бірнеше PLA алынып, олардың шығыстары алдыңғы жағдайдағы варианттармен қосылады.

PLA-ның кіріс айнымалыларының құрамына, термдерге кіруіне байланысты уақыт бойынша бір-біріне қайшы келетін, тактілік сигналдар кіретін болса, бұндай сигналдарды топтарға (жинақтарға) бөліп, олардың әрбіреуін қалған айнымалыларымен қосып жеке PLA арқылы өңдеуге болады.

Кірістері бойынша PLA ұлғайтылуының стандартты тәсіліне аргументтердің артығын, әрбір шығысы жеке PLA жұмысына рұқсат беретін, алғашқы дешифраторға ауыстыруға болады.

1.2.2 Бағдарламалы матрицалық логика

Іс жүзіндегі қолданымға қалыпты, бірдей термдері бойынша өзара қиылыстары көп болмайтын ауыстыру функцияларының жүйелері үшін кез келген конъюнктордің шығысын кез келген дизъюнкторға қосу (PLA құрамында ескерілгендей) көбіне аса сілтеу болады. Бұндай мүмкіншіліктен құтылу дегеніміз НЕМЕСЕ матрицасын бағдарлаудан құтылу, ал бұл бағдарламалы матрицалық логика (PAL, Programmable Array Logic) құрылымына әкеледі.

PAL (1.11-суретті қара) құрамындағы ЖӘНЕ И элементтерінің шығыстары (бірінші матрицаның шығыстары) НЕМЕСЕ элементтерінің (НЕМЕСЕ матрицасының кірістерінің) арасында тастай бөлінген. Суретте көрсетілген m кірісті және n шығысты PAL құрамындағы әрбір НЕМЕСЕ элементіне төрт конънктордан келеді, сондықтан онда 4n ЖӘНЕ элементі орналастырылған.

 1.11 Сурет

PLA сұлбаларымен салыстырғанда PAL сұлбаларының іскерлік икемділігі кемірек (ондағы НЕМЕСЕ матрицасының бекітілгендігінен), бірақ олардың жасалуы және пайдаланылуы жеңілірек. PAL артықшылықтары әсіресе онша күрделі емес құрылғыларды жобалау кезінде көріне түседі.

Есепті PAL арқылы шешуге дайындау кезінде әрбір шығысқа байланысты ЖӘНЕ элементтерінің санын кеміту керек болады, бірақ PLA үшін ортақ термдері көбірек функциялар құру керек болса, ал құрамындағы ЖӘНЕ элементтері өзге функцияларға пайдаланыла алмайтын PAL үшін оның керегі жоқ.

1.2.3 PLD икемділігін көтеру тәсілдері

Қарастырылған базалық PLA и PAL (PLD) құрылымдарының дамытылу жолында олардың іскерлік мүмкіншіліктері, алдағы тарауларда қарастырылатын, біраз сұлбақұралыстық тәсілдермен байытылды.

1.2.3.1 Бағдарламалы шығыс буферлері

Шығыс функцияларының тура немесе теріс түрінде алыну мүмкіншіліктерін қамтамасыз ету үшін, матрицалар арқылы өндірілген функциялар Fi*...Fn* разрядтық сұлбасына екілік қосу элементтері қосылған шығыс буфері арқылы өтеді (1.12-суретті қара).

1.12 Сурет

 Бастапқы жағдайында қосуыштардың екінші (басқарушы) кірістері балқытылма жалғамдар f (fuse) арқылы жергеқосылған, яғни олар нөлдік потенциалда болады. Бұл кезде  болады да, функциялар матрица шығысынан буфер арқылы өзгеріссіз жіберіледі. Егер нақтылы қосуыштың басқарушы кірісіндегі жалғамды күйдіріп жіберсек, онда бұл кіріс резистор R арқылы қорек көзіне қосылған жағдайда болады да, ол бірлік потенциал қабылдайды. Сәйкесті функция осы бірмен екілік модулмен қосылып, ол буфер арқылы терістеліп жіберіледі. Демек, тұтас жалғамды жолдардағы функциялар буфер арқылы тура түрінде, ал жалғамы жоқ жолдардағылары терістелген түрінде жіберіледі.

Бағдарламалы буфер жүзеге асырылатын жүйедегі терм санын минимизациялауға қосымша мүмкіндік береді. Жүйенің кейбір функцияларын олардың терістелген түрлерімен ауыстыру терм санын кемітуге мүмкіндік беруі мүмкін. Бастапқы жүйеге қайта оралу буферді бағдарлаумен ғана қамтамасыз етіледі. Бұндай жағдайды суреттеу үшін келесі мысалды қарастыралық.

Екі функциядан тұратын келесі жүйені жүзеге асыру керек делік:

;

.

Осы функциялардың термдері арқылы құрылған Карно карталары 1.13, а и б-суреттерінде келтірілген

 

 

 

1

1

 

1

 

 

1

 

1

 

1

 

1

 

1

 

 

 

 

1

 

 

1

 

1

1

 

 

 

1

 

1

1

1

 

 

 

 

 

 

1

1

 

1

 

 

1

1

1

 

1

 

 

 

1

 

 

а

б

в

1.13 Сурет

Функциялардың біреуін терістеген кезде терм саны азырақ болатын Карно карталарын алуға болатындығын көру қиын емес. Функцияны терістеу кезінде бірлердің ондағы нөлдер тұрған орындарға тұратындығын ескере отырып, F2 функциясын терістеп (1.13, в-суретті қара), әртүрлі бес термнен ғана тұратын келесі функциялар жүйесін аламыз

;

.

 функциясынан F2 функциясына қайту сәйкесті жолдағы жалғамды күйдіру арқылы жүзеге асырылады.

1.2.3.2 Қосбағытты шықпалар

PLD кристалдарында шығысы үш жағдайлы элементтер орналастыру кейбір PLD шықпаларының қызметін бағдарлау арқылы қоюға мүмкіндік береді. Бұндай жағдайларда конъюнкторлардың біреуі k шығысы үш жағдайлы элементті басқаруға бекітіледі де, оның шығысындағы сигнал MAND матрицасына беріліп, онда шығыс функцияларының термдерін қалыптастыруға кіріс сигналдарымен қатар қатысады (1.14-суретті қара).

1.14 Сурет

k конъюнкторының кірістерін бағдарлау сипатына байланысты In/Out шықпасының бірнеше жұмыс режимін қоюға болады:

-       егер барлық жалғам сақталған болса, онда k конъюнкторының  шығысында нөлдік деңгей болады да, буфер шығысы үшінші жағдайда болып, шықпа кіріс ретінде істейді;

-       егер барлық жалғам күйдірілген болса, онда k конъюнкторының  шығысында бірлік деңгей болады да, буфер жандандырылып, шықпа шығыс ретінде істейді;

-       егер алдыңғы режимде шықпа MAND матрицасына берілсе, онда кері байланысты шығыс алуға болады.

-       k конъюнкторының  кірістерін нақтылы түрде бағдарлау арқылыоның шығысында бірлік деңгейдің кіріс сигналдарының берілген қиыстырмасында ғана қалыптастырылуын қамтамасыз етуге болады, онда шықпа шығыс ретінде істейді.

Қосбағытты шықпаларды бағдарлау арқылы кіріс және шығыс сандарының арасындағы қатынасын өзгертуге болады. Егер бастапқы кіріс саны m, шығыс саны n және қосбағытты шықпалардың саны р болса, онда кіріс санын m + р шамасына дейін және шығыс санын n + p шамасына дейін өзгертуге болады, бұл кезде кіріс саны мен шығыс санының қосындысы, әрине, m + n + р шамасынан аспау керек.

Қосбағытты шықпаларды бағдарлаудың жүзеге асырылу мүмкіндігінің мысалы ретінде, 8 жеті кірісті НЕМЕСЕ элементінен тұратын, яғни әрбір НЕМЕСЕ элементіне 7 конъюнктордан келетін, PAL КР1556ХЛ8 микросұлбасын келтіруге болады. Бұл микросұлбада 10 бекітілген кіріс, 2 бекітілген шығыс және 6 бағдарламалы қосбағытты шықпалар  болады. Қосбағытты шықпаларды бағдарлау арқылы микросұлбаның кіріс санын – 16-ға дейін, ал шығыс санын 8-ге дейін кеңейтуге болады. Бұл кезде кіріс саны мен шығыс санының қосындысы 18-ден асуы мүмкін емес. Қосбағытты PAL шықпаларын бағдарлау шығыс буферлеріне ЖӘНЕ матрицасынан рұқсаттық немесе тиым салушылық сигналдарын беру арқылы жүзеге асырылады.

1.2.3.3 Жадылы PLD

PLD кристалының құрамына қиыстырма бөлігімен қатар триггерлердің (әдетте D түрлі) немесе регистлердің (1.15-суретті қара) кіргізілуі автоматтарды аса ыңғайлы тәсілмен құруға мүмкіндік береді. Жадылы PLD кристалдары әдеттік үш параметрлерінен басқа тағы бір параметрімен жады элементтерінің санымен г (регистр разрядтарымен) сипатталады. 2.9-суретте көрсетілген жадылы PLD автоматтың құрылымы қалыптастырылған сұлбасымен бірдей келеді. Регистрден PLD кірісіне кері байланыс қамтамасыз етілгендіктен, бұндағы информация өңделуінің әрбір қадамы алдыңғы қадамдардың нәтижелеріне тәуелді болады. Автоматтың ішкі жағдайларының максималды саны 2r.

 1.15 Сурет

Жадылы PLD мысалына, құрамына сыртқы синхросигналдың тура ауытқымасынан басқарылатын, 4 жады элементі (D түрлі триггерлер) кіретін, PAL КР1556ХП4 микросұлбасын келтіруге болады. Триггерлердің шығыстарына қосылған шығыс күшейткіштері, жұмысына рұқсат берілуі сәйкесті сигналмен басқарылатын, үш жағдайлы сұлбамен орындалған.

1.2.3.4 Конъюнкторларды бөлу

PLD (PLA и PAL) құрылымдарының барлық түріне қатысты қарастырылған сұлба модификацияларымен қатар, PAL құрылымына ғана қатысты арнайы модификациялар да бар. Оларға бөлінбелі конъюнкторлы деп аталатын жатады. Оларда екі көрші НЕМЕСЕ элементіне, олардың арасына еркін бөліне алатын, бірнеше (мысалы, 16) конъюнктор беріледі.

Конъюнкторлары бөлінбеліқұрылым, НЕМЕСЕ элементінің кірістеріндегі ЖӘНЕ элементінің саны  бекітілген, тастай PAL (яғни, бөлінбелі конъюнкторларынсыз) құрылымының бірден көзге басты түсетін шектемін (яғни бекітілген ЖӘНЕ элементтерінің күрделі функцияларды жүзеге асыруға жетпеуінің мүмкіндігін) жұмсартады. Конъюнкторлары бөлінбелі PAL пайдалану арқылы және күрделі функцияның қасына қарапайым функцияны орналастырып, конъюнкторлардың жалпы жинағының бір бөлігін қарапайым функциядан күрделі функцияның пайдасына қарыздауға болады.

Конъюнкторлары бөлінбелі құрылымның сұлбақұралыстық жүзеге асырылуы 1.16-суретте көрсетілген. PAL кристалында НЕМЕСЕ және екілік  қосу элементтерінің қосымша жинағы орналастырылған. Олардың көмегімен MOR массивінің көрші элементтерінің шығыстарын F1 және F2 функцияларының ақырғы мәндерін құру үшін қиыстыруға болады. Негізгі НЕМЕСЕ сұлбаларының шығыстарын дизъюнкция немесе екілік қосу операцияларымен біріктіріп, сосын оларды негізгі F1 және F2 шығыстарының арасында таратуға болады. Шығарылатын функциялардың ақырғы сипаты, жағдайлары сәйкесті басқару сигналдарымен анықталатын, шығыс транзисторларының өткізгіштігіне байланысты болады.

1.16 Сурет

1.2.3.5 Сұлбақұралыстық жүзеге асырылуы

Суреттелген PLD құрылымының жұмыс мүмкіншіліктерін кеңейту жолдарын көрнектеу үшін олардың сұлбақұралыстық жүзеге асырылуын қысқаша қарастыралық.

Кеңінен қолданым тапқан PAL 22V10 (V әрпі Versatile сөзінен) микросұлбасында, оларға қосылған конъюнктор санында (8...16) айырмашылығы болатын 10 шығысы бар. Шығыс шамалары дизъюнкторлармен ғана емес, макроэлементтер (макроұяшықтар – MC, Macrocells) деп аталатын, одан күрделірек сұлбалармен өндіріледі.

PAL 22V10 макроэлементінің сұлбасында (1.17-суретті қара) ЖӘНЕ матрицасының арнайы термдерімен өндірілетін тактілеу, асинхронды тазарту AR және синхронды қойылым SP тізбектері енгізілген D түрлі триггер болады. “4 – 1” мультиплексоры, оның информациалық кірістеріне PAL құрылымының қиыстырма бөлігінен және регистрлік шығыстан (триггерден) түскен тура және теріс сигналдарды шығыс буферіне сигналдар жіберілуін басқарады. “2 – 1” мультиплексоры кері байланыс сигналдарын PAL шығысынан немесе триггер шығысынан алып, ЖӘНЕ матрицасына жібереді. Мультиплексорларды бағдарлау балқыма жалғамды тізбектер арқылы жүзеге асырылады. Шығыс буфері үшінші жағдайға қойылған кезде сыртқы шықпаны кіріс ретінде пайдалануға болады. Сонымен, 10 бағдарламалы шығыстың кез келгені әлде кіріс, әлде қиыстырма немесе регистрлік шығыс болады.

 1.17 Сурет

Күрделірек PLD құрылымын қарастыралық. 1.18-суретте, PLD құрылымының іскерлік икемділігін көтерудің алдында жеке-жеке қарастырылған бірнеше тәсілі біріктірілген құрылым (ЖӘНЕ матрицасы мен 12 макроэлементтің біреуі) көрсетілген, олар: термдердің көршілес макроэлементтердің арасына бөлінуі, өндірілетін функцияның таңбасының (F немесе ) бағдарлануы, триггер түрінің бағдарлануы (D немесе Т), қиыстырма немесе регистрлік шығыстың таңдалу мүмкіндігі, сыртқы шықпаның қосбағыттылығы.

1.18 Сурет

Ортақ ЖӘНЕ матрицасының, кіріс айнымалыларын беруге 32 кіріс және мультиплексор шығысынан алынатын кері байланыс сигналын беруге және шығыс буфері үшінші жағдайға қойылған кезде макроұяшық шықпасын кіріс ретінде пайдалануға 2 кіріс бар.

68 кірісті конъюнкторлардың өндірген термдері НЕМЕСЕ элементтеріне (екі НЕМЕСЕ элементінің әрбіреуіне төрт термнен) беріледі. Бағдарланымды төрт 1 – 4 мультиплексоры арқылы термдердің бөлінбелігі жүзеге асырылады, яғни макроэлементке термдер өз конъюнкторларынан ғана қабылданып қоймай, оларды көршілес макроэлементтерден қабылдау немесе өз термдерін дизъюнкторлар шығысынан оларға беру мүмкіндігі қамтамасыз етіледі.

Термдердің ақырғы жинамы, кірістеріне 1 – 4 мультиплексорларының шығыс сигналдары түсетін, келесі дизъюнктормен қалыптастырылады. Кез келген мультиплексорды төменгі кірісінен жіберуге бағдарлау оған түсетін термдерді қалыптастырылатын жинамнан алып тастайды. Өндірілген логикалық функция макроэлементтің келесі бөліктеріне, жіберілетін сигналдың таңбасы екінші кірісіндегі сигнал деңгейінің бағдарлау кезіндегі қойылымы арқылы анықталған, екілік қосуыш арқылы жіберіледі. М2 элементінің шығысы, сигналды D кірісінен немесе Т кірісінен жіберуге бағдарланатын, мультиплексорға қосылған, нәтижесінде триггер сәйкесті түрінде (D немесе Т) жұмыс істейді. Егер мультиплексор сигналды Т кірісінен жіберуге бағдарланған боса, онда триггер қалыпты екілік қосу элементі арқылы кері байланыс тізбегіне тұйықталады. Бұл кезде екінші (бағдарланбайтын) М2 элементінің жоғарғы кірісіндегі сигналдың нөлдік деңгейі триггердің кірісіне оның кезекті жағдайының сигналының Q жіберілуін қамтамасыз етеді, яғни тактілік импульс түскенде триггер жағдайы сақталады. М2 элементінің жоғарғы кірісіндегі сигналдың бірлік деңгейі Q шамасының бірмен екілік қосылуына әкеледі, яғни триггер кірісіне мультиплексор арқылы  шамасы беріледі де, триггер жағдайы ауысады. Бұл жағдайда триггердің синхронды Т триггері ретінде көрініп тұр, бұндағы Т сигналының рөлін бағдарланымды М2 элементінің шығысындағы сигнал атқарады.

Информациялық кірістері R (Registered) және С (Combinatorial) әріптерімен белгіленген мультиплексор бағдарлануына байланысты макроэлемент шығысының түрін таңдайды – триггердің жатталатын Q сигналы түрінде немесе қиыстырма функцияның С жолындағы триггерді айналып өтетін тікелей сигналы түрінде. Үш жағдайлы арқылы макроэлемент шығысы сыртқы шықпамен байланысқан. Буфер үшінші тұрған кезде шықпаны кіріс ретінде пайдалануға болады.

Триггерді басқаруға А және S кірісті мультиплексор арқылы синхронды (яғни, бүкіл микросұлба  ортақ синхросигналмен тактіленетін) немесе асинхронды (яғни, жеке терм арқылы өндірілетін) варианттардың біреуін таңдауға болады.

2 Бағдарламалы құрылымды құрылғылар

PLA, PAL және GA микросұлбаларының құрылым негізін қалаған идеялар  мен олардың бағдарлану принциптері бағдарламалы және қайта бағдарламалы құрылымды логикалық сұлбалардың негізгі даму бағыттарын анықтады. GA бағытының жалғасы FPGA (Field Programmable Gate Arrays), ал  PAL бағытының жалғасы CPLD (Complex Programmable Logic Devices) ЖС болды. Бұл екі құрылымның артықшылық жақтарын біріктіру FLEX (Flexible Logic Element MatriX) аталымды аралас архитектураның құрылуына әкелді. Жиналым деңгейінің көтерілуі кристалда, күрделілігі жағынан түгел жүйеге сәйкес келетін, SOC (Systems On Chip) деп аталатын, сұлбаларды орналастыруға мүмкіндік берді.

Бағдарламалы құрылымды ЖС-лардың (БҚЖС) қолданылым аймағы аса кең, олар арқылы жүйенің жеке блоктарын ғана емес, құрамына жадысы мен процессоры енгізілген бүкіл жүйе де құруға болады. Оларды көбіне аз мөлшермен шығарылатын бұйымдарды тез және тиімді тәсілмен құруға пайдаланылады. Айта кететін тағы бір маңызды қолданылым бағыты, ол жүйенің ақырғы жүзеге асырылуы қандай құралдар арқылы болса да, оның бастапқы түрін бағдарламалы құрылымды микросұлбалар арқылы құру аса ыңғайлы болады.

БҚЖС бағдарланымдылығы онда, өткізгіштігін пайдаланушының өзі өте кіші мәнге немесе өте жоғары мәнге (яғни, кілттің ажыратылған немесе қосылған жағдайына сәйкесті) қоя алатын, қосполюстіктер түріндегі көптеген кілттер болуымен қамтамасыз етіледі. Кристалда қалыптастырылатын сұлбаның конфигурациясы кілттердің жағдайын қою арқылы беріледі. Қазіргі заманғы БҚЖС-ларда бағдарланушы кілттердің келесі түрлері қолданылады:

-       antifuse түріндегі жалғамдар;

-       қос жаппалы ЛИЗМОП транзисторлары;

-       конфигурация жадысының триггерлерімен басқарылатын кілттік транзисторлар.

Аntifuse түріндегі жалғамдды БҚЖС-ны бағдарлау бір рет қана жүргізіледі. Жалғамдар қабаттары “оксид-нитрид-оксид” түрінде кезектескен үшқабатты диэлектрикпен құрылады. Қабаттарының кезектесіміне сәйкесті бұндай жалғамдар ONO (Oxid-Nitrid-Oxid) түрлі жалғамдар деп аталады.

Бағдарлау, жалғамды тесіп, электродтар арасында поликремнийлік өткізу арнасын құратын, кернеу импульсімен жүргізіледі.

Қалқыма жаппалы ЛИЗМОП транзисторлы элементтер БҚЖС-ларда бағдарламалы жады сұлбаларындағы сияқты пайдаланылады. УК сәулемен өшірілетін элементтерден ешқандай өшірілу мүмкіндігі жоқ EPROM-OTP (OTP, One Time Programmable) варианты бөлініп шықты

Конфигурация жадысының триггерлерімен басқарылатын транзисторлық кілт 2.1-суретте көрсетілген. Жаппасы триггерге қосылған кілттік транзистор Т2 триггердің жағдайына байланысты ab аралығын тұйықтайды немесе ажыратады. БҚЖС-ны бағдарлау жады конфигурациясына сәйкесті деректерді енгізу арқылы жүргізіледі. Бұл кезде таңдалым жолындағы (FL, Fetch Line) жоғарғы потенциал Т1 транзисторын қосып, жазу-оқу жолындағы (WRL, Write/Read Line) сигнал триггерді сәйкесті жағдайға қояды. Жұмыс режимінде транзистор Т1 жабық болады да, триггер өзгермес жағдайын сақтайды.

2.1 Сурет

Кілттік Т2 транзисторын (pass-transistor) бағдарланымды байланыс нүктесі (PIP, Programmable Interconnection Point) деп атауға болады. Конфигурациясы триггерлі жадымен берілген БҚЖС-ны қайта бағдарлау жұмыс режимінде кодтар тізбесін триггерлер тізбесіне жазу арқылы жүргізіледі.

БҚЖС-ның жалпы қасиеттері туралы айта отырып, құрылымының реттілігіне байланысты олардың аса жоғары деңгейлі жиналыммен жүзеге асырылатындығын айта кету керек. GA құрылымдарынан ерекше, БҚЖС құрылымдарында логикалық элементтермен қатар триггерлер мен т.б. және олардың арабайланыстары да жүзеге асырылған. БҚЖС тұтынушысы ақырғы операцияларды жүргізу үшін оларды жасаушыға байланыспай-ақ, бағдарлауды өзі жүргізеді. Сондықтан бұндай микросұлбаларды стандартты өнімге теңеуге негіз бар, ал бұл белгілі артықшылықтарға – өндірісте шығарылу санының кеңейтілуіне және құнының кемуіне әкеледі.

2.1 Вентилдік матрицалар

Вентилдік матрицалардың (GA, Gate Array) бастапқы үлгілері жоғарыөнімді ЭЕМ-ларының стандартты емес сұлбаларын кіші және орта деңгейлі жиналымды микросұлбаларсыз жүзеге асыруға құрал ретінде шығарылғанды.

Основа GA-ның бірінші ұрпағының негізі – кристалда реттелімді орналастырылған базалық ұяшықтардың (БҰ) жинағы, олардың араларында байланыстар (арналар) құруға бос аймақтар қалдырылған. GA-ның ішкі аймағындағы базалық ұяшықтардың құрамында бір-біріне жалғанбаған элементтердің (транзисторлардың, резисторлардың және т.б.) топтары, ал кристалдың перифериялық аймақтарында, сұлбалық компоненттері GA-ның сыртқы әлеммен байланысын жүзеге асыруға бағытталған, енгізу-шығару ұяшықтары орналастырылған. Сонымен, GA-ны сәйкесті байланыстарды жүзеге асыру арқылы қажетті сұлбаға айналдырылатын бастапқы дайындалым ретінде қарастыруға болады.

GA түрлерін суреттеместен бұрын негізгі түсініктер мен анықтамаларға тоқтай кетелік.

Базалық ұяшық (БҰ) кристалдың нақтылы аймағында реттелімді қайталанатын сұлбалық элементтердің жинағы екендігі алдында анықталғанды. GA-ның ішкі аймағындағы базалық ұяшықтар матрицалық – базалық ұяшықтар (МБҰ), перифериялық аймақтың ұяшықтары перифериялық базалық ұяшықтар (ПБҰ) деп аталады. GA ұяшықтарын ұйымдастыруға екі тәсіл қолданылады:

-                  МБҰ элементтерінен бір логикалық элемент қалыптастыруға болады, ал одан күрделірек қызметтерді жүзеге асыру үшін бірнеше ұяшық пайдаланылады;

-                  МБҰ элементтерінен кез келген қызмет түйінін қалыптастыруға болады, ұяшық элементтерінің құрамы ең күрделі түйіннің сұлбасымен анықталады.

Қызмет ұяшығы (ҚҰ) – бір немесе бірнеше БҰ элементтерін жалғау арқылы жүзеге асырылатын сұлба.

Қызмет ұяшықтарының қоры – GA негізінде жобалау кезінде пайдаланылатын ҚҰ-лар жинамы. Құрамына көптеген (жүздеген) қызмет элементтері, түйіндер және олардың жеке бөліктері кіретін, бұл қор GA-ның жасалуы кезінде құрылады және олар ақырғы құрылғыны құрушыға  бір немесе бірнеше БҰ арқылы жүзеге асырылуға мүмкіндік беретін дайын шешімдер ұсынады. Сұлбақұралыстық мәселелер қор құрылуы кезінде шешілгендіктен, пайдаланушы қормен жұмыс істеу арқылы жобалауды қызметтік-логикалық деңгейде жүргізеді.

Эквивалентті вентиль (ЭВ) – логикалық функцияны (әдетте екікірісті ЖӘНЕ-ЕМЕС немесе НЕМЕСЕ-ЕМЕС элементін) жүзеге асыруға мүмкіндік беретін, GA элементтерінің тобымен сипатталатын, GA күрделілігін  бағалауға арналған түсінік.

Жол жүргізу (трассировка) арналары – GA кристалындағы арабайланыстар орналастыруға арналған кеңістіктер.

2.1.1 GA түрлері

Бастапқы, және  классикалық ретінде қарастырылатын, арналы GA-ның ішкі  (орталық) аймағында базалық ұяшықтар мен жол жүргізу  арналары орналастырылған. Оларда байланыс құру мүмкіншілігі  жоғары, бірақ элементтердің орналастырылым тығыздығы (арабайланыстарға едәуір кеңістіктің бөлінетіндігінен) кемдеу болады  .

Арналы архитектура, үлкен энергия шашырамын қажет қылатын, биполярлы GA-ларға тән.

Арабайланыстар орналастыруға бөлінген аймағы кемітілген, жоғары жиналымды GA құру жолын іздеу арнасыз GA архитектурасына әкелді. Бұндай GA-ның ішкі аймағында тығыз орналастырылған базалық ұяшықтар болады, бірақ арабайланыстар жүргізуге арналған арналар болмайды. Бұл кристалдың БҰ орналасқан кез келген аймағын логикалық сұлба құруға да, арабайланыстар құруға да пайдалануға болады. Арнасыз GA, элементтердің орналастырылуы тығыз және энергия шашырамы аз болатын, КМТШұлбақұралысына тән.

GA кристалының перифериялық аймағында, сұлбалық компоненттері енгізу-шығару жұмыстарын жүзеге асыруға бағытталған, арнайы ПБ-лар орналасқан.

Өңделуші сигналдар түрі (цифрлық, аналогты) базалық ұяшықтардың сұлбалық элементтерінің құрамына әсер етеді. Бұған бұған байланысты GA цифрлық, аналогты және цифрлы-аналогты болып бөлінеді. Аналогты және цифрлы-аналогты GA құрамында операциялық күшейткіштер, аналогты кілттер мен компараторлар және т.б. құруға мүмкіндік береді.

Пайдаланылатын сұлбақұалысына  байланысты жіктеме GA-лардың негізгі варианттарын ғана сипаттайды. Максималды тезәрекеттілік варианттары ЭБЛ түріндегі сұлбалармен жүзеге асырылады. КМТШ сұлбақұалысы, алдында айтылғандай, элементтердің орналастырылу тығыздығын көтерілген және энергия шашырамы азайтылған микросұлбалар құруға ыңғайлы. ТТЛШ сұлбақұалысының негізінде тезәрекеттілігі орташа келетін GA жасалады.

2.2-суретте екіқатарлы логикалық элементтер жүзеге асыруға арналған ЭБЛ түрлі GA-ның БҰ-ның құрамы көрсетілген. Ондағы R0 резисторларын параллель немесе тізбелеп қосу арқылы тезәрекеттілігі мен тұтынатын қуаты әртүрлі сұлбалар құруға болады.

2.3-суретте КМОП түрлі GA-ның БҰ-ның бір варианты келтірілген. Оның сұлбалық элементтері ретінде с р- және n-арналы транзисторлар ғана пайдаланылады. Суретте 4 транзисторлы ұяшық сұлбасы көрсетілген. Транзисторларды тізбе немесе параллель жалғау арқылы ЖӘНЕ-ЕМЕС және НЕМЕСЕ-ЕМЕС логикалық элементтерінің сұлбаларын жүзеге асыруға болады.

Ұяшықтарды күрделендіру қарапайым ұяшықтарды біріктіру арқылы жүргізіледі.

2.2 Сурет

2.3 Сурет

2.2 Пайдаланушы бағдарлайтын вентилді матрицалар

Пайдаланушы бағдарлайтын вентилді матрицалар (FPGA, Field Programmable Gate Arrays) топологиясы жағынан арналы GA құрылымдарына ұқсас келеді. Олардың ішкі аймағында, араларында жол жүргізу арналары ескерілген, көптеген бірдей құрылымды, конфигурацияланатын логикалық блоктардың (LB, Configurable Logic Block) реттелген жинамы, ал кристалл перифериясында енгізу/шығару блоктары (IOB, Input/Output Blocks) орналасқан.

FPGA қасиеттері мен мүмкіндіктері алдымен олардың құрамындағы LB сипатына және арабайланыс жүйесіне байланысты.

2.2.1 FPGA құрамындағы логикалық блоктар

FPGA құрамындағы LB ретінде келесі құрылымдар пайдаланылады:

-       транзистор жұптары;

-       қарапайым логикалық ЖӘНЕ-ЕМЕС, НЕМЕСЕ-ЕМЕС вентилдері (SLC, Simple Logic Cells);

-       мультиплексорлар негізіндегі логикалық модулер;

-       PROM негізіндегі логикалық модулер (LUT, Look-Up Tables).

LB-ның маңызды сипаттамаларына оның түйіршіктілігі” (Granularity) мен іскерлігі” (Functionality) жатады. Біріншісі қажетті сұлбалар жиналатынбөліктемелердің уақтылығықандай болатындығымен, ал екіншісі LB-ның логикалық мүмкіндігінің қаншама үлкен болатындығымен байланысты.

LB-ның уақтүйіршіктілігі шығарылатын функцияларды әртүрлі тәсілмен жүзеге асыруға кең мүмкіндік береді, бірақ кристалда бағдарламалы байланыс нүктелерінің көп болатындығынан, ол FPGA-ның арабайланыс жүйесін күрделендіреді.

Ірітүйіршікті LB-ларда күрделірек функциялар жүзеге асырылады, сондықтан арабайланыс бағдарлануын жеңілдетеді. Триггерлі жадымен реконфигурациялатын FPGA-да, әдетте, ірітүйіршікті блоктар қолданылады.

р- және n-арналы транзисторлар тізбесі түрінде құрылған, ал олардың арасына жол жүргізу арналары орналастырылған, ең уақтүйіршікті LB Crosspoint Solutions фирмасының микросұлбаларында пайдаланылады (2.4-суретті қара). Өткізгіштігі әртүрлі транзистор жұптарынан КМТШ–сұлбаларындағы жиналым тәсілдері дәстүрлі, логикалық элементтер жиналады.

2.4 Сурет

2.5, а-суретте F = x1x2Vx3x4 функциясын жүзеге асырушы арабайланыстар көрсетілген. Үзбе сызықты төртбұрыштардағы транзисторлар жұбының жаппаларына берілген тұрақты кернеулер оларды жабық жағдайда ұстайды, сондықтан олар транзисторлар тізбесін бір-бірінен оқшауланған бөліктерге бөледі. ЖӘНЕ-ЕМЕС түрінде жиналған (2.5, б-суретті қара) үш сұлбаның суретте көрсетілген өзара жалғануы (2.5, в-суретті қара) қажетті нәтижеге әкеледі.

 

2.5 Сурет

Түйшіктері ірілеу келетін LB Actel фирмасының ACT микросұлба-ларында пайдаланылады. 2.6, а-суретте АСТ1 микросұлбасындағы, үш “2 – 1” мультиплексорынан және НЕМЕСЕ элементінен тұратын LB көрсетілген. Бұл блоктың іскерлік сипаттамасы келесі түрде болады

.

Блок кірістеріне тұрақтылар мен кіріс айнымалыларының берілім бағытын өзгерте отырып, көптеген ауыстырым функцияларын жүзеге асыруға болады. Мысалы, блок кірістеріне тұрақтылар мен айнымалыларды 2.6, б-суреттегідей берсек,  функциясын аламыз.

2.6 Сурет

Бұдан да ірірек LB Spartan фирмасының ХС4000Е микросұлбаларында пайдаланылады (2.7-суретті қара). Оның негізін үш кестелі логикалық түрлендіргіш (G, F және Н), бірнеше бағдарламамалы мультиплексор мен екі триггер қалайды.

 2.7 Сурет

Кестелі түрлендіргіштер (LUT-блоктар) PROM түрінде құрылған, логи-калық функцияның аргументтері оған адрес ретінде пайдаланылады. Логии-калық G және F түрлендіргіштері (ұйымдастырылымы 16х1, бағдарламалы жады блоктары) 4-аргументті функцияларды шығарады да, олардың шығыс сигналдарын Y және X шығыстарына 4 және 6 мультиплексорларының сәй-кесті бағдарлануымен тікелей жіберуге болады немесе оларды өзгеше пайда-лануға болады. 1 және 2 мультиплексорларын төменгі кірістерінен жіберуге бағдарлау арқылы, G және F түрлендіргіштерінің шығыстарын Н түрлендіргішінің кірістеріне беріп, функциядан функцияөндіру арқылы аргументтер саны төрттен көбірек болатын нәтижелік функция алуға болады. 1 және 2 мультиплексорларын өзгеше бағдарлау арқылы Н түрлендіргішін жеке функция генераторы ретінде пайдалануға болады.

LB-ның ішкі сұлбаларын басқаруға жіберілетін HI, DIN, SR, ЕС сигналдары мультиплексорлар тобы арқылы сыртқы басқару желісіндегі С1...С4 сигналдарынан қалыптастырылады. 3...6 мультиплексорлары қажетті басқару деректерін 1 және 2 триггерлеріне бағыттайды.

Триггерлерді тактілеу сигналының активті фронтын 7 және 8 мульти-плексорларымен өзгертуге және тактілеуге  рұқсат беруші ЕС сигналын 9 жә-не 10 мультиплексорларымен бағдарлауға болады. Триггерлердің асинхронды қойылым және тазартылымкірістері триггеров (SD – Set Direct и RD – Reset Direct) S/R коммутаторы арқылы С1...С4 сигналдарынан анықталады.

2.2.2 FPGA-ның енгізу/шығару блоктары

2.8-суретте көрсетілген, ХС4000Е микросұлбасының құрамындағы енгі-зу/шығару блогы (Input/Output Block) оның сыртқы шықпалары мен ішкі логи-калық сұлбаларының арасындағы интерфейсті қамтамасыз етеді. Микросұлба-ның әрбір шықпасын кіріс, шығыс немесе қосбағытты шықпа ретінде құруға болады.

2.8 Сурет

Блоктың сигналдарды енгізуге және шығаруға арналған екі жіберім трактісі болады. Әрбір трактіде сигналдарды, 7 және 4 мультиплексорларының бағдарлануымен, тікелей немесе триггерде бекіту арқылы жіберуге болады. Шығарылатын сигналдың тура немесе теріс жіберілуі  2 мультиплексорымен қойылады.

Енгізілетін немесе шығарылатын сигнал қосылмаған шықпаларға (яғни, 1 буферінің үшінші жағдайға ауыстырылғанында) нақтылы потенциалдар беру Pull-Up/Pull-Down сұлбасымен жүргізіледі, ол ажыратылған шықпаның потенциалын жоғарғы деңгейге көтереді немесе оны нөл нүктесіне қосады. Бұл варианттардың арасындағы таңдалым U/D (Up/Down) сұлбасындағы конфигурация жадысының элементтерімен бағдарланады. Фронт тіктілігін өзгерту (Slew Rate) SLR сұлбасындағы сәйкесті жады элементін бағдарлаумен іске асырылады.

Триггерлердің кірістік және шығыстық синхросигналдарының (CLKI және CLKO) бағытын да сәйкесті мультиплексорлармен бағдарлауға болады. Триггерлерді деңгеймен немесе фронтпен тактіленетін етіп құруға болады. Сигналдың 2 триггерге жіберілетін жолына кідіріс элементтерін орналастыру (сигналдың 8 мультиплексорының төменгі кірісі арқылы жіберілгенінде) сигналдар арасындағы қажетті уақыт қатынасын қамтамасыз етеді.

2.2.3 FPGA-ның арабайланыс жүйелері

FPGA-дағы байланыс жолдары әдетте сегменттерге (кілттер болмайтын бөліктерге) бөлініп құрылады да, қажетті байланыс осы сегменттерді өзара бағдарламалы байланыс элементтерімен (кілттермен) жалғау арқылы жүзеге асырылады. Арабайланыс жүйесі иерархиялық сипатпен құрылады, онда сегменттердің бірнеше түрі (негізгі байланыстар, екі есе ұзындықты жолдар, жуық блоктардың арасындағы тура жолдар, кристалдың ана шетінен мына шетіне созылған ұзын жолдар) болады.

Actel фирмасының FPGA-ларының логикалық блоктары горизонталь қатармен орналастырылып, олардың арасында жол жүргізу арналары қалдырылған. Арналарда ұзындығы әртүрлі горизонталь сегменттер орналасқан. LB мен жол арналары арқылы вертикаль сегменттер өтеді. Әрбір LB кірісі мен шығысы жуық жердегі жеке вертикаль сегменттерге қосылған.

Сегменттердің әрбір қиылысында оларды өзара жалғауға мүмкіндік беруші бағдарламалы жалғамдар ескерілген. Бұндай байланыс жүйесі LB-ларды өзара әртүрлі варианттармен қосуға мүмкіндік береді.

2.3 Бағдарламалы күрделі логикалық сұлбалар

Бағдарламалы күрделі логикалық сұлбалар (CPLD, Complex Programmable Logic Devices) архитектурасы жағынан PLD (PAL, GAL) құры-лымдарынан шыққан. Оның құрамында (2.9-суретті қара), саны микросұл-баның жиналым деңгейіне байланысты, көптеген іскерлік блоктар (FB, Functional Blocks), бағдарламалы байланыс матрицасы (PIA, Programmable Inerconnect Array) және кристалдың перифериясына орналастырылған енгі-зу/шығару блоктары (IOBs, Input/Output Blocks) болады. Әрбір іскерлік блокта бірнеше макроұяшық (MC, Macrocells) болады. PIA іскерлік блоктардың өзара жалғанымындылығын, яғни  оларға кіріс сигналдарының түсуімен қатар, шығыс сигналдарының PIA-ға да (кері байланыс ұйымдастыру үшін),  в IOBs-қа да (құрылғыдан шығаруға) жіберілуін толықтай қамтамасыз етеді.

2.9 Сурет

Енгізу/шығару блоктары, бағдарлануына байланысты кіріс немесе шығыс ретінде пайдаланылатын, сыртқы қосбағытты шықпалармен (I/О, Input/Output) байланысқан. Кейбір шықпалар іскерлік блоктардың матрицасына жалпы тактілеу (GCK, Global Clocks), жалпы қойылым/тазартылым (GSR, Global Set/Reset) және шығыс буферлерінің үшінші жағдайын жалпы басқару (GTS, Global 3-state Control) сигналдарын қоюға арналған.

CPLD құрамында суретте көрсетілген блоктардан басқа бағдарлау операцияларын тікелей жүйеде басқаруға арналған контроллерлер (ISP, In System Programmability), JTAG интерфейсімен жұмыс істеу контроллерлері және т.б. болуы мүмкін.

2.3.1 CPLD-ның іскерлік блоктары

Классикалық PLD құрылымындағы сияқты, CPLD-ның іскерлік блоктарында, кірістеріне түскен айнымалылардан конъюнктивті термдер тудыратын, көпкірісті (wide) бағдарламалы ЖӘНЕ элементтерінің матрицасы AND), өндірілген термдер арасында таралатын, НЕМЕСЕ элементтерінің тобы және құрылымның іскерлік мүмкіндіктерін байытушы (алдында қарастырылғандай) қосымша элементтер болады.

CPLD құрылымындағы НЕМЕСЕ элементтерінің матрицасы PAL құрылымындағыдай, бекітілген болса да, бұнда өндірілетін функциядағы термдер санын құбылту мүмкіндіктері ұлғайтылған, мысалы, функция өндіріліміне қажетті темдерді басқа арнадан алу немесе оған беру мүмкіндіктері ескерілген.

Термдердің FB арналарының арасындағы таралымы, термдер тарату матрицасының құрамына кіретін (TAM, Terms Allocation Matrix), тізбекті және параллель түрлі логикалық кеңейткіштер арқылы жүзеге асырылады. Тізбекті логикалық кеңейткіштер осы арнадағы термнің теріс мәнін қайтадан МAND матрицасының кірістерінің біреуіне беру арқылы құрылады да,  бұл термді енді арналардың барлығында да пайдалануға болады. Параллель кеңейткіш бір арнаның термдерін екіншісіне жіберуге мүмкіндік береді.

Термдер TAM-нан әрі негізін бағдарламалы мультиплексорлар мен триггер (немесе триггерлер) қалайтын, макроұяшықтарға (MC, Macrocell) түседі де, оларда іскерлік блоктардың шығыс сигналдарының әртүрлі варианттағы топтарын (тура немесе теріс сигналдар, қиыстырма шығыс немесе регистрлік шығыс және т.б.) қалыптастырады.

2.10-суретте Xilinx фирмасының CPLD түрлі XC9500 микросұлбасының макроұяшығының құрамы көрсетілген.

2.10 Сурет

MAND матрицасында өндірілген және ақырғы түрінде TAM арқылы жиналған термдер логикалық функциияның құрылуы үшін НЕМЕСЕ элементіне түседі. Жеке термдер арқылы триггерді басқару сигналдары PTSet, PTClock, PTReset және енгізу/шығару блогының буферінің үшінші жағдайын басқаруға арналған РТОЕ сигналы өндіріледі.

НЕМЕСЕ элементінің шығысында өндірілген ДНФ түріндегі функцияның мәні одан әрі екілік қосу (М2) элементі арқылы жіберіледі. Бұл элемент өндірілген функцияны тура немесе теріс түрінде жібереді.

Микросұлба шығысына функцияның өндірілген мәнінің тікелей жіберілуі (қиыстырма шығыс) әлде триггерде алдыңғы тактіде сақталған мәнінің жіберілуі (регистрлік шығыс) MUX5 мультиплексоры арқылы бағдарланады. Триггердің тактілену сипаты MUX4 мультиплексорының бағдарлануымен анықтап, оған жалпы синхросигналды (GCK, Global Clock) немесе терм арқылы тудырылатын PTClock сигналын пайдалануға болады. Триггердің асинхронды қойылымы мен тазартылымының жалпы сигналмен (GSR, Global Set/Reset) әлде терм арқылы тудырылатын PTSet и PTReset сигналдарымен жүргізілуі MUX2 және MUX3 мультиплексорларының бағдарлануымен анықталады. Триггердің өзі кідіріс (D түрлі) немесе санау түрлі) режиміне бағдарланады.

Макроұяшықтың негізгі шығыс сигналын, оны жан-жақты таратуға мүмкіндік беретін PIA-ға, немесе оны шығыс сигналы ретінде тікелей IOB-қа жіберуге болады.

2.3.2 CPLD-ның енгізу/шығару блоктары

Енгізу/шығару блоктары микросұлба шықпаларын оның ішкі тізбектерімен байланыстырады. Мысалға Xilinx ХС9500 микросұлбасының құрамындағы енгізу/шығару блогын қарастырайық (2.11-суретті қара).

2.11 Сурет

IOB негізін екі буфер – кірістік (1) және шығыстық (2) қалайды. Кіріс буферіне түсетін кернеу деңгейлерінің тұрақтылығы мен олардың кіріс сигналдарының амплитудасына тәуелсіздігі екі бекіту диодынан тұратын тізбекпен қамтамасыз етіледі.

Бағдарланымды ортақ нүкте сұлбасы (PCP, Programmable Common Point) пайдаланушының қажетті жағдайда қосымша “жерге қосылған” шықпа құруы арқылы микросұлбадағы бөгеуіл деңгейін кемітіп, оның жұмыс сапасын көтеруіне мүмкіндік береді.

Шықпаға оның жұмыстан тыс режимінде қосылатын бағдарланымды резистор (PR, Programmable Resistor) онда қалқыма потенциал тумауы үшін қойылады.

Шығыс буферіне 2 жұмысына рұқсат беру ОЕ және шығыс кернеуінің тіктілігін басқару (SRC, Slew Rate Control) сигналдары түседі. ОЕ сигналын бағдарланымды мультиплексор MUX3 арқылы бірнеше вариантта өндіруге болады: макроұяшықтан алынатын РТОЕ термінен, үшінші жағдайды басқаратын жалпы GOE1 немесе GOE2 сигналдарынан, 1 және 0 тұрақтыларынан. Үшінші жағдайды басқарушы жалпы сигналдар бастапқы GTS1 және GTS2 сигналдарының кез келген бағытын қою мүмкіндігімен құрылады.

2.3.3 CPLD-ның байланыс жүйелері

Қалыпты FPGA құрылымындағы сегментті байланыс жүйесінен ерекше CPLD құрылымында үздіксіз байланыс жүйесі пайдаланылады және бұндағы байланыстардың барлығы бірдей болады да, сигнал кідірістерін дұрыс болжауға мүмкіндік береді.

Кез келген FB шығысы басқаларының кірістерімен PIA арқылы байланыстырылады.

FB кірістері PIA құрамындағы барлық вертикаль жолдармен қиылысқан горизонталь жолдарға байланысқан. Кез келген кірісті кез келген шығысқа вертикаль және горизонталь жолдардың арасындағы байланыс нүктелерін бағдарлау арқылы қосуға болады. Өзгеше айтқанда, PIA блоктардың толықтай қосылымдылығын қамтамасыз етеді. FB-нің өзінің ішінде, қажетті ішкі байланыстарын жүзеге асырушы, жергілікті байланыс жүйесі болады.

2.4 Қиыстырма архитектуралы БЛЖС

БЛЖС архитектурасының дамуы FPGA және CPLD ұтымдылықтарын біріктірген қиыстырма құрылымдарға әкелді. Бұндай архитектураларға Altera фирмасының FLEX (Flexible Logic Element matriX) микросұлбаларын келтіруге болады. Күрделілігі аса жоғары микросұлбаларды CPLD және FPGA сипаттарын біріктірген архитектурамен ғана емес, жаңа ерекшеліктер енгізуші айрықша архитектуралармен құрылады. 2.12-суретте конфигурациясы триггерлік жадымен берілетін FLEX 10K микросұлбасының құрылымы келтірілген.

2.12 Сурет

FLEX 10K микросұлбасының құрамындағы логикалық блоктардың құрамында жергілікті PIA (LPIA, Local PIA) және кестелі түрдегі логикалық элементтер (LE, Logic Element), жалпы PIA (GPIA, Global PIA) жолдары мен бағаналары және оларға қосылған енгізу/шығару элементтері (IOE, Input/Output Elements) орналастырылған. Бұлардан басқа, микросұлба құрамында қайтақұралымды жады модулдері (EABs, Embedded Array Blocks) болады.

2.4.1 Логикалық блок

FLEX микросұлбаларында деректерді логикалық түрлендіру құралдары екі деңгеймен жүргізілетіндей етіп жүзеге асырылған. Логикалық операцияларды орындаушы ең кіші құрылым бірлігіне логикалық элемент (LE, Logic Element) жатады. Сегіз LE тобы логикалық блок (LAB, Logic Array Block) құрады. Логикалық блоктар келесі иерархия деңгейіндегі жеке құрылым бірліктері ретінде пайдаланылады (2.13-суретті қара)  .

 2.13 Сурет

 

Логикалық блок LUT түрлі төрткірісті кестелі қызметтік түрлендіргіштен (FG-4) (сыйымдылығы 16 бит жады), алмастыру сұлбасынан (Car, Carry Circuit), каскадтау сұлбасынан (Cas, Cascading Circuit), бағдарланымды триггерден, триггер тазартылымын/қойылымын басқару сұлбасынан және бірнеше бағдарланымды мультиплексордан тұрады. Қызметтік түрлендіргіш FG-4 үш айнымалылы екі функция өндіруге де істей алады (16 бит жады бұл жағдайда 8 биттен тұратын екі блокқа таралады). Олардың біреуі – санауыштар немесе тізбекті тасымалды қосуыштар сияқты сұлбаларға қажет болатын тасымал функциясы.

Каскадтау тізбесі аргументтер саны төрттен көбірек функциялар алуға қолданылады. Мысалы, көршілес үш LE арқылы кішігірім функцияларды өндіріп, сосын каскадтау тәсілімен осы функциялардан ақырғы нәтиже қалыптастыруға болады (2.14-суретті қара).

 2.14 Сурет

Көпайнымалылы функцияны кері байланыс пайдалану арқылы алуға да болады. Бұл кезде алдымен төрт айнымалылы бір функция өндіріліп, сосын ол келесі LE кірістерінің біреуі ретінде енгізіледі және т.б. Нәтижесінде аргумент саны төрттен жоғары болатын “функциядан функция” есептеледі (2.15-суретті қара).

 2.15 Сурет

Қарастырылушы микросұлбадағы (2.13-суретті қара) триггер D, T, RS, JK триггерлерінің бір түрі ретінде істей алады. Бағдарлау арқылы триггерге S және R арқылы асинхронды әрекет жасаудың бірнеше режимін (тазартылым, қойылым, енгізудің әртүрлі варианты) қоюға болады.

Триггерді FG арқылы өндірілген функцияның мәндерін бекіту үшін немесе  D жолдарының біреуінен тікелей қабылдайтын жеке элемент ретінде пайдалануға осы жолдағы мультиплексор арқылы бағдарлауға болады.

Логикалық элементтің шығыс сигналын бағдарланымды мультиплексорлар арқылы жалпы және жергілікті арабайланыс матрицасына қиыстырма (триггерді айналып өтетін ) вариантында немесе регистрлік шығыстардан (триггерден) беруге болады.

2.4.2 Енгізілген жады блоктары

FLEX 10K микросұлбаларының құрамына жалпы сыйымдылығы 6 ... 20 Кбит шамасындағы қайтақұрастырмалы жады матрицалары енгізілген (EABs, Embedded Array Blocks). Олар сыйымдылығы 2 Кбит жеке блоктар түрінде орналастырылған.

EAB құрамында орналасқан жады модулін 2048х1, 1024х2, 512х4 және 256х8 түрінде ұйымдастырып, оны деректерді сақтауға ғана емес, онымен қа-тар аргумент саны 8–10 болатын күрделі функцияларды жүзеге асырушы кес-телі функциялық түрлендіргіш (FG, Function Generator) ретінде пайдалануға болады. Мысалы, ЕАВ блоктары арқылы тезәрекетті арифметикалық-логикалық құрылғы АЛҚ, 4x4 көбейткіштері және т.б. құрылады. Сыйымдылығы жоғарырақ жады блоктарын құру үшін жеке EAB блоктарын біріктіруге болады. Жады блоктары кристалда сұлбаның логикалық бөлігімен бірге орналасқандықтан, бұндай жадымен жұмыс істеу өте тез жүргізіледі.

 2.16 Сурет

Енгізілген жады блоктарының құрылымында (2.16-суретті қара) RAM/ROM түріндегі жады модулінен басқа бірнеше синхронды D-триггер мен бағдарланымды мультиплексорлар болады. Бағдарланымды жергілікті байланыстар матрицасы LPIA сигналды жалпы матрицаның GPIA жолынан алады. 1 және 2 регистрлері жады модуліне, оның конфигурациясына байланысты, әртүрлі разрядты деректер мен адрестерді жіберуге бағдарланады. Жадыға жазу 4 – 6 мультиплексорларының бағдарлануына байланысты синхронды (регистрден тактілеу сигналдарымен) немесе асинхронды (тікелей LPIA-дан) болуы мүмкін.

1 – 3 регистрлерін басқару сигналдарының таңба бағытын 1 – 3 мульти-плексорларымен өзгертуге болады. Жады блогының шығыс сигналдары 7 – 9 мультиплексорлары арқылы GPIA жолдарына немесе бағаналарына тактіленген немесе асинхронды вариантта жіберіледі.

3 Тәжірибелік жаттығулар

Бұл тарауда келтірілген тәжірибе түріндегі жаттығулар оқушыларды  цифрлық жүйелерді құрудың заманауи технологиясымен, яғни олардың бағдарламалы құрылымды микросұлбалар негізінде құрылуының аппараттық және бағдарламалық құралдарымен таныстырады. Осы жаттығуларды орындау арқылы олар цифрлық жүйе жобасын енгізуге, оны компиляциялауға, оған имитациялық моделдеу жүргізуге және құрылғының жобаға сәйкесті бағдарлануы мен оның жұмыс бағытының іс жүзіндегі зерттелуіне мүмкіндік беретін кәсіби аспаптармен, нақтылы айтқанда Altera фирмасының MAX+Plus II бағдарламасымен жұмыс істеу тәртібін игеруге жол ашады.

Жаттығулар Altera фирмасының 10K20 EPLD микросұлбасы негізінде құрылған (DEGEM  SYSTEMS фирмасының) EB-136 оқыту қондырғысында орындалады.

Электрлі бағдарланатын құрылғылардың Flex ұрпағына жататын Altera 10K20 EPLD микросұлбасының кристалында 20000 шамасындағы логикалық кілттер мен триггерлер болады және оған сыйымдылығы 12000 бит RАМ жадысы енгізілген.

Оқыту қондырғысы оқушылардың көптеген қолданым (мысалы, өндірістік автоматика, басқару және дерек тарату процестері) аймақтарындағы  жобаларын құруға және олардың жұмысын іс жүзінде тексеруге мүмкіндік береді.

3.1  EB-136 қондырғысының суреттемесі

3.1.1 Қондырғының аппараттық бөлігі

EB-136 қондырғысының тақташасында 20000 логикалық кілттерден және 12000 бағдарламалы RАМ ұяшықтарынан тұратын, 240 шықпалы Altera EPF10K20 EPLD микросұлбасы орналастырылған. Тақташа, іс жүзіндегі тәжірибелерде және оқушылардың жеке жобаларында пайдалануға болатын, әртүрлі енгізу/шығару құрылғыларын құруға арналған.

Енгізу/шығару құрылғысында орналастырылған құралдар:

-       бастапқы жағдайында түйістері тұйықталған және ажыратылған сегіз ауыстырғыш;

-       қалыпты тұйықталған және ажыратылған түйісті екі түйме;

-       лог. “1” деңгейінде қосылатын сегіз индикатор;

-       сегменттері лог. “0” деңгейімен жандандырылатын екі 7-сегментті индикатор;

-       компьютердің параллель портынан бағдарлама енгізуге арналған кәбіл.

Төменде 10К20 микросұлбасының EB-136 қондырғысында орналастырылған ауыстырғыштар мен түймелерге (3.1-кестені қара), жарықдиодты индикаторларға (3.2-кестені қара) және 7-сегментті индикатордың сегменттеріне (3.3-кесте) сәйкесті белгіленімдері мен шықпаларының номерлері келтірілген.

   К е с т е 3.1

Белгіленім

Шықпа нөмірі

Позиция немесе жағдай сәйкестілігі

Лог.“1”

Лог.“0”

S1

45

жоғарғы

төменгі

S2

46

S3

48

S4

49

S5

50

S6

51

S7

53

S8

54

S9

30

басылған

басылмаған

S9

31

басылмаған

басылған

S10

55

басылған

басылмаған

S10

56

басылмаған

басылған

   К е с т е 3.2

Белгіленім

Шықпа нөмірі

Индикатор жарықтануы

Лог.“1”

Лог.“0”

LED1

33

бар

жоқ

LED2

34

LED3

35

LED4

36

LED5

38

LED6

39

LED7

40

LED8

41

   К е с т е 3.2

Белгіленім

Шықпа нөмірі

Индикатор жарықтануы

Лог.“1”

Лог.“0”

Кіші цифра

Сегмент a

6

бар

жоқ

Сегмент b

7

Сегмент c

8

Сегмент d

9

Сегмент e

11

Сегмент f

12

Сегмент g

13

Үлкен цифра

Сегмент a

17

бар

жоқ

Сегмент b

18

Сегмент c

19

Сегмент d

20

Сегмент e

21

Сегмент f

23

Сегмент g

24

 

EB-136 оқыту қондырғысы PU/PUZ-2000 (қондырғы) базалық құрылғысынан, EB-136 платасынан және 10K20 құрылғысына бағдарлама енгізуші JTAG кәбілінен тұрады.

Қондырғыны жаттығуға дайындау үшін:

-       EB-136 платасын PU/PUZ-2000 қондырғысына орналастыр;

-       бағдарлама енгізуші JTAG кабелін на EB-136 платасының J3 портына қос;

-       JTAG кәбілінің екінші ұшын компьютердің параллель портына қос.

3.1.2 MAX+Plus II бағдарламасын қондыру

MAX+Plus II бағдарламасын компьютерге қондыру келесі тәртіппен жүргізіледі:

-       бағдарлама дискісін сәйкесті жинақтауышқа орналастыр;

-       іс бастау бағдарламасын RUN арқылы шақырып, команда терезесінде <drive>:\PC\MAXPLUS2\INSTALL <Enter> жазылымын енгіз;

-       бұдан әрі бағдарлама қойылуына байланысты нұсқауларға ере бер;

-       қойылым толықтай біткенде ерекше код шығады;

-       http://www.altera.com/authcode/index-u.html адресі бойынша  Student License Authorization Site сайтына шық;

-       қажетті деректерді, оның ішінде өзіңнің email мен алдында шыққан ерекше кодты енгізіп, Internet-тен шық;

-       сіздің қондырғыңызға арналған рұқсат коды email арқылы жіберіледі;

-       Altera пакетін шақыру үшін қызыл MAX+Plus II белгілемесін тырсылдату арқылы бағдарламаны іске қос;

-       рұқсат коды сұралған кезде, email арқылы Alteraдан алынған кодты енгіз;

-       негізгі командалар мәзірінен MAX+plus II таңда;

-       түспе мәзірден Programmer таңда;

 3.1 Сурет

-       негізгі командалар мәзірінен Option таңда;

-       түспе мәзірден Hardware Setup таңда;

3.2 Сурет

-       Hardware Setup тізімінің блогынан ByteBlaster таңда;

 3.3 Сурет

-       OK бас. Енді MAX+Plus II бағдарламасы пайдаланылуға дайын;

-       тәжірибе кезінде тудырылатын әртүрлі файлдарды сақтауға арналған өз атыңдағы қосалқы директорий құру үшін ALTERA директориясынан BULDALTR.EXE бағдарламасын іске қос.

Тәжірибелер кезінде тудырылған файлдарды тәртіптеп сақтау үшін, әрбір пайдаланушының өз директориясы немесе папкасы болу керек. Бұған қоса, әрбір жаттығуға арнап жеке түрдегі қосалқы директорий пайдалану, ондағы файлдармен жұмыс істеуді жеңілдетеді.

Мысалы: c:\Altera\WorynShanay\and\combi\and.gdf.

3.1.3 MAX+Plus II бағдарламасының редакторлары

MAX+Plus II бағдарламасы, нақтылы жұмыстарды орындауға арналған бірнеше редактордан тұрады.

Логикалық жобаны MAX+Plus бағдарламасының құрамындағы сызба редакторын (Graphic Editor) пайдалану арқылы енгізу ыңғайлы келеді. Оның пайдаланылым интерфейсі өзге пакеттерде электрондық тізбектерді суреттеу бағыттарына ұқсас келеді.

Сызба интерфейсті оқып үйренудің ең жеңіл жолы – әртүрлі командаларды іс жүзінде орындау жөніндегі нұсқамалар мен түсіндірмелерге сүйене отырып үйрену. Келесі жаттығулардың көпшілігінде жобаларды енгізуге және оларды GDF файл түрінде сақтауға арналған командалар пайдаланылады.

MAX+Plus II бағдарламасының Waveform редакторы (сигнал редакторы) жобаның моделдеуге және іскерлік мүмкіндігін тексеруге арналған кіріс векторлары сияқты сигнал файлдарын құруға және олардың түрін редакторлауға пайдаланылады. Waveform редакторын, құрушыға моделдеу нәтижелерін көруге мүмкіндік беретін, логикалық анализатор ретінде пайдалануға болады. Waveform жобасын енгізу арқылы тізбелі және қайталанымды құрылғылардың қажетті логикасын құруға болады.

MAX+Plus II бағдарламасының Floorplan редакторы құрылғы шықпалары мен логикалық ұяшықтарға логика қойылуын жеңілдетеді. Жоба құрушы жобаны компиляциялау алдында шықпалар мен логикалық ұяшықтарға нақтылы қойылымдар бекіте алады; оларды компиляция жүргізілгеннен кейін де қарастыруға және өзгертуге болады.

Компилятор келесі түрдегі кез келген файлды қабылдай алады:

-       GDF   Graphic design file (schematic diagram);

-       TDF   Text design file (AHDL source);

-       V         Verilog text source file;

-       VHD  VHDL text source file.

Компилятор компиляция барысында келесі әрекеттер орындайды:

-       жоба файлдарындағы қателіктерді табады;

-       қол астындағы логикалық ұяшықтар мен жады блоктарын пайдалана отырып, логикалық синтез және минимизация жүргізеді және конфигурация қойылымының файлын (Assignment Configuration File, ACF) құрады;

-       құрылғының дайындалған жобасын реттеп, FIT файлын құрады;

-       моделдеу файлын (Simulation files, SNF) құрады;

-       пайдаланылымы туралы хабар (Utilization Report, RPT) береді;

-       құрылғыны бағдарлау файлдарын (JED және т.б.) құрады.

Компиляцияның әртүрлі кезеңдері  компьютер мониторының экранында көрнекі түрде көрсетіледі. Компиляция кезінде туған қиындықтар мен табылған қателіктер бірден көрсетіліп, сәйкесті хабар немесе ескерту беріледі.

Компиляцияның жалпы нәтижелері (құрылғы жөніндегі мәлімет, құрылғы қойылымдары, арабайланыс деректері, құрылғы теңдеулері және қорытынды қателіктер) RPT файлына жазылады.

3.2  Тәжірибелер

3.2.1 Тәжірибе 1. Сызба жоба файлын құру

Бұл тәжірибе келесі қызметтердің істелу тәртібін үйренуге арналған:

-       логикалық тізбекті құру және оны GDF (graphic design file) түрінде сақтау;

-       бастапқы сызба файлды компиляциялау;

-       компиляцияланған файлды платадағы құрылғыға енгізу;

-       бағдарланған ALTERA құрылғысының жұмысының қажетті логикалық функцияға сәйкестігін тексеру.

3.2.1.1 Дайындық

Тәжірибеге дайындық келесі тәртіппен жүргізіледі:

-       MAX+Plus II бағдарламасын шақыру үшін Start Programs түймесін басып, сосын сәйкесті бағдарлама таңдалады. Бағдарламаны қызыл MAX+Plus II белгілемесі арқылы да шақыруға болады;

-       негізгі мәзірден MAX+Plus II/Graphic Editor таңдап, сызба редакторын шақыр;

3.4 Сурет

-       негізгі мәзірден File ашып, сосын Save As таңда. Осы жаттығуға арналған жұмыс директориясын c:\altera\WorynShanay\and аш. Файл аталымдарының аймағына and енгізіп, OK бас.

3.5 Сурет

3.2.1.2 Сұлбаның сызба суреттемесін құру

Бірінші жаттығу ретінде келесі қарапайым сұлбаның құрылу тәртібін үйренелік:

3.6 Сурет

Логикалық жобаның сұлба түріндегі сызба суреттемесін құру келесі қадамдармен жүзеге асырылады:

-       MAX+Plus II қорынан логикалық элементтер таңдау;

-       қордан кіріс және шығыс символдарын таңдау;

-       логикалық элементтер мен кіріс/шығыстар арасындағы байланыс жолдарын (interconnecting wires) құру;

-       кіріс және шығыс сигналдарына аталымдар қою.

Осы қадамдарды іс жүзінде жүргізелік:

-       экранның бос кеңістігінде қос тырсыл арқылы Graphic Editor шақыр;

-       бастапқы maxplus2\max21ib\prim қорын таңдап, OK бас;

3.7 Сурет

-       Symbol Files терезесінен  and2 (2-input AND gate) примитивін (базалық элементін) таңдап, OK бас. Қызыл қоршамдағы (фреймдағы) екікірісті ЖӘНЕ элементінің символы суреттеледі. Қажетті жағдайда символды бағыттаушы арқылы сүйреп, ыңғайлы жерге ығыстырып орналастыруға болады;

3.8 Сурет

-       бастапқы maxplus2\max21ib\prim қорының Symbol Files терезесінен  input символын таңдап, оны AND кілтінің жоғарғы кірісінің сол жағына орналастыр;

3.9 Сурет

-        input символының көшірмесін (Ctrl түймесін басып тұрып) AND кілтінің екінші кірісінің алдына орналастыр;

-       бастапқы maxplus2\max21ib\prim қорының Symbol Files терезесінен  output символын таңдап, оны AND кілтінің шығысының оң жағына орналастыр.

3.10 Сурет

Сұлба элементтерін өзара жалғау келесі тәртіппен жүргізіледі:

-       курсорды жоғарғы кіріс символының оң шетіне бағытта да, жүгіртпектің оң түймесін басып, крест түрін қабылдаған курсорды AND кірісіне дейін созып жеткіз де, жүгіртпек түймесін босат;

3.11 Сурет

-       осы сияқты, екінші кіріс символын AND кірісіне және AND шығысын шығыс символына қос. Жалғамдар құру кезінде крест түріндегі курсор туындамай, қиындық туып жатса, онда  белгілемесін бас. Жалғам белглемесін жабу үшін ESC  бас.

Кірістер мен шығыстарға аталымдар қойылуы келесі жолмен жүргізіледі:

-       курсорды кіріс символының үстіне орналастыр да,  PIN_NAME сөзін қос тырсылмен бас. Кіріс сигналына түсінікті IN1 аталымын қой. Осы сияқты, IN2 кірісі мен шығыс сигналын OUT1 белгіле;

-       сызба жобаны  белглемесін басу арқылы and.gdf файлында сақта.

3.2.1.3 Бастапқы файлды компиляциялау

Компиляция барысында сызба жоба іс жүзіндегі бағдарламалы логикалық құрылғыны, біздің жағдайда 10K20 құрылғысын конфигурациялаушы файлға түрлендіреді.

-       сәйкесті құрылғының не анықтайтынын тексеру үшін негізгі мәзірден Assign/Device таңдау керек;

-       алдымен Project  белгілемесін, одан кейін Compile  белгілемесін бас. Компиляцияның алты кезеңі көрсетілген, компилятор терезесі шығады;

         3.12 Сурет

-       Start түймесін басылғанда компилятор іске қосылып, оның жұмыс кезеңдері көрнекі түрде көрсетіледі. Қателік болмаса OK бас.

3.2.1.4 Кері жазылым

Жаңа жобаның немесе өзгертілген сұлбаның бірінші компиляциялануынан кейін жиналған құрылғының кіріс және шығыс сигналдарының платада орналастырылған арнайы шықпаларға, біздің жағдайда SI және S2 ауыстырғыштары мен LI индикаторына бекіту керек. Бұл кері жазылым (back-annotation) деп аталатын арнайы операция арқылы жүзеге асырылады.

Бірінші компиляцияның кері жазылымынан кейін, EPLD шықпаларының дұрыс бекітілуі үшін екінші компиляция жүргізіледі. Осы қадамдарды орындалық.

-       негізгі мәзірден Assign ашып, одан Back-Annotate Project таңда;

 

3.13 Сурет

-       ашылған терезеде Chips, Pins & Devices белгіле де, OK бас;

 

3.14 Сурет

-       қайтадан негізгі мәзірден Assign ашып, одан Pin/Location/Chip таңда;

 3.15 Сурет

Existing Pin/Location/Chip/Assignments терезесіндегі шықпалардың қызметін танымалдандыр:

-       бірінші жолды (IN1) айқында. Chip Resource терезесінде кез келген нөмір шығуы мүмкін;

-       IN1 шықпасына (S1 ауыстырғышына қосылған) 45 нөмірін бекіту үшін, оны Chip Resource Pin терезесіндегі түсірілімнен таңдау керек (ол санды тікелей қоюға да болады). Сосын Add түймесін бас;

-       IN1 шықпасының ескі қойылымын  Delete түймесін басу арқылы өшір;

-       бұл қадамдарды 46 нөмірін (S2) IN2 шықпасына бекіту үшін қайтала;

-       осы сияқты OUT1 шықпасына 33 нөмірін қойып, Change түймесін бас;

-       кері жазылым процедурасын бітіріп, жаңа шықпа қойылымдарымдарын сақтау үшін OK бас. Шықпалардың жаңа қойылымдарының суретте шығатындығына көңіл бөліңіз.

3.2.1.5 Бастапқы файлды қайта компиляциялау

Жаңа шықпа қойылымдарының компиляциялаушы файлға жіберілуі үшін кері жазылымды бірінші компиляцияның жолымен қайта компиляциялау керек.

3.2.1.6 Файлды құрылғыға енгізу

Компиляцияланған файлды компьютердің параллель порты арқылы платада орналастырылған Altera 10K20 құрылғысының бағдарлаушы JTAG шықпаларына жіберу келесі тәртіппен жүргізіледі (JTAG DOWNLOAD индикаторының жарықтанған жағдайы енгізу процесінің жүргізіліп жатқандығын куәлайды):

-       негізгі мәзірден MAX+Plus II/Programmer таңда;

 3.16 Сурет

JTAG ашып, онда Multi-Device JTAG Chain белгіле де, тағы да JTAG ашып, түспе мәзірден Multi-Device JTAG Chain Setup JTAG таңда;

3.17 Сурет

-       Select Programming File... түймесін басып, файлдар терезесінен and.sof файлын таңда да, OK бас. Add түймесі арқылы and.sof файлын файл аталымдарының тізіміне қос;

 

 3.18 Сурет

-       EB-136 қондырғысындағы аппараттық құралдарды тексеру үшін Detect JTAG Chain Info түймесін басып, сосын OK арқылы Programmer терезесіне қайт;

-       құрылғыны бағдарлауға арналған and.sof файлын енгізу үшін Configure түймесін бас. “Configuration Complete хабары шыққаннан кейін, OK бас. Енгізу индикаторы сөнеді.

3.2.1.7 Аппараттық құралдарды ақырғы тексеру

SI және S2 ауыстырғыштарының әртүрлі позициясындағы LED1 жағдайының жүзеге асырылатын функцияның орындалуына сәйкестілігін тексер.

3.2.2 Тәжірибе 2. Жобаны модификациялау

Бұл тәжірибе логикалық тізбекті модификациялау  тәсілдерін игеруге арналған.

3.2.2.1 Дайындық

-       MAX+Plus II бағдарламасын ашып, оның негізгі мәзірінен File/Project таңда;

Біз төменде көрсетілген сұлбаны алдыңғы сұлба негізінде құрамыз.

3.19 Сурет

-       файлдар терезесінен қажетті файлды тап. Егер онда қажетті файл жоқ болса, онда Name түймесін бас;

 3.20 Сурет

-       ашылған терезедегі Show Only Tops of Hierarchies опциясын белгілеп, шығарылған директориялардан and жобасын тауып, OK бас.

-       бастапқы файлды оқу үшін мәзірден File/Open ашып, сосын c:\altera\WorynShanay\and_or директориясын таңда;

 3.21 Сурет

-       бастапқы and.gdf файлын таңдап, OK бас;

-       негізгі мәзірден File ашып, сосын Save As таңда. Жұмыс директориясын c:\altera\WorynShanay\and_or түрінде анықта;

-       файл аталымдарының аймағына and_or енгізіп, OK бас.

3.2.2.2 Сұлбаны түрлендіру

-       шығыс символын (OUT1) жою үшін, оны айқындап алып, Delete түймесін бас;

 3.22 Сурет

-       Graphic Editor терезесінде maxplus2\max21ib\prim қорын ашып, ондағы Symbol Files терезесінен or2 (2-input OR gate) примитивін  таңда;

-       AND және OR кілттерін қажетті позицияларға орналастырып, AND кілтінің шығысын OR кілтінің жоғарғы кірісіне қос;

-       input символын көшіріп, оны бұрынғы кіріс символдарынан төменірек орналастыр да, оны OR кілтінің бос кірісіне қос. Ол үшін үшінші кіріс символынан AND мен OR арасына дейін тіке сызық сыз да, жүгіртпек түймесін босат. Сосын курсорды қызыл сызықтың оң шетіне қой да, жүгіртпектің сол жақ түймесін басып, сызықты вертикаль бағытта, одан кейін OR кілтінің кірісіне қосылғанша жалғастыр;

-       Symbol Files терезесінен output примитивін алып, оны OR кілтінің шығысына қос. Үшінші кірісті IN3 ретінде, ал шығыс сигналын OUT1 ретінде белгіле;

-       жобаны Save белгілемесімен сақта.

3.2.2.3 ACF файлын жаңарту

Сұлба модификацияландыру арқылы құрылғандықтан, оның шықпаларының қызметтік қойылымдарын түзету керек. ACF файлында (Assignment Configuration File) микросұлбаның орналасуы, логика опциялар, синхронизациялар, шықпалардың жалғануы және құрылғының қызметі жөніндегі информация мен Compiler, Simulator, and Timing Analyzer модулдеріне арналған конфигурация параметрлері сақталады.

-       компиляциялау, кері жазылым (45 (S1), 46 (S2), 48 (S3) нөмірлерін және 33 (LED1) номерін IN1, IN2, IN3, OUT1 шықпаларына сәйкесті белгілеп) және қайта компиляциялау жүргіз.

3.2.2.4 Жоба жұмысын тексеру

Компиляцияланған файлды құрылғыға енгізіп, SI, S2 және S3 ауыстырғыштарының әртүрлі позициясындағы LED1 жағдайының жүзеге асырылатын функцияның орындалуына сәйкестілігін тексер.

3.2.3 Тәжірибе 3. Уақыттық процестерді моделдеу

Бұл тәжірибе логикалық жобаны моделдеуге және оның жұмысын зерттеуге Waveform редакторын пайдалану жолдарын игеруге арналған.

3.2.3.1 “AND жобасын енгізу

Waveform редакторының жұмысын үйрену үшін бірінші жаттығудағы жалғыз and2 (2-input AND gate) примитивінен және сәйкесті шықпаларынан тұратын AND жобасын пайдаланамыз.

-       MAX+Plus II бағдарламасын ашып, and.gdf файлын аш.

3.2.3.2 Waveform редакторы

Бұл редактор жобаның моделденуіне қажетті жұмыс шарттарын анықтауға және оны SCF файлында сақтауға мүмкіндік береді. Моделдеу арнасының файлы – модуляцияға қажетті кіріс векторлары мен модуляция нәтижелерін сызба суреттеме түрінде (waveforms) шығаратын, екілік файл (.scf кеңейтпелі).

-       MAX+Plus II/Waveform Editor ашып, одан Node/Enter Nodes from SNF... таңда;

 3.23 Сурет

-       көрсетілген Enter Nodes from SNF терезесінде List түймесін бас, нәтижесінде көк түспен бөлінген үш сигнал шығады;

 3.24 Сурет

-       көшірім түймесін  басу арқылы IN1, IN2 және OUTl сигналдарын Selected Nodes & Groups терезесіне көшір. OK бас. IN1 және IN2 сигналдарының лог.0 деңгейінде анықталғандығына, ал OUTl шықпасының анықталмағандығына көңіл аудар.

 3.25 Сурет

-       IN1 сигналын айқындап, сосын “1 pulse”   белгілемесін бас. 100 ns шегіндегі уақыт интервалын анықтау үшін курсорды IN1 сигналындағы 200-300 ns блогының сол жағына қой да, Move Pulse Transition  суретнемесін бас, сосын курсорды 200 nsec пен 300 ns арасында жылжыт. Нәтижесінде сигналдың осы бөлігі нөлдік деңгейде болады;

 3.26 Сурет

-       осы сияқты, IN2 сигналының 500-600 ns аралығы нөлдік деңгейде, ал қалған бөлігі бірлік деңгейде болатындай етіп анықта;

-       осы қойылымдарды сақта. Waveform Editor терезесін жаппа.

3.2.3.3 Моделдеу

-       MAX+Plus II/Simulator таңда;

 3.27 Сурет

-       Simulator Timing Simulation терезесіндегі Start түймесін бас;

 3.28 Сурет

-       Open SCF түймесін бас. Моделдеудің соңғы бөлігі көрсетіледі. Горизонталь көрсеткішті моделдеудің бас жағын көрсетуге қой;

 3.29 Сурет

-       кіріс сигналдары мен шығыс сигналының ауытқымаларының арасында аздаған кідіріс болатынына көңіл аудар. Уақыт курсорын OUTl сигналының бірінші теріс ауытқымасына қойып, одан кейін оны 200 ns деңгейіне дейін ығыстыр. Кідіріс уақыты Interval терезесінде көрсетіледі.

3.2.3.4 Кідіріс матрицасы

Бұл бағдарлама моделденуші жобаның кідіріс уақытының дәл шамасын анықтайды.

-       Timing Analyzer  белгілемесін бас, нәтижесінде кідіріс матрицасы көрсетіледі. Оны Delay Matrix  белгілемесімен де ашуға болады;

-       Start түймесін бас;

 3.30 Сурет

-       кідіріс матрицасының терезесін кішірейт немесе оны жап.

3.2.3.5 Кіріс сигналдарының синхрондалу мәндері

Егер кіріс сигналдары моделдеуге қажетті сезімталдық уақытынан кем уақытта өзгеретін болса, онда шығыс сигналы кіріс сигналының қажетті функциясына сәйкес келмеуі мүмкін. Waveform Editor терезесінде моделдеудің іс жүзіндегі мәні көрсетіледі. Осындай жағдайды тексерелік.

-       негізгі мәзірден File/Open ашып, онда Waveform Editor files опциясын белгіле;

-       and.scf таңдап, OK бас;

-       мәзірден Options/Grid Size таңда. Grid Size моделдеу уақытының Waveform Editor терезесінде көрсетілетін интервалын анықтайды. Grid Size шамасын 10 ns мөлшеріне өзгертіп, OK бас. Енді IN1 және IN2 сигналдарының сезімталдық интервалы 10 ns болады;

 

 3.31 Сурет

-       Zoom In  белгілемесін басу арқылы экранда 0 ... 100 ns уақыт интервалы көрсетілетіндей жағдай жаса;

-       IN1 сигналының нөлдік деңгейдегі уақыт интервалын 20 ... 30 ns аралығында, ал для IN2 сигналы үшін – 50-60 ns қой;

-       жаңа қойылымдарды сақта;

-       алдында түсіндірілген тәсілдермен кіріс сигналдары мен шығыс сигналы арасындағы уақыт қатынастарын зертте.

 

Осы тәжірибеде суреттелген Waveform редакторының көмегімен 2-тәжірибеде жобаланған құрылғының кіріс сигналдары мен шығыс сигналы арасындағы уақыт қатынастарын зертте.

3.2.4 Тәжірибе 4. Тізбектеме логика жобасы

Тізбектеме логика құрылғыларына (sequential logic units) триггерлер мен санауыштар кіретін тізбектер жатады. Бұл жаттығуда d-триггер негізіндегі екілік бөлгіш сұлбасын құрамыз.

 3.32 Сурет

3.2.4.1 Дайындық

-       MAX+Plus II бағдарламасын ашып, оның негізгі мәзірінен сызба редакторын MAX+Plus II/Graphic Editor шақыр;

-       файлды divider.gdf аталымымен divider директориясында сақта.

3.2.4.2 Сұлбаның сызба кескінін құру

-       maxplus2\max21ib\prim қорының Symbol Files терезесінен dff (D-триггер) символын, сосын NOT символын алып, оларды орналастыр;

-       NOT символын жүгіртпектің оң түймесімен шығарылатын Flip Horizontal арқылы теріс айналдыр;

  

 3.33 Сурет

-       maxplus2\max21ib\prim қорынан input және output символдарын шығарып, оларды триггердің  тактілік кірісі мен Q шығысына жалғастыр;

Тізбек элементтерін алдыңғы тәжірибелердегі сияқты тіке жолдармен қосуға болады. Оны, INPUT (немесе OUTPUT) символын триггердің тактілеу кірісіне (немесе шығысына) жуықтату арқылы жүзеге асырылатын, альтернативті тәсілмен жүргізуге де болады.

-       NOT кілтінің кірісін триггердің шығысындағы жолға, ал шығысын оның D кірісіне қос;

-       input символына CLOCK, ал output символына OUTPUT аталымдарын қой;

-       жұмысты сақтап, компиляция жүргіз.

3.2.4.3 Уақыттық диаграммалар

Құрылғыдағы уақыттық процестерді моделдеп, оның кіріс және шығыс сигналдарының (CLOCK және OUT) арасындағы уақыт қатынастарын алдыңғы жаттығудағыдай зертте. Нәтиже SCF файлында сақталады.

3.2.4.4 Құрылғы жұмысының ең ауыр жағдайларын анықтау

-       Registered Performance  (rightmost icon) белгілемесін бас. Ол Clock сигналының қол астындағы жобада тіркелген ең ауыр жағдайларды суреттеуші Registered Performance дисплейін құрады;

-       Start түймесін, сосын OK бас. Көрсетілімнің максималды жиілігі шығады;

-       жандандырылған терезеден Waveform Editor терезесін таңда;

-       Options/Grid Size таңдап, ашылған Grid Size терезесінде 3 ns қой;

3.34 Сурет

-       CLOCK таңдап, одан кейін Clock Waveform  белгілемесін бас;

-       уақыт периодын 6 ns қойып, қайтадан жоғарыда суреттелген тәсілмен модуляторды іске қос. Сосын SCF түймесін бас.

OUT сигналының Clock сигналының бірінші өсірілімінен 22 ns кейін өзгеретіндігіне көңіл аудар. Бұл кідірістің негізгі бөлігі сигналдың магистралдан матрицалық блокқа, сосын магистралдар арқылы триггер шығысы мен логикалық элемент аралығындағы таралымынан туады.

-       санауыштың импульстер тізбесін екіге бөлетіндігіне көз жеткіз. Осы тізбектің Registered Performance тестісімен қамтамасыз етілетін максималды жиіліктегі әрекетін бақылау үшін Grid Size мөлшерін кемітіп, сигнал жиілігін ұлғайтуға болады.

3.2.5 Тәжірибе 5. Екілік LPM санауышы

The MAX+Plus II бағдарламасына әртүрлі есептерді шешуге жеңіл бағытталатын стандартты функциялардан тұратын LPM қоры кіреді.

Өзгертілмейтін стандартты қалыпты объектілерді қолдану орнына арнайы қажеттіліктерге сәйкесті ыңғайландырылатын LPM қорындағы арнайы құрылымдарды пайдалану мүмкіндігі көптеген жеңілдік береді. Сұлба құрушы бұндай құрылымдардың кірістері мен шығыстарын, әртүрлі қойылым түрлерін, тазарту және санау механизмдерін өзара байланысты LPM параметрлерін анықтау арқылы бағыттай алады.

Бұл тәжірибе логикалық тізбектер құруға параметрлік модулдерді (library of parameterized modules, LPM) пайдалану жолдарын түсініп игеруіне, 4-разрядты екілік санауышын жобалау арқылы, мүмкіндік алады.

3.2.5.1 Дайындық

-       MAX+Plus II бағдарламасынан сызба редакторын шақыр;

-       жаңа файлды counter.gdf  аталымымен counter директориясында сақта.

3.2.5.2 LPM негізіндегі санауыш сұлбасын құру

LPM санауышын алып, оның ең басты параметрлерін анықтау керек. Ондай параметрлердің саны онша көп емес. Санауыштың төрт шығысы төрт индикаторға жалғану керек.

-       maxplus2\max21ib\Mega_lpm қорындағы Enter Symbol терезесінен lpm_counter символын таңда;

-       ашылған Edit Ports/Parameters терезесінде қажетті кіріс және шығыс сигналдарын анықта;

 3.35 Сурет

-       aclr, asset, clock и q[lpm_width-1..0] сигналдарының Port Status жағдайына Used, ал қалғанына Unused қой;

-       Parameters терезесінен LPM-WIDTH таңдап, ондағы Parameter Value алаңына 4 санын енгіз. Change түймесін бас. Экранның төменгі жағындағы терезедегі LPM_WIDTH жолында 4 параметрі шыққанына назар аудар;

-       параметр анықтамаларын енгізу үшін OK бас. Таңдалған сигналдар мен параметрлердің сұлба кесінінде шыққанына назар аудар.

Parameters терезесіне санауыш символының жоғарғы оң жақ аймағындағы параметрлер тізімін екі рет тырсылдату арқылы шығуға болады.

-       maxplus2\max21ib\prim қорынан input және output символдарын шығар;

-       санауыштың q[ ] шығысын оңға созып, оны output символына қос. Бұл жолдың (оның төрт жолдан тұратын желі екендігінен) әдеттегі жолдан жуандау болатындығына көз таста;

-       тағы екі input символын алып, оларды санауыштың aset и aclr сигналдарына қос та, сәйкесті белгілер қой.

 3.36 Сурет

Кіріс сигналын беру түймесінен туатын дірілді жою үшін, екі NAND кілті негізінде құрылатын, RS-триггер пайдалануға болады.

 3.37 Сурет

-       екі NAND кілті мен екі input символын суретке сәйкесті жалға;

-       діріл фильтрінің кірістеріне SET және RESET аталымдарын қой;

-       фильтр шығысын санауыштың CLOCK кірісіне жалға.

3.2.5.3 ACF файлын құру және құралдарды тексеру

-       компиляция жүргіз де, сосын кері жазылым барысында кірістік SET, RESET, aset, aclr сигналдары мен шығыстық q0, ql, q2 и q3 сигналдарына қажетті нөмірлер бекіт. Бұл кезде бекітілген нөмірлердің сұлбада көрініп шығатындығына назар аудар;

 

I/O hardware

I/O signal name

Pin number

S1

aset

45

S2

aclr

46

S9(NO)

RESET

31

S9(NC)

SET

30

LED1

q0

33

LED2

q1

34

LED3

q2

35

LED4

q3

36

 

-       қайта компиляция жүргіз;

-       компиляцияланған файлды құрылғыға енгіз.

 3.38 Сурет

S9 түймесін басқан сайын санауыш бірге өсіп отырады. S1 ауыстырғышы санды 15 (шестнадцатеричный “F”) мәніне қояды, ал S2 ауыстырғышы оны нөлге түсіреді. Санауыш мәні төрт жарықдиодты LED1, LED2, LED3 и LED4 индикаторларымен көрсетіледі.

3.2.6 Тәжірибе 6. Макрофункция  негізіндегі Декодер

Бұл тәжірибе логикалық құрылғылардың сәйкесті макрофункциялар-мен (Macrofunction, mf) жүзеге асырылуын екілік-ондық санды (binary-coded decimal, BCD) 7-сегментті дисплейдің кодына түрлендіруші Декодер мысалымен түсіндіруге арналған.

BCD кодын 7-сегментный кодқа түрлендіруге арналған LPM функциясы болмаса да, оның қызметін 7446 Декодерінің (BCD-to-7-Segment Decoder) сәйкесті макрофункциясымен жүзеге асыруға болады.

3.2.6.1 Дайындық

-       MAX+Plus II бағдарламасын ашып, алдыңғы жаттығуда жиналған санауыш файлын таңда;

-       жаңа файлды decoder.gdf аталымымен decoder директориясында сақта;

-        project  белгілемесін бас.

3.2.6.2 Санауыш режимін жаңарту

LPM_COUNTER 0...15 арасында санауға арналған. 7446 декодері 0...9 арасындағы BCD сандармен жұмыс істейтіндіктен, 4-разрядты санауыштың санау модулін өзгерту керек.

-       санауыш жанындағы Parameters терезесін екі тырсылдат;

-       LPM_MODULUS таңдап, ондағы Parameter Value алаңына 10 санын енгіз. Change түймесін, сосын ОК бас.

 3.39 Сурет

3.2.6.3 Тізбекті 7-сегментті декодерге айналдыру

 3.40 Сурет

4-разрядты екілік санауыштың төрт шығысын 7446 макрофункциясына, ал декодердің жеті шығысын EB-136 платасындағы 7-сегментті дисплейдің шықпаларына қосу керек.

-       санауыштың q[3..0] шықпаларын алып таста;

-       Symbol Libraries терезесінде maxplus2\max21ib\mf қорын ашып, оның Enter Symbol терезесінен 7446 макрофункциясын шығар да, OK бас. Макрофункцияның ешқандай параметрі қойылмайтындығын ескертеміз;

3.41 Сурет

-       декодердің А, В, С және D кірістерін солға сызып, q[3..0] желісін оңға соз да, төрт кірістің әрбірін желіге (жуан жолға) қос;

 3.42 Сурет

-       А, В, С және D кірістеріне q[0], q[l], q[2] және q[3] белгілерін қой;

 3.43 Сурет

-       примитив қорынан output символын алып, оны санауыштың OA шықпасына қос;

 3.44 Сурет

-       шығыс символын көшіру арқылы қалған OB, ОС, OD, OE, OF OG шықпаларына қос;

-       7 шықпаны OA, OB, ОС, OD, OE, OF және OG түрінде белгіле.

3.2.6.4 ACF файлын құру және құралдарды тексеру

-       компиляция жүргіз де, сосын кері жазылым барысында кірістік SET, RESET, aset, aclr сигналдары мен шығыстық q0, ql, q2 и q3 сигналдарына қажетті нөмірлер бекіт.

 

I/O hardware

I/O signal name

Pin number

SI

aset

45

S2

aclr

46

S9(NO)

RESET

31

S9(NC)

SET

30

segment a

OA

6

segment b

OB

7

segment с

ОС

8

segment d

OD

9

segment e

OE

11

segment f

OF

12

segment g

OG

13

 

-       қайта компиляция жүргіз;

-       компиляцияланған файлды құрылғыға енгіз.

S9 түймесін басқан сайын санауыштағы сан бірге өсіп, оның мәні ондық сан түрінде 7-сегментті дисплейде көрсетіледі.

3.2.7 Тәжірибе 7. Символ құру

Бұл тәжірибе логикалық тізбекті жеке символ арқылы көрсету тәсілін үйренуге арналған. Логикалық тізбекті символмен суреттеу оның жұмысын түсінуді жеңілдетеді. Құрылған символды жаңа логикалық жобаларда еркін пайдалануға болады.

Тәжірибеде 4-разрядты BCD санауышы пен 7-сегментті декодер жалғыз символға түрлендіріледі. Санауышқа eq[15..0] сигналын қосу және екі немесе одан көбірек символ көшірмесін пайдалану каскадты санауыш жобасын құруға мүмкіндік береді.

3.2.7.1 Дайындық

-       MAX+Plus II бағдарламасын ашып, декодер файлын тап та, оны counter_symbol.gdf  аталымымен Dec_cntr директориясында сақта;

-       project  белгілемесін басып, Assign және Clear Project Assignments таңда;

MAX+Plus II бағдарламасы символға файлды толықтай түрлендіретіндіктен, сұлбадан діріл фильтрі мен кіріс символдарын алып тастау керек.

3.2.7.2 Санауышты өзгерту

-       экранда декодерден басқа элементтердің бәрін алып таста;

-       maxplus2\max21ib\lpm қорынан жаңа LPM_COUNTER шығар;

-       clock, eq[15..O], q[LPM_WIDTH 1..0] сигналдарын used түрінде анықтап, қалғандарын unused жағдайына қой;

-       Parameters терезесінде LPM_MODULUS = 10, LPM_WIDTH = 4 қой. Change түймесін, сосын OK бас;

-       санауыш шығыстарын декодер кірістеріне жалға, ал оның кірісіне кіріс символын жалға да, оны clock ретінде белгіле;

-       eq[15..0] шығысын төменге созып, оған шығыс символын жалғап, оны eq[15..0] түрінде белгіле;

-       шығыс символын қойып, оны в eq[15..0] желісіне қос. eq [9] жолын шығыс символы ретінде белгіле;

-       файлды сақта.

 3.45 Сурет

4-разрядты санауыш пен 7-сегментті декодерді жалғыз символға түрлендіру келесі тәртіппен жүргізіледі:

-       File арқылы Create Default Symbol таңда;

3.46 Сурет

-       жоба файлын Save арқылы сақта;

-       File/Close арқылы файлды жап.

Құрылатын логикалық жобада дайын counter_symbol символын пайдалану үшін тактілік сигналды counter_symbol символының clock кірісіне жалғап, OA...OG сигналдарын 7-сегментті дисплейге қосу керек. Оның eq[9] сигналы келесі санауышқа жіберілетін тасымал болады.

3.2.7.3 Символ негізіндегі ондық санауыш

Енді құрылған символдың логикалық жобада пайдаланылуын қарастыралық.

3.47 Сурет

-       мәзірден File/New таңда. File Type терезесінде Graphic Editor file опциясын белгіле;

 

 

 

 

 

 3.48 Сурет

-       файлды dec_cntr.gdf түрінде бұрынғы counter_symbol символы тұрған dec_cntr директориясында сақта;

3.49 Сурет

-       Project  белгілемесін басып,  Symbol Files тізімінен counter_symbol таңда.

 3.50 Сурет

counter_symbol символында кіріс және шығыс сигналдары ғана көрсетілгеніне назар аудар. Қажет болса, қос тырсылмен оны толықтай ашып көруге болады. Енді ескі GDF файлын ашып, одан діріл фильтрін көшіріп аламыз да, оны жаңа жобаға қосамыз.

-       фильтрді санауыштың CLOCK кірісіне жалға;

-       8 OUTPUT символын санауыш шығыстарына жалға;

-       шығыс белгілерін (ОA мен ОG арасындағы және CARRY) қой;

-       9 OUTPUT символын сәйкесті символ шықпаларына (ОA...ОG және CARRY) жалға.

3.2.7.4 ACF файлын жаңарту және құралдарды тексеру

-       компиляция жүргіз де, сосын кері жазылым барысында кірістік SET, RESET сигналдары мен шығыстық 0A, 0B, 0C, 0D, 0E, 0F, 0G және CARRY сигналдарына қажетті нөмірлер бекіт;

I/O hardware

I/O signal name

Pin number

S9(NO)

RESET

31

S9(NC)

SET

30

segment a

0A

6

segment b

0B

7

segment с

8

segment d

0D

9

segment e

0E

11

segment f

0F

12

segment g

0G

13

LED1

CARRY

33

 

-       қайта компиляция жүргіз;

-       компиляцияланған файлды құрылғыға енгіз.

S9 түймесін басқан сайын санауыштағы сан бірге өсіп, оның мәні ондық сан түрінде 7-сегментті дисплейде көрсетіледі.

3.2.8 Тәжірибе 8. RAM түрлі жады құрылғысы

Altera FLEX 10K микросұлбаларына енгізілген матрицалық блоктардың (EAB, Embedded Array Blocks) ерекшеліктері ROM және RAM түрлі жады және оған қоса, қиыстырма логикасын құруға мүмкіндік береді. EAB құрамында ішкі дерек регистрлері арқылы әрекеттесетін дерек таратушылары қамтылған, басқару сигналдарымен сілтенетін ұяшықтар массиві орналастырылған.

Бағдарламалы 10K20 логикалық құрылғысында 12288 жады ұяшығы бар, оларды 256*8, 512*4, 1024*2 немесе 2048*1 бит пішіміндегі EAB блоктарына жинастыруға болады.

Үлкенірек жады блоктарын құру үшін бірнеше EAB біріктіруге болады. Микросұлба құрамындағы алты EAB біріктірілуі арқылы алынатын ең үлкен жады мөлшері – 1536 байт; нәтижелік жадыны 1536*8, 3072*4, 6144*2 немесе 12 288*1 бит пішімінде ұйымдастыруға болады.

Бұл тәжірибеде адрес анықтау үшін төрт ауыстырғыш (S5–S8), дерек қою үшін төрт ауыстырғыш (SI–S4) пайдаланылады.

Деректер RАМ-ға WE стробының (Write Enable) жоғарғы деңгейінде, яғни S9 ауыстырғышының басылған жағдайында жазылады. Деректер RАМ-нан WE стробының төменгі деңгейінде, яғни S9 ауыстырғышының басылмаған жағдайында оқылады. Адрес должен WE жоғарғы деңгейге көтерілместен бұрын қойылу керек, өзгеше жағдайда деректердің көптеген ұяшыққа қатар жазылуы мүмкін.

RАМ-ның бұндай асинхронды оқу/жазу (read/write) режимінен басқа жүйелік INCLOCK және OUTCLOCK сигналдарымен басқарылатын синхронды режимде жұмыс істеу мүмкіндігі де ескерілген.

3.2.8.1 RAM сұлбасын құру

Бұл жаттығуда data[3..0] сигналдары деректерді RAM-ға жазуға, ал q[3..0] сигналдары одан оқуға пайдаланылады, оқылған деректер 4 жарықдиодымен (LED) көрсетіледі. адрес[3..0] сигналдары 16 жады ұяшығының біреуін таңдауға пайдаланылады. WE жоғарғы деңгейде болған кезде RАМ-ға дерк жазуға рұқсат беріледі. Бұл сигналдардың барлығын да RАМ мегафункциясын конфигурирациялау кезінде анықтау керек.

 3.51 Сурет

-       Мәзірден File/New таңдап, ашылған File Type терезесінде Graphic Editor file опциясын белгіле;

-       жаңа файлды ram.gdf аталымымен ram директориясында сақта;

-       Project  суретнемесін бас;

-       Symbol Libraries терезесінен maxplus2\max21ib\mega_lpm қорын таңдап, ондағы Enter Symbol терезесінен lpm_ram_dq таңда;

 3.52 Сурет

OK бас. Қажетті кіріс және шығыс сигналдары анықталатын Edit Ports/Parameters терезесі көрсетіледі.

3.53 Сурет

Келесі параметрлерді келесі жағдайларға қой. Әрбір параметр өзгертілгеннен кейін Change түймесін басуды ұмытпа.

-       address[LPM_WIDTHAD-l..0] және data|LPM_WIDTH-l..0] – Used;

-       INCLOCK және OUTCLOCK Unused;

-       q[l LPM_WIDTH-..O] және WE Used;

-       LPM_ADDRESS_CONTROL, LPMJNDATA және LPM_OUTDATA Unregistered;

-       LPM_WIDTH және LPM_WIDTHAD 4;

-       Барлық параметрдің сақталуы үшін OK бас;

-       INPUT символын және оның үш көшірмесін RАМ-ның сол жағына орналастыр;

.

 3.54 Сурет

-       файлды сақта;

-       жуан data[] жолын солға созып, сосын оңға көтер де, оған INPUT символдарын жалға;

-       алғы қадамдарды address[] кірісі үшін де қайтала;

-       WE кіріс сигналын INPUT символына жалға;

-       осы сияқты, төрт OUTPUT символын q[ ] шығысына қос;

3.55 Сурет

-       data[] желісін data[3..0] түрінде және оған қосылған жолдарды data[0], data[l], data[2] және data[3] түрінде белгіле;

-       address[]желісін address[3..0] түрінде және оған қосылған жолдарды address[0], address[1],  address[2] және address[3] түрінде белгіле;

-       осы сияқты, q[] дерек желісін q[3..0] түрінде және оған қосылған жолдарды q[0] ... q[3] түрінде белгіле;

-       WE кірісін WE түрінде белгіле;

-       файлды сақта.

3.2.8.2 ACF файлын жаңарту және құралдарды тексеру

-       компиляция жүргіз;

-       кері жазылым жүргіз. Оның барысында кіріс және шығыс сигналдарына кестеде келтірілген қажетті нөмірлер бекіт;

 

I/O hardware

I/O signal name

Pin number

S8

AddressO

54

S7

Addressl

53

S6

Address2

51

S5

Address3

50

S4

DataO

49

S3

Datal

48

S2

Data2

46

SI

Data3

45

L4

Q0

36

L3

Ql

35

L2

Q2

34

LI

Q3

33

S9

we

30

 

-       қайта компиляция жүргіз;

-       компиляцияланған файлды құрылғыға енгіз.

RАМ-ның әртүрлі ұяшықтарына  деректер жазу үшін алдымен 8 ауыстырғыш арқылы адрес пен деректер қойылып, сосын WE (S9) түймесін басу керек.

Деректер мен адрес WE сигналы жандандырылмастан бұрын дұрыс қойылу керек. Кез келген ұяшықтың құрамын WE сигналын төменгі деңгейге қою арқылы оқып, сосын келесі оқылатын ұяшық адресін қоюға болады. Таңдалған ұяшық құрамы LED4–LED1 жарықдиодтарында көрсетіледі.

Келесі тәртуппен RАМ жұмысын тексер:

-       адресті S8–S5 ауыстырғыштары арқылы;

-       S4–SI ауыстырғыштары арқылы деректерді 0000 мәніне қой;

-       берілген деректерді RАМ-ға жазу үшін бір мезетке S9 түймесін бас;

-       S8 ауыстырғышын  1 жағдайына ауыстырып, 0001 адресін қой;

-       S4 ауыстырғышын  1 жағдайына ауыстырып, 0001 дерегін қой;

-       бір мезетке S9 түймесін бас;

-       осы сияқты, келесі ұяшықтарға сәйкесті деректер жаз. Әрбір деректің жазылуы кезінде жарықдиодтарының жарықтануының жазылатын деректерге сәйкес келетіндігіне көз жеткізіп отыр;

-       ұяшықтарды оқу арқылы ондағы деректердің сақталғандығына көз жеткіз;

-       RАМ ұяшықтарына жаңа деректер жазып, олардың сақталымын тексер.

 

Әдебиеттер тізімі

1.     Токхейм Р. Основы цифровой электроники: Пер. с. англ. – М.: Мир, 1988.

2.     Токхейм Р. Микропроцессоры. Курс и упражнеия: Пер. с. англ. – М.: Мир, 1988.

3.     Уэйкерли Дж. Ф. Проектирование цифровых устройств: Пер. с. англ. – М.: Постмаркет, 2002.

4.     Хамахер К. И др. Организация ЭВМ. Пер. с. англ. – СПб.: Питер, 2003.

5.     Угрюмов Е. П. Цифровая схемотехника. – СПб.: БХВ-Петербург, 2004.

6.     Бойко В.И. и др. Схемотехника электронных устройств. Цифровые устройства. – СПб.: БХВ-Петербург, 2004.

7.     Бойко В.И. и др. Схемотехника электронных устройств. Микропроцессоры и микроконтроллеры. – СПб.: БХВ-Петербург, 2004.

8.     Сугано Т. Дж., Уидмер Н. С. Цифровые системы. Теория и практика: Пер. с англ. – М.: Издательский дом “Вильямс”, 2004.

9.     Бураханова З.М., Шанаев О.Т. Аналогты және цифрлы электрондық құрылғылар / Оқу құралы. – Алматы: АЭИ, 1992.

10. Бураханова З.М., Шанаев О.Т. Электрондық тізбектер / Оқу құралы. – Алматы: АЭИ, 1996.

11. Бураханова З.М. Дербес ЭЕМ арқылы схемақұралыстық моделдеу / Оқу құралы. – Алматы: АЭжБИ, 1999.

12. Шанаев У.Т. Основы цифровой техники / Учебное пособие. – Алматы: АГУ, 1999.

13. Шанаев О.Т. Цифрлық құрылғылар және микропроцессорлар. Зертханалық жұмыстарға арналған әдістемелік  нұсқаулар. – Алматы: АИЭС, 2008.

14. Шанаев О.Т. Цифрлық құрылғылар және микропроцессорлар. Курстық жұмыстарды орындауға арналған әдістемелік  нұсқаулар. – Алматы: АИЭС, 2008.

15. Шанаев О.Т. Микропроцессорлық жүйелердің құрылғылары. Зертханалық жұмыстарды орындауға арналған әдістемелік  нұсқаулар. – Алматы: АИЭС, 2009.

16. Шанаев О.Т. Система моделирования Electronic Workbench / казақ және орыс тілдерінде. – Алматы: АИЭС, 2003.

17. Шанаев О.Т. Цифрлық құрылғылар және микропроцессорлар: Оқу құралы / Алматы: АЭжБИ, 2009.

18. Шанаев О.Т. Микропроцессорлық жүйелер: Оқу құралы / Алматы: АЭжБИ, 2009.

 

Мазмұны

Кіріспе  1

1 Бағдарламалы құрылымды құрылғылардың алғы бастамалары   5

1.1 Тұрақты жадылық құрылғылар  5

1.1.1 Жасырым-жаппалы жадылық құрылғылар  5

1.1.2 Бір бағдарланымды ЖҚ   6

1.1.3 Қайта бағдарланымды ЖҚ   8

1.1.4 ЖҚ-ларды информация өңдеу жұмыстарына пайдалану  10

1.1.4.1 Логикалық функцияларды жүзеге асыру  11

1.1.4.2 Шектелімді автоматтарды жүзеге асыру  11

1.1.4.3 Операциялар мен функциялардың орындалуы   12

2.1 Бағдарламалы логика құрылғылары   12

1.2.1 Бағдарламалы логикалық матрицалар  12

1.2.1.1 PLA схемотехникасы   13

1.2.1.2 PLA бағдарлануы   15

1.2.1.3 Ауыстырылым функцияларының жақшалы түрлері 17

1.2.1.4 PLA ұлғайтылуы   17

1.2.2 Бағдарламалы матрицалық логика  18

1.2.3 PLD икемділігін көтеру тәсілдері 19

1.2.3.1 Бағдарламалы шығыс буферлері 19

1.2.3.2 Қосбағытты шықпалар  20

1.2.3.3 Жадылы PLD   21

1.2.3.4 Конъюнкторларды бөлу  22

1.2.3.5 Сұлбақұралыстық жүзеге асырылуы   23

2 Бағдарламалы құрылымды құрылғылар  26

2.1 Вентилдік матрицалар  27

2.1.1 GA түрлері 28

2.2 Пайдаланушы бағдарлайтын вентилді матрицалар  30

2.2.1 FPGA құрамындағы логикалық блоктар  30

2.2.2 FPGA-ның енгізу/шығару блоктары   33

2.2.3 FPGA-ның арабайланыс жүйелері 34

2.3 Бағдарламалы күрделі логикалық сұлбалар  34

2.3.1 CPLD-ның іскерлік блоктары   35

2.3.2 CPLD-ның енгізу/шығару блоктары   37

2.3.3 CPLD-ның байланыс жүйелері 38

2.4 Қиыстырма архитектуралы БЛЖС   38

2.4.1 Логикалық блок  39

2.4.2 Енгізілген жады блоктары   41

3 Тәжірибелік жаттығулар  42

3.1 EB-136 қондырғысының суреттемесі 42

3.1.1 Қондырғының аппараттық бөлігі 42

3.1.2 MAX+Plus II бағдарламасын қондыру  44

3.1.3 MAX+Plus II бағдарламасының редакторлары   46

3.2 Тәжірибелер  47

3.2.1 Тәжірибе 1. Сызба жоба файлын құру  47

3.2.1.1 Дайындық  47

3.2.1.2 Сұлбаның сызба суреттемесін құру  48

3.2.1.3 Бастапқы файлды компиляциялау  50

3.2.1.4 Кері жазылым  51

3.2.1.5 Бастапқы файлды қайта компиляциялау  52

3.2.1.6 Файлды құрылғыға енгізу  52

3.2.1.7 Аппараттық құралдарды ақырғы тексеру  54

3.2.2 Тәжірибе 2. Жобаны модификациялау  54

3.2.2.1 Дайындық  54

3.2.2.2 Сұлбаны түрлендіру  55

3.2.2.3 ACF файлын жаңарту  56

3.2.2.4 Жоба жұмысын тексеру  56

3.2.3 Тәжірибе 3. Уақыттық процестерді моделдеу  56

3.2.3.1 “AND жобасын енгізу  56

3.2.3.2 Waveform редакторы   56

3.2.3.3 Моделдеу  58

3.2.3.4 Кідіріс матрицасы   59

3.2.3.5 Кіріс сигналдарының синхрондалу мәндері 59

3.2.4 Тәжірибе 4. Тізбектеме логика жобасы   60

3.2.4.1 Дайындық  60

3.2.4.2 Сұлбаның сызба кескінін құру  60

3.2.4.3 Уақыттық диаграммалар  61

3.2.4.4 Құрылғы жұмысының ең ауыр жағдайларын анықтау  61

3.2.5 Тәжірибе 5. Екілік LPM санауышы   62

3.2.5.1 Дайындық  62

3.2.5.2 LPM негізіндегі санауыш сұлбасын құру  63

3.2.5.3 ACF файлын құру және құралдарды тексеру  64

3.2.6 Тәжірибе 6. Макрофункция  негізіндегі Декодер  65

3.2.6.1 Дайындық  65

3.2.6.2 Санауыш режимін жаңарту  65

3.2.6.3 Тізбекті 7-сегментті декодерге айналдыру  66

3.2.6.4 ACF файлын құру және құралдарды тексеру  68

3.2.7 Тәжірибе 7. Символ құру  68

3.2.7.1 Дайындық  69

3.2.7.2 Санауышты өзгерту  69

3.2.7.3 Символ негізіндегі ондық санауыш   70

3.2.7.4 ACF файлын жаңарту және құралдарды тексеру  71

3.2.8 Тәжірибе 8. RAM түрлі жады құрылғысы   72

3.2.8.1 RAM сұлбасын құру  73

3.2.8.2 ACF файлын жаңарту және құралдарды тексеру  75

Әдебиеттер тізімі 77