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

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

«Компьютерлік технологиялар» кафедрасы

  

 

КОМПЬЮТЕРЛІК ЖҮЙЕЛЕРДІҢ АРХИТЕКТУРАСЫ

 5В070300Информациялық жүйелер

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

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

   

 

Алматы 2012

 

Құрастырушы: О.Т. Шанаев. Компьютерлік жүйелердің архитектурасы. 5В070300 – Информациялық жүйелер мамандығының барлық оқу түрінің студенттерінің сәйкесті пәні бойынша зертханалық жұмыстарды орындауына арналған әдістемелік  нұсқаулар. – Алматы: АЭжБУ, 2012. – 52 б.

  

Әдістемелік нұсқауларда ұсынылып отырған жұмыстар 5В070300 – Информациялық жүйелер мамандығындағы “Компьютерлік жүйелердің архитектурасы” пәнінің оқу материалын мазмұны жағынан толық қамтыған зертханалық жұмыстар ұйымдастыруға арналған жұмыстар келтірілген. Олар мамандарға қойылған квалификациялық талаптарға, Мемлекеттік стандартқа, зертханалық жұмыстарды жүргізудің педагогико-психологиялық негіздеріне сәйкесті құрастырылған. Ұсынылған жұмыстар Electronics Workbench бағдарламасындағы моделдеу виртуалдық тәжірибелер түрінде және сәйкесті құрылымдардың бағдарламалық симуляторларында құрылған іс жүзіндегі тексерім түрінде орындалады.

Зертханалық жұмыстарға дайындалған әдістемелік нұсқаулар 5В070300 – Информациялық жүйелер мамандығындағы студенттерге арналған. Оларды өзге мамандықтарда оқылатын мазмұны жағынан ұқсас пәндерде де пайдалануға болады.

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

 

Пікір беруші:   аға оқытушы С. А. Адилгажинова             

 

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

 

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

 

Кіріспе

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

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

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

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

8085 Simulator IDE симуляторы арқылы орындалатын келесі екі жұмыс студенттердің ассемблер тілінде бағдарлау негіздерін игеруін ұйымдастыруға арналған.

Соңғы екі жұмыс PIC Simulator IDE симуляторында орындалады және олар студенттердің Microchip компаниямының PIC микроконтроллерлерінің құрылымы жөнінде де, олардың бағдарламалық ерекшеліктері жөнінде де толық түсінік алуына мүмкіндік береді.

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

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


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

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

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

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

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

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

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

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

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

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

-       RAM_3D_16x4.ewb файлы;

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

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

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

 

1.1 Сурет

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

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

1.2 Сурет

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

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

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

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

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

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

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

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

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

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

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

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

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

1.3 Сурет

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

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

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

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

1.4 Сурет

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

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

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

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

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

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

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

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

1.5 Сурет

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 блогында басқару түймелері мен құрылғының жұмысын қамтамасыз етуші қоымша элементтер бірктірілген. Ол үш режимде жұмыс режимінде істей алады – жазуға деректер дайындау, жазу және оқу.

 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

2.1 Сурет

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

2.2 Сурет

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

2.3 Сурет

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

 

3 Зертханалық жұмыс № 3. Жады жүйесінің құрылым негіздері

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

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

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

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

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

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

-       Memory Expansion.ewb файлы.

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

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

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

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

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

 3.1 Сурет

Бастапқы сілтеу режимі (Pre), яғни дерек банкісінің нөмірі мен осы банктегі бастапқы ұяшықтың адресін қою, W=0 жағдайында жүзеге асырылады. Дерек банкісін таңдау оның нөмірін Sel регистріне S=1 жағдайында, ал жандандырылатын ұяшықтың адресін анықтау Add регистріне S=0 жағдайында жазу арқылы жүзеге асырылады. Бұл деректердің жазылуы қажетті санның оналтылық белгілемесіне (0 - F) сәйкесті түймені басу арқылы жүзеге асырылады. Жандандырылған ұяшықтың таңдалуы Sel (A1/A0) индикаторының жағдайымен көрсетіледі.

