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

АЛМАТЫ ЭНЕРГЕТИКА ЖӘНЕ БАЙЛАНЫС УНИВЕРСИТЕТІ

 «Электроника» кафедрасы

 

 

 

ЦИФРЛЫҚ ҚҰРЫЛҒЫЛАР ЖӘНЕ МИКРОПРОЦЕССОРЛАР 

5B071900 – Радиотехника, электроника және телекоммуникация

мамандығының барлық оқу түрінің студенттерінің

зертханалық жұмыстарды орындауына арналған әдістемелік  нұсқаулар

 

 

 

Алматы 2011

 

ҚҰРАСТЫРУШЫ: О.Т. Шанаев. Цифрлық құрылғылар және микропроцессорлар. 5B071900 – Радиотехника, электроника және телекоммуникация мамандығының барлық оқу түрінің студенттерінің сәйкесті пәні бойынша зертханалық жұмыстарды орындауына арналған әдістемелік  нұсқаулар. – Алматы: АЭжБУ, 2011. – 48 б. 

 

Әдістемелік нұсқауларда ұсынылып отырған жұмыстар 5B071900 – Радиотехника, электроника және телекоммуникация мамандығындағы “Цифрлық құрылғылар және микропроцессорлар” пәнінің оқу материалын мазмұны жағынан толық қамтыған зертханалық жұмыстар ұйымдастыруға арналған жұмыстар келтірілген.

Бастапқы үш жұмыс цифрлық жүйенің негізін қалаушы бөліктемелерін зерттеп, олардың іскерлік сипаттамаларымен танысуға және зерттеу жұмыстарын жүргізуге қажетті аспап-құралдарды пайдалану тәртібін игеруге арналған. Бұл топтамадағы жұмыстар зерттелуші құрылғыларды Electronics Workbench бағдарламасында моделдеу арқылы жүзеге асырылатын виртуалды тәжірибе түрінде және сәйкесті құрылғылардың жұмысын іс жүзінде (Degem Systems фирмасының PU-2000 зертханалық құралымында) тексеру арқылы орындалады.

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

Intel 8085 микропроцессорының негізінде құрылған бағдарламалық симуляторда және іс жүзіндегі сәйкесті зертханалық құралымда жүзеге асырылатын ақырғы екі жұмыста Ассемблер тілінде құрылған әртүрлі бағдарлама құрылымдарының орындалу тәртібі зерттеледі.

Без. 27, кест. 6, әдеб. көрсеткіші. – 9 атау.

 

Пікір беруші:   физ-мат. ғыл. д., проф. С. Б. Бимурзаев          

 

“Алматы энергетика және байланыс университеті” коммерциялық емес акционерлік қоғамының 2011 ж. басылым жоспары бойынша басылады.

 

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

 

Кіріспе

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

Әдістемелік нұсқамадағы бастапқы үш жұмыс цифрлық жүйелердің негізін құрушы бөліктемелерінің (логикалық элементтердің, қиыстырма және тізбектеме құрылғылардың) іскерлік сипаттамаларымен танысуға және зерттеу жұмыстарын жүргізуге қажетті аспап-құралдарды пайдалану тәртібін игеруге арналған. Бұл топтамадағы жұмыстар зерттелуші құрылғыларды Electronics Workbench бағдарламасында моделдеу арқылы жүзеге асырылатын виртуалды тәжірибе түрінде және сәйкесті құрылғылардың жұмысын іс жүзінде (Degem Systems фирмасының PU-2000 зертханалық құралымында) тексеру арқылы орындалады.

Микропроцессорлық жүйелерді құру барысында өзара байланысты және өзара тәуелді екі фактор ескеріледі: қойылған мәселенің іс жүзінде жүзеге асырылуын қамтамасыз етуші жүйенің аппараттық бөлігін (hardware) құру және жүйенің іскерлік бөліктемелерінің қойылған мәселенің шешіліміне байланысты іс-әрекеттері мен өзара әрекеттесуінің бағдарламасын құруға мүмкіндік беруші командалар жүйесін (software) анықтау. Демек, микропроцессорлық жүйе жөнінде толық білім алу үшін оның аппараттық бөлігін де, бағдарламалық бөлігін де игеру керек. Әдістемелік нұсқамадағы келесі үш жұмыс микропроцессорлық жүйенің жеке құрама бөліктемелерінің (жады жүйесінің, енгізу құрылғыларының және микропроцессордың) ішкі құрылымын және олардың жұмыс принциптерін оқуға арналған. Бұл топтамадағы жұмыстардың орындалуы сәйкесті құрылғылардың Electronics Workbench бағдарламасында құрылған сәйкесті виртуалды моделдерінің жұмыс сипатын зерттеу арқылы жүзеге асырылады.

Intel 8085 микропроцессорының негізіндегі бағдарламалық симуляторда және іс жүзіндегі сәйкесті зертханалық құралым арқылы (разработка фирмы Degem Systems) жүзеге асырылатын ақырғы екі жұмыста Ассемблер тілінде құрылған әртүрлі бағдарлама құрылымдарының орындалу тәртібі зерттеледі.

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

1 Зертханалық жұмыс. Қиыстырма құрылғылар

Жұмыс мақсаты:

-       логикалық элементтердің кіріс сигналдары мен шығыс сигналының деңгейлерінің өзара тәуелділігін анықтау;

-       қиыстырма құрылғылардың сұлбасын логикалық элементтер арқылы құру әдістемесін игеру;

-       цифрлық құрылғыларды құруға және олардың жұмысын зерттеуге қолданылатын аспап-құралдармен жұмыс істеу әдістемесін игеру.

1.1  Жұмыс орнының құрал-жабдықтары:

-       компьютер, Electronics Workbench бағдарламасы;

-       зертханалық құралым PU-2000;

-       EB-131 және EB-132 тақтайшалары;

-       жалғама сымдар.

1.2  Қажетті мәліметтер мен әдістемелік ұсынылымдар

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

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

Electronics Workbench бағдарламасында орналастырылған “логикалық түрлендіргіш” (Logic Converter) аталымды аспап арқылы қиыстырма құрылғының сұлбасын құру кезеңдерінің барлығын да жүзеге асыруға болады. Бұл аспаптың қолданылуы зертханалық жұмыстың сәйкесті жұмыс тапсырмасындағы қиыстырма құрылғыны құруға ұсынылған.

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

Зертханалық жұмысты орындау алдында ұсынылған аспаптармен жұмыс істеу тәртібін және сұлба бөліктерін қосалқы сұлба түрінде бейнелеу тәртібін оқып танысу керек [1]. Бұл құралдар мен олардың қолданылу тәсілдерін игеру алуан түрлі құрылғылардан тұратын үлкен құралымдарды зерттеуге арналған болашақ тәжірибелерді ұйымдастыруға негіз қалайды. Оларды курстық жұмысты орындау кезінде де кеңінен қолдану керек, бұл жұмыстың тезірек жүзеге асырылуына көмек береді.

Жұмыстың іс жүзінде орындалатын бөлігі зертханалық құралымға орналастырылатын EB-131 және EB-132 тақтайшаларында жүзеге асырылады.

1.3  Жұмыс тапсырмасы

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

-       үшкірісті логикалық элементтерді логикалық талдауыш арқылы қатар зерттеуге арналған сұлбаны жина (1.1 суретті қара);

-       алынған нәтижелер бойынша сұлбадағы элементтердің жұмыс логикасын талда.

1.1 Сурет

1.3.2     Жеке импульс қалыптастырушы блок құр:

-       логикалық элементтегі сигнал кідірісін бақылап (1.2, a суретті қара), оның ұзақтығын өлше;

-       жеке импульс қалыптастырушы сұлба құрып (1.2, b суретті қара), оның жұмысын зертте және оны жеке блок түрінде бейнеле (1.2, c суретті қара). Бұдан әрі бұл блокты түйме басу арқылы жеке импульс қалыптастыруға пайдалануға болады.

a

b

c

1.2 Сурет

1.3.3     Логикалық элементтер арқылы кесте түрінде берілген функцияны (1.1 кестеден оқытушының ұсынған варианты бойынша) жүзеге асырушы қиыстырма құрылғының сұлбасын құр:

1.1 К е с т е

A

B

C

F0

F1

F2

F3

F4

0

0

0

1

1

0

1

0

0

0

1

0

1

1

0

1

0

1

0

0

0

1

1

0

0

1

1

1

1

0

1

1

1

0

0

1

0

1

0

1

1

0

1

0

1

1

1

0

1

1

0

1

1

0

0

1

1

1

1

1

0

1

1

1

 

-       берілген функцияның кестелі көрсетіліміне сәйкесті минималды логикалық өрнек ал;

-       алынған өрнек бойынша құрылғы сұлбасын құр;

-       логикалық өрнекті сұлбаны NAND элементтері арқылы жүзеге асыруға арналған түріне түрлендір;

-       түрлендірілген өрнек бойынша құрылғы сұлбасын құр;

-       құрылғы сұлбасын логикалық түрлендіргіш (Logic Converter) көмегімен құр;

-       құрылған сұлбаларға зерттеуге қажетті қосымша элементтер (сәйкесті аталыммен белгіленген кілттер мен) жалға;

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

 

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

1.3 Сурет

1.3.4     EB-131 және EB-132 тақтайшаларындағы оқытушының ұсынған сұлба фрагментінің жұмыс логикасын іс жүзінде зертте:

-       қажетті тақтайшаны (EB-131 немесе EB-132) зертханалық құралымға орналастыр;

-       сұлба фрагментінің кірістерін жалғама сымдар арқылы тақтайшада орналасқан ауыстырғыштарға қос;

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

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

1.4  СӨЖ тапсырмалары

1.4.1     XOR элементі арқылы қалыптастырылатын жеке импульстердің ұзақтығын өзгерту мүмкіндіктерін зертте.

1.4.2     AND, NAND, OR, NOR және XNOR элементтері арқылы жеке импульстер қалыптастыру мүмкіндіктерін зертте және алынған нәтижелерді түсіндір.