Жадыға дерек жазу (Write) W=1 жағдайында сәйкесті түймелердің (0 – F) біреуін басу арқылы жүзеге асырылады. Бұл кезде R түймесі R=0 жағдайында тұру керек. Ұяшық адресі мен банк нөмірін тізбелі өзгерту O (Order) түймесін басу арқылы жүзеге асырылады.

Жадыдан дерек оқу режимі (Read) осуществляется переводом клавиши R түймесін R=1 жағдайына ауыстырып, сосын ұяшық адресі мен банк нөмірін O түймесі арқылы өзгерте отырып, жүзеге асырылады.

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

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

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

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

3.3.4     Құрылғыны жадыға дерек жазу режиміне (W=1, R=0) ауыстыр да, жадының таңдалған ұяшығына нақтылы дерек жаз. Жады ұяшығының адресін  өзгерте отырып (O түймесімен), жадыға дерек жазуды жалғастыр. Бұл деректерді жұмыс дәптеріңе жазып ал.

3.3.5     Құрылғыны жадыдан дерек оқу режиміне (W=1, R=1) ауыстырып, сосын жады ұяшығының адресін  өзгерте отырып (O түймесімен), жадының сәйкесті ұяшығынан дерек оқылуын жүзеге асыр да, оларды алдында жазып алынған деректермен салыстыр.

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

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

3.4.2     Жады құрылғысының информациялық сиымдылығын екі есе ұлғайт.

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

1.     Құрылғының әртүрлі қызмет блоктарының ішкі құрылымын суретте.

2.     Құрылғының әртүрлі қызмет блоктарының арасындағы информациялық байланыстардың ұйымдастырылу принциптерін суретте.

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

 

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

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

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

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

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

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

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

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

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

 

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

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

-       MP4M.ewb файлы.

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

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

 Рисунок 4.2

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

-       арнайы қызметтік регистрлер жинағы (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 микропроцессорының командалары мен олардың сипаттамалары 4.1-кестеде, ал жүйенің жұмыс режимдерінің қойылу тәртібі 1.2-кестеде келтірілген.

4.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

 

 

 

 

4.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

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

4.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 ұяшығынағы деректі өзгертіп, бағдарламаны қайтадан іске қос та, оның жұмысын тексер.

 

4.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). Көрсеткіштердің жағдайын бақылай отырып, бағдарлама жұмысын тексер. Қажетті жағдайда бағдарламаны іске қайта қос;

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

4.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

 

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

6

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 арасындағы барлық санды тексеріп, оның ішінен қажетті санды таба алмай, жұмысын тоқтатады.

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

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

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

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

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

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

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

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

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

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

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

5 Зертханалық жұмыс № 5. Intel 8085 жүйесі

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

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

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

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

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

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

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

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

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

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

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

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

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

-       симулятор бағдарламасын  әлпеттемесімен аш та, ашылған симулятор терезесінде (5.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 кеңейтілімді файл құрылады.

5.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 командасы тұрған жолдарға (5.2 суретті қара), тексерім нүктелерін қой;

5.2 Сурет

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

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

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

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

 

5.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 командасы тұрған жолдарға (5.2 суретті қара) тексерім нүктелерін қой;

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

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

5.3 Сурет

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

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

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

 

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

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

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

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

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

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

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

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

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

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

 

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

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

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

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

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

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

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

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

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

 

 

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

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

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

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

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

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

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

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

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

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

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

6.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/...) таңдау арқылы симулятор жұмысын жалғастыр.

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

1.     Бағдарламалы жүзеге асырылуға негіз ретінде алынған көбейту алгоритмін түсіндір.

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

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

 

7 Зертханалық жұмыс № 7. PIC16F8X микроконтроллері

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

-       PIC микроконтроллерлерінің құрылымымен танысу;

-       PIC Simulator IDE бағдарламалық симуляторының іскерлік мүмкіндіктерімен танысу және онымен жұмыс істеу әдістемесін игеру;

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

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

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

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

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

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

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

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

 

Аймақ

Суреттеме

f

Регистр адресі

w

Жұмыс регистрі

b

8-разрядты регистрдегі бит нөмірі

k

Константа

d

Нәтиже регистрі:

d=0нәтиже w регистрінде; d=1нәтиже f регистрінде

label

Белгі аты

TOS

Стек төбесі

PC

Команда санауышы

PCLATH

PCLATH регистрі

GIE

Барлық үзіліске рұқсат регистрі

WDT

Қарауыл таймер

/TO

Тайм-аут

/PD

Қоректің өшірілуі

[ ]

Қажетті емес параметрлер

( )

Мазмұны

Описание: Описание: http://www.intuit.ru/img/symbols/srarr.gif

Жіберу

< >

Бит нөмірінің аймағы

Описание: Описание: http://www.intuit.ru/img/symbols/isin.gif

Жинақтан

 

Микроконтроллер командаларының негізгі форматтары 7.1-суретте көрсетілген.

7.1 Сурет

Командалардың бәрі дерлік бір команда циклінде орындалады. Екі жағдайда команданың орындалуы екі команда циклін алады:

-       шартты тексеру және ауысу;

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

Бір команда циклі генератордың төрт тактісінен тұрады. Сонымен, жиілігі 4 МГц генератор команда циклінің орындалу уақыты 1 мкс болады.

 

PIC16F8X топтамасындағы микроконтроллерлердің командалар жұйесі 7.1-кестеде келтірілген.

 

7.1 кесте

Мнемоника

Команда суреттемесі

Цикл

Ахуал биті

Түсін.

ADDWF f, d

W және f регистрлерін қосу

1

C, DC, Z

1, 2

ANDWF f, d

W және f регистрлеріне логикалық ЖӘНЕ

1

Z

1, 2

CLRF f

f регистрін тазарту

1

Z

2

CLRW

W регистрін тазарту

1

Z

 

COMF f, d

регистра f регистрін тазарту

1

Z

1, 2

DECF f, d

Декремент регистра f

1

Z

1, 2

DECFSZ f,d

f регистрін кеміту, егер 0 болса, келесі команданы аттап кету

1(2)

 

1, 2, 3

INCF f, d

f регистрін ұлғайту

1

Z

1, 2

INCFSZ f,d

f регистрін ұлғайту, егер 0 болса, келесі команданы аттап кету

1(2)

 

1, 2, 3

IORWF f, d

W және f регистрлеріне логикалық НЕМЕСЕ

1

Z

1, 2

MOVF f, d

f регистрін жіберу

1

Z

1, 2

MOVWF f

W регистрін f регистріне жіберу

1

 

 

NOP -

Жұмыссыз команда

1

 

 

RLF f, d

f регистрін ауыспа арқылы солға ығыстыру

1

C

1, 2

RRF f, d

f регистрін ауыспа арқылы оңға ығыстыру

1

C

1, 2

SUBWF f, d

W регистрін f регистрінен алу

1

C,DC,Z

1, 2

SWAPF f, d

f регистрінің тетрадаларын ауыстыру

1

 

1, 2

XORWF f, d

W және f регистрлеріне екілік қосу

1

Z

1, 2

BCF f, b

f регистрінің битін тазарту

1

 

1, 2

BSF f, b

f регистрінің битін қою

1

 

1, 2

BTFSC f, b

f регистрінің биті 0 болса, келесі команданы аттап кету

1(2)

 

3

BTFSS f, b

f регистрінің биті 1 болса, келесі команданы аттап кету

1(2)

 

3

ADDLW k

Константа мен W регистрін қосу

1

C, DC, Z

 

ANDLW k

Константа мен W регистріне логикалық ЖӘНЕ