1.4.3     1.3.3-бөлімде ұсынылған құрылғының сұлбасын  NOR элементтері арқылы құр.

1.5  Тексерім сұрақтары

1.     Зертханалық жұмыста қарастырылған элементтердің жұмыс логикасын түсіндір.

2.     AND және OR элементтерінің кірістерінің саны қалай ұлғайтылады?

3.     NAND және NOR элементтерінің кірістерінің санын қалай ұлғайтуға болады?

4.     NAND және NOR элементтерінің қызметін базалық элементтер арқылы жүзеге асыру мүмкіндігін түсіндір.

5.     Қиыстырма құрылғылардың сұлбасын құру тәртібін түсіндір.

6.     Қиыстырма құрылғының сұлбасын NAND элементтері арқылы құру үшін оның дизъюнктивті логикалық өрнегін қалай түрлендіру керек?

7.     Қиыстырма құрылғының сұлбасын NOR элементтері арқылы құруға арналған логикалық өрнекті қалай алуға болады?

8.     Логикалық түрлендіргішті бірнеше шығысты қиыстырма құрылғының сұлбасын құруға пайдалануға бола ма? Болса, қалай?

9.     1.2, b суреттегі сұлба арқылы қалыптастыратын жеке импульстің ұзақтығын қалай үш есе ұлғайтуға болады?

 

2 Зертханалық жұмыс. Қалыпты қиыстырма құрылғылар

Жұмыс мақсаты:

-       дешифратордың жұмыс принциптерін түсіну;

-       логикалық функцияларды дешифратор арқылы жүзеге асыру тәртібін игеру;

-       мультиплексордың жұмыс принциптерін түсіну;

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

2.1  Жұмыс орнының құрал-жабдықтары:

-       компьютер, Electronics Workbench бағдарламасы;

-       зертханалық құралым PU-2000;

-       EB-134 және EB-132 тақтайшалары;

-       жалғама сымдар.

 

2.2  Жұмыс тапсырмасы

2.2.1     2.1 суреттегі сұлба арқылы 74138 дешифраторының жұмысын зертте. Бұнда дешифратордың адрес кодын беру үшін шартты түрдегі санауыш пайдаланылған. Сұлбада алдыңғы жұмыста құрылған түйме басу арқылы алынатын импульс қалыптастырғышы (j) пайдаланылған.

2.1 Сурет

2.2.2     74153 мультиплексорының жұмысын логикалық анализатор арқылы зертте (2.2 суретті қара). Бұнда 1 санауышы – информациялық сигналдар беруге, ал 2 санауышы адрес коды мен рұқсат беруге пайдаланылған.

2.2 Сурет

2.2.3     EB-134 тақтайшасында орналастырылған дешифратордың жұмыс логикасын іс жүзінде зертте:

2.2.4     EB-134 тақтайшасын зертханалық құрылымға орналастырып, онда дешифратор жұмысын зерттеуге қажетті жалғамдар қой (2.3 суретті қара). Бұнда 1 санауышы, дешифраторға адрес коды (22A1, 21A0) мен басқару сигналын (20EN) беретін, параллель енгізбелі регистр ретінде пайдаланылады. Оның жалғанымдары тақтайша ішіне енгізілген;

                                                        2.3 Сурет

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

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

2.2.5     EB-134 тақтайшасында орналастырылған мультиплексордың жұмыс логикасын іс жүзінде зертте:

-       мультиплексордың жұмыс режимдерін зерттеуге қажетті жалғанымдарды орналастыр (2.4 суретті қара). Бұнда санауыш мультиплексорға адрес кодын (22A1, 21A0) беруге пайдаланылады.  Оның жалғанымдары тақтайша ішіне енгізілген. Мультиплексорды жандандыру үшін оның рұқсат кірісін (EN) “жер сымына”  қосу керек;

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

2.4 Сурет

2.3  СӨЖ тапсырмалары

2.3.1     Қызметі кесте түрінде берілген құрылғының біреуін (2.1 кестесінен оқытушының ұсынған варианты бойынша) 74138 дешифраторы арқылы құр. Сұлбаға зерттеуге қажетті элементтер жалғап, оның жұмысын талда.

2.3.2     Қызметі кесте түрінде берілген құрылғының біреуін (2.1 кестесінен оқытушының ұсынған варианты бойынша) 74153 мультиплексоры арқылы құр. Сұлбаға зерттеуге қажетті элементтер жалғап, оның жұмысын талда.

2.1 К е с т е

A

B

C

F1

F2

F3

F4

0

0

0

1

0

1

0

0

0

1

1

1

0

1

0

1

0

0

1

1

0

0

1

1

1

0

1

1

1

0

0

0

1

0

1

1

0

1

1

1

1

0

1

1

0

1

0

0

1

1

1

1

0

1

1

1

2.4  Тексерім сұрақтары

1.     Дешифратордың жұмыс принципін түсіндір.

2. Оқытушының көрсеткен сипаттамасы бойынша логикалық элементтер арқылы дешифратор сұлбасын құр.

3. Мультиплексордың жұмыс принципін түсіндір.

4. Логикалық элементтер мен дешифратор арқылы мультиплексор сұлбасын құр.

5. Жүзеге асырылатын функцияның айнымалыларының саны мультиплексордың адрестік кірісінің санына тең жағдайға ӘЛМ-ды баптау тәсілін түсіндір.

6. Жүзеге асырылатын функцияның айнымалыларының саны мультиплексордың адрестік кірісінің санынан артық жағдайға ӘЛМ-ды баптау тәсілін түсіндір.

3 Зертханалық жұмыс. Тізбектеме құрылғылар

Жұмыс мақсаты:

-       асинхронды триггерлердің құрылым приинциптерін және жұмыс режимдерін игеру;

-       статикалы басқарылатын синхронды триггерлердің құрылым приинциптерін және жұмыс режимдерін игеру;

-       динамикалы синхронды триггерлердің жұмыс режимдерін анықтау;

-       освоение различных режимов ввода информации в регистры;

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

-       санауыштың санау модулін құрылымдық өзгерту принциптерін игеру.

3.1  Жұмыс орнының құрал-жабдықтары:

-       компьютер, Electronics Workbench бағдарламасы;

-       зертханалық құралым PU-2000;

-       EB-133 тақтайшасы;

-       жалғама сымдар.

3.2  Жұмыс тапсырмасы

3.2.1     NAND элементтері арқылы синхронды RS-триггер сұлбасын жинап да (3.1 суретті қара), оның кіріс сигналдарының деңгейін өзгерте отырып, жұмыс режимдерін зертте. Бұл және келесі жұмыстарда логикалық деңгейлер көзі “0_1” блогы түрінде безендірілген.

  

3.1 Сурет

3.2.2     7474 микросұлбасындағы D-триггерлердің біреуінің жұмыс режимдерін логикалық талдауыш арқылы зертте (3.2 суретті қара).

Талдау алдында R және S ауыстырғыштары бірлік жағдайға қойылу керек. Талдау кезінде бұл ауыстырғыштарға сәйкесті түйменің біреуін екі рет тез басу арқылы триггерді бірлік немесе нөлдік жағдайға асинхронды қою керек

3.2 Сурет

3.2.3     D-триггердің теріс шығысын информациялық кірісіне тұйықтап, оның санау режиміндегі жұмысын талда (3.3 суретті қара).

3.3 Сурет

3.2.4     JK-триггердің жұмыс режимдерін зертте (3.4 суретті қара).

Талдау кезінде триггерді бірлік немесе нөлдік жағдайға қою оның R және S кірістеріндегі сигнал деңгейін қысқа мерзімге өзгерту арқылы жүзеге асыру керек (3.2.2-дегі сияқты). 

3.4 Сурет

3.2.5     Келесі төжірибелерде пайдалану үшін динамикалық дерек көзі (Data) мен сәйкесті бағытты жеке импульс қалыптастырғыштарын (j және t) қосалқы сұлбалар түрінде құр (3.5 суретті қара).

3.5 Сурет

3.2.6     7493 санауышын зерттеу сұлбасын құр (3.6 суретті қара). C түймесі арқылы тактілік сигналдар беріп, санауыштың жұмысын тексер. Триггер микросұлбасының R01 және R02 шықпаларындағы сигналдардың қызметін тексер.

3.6 Сурет

3.2.7     74169 аударылма санауышын зерттеуге арналған сұлбаны жинап (3.7 суретті қара), оның жұмыс режимдерін тексер.

3.7 Сурет

3.2.8     74194 әмбебап регистрін зерттеуге арналған сұлбаны жинап (3.8 суретті қара), оның жұмыс режимдерін тексер.

3.8 Сурет

3.2.9      EB-133 тақтайшасын зертханалық құралымға орналастырып, ондағы оқытушы ұсынған құрылғылардың (D- және JK-триггердің, санауыш пен регистрдің) жұмыс режимдерін тексер.

3.3  СӨЖ тапсырмалары

3.3.1     Санау модулін алдын-ала қою мүмкіндігі бар санауыш сұлбасын құр.

3.3.2     74194 микросұлбаларының негізінде сегізразрядты регистр сұлбасын құр. Сұлбаға зерттеуге қажетті элементтер орналастырып, оның жұмысын тексер.

3.4  Тексерім сұрақтары

1.     Тура және теріс кірісті асинхронды RS-триггердің құрылымын және жұмыс режимдерін түсіндір.

2.     Статикалы басқарылатын синхронды RS-триггердің құрылымын және жұмыс режимдерін түсіндір.

3.     Статикалы және динамикалы басқарылатын триггерлердің айырмашылығын түсіндір.

4.     D-триггерді санау триггері ретінде қалай пайдалануға болады?

5.     D- және JK-триггерлердің микросұлбаларының R және S кірістерін-дегі сигналдар қандай қызмет атқарады?

6.     Регистрге информацияны тізбекті және параллель енгізу принциптерін түсіндір.

7.     Санау модулі 13 болатын санауыш қалай құрылады?

 

4 Зертханалық жұмыс. Жадылық құрылғылар

Жұмыс мақсаты:

-       ROM жадыларының құрылым принциптерін игеру;

-       PROM жадыларын бағдарлау тәртібін игеру;

-       жады жүйелерінің негіздік құрылымдарымен танысу және олардың құрылу принциптерін игеру.

4.1  Жұмыс орнының құрал-жабдықтары и файлы:

-       компьютер, Electronics Workbench Professional бағдарламасы;

-       ROM(M) 16x7.ewb файлы;

-       PROM 16x7.ewb файлы;

-       RAM 2D_8x4.ewb файлы;

-       RAM_3D_16x4.ewb файлы;

-       RAM 2DM_32x4.ewb файлы.

4.2  Қажетті мәліметтер мен әдістемелік ұсынылымдар

Зертханалық жұмыстың бірінші тапсырмасы, оналтылық символдардың  7-сегментті индикаторда көрсетілуіне пайдаланылатын, өзгермейтін информация сақталған, тұрақты жадылық құрылғының (ТЖҚ) құрылымын және оның жұмыс принциптерін игеруге арналған (4.1 суретті қара).

4.1 Сурет

ТЖҚ блогы (қосалқы ROM_16x7 схемасы), сәйкесті  аталымды қосалқы сұлбалар түрінде безендірілген, 16 шығысты дешифратордан (74154 микросұлбасы) және 16x7 түрінде ұйымдастырылған жады матрицасынан тұрады. Дешифратордың жұмысына рұқсат E (Enable) түймесінен алынатын сигналдың оң деңгейімен қамтамасыз етіледі. Жады жолдарының (7-разрядты ұяшықтардың) адресі 4-разрядты санауыш (қосалқы add4 сұлбасы) арқылы қалыптастырылады.

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

4.2 Сурет

Микросұлбаны бағдарлау келесі тәртіппен жүргізіледі:

-       іске қосу (Activate simulation) түймесін басу арқылы схеманы жандандыр;

-       W (Write/Read) түймесімен құрылғыны бағдарлау режиміне ауыстыр (сәйкесті жарықдиоды жанады);

-       жады матрицасы жолының адресін қой;

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

-       P (programming) түймесін тез басу арқылы таңдалған жолдың бағдарлануын (информация тігілуін) қамтамасыз ет.

-       сегмент түймелерін бастапқы қалыпты жағдайына қайтар;

-       клавишей W (Write/Read) түймесімен құрылғыны оқу режиміне ауыстырып, жады матрицасының жолдарында тігілген информацияны тексер.

Зертханалық жұмыстың келесі тапсырмалары жады жүйелерінің әртүрлі құрылымдарымен (2D, 3D, 2DM) және олардың жұмыс принциптерімен танысуға арналған. Олар сәйкесті моделдер (4.3-4.5 суреттерді қара) арқылы орындалады.

2D құрылымды жады жүйесін зерттеуге арналған сұлба (4.3 суретті қара) сәйкесті қосалқы сұлбалармен безендірілген келесі блоктардан тұрады:

-       санауыш негізіндегі үшразрядты адрес қалыптастырғышы (add3);

-       санауыш негізіндегі төртразрядты дерек көзі (data);

-       құрамына сегізшығысты дешифратор (dc8) және регистрлер негізіндегі 8 ұяшықтан (rg4) тұратын жады ұяшықтарының матрицасы (8x4) кіретін жады жүйесі RAM_8x4. Жады матрицасының әрбір ұяшығында орналастырылған индикатор тәжірибе кезінде жады ұяшықтарының таңдалымын бақылауға мүмкіндік береді.

4.3 Сурет

3D  құрылымды жады жүйесін зерттеуге арналған сұлба (4.4 суретті қара) сәйкесті қосалқы сұлбалармен безендірілген келесі блоктардан тұрады:

-       санауыш негізіндегі төртразрядты адрес қалыптастырғышы (add4);

-       санауыш негізіндегі төртразрядты дерек көзі (data);

-       құрамына қосар дешифратор (2dc4) және регистрлер негізіндегі 16 ұяшықтан (rg4) тұратын жады ұяшықтарының матрицасы (16x4) кіретін жады жүйесі RAM_16x4.

4.4 Сурет

2DM құрылымды жады жүйесін зерттеуге арналған сұлба (4.5 суретті қара) құрамында келесі блоктар болады:

-       2DM құрылымды жады блогы RAM_32x4;

-       деректерді дайындау блогы Prepare;

-       басқару блогы Control.

RAM_32x4 жады блогының құрамы:

-       жады элементтерінің матрицасы 32х4;

-       жолды дешифрациялау блогы dc8;

-       жолдан ұяшық таңдау (оқу кезінде) блогы mux4.

32х4 жады матрицасында  (логика жағынан) 8 жол болады, әрбір жолда төрт 4-разрядты жады ұяшығынан rg4 тұратын cell_4x4 блогы орналасқан. Іс жүзінде 32х4 жады блогы (жалғау және қарастыру ыңғайлылығы үшін) төрт cell_4x4 блогынан тұратын екі 16х4 блогының біріктірмесі түрінде ұйымдастырылған. Жады матрицасының әрбір ішкі блогы индикатормен қамтылған, олар тәжірибе кезінде жады ұяшықтарының таңдалымын бақылауға мүмкіндік береді.

Жады жолын таңдауға арналған dc8 блогы сегіз шығысты дешифратор.

4-кірісті мультиплексорлар негізінде құрылған mux4 блогы жандан-дырылған жолдан қажетті ұяшықты таңдауға мүмкіндік береді.

Prepare блогы жады матрицасының жолына қатар жазуға арналған төрт 4-разрядты сөз дайындау қызметін атқарады. Дайындау кезеңінде бұл сөздер уақытша төрт 4-разрядты in аталымды жады ұяшығынан тұратын ішкі in_4 блогында сақталады. Бұл ұяшықтардың біреуін таңдау дешифраторлық блока 0_3 блогымен сілтенетін dc4 блогы арқылы жүзеге асырылады.

Control блогында басқару түймелері мен құрылғының жұмысын қамтамасыз етуші қоымша элементтер бірктірілген. Ол үш режимде жұмыс режимінде істей алады – жазуға деректер дайындау, жазу және оқу.

 

4.5 Сурет

Деректер дайындау режимі келесі түрде орындалады:

-       P (Prepare) түймесімен құрылғыны деректер дайындау режиміне ауыстыр (сәйкесті индикатор жанады);

-       I (In) түймесімен in_4 блогындағы төрт ұяшықтың біреуін таңда (сәйкесті индикатор көрсетеді);

-       С (CLK) түймесімен осы ұяшыққа data блогында қалыптасқан бір санды жаз.

Жазу/оқу режиміне ауыстыру P тұймесін қайта басумен жүзеге асырылады (индикатор сөнеді).

Жазу режимінде:

-       A түймесімен жады матрицасының қажетті жолын таңда (сәйкесті 7-сегментті индикатор көрсетеді);

-       С (CLK) түймесімен дайындалған деректерді жады матрицасының таңдалған жолына жаз.

Оқу режимінде:

-       клавишей A түймесімен жады матрицасының қажетті жолын таңда (сәйкесті 7-сегментті индикатор көрсетеді);

-       S (Select) түймесімен жады матрицасының жандандырылған жолынан нақтылы ұяшықты таңда (сәйкесті 7-сегментті индикатор көрсетеді).

4.3  Жұмыс тапсырмасы

4.3.1     ROM жадысының құрылым принциптерімен танысып, онымен жұмыс істеу тәртібін игер:

-       ROM(M) 16x7.ewb файлын ашып, ондағы әртүрлі қосалқы блоктардың (4.1 суретті қара) құрылымымен таныс;

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

4.3.2     PROM жадысының құрылым принциптерімен танысып, оны бағдарлау тәртібін игер:

-       PROM 16x7.ewb файлын ашып (4.2 суретті қара), ондағы chip16x7 матрицасы мен бағдарлау құрылғысының (programmer) құрылымымен таныс;

-       жады матрицасының жолдарын келесі тізімдегі символдарды көрсетуге бағдарла: L, J, H, P, S, U, –, _, e, n, q, r және т.б.

4.3.3      2D құрылымды жады жүйесінің құрылу принциптерін игер:

-       RAM 2D_8x4.ewb файлын ашып, ондағы 2D құрылымды жады жүйесінің (4.3 суретті қара) құрамындағы жеке блоктарды ашып, олардың құрылымымен таныс;

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

4.3.4     3D құрылымды жады жүйесінің құрылу принциптерін игер:

-       открыть файл RAM 3D_16x4.ewb файлын ашып, ондағы 3D құрылымды жады жүйесінің (4.4 суретті қара) құрамындағы жеке блоктарды ашып, олардың құрылымымен таныс;

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

4.3.5     2DM құрылымды жады жүйесінің құрылу принциптерін игер:

-       открыть файл RAM 2DM_32x4.ewb файлын ашып, ондағы 2DM құрылымды жады жүйесінің (4.5 суретті қара) құрамындағы жеке блоктарды ашып және сәйкесті түсіндірме мәліметті оқи отырып, олардың құрылымымен таныс;

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

4.4  СӨЖ тапсырмалары

4.4.1     Стектік режимде істеуші жады құрылғысының сұлбасын құр.

4.4.2     Нақтылы адрестен бастап, ұяшықтарына тізбелеп жазу мүмкіндігі бар жады құрылғысын құр.

4.5  Тексерім сұрақтары

1.     Жады құрылғыларының негізгі параметрлерін түсіндір.

2.     ROM жадысының қызметін түсіндір?

3.     ROM құрылымдарында қандай жады элементтері пайдаланылады?

4.     PROM жадысы қайда және қалай бағдарланады?

5.     EPROM және EEPROM жадыларының айырмашылығы қандай?

6.     Жады элементтерінің қандай сұлбақұралысы RAM жадысының ең жоғарғы тезәрекеттікті қамтамасыз етеді?

7.     Бірөлшемді және екіөлшемді RAM жадыларының құрылым ерекшеліктері қандай?