1

Z

 

CALL k

Қосалқы бағдарламаны шақыру

2

 

 

CLRWDT

Қарауыл таймерін WDT тазарту

1

/TO, /P

 

GOTO k

Адрес бойынша ауысу

2

 

 

Мнемоника

Команда суреттемесі

Цикл

Ахуал биті

Түсін.

IORLW k

Константа мен W регистріне логикалық НЕМЕСЕ

1

Z

 

MOVLW k

Константаны W регистріне жіберу

1

 

 

RETFIE -

Үзілістен қайту

2

 

 

RETLW k

Қосалқы бағдарламадан W регистріне константа енгізіп, қайту

2

 

 

RETURN -

Қосалқы бағдарламадан қайту

2

 

 

SLEEP -

SLEEP режиміне ауысу

1

/TO, /P

 

SUBLW k

W регистрін константадан алу

1

C, DC, Z

 

XORLW k

Константа мен W регистріне екілік қосу

1

Z

 

 

Кестеге түсініктемелер:

1)     Егер енгізу/шығару регистрі түрлендірілсе (мысалы, MOVF PORTB,1), онда шықпалардан оқылатын мән пайдаланылады. Мысалы, егер енгізуге қосылған порттың шығыс тығынында "1" болса, ал сыртқы құрылғы бұл шықпада "0" қалыптастыратын болса, онда дерек разрядына "0" жазылады.

2)     Егер команда операнды является содержимое TMRO регистрі болса (және d=1 қоюға болса) және бастапқы бөлгіш TMRO-ға қосылған болса, онда ол тазартылады.

3)     Егер команданың орындалу нәтижесінде команда санауышы өзгеретін болса немесе шарттың тексерілуіне байланысты ауысу орындалса, онда команда екі циклде орындалады. Екінші цикл NOP ретінде болады.

1.2.1 Бағдарламалық PIC Simulator IDE симуляторы

Зертханалық сабақтарға жұмыс тапсырмаларының орындалуы бағдарламалық PIC Simulator IDE симуляторында жүзеге асырылады. PIC Simulator IDE – Microchip компаниясының 12 және 16 жинамаларындағы microPIC микроконтроллерлері үшін жазылған бағдарламалардың қалыптастырушысы. PIC Simulator IDE бағдаламасының құрамындағы ассемблермен қатар Basic тәрізді тілдің компиляторының орналастырығандығы микроконтроллердің жұмыс бағдарламасының жазылу процесін жеңілдетіп,  нәтижесінде құрылымның дайындалуын тездетеді.

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

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

1.2.2 Симулятормен жұмыс ұйымдастырылуы

Симулятормен жұмыс (также, как и при работе с настоящим микроконтроллером) істеген кезде бірнеше түрлі файлдар құрылады. Бірнеше жоба және олардың әртүрлі варианттарын құру кезінде (біздің жағдайымызда, бірнеше зертханалық жұмыс орындалғаннан кейін) жұмысқа қажетті файлды іздеп табу қиындық тудырады. Осындай ізденісті жеңілдету үшін, аталымына студент туралы жеткілікті информация (топ нөмірі мен аты-жөні) енгізілген, жалпы папка (мысалы, Менің документтерім бөлімінде) дайындап, оның ішінде әрбір зертханалық жұмысқа арналған жеке папкалар (мысалы, Lab_1, Lab_2 және с.с. аталымдарымен) ашқан, сосын барлық құрылатын файлдарды сонда сақтаған дұрыс болады. Жеке компьютермен (ноутбукпен) жұмыс істеген кезде жалпы папканы (мысалы, PICSIM аталымымен) PIC Simulator IDE бағдарламасының өзінде-ақ сақтауға болады.

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

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

Жұмыста аса тиянақталған жиілігінің мәні 1450 Гц шақыру сигналын қалыптастырушы құрылғы құру керек. Құрылғының сигнал жіберіліміне қосылған кезінде, бұл “жіберілімнің” нақтылы уақыт интервалында (3 сек.) жүргізілуін ұйымдастыру керек. Онымен қатар сигнал жіберіліміне рұқсат берілуін (немесе тиым салынуын) жеке түймеден (жіберілім кезінде де, одан бұрын да) басқару мүмкіндігі болу керек.

 

7.3.1     PIC симуляторына жұмыс бағдарламасын енгізу тәртібін игеру:

-       симулятор бағдарламасын  иконасымен іске қос. Симулятордың ашылған негізгі терезесінде (7.2 суретті қара) Options/Select Microcontroller таңдап, онда микроконтроллер түрін (PIC16F84A) анықтап, Select түймесін бас. Бұнымен қатар симулятордың негізгі терезесінде тактілік генератордың жиілігін (4 MHz) қой;

-       симулятордың негізгі терезесінде Tools/Assembler және ашылған Assembler терезесінде – File/New таңда;

7.2  Сурет

-       аса тиянақты жиілікті (1450 Гц) шақыру сигналын қалыптастырушы құрылғының төменде келтірілген жұмыс бағдарламасын 8085 симуляторымен жұмыс кезіндегі сияқты енгіз.

-       жазылған бағдарламаны Сontrolled Call (Басқарылымды шақырым) аталымымен сақтап, оның екілік кодын ал (Tools/Assemble&Load);

 

 

; Device of the call 1.45 KHz

;===========================

; Microcontroller PIC16F84A

; Clock Frequency 4.0 MHz

;===========================

Sec             equ             0Ch

SecH           equ             0Dh

SecL           equ             0Eh

;===========================

                   org              0

                   goto            START

;===========================

START       clrf              IntCon

                   clrwdt

                   bsf              Status,RP0

                   movlw         .65

                   movwf        TrisB

                   movlw         .143

                   movwf        Option_REG

                   bcf              Status,RP0

;----------------------------------------------

                   movlw         .15

                   movwf        SecH

                   movlw         .255

                   movwf        SecL

;----------------------------------------------

CYCLE       btfsc           PortB,0

                   goto            START

;----------------------------------------------

                   btfss           PortB,6

                   goto            PRD

;----------------------------------------------

                   bcf              PortB,2

                   nop

                   nop

                   movlw         .85

                   movwf        Sec

PAUSE_1   clrwdt

                   decfsz         Sec,F

                   goto            PAUSE_1

;----------------------------------------------

                   bsf              PortB,2

                   nop

                   nop

                   movlw         .83

                   movwf        Sec

PAUSE_2   clrwdt

                   decfsz         Sec,F

                   goto            PAUSE_2

;----------------------------------------------

                   decfsz         SecL,F

                   goto            CYCLE

                   decfsz         SecH,F

                   goto            CYCLE

                   bcf    PortB,2

;----------------------------------------------

PRD           clrwdt

                   btfss           PortB,0

                   goto            PRD

                   btfss           PortB,0

                   goto            PRD

                   goto            START

;----------------------------------------------

                   end

 

7.3.2     Монитордың экранына В портының индикаторлары (Tools/8xLED Board) мен осциллограф (Tools/Oscilloscope) шығар және Tools/Microcontroller View терезесін аш (7.3-7.5 суреттерді қара).

7.3.3     Симуляторды іске қосып, бағдарлама жұмысын индикаторлар (Tools/8xLED Board) мен осциллограф (Tools/Oscilloscope) арқылы бақыла.

7.3.4     Microcontroller View терезесінде B портының сәйкесті шықпаларының жанындағы T түймелерін басып, RB1 және RB6 кірістеріндегі сигнал деңгейін ON жағдайына қой. Олардың біріншісі жүйені қабылдау режиміне қояды, ал екіншісі шақырым сигналын жіберуге рұқсат береді. Перевести уровень сигнала на входе RB1 кірісіндегі сигнал деңгейін OFF жағдайына қой.