8.     2D және 3D құрылымдарын құндылығы мен кемістігіне байланысты салыстыр.

9.     2DM жадысының құрылым принциптерін және оның негізгі құндылығын түсіндір.

 

5 Зертханалық жұмыс. Информация енгізу құрылғысы

Жұмыс мақсаты:

-       мәртебелі шифраторлар негізіндегі информация енгізу құрылғысы-ның құрылым принциптерін игеру;

-       құрылғының жұмысын жетілдіру бағыттарын үйрену;

-       көпрежимді құрылғы құру жолын үйрену.

5.1  Жұмыс орнының құрал-жабдықтары и файлы:

-       компьютер, Electronics Workbench Professional бағдарламасы;

-       Input Unit (addressable).ewb файлы;

-       Input Unit (multiplexing).ewb файлы;

-       Input Unit (integration).ewb файлы.

5.2  Қажетті мәліметтер мен әдістемелік ұсынылымдар

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

Сұлбаның негізгі блоктарына, түймелер жинамы түріндегі және шифраторлардан тұратын қосалқы 0_F және СD блоктары жатады. 0_F блогындағы әрбір түйменің сигналдық жолында ұзақтығы 10 ns теріс импульстердің қалыптастырғышы (l символымен белгіленген қосалқы схемалар) орналастырылған.

CD блогының негізін екі мәртебелі 74148 шифраторы арқылы құрылған кодылау сұлбасы қалайды. Ұзақтығы 10 ns жазу импульстері де осында код қалыптасуының басынан (түйменің баылу мезетінен) 20 ns кідіріспен өндіріледі. Қалыптастырылған импульстердің параметрлері (жазу сигналының ығыстырылымы) басылған түйменің кодының уақытында қалыптасуын және оның жадыға жазылуын қамтамасыз етеді.

5.1 Сурет

Осы жұмыста қарастырылатын келесі сұлбада (5.2 суретті қара) адрестің де, жазылатын информацияның да түймелер арқылы қалыптастырылу мүмкіндігі жүзеге асырылған, яғни адрес пен деректер жалғыз желі арқылы кезектесіп (мультиплексорланып) жіберіледі. Бұнда 0_F және СD блоктары қосалқы Input сұлбасына біріктірілген.

5.2 Сурет

Мультиплексорлау G түймесінен алынған сигнал деңгейімен анықталады: G=1 кезінде – адрес регистріне (қосалқы RG_addr схемасына) жазылатын адрес жіберілімі; ал G=0 кезіндежадыға жазылатын дерек жіберілімі.

Құрылғының алдыңғы екі вариантын біріктірген, одан әрі жетілдірілген варианты келесі сұлбада (5.3 суретті қара) қарастырылады. Бұл сұлбада адрес қалыптастырғышын екі түрлі режимде жүзеге асыруға боладысанауыштан (add4) және кодылау блогынан (Inter).  Бұлардың арасында ауыстыру, яғни оларды мультиплексорлау K түймесімен басқарылатын үшжағдайлы элементтер негізінде құрылған екі блок (қосалқы 3st схемасы) арқылы жүзеге асырылады (K=0 кезіндеadd4 және K=1 кезіндеInter). Екі жағдайда да адрес жіберілімі G=1 кезінде, ал адрес жіберіліміG=0 кезінде жүзеге асырылады.

5.3 Сурет

5.3  Жұмыс тапсырмасы

5.3.1     Шифратор негізіндегі енгізу құрылғысының құрылым принциптерін игер:

-       Input Unit (addressable).ewb файлын ашып (5.1 суретті қара), сұлбадағы қосалқы сұлбалардың құрылымымен таныс;

-       алдымен S түймесі арқылы жады ұяшығының адресін қойып, сосын таңдалған жады ұяшығына сәйкесті түймені (0 … F) басу арқылы нақтылы информация жазып, құрылғы жұмысын тексер.

5.3.2     Әртүрлі информацияның кезектестіріліп жіберілу тәртібін игер:

-       адрес пен мен дерек жіберілімі кезектестірілген сұлба келтірілген, Input Unit (multiplexing).ewb файлын ашып (5.2 суретті қара), сұлбадағы қосалқы сұлбалардың құрылымымен таныс;

-       алдымен жады ұяшығының адресін қойып (G=1 кезінде), сосын таңдалған жады ұяшығына сәйкесті түймелер (0 … F) арқылы нақтылы информация жазып (G=0 кезінде), құрылғы жұмысын тексер.

5.3.3     Информация енгізілімінің тәртібі өзгертілмелі құрылғыны зертте:

-       алдыңғы екі құрылғы біріктірілген сұлба келтірілген, Input Unit (integration).ewb файлын ашып (5.3 суретті қара), сұлбадағы қосалқы сұлбалардың құрылымымен таныс;

-       құрылғының әртүрлі режимдердегі жұмысын зертте.

5.4  СӨЖ тапсырмалары

5.4.1     Түймелерді кезектеп тексеру принципімен (мультиплексорлар негізінде) информация енгізу құрылғысын құр.

5.5  Тексерім сұрақтары

1.     CD блогындағы сұлбаның жұмысын түсіндір.

2.     Қосалқы 3st сұлбасының қызметін және оның құрылым элементтерінің жұмысын түсіндір.

3.     Зертханалық жұмыста қарастырылған құрылғылардың жұмыс принципін түсіндір.

 

6 Зертханалық жұмыс. MP4M моделі

Жұмыс мақсаты:

-       микропроцессорлық жүйе (МПЖ) моделінің құрылымымен танысу;

-       МПЖ моделімен жұмыс істеу тәртібін игеру;

-       әртүрлі командалардың іс-әрекетін түсіну;

-       МПЖ моделінде айналымды бағдарламалы құрылымдардың ұйымдастырылу принциптерін игеру;

-       деректер массивімен жұмыс істеу тәртібін игеру;

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

-       деректердің нақтылы разрядындағы бірлік битті іздеу бағдарламасының құрылымын түсіну.

6.1  Жұмыс орнының құрал-жабдықтары и файлы:

-       компьютер, Electronics Workbench Professional бағдарламасы;

-       MP4M.ewb файлы.

6.2  Қажетті мәліметтер мен әдістемелік ұсынылымдар

Құрамына микропроцессор (MP4M), дерек енгізу құрылғысы (In), жады жүйесі (Mem) және жүйенің жұмыс режимін таңдау блогы енгізілген, 4-разрядты микропроцессорлық жүйенің моделі 6.1 суретте келтірілген .

 Рисунок 6.1

Микропроцессор құрамына келесі блоктар кіреді:

-       арнайы қызметтік регистрлер жинағы (RGs, Registers);

-       арифметикалық-логикалық құрылғы (ALU, Arithmetic-Logic Unit);

-       команда регистрі (BUF, Buffer Register);

-       команда дешифраторы (DC_16, Decoder 16-bit);

-       таймер (CLK, Clock);