7.3  Сурет

7.4  Сурет

7.5  Сурет

7.3.5     RB6 шықпасын OFF жағдайына қой да, одан кейін RB1 кірісінің жағдайын бірнеше рет өзгерт.

7.3.6     Симулятордың жұмысын тоқтатып (RB6 шықпасын ON жағдайын ауыстыру арқылы), сосын бағдарламаның нақтылы жолдарына тексерім нүктелерін қойып (Tools/Breakpoints Manager), қалыптасушы сигналлдардың әртүрлі бөліктерінің ұзақтығын тексер.

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

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

T уақытының аралығында F жиілігімен импульстер бумаларын қалыптастырушы құрылғының қызметін жүзеге асырып, оның жұмысын симуляторда көрсет. Бумадағы импульстер жиілігі – f, ал ондағы импульстер саны n.

 

F, kHz

T, ms

f, kHz

n

1

0,5

16

21,8

10

2

0,6

14

21,9

9

3

0,7

12

22,0

8

4

0,8

10

22,2

7

5

0,5

20

22,3

6

6

0,6

18

22,4

5

7

0,7

16

21,8

5

8

0,8

14

21,9

6

9

0,5

12

22,0

7

10

0,6

10

22,2

8

11

0,7

20

22,3

9

12

0,8

18

22,4

10

 

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

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

2 Бағдарламада жалпы жіберілім уақыты қалай жүзеге асырылады?

3 Жіберілетін сигналдардың әртүрлі деңгейінің қажетті ұзақтығы қалай қамтамасыз етіледі?

4 Микроконтроллердің басқару шықпаларындағы сигнал деңгейі қалай тексеріледі?

8 Зертханалық жұмыс № 8. Үзіліс ұйымдастырылуы

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

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

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

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

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

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

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

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

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

Үзіліс бағдарламасына кету келесі тәртіппен жүргізіледі. Егер үзілістерге рұқсат беру "аймағының" өңделу уақытының интервалында RB0/INT шықпасындағы сыртқы, басқару сигналының жанды ауытқымасы қалыптасса, онда бағдарламаның жұмыс нүктесі қосалқы үзіліс бағдарламасының басына "секіреді де", одан кейін осы бағдарлама орындала бастайды.

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

START бағдарламасы барлық үзіліске тиым салудан басталып (clrf IntCon), үзілістерге кету мүмкіндігі кейінірек болу керек. Бағдарлама үзілістерге рұқсат беру "аймағының" басына дейін өңделеді (орындалады). Осы "аймақтың" басында RB0/INT кірісі бойынша үзіліске рұқсат беріледі де, одан кейін бағдарлама "үзілісті күту режимінде" орындалады. Осы "аймақтың" соңында үзілістерге тиым салынады да, бағдарламаның жұмыс нүктесі оның "негізгі бөлігіне" ауысады.

Үзілістерге рұқсат "аймағында" екі түрлі оқиға болуы мүмкін:

-        Үзіліс болмаса, онда бағдарлама оның "негізгі бөлігінің" шегінде орындалады;

-       Үзіліс туса (RB0/INT шықпасында сигналдың жанды ауытқымасы қалыптасса), онда бағдарламаның жұмыс нүктесі қосалқы үзіліс бағдарламасының басына ауысады.

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

Үзіліс бағдарламасының соңғы командасы әрқашан retfie болу керек. Ол үзіліс бағдарламасынан қайту үшін ғана пайдаланылады. Бұл команда арқылы стек арқылы қайту жүзеге асырылады.

Тағы бір маңызды "мәселе": үзіліс бағдарламасының құрамына, міндетті түрде, әрекет қылған үзіліс көзінің туын (немесе үзіліс көзі бірнеше болса, онда туларды) тазарту командасы кіру керек. Біздің жағдайда RB0/INT кірісінен үзіліс пайдаланылады, сондықтан bcf  IntCon,1 командасы қолданылады. Көптеген жағдайда ту тазарту командасын тікелей retfie алдына орналастырады. Ту тазарту командасының болмаған жағдайында бағдарламаның жұмыс нүктесі, бірінші үзіліске кеткеннен кейін, үзіліс бағдарламасы мен бағдарламаның "негізгі бөлігінің" арасында басқарусыз "қаңғи" бастайды ("глюк").

Үзіліс бағдарламасының басында STATUS және W регистрлерінің құрамын осы үшін арнайы құрылған жалпы қызмет регистрлеріне сақтау керек те (олардың стандартты аталымы: Stat_Temp және W_Temp, бірақ оларды басқаша да атауға болады), үзіліс бағдарламасының соңында олардың құрамын қайта қалпына келтіру керек. Мәселе мынада: үзіліс бағдарламасының орындалу кезінде STATUS және W регистрлерінің құрамы өзгеріп кетіп, үзіліс бағдарламасынан қайтқан кезде олардың құрамы бағдарламаның "негізгі бөлігінің" орындалуына теріс әсер етуі мүмкін.

Сонымен, үзіліспен жұмыс ұйымдастырылуы үшін (біздің жағдайда RB0/INT кірісі бойынша): 

-       бағдарлама  "төбесінде" үзіліс векторын;

-       үзіліс көзі (INTCON) қойылады;

-       үзілістің жанды ауытқымасы (OPTION) анықталады;

-       үзіліске рұқсат "аймағы" құрылады;

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

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

-       үзіліс бағдарламасының ең соңында retfie командасы орындалады.

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

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

Порт шықпаларын анықталық. В порты пайдаланылады. Сыртқы үзілістің INT шықпасы – RB0, демек, RB0/INT шықпасын "кіріске" бағытталған қызметке қалыптау керек. Порттың RB0 шықпасынан өзге ешқандай шықпасын сыртқы INT үзілісіне тағайындауға болмайды.

Үзіліс сигналы түсетін шығыс – ашық коллекторлы, сондықтан В портының тартым регистрлерін қосу керек. Бұл жағдайда RB0/INT шықпасының тартым регистрі ашық коллекторлы каскадтың жүктемесінң қызметін атқарады. Тәжірибе арқылы ашық коллекторлы каскадтың жағдайын тексеруге болады: сигналдың жоқ кезінде транзистор жабық, ал оның бар кезінде ол ашық, сондықтан RB0/INT шықпасындағы тартым регистрін ескерсек, бірлік деңгей сигналдың жоқтығына, ал нөлдік деңгей барлығына сәйкес келеді.

Арналардың ауыстырылуын басқару шығысы ретінде В портының қалған шықпаларының кез келгенін тағайындауға болады. Біздің құрылғыда ол үшін RB2 шықпасы алынған. Бұл шықпаны "шығысқа" бағытталған жұмысқа қалыптау керек. Ауысу екі арнаның арасында жүргізіледі: 1-арнаға RB2 шықпасындағы бір, ал 2-арнаға RB2 шықпасындағы нөл сәйкес келеді. Қай арнада үзіліс тууына байланысты (бірінші немесе екінші арнаны тексру кезінде) үзіліс бағдарламасында нақтылы жиілікті тербеліс қалыптастырылады.

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

8.3.1     Үзіліспен істеуші құрылғының төменде келтірілген жұмыс бағдарламасын енгізіп, оны Interrupt (Үзіліс) аталымымен сақта және оның екілік кодын шығар.

 

; Scanner with interruptions

;===============================

; Microcontroller PIC16F84A

; Clock Frequency 4.0 MHz

;===============================

Trigg           equ             0Ch

W_Temp    equ             0Dh

Stat_Temp  equ             0Eh

Sec_H         equ             0Fh

Sec_L         equ             1Bh

Sec_1                   equ             1Ch

Sec_2                   equ             1Dh

Sec_F                  equ             1Eh