-       микробағдарламалық құрылғы (Combi, Combinational Circuit.

Әрбіреуі нақтылы қызмет атқаруға арналған регистрлер жинағының (RGs) құрамына келесі регистрлер кіреді:

-       A регистрі аккумулятор (Accumulator) қызметін атқарады, онда арифметикалық және логикалық операцияларға қатысты операндтардың біреуі немесе операциялардың орындалу нәтижесі сақталады. Аккумуляторға дерек жадыдан (LD A командасы) немесе ALU-дан (кезекті арифметикалық немесе логикалық операция орындалғаннан кейін) енгізіледі;

-       A1 регистрі айналымды қосылымдардың ұйымдастырылуы кезінде туатын тасылымдарды жинауға арналған. Ол бағдарламаның іске қосылуы кезінде және аккумуляторға (A регистріне) LD A командасымен дерек енгізілуі кезінде тазартылады. Ондағы дерек Space түймесін қысқа уақытқа басу арқылы аккумулятор көрсеткіштеріне шығарылады;

-       B регистрі микропроцессордың ішкі регистрлері мен жады арасындағы дерек жіберілімдерінің адрес регистрінің қызметін атқарады (LD C, LD IP, LD SP, LD A командалары). LD C, LD SP, LD A командалары орындалғаннан кейін B регистріндегі сан ұлғайтылады (яғни, оған бір қосылады). Бұл регистрге дерек LD B командасымен енгізіледі, оған адрес регистрі ретінде C регистрі пайдаланылады. Ол бағдарламаның іске қосылуы кезінде тазартылады;

-       C регистрі арифметикалық және логикалық операцияларға қатысты екінші операндтың адрес регистрінің қызметін атқарады. Сәйкесті командалар орындалғаннан кейін С регистріндегі сан ұлғайтылады, бірақ оның бағытын (B регистрінен ерекше) өзгертуге болады, ол I түймесі арқылы қойылады және оның жағдайы (I) - Dcr/Inr көрсеткішінде көрсетіледі: I=0 кезінде тура бағытта (Increment), ал I=1 кезінде теріс бағытта (Decrement). Ондағы санды өзгермеген түрінде де қалдыруға болады, бұндай жағдай туралы жүйенің жұмыс режимдерін суреттеу кезінде айтылады. Бұл регистрге дерек LD C командасымен жүзеге асырылады. Бағдарламаның іске қосылуы кезінде бұл регистр 1111 жағдайына қойылады (XOR элементтері арқылы). Кез келген бағдарламаның құрамында дерек тарату командаларының болатындығынан, бағдарламаның бірінші командасы B регистріне дерек енгізу командасы (LD B) болу керек. C регистрінің сұлбасындағы  төрткірісті OR элементі регистрдің нөлдік жағдайын анықтауға арналған, ол арқылы айналымды операциялардың ұйымдастырылуы кезінде шартты ауысу жүзеге асырылады;

-       SP регистрі стек көрсеткішінің (Stack Pointer) қызметін атқарады, яғни PUSH және POP командалуы кезінде адрес регистрінің рөлінде болады:  ондағы адрес PUSH командасының орындалар алдында кемітіледі (Predecrement) және POP командасы орындалғаннан кейін ұлғайтылады (Postincrement). Загрузка этого регистра осуществляется командой LD SP. Бұл регистрге дерек LD SP командасымен жүзеге асырылады. Бағдарламаның іске қосылуы кезінде бұл регистр 1111 жағдайына қойылады;

-       IP регистрі команда көрсеткішінің (Instuction Pointer) қызметін атқарады. Кезекті команданың коды жадыдан шығарылып, команда регистріне сақталғаннан кейін ондағы адрес ұлғайтылады. Бұл регистрге дерек LD IP командасымен жүзеге асырылады. Ондағы адрес, жүйенің кейбір альтернативті жұмыс режимдерінде анықталатын, шартты ауысу кезінде де өзгертіледі. Ол бағдарламаның іске қосылуы кезінде тазартылады.

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

Арифметикалық-логикалық құрылғы (ALU, Arithmetic-Logic Unit) арифметикалық және логикалық операциялардың орындалуын жүзеге асырады. Оның құрамында сәйкесті операциялардың орындалуын жүзеге асырушы бөліктемелер (sum, not, and, or, xor) және операндтар мен орындалған операцияның нәтижесін уақытша сақтауға арналған буферлік регистрлер болады.

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

Таймер (CLK) командалардың орындалуына қатысты құрылғыларға жіберілетін басқару сигналдарының уақыттық таралымын анықтайды.

Қиыстырмалы микробағдарламалық құрылғы (Combi, Combinational Circuit) кезекті команданың орындалуын қамтамасыз етуші кеңістіктік және уақыттық басқару сигналдарын қалыптастырады.

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

Жадыны басқару жүйесі (MCon, Memory Control) жады блоктарының (команда кодтарының немесе деректердің) біреуін және енгізу құрылғысынан құрылғысынан немесе микропроцессордан түсетін басқару сигналдарына байланысты олардың жұмыс режимінің (ввода, записи, считывания) таңдалуын қамтамасыз етеді.

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

 Енгізу құрылғысынан жады жүйесіне ақпарат енгізу M=1 кезінде жүргізіледі. Егер бұл кезде P=1 болса, онда ақпарат – бағдарлама жадысына (бағдарлама коды F тоқтату командасымен аяқталу керек), ал P=0 кезінде дерек жадысына енгізіледі. Жады құрамын тексеру Space түймесін қысқа уақытқа басып, жады ұяшығының адресін өзгерту арқылы жүргізіледі. P түймесінің жағдайы өзгертілгенде жады адресі тазартылады.

Бағдарламаны іске қосу M түймесін M=0 жағдайына ауыстыру арқылы жүзеге асырылады. Егер бұл кезде P=1 болса, онда арифметикалық және логикалық командалардың орындалуы кезінде C регистрінің жағдайы өзгертіледі (I мәніне сәйкесті), ал P=0 кезінде оның жағдайы өзгермеген жағдайда қалады.

S=0 кезінде ADS және ACS командалары арқылықосу операциялары, ал  S=1 – алу операциялары орындалады.

V=0 кезінде AND командасы арқылы екі операнд арасындақалыпты логикалық көбейту операциясы, ал V=1 кезінде деректің нақтылы разрядындағы бірлік битті табуға арналған биттік операция жүзеге асырылады. Бұл биттік операцияның орындалуы үшін аккумуляторға қажетті разрядында ғана бір тұрған санауыш енгізілу керек. Суреттелген биттік операция сыртқы құрылғыдан келетін сұраныс сигналын немесе іс жүзіндегі қолданба жүйелердегі құптау сигналын тануды елестетеді.

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

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

1.1 К е с т е – MP4M микропроцессорының командалары

Мн-ка

Код

Операциялар

Hex

V=0

P

S

V=1; I=1

LD B

0

B←[(C)];  C(C)+1

 

 

 

LD C

1

C←[(B)];  B(B)+1

 

 

 

LD IP

2

IP←[(B)]

 

 

 

LD SP

3

SP←[(B)]; B(B)+1

 

 

 

LD A

4

A←[(B)];  B(B)+1

 

 

 

ST

5

[(B)]←(A);B(B)+1

 

 

 

INR

6

A←(A)+1

 

 

 

NOT

7

A←

 

 

 

ADS

8

A←(A)±[(C)]; TC

P=1: C←var(I)

P=0: C = invar

S=1: SUB (–)

S=0:ADD,ADC (+)

Zc = 0:       IP←IP+1

ACS

9

A←(A)±[(C)±TC; TC

 

 

 

AND

A

A←(A)۸[(C)]

 

 

Zc۸Za=0:  IP←IP+1

OR

B

A←(A)۷[(C)]

 

 

 

XOR

C

A←(A)[(C)]

 

 

 

PUSH

D

SP←(SP)–1; (SP)]←(A)

 

 

 

POP

E

A←(SP)]; SP←(SP)+1

 

 

 

HLT

F

IP = invar

 

 

 

Т а б л и ц а 6.2 – MP4M микропроцессорының жұмыс режимдерінің қойылуы

Кілт, инд-р

M/R = 1

M/R → 0: Running: A,B,IP ← 0; C,SP ← F

P=1:   C←var(I);               P=0:     C = invar

S = 0

P/D = 1:

MemPr←IN

P/D = 0:

MemD←IN

Addition         (+)

A ← (A) + [(C)]

S = 1

Subtraction     (–)

A ← (A) – [(C)]

I = 1

PostDecrement  C(C) –1

C←(C)–1; (C)=0: Zc ← 0

I = 0

PostIncrement   C(C) +1

C ← (C) + 1

V = 0

Logical Operation

A ← (A) {۸ / ۷ / } [(C)]

V = 1

Verifying of Byte

(A)=0010…bi = 1: Za ← 0

6.3  Жұмыс тапсырмасы

6.3.1     Ауыстыру командаларының іс-әрекетімен таныс:

-       EWB5PRO бағдарламасын ашып, MP4M.ewb файлын таңда. Жүйенің (6.1 суретті қара)  негізгі және ішкі блоктарын ашып және жүйе жөніндегі мәліметтерді оқу арқылы олардың құрылымымен, құралым бөліктемелерімен және жұмыс принциптерімен таныс;

-       EWB5PRO бағдарламасын  түймесімен жандандырып, жадыға жазылған информацияны жоғалтып алмас үшін, оны жұмыс аяғына дейін сөндірме MP4M.ewb файлын таңда;

-       M және P түймелерін M=1 және P=1 жағдайына қою арқылы жүйені бағдарлама енгізу режиміне дайындап, жадыға келесі бағдарламаның команда кодтарын енгіз;

 

Адрес

Команда

Код

Адрес

Командалар

Код

0

LD B

0

5

POP

E

1

LD A

4

6

ST

5

2

LD SP

3

7

PUSH

D

3

LD C

1

8

PUSH

D

4

POP

E

9

HLT

F

 

-       M және P түймелерін M=1 және P=1 жағдайына қою арқылы жүйені бағдарлама енгізу режиміне дайындап, жадыға келесі бағдарламаның команда кодтарын енгіз;

-       жады түрін P түймесімен ауыстыра отырып, жадыға енгізілген ақпараттың (бағдарлама мен деректердің) дұрыстығын Space түймесін қысқа уақытқа басу арқылы тексер;

-       алдымен P түймесін P=1 жағдайына қойып, сосын M түймесін M=0 жағдайына ауыстыру арқылы бағдарламаны іске қос. Көрсеткіштердің жағдайын бақылай отырып, бағдарлама жұмысын тексер. Қажетті жағдайда бағдарлама жұмысын  түймесімен тоқтата тұруға немесе M түймесін екі рет басу арқылы бағдарлама жұмысын қайта бастауға болады;

-       бағдарлама жұмысы тоқтатылғаннан кейін жүйені енгізу жүйесіне ауыстырып, дерек жадысын тексер. Ондағы өзгерістердің себебін анықта;

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

6.3.2     Арифметикалық және логикалық командалардың іс-әрекетімен таныс:

-       жүйені бағдарлама енгізу режиміне дайындап (M=1, P=1), жадыға келесі бағдарламаның команда кодтарын енгіз;

 

Адрес

Командалар

Кодтар

Адрес

Командалар

Кодтар

0

LD B

0

7

ADS

8

1

LD C

1

8

ACS

9

2

LD A

4

9

ACS

9

3

INR

6

A

AND

A

4

INR

6

B

OR

B

5

ADS

8

C

XOR

C

6

ADS

8

D

HLT

F

 

-       жүйені дерек енгізу режиміне ауыстырып (M=1, P=0), жадыға нақтылы бір мәннен басталған сандар тізбесі түріндегі деректер енгіз де, оларды жұмыс дәптеріне жазып ал;

-       енгізілген бағдарламаны іске қос (P=1, затем M=0). Көрсеткіштердің жағдайын бақылай отырып, бағдарлама жұмысын тексер. Қажетті жағдайда бағдарлама жұмысын  түймесімен тоқтат;

-       бағдарлама жұмысы тоқтатылғаннан кейін Space түймесін қысқа уақытқа басу арқылы A1 регистріндегі санды анықта (оны бағдарламаның жұмыс барысында да тексеруге болады). Ондағы нәтижені түсіндір. Оған қиындық туса, онда M түймесін екі рет басу арқылы бағдарламаны қайтадан іске қосып, қосу операцияларының кезінде туатын тасымалдарды ұқыпты бақыла;

-       жүйені бағдарлама енгізу режиміне ауыстырып, S түймесін S=1жағдайына ауыстыр, нәтижесінде қосу бағдарламасы алу бағдарламасына айналады, яғни ADC және ACS командаларының орындалуы кезінде алу операциялары (тасымалды және тасымалсыз) орындалады;

-       бағдарламаны іске қос (P=1, затем M=0). Көрсеткіштердің жағдайын бақылай отырып, бағдарлама жұмысын тексер. Қажетті жағдайда бағдарламаны іске қайта қос;

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

6.3.3     Айналымды бағдарламалық құрылымдардың ұйымдастырылу принциптерін игер:

-       жүйені бағдарлама енгізу режиміне дайындап, жадыға N санның (бұл жағдайда N=5) қосындысын анықтауға арналған келесі бағдарламаның команда кодтары мен деректерді енгіз;

 

Адрес

Командалар

Кодтар

Адрес

Деректер

Адрес

Деректер

0

LD B

0

0

6

1

LD C

1

1

8

7

5

2

ADS

8

2

D

8

2

3

LD IP

2

3

A

4

HLT

F

4

9

 

 

 

 

 

5

B

F

7

 

-       енгізілген бағдарламаны P=1, S=0, I=1 жағдайында іске қос. Бағдарлама тоқтатылғаннан кейін нәтижені кіші тетрадасы аккумуляторда (A регистрінде) болады, ал A1 регистріндегі үлкен тетрадасын Space түймесін тез басу арқылы анықтауға болады;

-       1…5 адресті ұяшықтардағы сандардың қосындысын қолмен есептеу арқылы анықтап, оны жүйеде алынған нәтижемен салыстыр;

-       жүйені енгізу режиміне ауыстырып, жадыға 1…5 адресі арасында орналастырылған деректердің ішінен үшінші разрядында бір тұрған санды (бұл жағдайда адресі  2 ұяшықта орналасқан D санын) табу бағдарламасының команда кодтары мен деректерді енгіз;

 

Адрес

Командалар

Кодтар

Адрес

Деректер

Адрес

Деректер

0

LD B

0

0

6

1

LD C

1

1

8

7

5

2

LD A

4

2

D

8

4

3

AND

A

3

A

9

3

4

LD IP

2

4

9

5

HLT

F

5

B

F

7

 

-       енгізілген бағдарламаны іске қос. Көрсеткіштердің жағдайын бақылай отырып, бағдарлама жұмысын тексер. Ізделген сан табылған кезде Bit көрсеткіші жанады да, бағдарлама жұмысын тоқтатады;

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

6.4  СӨЖ тапсырмалары

6.4.1     y=(a1+a2-a3)٨4 өрнегі бойынша есептеу бағдарламасын құрып, әртүрлі дерек мәндерінде (a1, a2, a3) оның жұмысын тексер, бұндағы ٨ деректердің нақтылы разрядындағы (бұл жағдайда үшінші разрядындағы) бірлік мәнді табу операциясының символы.

6.5  Тексерім сұрақтары

1.     Микропроцессорлық жүйе моделінің құрылымын және оның іскерлік блоктарының қызметін түсіндір.

2.     Микропроцессордың ішкі құрылымын және құрама бөліктемелерінің құрылымын түсіндір.

3.     Зерттелген бағдарламадағы ауыстыру командаларының іс-әрекеттерін түсіндір.

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

5.     Оқу моделінде айналымды бағдарламалардың ұйымдастырылу принциптерін түсіндір.

6.     Деректер массивімен жұмыс ұйымдастырылу принциптерін түсіндір.

7.     Сандар қосылымын есептеу бағдарламасының құрылымын түсіндір.

8.     Деректер массивінің ішінен нақтылы разрядында бір орналасқан санды табу бағдарламасының құрылымын түсіндір.

 

 

 

7 Зертханалық жұмыс. Intel 8085 микропроцессорлық жүйесі

Жұмыс мақсаты:

-       Intel 8085 микропроцессорының негізіндегі микропроцессорлық жүйенің (МПЖ) құрылымымен танысу;

-       8085 Simulator IDE симуляторының жұмыс тәртібін игеру;

-       Intel 8085 микропроцессорының командалар жүйесіндегі, сілтеу тәсілі әртүрлі, дерек жіберу командаларының іс-әрекетімен танысу;

-       Intel 8085 микропроцессорының сілтеу тәсілі әртүрлі, арифметикалық командалардың іс-әрекетімен танысу;

-       Intel 8085 микропроцессорының негізіндегі микропроцессорлық жүйенің симуляторының іскерлік мүмкіндіктерімен танысу;

-       Ассемблер тілінде бағдарлауды үйренуге арналған зертханалық құралыммен жұмыс істеу тәртібін игеру.

7.1  Жұмыс орнының құрал-жабдықтары и файлы:

-       компьютер, 8085 Simulator IDE бағдарламасы;

-       зертханалық құралым PU-2000 фирмы Degem Systems;

-       EB-151 және EB-152 тақтайшалары;

-       жалғама сымдар.

7.2  Қажетті мәліметтер мен әдістемелік ұсынылымдар

Жұмыстың виртуалды бөлімін орындау үшін компьютерге 8085 Simulator IDE бағдарламасы орналастырылу керек. Симулятормен жұмыс бастар алдында C:\Program Files\8085 Simulator IDE ішінде студент туралы жеткілікті мәлімет (топ нөмірі, фамилиясы мен аты) берілген аталыммен бума (папка) ашып, алда құрылатын файлдардың барлығын да сонда сақтау керек.  Бұл бұдан әрі сіздің файлдармен жұмысыңызды жеңілдетеді.

Симулятордың құрылымы мен оның іскерлік мүмкіндіктерінің пайдаланылуы зертханалық жұмыстардың орындалу барысында кездесу ретімен суреттеледі. Ал қазір жұмыстың зертханалық құралымда орындалу тәртібін қысқаша суреттей кетелік.

Жұмыс орнын, яғни жүйені зертханалық жұмысты орындауға дайындау келесі тәртіппен жүзеге асырылады:

-       EB-151 тақтайшасын зертханалық құралымға, ал EB-152 тақтайшасын  оның сол жақ жанына орналастыр. Жалғамалар арқылы EB-151 және EB-152 тақтайшаларын қоректендірілу жағынан (+12 V, –12 V, +5 V, GND) біріктір және олардың өзара дерек жіберу мүмкіндігін қамтамасыз ет (RXTX):

-       EB-152 тақтайшасындағы S1 (SIG.ANAL/KB+DISP) ауыстырғышын KB+DISP жағдайына қой (немесе оған көзіңді жеткіз). Құралымдағы қорек көзін қосып, EB-152 тақтайшасындағы дисплейдіңEBHt көрсетіп тұрғанына көзіңді жеткіз;

-       EB-151 тақтайшасындағы микрокомпьютерді ондағы Resetтүймесін тез басу арқылы қайта қос. Жалғанымдардың дұрыс қойылғанында При EB-152 тақтайшасындағы дисплей “Eb-151” көрсетіп тұру керек, ал бұның өзгеше жағдайында жалғанымдардың дұрыстығын тексеру керек.

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

Intel 8085 микропроцессорының кез келген командасының кодын 7.1 кестеден анықтауға болады.

7.1 К е с т е

 

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

 

0

NOP

LXI

B

STAX

B

INX

B

INR

B

DCR

B

MVI

B

RLC

 

DAD

B

LDAX

B

DCX

B

INR

C

DCR

C

MVI

C

RRC

0

1

 

LXI

D

STAX

D

INX

D

INR

D

DCR

D

MVI

D

RAL

 

DAD

D

LDAX

D

DCX

D

INR

E

DCR

E

MVI

E

RAR

1

2

RIM

LXI

H

SHLD

INX

H

INR

H

DCR

H

MVI

H

DAA

 

DAD

H

LHLD

DCX

H

INR

L

DCR

L

MVI

L

CMA

2

3

SIM

LXI

SP

STA

INX

SP

INR

M

DCR

M

MVI

M

STC

 

DAD

SP

LDA

DCX

SP

INR

A

DCR

A

MVI

A

CMC

3

4

MOV

B,B

MOV

B,C

MOV

B,D

MOV

B,E

MOV

B,H

MOV

B,L

MOV

B,M

MOV

B,A

MOV

C,B

MOV

C,C

MOV

C,D

MOV

C,E

MOV

C,H

MOV

C,L

MOV

C,M

MOV

C,A

4

5

MOV

D,B

MOV

D,C

MOV

D,D

MOV

D,E

MOV

D,H

MOV

D,L

MOV

D,M

MOV

D,A

MOV

E,B

MOV

E,C

MOV

E,D

MOV

E,E

MOV

E,H

MOV

E,L

MOV

E,M

MOV

E,A

5

6

MOV

H,B

MOV

H,C

MOV

H,D

MOV

H,E

MOV

H,H

MOV

H,L

MOV

H,M

MOV

H,A

MOV

L,B

MOV

L,C

MOV

L,D

MOV

L,E

MOV

L,H

MOV

L,L

MOV

L,M

MOV

L,A

6

7

MOV

M,B

MOV

M,C

MOV

M,D

MOV

M,E

MOV

M,H

MOV

M,L

HLT

MOV

M,A

MOV

A,B

MOV

A,C

MOV

A,D

MOV

A,E

MOV

A,H

MOV

A,L

MOV

A,M

MOV

A,A

7

8

ADD

B

ADD

C

ADD

D

ADD

E

ADD

H

ADD

L

ADD

M

ADD

A

ADC

B

ADC

C

ADC

D

ADC

E

ADC

H

ADC

L

ADC

M

ADC

A

8

9

SUB

B

SUB

C

SUB

D

SUB

E

SUB

H

SUB

L

SUB

M

SUB

A

SBB

B

SBB

C

SBB

D

SBB

E

SBB

H

SBB

L

SBB

M

SBB

A

9

A

ANA

B

ANA

C

ANA

D

ANA

E

ANA

H

ANA

L

ANA

M

ANA

A

XRA

B

XRA

C

XRA

D

XRA

E

XRA

H

XRA

L

XRA

M

XRA

A

A

B

ORA

B

ORA

C

ORA

D

ORA

E

ORA

H

ORA

L

ORA

M

ORA

A

CMP

B

CMP

C

CMP

D

CMP

E

CMP

H

CMP

L

CMP

M

CMP

A

B

C

RNZ

POP

B

JNZ

JMP

CNZ

PUSH

B

ADI

RST

0

RZ

RET

JZ

 

CZ

CALL

ACI

RST

1

C

D

RNC

POP

D

JNC

OUT

CNC

PUSH

D

SUI

RST

2

RC

 

JC

IN

CC

 

SBI

RST

3

D

E

RPO

POP

H

JPO

XTHL

CPO

PUSH

H

ANI

RST

4

RPE

PCHL

JPE

XCHG

CPE

 

XRI

RST

5

E

F

RP

POP

PSW

JP

DI

CP

PUSH

PSW

ORI

RST

6

RM

SPHL

JM

EI

CM

 

CPI

RST

7

F

 

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

 

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

Микропроцессордың регистрлерінің құрамын тексеру үшін REG түймесін басып, сосын регистр нөмірін енгізу керек, одан кейін дисплейдің деректік аймағында көрсетілген регистрдің құрамы көрсетіледі. Осы сияқты өзге регистрлердің де құрамын қарап шығуға болады. Тексерілетін егистрлердің нөмірін ENTER түймесін басу арқылы тізбелеп те өзгертуге болады (7.2 кестені қара).

7.3   К е с т е        

Регистр нөмірі

Регистрлер

Регистрдің суреттемесі

1

A

Аккумулятор

2

B

Регистр B

3

C

Регистр C

4

D

Регистр D

5

E

Регистр E

6

H

Регистр H

7

L

Регистр L

8

F

Ту регистрі

9

I

Үзіліс жасырмасы

A

PC

Бағдарлама санауышы

B

SP

Стек көрсеткіші

C

HL

Жады көрсеткіші

D

AF

Процессордың ахуал сөзі

E

BC

BC регистрлік жұбы

F

DE

DE регистрлік жұбы

 

Бағдарламаны іске қосу GO түймесін басып, одан кейін бағдарламаның бастапқы адресін енгізіп, сосын ENTER түймесін басу арқылы жүзеге асырылады.

7.4  Жұмыс тапсырмасы

7.3.1     8085 Simulator IDE симуляторына бағдарламаны енгізу тәртібін игеру және дерек жіберу командаларының іс-әрекетімен таныс:

-       симулятор бағдарламасын  әлпеттемесімен аш та, ашылған симулятор терезесінде (2.1 суретті қара) Tools/Assembler таңдап, кезекті Assembler терезесінде File/New таңда;

-       бағыттаманы Tab түймесімен ығыстырып, төмендегі бағдарламаның бірінші командасын енгіз де, Enter түймесін бас. Осы сияқты бағдарламаның келесі командаларын да енгіз. Белгілер жол басында жазылады. Бірнеше блок түрінде құрылған бұл бағдарламада процессор мен жады арасындағы дерек жіберілімдері жүзеге асырылады. Бірінші блокта (Single Writing-1) жадыға тура сілтемелі команда арқылы жеке жіберілім жүзеге асырылады. Екінші блокта (Serial Writing) жадыға жанама сілтемелі команда арқылы дерек массивінің (арифметикалық прогрессияның мүшелері түріндегі) жіберілімі жүзеге асырылады. Дерек массивінің жіберілімінің ыңғайлырақ тәсілі келесі блокта (Single Writing-2) келтірілген. Келесі үш блокта (Data Access, Data Access and Conversion, Single Writing) деректердің жадының бір аймағынан екінші аймағына алғы пайдаланылған командаларға ұқсас командалармен жіберілуі ек кері тәртіппен) жүзеге асырылады. Жазылған бағдарламаны Transfers (Жіберілімдер) аталымымен сақта (File/Save As). Нәтижесінде asm кеңейтілімді файл құрылады.

7.1 Сурет

;WRITING to MEMORIES

SW:   ;Single Writing

         MVI A,0FH;Direct Loading

         STA 00D0H;Direct Writing

         NOP

S1:     ;Serial Writing-1

         MVI C,07h;Data Counter

         LXI D,00D0H;Initial Address

         MVI A,00H;Cleaning

T0:    ADI 13H;Expansion Step

         INX D;Address Increment

         STAX D;Indirect Writing

         DCR C;Monitoring of the Data Counter

         JNZ T0;Continue

         XCHG;Exchange

         NOP

S2:     ;Serial Writing-2

         MVI C,08H;Data Counter

T1:    ADI 09H;Expansion Step

         INX H;Address Increment

         MOV M,A;Indirect Writing

         DCR C;Monitoring of the Data Counter

         JNZ T1;Continue

         NOP

AW:  ;Data Access and Writing

         LXI D,00EFH;Initial Address

         MVI C,08H;Data Counter

T2:    MOV A,M;Indirect Loading

         STAX D;Indirect Writing

         DCX H;Address Decrement

         DCX D;Address Decrement

         DCR C;Monitoring of the Data Counter

         JNZ T2;Continue

         NOP

AC:   ;Data Access, Conversion and Writing

         MVI C,07H;Data Counter

T3:    MOV A,M;Indirect Loading

         RLC;Left Shift

         XCHG;Exchange

         MOV M,A;Indirect Writing

         DCX H;Address Decrement

         DCX D;Address Decrement

         XCHG;Exchange

         DCR C;Monitoring of the Data Counter

         JNZ T3;Continue

         NOP

SA:    ;Single Access and Writing

         LDA 00D0H;Direct Loading

         STA 00E0H;Direct Writing

         HLT;Ending

 

-       Assembler терезесінде Tools/Assemble&Load таңда. Нәтижесінде hex, lst, obj кеңейтілімді файлдар құрылады;

-       симулятордың негізгі терезесінде Tools/Breakpoints Manager таңдап, әрбір блоктан кейін, яғни NOP командасы тұрған жолдарға (7.2 суретті қара), тексерім нүктелерін қой;

7.2 Сурет

-       симулятордың негізгі терезесінде моделдеу жылдамдығын (мысалы, Rate/Normal) таңдап, симуляторды іске қос (Simulation/Start);

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

-       моделдеу жылдамдығын (мысалы, Rate/...) таңдау арқылы симулятор жұмысын жалғастыр.

Қажетті жағдайда (оқытушының ұсынысы бойынша) бағдарламаның әрбір блоктарын жеке орында. Ол үшін бағдарламаның бірінші жолына JMP командасын қойып, оған қажетті блоктың белгісін жалға да, блок соңындағы NOP командасын HLT командасына ауыстыр.

 

7.3.2     Сілтеу тәсілі әртүрлі, арифметикалық командалардың іс-әрекетімен таныс:

-       келесі блоктардан тұратын бағдарламаны енгіз: Data Arrayжадыға арифметикалық прогрессия мүшелері түріндегі деректердің жазылуын жүзеге асырады (прогрессияның берілген параметрлерін (n = 0AHмүшелер санын, a1 = 00Hбірінші мүшенің мәнін, d = 55H – прогрессия қадамын) жұмыстың орындалу барысында өзгертуге болады). Cumulative Summation – бағдарламаның алдыңғы блогында жадыға жазылған арифметикалық прогрессия мүшелерінің қосындысын анықтайды. Retention of Result – алынған қосынды нәтижесін жадыда сақтайды. Series Subtraction – алдында алынған қосындыдан арифметикалық прогрессия мүшелерінің мәндерін тізбелеп алады. екі қосалқы блок түрінде (Data и Cumulative Summation-A) құрылған ALTERNATIVE of the Single-Byte Summation блогында арифметикалық прогрессия мүшелерінің қосындысын анықтаудың перифериялық құрылғыларды пайдалану арқылы (IN, OUT) анықталатын өзгеше түрі жүзеге асырылады. Енгізілген бағдарламаны Single-Byte Arithmetic (Бірбайтты арифметика) аталымымен сақта;

 

         ;SINGLE-BYTE ARITHMETIC

DA:   ;Data Array (arithmetical progression)

         LXI H,00E0H;Initial Address

         MVI C,0AH;Data Quantity

         MVI A,00H;Cleaning

         MOV M,C;Writing in the Memory

SD:    INX H;Address Increment

         ADI 55H;Increment Step of the Linear Series

         MOV M,A;Writing in the Memory

         DCR C;Monitoring of the Data Counter

         JNZ SD;Continue

         NOP

CS:    ;Cumulative Summation

         ;SUM=((2a1+(n-1)d)/2)n

         ;a1-first operand,n-quantity,d-step,

         LXI H,00E0H;Initial Address

         MVI A,00H;Cleaning

         MOV B,A;Cleaning

         MOV C,M;Installation of the Data Counter

C1:    INX H;Address Increment

         ADD M;Addition

         JNC C2;Carry Monitoring

         INR B;Carry Accumulation

C2:    DCR C;Monitoring of the Data Counter

         JNZ C1;Continue

         NOP

RR:   ;Retention of Result

         INX H;

         MOV M,A;Low Byte

         INX H;

         MOV M,B;High Byte

         NOP

SS:    ;Series Subtraction

         LXI H,00E0H;Initial Address

         MOV C,M;Installation of the Data Counter

S1:     INX H;Address Increment

         SUB M;Subtraction

         JNC S2;Borrow Monitoring

         DCR B;Borrow Subtraction

S2:     DCR C;Monitoring of the Data Counter

         JNZ S1;Continue

         NOP

AD:   ;ALTERNATIVE of the Single-Byte Summation

         ;Data

         IN 01H;First Operand

         MOV E,A

         IN 01H;Data Quantity

         MOV C,A

         IN 02H;Step

         MOV D,A

         LXI H,0000H

         NOP

AC    ;Cumulative Summation-A

A1:    MOV A,E

         ADD D

         MOV E,A

         MOV A,L

         ADD E

         JNC A2

         INR H

A2:    MOV L,A

         DCR C

         JNZ A1

         MOV A,L

         OUT 03H

         MOV A,H

         OUT 04H

         HLT;Ending

 

-       Assembler терезесінде выбрать Tools/Assemble&Load таңдап, сосын симулятордың негізгі терезесінде Tools/Breakpoints Manager таңда да, әрбір блоктан кейін, яғни NOP командасы тұрған жолдарға (7.2 суретті қара) тексерім нүктелерін қой;