Sec_FF       equ             1Fh

;===============================

                   org              0

                   goto            START

;===============================

                   org              4

;*******************************

INT             movwf        W_Temp

                   movf           Status,W

                   movwf        Stat_Temp

;-------------------------------

                   movlw         .15

                   movwf        Sec_FF

                   btfsc           Trigg,0

                   goto            F1

                   movlw         .150

                   goto            F0

F1               movlw         .50

F0               movwf        Sec_F

                   call              FF

;===============================

EndInt         bcf              IntCon,1

                   movf           Stat_Temp,W

                   movwf        Status

                   swapf          W_Temp,F

                   swapf          W_Temp,W

                   retfie

;===============================

FF              movwf        Sec_F

                   bcf              PortB,3

PAUSE_F0 clrwdt

                   decfsz         Sec_F,F

                   goto            PAUSE_F0

;-------------------------------

                   movwf        Sec_F

                  bsf              PortB,3

PAUSE_F1 clrwdt

                   decfsz         Sec_F,F

                   goto            PAUSE_F1

;-------------------------------

                   decfsz         Sec_FF,F

                   goto            FF

                   return

;*******************************

START       clrf              IntCon

                   clrwdt

                   bsf              Status,RP0

                   movlw         .1

                   movwf        TrisB

                   movlw         .0

                   movwf        Option_REG

                   bcf              Status,RP0

;-------------------------------

TRIGGER  btfsc           Trigg,0

                   goto            Mark_1

                   movlw         .251

                   movwf        PortB

                   goto            Mark_0

Mark_1       movlw         .255

                   movwf        PortB

;-------------------------------

Mark_0       movlw         .121

                   movwf        Sec_1

PAUSE_D  clrwdt

                   decfsz         Sec_1,F

                   goto            PAUSE_D

;===============================

                   movlw         .245

                   movwf        Sec_H

                   movlw         .255

                   movwf        Sec_L

;-------------------------------

                   movlw         .144

                   movwf        IntCon

;-------------------------------

PAUSE       clrwdt

                   decfsz         Sec_L,F

                   goto            PAUSE

                   incfsz          Sec_H,F

                   goto            PAUSE

;-------------------------------

                   clrf              IntCon

                   incf             Trigg,F

                   goto            START

;*******************************

                   End

 

8.3.2     Монитор экранына В портының индикаторлары мен осциллографты шығар және Tools/Microcontroller View терезесін аш (8.1 суретті қара).

8.3.3     Симуляторды іске қос.

8.3.4     Microcontroller View терезесіндегі B портының INT/RB0 шықпасының жанындағы T түймесін басып, үзіліс сұранысының сигналын бер де, бағдарлама жұмысын индикаторлар (Tools/8xLED Board) мен осциллограф (Tools/Oscilloscope) арқылы бақыла.

8.1  Сурет

8.3.5     Тәжірибені бірнеше рет қайталап, қалыптастырылған шығыс сигналдарының өзгерістерін бақыла.

8.3.6     Қалыптастырылған сигналдардың параметрлерін өлше.

8.4  СӨЖ тапсырмасы

Үш арналы тексеру құрылғысының қызметн жүзеге асыр.

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

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

2 Үзіліспен істеуші құрылғының жұмысы қалай жүзеге асырылады?

 

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

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

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

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

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

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

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

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

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

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

 

Мазмұны

 

Кіріспе  3

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

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

3 Зертханалық жұмыс № 3. Жады жүйесінің құрылым негіздері 13

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

5 Зертханалық жұмыс № 5. Intel 8085 жүйесі 23

6 Зертханалық жұмыс № 6. Қосалқы бағдарламалармен жұмыс  30

7 Зертханалық жұмыс № 7. PIC16F8X микроконтроллері 35

8 Зертханалық жұмыс № 8. Үзіліс ұйымдастырылуы   44

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

  

Жинақ жоспар 2012 ж., орны 169