-       симулятор терезесінде Tools/Peripheral Devices терезесін аш. Ашылған Peripheral Devices терезесінде Device 1 түймесін басып, порт адресін 01 түрінде анықта да, сосын бұл портты IN жағдайына қой. Осы сияқты келесі порт адресін 02 түрінде анықтап, оны да IN жағдайына қой. Келесі порттардың адресін 03 және 04 түрінде анықтап, оларды OUT жағдайына қой;

-       симулятордың негізгі терезесінде моделдеу жылдамдығын (мысалы, Rate/Normal) таңдап, симуляторды іске қос (Simulation/Start). Бағдарламаның әрбір тексерім нүктесіндегі тоқталымында орындалған бағдарлама блогындағы командалардың іс-әрекетін және алынған нәтижелерін (микропроцессор регистрлері мен жадының сәйкесті ұяшықтарындағы) талда;

7.3 Сурет

-       моделдеу жылдамдығын (мысалы, Rate/...) таңдау арқылы симулятор жұмысын жалғастыр;

-       алынған қосынды нәтижесінің  өрнегі арқылы есептелген мәнге сәйкестігін тексер.

Қажетті жағдайда (оқытушының ұсынысы бойынша) бағдарламаның әрбір блоктарын жеке орында. Ол үшін бағдарламаның бірінші жолына JMP командасын қойып, оған қажетті блоктың белгісін жалға да, блок соңындағы NOP командасын HLT командасына ауыстыр.

 

7.3.3     Бағдарлама жұмысын ісжүзіндегі құралымда тексер:

-       микрокомпьютерді (зертханалық құралымды) іске дайындап (1.3 тарауын қара), жады ұяшықтарына келтірілген бағдарламаның жеке блоктарындағы команда кодтарын енгіз;

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

7.5  СӨЖ тапсырмалары

7.4.1     Перифериялық құрылғылар арқылы енгізілетін, екібайтты n (мысалы, бес) санның қосындысын есептеу бағдарламасын құр.

7.4.2     Әртірлі сілтемелі логикалық операцияларды орындау бағдарламасын құр.

7.6  Тексерім сұрақтары

1.     Микропроцессордың ішкі құрылымын және оның құрама бөліктерінің қызметін түсіндір.

2.     Бағдарламаның жеке блоктарындағы ауыстыру командаларының іс-әрекетін түсіндір.

3.     Бағдарламада пайдаланылған арифметикалық командалардың іс-әрекетін түсіндір.

4.     Екібайтты сандарды қосу қандай командалармен жүзеге асырылады?

5.     Тасымалды және тасымалсыз арифметикалық командалардың іс-әрекетінің айырмашылығын түсіндір.

 

8 Зертханалық жұмыс. Қосалқы бағдарламалармен жұмыс істеу

Жұмыс мақсаты:

-       қосалқы бағдарламалармен жұмыстың ұйымдастырылу принциптерін игеру;

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

8.1  Жұмыс орнының құрал-жабдықтары и файлы:

-       компьютер, 8085 Simulator IDE бағдарламасы;

-       зертханалық құралым PU-2000 фирмы Degem Systems;

-       EB-151 және EB-152 тақтайшалары;

-       жалғама сымдар.

8.2  Қажетті мәліметтер мен әдістемелік ұсынылымдар

Қосалқы бағдарламалармен және стекпен жұмыс ұйымдастырылу тәртібін қарастыру мақсатында y = a1*a2 + a3*a4 +  өрнегі бойынша есептеу бағдарламасы қарастырылады. Қойылған есепті шешу үшін алдымен көбейтуге және жинама қосуға арналған қосалқы  бағдарламалар құру керек.

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

 

 

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

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

-       DE регистрлік жұбының E регистріне бірінші сан (көбейтілгіш), ал оның D регистріне нөл енгізіліп, көбейтілгіш қосуға ыңғайлы оналтыразрядты санға айналдырылады;

-       екінші сан (көбейтілгіш) оның разрядтарын ығыстырып шығару үшін аккумуляторға (сөзімізді шатыстырмас үшін, оны бұдан әрі A регистрі деп атаймыз) енгізіледі;

-       ығыстыру операциясының санын бақылап отыру үшін, көбейткіштің разряд саны микропроцессордың бір регистріне (мысалы, С регистріне) енгізіледі;

-       әрбір жеке көбейту алдында осы мезетке дейін жиналған нәтиже (HL жұбындағы) солға ығыстырылады;

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

-       А регистрінен шығарылған көбейткіштің кезекті разрядының мәні бір болғанда, HL жұбына DE жұбы қосылады;

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

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

8.3  Жұмыс тапсырмасы

8.3.1     Құрамында бірнеше қосалқы бағдарлама бар, күрделі бағдарламаның құрылымымен таныс:

-       симулятор бағдарламасын іске қос та, ашылған симулятор терезесінде Tools/Assembler таңдап, сосын File/New таңда;

-       төмендегі бағдарламаны енгізіп, оны Stack (Стек) аталымымен сақта;

 

         ;SUM=a1*a2+a3*a4+sum(ai,n,d)

         LXI SP,0FFH

         MVI B,0A0H

         ;mul1=a1*a2

         IN 01H;first multiplier

         MOV E,A

         IN 02H;second multiplier

         CALL MUL

         PUSH H

         CALL PER

         NOP

         ;mul2=a3*a4

         IN 01H;first multiplier

         MOV E,A

         IN 02H;second multiplier

         CALL MUL

         PUSH H

         CALL PER

         NOP

         ;sum(ai,n,d)

         IN 01H;quantity - n

         MOV C,A

         IN 02H;step - d

         MOV D,A

         IN 01h;first operand - a1

         MOV D,A

         LXI H,0000H

         CALL SUM

         CALL PER

         NOP

         ;S3

         POP D

         DAD D

         POP D

         DAD D

         CALL PER

         HLT

MUL: ;Multiplication (subroutine)

         MVI D,00H

         LXI H,0000H

         MVI C,08H

M1:    DAD H

         RLC

         JNC M2

         DAD D

M2:    DCR C

         JNZ M1

         RET

SUM: ;Cumulative Summation (subroutine)

CS3:  MOV A,E

         ADD D

         MOV E,A

         MOV A,L

         ADD E

         JNC CS4

         INR H

CS4:  MOV L,A

         DCR C

         JNZ CS3

         RET

PER:  ;Displaying on the Periphery

         ;and Writing on the Memory

         MOV C,B

         MVI B,00H

         MOV A,L

         OUT 03H

         STAX B

         INR C

         MOV A,H

         OUT 04H

         STAX B

         INR C

         MOV B,C

         RET

 

Бағдарламаның негізгі бөлігі келесі блоктардан тұрады: SUM негізгі бағдарламаның басы, онда стек көрсеткішінің мәні SP және нәтижелерді шығару құрылғысында көрсетуге арналған қосалқы бағдарламаның жұмысын ұйымдастыруға қажетті информация қойылады. mul1 и mul2 – көбейтуге арналған деректер енгізіледі де, сосын көбейту бағдарламасы, одан кейін нәтиже көрсету бағдарламасы шақырылады. sumқосуға арналған деректер енгізіліп, сосын қосу бағдарламасы, одан кейін нәтиже көрсету бағдарламасы шақырылады. S3 – ақырғы нәтиже, яғни алдыңғы кезеңдерде алынған жеке нәтижелердің қосындысы есептеледі.

Бағдарламада үш қосалқы бағдарлама пайдаланылады: Multiplication – шақырылар алдында енгізілген екі санның көбейтілуін жүзеге асырады. Cumulative Summation – алдын-ала енгізілген деректердің қосындысын есептейді. Displaying – қосалқы бағдарламаларда алынған нәтижелердің сыртқы құрылғыда шығарылуын және олардың жадыда сақталуын жүзеге асырады.

-       Assembler терезесінде выбрать Tools/Assemble&Load таңдап, сосын симулятор терезесінде Tools/Peripheral Devices аш та, онда порт адрестерін 01…04 арасында анықтап, екі портты (01 және 02 адресті) – IN жағдайына, ал қалғанын OUT жағдайына қой;

-       симулятордың негізгі терезесінде Tools/Breakpoints Manager таңдап, негізгі бағдарламаның әрбір блогынан кейін, яғни NOP командалары тұрған жолдарға тексерім нүктелерін қой;

-       симулятордың негізгі терезесінде моделдеу жылдамдығын (мысалы, Rate/Normal) таңдап, симуляторды іске қос (Simulation/Start). Бағдарламаның әрбір тексерім нүктесіндегі тоқталымында орындалған бағдарлама блогындағы командалардың іс-әрекетін және алынған нәтижелерін (микропроцессор регистрлері мен жадының сәйкесті ұяшықтарындағы) талда;

-         моделдеу жылдамдығын (мысалы, Rate/...) таңдау арқылы симулятор жұмысын жалғастыр.

8.3.2     Бағдарлама жұмысын іс жүзіндегі құралымда тексер:

-       микрокомпьютерді (зертханалық құралымды) іске дайындап, жады ұяшықтарына келтірілген бағдарламаның жеке блоктарындағы команда кодтарын және көбейткіштер мәнін енгіз;

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

8.4  Тексерім сұрақтары

1.     Қосалқы бағдарламалармен жұмыс ұйымдастырылу принциптерін түсіндір.

2.     Стекпен. жұмыс ұйымдастырылу принциптерін түсіндір.


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

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

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

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

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

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

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

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

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

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

  

Мазмұны 

Кіріспе  3

1 Зертханалық жұмыс. Қиыстырма құрылғылар  4

2 Зертханалық жұмыс. Қалыпты қиыстырма құрылғылар  4

3 Зертханалық жұмыс. Тізбектеме құрылғылар  4

4 Зертханалық жұмыс. Жадылық құрылғылар  4

5 Зертханалық жұмыс. Информация енгізу құрылғысы   4

6 Зертханалық жұмыс. MP4M моделі 4

7 Зертханалық жұмыс. Intel 8085 микропроцессорлық жүйесі 4

8 Зертханалық жұмыс. Қосалқы бағдарламалармен жұмыс істеу  4

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

Жинақ жоспар 2010 ж., орны 203