O’ZBEKISTON RESPUPLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIROVLANTIRISH VAZIRLIGI

 

TOShKENT AXBOROT TEXNOLOGIYaLARI UNIVERSITETI

 

 

                                                                T A S D I Q L A Y M A N

                        O’QUV ISHLARI BOYICHA BIRINCHI PROREKTOR                                                     

                                                       ________ F. S. ÀGZAMOV

                                                               “_______________2016 y.

 

 

“Telekommunikatsiyada boshqaruv tizimining apparat va dasturiy ta’minoti”kafedrasi

 

 

“MIKROPROSESSOR”

 

MODULI BO‘YICHA

 

O‘ Q U V –U S L U B I Y   M A J M U A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Toshkent - 2016

         Mazkur o‘quv-uslubiy majmua Oliy va o‘rta maxsus ta’lim vazirligining 2016 yil 6 apreldagi 137-sonli buyrug‘i bilan tasdiqlangan o‘quv reja va dastur asosida tayyorlandi.

 

 

 

                     

                        Telekommunikatsiyada boshqaruv tizimlarining apparat va  

                          dasturiy ta’minoti” kafedrasi

                          kafedra mudiri                                                            Parsiev S.S

 

 

Tuzuvchi:         

TATU “Telekommunikatsiyada boshqaruv tizimlarining apparat va dasturiy ta’minoti

kafedrasi katta o‘qituvchisi                            X.Yu.Abasxanova 

 

TATU “Telekommunikatsiyada boshqaruv tizimlarining apparat va dasturiy ta’minoti

kafedrasi dotdenti                                              R.P.Abdurahmanov                            

 

TATU “Telekommunikatsiyada boshqaruv tizimlarining apparat va dasturiy ta’minoti

kafedrasi assistenti                                            Mirzaeva M.B

 

 

Taqrizchi:

“MUT va T” kafedrasi mudiri,

      dotsent                                                            Amirsaidov U. B.

 

 

 

      

“KE L I S H I L D I”

                                                  O’MB  BOSHLIG’I

  ___________A.Q.Ergashev

                                             “___” ___________2016 y

 

 

 

 

 

 


 

MUNDARIJA

 

I. ISHCHI DASTUR.. 4

II. NAZARIY MATERIALLAR.. 9

III. MODULNI O‘QITISHDA FOYDALANILADIGAN INTERFAOL TA’LIM METODLARI 22

IV. AMALIY MAShG‘ULOT MATERIALLARI 143

V. KEYSLAR BANKI 216

VI. MUSTAQIL TA’LIM MAVZULARI 221

VII. GLOSSARIY.. 222

VIII. ADABIYoTLAR RO‘YXATI 224

 

 

 


I.            ISHCHI DASTUR

                                                    Kirish

 

Bugungi kunda O‘zbekiston respublikasini telekommunikatsiya tarmog‘i asosan mikroprotsessor  tizimlardan tashkil topgan  va uning turkumiga har xil turdagi raqamli qurilmalar kiradi, jumladan raqamli kommutatsiya, uzatish tizimlari va zamonaviy tarmoq qurilmalari. Shuning uchun ushbu tizimlarni shakllantiruvchi mikroprotsessorlar fanini  o‘rganish dolzarb masalalardan biri hisoblanadi. Mikroprotsessor fani telekommunikatsiya  tarmoqlarida ishlatiladigan raqamli qurilmalar turlarini, tavsifini, ularning  tuzilishi, qurilishi, dasturiy ta’minoti,  ishlash qoidalari va ular yordamida   tizimlar qurish masalalarini o‘z ichiga oladi.

 

Modulning maqsadi va vazifalari

 

“Mikroprotsessor” modulining maqsadi - tinglovchilarga mikroprotsesorlar va mikrokontrollerlar tushunchalari, ularning qurilmalari va ishlash asoslari,mikroprotsessorlar tizimlarini tashkil qilish usullari, tizim dasturiy ta’minoti yaratish asoslari, turli xil funksional  murrakablikdagi qurilmalarni qo‘llash va qurish tamoyillarini o‘rgatishdan iborat.

Fanning vazifasi – talabalarda mikroprotsessorlar, maxsus sxemalar, mikrokontrollerlar asosida qurilmalarni loyihalash, assembler va boshqa dasturlash tillari  bo‘yicha bilim va ko‘nikmalar xosil qilish.

 

Modul bo‘yicha tinglovchilarning bilimi, ko‘nikmasi, malakasi va kompetensiyalariga qo‘yiladigan talablar

 

Tinglovchilar “Mikroprotsessor” fanini o‘rganishlari natijasida quyidagilarni bilishlari kerak:

Mikroprotsessorlar va ularning tuzilishi, sinflanishi, telekommunikatsiya tizimlarini loyihalash va qurishda ulardan foydalanish;

- Protsessorning buyruqlar tizimi, ma’lumotlar almashish usullarini bajara olish;

- Assembler va S dasturlash tilida dastur yozish, ma’lumotlarni kiritish va chiqarish tashkil eta olish;

- mikrokontrollerlar asosida tizim sifatini oshirish va imkoniyatlarini kengaytirish mahsus funksiyalarini tadqiq qila olish;

- mikrokontrollerlar asosida raqamli qurilmalarni loyihalash va ishlab chiqish;

- apparat va dasturiy vositalarni birgalikda sozlay olish;

- mikrokontrollerlar uchun dasturiy ta’minot yaratish, mikrokontrollerlar uchun dastur yaratishda asosiy vositalar va sozlash vositalaridan foydalana olish;

- mikroprotsessor va mikrokontrollerlar asosida qurilmalarni yig‘ish va dasturlash;

- xotira va vaqtni boshqarish jarayonlarini dasturlash, algoritmlarini ishlab chiqish;

-  raqamli qurilmalar ish jarayoni uchun dasturiy ta’minot yaratish va ularni sozlash;

-  texnologik jarayonlarni avtomatik boshqarish dasturiy ta’minotini yaratish vositalari va ularni sozlash;

Tinglovchilar fanni o‘rganish natijasida quyidagi ko‘nikma va malakalarga ega bo‘lishlari lozim:

-  avtomatlashtirilgan boshqaruv tizimlarini dasturiy ta’minotini yaratish;  

-   Mikroprotsessor va mikrokontroller  asosida qurilgan  tizimlar,  ularda axborot almashish prinsiplarini ta’minlay olish.

-   Mikroprotsessor va mikrokontroller  asosida aloqa tizimlarini  qurish,  ularda axborot almashish prinsiplarini amalga oshirish.

 

Modulni tashkil etish va o‘tkazish bo‘yicha tavsiyalar

“Mikroprotsessor” kursi ma’ruza va amaliy mashg‘ulotlar shaklida olib boriladi.

Kursni o‘qitish jarayonida ta’limning zamonaviy metodlari, pedagogik texnologiyalar va axborot-kommunikatsiya texnologiyalari qo‘llanilishi nazarda tutilgan:

- ma’ruza darslarida zamonaviy kompyuter texnologiyalari yordamida prezentatsion va elektron-didaktik texnologiyalardan;

- o‘tkaziladigan amaliy mashg‘ulotlarda texnik vositalardan, ekspress-so‘rovlar, test so‘rovlari, aqliy hujum, guruhli fikrlash, kichik guruhlar bilan ishlash, kollokvium o‘tkazish  va boshqa interaktiv ta’lim usullarini qo‘llash nazarda tutiladi.

 

 

Modulning o‘quv rejadagi boshqa modullar bilan bog‘liqligi va uzviyligi

         “Mikroprotsessor” moduli mazmuni o‘quv rejadagi “Diskret matematika”,  “Dasturiy loyihalar”, “Tizimlarni modellashtirish va loyihalash asoslari”, “Raqamli mantiqiy qurilmalarni loyixalashtirish”   va “Signallar va tizimlar” o‘quv modullari bilan uzviy bog‘langan holda pedagoglarning dasturiy boshqaruv qurilmalarini yaratish bo‘yicha kasbiy pedagogik tayyorgarlik darajasini oshirishga xizmat qiladi.

                            Modulning oliy ta’limdagi o‘rni

         Modulni o‘zlashtirish orqali tinglovchilar dasturiy boshqaruv qurilmalarini yaratishni o‘rganish, amalda qo‘llash va baholashga doir kasbiy kompetentlikka ega bo‘ladilar.

 

 

 

 

Modul  bo‘yicha soatlar taqsimoti (5-semestr)

¹

 

 

Mavzu  

Auditoriya soatlari

Mus-taqil

Ish

Jami

Jami

Shu jumladan:

 

Ma’ruza

Amaliy

 

Tajriba (laboratoriya)

1.

Mikroprotsessor va mikroprotsessorli tizim tushunchalari va atamalari.

 

2

 

2

 

4

2.

Mikroprotsessorli  tizimlarni turlari, tuzilishi va ishlash asoslari.

 

2

2

 

4

8

3.

Mikroprotsessorli tizimlarning shinalari va axborot almashinuv sikllari.

 

2

 

2

4

8

4.

Mikroprotsessorli  tizimlarlarni asosiy qurilmalarining tuzilishi va vazifalari

 

2

2

 

 

4

5.

Mikroprotsessor tizimlarining ishlash rejimlari

 

2

 

2

4

8

6.

Mikroprotsessor tizimlarining arxitekturasi

 

2

2

 

 

4

7.

Protsessorning strukturasi. Protsessor asosiy qismlarining vazifalari,

 

2

 

2

 

4

8.

Operand va registrlarni adreslash usullari.

 

2

2

 

 

4

9.

Protsessorning buyruqlar tizimi.

 

2

 

2

2

6

10.

Ma’lumotlar almashish usullari.

 

 

2

2

 

 

4

11.

Assembler dasturiy ta’minotida ishlash

 

2

 

2

6

10

12.

Ma’lumotlarni kiritish va chiqarish tashkil etish

 

2

2

 

8

12

13.

Qism dasturlarni tashkil qilish usullari

 

2

 

2

8

12

14.

Shaxsiy kompyuterlarda ishlatiladigan protsessorlar. Ko‘p yadroli protsessorlar.

 

2

2

 

8

12

15.

Tarmoq protsessorlarining turlari va arxitekturalari.

 

2

 

2

8

12

16.

Xotirani segmentlash.

 

2

2

 

8

12

17.

Xotirani tashkil etish va uni ximoyalash rejimlari.

 

2

 

2

8

12

18.

Saxifali xotirani tashkil qilish.

 

2

2

 

8

12

 

Jami

 

36

18

18

76

148

 

Modul  bo‘yicha soatlar taqsimoti (6-semestr)

 

¹

 

 

Mavzu  

Auditoriya soatlari

Mus-taqil

Ish

Jami

Jami

Shu jumladan:

 

Ma’ruza

Amaliy

(semi-nar)

Tajriba (laboratoriya)

1.

Mikrokontrollerlar.

Mikrokontrollerlar strukturasi.

2

2

 

 

 

 

2.

Mikrokontroller xotirasi va protsessorli yadrosi.Markaziy protsessor strukturasi.

2

2

 

 

 

 

3.

Mikrokontroller buyruqlar tizimi.

2

2

 

 

 

 

4.

Mikrokontrollerlarda stek va tashqi xotiradan foydalanib ma’lumot va dasturiy xotira ishi va strukturasi.

6

2

2

2

 

 

5

Mikrokontrollerlar ma’lumot kiritish va chiqarish portlari tashkillashtirish va strukturasi.

2

2

 

 

 

 

6

Mikrokontrollerlar quvvat sarflanishini tejash rejimlari.

2

2

 

 

 

 

7.

Takt generatorlari, quvvat sarflanishini tejash rejimlari manba’ sxemalari.

10

2

4

4

 

 

8

Qo‘riqchi taymerlar va mikrokontrollerlar qo‘shimcha modullari.

2

2

 

 

 

 

9.

Mikrokontrollerlar apparat vositalari va ularning imkoniyatlari.

10

2

4

4

 

 

10.

Mikrokontrollerlar asosida tizim sifatini oshirish va imkoniyatlarini kengaytirish maxsus funksiyalari.

2

2

 

 

 

 

11.

Mikrokontrollerlar asosida raqamli qurilmalarni loyixalash afzalliklari.

6

6

 

 

 

 

12

Mikrokontrollerlar asosida raqamli qurilmalarni loyixalash va ishlab chiqish asosiy bosqichlari.Apparat va dasturiy vositalarni birgalikda sozlash.

6

2

2

2

 

 

13

Mikrokontrollerlar uchun dasturiy ta’minot yaratish.(MikroPascal)

4

 

2

2

 

 

14.

Mikrokontrollerlar uchun dasturiy ta’minot yaratish.(C)

2

2

 

 

 

 

15.

Mikrokontrollerlar uchun dasturiy ta’minot yaratish.(S)

2

2

 

 

 

 

16.

Mikrokontrollerlar uchun dastur yaratishda asosiy vositalarva sozlash vositalari. (Assembler)

4

 

2

2

 

 

17.

Raqamli qurilmalar ish jarayoni uchun dasturiy ta’minot yaratish va ularni sozlash.(S)

2

2

 

 

 

 

18.

Texnologik jarayonlarni avtomatik boshqarish dasturiy ta’minotini yaratish vositalari va ularni sozlash.(S)

6

2

2

2

 

 

 

Jami

72

36

18

18

72

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

II.               NAZARIY  MAShG‘ULOTLAR MAZMUNI

(5-semestr)

1 - mavzu: Mikroprotsessor va mikroprotsessorli tizim tushunchalari va atamalari. Mikroprotsessor fani predmeti va vazifalari. Mikroprotsessorlar qo‘llanilishi soxalari. Mikroprotsessorlar xarakteristikalari strukturalari.

 

2 - mavzu: Mikroprotsessorli  tizimlarni turlari, tuzilishi va ishlash asoslari.

Mikroprotsessorli  tizimlarni turlari, ularning tuzilishi va ishlash asoslari.

 

3 - mavzu: Mikroprotsessorli tizimlarning shinalari va axborot almashinuv sikllari. Mikroprotsessorli tizimlar, shinalar,axborot almashinuv sikllari.

 

4 - mavzu: Mikroprotsessorli  tizimlarlarni asosiy qurilmalarining tuzilishi va vazifalari. Mikroprotsessorlarli tizimlar ularning arxitekturalari.Qurilmalarining tuzilishi va ishlash prinsipi  .

 

5 - mavzu:  Mikroprotsessor tizimlarining ishlash rejimlari. Mikroprotsessorli tizimlar.Ularning ish rejimlari.

 

6 - mavzu:  Mikroprotsessor tizimlarining arxitekturasi. Mikroprotsessor tizimlari,ularning strukturasi. Tashqi qurilmalar bilan ma’lumot almashishi prinsipi

 

7 - mavzu:  Protsessorning strukturasi. Protsessor asosiy qismlarining vazifalari. Protsessor strukturasi.Protsessor asosiy qismlarining umumiy ko‘rinishi va ishlash asoslari.

 

8 - mavzu: Operand va registrlarni adreslash usullari. Adreslash usullarining tushunchasi, ularning turlari va ishlash asoslari.

 

9 - mavzu: Protsessorning buyruqlar tizimi. Zamonaviy dasturiy ta’minotlar yaratish usullari.Dasturlar yaratish.

 

10 - mavzu: Ma’lumotlar almashish usullari. Mikroprotsessor bilan ma’lumot almashish usullari va ishlash asoslari.

 

11 - mavzu: Assembler dasturiy ta’minotida ishlash. Assembler buyruqlari va dasturlash jarayonlari.Muxitlarda dastur  yozish , misollar.

 

12 - mavzu: Ma’lumotlarni kiritish va chiqarish tashkil etish. Ma’lumotlarni kiritish va chiqarishni tashkil etish.Dasturlash jarayonlari

 

13 - mavzu: Qism dasturlarni tashkil qilish usullari.Qism dasturlar.Ularni tashkil qilish jarayonlari.

 

 

14 - mavzu: Shaxsiy kompyuterlarda ishlatiladigan protsessorlar.  Shaxsiy kompyuterlarda ishlatiladigan protsessorlar.

 

15 - mavzu:Ko‘p yadroli protsessorlar.Yadro tushunchasi.Ko‘p yadroli protsessorlar.

 

16 - mavzu: Telekommunikatsiya soxasida ishlatiladigan protsessorlarning arxitekturalari. Telekommunikatsiya soxasida ishlatiladigan protsessorlarning turlari va ularning arxitekturalari.

  

17 - mavzu: Telekommunikatsiya soxasida ishlatiladigan protsessorlarning turlari. Telekommunikatsiya soxasida ishlatiladigan protsessorlarning turlari va ularning arxitekturalari.

  

18 - mavzu:    Xotirani tashkil etish va uni ximoyalash rejimlari.       

Xotira segmentlari.Xotirani segmentlash.Xotirani tashkil etish.Xotirani ximoyalash rejimlari tushunchalari. Saxifali xotira tushunchasi. Saxifali xotirani tashkil qilish

 

 

 

 

(6-semestr)

1 - mavzu: Mikrokontrollerlar. Mikrokontrollerlar strukturasi.

Mikrokontrollerlar va ularning  strukturasi.

 

2 - mavzu: Mikrokontroller xotirasi va protsessorli yadrosi.Markaziy protsessor strukturasi.Mikrokontroller xotirasi va protsessorli yadrosi.Markaziy protsessor strukturasi

 

3 - mavzu: Mikrokontroller buyruqlar tizimi. Assembler va S v.b. dasturlash tillari

 

4 - mavzu: Mikrokontrollerlarda stek va tashqi xotiradan foydalanib ma’lumot va dasturiy xotira ishi va strukturasi.

 

5 - mavzu:Mikrokontrollerlar ma’lumot kiritish va chiqarish portlari tashkillashtirish va strukturasi. Mikrokontrollerlar ma’lumot kiritish va chiqarish portlari tashkillashtirish

 

6 - mavzu: Mikrokontrollerlar quvvat sarflanishini tejash rejimlari.

 

7 - mavzu: Takt generatorlari, quvvat sarflanishini tejash rejimlari manba’ sxemalari

 

 

8- mavzu: Qo‘riqchi taymerlar va mikrokontrollerlar qo‘shimcha modullari

9 - mavzu: Mikrokontrollerlar apparat vositalari va ularning imkoniyatlari.

 

10 - mavzu: Mikrokontrollerlar asosida tizim sifatini oshirish va imkoniyatlarini kengaytirish maxsus funksiyalari

 

11 - mavzu: Mikrokontrollerlar asosida raqamli qurilmalarni loyixalash afzalliklari.

 

12 - mavzu: Mikrokontrollerlar asosida raqamli qurilmalarni loyixalash va ishlab chiqish asosiy bosqichlari.Apparat va dasturiy vositalarni birgalikda sozlash

 

13 - mavzu: Mikrokontrollerlar uchun dasturiy ta’minot yaratish.(MikroPascal).

 

14 - mavzu: Mikrokontrollerlar uchun dasturiy ta’minot yaratish.(C)

15 - mavzu: Mikrokontrollerlar uchun dastur yaratishda asosiy vositalarva sozlash vositalari. (Assembler).

 

16 - mavzu: Raqamli qurilmalar ish jarayoni uchun dasturiy ta’minot yaratish va ularni sozlash.(C).

 

17 - mavzu: Texnologik jarayonlarni avtomatik boshqarish dasturiy ta’minotini yaratish vositalari va ularni sozlash.(C).

 

18 - mavzu: Texnologik jarayonlarni avtomatik boshqarish dasturiy ta’minotini yaratish vositalari va ularni sozlash.(C).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

AMALIY MAShG‘ULOTLAR MAZMUNI

(5-semestr)

 

1-amaliy mashg‘ulot:

 

Arifmetik–mantiqiy qurilmalar ish prinsipi bilan tanishish.Arifmetik–mantiqiy qurilmalar ish prinsipi.

 

2-amaliy mashg‘ulot:

 

EMUL  muxiti bilan tanishish.EMUL  muxiti interfeysi bilan tanishish va o‘rganish.

 

3-amaliy mashg‘ulot:

 

EMUL  muxitida assembler dasturlash tilining oddiy  komandalar tizimi bilan tanishish.EMUL  muxitida assembler dasturlash tilining oddiy  komandalar tizimi

 

4-amaliy mashg‘ulot:

 

EMUL  muxitida assembler dasturlash tilining tarmoqlanuvchi komandalar tizimi bilan tanishish  .

EMUL  muxitida assembler dasturlash tilining tarmoqlanuvchi komandalar tizimi.

 

5 – amaliy mashg‘ulot:

 

EMUL  muxitida assembler dasturlash tilining niqoblash komandalari bilan tanishish.EMUL  muxitida assembler dasturlash tilining niqoblash komandalari

 

6 – amaliy mashg‘ulot:

EMUL  muxitida assembler dasturlash tilining shartli va shartsiz o‘tish komandalari bilan tanishish.EMUL  muxitida assembler dasturlash tilining shartli va shartsiz o‘tish komandalari.

 

7 – amaliy mashg‘ulot:

EMUL  muxitida qism dastur va stekni tashkil qilish.EMUL  muxitida qism dastur va stekni tashkil qilish

 

8 – amaliy mashg‘ulot:

 

EMUL  muxitida assembler dasturlash tilining arifmetik amallarni bajarish komandalri bilan tanishish.EMUL  muxitida assembler dasturlash tilining arifmetik amallarni bajarish komandalri

 

9 – amaliy mashg‘ulot:

 

EMUL  muxitida assembler dasturlash tilining ma’lumotlarni kiritish va chiqarish komandalari bilan tanishish.EMUL  muxitida assembler dasturlash tilining ma’lumotlarni kiritish va chiqarish komandalari

 

 

LABORATORIYa MAShG‘ULOTLARI MAZMUNI

(5-semestr)

1-laboratoriya mashg‘uloti

EMUL muxitida oddiy dasturlash.EMUL muxitida buyruqlar tizimi bilan tanishish.

2-laboratoriya mashg‘uloti

 EMUL muxitida oddiy dasturlash.EMUL muxitida oddiy dasturlash jarayonlari.

3-laboratoriya mashg‘uloti

EMUL muxitida shartli o‘tishlarni tashkil qilish.EMUL muxitida murakkab dasturlash jarayonlari

4-laboratoriya mashg‘uloti

 EMUL muxitida massivlar bilan ishlash.Massiv tushunchasi.Massivlarni tashkil qilish dasturiy jarayonlari.

5-laboratoriya mashg‘uloti

Qism dastur va stek..Qism  dasturlash jarayonlari.  Muxitlar yordamida qo‘shimcha komponetlar ishlab chiqarish dasturiy ta’minotini yaratish.

6-laboratoriya mashg‘uloti

Qism dastur va stek.Stek qurilmalari bilan ishlash va ularning dasturlash jarayonlari

7-laboratoriya mashg‘uloti

Kiritish va chiqarishni tashkil qilish.Tashqi qurilmalar bilan ishlash jarayonlari.

8-laboratoriya mashg‘uloti

Kiritish va chiqarishni tashkil qilish.

Emulyatorlar bilan ishlash.Sozlash.Emulyator bilan bog‘lanish.

9-laboratoriya mashg‘uloti

Kiritish va chiqarishni tashkil qilish.Tashqi qurilmalarni boshqarish dasturiy ta’minotini yaratish..

 

AMALIY MAShG‘ULOTLAR MAZMUNI (6-semestr)

 

1-amaliy mashg‘ulot:

PROTEUS da virtual laboratoriyalar yaratish bilan tanishish. PROTEUS interfeysi ish prinsipi.

 

2-amaliy mashg‘ulot:

PROTEUSda oddiy virtual dastur yaratish. PROTEUS muxiti interfeysi bilan tanishish va o‘rganish.

 

3-amaliy mashg‘ulot:

Oddiy dastur uchun maket yaratish.Oddiy dasturlarni maketga yuklash.

 

4-amaliy mashg‘ulot:

Virtual sakkiz razryadli ikkilik yig‘uvchi xisoblagich qurish.Yig‘uvchi xisoblagich dasturlarni maketga yuklash.

 

5 – amaliy mashg‘ulot:

Sakkiz razryadli ikkilik yig‘uvchi xisoblagich uchun maket yaratish.Sakkiz razryadli xisoblagich dasturlarni maketga yuklash

 

6 – amaliy mashg‘ulot:

Virtual sakkiz razryadli ikkilik ayiruvchi xisoblagich qurish. Sakkiz razryadli xisoblagich dasturlarni maketga yuklash

 

7 – amaliy mashg‘ulot:

Virtual sakkiz razryadli ikkilik ayiruvchi xisoblagich uchun maket yaratish.

Sakkiz razryadli xisoblagich dasturlarni maketga yuklash

 

8 – amaliy mashg‘ulot:

Yetti segmentli indikator maketini yaratish.Yetti segmentli indikator dasturlarni maketga yuklash

9 – amaliy mashg‘ulot:

LCD displey maketini yaratish.LCD displey dasturlarni maketga yuklash

 

LABORATORIYa MAShG‘ULOTLARI MAZMUNI

 (6-semestr)

1-laboratoriya mashg‘uloti

FLOWCODE dasturiy intefeysi bilan tanishish.

FLOWCODE Oddiy dasturlar yaratish.

2-laboratoriya mashg‘uloti

Tarmoqlanuvchi dasturlar yaratish.

Muxitda oddiy dasturlash jarayonlari.

3-laboratoriya mashg‘uloti

Qism dastur va siklik dasturlar yaratish

Muxitda murakkab dasturlash jarayonlari

4-laboratoriya mashg‘uloti

CALCULATION dasturiy komponentlaridan foydalanish.

Massiv tushunchasi.Massivlarni tashkil qilish dasturiy jarayonlari.

5-laboratoriya mashg‘uloti

LCD DISPLAY va LED komponentlari asosida oddiy dasturlar tuzish

 Muxitlar yordamida qo‘shimcha komponetlar ishlab chiqarish dasturiy ta’minotini yaratish.

6-laboratoriya mashg‘uloti

Uzilishlarni tashkil qilish va murakkab dasturlash jarayonlari

Stek qurilmalari bilan ishlash va ularning dasturlash jarayonlari

7-laboratoriya mashg‘uloti

O‘rnatilgan modul USART dasturi.

Tashqi qurilmalar bilan ishlash jarayonlari.

8-laboratoriya mashg‘uloti

O‘rnatilgan modul PWM dasturi.

Emulyatorlar bilan ishlash.Sozlash.Emulyator bilan bog‘lanish.

9-laboratoriya mashg‘uloti:

KeyPad komponeti dasturi. Tashqi qurilmalarni boshqarish dasturiy ta’minotini yaratish..

 

O‘QITISH SHAKLLARI

 

         Mazkur modul bo‘yicha quyidagi o‘qitish shakllaridan foydalaniladi:

-         ma’ruzalar, amaliy mashg‘ulotlar (ma’lumotlar va texnologiyalarni anglab olish, aqliy qiziqishni rivojlantirish, nazariy bilimlarni mustahkamlash);

-         davra suhbatlari (ko‘rilayotgan loyiha yechimlari bo‘yicha taklif berish qobiliyatini oshirish, eshitish, idrok qilish va mantiqiy xulosalar chiqarish);

-         bahs va munozaralar (loyihalar yechimi bo‘yicha dalillar va asosli argumentlarni taqdim qilish, eshitish va muammolar yechimini topish qobiliyatini rivojlantirish).

 

BAHOLASH MEZONI

¹

Baholash turlari

Maksimal ball

Ballar

1

Keys topshiriqlari

2.5

1.2 ball

2

Mustaqil ish topshiriqlari

0.5 ball

3

Amaliy topshiriqlar

0.8 ball

 

        

 


III. MODULNI O‘QITIShDA FOYDALANILADIGAN INTERFAOL TA’LIM METODLARI

 

“SWOT-tahlil” metodi.

Metodning maqsadi: mavjud nazariy bilimlar va amaliy tajribalarni tahlil qilish, taqqoslash orqali muammoni hal etish yo‘llarni topishga, bilimlarni mustahkamlash, takrorlash, baholashga, mustaqil, tanqidiy fikrlashni, nostandart tafakkurni shakllantirishga xizmat qiladi.

 

Namuna:  O‘zbekiston Respublikasida IPTV tizimining rivojlanish istiqbollarini  SWOT tahlilini ushbu jadvalga tushiring.

S

Yuqori sifat, yuqori tezlik, interaktiv xizmatlar

HD formatdagi kanallar, 2 Mbit/s tezlik, eletron telegid xizmatlarini joriy qilish imkoniyatdlari

W

Tashqi ta’sirlar, transport tarmoqlarining talab darajada emasligi

Tashqi mexanik ta’sirlarga zaif, infrastrukturasi yaxshi rivojlanmagan shaxarlarda qo‘llay olmaslik

O

Bitta optik toladan 3ta xizmatni tashkil etilishi

IPTV, internet, telefoniya

T

Tizim komponentlari tannarxining yuqoriligi

Abonentlar internetdan foydalanish darajasini oshirilishi

 

 

 

 

 

 

 

 

“Aqliy hujum” metodi

   “Aqliy hujum” metodining mohiyati  jamoa hamkorligi asosida  muammoni yechish jarayonlarini vaqt bo‘yicha bir qancha bosqichlarga  (g‘oyalarni generatsiyalash, ularni tanqidiy va konstruktiv holatda ishlab chiqish) ajratishdan iborat.

   Dars jarayonida  aqliy hujumdan maqsadli foydalanish ijodiy, nostandart tafakkurlashni rivojlantirish garovi hisoblanadi.   “Aqliy hujum” ni uyushtirish bir muncha sodda bo‘lib, undan ta’lim mazmunini o‘zgartirish jarayonida foydalanish bilan birgalikda ishlab chiqarish muammolarining yechimini topishda ham juda qo‘l keladi. Dastlab guruh yig‘iladi va ular oldiga muammo qo‘yiladi. Bu muammo yechimi to‘g‘risida barcha ishtirokchilar o‘z fikrlarini bildiradilar. Bu bosqichda hech kimning o‘zga kishi g‘oyalariga  hujum qilishi va baholashiga  haqqi yo‘q. Demak, “aqliy hujum”  yo‘li bilan qisqa minutlarda o‘nlab g‘oyalarni yuzaga chiqarish imkoniyatlari mavjud bo‘ladi. Aslini olganda g‘oyalar sonini qo‘lga kiritish asosiy maqsad emas, ular muammo yechimini oqilona ishlab chiqish uchungina asos bo‘ladilar. Bu metod shartlaridan biri hech qanday tashqi ta’sirsiz qatnashuvchilarning  har biri faol ishtiroki bo‘lishi kerak. Bildirilgan g‘oyalarning  besh yoki oltitasigina  asosiy hisoblanib, muammo yechimini topishga  salohiyatli imkoniyatlar yaratadi.

   Shunday qilib,  “aqliy hujum” qoidalarini quyidagicha belgilash mumkin:

   *olg‘a surilgan g‘oyalar baholanmaydi va tanqid ostiga olinmaydi;

  *ish sifatiga emas, soniga qaratiladi, g‘oyalar qancha ko‘p bo‘lsa, shuncha yaxshi;

   *istalgan g‘oyalarni mumkin qadar kengaytirish va rivojlantirishga qaratiladi;

   *muammo yechimidan uzoq g‘oyalar ham qo‘llab quvvatlanadi;

   *barcha g‘oyalar yoki ularning mag‘zi (farazlari) qayd etish yo‘li bilan yozib olinadi;

   *”hujum”ni o‘tkazish vaqti aniqlanadi va unga rioya qilinishi shart;

   *beriladigan savollarga qisqacha (asoslanmagan) javoblar berish ko‘zda tutilishi kerak.

   Vazifasi.   “Aqliy hujum” qiyin vaziyatlardan qutulish choralarini topishga, muammoni ko‘rish chegarasini kengaytirishga, fikrlash bir xilliligini yo‘qotishga va teng doirada tafakkurlashga imkon beradi. Eng asosiysi, muammoni yechish jarayonida kurashish muhitidan ijodiy hamkorlik kayfiyatiga o‘tiladi va guruh (auditoriya)  yanada jipslashadi.

   Ob’ekti. Qo‘llash maqsadiga ko‘ra universal hisoblanib, tadqiqotchilikda (yangi muammoni yechishga imkon yaratadi), o‘qitish jarayonida (o‘quv materiallarini tezkor o‘zlashtirishga qaratiladi),  rivojlantiriladi (o‘z-o‘zini bir muncha samarali boshqarish asosida faol fikrlashni shakllantiradi), asqotadi.

  

Qo‘llanish usuli. “Aqliy hujum” ishtirokchilari oldiga qo‘yilgan muammo bo‘yicha har qanday mulohaza va takliflarni bildirishlari mumkin. Aytilgan fikrlar yozib boriladi va ularning mualliflari o‘z fikrlarini qaytadan xotirasida tiklash imkoniyatiga ega  bo‘ladi. Metod samarasi fikrlar xilma-xilligi bilan tavsiflanadi va hujum davomida ular tashkil qilinmaydi, qaytadan ifodalanmaydi. Aqliy hujum tugagach, muhimlik jihatiga ko‘ra eng yaxshi takliflar generatsiyalanadi va muammoni yechish uchun zarurlari tanlanadi.

 

Ajurli arra” metodi

 

   “Ajurli arra” metodi tuzilish jihatdan o‘zida quyidagi bosqichlarni qamrab oladi.

    1. Topshiriqni bo‘lish. Topshiriq va matnli materiallar bir nechta asosiy qismlarga (yoki mavzularga) kiritiladi.

   2. Ekspert guruhlar.  Qo‘lida bir mavzuga oid o‘quv topshiriqlari mavjud bo‘lgan talablar mavzuni muhokama qilish, boshqalarga o‘rgatish rejasini egallash uchun ekspert guruhga birlashadilar.

   3. Birlamchi guruhlar. Tinglovchilar o‘zlarining birlamchi guruhlariga qaytadilar va ekspert guruhlarda o‘rganganlarini o‘qitishadi.

   “Ajurli arra” metodi mohiyatiga aniqlik kiritish uchun ba’zi bir tavsiyalarni yoritish lozim.

   1.O‘qitish jarayoniga bu tarzda yondoshilganda tinglovchilarning hamkorlikda ishlashiga  va qisqa vaqt ichida katta hajmdagi axborotlarni o‘zlashtirishlariga imkon yaratiladi.

   2.U yoki bu faoliyatni darsda amalga oshirish uchun tinglovchilarga boshlang‘ich axborotlarni uzatish zaruriyati tug‘ilsa, ma’ruza o‘rnini bosa oladigan samarali instrumentariy hisoblanadi.

   3.O‘qituvchi murakkab mazmunli mavzular bo‘yicha tinglovchilarni darsga tayyorlash uchun oldindan ularning har biriga mo‘ljallangan alohida axborotli paket tayyorlaydi. Unda darslikdan, qo‘shimcha tarzda gazeta, jurnal, maqolalardan materiallar bo‘lishi kerak.

   4. Har bir tinglovchi 2 guruh tarkibida ishtirok etadi: dastlab ”o‘z uyi” (birlamchi) guruhiga, keyin esa “ekspert guruhiga birlashib, o‘quv elementlarini mustaqil o‘rganishadi. Ekspert guruhini tezda tashkil etish uchun  tinglovchilar olgan axborotli paketlarda har bir mavzuga oid materiallar bir xil rangdagi qog‘ozlarga yozilgan yoki rangli qalam bilan qog‘ozning biron-bir burchagi bo‘yalgani ma’qul.

   5. Har bir guruhda 3 tadan 5 tagacha o‘quvchi (o‘quvchilarning soniga qarab) bo‘lishi mumkin. Har bir tinglovchi “o‘z uyi”dagilarni qayta uchrashish joyini aniqlab olishi kerak.

   6.O‘qituvchi tinglovchilarni “rangli” topshiriqlar asosida guruhga birlashtirishni taklif etadi va ular alohida mavzular bo‘yicha ekspertga aylanadi.  Misol uchun, “qizil”larni  auditoriya xonasi oxirida, “ko‘k”larni esa yo‘lakchada uchrashish belgilanadi. Har bir ekspert guruhda 3 tadan kam tinglovchi bo‘lmasligi kerak.

   7. Guruhlarga axborotli paket tarqatiladi. Har qaysi guruh turli xil materiallar to‘plamini olishlari  va ularni o‘qishi, muhokama qilishi, aynan shu axborotlar bo‘yicha ekspertga aylanishi lozim, o‘quv materiallari to‘plamini olishlari va ularni o‘qishi, muhokama qilishi, aynan shu axborotlar bo‘yicha  “ekspert” bo‘lishi uchun o‘quvchilarda  vaqt yetarli bo‘lishi kerak.  Bu uchun agar materiallar murakkab va katta bo‘lsa, ehtimol, bir dars to‘liq talab qilinadi.

   8. Tinglovchilarga quyidagi topshiriqlar beriladi:

   -paketdagi materiallarni qunt bilan o‘rganing va muhokama qiling;

   -bir-biringizdan so‘rang va o‘quv materiallarini  har biringiz tushunib olganingizga ishonch hosil qiling;

   -o‘z “uyingiz“  guruhini o‘qitish zarurligini hisobga olib,  materiallarning muhim o‘quv elementlariga e’tiborni qarating:

   9. Tinglovchilarning o‘z “uylariga” qaytishlarini iltimos qiling.  Har kim o‘z “uyi”-guruhiga axborot beradi. Shaksiz, “uy” guruhida ekspert guruhlaridan bittadan tinglovchi bo‘lishi shart, tinglovchi o‘rganib kelgan materiallarni o‘z guruhi tinglovchilariga o‘rgatish javobgarligini bo‘yniga olib, yana bir soat davom etishi mumkin.

   10. Tinglovchilar bir-birlaridan axborotlarni o‘rganib bo‘lishgach, o‘qituvchi oldindan rejalashtirilgan faoliyat turini o‘tkazishi mumkin.

 

“Muammo” texnologiyasi

   Texnologiyaning maqsadi:  tinglovchilarga o‘quv fanining mavzusidan kelib chiqqan turli muammoli masala vaziyatlarining yechimini to‘g‘ri topishlariga o‘rgatish, ularda muammo mohiyatini aniqlash bo‘yicha malakalarni shakllantirish, muammolar yechishning ba’zi usullari bilan tanishtirish va uslublarni to‘g‘ri tanlashga o‘rgatish,  muammoni kelib chiqish sabablarini, muammoni yechishdagi hatti-harakatlarni to‘g‘ri aniqlashga o‘rgatadi.  

Mashg‘ulotning o‘tkazish tartibi:

O‘qituvchi tinglovchilarni guruhlarga ajratib, ularni o‘rinlariga joylashtirilgandan so‘ng, mashg‘ulotni o‘tkazish tartib-qoidalari va talablarini tushuntiradi, ya’ni u mashg‘ulotni bosqichli bo‘lishini va har bir bosqich tinglovchilardan maksimum diqqat-e’tibor talab qilinishi, mashg‘ulot davomida ular  yakka, guruh va  jamoa bo‘lib  ishlashlarini aytadi. Bunday kayfiyat tinglovchilarga berilgan topshiriqlarni bajarishga tayyor bo‘lishlariga yordam beradi va bajarishga qiziqish o‘yg‘otadi. Mashg‘ulotni o‘tkazish tartib-qoidalari va talablari tushuntirilgach, mashg‘ulot boshlanadi:

   Tinglovchilar tomonidan mashg‘ulot uchun tayyorlangan kinolavhani diqqat bilan tomosha qilib, unda yoritilgan muammoni aniqlashga harakat qilish, xotirada saqlab qolish yoki daftarga belgilab qo‘yish (agar kinofilm ko‘rsatishning imkoniyati bo‘lmasa, u holda o‘qituvchi o‘quv predmetining mavzusi bo‘yicha plakat, rasm, afisha yoki bir muammo bayon qilingan matn, kitobdagi o‘quv materialidan foydalanish mumkin):

   *har bir guruh a’zolari tomonidan ushbu lavhadan (rasmdan, matndan, hayotiy voqeadan) birgalikda aniqlangan muammolarni vatman yoki formatdagi qog‘ozga flomaster bilan yozib chiqiladi;

   *berilgan aniq vaqt tugagach, tayyorlagan ishni guruh vakillari tomonidan o‘qib eshittiriladi;

  *o‘qituvchi guruhlar tomonidan tanlangan va muammolar yozilgan qog‘ozlarni almashtirgan holda guruhlargai tarqatiladi;

   *tarqatilgan qog‘ozlarda guruhlar tomonidan yozilgan muammolardan har bir guruh a’zosi o‘zini qiziqtirgan  muammodan birini  tanlab oladi;

   *o‘qituvchi tomonidan tarqatilgan quyidagi chizmaga har bir guruh a’zosi o‘zini qiziqtirgan muammodan birini tanlab oladi;

   *o‘qituvchi tomonidan tarqatilgan quyidagi chizmaga har bir guruh a’zosi  tanlab olgan muammosini yozib, mustaqil ravishda tahlil etadi.

“BLIS O‘YIN” metodi - harakatlar ketma-ketligini to‘g‘ri tashkil etishga mantiqiy fikrlashga, o‘rganayotgan predmeti asosida ko‘p, xilma xil fikrlardan, ma’lumotlardan kerakligini tanlab olishni o‘rgatishga qaratilgan. Ushbu texnologiya tinglovchilarga tarqatilgan qog‘ozlarda ko‘rsatilgan harakatlar ketma ketligini  avval yakka holda mustaqil ravishda belgilab, so‘ngra o‘z fikrini boshqalarga o‘tkaza olish yoki o‘z fikrida qolish, boshqalar bilan hamfikr bo‘la olishga yordam beradi.

“BUMERANG” texnikasi – tinglovchilarni dars jarayonida, darsdan tashqarida turli adabiyotlar, matnlar bilan ishlash, o‘rganilgan materiallarni yoddan saqlab qolish, so‘zlab bera olish, fikrni erkin holda bayon eta olish hamda bir dars davomida barcha tinglovchi talabalarni baholay olishga qaratilgan. “Bumerang” texnologiyasi tanqidiy fikrlash, mantiqli shakllantirishga, imkoniyat yaratadi; xotirani, g‘oyalarni, fikrlarni, dallillarni yozma va og‘zaki shakllarda bayon qilish ko‘nikmalarini rivojlantiradi .

 “SINKVEYN” metodi – ta’lim oluvchilarni axborotlarni qisqa bayon etishga o‘rgatadi, hamda olingan ma’lumotlar ustida chuqur ilanishga chorlaydi.

 “QORA QUTI” metoditinglovchilar bu metod asosida yechiladigan muammolar aniq vaziyatni tahlil qilish orqali amalga oshiriladi, muammolar sababi yo‘l-yo‘lakay aniqlanadi.

“LOYIHA” metodi – ta’lim oluvchilarning invidual yoki guruhlarda belgilangan vaqt davomida, belgilangan mavzu bo‘yicha axborot yig‘ish, tadqiqot o‘tkazish va amalga oshirish ishlarini olib borishidir. Bu metodda ta’lim oluvchilar rejalashtirish, qaror qabul qilish, amalga oshirish, tekshirish va xulosa chiqarish va natijalarni baholash jarayonlarida ishtirok etadilar.

 

 

 

 

 

 

III. NAZARIY MATERIALLAR

 

1-MAVZU. RAQAMLI TEXNIKA, MIKROPROTSESSOR VA MIKROPROTSESSORLI TIZIM TUSHUNCHALARI VA ATAMALARI.

Reja.

         Raqamli texnika rivojlanishining asosiy yo‘nalishlari.

         Raqamli qurilmalar, signallar ta’rifi va tushunchalari. Axborot kommunikatsion tizimlarda qo‘llanilishi.

 

                            AMK protsessorning asosiy elementlaridan biri xisoblanadi. AMK 2-kismdan iborat:

1.Summator

2.Logik amallarni bajaruvchi kurilma

Summator arifmetik amallarni bajaradi.Summatorning nechta kirishdan iborat bulishi bilan kuyidagi turlarga bulinadi:

A)Yarim summator(2-ta kirishi bor).

V)Bir razryadli summator(3-ta kirishi bor)

S) Kup razryadli summator( kirishlar soni kup)

Summatorlarni sanok sistemasida ishlatish buyicha 2-turga bulinadi.

1.2-lik Summator

2.Dekadli Summator

Utish razryadni uzatish uslubi buyicha summatorlar 2 ga bulinadi.

A)Ketma-ket uzatish

V)Paralel uzatish

Yarim summator va uning ishlash tablitsasi.

 

ai

vi

Si

Ri

0

0

0

0

0

1

1

0

1

0

1

0

1

1

0

1

 

Si= ai+ vi bu yerda

 

Ai –1-chi kushiluvchi , Vi-2 chi -kushiluvchi, Si-summasi, Ri-utish razryadi.

 

Si= ai vi + ai vi Ri= ai vi

 

 

 

 

 

 

 

 

ai vi

 

 

&

 

 

1

 

 

 

 

&

 

 

 

 

 

 

1

 

 

 

 

Si

 

&

 
 

 

 

 

 

 

 

 

 


Ri

 

 

 

 

 

 


Bir razryadli summatorning ishlash tablitsasi.

 

Bir razryadli summatorda kushish amalidan oldini utish razryadi xisobga olinadi.

 

Kirish chikish

 

¹

ai

vi

Ri-1

Si

Ri

0

0

0

0

0

0

1

0

0

1

1

0

2

0

1

0

1

0

3

0

1

1

0

1

4

1

0

0

1

0

5

1

0

1

0

1

6

1

1

0

0

1

7

1

1

1

1

1

 

Si= ai vi + Ri-1

Vi Karno Karta

Ri-1

 

 

 

 

 


0

1

0

1

1

0

1

0

ai

 


Si= Ri-1 *ai * vi + Ri-1 *ai * vi+ Ri-1 *ai * vi+ Ri-1 *ai * vi

 

Karno kartasi.

 

 

Vi

Ri-1

 


0

0

1

0

0

1

1

1

ai

2 1 3

 

 

Ri= Ri-1*vi + Ri-1 ai +ai*vi

ai vi Ri-1

 

 

&

 

 

 

&

 

 

 

 

 

 

 

 

 

1

 

 

1

 

 

1

 

 

1

 

 

1

 

 

1

 

 

 

 

 

 

 

 

Si

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


ai vi Ri-1

 

 

 

 

 

 


Ri

 

 

 

 

 

 

 

 

 


Yarim summatorning sxemasi.

 

 

 

 

 

 

 

 

 


2-ta yarim summatorni kuyidagicha ulab summatorni tuzish mumkin.

 

Si

S

 

Ð

 

À

 

Â

 

 

 

 

 

S

 

Ð

 

 

HS

 

À

 

Â

 

 
Ai

 


vi

 

 

 

 

 

 


 

 

1

 
Ri

Ri-1

 

 

 

 

Cummatorni bir biri bilan boglab,kup razryadli summatorlarni tuzish mumkin.

Misol: 4-razryadli summator sxemasi kuyidagicha.

 


À

Â

ð

 

 

SM

2

 

S

 

Ð

 

À

Â

ð

 

S

 

Ð

 

 

SM

3

 

S

 

Ð

 

 

SM

1

 

À

Â

ð

 

S

 

Ð

 

À

Â

Ði-

 

 

SM

0

 
A0 A1 A2 A3

 

 

 


R1 r2 r3

 

 

 

                            Ushbu sxema utkazish razryadlari (R) ketma-ket uzatiladi.Agar razryadlar soni katta bulsa,utish vakti oshib ketadi va summatorning ishlash tezligi kamayadi.Shuning uchun utish vaktini kamaytirish uchun turli usullar kullaniladi.Ushbu usullarda utish razryadlari paralel xolda uzatiladi.Shuning uchun utish vakti razryadlar soniga boglik emas.Ketma-ket utishning asosiy kamchiligi shuki juda kup kirishli kombinatsion sxemalarni tuzishga tugri keladi.Shuning uchun ushbu usulni razryadlar soni katta bulmagan summatorlar uchun ishlatish mumkin.

                            Dekadli summatorlar –lik sonining xar bir razryadi aloxida 2-lik kurinishida tasvirlanadi.Misol uchun: 345

0011 0100 0101

2-lik arifmetikasida xar bir 10-lik razryadning 2-likdagi kurinishi «TETRAD»deyiladi. Dekadli summatorda tetradning kiymati 9-dan oshsa unda tetradning kiymatini 10-taga kamaytirish kerak.

Dekadali summatorning sxemasi.

S0

 


S1

 


S2

 


«0”

 

 

 

 

1

 
 

 

 

 


Ri

 

 

 

 

 


Logik kurilma.

Kuyidagi mantikiy amallarni bajaruvchi kurilmani tuzish.

1)ILI F=aVv

2)I F=a^v

3)ILI-NE F=a+v

4)I-NE F=a*v

 

 

S1

S0

¹

0

0

0

0

1

1

1

0

2

1

1

3

 

Ushbu logik kurilmaning sxemasi.

 

&

 

1

 

&

 

1

 

0

 

 

1

 

 

2

 

3

 

S0

S1

 

MC

 
a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

            Tuzilgan arifmetik va logik kurilmalarni birlashtirib arifmetik logik kurilma xosil kilamiz.(ALK).Amallarni bir-biridan farklash uchun yana bitta boshkaruv signalini kiritamiz.

Arifmetik amal bajarish.

M

Logik amalni bajarish.

Ushbu amalni bajarish uchun 2-ta kirish mul’tpleksoridan foydalinamiz,ushbu xolda ALK sxemasi kuyidagicha buladi.

 

 

 

 

 

ËÊ

 

 

 

ÀÊ

 

0

 

 

 

 

 

1

 

 

 

 

S

 

MC

 
A S

v

 

 

 

 

 

 

 

 


M

 

 

 

 

 

 

            Bajariladigan amal soni oshishi bilan boshkaruv signallari elementlari soni oshib boradi.1-chikkan protsessorlarda fakat oddiy arifmetik amal bajarilgan.Kupaytirish va bulish amallari bulmagan.Ushbu amallarni dastur tuzish yuli bilan bajarilgan.Shuning uchun protsessor bir necha 10.000 tranzistorlardan tashkil topgan.Xozir protsessorlarda barcha arifmetik logik amallar apparat usulida bajariladi,tranzistorlarni soni bir necha 1.000.000 ni tashkil etadi.

Îâàë: +

2-lik modulida kushuvchi logik element.

 

 

1)U=X1 X2

X2

X1

U

0

0

0

0

1

1

1

0

1

1

1

0

 

U=X1* X2 + X1*X2= X1 X2

 

Ì2

 
X1

U U

X2

 

 

 


2)Ekvivalentli logik sxema tng bulmaganda “0”ga,teng bulganda “1”ga teng.

U=X1* X2 + X1*X2= X1 X2

X2

X1

U

0

0

1

0

1

0

1

0

0

1

1

1

 

Invertor.

A) U=X

NE

 

 

1

 

 

 

1

 
X

U

 

 

 


X

U=X

0

1

1

0

 

V) U=X1+X2=X1VX2

 

ILI

X1

 


U

X2

 

 

X1

X2

U

0

0

0

0

1

1

1

0

1

1

1

1

 

S) U=X1*X2=X1^X2

 

 

 


I

X1

 


X1

X2

U

0

0

0

0

1

0

1

0

0

1

1

1

 

 

G) U=X1+X2 = X1VX2 =X1 X2

 

ILI-NE

 

 

1

 
X1

 


U

X2

 

 

X1

X2

U

0

0

1

0

1

0

1

0

0

1

1

0

 

D) ) U=X1*X2 = X1^X2 =X1 / X2

 

I-NE

 

 

&

 
X1

 


U

X2

 

 

X1

X2

U

0

0

1

0

1

1

1

0

1

1

1

0

 

 

 

 

 

Ye) U=X1 X2

 

 

 

Ì2

 
X1

 

U

X2

 

 

 

X1

X2

U

0

0

0

0

1

1

1

0

1

1

1

0

 

 

 

D)  U=X1 X2

 

 

=

 
X1

 


U

X2

 

 

X1

X2

U

0

0

1

0

1

0

1

0

0

1

1

1

 

 

 

 

 

 

 

 

 

 

2-MAVZU. MIKROPROTSESSORLI  TIZIMLARNI TURLARI, TUZILISHI VA ISHLASH ASOSLARI.

 

Reja.

1.     Mikroprotsessorli  tizimlarni turlari

2.     Mikroprotsessorli  tizimlarning tuzilishi va ishlash asoslari

 

Magistral-modul strukturali MPT

 

OHQ – operativ xotira qurilmasi
DXQ – doimiy xotira qurilmasi
PQ – pereferiya qurilmasi

Fon-Neman arxitekturali MPT

 

Mikroprotsessor tizimining xotira bo‘shlig‘ini shakllantirish  usuliga ko‘ra MP arxitekturalari ikkita asosiy turga bo‘linadi.

Dasturlar va ma’lumotlarni saqlash uchun bitta xotira bo‘shlig‘i qo‘llanilgan tuzilish fon Neyman arxitekturasi deb ataladi (dasturlarni ma’lumotlar formatiga muvofiq keladigan formatda kodlash   taklifini   kiritgan   matematik   nomi   berilgan).

 

 

 

 

 

 

 

 

 

 

Garvard arxitekturali MPT

 

Ayrim mikroprotsessorlarda magistralning jismoniy enini toraytirish maqsadida manzil-ma’lumotlarning qo‘shma shinasi AD   (ingl. Address/Data  Bus)  joriy  etilib, ushbu shina orqali manzillar  ham,  ma’lumotlar ham uzatiladi. Manzilga oid axborot uzatish  bosqichi   ma’lumotlar uzatish bosqichidan vaqt   bo‘yicha ajratilgan bo‘lib, SV tarkibiga kiritilgan maxsus ALE (ingl. Address Latch  Enable)  signali vositasida stroblanadi. Ushbu magistral, odatda,       multipleks  magistral  yoki   manzillar  va ma’lumotlarning    qo‘shma    shinasi    bilan    birgalikdagi    ikki shinali magistral deb ataladi.

Ma’lumotlarning  magistral orqali  tabiiy  almashinishi kanalga  so‘zlar  yoki  baytlar  vositasida  bir-biridan  keyin  amalga oshiriladigan     murojaatlar  ko‘rinishida  kechadi.  Magistralga murojaatlarning bitta  sikli davomida MP, xotira qurilmasi va kiritish-chiqarish tizimi  o‘rtasida bitta so‘z yoki bayt uzatiladi. Almashinishning bir nechta   sikllari  mavjud. Ular jumlasiga xotirani o‘qish va xotiraga yozish sikllari kiradi.

MPT ishlash rejimlari:     

1.    Axborotlarni dasturiy usul asosida uzatish va qabul qilish

2.     

2. Axborotlarni uzilish asosida uzatish va qabul qilish

3.     Xotiraga to‘g‘ri ulanish asosida uzatish va qabul qilish

 

 

 

 

 

 

 

3-mavzu. Mikroprotsessorli tizimlarning shinalari va axborot almashinuv sikllari.

Reja

1.     Mikroprotsessorli tizimlarning shinalari

2.     Mikroprotsessorli tizimlarning axborot almashinuv sikllari

 

Ma’lumotlar almashuv yo‘nalishi bo‘yicha interfeyslar quyidagilarga ajratiladi.

Simplekslik-bir yo‘nalishli ma’lumot almashuvi.

Yarim duplekslik navbatma-navbat ikki yo‘nalish bo‘yicha ma’lumot almashuvchi.

Multiplekslik – ma’lumot almashish umumiy magistral (shinalar) orqali amalga oshiriladi, bunda har  daqiqada axborot manba’si va qabul qiluvchisi muloqotda bo‘ladi.

Ma’lumot almashish

Axborot uzatuvchi kanallarga ulangan hamma qurilmalar (modullar) abonentlar deb ataladi. MPT dagi abonentlarning bir – biri bilan struktur ulanish jixatidan interfeyslar radial, halqa, kaskad va magistralari bilan farqlanadi. Markaziy protsessorga (MP) ikki yo‘nalishlik va o‘rnatilgan ustunlik asosidagi abonentlar (ishga stansiyalar, uzoqlikdagi tashqi qurilmalar, sanoat avtomatikaning sxemalari) ulanadi.

Abonentlararo ma’lumotlar almashuvi jarayoni markaziy protsessor orqali tashkil etilib, bunda MP konsentrator va abonetlar ishlarini mustaqil va parallel ravishda bajarilishini ta’minlaydi.

Radial interfeys-mantiqiy oddiy bo‘lgani bilan,  katta apparat ta’minotini sarflashni talab etadi. Undan tashqari uning yashovganligi markaziy protsessorning ishonchligiga bog‘liqdir.

         Interfeyslar

 

 

 

Halqalik interfeyslarda har bir abonent qo‘shni ikki abonentlar bilan bog‘liqdir. Halqada bir vaqtda bir nechta ahborotlar manba’lardan qabul qiluvchilar tomon aylanib yurishi berilgan adreslash va boshqarish usullari asosida amalga oshiriladi. MPT kengaytirilganda halqa tizimiga qo‘shimcha modullar ulanadi. Halqalik interfeyslardagi abonentlarning o‘zaro muloqati murakkabligi uning eng katta kamchiligidir.

Kaskadlik interfeyslarda abonentlar halqa ko‘rinishda ulangan bo‘ladi va ular interfeys liniyalariga xizmat ko‘rsatish tartibi asosida ulanadilar. Kaskad interfeyslari kichik sonlik liniyalar va ish tezligining chegaralanganligi bilan xarakterlanadi.

Magistral interfeyslarda umumiy shina qo‘llanilgan bo‘lib, shunday deb ataladi. Magistraldan uzatilayotgan axborot hamma ulangan abonentlar uchundir. Ko‘pincha faqat bitta abonent turli vaqt davrida foydalanish mumkin bo‘lgan axborot manba’si bo‘lishi mumkin.

Abonent mavqei shina arbitri (ShA) yordamida aniqlanadi.

MPT larda tizim interfeyslari sifatida tez moslashuvchanligi, tejamliligi bilan ajraladigan magistral interfeyslar ishlatiladi.

Ma’lumotlarni vaqt davomida uzatilishi usuli bo‘yicha quyidagi interfeyslar farqlanadi:

Sinxronlik-ma’lumot almashuv o‘rnatilgan davomiyligi asosida;

Asinxronlik-ma’lumot almashuv o‘zgaruvchan davomiylik asosida;

Sinxron-asinxronlik-ikki usulning kombinatsiyalab ulanganlik asosida.

Uzatilayotgan ma’lumotlar razryadlarning qiymatini bo‘yicha interfeys parallel (so‘zlar), ketma-ket (bitlar)va parallel-ketma-ket ko‘rinishlari bilan farqlanadi. Interfeyslarning klassifikatsion alomatlariga yanada quyidagilar tegishlikdir:

Uzilishlarning tashkil etish (vektorlik yoki ketma-ket so‘rov asosida) va xotiraga to‘g‘ridan-to‘g‘ri murojat etish;

Modullarni shinaga siklik parallel, ketma-ket, murojaat etishning arbitraj usuli;

Ma’lumotlarni adreslash, boshqarish, sinxronizatsiyalash liniyalar soni;

Aloqa (o‘tkazgichlar, radiokanal, optik tolalik turlar) liniyalar uzunligi va turlari;

Shinaga bir vaqtda ulanish mumkin bo‘lgan abonentlarning maksimal soni;

Tashqi qurilmalarning adreslash resurslili-o‘ziga tegishlik bo‘lgan adres maydoni (Intel firmasi mahsulotlari xarakterli) yoki xotira adres maydonida aks ettirilish bilan (DES firmasi maxsulotlarida foydaniladi).

Tizim interfeyslari

MPT larda standart parallel tizim interfeyslari keng ishlatilib, ularda komanda formatlari, ma’lumotlar va ularning almashuvi, algoritmning ishlashi, aloqa liniya to‘plami va turlari, ma’lumot uzatish tezligi, konstruktiv talablar, modul tizimi ruxsat etilgan masofalari, avvalgi mavjud interfeyslar bilan kengaytirish va moslashtiruv imkoniyatlari unifikatsiyalashtirilgan. Yuqori tezlikda ma’lumotlarni almashuvni tashkil etishda sakkiz razladlik-Microbug;

         16 razradlik-Unibus, Q-bus, Multibus 1;

         32 razradlik-Vercabus

         Ma’lumotlarni parallel uzatuvchi asinxron multipleksorlik interfeyslar qo‘llaniladi.

Mavjud davrda MPT ning ko‘pgina standart tizim interfeyslari konkret turdagi mikroprotsessorlar uchun optimallashtirilgandir.

Interfeys mikrosxemalari MPT da turli funksiyalarni bajaruvchi interfeys mikrosxemalaridan keng foydanilmoqda, masalan: takt impulslarni generatsiyalash, adreslarni saqlab turish, qo‘shni tizimlar bilan ikki taraflama ma’lumot almashuvini tashkil etish, xotira yoki portlardagi ma’lumotlarni o‘qish-yozish boshqaruv signallarni ishlab chiqish, arbitraj, ko‘p mikroprotsessorlar tizim shinalariga mavqeylik murojat etish signallarini va boshqalar.

 

 

4-MAVZU. MIKROPROTSESSORLI  TIZIMLARLARNI ASOSIY QURILMALARINING TUZILISHI VA VAZIFALARI.

Reja

1. Mikroprotsessorli tizimlarning asosiy qurilmalari.

2. Mikroprotsessorli  tizimlarlarni asosiy qurilmalarining tuzilishi va vazifalari.

 

Protsessor funksiyalari

 

Protsessor mikrosxemasi 3ta chiqish shinasiga ega: adres shinasi, ma’lumot va boshqaruv shinalariga ega.Ba’zi protsessor mikrosxemasini chiqishlari sonini kamaytirish maqsadida signallar va shinalar multiplekslanadi (rasm1.1.).

Protsessorning asosiy xarakteristikasi-bu MSh laridagi razryadlar soni,ASh sidagi adreslar soni va BSh dagi boshqaruv signallar soni.MSh dagi razryadlar soni tizimning tezligini aniqlaydi.ASh dagi razryadlar tizining murakkabligini bildiradi.BSh razryadlar soni turli tizim qurilmalari bilan ma’lumot almashish effektivligini anglatadi.

Yuqorida keltirilgan shinalardan tashqari protsessor xar doim chiqishlarga ega(yoki 2ta chiqish)-tashqi takt signallarni ulash yoki kvars rezonator (CLK), protsessor xar doim taktlashtiruvchi qurilma xisoblanadi.Protsessor qanchalik ko‘p takt chastotasiga ega bo‘lsa shunchalik buyruqlarni tez bajaradi.Protsessorning afzalligi faqat uning takt chastotasi bilan emas balki uning struturasi bilan xam baxolanadi.Zamonaviy protsessorlar bir taktda ko‘p komandalarni bajaradi va bir qancha komandalarni parallel bajarish vositasiga ega.

Protsessor takt chastotasi magistral orqali ma’lumot almashish tezligi bilan uzviy bog‘liq emas,chunki ma’lumot almashishi signallarga bog‘liq.Protsessor takt chastotasi uning ichki tezligini aniqlaydi(tashqi emas).Ba’zi xolatlarda protsessor takt chastotasi past va yuqori chegaraga ega.Yuqori chastotaning oshirilishi protsessorni qizib ketishiga va ishdan to‘xtatishga olib keladi. 

 

Xar bir protsessorda mavjud signallardan RESET(sbros)

Ushbu signal asosida protsessor bajarayotgan operatsiyalarni nazorat qila olmaydi va qayta yuklanishi, ish jarayonini boshidan boshlashga majbur bo‘ladi va qandaydir adresda to‘xtab qoladi.Ushbu kamchilikni bartaraf qilishda boshlang‘ich qayta yuklash signallari beriladi.Uzatilgan signal asosida protsessor manba’ belgilangan chegaradan past ekanligi to‘g‘risida ma’lumot oladi va ma’lumotlarni saqlab qolishga xarakat qiladi.

Protsessor mikrosxemasida aloxida bo‘ladigan xolatlar uchun radial uzilishlarni tashkil qiluvchi 1-2 kirishlari mavjud.

Zamonaviy protsessorlar manba’ shinasi bitta manba’ (+5V yoki +3,3V) va “yerga”ulanish.Ba’zi protsessorlarda past manba’ talab rejimlari moslashtirilgan.Umuman olganda zamonaviy protsessorlar mikrosxemalari yuqori takt chastotasi va  yuqori quvvat talab etadi.Natijada issiqlik darajasini ta’minlash maqsadida radiatorlar,ventilyatorlar xatto mikroxolodilniklar o‘rnatiladi.

Protsessorni magistralga ulash uchun bufer mikrosxemalaridan foydalaniladi,ular o‘z navbatida signallarni demultiplekslash va magistraldagi signallarni buferlashtirishni ta’minlaydi.Ba’zida protsessor magistrallari orqali ma’lumot almashish protokollari mos kelmaydi.shu xolatlarni bartaraf etishda bufer mikrosxemalari protokollarni bir biri bilan kelishtiradi. Protsessorni manba’ga ulanishi bilan protsessor dasturning birinchi adresiga o‘tib dasturni bajaradi.Dastur DXQ(manba’ talab qilmaydigan xotira)ga yozilgan.Dasturning boshlang‘iya ishga tushirish qismidan keyin,protsessor asosiy dastur qisminiOXQ va DXQ da turgan qismini bajaradi.Dasturni bajarishdan to‘xtatish yoki boshqa ma’lumotlarni bajarish faqat tashqi uzilish buyruqlari yoki xotiraga to‘g‘ridan-to‘g‘ri murojaat  etish signallari to‘xtatadi.

Protsessorning asosiy funksiyalari:

-Bajarilayotgan komandalarni tanlash(o‘qish);

-Tashqi qurilmalardan yoki xotiradan ma’lumotlarni kiritish;

-Tashqi qurilmalardan yoki xotiradan ma’lumotlarni chiqarish;

-operandalr ustida amallarni bajarish(qayta ishlash);

-xotirani adreslash yoki ma’lumot qayta ishlash uchun xotira adresini e’lon qilish;

-xotiraga to‘g‘ri murojaat etish rejimi va uzilishlarni qayta ishlash.

  

Komandalarni tanlashni boshqarish sxemasi-komandalarni xotiradan o‘qish deshifratsiya qiladi.Oldingi MP larda komandalarni bajarib keyingi komanda bajarilishini ta’minlash mavjud bo‘lmagan.16-razryadli protsessorlarda konveer usuli mavjud bo‘lib bajarilayotgan komandadan tashqari keyingi bajarilishi kerak bo‘lgan komandalarni xam tanlash mumkin.

2ta jarayon parallel ketishi protsessor ishini tezlashtiradi.

Konveer protsessorning ko‘p bo‘lmagan ichki xotirasi deyilib tashqi shinalarning ozgina bo‘shashi imkoniyati bo‘lishi bilan bir necha komandalarni yozib qo‘yadi.Ma’lumotlar qanday ketma-ketlikda yozilgan bo‘lsa shunday o‘qiladi (xotira turi FIFO, First In — First Out, 1-chi keldi — 1-chi ketdi).

Konveer usulining rivojlanishi kesh xotira qurilmasiga misol bo‘ladi ya’ni protsessor joriy komandalarni bajarish davrida kesh xotira komandalar bilan to‘ldiriladi.Kesh xotira sig‘imi qanchali katta bo‘lsa tarkibidagi komandalarni yuklash extimolligi yuqori bo‘ladi.Shundan kelib chiqadiki,protsessor tashqi qurilmalardan komandalarni o‘qishdan ko‘ra ichki xotira(kesh)da joylashgan komandalarga murojaat etishi uning tezligini oshiradi.Zamonaviy protsessorlarda bir vaqtning o‘zida komandalarni o‘qish ,deshifratsiya qilish ,kaysi komandaga o‘tish kerakligi signalini jo‘natadi.

ALQ ning tezkorligi protsessorning ishchanligini belgilaydi.Dasturchining asosiy vazifasi qisqa vaqt ichida  komandalar tizimidan bajarish.Kisqa vaqt ichida qisqartirilgan komandalar tizimidan foydalanish(RISC-protsessorlari ) yoki parallel ma’lumot almashadigan ALQ dan foydalanish.  

Ixtiyoriy MP ichki registrlari 2ta asosiy ishchi funksiyalarni bajaradi:

1. bajarilayotgan komandaning xotira adresini aniqlaydi. (funksiya schetchik);

2.Stekning joriy ko‘rsatkichini aniqlaydi.     

Turli protsessorlarda ushbu funksiyalarni bajarish uchun 1 yoki 2 registri ajratiladi.Bu ikki ko‘rsatkich bir-biridan o‘z tarkibini o‘zgartirishi,tizim qiymatlarini o‘zgartirishi bilan farqlanadi.Shuning uchun xar qanday qo‘yilgan xotoliklar kompyuter ish jarayoniga salbiy ta’sir qiladi.

Xotira funksiyasi.

MPT xotirasi vaqtinchalik yoki doimiy ma’lumot va komandalarni saqlash funksiyasini bajaradi.

Xotira sig‘imi tizim algoritmlarining bajarilish murakkabligi aniqlaydi.Xotira moduli xotira mikrosxemalarida(operativ va doimiy)bajariladi.Ko‘pchilik MPT larida flesh-xotira (angl. — flash memory),tarkibiga bir necha marta qayta yozish mumkin bo‘lgan elektr manba’ga bog‘liq bo‘lgan xotiradan foydalaniladi.

Operativ xotira tizim bilan o‘qish va yozish siklida muloqot qiladi,doimiy xotira faqat o‘qish siklida.

Tizim tarkibida bir qancha xotira modullari bo‘lib,xar biri o‘z xotira maydonida ishlaydi.Boshqaruv sxemalari kerak davrda xotira (CS) ishlashi mumkin bo‘lgan signallar va xotiraga yozish mumkin bo‘lgan (WR )signallarni ishlab chiqaradi.Malumot buferlari ma’lumotlarni xotiradan magistralga yoki shuni aksini bajaradi.MPT xotira maydoni bo‘limlarga bo‘linib,ular maxsus funksiyalarni bajaradilar. 

Boshlang‘ich ishga tushirishdagi dastur xotirasi xar doim DXQ yoki flesh-xotirada bajariladi.Aynan shu adresdan boshlab manba’ yoqilgan va RESET signali yordamida protsessor o‘z ish jarayonini boshlaydi.

 

Stek uchun xotira yoki stek (Stack) — operativ xotiraning qismi bo‘lib, LIFO (Last In — First Out)rejimida ma’lumotlarni vaqtinchalik saqlash uchun ishlatiladi.  Stekning boshqa OXQ nisbatan afzalligi –belgilangan va o‘zgartirilmaydigan adreslash usullaridir.Ixtiyoriy sonni(kodni)stekka yozish uchun son adres bo‘yicha stek ko‘rsatkichi ko‘rsatmasi asosida  yoziladi .Natijada oxirgi yozilgan son birinchi bo‘lib,birinchi oxiri o‘qiladi.Bu xotira LIFO deyiladi.(masalan avtomat magazinida patron, oxirgi o‘rnatilagn birinchi).

 

5-MAVZU. MIKROPROTSESSOR TIZIMLARINING ISHLASH REJIMLARI

 

Elektron sistema – ma’lumot ustidan ishlov amalga oshiradigan, ixtiyoriy elektronli tugun, blok, asbob-uskuna yoki kopleks.

Vazifa – Elektron sistemadan funksiyalar to’plamini bajarilishining talabi.

Tezkorlik – Elektron sistemaning funksiyalarini bajarilishining tezlig ko’rsatkichi.

Moslashuvchanlik –sistemaning turli hil vazifalarga moslanish imkoniyati

ortiqlik – ma’lum bir sistema vazifani yechimida shu sistema imkoniyatlarini ko’rsatkich darajasini mosligi 

Interfeys  – almashinuvda ishtirok etadigan, asboblarning elekrik, mantiqiy va konstruktiv mosligini bildiradigan, ma’lumotlarni almashinuvi haqida rozilik, ma’lumotlarni almashinuvi haqida qonunlar

 

Sanoqli sistemaning xususiyatlari

Ishlov algoritmlari va ma’lumotni o’z ichida saqlash, Sistema sxematexnikasi bilan uzviy bog’liq.

Algoritmni o’zgartirishi, faqat sistemaning tuzilishini o’zgartirishda,  sistemaga kiruvchi elektron tugunlarni almashtirishda, va ularning o’zaro bog’liqligi orqali amalga oshadi. 

Ishlatish(Ekspluatatsiya) jarayonida algoritmni o’zgartirish mumkin emas –buning uchun loyihalashning yangi ishlab chiqarish sikli, tayyorlash, sozlash sistemalari kerak bo’ladi    

Ixtisoslashgan sistema, bitta vazifaga yoki (kamdan kam) bir qator o’xshash vazifalarga moslashgan

Bunday sistemalarni “qattiq mantiqdagi” sistemalar deb ataladi.

“Qattiq mantiq” dagi sistemalar. Ustunliklari apparatlik ortiqlikka ega emas.

Yuqori darajadagi maksimal ta’sir qilishi

Kamchiliklari. Har bir aniq bo’lgan vazifani sistemasini loyihalash va tayyorlash kerak bo’ladi. No universal emasligi (universial sistema- murakkab, kam ta‘sir qilinadi).

Umumiy qonun: Universiallik va bikrlik qancha yuqori bo’lsa, kam ta’sir qilinuvchisi shuncha kam bo’ladi.

 

Dasturlanayotgan sistemalar

Ustunliklari vazifaga tez moslashadi, bitta algoritmdan boshqa algoritmga o’zgarishiuniveersallik va moslashuvchanlik kamchiliklari.

-Keragidan ortiqligi

-Ishonch pasayishi

-Iste’mol qilinayotgan quvvatni oshishi

-Narxini oshirilishi

-Tezkorligi kamroq

 

Sistemalar qo’llaniladigan sohalar

 

 

6-MAVZU. MIKROPROTSESSOR TIZIMLARINING ARXITEKTURASI.

 

Asosiy ta’riflar

-Mikroprotsessor, protsessor (ing. processor, microprocessor)

-Mikroprotsessorli elektron sistemaning asosiy qismi (markazi), tugun, blok

-Mikroprotsessorli sistema ichidagi ma’lumotlarni ustidan ishlov berish uchun mo’ljallanga.

 

Ishlash xususiyatlari

-Operatsiyalarning bajarilishi(fuksiyalari) ketma-ket bajariladi

-Barcha ma’lumotlar oqimlari protsessor orqali o’tadi

 

Boshqaradigan ma’lumot – dastur

dastur – buyruqlar to’plami (qo’llanmalar)

Buyruqlar ketma-ketligi algoritmni vujudga keltiradi, har bir buyruq bu sonli kodni tasvirlaydi

Protsessor dastur bilan ishlashidagi xatti – harakatlari

Buyruq kodini yuklaydi. Buyruq kodini tahlil qiladi.Kodga muvofiq xatti – harakat amalga oshiradi. Buyruqlar turli hil sondagi turkumlarga ega ( birdan boshlab bir nechta baytga ega) bajarishning har xil vaqtiga ega.Dastur bajarilish vaqti faqat buyruqlar miqdoriga emas, balki qanday buyruqlar ishlatilishiga ham bog’liq.

Buyruqlar sistemasi – protsessor orqali bajariladigan barcha qo’llanmalar

Strukturasi va hajmi shularga ta’sir qiladi:

-tezkorlik

-moslashuvchanlik

-Ishlatish qulayligi

Buyruqlar miqdoribir qancha ontalikdan bir qancha yuzlikgacha

Buyruqlar sistemasi

Ixtisoslashgan protsessorlarning buyruqlar sistemasi aniq bir tang vazifalarga moslashgan

Universial protsessorlarning buyruqlar sistemasi maksimal keng bo’lgan vazifalarga moslashgan

Mikroprotsessorning umumlashgan ko’rinishi

Aloqaning shina tuzilishi

Aloqaning klassik tuzilishi

Aloqaning shina tuzilishi

 

shina (ing. BUS) – signal va kodlar uzatiladigan  aloqa tarmoqlari guruhlari

Signallar  bir xil tarmoqlar orqali uzatiladi, lekin har xil vaqt oralig’ida

(Multiplekslangan uzatilish)

Signallar ikki yo’nalishda uzatilishi mumkin (ikki yo’nalishdagi uzatilish)

Shinadagi barcha qurilmalar signallari bir xil qonun bilan    uzatiladi va qabul qilinadi (almashinuv protokollari), barcha qurilmalar umumiy bir ko’rinishga ega bo’lishi kerak

 

Multiplekslangan uzatish

Shinali tuzilish aloqaning kamchiliklari

Klassik aloqa strukturasiga qaraganda:

Tezkorligi kamroq – signallar vaqt ichida taqsimlanib uzatiladi

shina tarmoqlariga qurilmalarni parallel ulash- qurilmaning to’g’ri qo’yilmaganligi shinani ishlamasligiga olib keladi 

Ixtisoslashgan moslama kerak bo’ladi- yuborish protokoliga daraja va vaqt boshqaruvi kerak bo’ladi

 

 

 

Mikroprotsessorli sistemaning tuzilishi

 

 

Shina adresi(Address Bus) aniq bir paytda protsessor ma’lumot bilan almashinishida, moslamaning adresini aniqlashga ishlatiladi. Mikroprotsessorli sistemadagi har bir moslamaga (protsessordan tashqari), har bir xotira qutisida noyob adreslar biriktiriladi bo’lishi mumkin.

-bir tomonlama yo’nalgan

-ikki tomonlama yo’nalgan

Shina ma’lumotlari(Data Bus)

-Asosiy shina

-Mikroprotsessorli sistema moslamalari orasida ma’lumotlarni yuborishda ishlatiladi

-Axborotni yuborishda quyidagi protsessorlar ishlaydi

-ma’lumot kodini qurilma yoki xotira qutisiga yuboradi

-ma’lumot kodini qandaydir qurilmadan yoki xotira qutisidan oladi

-Qurilmalar orasidagi axborot yuborilishi protsessor ishtirokisiz ham amalga oshishi mumkin

-Ma’lumotlar shinasi ikki yo’naltirilgan bo’ladi

 

 

 

 

 

 

 

 

7-MAVZU. PROTSESSORNING STRUKTURASI. PROTSESSOR ASOSIY QISMLARINING VAZIFALARI.

 

Tashqi qurilmadan axborotni kiritilishi

Ma’lumotni xotiradan o’qishi

 

Axborotni xotiraga yozish

 

 

Shinada tez ta’sir qilinuvchanligi va yuborilishi

-Shinada ketma-ketlik harakterini yuborilishi mikroprotsessor sistemasini tez ta’sir qilinuvchanligini kamaytiradi

-Tez ta’sir qilinuvchanligi chegaralangan

-protsessor tez ta’sir etmasligi

-Sistemali shinadan almashinish tezligidan emas (magistral)

-Sistemali shinadan(magistral) axborotni tez ta’sir qiluvchiligidan ketma-ket yuborilishi cherklangan

kirish/chiqish qurilmasi

-Kirish/chiqish qurilmasi “qattiq mantiqda” qilinadi, ular mikroprotsessor sistemasi funksiya qismini bajaradi

-Sistema funksiyasining apparat va dasturiy rivojlanishi ichida taqsimlanib olishi

-Apparat va dasturiy funksiyalar kombinatsiyalari qollaniladi

Apparatli amalga oshish

-Funksiya bajarilishini tezlashtiradi, lekin yetarlicha bikrlikka ega emas

-Sistema narxini va ishlatish energiyasini kattalashtiradi

Programnaya amalga oshishi

-Ko’rinadigan darajada sekin, lekin yuqori bikrlikni ta’minlaydi

-Sistema narxini va uni ishlatish energiyasini kattalashtirmaydi

-Ko’p holda kirish/chiqish qurilmasi protsessorni ham o’z ichiga oladi (katta bo’lmagan moslashgan  mikroprotsessor sistema)

-Dasturiy funksiyasini oz qismi kirish/chiqish qurilmasidan bajariladi

-Sistemaning markaziy protsessori chiqariladi

 

 

 

8-MAVZU. OPERAND VA REGISTRLARNI ADRESLASH USULLARI.

 

Reja

1.     Protsessor asosiy qismlarining vazifalari

2.     Adreslash usullari

 

Adreslashning 5 ta asosiy usuli mavjud:

-registrli;

-bevosita;

-tug‘ri;

-bilvosita;

-stekli.

Adreslashning qolgan boshqa ko‘pgina usullari yuqorida sanab o‘tilgan usullarning kombinatsiyalari yoki ularning ko‘rinishi o‘zgarganligi bo‘lib hisoblanadi.

Birinchi qoida operandlar MPning registrlarida joylashgan masalan, MOV AX, CX, buyrug‘i orqali SX dagi ma’lumot AXga uzatiladi.

Bevosita adreslashda operand hotiradagi KOP da bevoita joylashgan, masalan. MOV AL, of5h ko‘rsatma 245 (15)ni AL registriga yozadi.

To‘g‘ri adreslash holatida KOP dan keyin operandaning o‘zi emas, balki xotira yacheykasi yoki tashqi qurilma adresi keladi, masalan, IN AL 40h adresli tashqi qurilmadan ma’lumotlar baytlarini kiritadi.

Buyruq buyicha al akkumlyatoriga VX registrida saqlanuvchi xotira yacheykasidagi adresli son yoziladi.

Stekli adreslash-stek deb nomlanuvchi xotira soxasida joylashgan operandlar bajariladi.

Operatorlar

1. () qavslar hisoblash tartibini aniqlaydi.

2. [] masalan, [BX] xotira yacheykasida joylashgan vx adresli registrni bildiradi. Bilvosita adreslashning alomati.

3. +, -, *, / - kushish. Ayirish. Kupaytirish va bulish operatorlari.

  mov ax, (2 * 3 + 8 / 2) - 2; ax registrida 8 soni joylashadi.

4. MOD-modul bo‘yicha bo‘lish. Qoldiqni beradi.

5. SHL, SHR-operandni chapga, unga surish..

6. NOT - bit bo‘yicha inversiya.

7. AND, OR, XOR - "I", "ILI", "ISK", "ILI" operatsiyalari. mov de (10d OR 5d) XOR 7d; (de)-8 ga teng bo‘ladi.

8. :  -segmentning qayta tayinlanishi.

mov de [es : bx]; es segmentidan ma’lumotlar baytini va uning boshidan (vx) baytga ortda qoluvchi (siljishni) de ga joylashtirish.

9.OFFSET-segment boshiga nisbatan adresni surish operatori (ya’ni segment boshidan adres identifikatorigacha bo‘lgan baytlar soni).

mov bx, OFFSET table.

 

 

To‘g‘ri adreslash

2

To‘g‘ri registrli adreslash

2

Mavxum adreslash

2

 

 

 

Mavxum registrli adreslash

2

Bevosita adreslash

2

 

 

Nisbiy adreslash

2

 

 

Inkrementli adreslash

ðèñ2

 

 

 

Dekrementli adreslash

2

9-MAVZU. PROTSESSORNING BUYRUQLAR TIZIMI.

 

Assembler tili nima?

Mikroprotsessorning bevosita mashina buyruqlari yordamida ishlay oluvchi va ularni dasturchi tushunishi uchun mo‘ljallangan mnemonik ko‘rinishiga ham ega bo‘lgan dasturlash tili – Assembler tili deb nomlanadi.

MISOL

Y= X1+X2

X1- OA00(adres)

X2-0B00 (adres)

Y-0C00 (adres)

¹

A

V

S

D

E

H

L

1

0A00

 

 

 

 

 

 

2

0A00

 

0A00

 

 

 

 

 

3

0B00

 

0A00

 

 

 

 

4

A+C

 

 

 

 

 

 

 

Assembler tilidagi dasturi

         LDA A,0A00

         MOV C,A

         LDA A,OB00

         ADD C

         STA OFOO

         HLT

 

 

 

Adres

Mnemokod

Mashina kodi

Izoh

0000

LDA A,(1234)

3A 34 12

A operandini akum-ga yuklash

0003

MOV C,A

4F

Uni S registriga saqlash

0004

LDA A,(2345)

3A 45 23

V operandini akum-ga yuklash

0007

ADD C

81

Akum. bilan S reg-ni qo‘shish

0008

RAL

1F

Akum. tarkibini 2 ga bo‘lish

0009

STA (3456),A

32 56 34

Natijani F adresiga yozish

 

Cegment registrdagi qiymat (CS, DS, SS, ES) "segment (segment)  deyiladi,
umumiy ishlatiladigan registrlar blokidagi qiymat (BX, SI, DI, BP)

 "offset(smeùenie)deyiladi.
         Agar DS qiymati 1234h,  SI qiymati 7890h bo‘lsa, uxolda yozish mumkin 1234:7890. Fizik adres :

 1234h * 10h + 7890h = 19BD0h.

Operand turlarini qabul qiladi:

MOV registr, xotira
MOV xotira, registr
MOV registr, registr
MOV pamyat, bevosita qiymat
MOV registr, bevosita qiymat registr: AX, BX, CX, DX, AH, AL, BL, BH, CH, CL, DH, DL, DI, SI, BP, SP.

xotira: [BX], [BX+SI+7], o‘zgaruvchi, v.x

bevosita qiymatlar: 5, -24, 3Fh, 10001101b, i t.p...

Segment registrlarda ishlatiladigan MOV:

MOV segment registr, xotira
MOV xotira, segmentnûy registr
MOV registr, segment registr
MOV segment registr, registr
segment registr: DS, ES, SS, va faqat ikkinchi operand: CS.

registr: AX, BX, CX, DX, AH, AL, BL, BH, CH, CL, DH, DL, DI, SI, BP, SP.

xotira: [BX], [BX+SI+7], o‘zgaruvchi v.x.
 Komanda MOV registrlar CS va IP. qiymatlarini o‘rnatish uchun foydalanilmaydi.

Komanda  MOV dan foydalanish :

#MAKE_COM# ;

ORG 100h ;

MOV AX, 0B800h ;  AX ga 16li kodni o‘rnatish B800h.

MOV DS, AX ; AX dan  Dsga nusxa olish.

MOV CL, 'A' ; CLga ASCII-kod simvoli 'A', t.ye. 41h.

MOV CH, 01011111b ; CH ga ikkilik kodni o‘rnatish.

MOV BX, 15Eh ; BX ga  15Eh o‘rnatish.

MOV [BX], CX ; CX tarkibini  B800:015E adresli xotiraga o‘rnatish

RET ; operatsion tizimga qaytish.

      O‘zgaruvchilar xotirada belgilangan adres bo‘yicha o‘rnatiladi.Dasturchilar uchun o‘zgaruvchilar nomi bilan ishlash qulay. Masalan, "var1«nomli o‘zgaruvchi dastur kodida aniqroq bo‘ladiadres 5A73:235Bga qaraganda

Kompilyator ikkita o‘zgaruvchini qabul qiladi

       BYTE va WORD.

      O‘zgaruvichlarni e’lon qilish sintaksisi:

nom DB qiymat

nom DW qiymat

DB - Define Byte -  baytni aniqlaydi.
DW - Define Word – so‘zni aniqlaydi.

nom – raqam yoki xarflar kombinatsiyasidan bo‘lishi mumkin,lekin xarflardan boshlanishi kerak.
qiymat – ixtiyoriy o‘lchamli sanoq tizimlaridagi son.simol "?»initsializatsiyalanmagan o‘zgaruvchilar uchun.

       

 

Keltirilgan misolda o‘zgaruvchilar xotirada joylashishi keltirilgan.

Kompilyator  mashina kodini xosil qilishi bilan ,xamma o‘zgaruvichlarni avtomatik ravishda  smeùeniya bilan o‘zgartirib yuboradi.

Segment  registr Dsga joylashtirilgan .

xotira (memory) 1-chi ustun - bu sme
ùenie,

 2-chi ustun – bu  16-lik qiymat,

3-chi ustun – 10-lik qiymat,

Oxirgi ustun - bu simvol ASCII, berilgan simvolga mos.
O‘zgaruvchi smeùeniyasi VAR1 - bu 0108h, to‘liq adres - 0B56:0108.
 O‘zgaruvchi sme
ùeniyasi var2 - bu 0109h, to‘liq adres - 0B56:0109.

Ushbu o‘zgaruvchi  turi WORD, shuning uchun  2 BAYT joy egallaydi.

Qabul qilingan: kichik bayt kichik adres bo‘yicha, shuning uchun 34h  kodi 12h dan

 

oldin yoziladi.

 

 

10-MAVZU. MA’LUMOTLAR ALMASHISH USULLARI.

 

Ma’lumotlar almashuv yo‘nalishi bo‘yicha interfeyslar quyidagilarga ajratiladi.

-Simplekslik-bir yo‘nalishli ma’lumot almashuvi.

-Yarim duplekslik navbatma-navbat ikki yo‘nalish bo‘yicha ma’lumot almashuvchi.

-Multiplekslik – ma’lumot almashish umumiy magistral (shinalar) orqali amalga oshiriladi, bunda har  daqiqada axborot manba’si va qabul qiluvchisi muloqotda bo‘ladi

Axborot uzatuvchi kanallarga ulangan hamma qurilmalar (modullar) abonentlar deb ataladi. MPT dagi abonentlarning bir – biri bilan struktur ulanish jixatidan interfeyslar radial, halqa, kaskad va magistralari bilan farqlanadi(Rasm 7.2.). Markaziy protsessorga (MP) ikki yo‘nalishlik va o‘rnatilgan ustunlik asosidagi abonentlar (ishga stansiyalar, uzoqlikdagi tashqi qurilmalar, sanoat avtomatikaning sxemalari) ulanadi.

Abonentlararo ma’lumotlar almashuvi jarayoni markaziy protsessor orqali tashkil etilib, bunda MP konsentrator va abonetlar ishlarini mustaqil va parallel ravishda bajarilishini ta’minlaydi.

Radial interfeys-mantiqiy oddiy bo‘lgani bilan,  katta apparat ta’minotini sarflashni talab etadi. Undan tashqari uning yashovganligi markaziy protsessorning ishonchligiga bog‘liqdir.

Halqalik interfeyslarda har bir abonent qo‘shni ikki abonentlar bilan bog‘liqdir. Halqada bir vaqtda bir nechta ahborotlar manba’lardan qabul qiluvchilar tomon aylanib yurishi berilgan adreslash va boshqarish usullari asosida amalga oshiriladi. MPT kengaytirilganda halqa tizimiga qo‘shimcha modullar ulanadi. Halqalik interfeyslardagi abonentlarning o‘zaro muloqati murakkabligi uning eng katta kamchiligidir.

Kaskadlik interfeyslarda abonentlar halqa ko‘rinishda ulangan bo‘ladi va ular interfeys liniyalariga xizmat ko‘rsatish tartibi asosida ulanadilar. Kaskad interfeyslari kichik sonlik liniyalar va ish tezligining chegaralanganligi bilan xarakterlanadi.

Magistral interfeyslarda umumiy shina qo‘llanilgan bo‘lib, shunday deb ataladi. Magistraldan uzatilayotgan axborot hamma ulangan abonentlar uchundir. Ko‘pincha faqat bitta abonent turli vaqt davrida foydalanish mumkin bo‘lgan axborot manba’si bo‘lishi mumkin.

Abonent mavqei shina arbitri (ShA) yordamida aniqlanadi.

MPT larda tizim interfeyslari sifatida tez moslashuvchanligi, tejamliligi bilan ajraladigan magistral interfeyslar ishlatiladi.

-Ma’lumotlarni vaqt davomida uzatilishi usuli bo‘yicha quyidagi interfeyslar farqlanadi:

-Sinxronlik-ma’lumot almashuv o‘rnatilgan davomiyligi asosida;

-Asinxronlik-ma’lumot almashuv o‘zgaruvchan davomiylik asosida;

-Sinxron-asinxronlik-ikki usulning kombinatsiyalab ulanganlik asosida.

Uzatilayotgan ma’lumotlar razryadlarning qiymatini bo‘yicha interfeys parallel (so‘zlar), ketma-ket (bitlar)va parallel-ketma-ket ko‘rinishlari bilan farqlanadi. Interfeyslarning klassifikatsion alomatlariga yanada quyidagilar tegishlikdir:

Uzilishlarning tashkil etish (vektorlik yoki ketma-ket so‘rov asosida) va xotiraga to‘g‘ridan-to‘g‘ri murojat etish;

-Modullarni shinaga siklik parallel, ketma-ket, murojaat etishning arbitraj usuli;

-Ma’lumotlarni adreslash, boshqarish, sinxronizatsiyalash liniyalar soni;

-Aloqa (o‘tkazgichlar, radiokanal, optik tolalik turlar) liniyalar uzunligi va turlari;

-Shinaga bir vaqtda ulanish mumkin bo‘lgan abonentlarning maksimal soni;

Tashqi qurilmalarning adreslash resurslili-o‘ziga tegishlik bo‘lgan adres maydoni (Intel firmasi mahsulotlari xarakterli) yoki xotira adres maydonida aks ettirilish bilan (DES firmasi maxsulotlarida foydaniladi).

Tizim interfeyslari

MPT larda standart parallel tizim interfeyslari keng ishlatilib, ularda komanda formatlari, ma’lumotlar va ularning almashuvi, algoritmning ishlashi, aloqa liniya to‘plami va turlari, ma’lumot uzatish tezligi, konstruktiv talablar, modul tizimi ruxsat etilgan masofalari, avvalgi mavjud interfeyslar bilan kengaytirish va moslashtiruv imkoniyatlari unifikatsiyalashtirilgan. Yuqori tezlikda ma’lumotlarni almashuvni tashkil etishda sakkiz razladlik-Microbug;

-16 razradlik-Unibus, Q-bus, Multibus 1;

-32 razradlik-Vercabus

Ma’lumotlarni parallel uzatuvchi asinxron multipleksorlik interfeyslar qo‘llaniladi.

Mavjud davrda MPT ning ko‘pgina standart tizim interfeyslari konkret turdagi mikroprotsessorlar uchun optimallashtirilgandir.

Interfeys mikrosxemalari MPT da turli funksiyalarni bajaruvchi interfeys mikrosxemalaridan keng foydanilmoqda, masalan: takt impulslarni generatsiyalash, adreslarni saqlab turish, qo‘shni tizimlar bilan ikki taraflama ma’lumot almashuvini tashkil etish, xotira yoki portlardagi ma’lumotlarni o‘qish-yozish boshqaruv signallarni ishlab chiqish, arbitraj, ko‘p mikroprotsessorlar tizim shinalariga mavqeylik murojat etish signallarini va boshqalar.

 

11-MAVZU. ASSEMBLER DASTURIY TA’MINOTIDA ISHLASH.

 

Mikro EVM ish jarayonini namoyon etish uchun,quyidagi elementar operatsiyalar ketma-ketligini bajarish misolini ko‘rib chiqmiz:
1. Klaviaturadan«A» xarfi tugmachasini bosing.
2. "A«xarfini mikroEVM xotirasiga joylang .
3. Displey ekraniga"A« xarfini chop eting.

Ushbu oddiy kiritish-saqlash-chiqarish protsedurasi mikroEVM tarkibiga kiruvchi qurilmalar ish prinsipini o‘rganishga imkon yaratadi.

Rasm. 2.2 da kiritish-saqlash-chiqarish diagrammasi keltirilgan.Saqlangan dastur quyidagi buyruqlar zanjirini xosil qilgan:
1.1-kiritish portidan ma’lumotlarni kiriting.
2.  200- xotira yacheykasida ma’lumotlarni saqlash.
3. 10- chiqish portiga ma’lumotlarni uzatish.

 

image3

 

Ushbu dasturda jami 3ta komandadan foydalanilgan,lekin rasmda dastur xotirasiga 6ta komanda yozilgan.Komandalar odatda qismlarga bo‘linadi:

 Komanda 1 birinchi qismi ma’lumotlarni kiritish komandasi.Komanda 1 ning ikkinchi qismida qaerdan ma’lumot kiritish kerakligi ko‘rsatilgan.

Komandaning birinchi qismida, aniq belgilangan xarakat(operatsiya kodiKOP), ikkinchi qism-operand. Operatsiya kodi va operand aloxida xotira yacheykasida joylashadi. Rasm. 2.2 KOP xotira yacheykasi 100 da , operand kodi - xotira yacheykasi 101 (port 1); oxirgi qaerda ma’lumot olish kerakligini ko‘rsatadi.

MP rasm. 2.2da ikkita yangi blok – registrlari ajratilagan: akkumulyator va  komanda registri.

Diagrammada nomerlangan aylanalar yordamida mikroEVM ichida ma’lumot va komandalarning o‘tishi ko‘rib chiqamiz.Mikroprotsessor – bu markaziy uzel bo‘lib, xamma ma’lumotlarni joylashishi va operatsiyalarni  bajarilishini boshqaradi.

Protsedurani bajarishda mikro EVM da kuyidagi ketma-ketlikdagi xarakat bajariladi:

1. MP  adres shinasiga 100 adresni uzatadi. Boshqaruv shinasidan dastur xotirasini xisoblash rejimiga o‘rnatish signali kelib tushadi.
2. Dastur xotira qurilmasi birinchi komandani («ma’lumotlarni kiritish") ma’lumot shinalaridan va  MP kodlashtirlgan ma’lumotlarni oladi. Komanda registr komandaga joylashadi. MP qabul qilingan komandani dekodrlaydi (interpretiruet)  va komandaga operand kerakligini aniqlaydi.
3. MP Sha siga adres 101 ni uzatadi; BSh dastur xotirasini xisob rejimiga o‘tkazadi.
4. Dastur xotirasidan MSh ga «1 chi portdan» operand jo‘natiladi. Ushbu operand dastur xotirasining  101 x.ya.sida joylashgan. Operand kodi  (1adres portini saqlovchi)  MSh orqali   MP ga va komanda registriga yo‘naltiriladi. MP komandani to‘liq dekoderlaydi («Port 1 dan ma’lumotlarni kiritish").

5. MP, ASh va MSh foydalanib,qurilma bilan bog‘langan xolda  port 1 ni oochadi. "A« ning raqamli kodi  akkumulyatorga uzatiladi va saqlanadi.Shuni esda saqlash kerakki dastur qayta ishlash jarayonida MP tanlash-dekoderlash-bajarish mikroprotsedurasiga amal qiladi.MP 102 yacheykaga ASh dan murojaat qiladi.BSh dastur xotirasini xisob rejimiga o‘tkazadi.

7. Komanda kodi  «ma’lumotlarni saqlash» MSh uzatiladi va MP uzatiladi.
8. MP komandani deshifratsiyalab unga operand kerakligini aniqlaydi.

 MP x.ya.103 ga murojaat qiladi va dastur xotirasi ma’lumotlarni xisoblash aktiv rejimiga o‘tkazadi.
9. Dastur xotirasidan MSh siga ma’lumot kodi uzatiladi  «x.ya. 200". MP operandni olib komanda registriga joylaydi.

10. Komanda bajarilish protsessi boshlanadi. MP  adres 200 ni AO‘ siga uzatadi va krishga yozishni aktivlashtiradi.
11. MP akkumulyatordagi ma’lumotni ma’lumot xotirasiga uzatadi.

Xarf kodi "A" MSh orqali uzatiladi va 200 xotira yacheykasiga yoziladi.Ikkinchi komanda bajariladi.Saqlash protsessi akkumulyator tarkibini o‘zgartirmaydi.

12. MP xotira yacheykasi  104 ga navbatdagi komandani tanlash uchun  murojaat etib dastur xotirasini xisob rejimiga o‘tkazadi.
13. Ma’lumotlarni chop etish komanda kodlari MSh orqali MP ga uzatiladi, u o‘z navbatida komanda registriga joylab deshifratsiyalab operand kerakligini aniqlaydi.
14. MP adres 105 ni ASh ga beradi va dastur xotirasini xisobrejimiga o‘rnatadi.
15. MSh orqali dastur xotirasidan MP ga operand kodi « port 10 ga» kelib tushadi.
16. MP to‘liq komandani deshifratsiyalaydi va  «ma’lumotlarni chop eting  port 10".

Chiqarish qurilmalari bilan bog‘lovchi ASh va BSh, MP port 10 ni ochadi , MSh asosida "A«kodini uzatadi.Xarf  "A"  port 10 orqali displeyga chop etiladi.

 

 

12-MAVZU. MA’LUMOTLARNI KIRITISH VA CHIQARISH TASHKIL ETISH.

Reja

1. Ma’lumotlarni kiritish va chiqarishni tashkil qilish

Mikroprotsessor  arxitekturasi – foydalanuvchi  nuqtai nazaridan qaraladigan mantiqiy tuzilish bo‘lib, MP tizimini tuzish uchun zarur   bo‘ladigan funksiyalarning apparatlar va dasturlar vosita amalga     oshirilishiga ko‘ra mikroprotsessorda  joriy etiladigan  imkoniyatlarni     belgilab beradi. Mikroprotsessor arxitekturasi tushunchasi quyidagilarni aks ettiradi:

-mikroprotsessor tuzilishini, ya’ni mikroprotsessorni tashkil etadigan tarkibiy qismlar komponentlarining majmui va   ular orasidagi    aloqalarni (foydalanuvchi uchun mikroprotsessorning registrli modeli bilan cheklanish kifoyadir);

-ma’lumotlarning taqdim etilish usullari va ularning formatlarini;

-tuzilishning  dasturiy  jihatdan  foydalanuvchi  uchun  tushunarli bo‘lgan  barcha  elementlariga  murojaat qilish usullarini (registrlarga,    doimiy va  tezkor xotiralar uyalariga, tashqi qurilmalarga ma’lum manzil bo‘yicha murojaat qilish);

-mikroprotsessor tomonidan bajariladigan  operatsiyalar to‘plamini;

-mikroprotsessor  tomonidan  shakllantiriladigan  va  uning  ichiga tashqaridan kirib keladigan boshqaruvchi so‘zlar va  signallar tavsifini;

-tashqi  signallarga  bildiriladigan munosabatlarni (uzilishlarga ishlov berish  tizimi va shu kabilar).

Mikroprotsessor tizimining xotira bo‘shlig‘ini shakllantirish  usuliga ko‘ra MP arxitekturalari ikkita asosiy turga bo‘linadi.

Dasturlar va ma’lumotlarni saqlash uchun bitta xotira bo‘shlig‘i qo‘llanilgan tuzilish fon Neyman arxitekturasi deb ataladi (dasturlarni ma’lumotlar formatiga muvofiq keladigan formatda kodlash   taklifini   kiritgan   matematik   nomi   berilgan).

Bunda, dasturlar  ham,  ma’lumotlar  ham  yagona  bo‘shliqda  saqlanib,  xotira uyasidagi axborot turiga ishora qiluvchi biror-bir alomat bo‘lmaydi. Bunday arxitekturaning  afzalliklari jumlasiga mikroprotsessorning  ichki  tuzilishi nisbatan  soddaligi va boshqaruvchi signallar sonining kamligi kiradi.

Dasturlar xotirasi CSEG (ingl. Code Segment) va ma’lumotlar xotirasi  DSEG  (ingl.  Data  Segment)  o‘zaro  ajratilgan  hamda  har biri  o‘zining  manzilli  bo‘shlig‘i  va  kirish  usullariga  ega  bo‘lgan tarzda   yaratilgan   tuzilish   Garvard   arxitekturasi   deb   ataladi (shunday     arxitekturani     yaratish     taklifini     kiritgan     Garvard Universiteti  laboratoriyasining  nomi  berilgan).

 Ushbu  arxitektura nisbatan murakkab bo‘lib, qo‘shimcha boshqaruv  signallarini talab qiladi. Biroq, u axborot bilan ancha uddaburon harakatlar bajarish, ixcham  kodlashtiriladigan mashina  komandalari  to‘plamini  joriy etish.

Ushbu  arxitektura nisbatan murakkab bo‘lib, qo‘shimcha boshqaruv  signallarini talabqiladi. Biroq, u axborot bilan ancha uddaburon harakatlar bajarish, ixcham  kodlashtiriladigan mashina  komandalari  to‘plamini  joriy etish   va   qator   hollarda   mikroprotsessor   ishini   jadallashtirish imkonini    beradi. Intel firmasining MCS-51 oilasiga mansub mikrokontrollerlar mulohaza yuritilayotgan arxitekturalarning bir vakili sanaladi.

Bugungi kunda aralash arxitekturali mikroprotsessorlar ishlab chiqarilib, ularda CSEG va DSEG yagona manzilli bo‘shliqqa joylangan,  ammo ular turli murojaat mexanizmlariga ega. Bunga aniq misol   tariqasida Intel firmasining 80x86 oilasiga mansub mikroprotsessorlarni keltirish mumkin.

Jismonan mikroprotsessor xotira qurilmasi hamda kiritish- chiqarish  tizimi  bilan  tizim  shinalarining  yagona  to‘plami  –  tizim ichidagi  magistral orqali hamkorlik qiladi. Ushbu magistral aksariyat hollarda quyidagilardan tashkil topadi:

 

1-10

 

Magistralda,  ishlash  tezligi  MzPning  ishlash  tezligidan  past bo‘lgan  qurilmalar  ishlab  turgan  ayrim  holatlarda  RD,  WR  va  shu kabi    boshqa    stroblar davomiyligi  chetdagi  modul tomonidan almashinish   operatsiyasi to‘g‘ri bajarilishi uchun yetarli bo‘lmay qolishi mumkin. Magistral operatsiya muvaffaqiyatli yakun topishini tashkillashtirish   uchungina CB  tarkibiga   maxsus   READY   signali kiritiladi.  Kanalga  murojaatlarning  har bir siklida  RD  yoki  WR strobasi  yakuniga  yetishdan  oldin  MzP  READY  signalining holatini tekshiradi. Agar READY ushbu fursatda hali uloqtirib yuborilmagan bo‘lsa, MzP tegishli stroba muddatini unga WS (ingl. Wait State) deb nomlanadigan kutish        taktlarini o‘rnatib,  uzaytiradi. Mikroprotsessorning  ma’lum  modeli  va  ish  rejimiga  bog‘liq  holda WS  ning  maksimal   miqdori   cheklangan   yoki   cheklanmagan   bo‘lishi mumkin.

Magistralda amalga oshadigan ishning oddiy rejimida faqat bitta faol qurilma ishlaydi, u ham  bo‘lsa, MzP bo‘lib, magistralda kechadigan ma’lumotlar almashinuvining barcha sikllarini qo‘zg‘atadi. Biroq,  shunday  holatlar  ham  joizki, bunda ayni  bitta  magistralda bir  nechta  faol  qurilma  bo‘lib,  ular  ayni  bir  xotira  va  kiritish- chiqarish   bloklari   bilan   ishlashi   darkor   bo‘ladi.  Boshqa   faol qurilma ma’lumotlarni magistral bo‘ylab uzata olishi uchun MzPni vaqtincha  dezaktivatsiya  qilish  zarur  bo‘ladi.  Bu maqsadda  aksariyat zamonaviy mikroprotsessorlar “bevosita xotiraga kirish” (BXK) deb nom berilgan rejimda ishlay oladi. Ushbu rejim amalga oshishi uchun CB ga qo‘shimcha HOLD va HLDA signallari kiritiladi. CB boshqaruv shinasining  kirish  qismiga  HOLD  ning  faol  sathi  yetib  kelganida mikroprotsessor  o‘z  dasturi   ishining      ijrosini      to‘xtatadi, shinalarining chiqish qismlarini  yuqori  impedan  holatga  o‘tkazib, chiqish  qismidagi  faol  sathni  HLDA  ga  havola  etadi.  Bu  esa,  o‘z navbatida, magistral  bo‘ylab  almashinish  siklini    boshlash mumkinligi   haqida  boshqa faol qurilma uchun signal   xizmatini o‘taydi. Ushbu qurilma o‘z almashinish sikllarini nihoyasiga yetkazgach, HOLD signalini uloqtirib yuboradi. Shundan so‘ng MzP o‘zining odatiy holatiga o‘tib, dastur ishini davom ettiradi.

MzPdan  dastur  ishining  me’yoriy  kechishini  o‘zgartirish  talab etiladigan  boshqa ish  rejimi  ham  mavjud bo‘lib,  unga  “uzilish”  deb nom  berilgan.  Zamonaviy  mikroprotsessorlarning  deyarli  hammasi bitta yoki bir nechta INT0, INT1 va h. k. nomlanadigan tashqaridan uzib qo‘yadigan  kirish qismlariga ega. Ushbu kirish qismlariga tizimda muayyan    hodisalar   ro‘y   berayotganligi   haqida    dalolat  beruvchi signallar  yetib  keladi.  MzP  esa,  o‘z  navbatida,  kelgan  signallarga muayyan    tarzda    munosabat    bildirishi    lozim.    Bunday    kirish qismlaridan     biriga     faol     sathli     signal     yetib     kelganida, mikroprotsessor, me’yoriy tarzda kechayotgan dastur ishi uzilib, ishni to‘xtatishga  sabab  bo‘lgan  komanda  manzilini  xotiraga  saqlaydi  va muayyan manzil bo‘ylab CSEGga yozilib qolgan  “uzilishga ishlov berish kichik dasturi”ni (TQIKD) bajarishga kirishadi. Bunday kichik dastur manzili  “uzilish  vektori”  deb  nomlanadigan  maxsus  xotira  uyasiga yozilgan.   Dastur   ishini   uzgan   har   bir   alohida   manba   o‘z   uzilish vektoriga    ega.    TQIKDni    bajarib    bo‘lgach,    protsessor,    xotirada saqlangan   manzil   bo‘yicha   TQIKD   ijrosi   yakunlanadigan   maxsus komandaga binoan ishi uzilgan dastur ijrosiga qaytadi. Dastur ishi uzilishiga  sababchi  bo‘lgan  manbalar  jumlasiga  ichki  manbalar  ham (ya’ni,  mikrosxemaning  “uzilish  so‘raladigan  kirish  qismlari”  deb nomlanadigan  kirish  qismlaridan  biriga  kelishi),  tashqi  manbalar ham      (ya’ni,      muayyan      sharoitlarga      ko‘ra      protsessor      ichida generatsiyalanishi)  kirishi  mumkin.  Bir  vaqtning  o‘zida  bir  nechta turlicha    uzilish    so‘rovlari    kelishi    mumkinligi    bois,    bunday so‘rovlarning   har   biriga   alohida   xizmat   ko‘rsatish   izchilligini belgilaydigan  muayyan  tartib  mavjud.  Uning  ishini  MzP  ichida  yoki maxsus    kontoller    vositasida    joriy    etilgan    “uzilishlarning ustuvor  arbitraj”   tizimi  ta’minlaydi.  Mulohaza   yuritilayotgan tizimga  muvofiq  dastur  ishi  uzilishiga  sababchi  bo‘lgan  har  bir manba,  unga  xizmat  ko‘rsatilish  navbatini  belgilab  beradigan  o‘z ustunligiga  (doimiy  yoki  o‘zgaruvchan  ustunlikka)  ega.  Bir  vaqtning o‘zida bir nechta uzilish so‘rovlari kelgan paytda dastavval ustunlik darajasi  yuqori,  shundan  so‘ng  past  darajali  uzilish  so‘rovlariga xizmat  ko‘rsatiladi.  Ustunlik  darajasi  yuqori  so‘rov  asosiy  dastur ishini   qanday   to‘xtatib   qo‘ysa,   ishi   boshlangan   past   darajali uzilishga  ishlov  berish     kichik  dasturining  ishini  ham  xuddi  shu tariqa to‘xtatib qo‘yishi mumkin. Ayni paytda “kiritilgan uzilish” deb ataladigan uzilish vujudga keladi.

CSEG     va     DSEGdan     tashqari     deyarli     barcha     zamonaviy mikroprotsessorlar   RSEG   (ingl.   Register   Sgment)   dasturiy-ochiq registrlar to‘plami deb ataladigan atayin ajratib qo‘yilgan kichik hajmli  ma’lumotlar  makoniga  ega.  CSEG  va  DSEGdan  farqliroq RSEG     registrlari     MzP     ichida,     uning     arifmetik-mantiqiy qurilmasining  bevosita  yaqinida  joylashgan.  Bu  esa,  o‘z  navbatida, ushbu registrlar ichidagi axborotga jismonan tez kirib borilishini

ta’minlaydi. RSEG registrlari ichida, odatda, MzP tomonidan tez- tez     ishlatib     turiladigan     hisoblarning     oraliq     natijalari saqlanadi.  RSEG  sohasi  DSEGning  ma’lumotlar  makonidan  to‘liq ajratilgan  bo‘lishi  yoki  u  bilan  qisman  kesishib  o‘tishi  yoxud  uning tarkibiy qismi sifatida kiritilgan bo‘lishi mumkin. RSEGning ichki mantiqiy      tuzilishi      turlicha      bo‘lib,      mikroprotsessorlarning arxitekturasini tasniflashda muhim o‘rin egallaydi.

Mikroprotsessor   registrlari   funksional   jihatdan   bir   xil bo‘lmaydi,  xususan:  ularning  bir  turi  ma’lumotlarni  yoki  manzilga oid  axborotni  saqlash  uchun  xizmat  qilsa,  boshqa  turi  –  MzP  ishini boshqarish  uchun  xizmat  qiladi.  Shunga  muvofiq  barcha  registrlarni ma’lumotlar  registrlariko‘rsatkichlar  va  maxsus  vazifalar bajaruvchi    registrlarga    farq    qilish    mumkin.    Ma’lumotlar registrlari   operandlar   manbalari   va   natija   qabul   qilgichlar sifatida  arifmetik  va  mantiqiy  operatsiyalarda  ishtirok  etadi, manzil     registrlari     yoki     ko‘rsatkichlar     esa     asosiy     xotira qurilmasidagi    ma’lumotlar    va    komandalarning    manzillarini hisoblab chiqarishda qo‘llaniladi. Maxsus registrlar MzPning joriy holatiga  indeks  berish  va  tarkibiy  qismlarining  ishini  boshqarish uchun  xizmat  qiladi.  Shunday  arxitektura  ham  bo‘lishi  joizki,  ayni bir registrlar ma’lumotlarni ham, manzillarga oid axborotni ham saqlash    uchun    qo‘llaniladi.    Bunday    registrlar    umummaqsadli registrlar  (UMR)  deb  ataladi.  Registrlarning  u  yoki  bu  turidan foydalanish usullari MP arxitekturasining muayyan xususiyatlarini belgilab beradi.

Ma’lumotlar    registrlari    orasida    A    (ingl.    Accumulator) akkumulyator   deb   ataladigan   registr   ajralib   turadi.   Ayni   shu registr    ma’lumotlarga    arifmetik   va    mantiqiy    ishlov    berish jarayoniga  qo‘shiladi. Bu esa,  o‘z navbatida, akkumulyatorning  ichidagi narsalar      arifmetik      va      mantiqiy      komandalar      tomonidan operandlardan  biri  sifatida  qo‘llanilishi  va  amalga  oshirilgan operatsiya natijasi ushbu registr ichida saqlanishini anglatadi. Unga ishora  operatsiya kodi yordamida  amalga oshadi. Bunda,  komanda kodi ichida operand manzillari va natija uchun maxsus soha ajratilishiga zarurat       bo‘lmaydi.       MP       arxitekturasining       bunday       turi akkumulyatorli   arxitektura   deb   ataladi.   Ushbu   arxitekturada kuzatiladigan   kamchiliklar   jumlasiga   amalga   oshadigan   ishning nisbatan   sust  kechishini     kiritish     mumkin.     Bunday     sustlik akkumulyatorning   “tor   joy”   deb   e’tirof   etilishi   va   har   safar, operatsiyani   bajarishdan   oldin,   akkumulyator   ichiga    operandlar kiritilishi zarurligi bilan  izohlanadi.  Ushbu arxitekturaga misol tariqasida  Intel  firmasi  tomonidan  tayyorlangan  MCS-51  oilasiga mansub mikrokontollerlarni keltirish mumkin.

Ma’lumotlar  registrlarining  boshqacha  tuzilishi R0, R1 va h.  k. rusumli  “ishchi  registrlar”  deb  nomlanadigan  registrlar  sanaladi.

Registrlarning bunday tuzilishida operandlar hamda arifmetik va mantiqiy  operatsiyalar  natijalari  bir  emas  bir  nechta  registrda saqlanishi   mumkin.   Bu   esa,   o‘z   navbatida,   ma’lumotlar   bilan manipulyatsiya qilish imkonini yanada kengaytiradi. Yuqorida mulohaza yuritilgan   akkumulyatordan   farqliroq,   ishchi   registrlar   komanda kodida manzil topadi. MP arxitekturasining bunday turi registrli arxitektura deb ataladi. Arxitekturaning bunday tuzilishiga misol tariqasida  Intel  firmasi  tomonidan   tayyorlangan  80x86  oilasiga mansub  mikroprotsessorlarni  keltirish  mumkin.  Real  vaqt  miqyosida ishlash  uchun  mo‘ljallangan  bir  qator MPlarda ishchi  registrlarning bir emas bir nechta to‘plami bo‘lishi ko‘zda tutilgan. Vaqtning har bir alohida    fursatida    registrlar    to‘plamlarining    faqat    bittasi ishlaydi.  To‘plamlardan  birining  tanlanishi  tegishli  axborotning muayyan   xizmat   registriga   yozilishi   bilan   amalga   oshadi.   Ushbu qurilmalarga  misol  tariqasida  Intel  firmasining  MCS-48  oilasiga mansub mikrokontollerlarni keltirish mumkin.

 

13-MAVZU. QISM DASTURLARNI TASHKIL QILISH USULLARI

Reja

1. Qism dasturlar

2. Qism dasturlarni tashkil qilish usullari

 

 

Qo‘shish

 

ADD buyrug‘i (Addition  (gl. to add - qo‘shish)) birinchi va ikkinchi operandlarni qo‘shish.1 chi operandning joriy natijasi qo‘shish natijasida o‘zgaradi.2chi operand o‘zgarmaydi.Amallarni bajarish natijasida segment registrlardan foydalanilmaydi.

Komandalar  OF, SF, ZF, AF, PF va CF bayroqlarga ta’sir qiladi.

 

Ayirish.

         SUB (Subtraction - ayirish) 1chi (priemnika) operanddan 2chi operandni(istochnik) ayirib natijani 1 chi operand o‘rniga joylashtiradi.1chi operand joriy qiymati o‘chiriladi.

 

Inkrementlash

mov al,15

 inc al ;  AL = 16 (ekvivalent add al,1)

 

mov dh,39h

 

inc dh; DH = 3Ah (ekvivalent add dh,1)

 

mov cl,4Fh

 

inc cl ; CL = 50h (ekvivalent add cl,1)

Adreslash rejimlari:

 registrli;

 bevosita;

 to‘g‘ri;

 Mavxum registrli;

 aralash(smeùeniem)mavxum registrli (bazovûy ili indeksnûy);

 bazaviy-indeksli;

 Bazaviy-indeksli aralash.

Registrli rejim

 Operand qiymati MP o‘rnatilgan registrlarining birida oldindan aniqlangan xolda saqlanadi. Bu usul protsessor xamma registrlarni adreslashda foydalaniladi:

inc CX        ; CX registr tarkibini 1taga oshirish

push DS     ; Segment adresi stekda saqlanadi

xchg BX,BP         ; Registrlar BX va BP tarkiblari bilan o‘zaro almashadilar

mov ES,AX         ;  AX tarkibi Esga uzatiladi

Bevosita  adreslash.

Operand (bayt yoki so‘z) komandada ko‘rsatiladi va translyatsiyadan keyin komanda kodiga o‘rnatiladi; u ixtiyoriy ko‘rinishda (chislo, adres, kod ASCII),yoki simvolik ko‘rinishda belgilanishi mumkin.

mov AN, 40h       ; Chislo 40h AN ga yuklandi

mov AL,'*' ; Kod ASCII simvol "*‘ AL ga yuklandi

int 21h        ; 21h argumentli uzilish komandasi

limit equ 528       ; Chislo 528 limit belgisini oladi

mov CX,limit       ; Chislo, limit deb belgilangan,      SX ga yuklanadi

To‘g‘ri rejim.

 Xotira adreslanadi; xotira yacheyka adresi (so‘z yoki bayt) komandada ko‘rsatiladi:

 ; ma’lumot segmentlari

 meml dw 0;  0

 mem2 db 230;            xotira bayti tarkibi 230

 ; komanda segmenti

 inc meml;            so‘z tarkibi  meml birga oshiriladi

 mov DX, meml;   menu nomli so‘z tarkibi  DX ga yuklanadi

 mov AL,mem2;  mem2 nomli bayt tarkibi  AL ga yuklanadi

Protsessor prefiks nomli kodlar guruxini ajratadi. Bir necha gurux prefikslari mavjud: qaytarish, adres o‘lchami, operand o‘lchami, segmentni almashtirish.

Protsessor komandalari xotiraga murojaat qilish davrida birinchi baytlarida segment almashtirish segmentini saqlashi mumkin,uning natijasida qaysi segmentdan adres olish kerakligini aniqlaydi

Segment registri ES prefiks kodi 26h ni tashkil qiladi,  SS - 361i,  CS - 2Eh. Agar prefiks bo‘lmasa, segment adresi registr DS dan olinadi (ushbu registr uchun xam prefiks mavjud ).

Keltirilgan misolda xamma ma’lumotlar segment registr DS orqali adreslanadi, shuning uchun inc meml o‘rniga  inc DS: mem. Yozsa bo‘ladi. Agar segment registrni almashtirsak albatta aniq ko‘rsatish kerak:

 inc ES: mem1

 inc CS: mem2

 Xotira yacheykasiga absolyut adres bo‘yicha murojaat quyidagicha:

mov AL,DS: [17h]       DS tarkibidan aniqlangan segmentdagi aralash(smeùeniem) 17h ni AL ga yuklash

Mavxum registrli.

 Adreslanayotgan xotira (bayt yoki so‘z). Xotira yacheykasining nisbiy adresi registrda joylashadi, ular to‘rtburchak qavslarda keltirilgan. MP 86 da mavxum adreslash faqat registrlar VX, VR, SI va DI. registrlar VX yoki VR foydalanish natijasida bazaviy adreslash, registrlar SI yoki DI - indeksli.

         Agar mavxum adreslash registrlardan VX, SI yoki DI larning birida  amalga oshirilsa, u xolda  DS segment asosida dareslangan deb tushuniladi, shuning uchun DS tushirib qoldiriladi:

 mov es: [bx],'1' ――――→ mov [bx],'1'

Misollar:

mov SI, offset string    ; string nisbiy adresi yuklanadi SI ga

mov AX, [SI]      ; string tarkibi AX ga yuklanadi

inc [SI]       ; string tarkibi+1

mov BX, [SI]; string yangi yacheyka tarkibi yuklanadi BX

mov DI, SI ; string nisbiy adresi nusxasi DI

Mavxum registrli (bazaviy va indeksli).

 Operand nisbiy adresi aniqlanadi, registrlar BX, BP, SI yoki DI tarkibi summasi va komandadagi konstantalarda ko‘rsatiladi,ba’zida ularni aralash (smeùenie)deyiladi. Aralash(Smeùenie)  chislo yoki adres bo‘lishi mumkin.

 smeùenie = {SP, BP, DI, SI, BX} + komandadans meùenie

Masalan 4 [VX] o‘rniga yozish mumkin

 [VX+4], 4+ [VX] yoki [VX] +4.

[] – bu belgi xam operator bo‘lib,qavs ichidagi va tashqarisidagilarning adreslar summasi sifatida qabul qiladi.

array db 0, 10, 20, 30, 40, 50, 60; Massiv berilgan:

Komandalar ketma ketligi:

mov BX,5

mov AL,array [5] ; AL ga indeks 5 massiv elementini yuklash , ya’ni 50.

Aynan shu natija komandalar ketma ketligida olinishi mumkin:

mov BX,offset array

mov AL,5 [BX]

yoki

mov AL, [BX] +5

mov AL, [BX+5]

 

 

14-MAVZU. SHAXSIY KOMPYUTERLARDA ISHLATILADIGAN PROTSESSORLAR. KO‘P YADROLI PROTSESSORLAR.

Reja

1. Shaxsiy kompyuterlarda ishlatiladigan protsessorlar.

2. Ko‘p yadroli protsessorlar.

       1642 yilda  Blez Paskal tomonidan xisob mashinasi ishlab chiqarilgan bo‘lib,mashina faqat qo‘shish va ayirish amallarini bajargan.U mexanik strukturaga ega bo‘lib qo‘l mexnatini talab qilgan. 30 yildan so‘ng matematik Gotfrid Vilgelm Leybnis qo‘shimcha ravishda ko‘paytirish va bo‘lish amallarni bajaruvchi mexanik mashina ishlab chiqdi.(kalkulyator). 1822 yilda Charlz Bebbidj analitik mashina yaratgan bo‘lib kiritish va chiarish amallarini qolip asosida ishlatgan.Mashina 4-ta komponentdan tashkil topgan.

         -saqlash qurilmasi(xotira)

         -xisoblash qurilmasi

         -kiritish qurilmasi(perfokarta)

         -chiqarish qurilmasi(perforator)

Ushbu yaratilgan mashinalarga dastur yaratish kerak bo‘lgan va bu dastu ADA dasturlash tili bo‘lib,keyinchalik zamonaviy kompyuterlar uchun asos bo‘lib xizmat qilgan.1930 yillarning oxirida Konrad Zus elektormagnit relelardan foydalanib avtomatik boshqariladigan mashina ishlab chiqdi.

Intel firmasining mikroprotsessorlari

1971  yilning  noyabr  oyida  Intel  korporatsiyasi  o‘zining  uch nafar muhandisi   tomonidan   ishlab   chiqilgan   va   tijorat   maqsadlarida tarqatish   uchun   mo‘ljallangan   dunyoda   eng   birinchi   4004   rusumli mikroprotsessor yaratganini e’lon qildi. Bugungi standartlarga ko‘ra juda sodda sanaladigan ushbu mikroprotsessor tarkibida atigi 2300 ta    tranzistor    bo‘lib,    soniyada    bor-yo‘g‘i    60 000    ta    hisoblash operatsiyalarini bajargan xolos.Bugungi  mikroprotsessorlar  ommaviy  ishlab  chiqarilayotgan  juda murakkab    mahsulot    bo‘lib,    o‘z    ichiga    5,5    milliondan    ortiq tranzistorni mujassam  etadi, soniyada yuzlab  million  operatsiyalar bajaradi. Bu borada olib borilayotgan tadqiqotlar esa tobora jadalkechmoqda.

8080 rusumli mikroprotsessor

1974      yili      chiqarilgan      8080      rusumli      mikroprotsessor korporatsiyaga    chinakam    muvaffaqiyat    keltirdi.    Tashqi    xotira “stek”ining (rus. “stek”) paydo bo‘lishi ayni shu mikroprotsessor bilan bog‘liq    bo‘lib,    kiritilgan    har    qanday    dasturdan    foydalanish imkonini yaratdi. Ushbu protsessor “Altair” rusumli birinchi shaxsiy kompyuterning “miya”si sifatida qo‘llandi.

8086-8088 rusumli mikroprotsessor

1978  yili  Intel  firmasi  birinchi  bo‘lib  16  bitli  8086  rusumli mikroprotsessorni  ishlab  chiqardi.  Ushbu  mikroprotsessor  80x86  deb nom olgan butun boshli mikroprotsessorlar oilasining ajdodi bo‘ldi. Sal  o‘tgach,  uning  o‘rniga  8088  rusumli  mikroprotsessor  kelib,  u  16 bitli    ichki    registrlarga     ega    va     8086    mikroprotsessorining arxitekturasini takrorlagan  bo‘lsa ham, tashqi ma’lumotlar shinasi 8 bitni tashkil etgan. IBM korporatsiyasining endigina tashkil topgan bo‘linmasi    shaxsiy    kompyuter    yaratish    va    ishlab    chiqarishga ixtisoslashgan   bo‘lib,   ushbu   bo‘linma   tomonidan   xarid   qilingan mazkur  qurilmalarning  yirik  partiyasi  8088  rusumli  protsessorni IBM PC ning miyasiga aylantirdi.

Pentium III rusumli protsessor

1999   yil   Intel   korporatsiyasi   Pentium   III   va   Pentium   III   Xeon protsessorlarini  havola  etdi.  Stol  ustiga  o‘rnatiladigan  shaxsiy kompyuterlar uchun mo‘ljallangan Intel Pentium III protsessorida zikr etilgan  yilga  qadar  ish  unumdorligini  misli  ko‘rilmagan  darajada oshishi,    boshqarilish    va    Internet    bilan    ishlash    qulayligini ta’minlash    borasida    erishilgan    texnologik    yutuqlar    mujassam etilgan. Internet foydalanuvchilari va axborot berib boriladigan multimedia-ilovalar  uchun  asosiy  innovatsiya  (yangi  paydo  bo‘lgan narsa) – axborot oqimlariga oid SIMD-kengaytirishlar bo‘ldi. Ularga kirgan 70 ta yangi komandalar tasvirlar, 3D-grafikalar, tovushli va video  axborot  oqimlariga  ishlov  berish,  shuningdek  nutqni  tanib olish  imkoniyatlarini  sezilarli  darajada  kengaytirdi.

Stol    ustiga    o‘rnatiladigan    va    olib    yuriladigan    shaxsiy kompyuterlar  uchun  chiqarilgan  Pentium  III,  shuningdek,  serverlar  va ish     stansiyalari     uchun     ishlab     chiqarilgan     Pentium     III     Xeon protsessorlari  prinsipial  jihatdan  yangi  sanalgan  bir  qator  o‘ziga xos   texnologik   xususiyatlarga   ega.   Bunday   xususiyatlar   jumlasiga Advanced  Transfer   Cache  rusumli  2   darajaga   mansub   kesh-xotira qurilmasi  hamda  tizimga  oid  takomillashtirilgan  buferlashtirish jarayoni kiradi.

Advanced     Transfer     Cache     texnologiyasining     qo‘llanilishi protsessor   yadrosi   bilan   protsessor   ichiga   o‘rnatilgan,   256   Kbayt hajmli  2-  darajaga  mansub  to‘la  tezlik  bilan  ishlovchi  kesh-xotira qurilmasi  o‘rtasidagi  signal  o‘tkazish  yo‘lini ikki  hissa  ko‘paytirish imkonini yaratdi.O‘z navbatida, tizimga oid takomillashtirilgan buferlashtirish jarayoni   “buferlar”ning   soni   ortishi   tufayli   ma’lumotlarning tizim shinasidan protsessorga jadal o‘tishini ta’minlaydi.0,18   mikronli   yangi   ishlab   chiqarish   jarayonida   ftor   bilan legirlangan  kremniy  dioksididan  (SiOF)  tayyorlangan  kam  hajmli izolyatorlarga   ega   alyuminiydan   qilingan   olti   qatlamli   o‘zaro birikmalar     qo‘llaniladi.     Bu     esa,     o‘z     navbatida,     iste’mol qilinadigan kuchlanishni 1,1-1,65 Voltga qadar pasaytirish imkonini yaratadi   (bugungi   protsessorlar   ichida   eng   ko‘p   energiya   iste’mol qiladiganlari  1,35  Volt  kuchlanish  iste’mol  qiladi).  Pentium  III protsessorlari  kontaktlari  bir  tomonda  joylashtirilgan  kartridj ko‘rinishida   ishlab   chiqariladi   (Single   Edge   Contact   Cartridge   2, S.E.C.C.2).  Bunday  kartridj  protsessorni  o‘rnatish  va  himoya  qilish qulayligini  hamda  kelgusida  ishlab  chiqariladigan  yuqori  unumdor tizimlarga    moslashishini    ta’minlaydi.

 Ko‘p yaderli protsessorlar

Kompyuterlar apparat qismining asosini markaziy protsessor qurilmasi(MPQ) tashkil qiladi.Xozirgi davrda protsessorlarning bir necha turlari mavjud. Intel, AMD, IBM .

Arxitekturasi bo‘yicha Fon-Neyman va Garvard arxitekturalari bilan farqlanadi.Zamonaviy protsessorlar yana necha yaderli parametrlari bilan farqlanadi. Yadro – bu asosiy funksional blok bo‘lib, ma’lum komandalar tizimini bajaradi.Protsessor kristalida bitta operatsion tizim nusxasi ishlashi uchunbir qancha yader bo‘lishi mumkin,bu yerdan ko‘p yaderli tushuncha kelib chiqadi.

Yagona korpusdagi Symmetrical MultiProcessing virtual multiprotsessorli va bir qancha MPQ mujassamlashganligi taqdim etadi

 

01-03 

 

Aloqada ko‘p yaderli protsessorlar  um.kesh, kommutatorli tarmoqga asoslangan.Ko‘pchilik modifikatsiyalarda kesh 1-pog‘ona umumiy,2-xammasi uchun aloxida.

01-02

Xar bir yader ish jarayonini foydalanuvchi monitoring qilish imkoniyati mavjud.Ya’ni “Dispetcher zadach” bo‘limidan “Bûstrodeystvie” yuqori tugmasiga kiramiz.Bunda bizga markaziy protsessorda xar bir yader yuklanishi va xolatini kuzatishimiz mumkin.

 

1_0

 

 

2001 yilda paydo bo‘lgan birinchi ko‘p yaderli MP POWER4 xisoblanadi va u IBM arxitekturasiga asoslangan.2-ta 64-bitli yadroga ega. 2006 yili Intel korporatsiyasi tajriba sifatida 80 yaderli kelajakdagi protsessorlarni ko‘rsatgan.Xozirgi davrda 8 va 12 yaderli protsessorli qurilmalar mavjud.

Shaxsiy kompyuter arxitekturasi

image002

 

 

15-MAVZU. TARMOQ PROTSESSORLARINING TURLARI VA ARXITEKTURALARI.

 

MPT larda ma’lumot almashish “ma’lumot almashish sikllari”da vujudga keladi.

Sikl-ma’lum interval oralig‘ida shinada elementar operatsiyalarning bajarilishiga aytiladi.

Masalan,protsessordan kodlarni jo‘natilishi yoki kiritish chiqarish qurilmasidan prootsessorga ma’lumotlarni jo‘natilishi tushuniladi.Bir sikl oralig‘ida bir necha kodlar, butun ma’lumot massivlari xam jo‘natilishi mumkin.

         Ma’lumot almashish sikli 2 ta asosiy turga bo‘linadi:

         Yozish sikli(chiqarish),protsessor(yozadi) ma’lumotlarni chiqaradi.

         O‘qish sikli(kiritish),protsessor ma’lumotlarni(o‘qish) kiritadi

Ba’zi MPT larida “o‘qish-modifikatsiya-yozish”yoki”kiritish-pauza-chiqarish”sikllari mavjud.

Bunday sikllarda protsessor avval xotiradan yoki kiritish-chiqarish qurilmalaridan ma’lumotlarni olib (o‘qib),qayta ishlab aynan shu adresga qayta yozadi.Ba’zi xollarda aynan shu adresdan olib natijasi 1 taga oshirib yana shu adresga yozadi.Bunday xolatlar ishlatilayotgan MPT tipiga bog‘liq.

Eng asosiy o‘rinni (MPT tiplariga nisbatan qaralganda)xotiraga to‘g‘ridan-to‘g‘ri murojaat qiluvchi rejimyoki uzilishlarni tashkil qiluvchi rejimlar egallaydi.

MA’lumotlar almashish jarayonida 3-ta shinalardan foydalaniladi.MSh,ASh,BSh

Eng asosiy boshqaruv signallari –(strob) protsessor asosida ishlab chiqarilgan shinalardagi  ma’lumot almashish jarayonidagi aniqlangan vaqt signallari tushuniladi.

2-turli strob ishlatiladi:

         Yozish strobi(chiqarish),shinalar orqali tashqi qurilmalarning ma’lumot olishi;

O‘qish strobi(kiritish), shinalar orqali tashqi qurilmalarning ma’lumot uzatishi;

         Asosiy natija MPT vaqt oralig‘ida olgan natijalaring sifati orqali aniqlanadi.

         Unda 2-ta ma’lumot almashish:

         Sinxron almashish,tashqi qurilmalarning talablarni inobatga olmagan xolda o‘z ish jarayonini to‘xtatish.

         Asinxron almashish,tashqi qurilmalarning talablarni inobatga olgan xolda o‘z ish jarayonini to‘xtatish.

2-2

Sinxron almashish afzalliklari oddiy ma’lumot almashish prtokollarining ishlatilishidir,kamchiligi esa bajaruvchi qurilma o‘ziga kerakli ma’lumotni to‘liq yoki to‘liqmas olganligi sifatitadir.

Asinxron almashish afzalliklari sifatli ma’lumot almashish,undan tashqari yuqori tezlikda ishlash oladidigan qurilmalar bilan ma’lumot almashishi,kamchiligi maxsus xar bir jarayon uchun boshqaruv signallarining (maxsus qurilmalar)kerakligidadir.

MPT larining dastur asosida  magistral orqali ma’lumot almashish masalalarini ko‘rib chiqamiz: 

1) MK va mikrokompyuterlarda qo‘llaniladigan DEC firmasi taqdim etgan Q-bus multipleks asinxron magistrali ma’lumot almashishi.

AD-ma’lumot adresi

SYNC-  inkor sinxrosignal(otritsatelnûy)passiv

DIN-ma’lumotlarni o‘qish strobi

RPLY-ma’lumot almashish signallarini tasdiqlash

2-3

Keyinchalik matndagi «minus» signalning aktiv pog‘onasi passiv,agar «minus» bo‘lmasa signal aktiv.

 

2-4 

Asinxron ISA magistrali bo‘yicha va asinxron Q-bus magistrali bo‘yicha ma’lumot almashish farqi:

Q-bus da signal tasdiqi zarur bo‘lsa,ushbu signalni xar bir bajaruvchi qurilmalar ishlab chiqishi kerak, ISA da esa tayyor emaslik signalini bajaruvchi qurilmalar ishlab chiqishi shart emas,faqat MPT ish tempiga ulgursa.

Uzilishlarni tashkil qilish sikllari

MPT tizimlarida ikki asosiy turlari:

-Vektor uzilish-magistralda asosida o‘qish sikllarini tashkillashtirish.

-Radial uzilish- magistralda asosida o‘qish sikllarini talab qilmaydi.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

16-MAVZU. XOTIRANI SEGMENTLASH.

 

 

     Fizik adres = (IP) + (CS)*16, bu yerda (IP)-siljitish, bajaruvchi adres (CS)-segmentli adres, (SS)*16-boshlang‘ich segmentli adres deb ataladi

Xotiraga murojaat etish uchun segment registrlar RON bilan birga ishlaydi . Masalan,agar biz xotiraga  fizik adresga ega bo‘lgan 12345h (16 s.s.), o‘rnatishimiz kerak DS = 1230h va SI = 0045h. Bu to‘g‘r ,chunki shu usul bilan fizik adres xosil qilamiz.

Protsessor  fizik adresni xisoblab, segment registr qiymatini  10h ga ko‘paytirib,xosil qilingan natijaga RON natijasini qo‘shildai. (1230h * 10h + 45h = 12345h):Ikki registrlar natijasidan xosil qilingan adres real adres deyiladi

Virtual xotira

             Zamonaviy  EXMlarda masalalarni xal qilishda dinamik xotirani taqsimlanadi.Dinamik xotirani taqsimlash-dastur mantiqiy adreslarda kompilyatsiya qilinadi,lekin ish jarayonida mantiqiy adreslar fizik adresga aylanadi.EXM da xotirani dinamik taqsimlash metodi,saxifali (stranichnaya)virtual xotirani tashkillashtirish deyiladi.

           Ushbu usuldan foydalanishda EXM to‘liq xotirasi(OXQ va TXQ(tashqi xotira qurilmasi))birgalikda yagona virtua xotira deb qabul qilinsa bo‘ladi.

Xotira adresi virtual yoki mantiqiy deyiladi.Xamma virtua xotira bir xil o‘lchamli virtual saxifalarga bo‘linadi.

            Saxifa o‘lchami odatda  0,5 — 4 Kbaytni tashkil qiladi.Virtual adres ikkita qism ko‘rinishda ko‘riladi

— saxifa nomeri va saxifadagi so‘z nomeri (smeùeniya).

Fizik xotira  EXM (OXQ va TXQ) saxifalaga bo‘lingan,eng asosiy fizik saxifa virtual o‘lchamiga teng olnadi.

Bundan kelib chiqadiki,bitta fizik saxifa bitta virtual saxifani saqlaydi,Xar doim xam bunday qilinishi shart emas.Virtual va fizik saxifalar o‘rtasida  muvofiqlik qo‘yilsa bo‘ldi.

Virtual va fizik  saxifalararo muvofiqlik nomerlari  operatsion tizim qo‘llaydigan maxsus saxifa jadvali(SJ) asosida qo‘yiladi

  Fizik saxifa o‘lchami virtual o‘lcham bilan teng bo‘lgani uchun saxifalarda smeo‘eniyaga o‘zgartirilmaydi.

SJ o‘lchami katta bo‘lgani uchun to‘liqligicha OXQ saqlanadi va xotirani taqsimlashda o‘zgarishlar bo‘lsa OS orqali modifikatsiyalanadi.

           Xotiraga murojaatni tezligini oshirishda SJ aktiv qismi maxsus tezkor xotirada saqlanadi.

SX alomatlar maydonida saxifa virtual adresi(ba’zida dastur nomeri bilan), informatsion qismida –fizik saxifaning mos nomerlari.   

Agar virtual adresni fizik adresga o‘zgartirishda fizik adres tashqi xotira qurilmalarida joylashagan bo‘lsa,u xolda dastur bajarilmaydi va saxifa xatoligi deyiladi.Ushbu xolatda ichki uzilishlar tashkil qilinadi ya’ni tashqi qurilmalardagi ma’lumotlarni OXQ o‘qish qism dasturi ishga tushiriladi.U xolda keltirilgan saxifani qidirish uchun  OXQ va tashqi qurilma orasida vaqt ketadi.Bu esa o‘z navbatida muammolarni keltirib chiqaradi.

Segmentli xotirani tashkil qilish.

Shu davrgacha dasturchi joylashtirgan  virtual xotira yagona nomerlangan so‘z uzluksiz massivi ko‘rinishida tasvirlangan.

Dasturlash jarayonida bir biriga bog‘liq bo‘lmagan segmentlarni(kod,ma’lumotlar,qism dastur,stek v.b.) joylashtirsa bo‘ladi, segment o‘lchamlari oldindan aniqlanmagan bo‘ladi.

   Ushbu xolatda virtual adres 3ta qismdan iborat deb namoyish etiladi: < cegment nomer> <saxifa nomeri > < so‘z nomeri>.va chap tomondan yana <topshiriq nomeri> qo‘yiladi.

Segmentli xotirani tashkil qilish.

Shu davrgacha dasturchi joylashtirgan  virtual xotira yagona nomerlangan so‘z uzluksiz massivi ko‘rinishida tasvirlangan.

Dasturlash jarayonida bir biriga bog‘liq bo‘lmagan segmentlarni(kod,ma’lumotlar,qism dastur,stek v.b.) joylashtirsa bo‘ladi, segment o‘lchamlari oldindan aniqlanmagan bo‘ladi.   Ushbu xolatda virtual adres 3ta qismdan iborat deb namoyish etiladi: < cegment nomer> <saxifa nomeri > < so‘z nomeri>.va chap tomondan yana <topshiriq nomeri> qo‘yiladi.

Deskriptor — bu 8-baytli blok bo‘lib,segmentni liniyali manzillar atribut maydonlarini tashkil etadi. Deskriptor- o‘zida segment xolati,uning o‘lchami,ma’lumot turi,va segment boshqa atributlarini saqlaydi. Deskriptor formati rasm  7.1.da keltirilgan.

 

Deskriptor maydoni tavsiyalari :

 -bazoviy adres1 [31:0] –segment joyini aniqlaydi

(boshlang‘ich adres adres) ichki 4-gigabaytli  adres maydoni;

 -chegara [19:0] bit o‘lchamini xisobga olgan xolda segment o‘lchamini aniqlaydi.

Atribut maydoni quyidagi alomatlarni biriktiradi:

G — bit o‘lchami. Agar G = 0 segment o‘lchami baytlada beriladi,

G = 1 — 4 Kbaytli saxifalarda. Birinchi jarayonda segment  o‘lchami  maksimal 1 Mbaytgacha, 2-chi xolatda — 4 Mbayt;

D — bit o‘lchami. Agar D=O  segmentdagi operandlar o‘lchami 16 bit xisoblanadi, aks xolda — 32 bit;

X —  Intel da rezervlangan dasturchi tomonidan foydalanilmaydi;

U — foydalanuvchi biti  ( angl. user) tizim dasturchisi uchun foydalaniladi.Protsessor ushbu bitni inkor etadi.

DRL deskriptor  imtiyoz pog‘onasi;

S — tizimda deskriptor vazifasini aniqlaydi:

 S = 0 — tizim deskriptori,LDTjadvallariga xizmat qiladi yoki boshqa vazifalarga chiqish  shlyuzlariga murojaati .  S = 1 deskriptor dastur segmenti yoki ma’lumotiga murojaati;

A —murojaat biti bo‘lib, segmentga murojaat jarayonida o‘rnatiladi.

GDT — global deskriptor jadvali;

IDT — deskriptor uzilishlar jadvali;

LDT — lokal deskriptorli jadval.

     48-bitli registrlar GDTR va IDTR  32-bitli bazoviy  adres maydoniga ega.      LDT lokalizatsiyalash uchun  16-razryadli registrdan foydalaniladi.

 LDTR, segment selektorini saqlaydi. Jadvallar LDT sement sifatida saqlanadi, ushbu segmentlar deskriptori  GDT da saqlanadi. Rejim x86 da  segment maydoniga murojaat qiladi.Segment registrlar (CS, SS, DS, ES, FS, GS).Lekin ximoyalangan rejimda segment registr tarkibi segment bazasi xisoblanmaydi,u segment selektori xisoblanib quyidagi rsmdagi formatga ega.(rasm 7.2.)

 

 

Saxifali xotira tashkil qilish.

      x86 da segmentli xotira tashkil qilishdan tashqari saxifali xotira tashkil qilinsa bo‘ladi.Saxifali xotira tashkil qilish dastur orqali bayroq PG registr CRO.

ulanishi va ulanmasligi mumkin

      Barcha adres maydoni qismlarga bo‘linadi,ular soni 1024baytgacha bo‘ladi.

   Xar bir bo‘lim 1024 saxifagacha bo‘lishi mumkin va o‘lchami 4Kbayt(rasm 7.4.),

            32-razryadli mantiqiy uchta maydondan tashkil topgan:

 [31:22] — bo‘lim nomeri  (TAVDE);

 [21:12) — bo‘limdagi saxifa nomeri  (PAGE);

 [11:0] — saxifadagi so‘z nomeri  (smeùenie).

Bo‘lim boshlang‘ich adresi saxifa jadvalida saqlanadi,o‘lchami  

           1024 saxifa. x 4 bayt = 4096 baytlar.

32-razryadli fizik adresni ishlab chiqish uchun 32-razryadli liniya adresi boshlang‘ich adres xisoblanadi saxifali jadval(SJ stranichnoy tablisû (ST). ) va bo‘lim katalogi yordamida.(rasm 7.5)

Liniya adresining katta 10 razryadi bo‘lim katalogining qator nomerini aniqlaydi, CR3 tizim registri tarkibi bilan lokalizatsiyalanadi.

       Bo‘lim katalogi 1 Kbayt x 4bayt o‘lchamga ega bo‘lib, (CR3[11:0] =0) (rasm. 7.6). Saxifali jadvalning bazaviy adresi katalogdan olinib liniya adresi razryadlari [21:12] bilan qo‘shiladi,bu saxifa jadvalining qator adresini xosil qilish uchun.Baza adres saxifalari razryadlari [11:0] va liniya adresi kontakti natijasida fizik adres xosil qilinadi. Ushbu ikki pog‘onali saxifa jadvalini tashkil qilish saxifa jadvalini saqlovchi xotirani tejashga yordam beradi.

 

 

 

17-18- MAVZU. XOTIRANI TASHKIL ETISH VA UNI XIMOYALASH REJIMLARI . SAXIFALI XOTIRANI TASHKIL QILISH.

 

Virtual xotira

       Zamonaviy  EXMlarda masalalarni xal qilishda dinamik xotirani taqsimlanadi.

Dinamik xotirani taqsimlash-dastur mantiqiy adreslarda kompilyatsiya qilinadi,lekin ish jarayonida mantiqiy adreslar fizik adresga aylanadi.EXM da xotirani dinamik taqsimlash metodi,saxifali (stranichnaya)virtual xotirani tashkillashtirish deyiladi.

           Ushbu usuldan foydalanishda EXM to‘liq xotirasi(OXQ va TXQ(tashqi xotira qurilmasi) birgalikda yagona virtual xotira deb qabul qilinsa bo‘ladi.

Xotira adresi virtual yoki mantiqiy deyiladi.Xamma virtual xotira bir xil o‘lchamli virtual saxifalarga bo‘linadi.

            Saxifa o‘lchami odatda  0,5 — 4 Kbaytni tashkil qiladi.Virtual adres ikkita qism ko‘rinishda ko‘riladi saxifa nomeri va saxifadagi so‘z nomeri (smesheniya).

Fizik xotira  EXM (OXQ va TXQ) saxifalarga bo‘lingan,eng asosiy fizik saxifa virtual o‘lchamiga teng olnadi.

Bundan kelib chiqadiki,bitta fizik saxifa bitta virtual saxifani saqlaydi,Xar doim xam bunday qilinishi shart emas.Virtual va fizik saxifalar o‘rtasida  muvofiqlik qo‘yilsa bo‘ldi.

          Virtual va fizik  saxifalararo muvofiqlik nomerlari  operatsion tizim qo‘llaydigan maxsus saxifa jadvali(SJ) asosida qo‘yiladi

        Fizik saxifa o‘lchami virtual o‘lcham bilan teng bo‘lgani uchun saxifalarda smeùeniyaga o‘zgartirilmaydi.

SJ o‘lchami katta bo‘lgani uchun to‘liqligicha OXQ saqlanadi va xotirani taqsimlashda o‘zgarishlar bo‘lsa OS orqali modifikatsiyalanadi.

           Xotiraga murojaatni tezligini oshirishda SJ aktiv qismi maxsus tezkor xotirada saqlanadi.

          SX alomatlar maydonida saxifa virtual adresi(ba’zida dastur nomeri bilan), informatsion qismida –fizik saxifaning mos nomerlari.  

          Agar virtual adresni fizik adresga o‘zgartirishda fizik adres tashqi xotira qurilmalarida joylashgan bo‘lsa,u xolda dastur bajarilmaydi va saxifa xatoligi deyiladi.Ushbu xolatda ichki uzilishlar tashkil qilinadi ya’ni tashqi qurilmalardagi ma’lumotlarni OXQ o‘qish qism dasturi ishga tushiriladi.U xolda keltirilgan saxifani qidirish uchun  OXQ va tashqi qurilma orasida vaqt ketadi.Bu esa o‘z navbatida muammolarni keltirib chiqaradi.

 

Segmentli xotirani tashkil qilish.

Shu davrgacha dasturchi joylashtirgan  virtual xotira yagona nomerlangan so‘z uzluksiz massivi ko‘rinishida tasvirlangan.

Dasturlash jarayonida bir biriga bog‘liq bo‘lmagan segmentlarni (kod,ma’lumotlar,qism dastur,stek v.b.) joylashtirsa bo‘ladi, segment o‘lchamlari oldindan aniqlanmagan bo‘ladi.

   Ushbu xolatda virtual adres 3ta qismdan iborat deb namoyish etiladi: < cegment nomer> <saxifa nomeri > < so‘z nomeri>.va chap tomondan yana <topshiriq nomeri> qo‘yiladi.

Deskriptor — bu 8-baytli blok bo‘lib,segmentni liniyali manzillar atribut maydonlarini tashkil etadi. Deskriptor- o‘zida segment xolati,uning o‘lchami,ma’lumot turi va segment boshqa atributlarini saqlaydi. Deskriptor formati rasm  7.1.da keltirilgan.

Deskriptor maydoni tavsiyalari :

-bazaviy adres1 [31:0] –segment joyini aniqlaydi

(boshlang‘ich adres adres) ichki 4-gigabaytli  adres maydoni;

 -chegara [19:0] bit o‘lchamini xisobga olgan xolda segment o‘lchamini aniqlaydi.

Atribut maydoni quyidagi alomatlarni biriktiradi:

             G — bit o‘lchami. Agar G = 0 segment o‘lchami baytlada beriladi,

  G = 1 — 4 Kbaytli saxifalarda. Birinchi jarayonda segment  o‘lchami  maksimal 1 Mbaytgacha, 2-chi xolatda — 4 Mbayt;

           D — bit o‘lchami. Agar D=O  segmentdagi operandlar o‘lchami 16 bit xisoblanadi, aks xolda — 32 bit;

           X —  Intel da rezervlangan dasturchi tomonidan foydalanilmaydi;

           U — foydalanuvchi biti  ( angl. user) tizim dasturchisi uchun foydalaniladi.Protsessor ushbu bitni inkor etadi.

DRL deskriptor  imtiyoz pog‘onasi;

           S — tizimda deskriptor vazifasini aniqlaydi:

 S = 0 — tizim deskriptori,LDTjadvallariga xizmat qiladi yoki boshqa vazifalarga chiqish  shlyuzlariga murojaati .  S = 1 deskriptor dastur segmenti yoki ma’lumotiga murojaati;

           A —murojaat biti bo‘lib, segmentga murojaat jarayonida o‘rnatiladi.

GDT — global deskriptor jadvali; )

          IDT — deskriptor uzilishlar jadvali; 

          LDT — lokal deskriptorli jadval.

     48-bitli registrlar GDTR va IDTR  32-bitli bazaviy  adres maydoniga ega.      LDT lokalizatsiyalash uchun  16-razryadli registrdan foydalaniladi.

 LDTR, segment selektorini saqlaydi. Jadvallar LDT sement sifatida saqlanadi, ushbu segmentlar deskriptori  GDT da saqlanadi.

 

 

Saxifali xotira tashkil qilish.

      x86 da segmentli xotira tashkil qilishdan tashqari saxifali xotira tashkil qilinsa bo‘ladi.Saxifali xotira tashkil qilish dastur orqali bayroq PG registr CRO.

ulanishi va ulanmasligi mumkin

      Barcha adres maydoni qismlarga bo‘linadi,ular soni 1024baytgacha bo‘ladi.

Xar bir bo‘lim 1024 saxifagacha bo‘lishi mumkin va o‘lchami 4Kbayt(rasm 7.4.).

            32-razryadli mantiqiy uchta maydondan tashkil topgan:

 [31:22] — bo‘lim nomeri  (TAVDE);

 [21:12) — bo‘limdagi saxifa nomeri  (PAGE);

 [11:0] — saxifadagi so‘z nomeri  (smeùenie).

 

 

Bo‘lim boshlang‘ich adresi saxifa jadvalida saqlanadi,o‘lchami  

           1024 saxifa. x 4 bayt = 4096 baytlar.

 

32-razryadli fizik adresni ishlab chiqish uchun 32-razryadli liniya adresi boshlang‘ich adres xisoblanadi saxifali jadval(SJ stranichnoy tablisû (ST). ) va bo‘lim katalogi yordamida.(rasm 7.5)

Liniya adresining katta 10 razryadi bo‘lim katalogining qator nomerini aniqlaydi, CR3 tizim registri tarkibi bilan lokalizatsiyalanadi.

           Bo‘lim katalogi 1 Kbayt x 4bayt o‘lchamga ega bo‘lib, (CR3[11:0] =0)  (rasm- 7.6).

Saxifali jadvalning bazaviy adresi katalogdan olinib liniya adresi razryadlari [21:12] bilan qo‘shiladi,bu saxifa jadvalining qator adresini xosil qilish uchun.Baza adres saxifalari razryadlari [11:0] va liniya adresi kontakti natijasida fizik adres xosil qilinadi.

           

 

6- SEMESTR

1-MAVZU. MIKROKONTROLLERLAR.MIKROKONTROLLERLAR STRUKTURASI.

2-MAVZU. MIKROKONTROLLER XOTIRASI VA PROTSESSORLI YADROSI.MARKAZIY PROTSESSOR STRUKTURASI.

 

Mikrokontroller-bu yagona mikrosxemaga joylashgan kompyuterdir.

Mikrokontrollerlar 1976 yilda yaratilagandir.Kristalda markaziy protsessordan tashqari 1kbayt dasturiy xotira,64 bayt ma’lumot xotirasi,2ta 8 bitli taymer,27 kirish,chiqishli portlari mavjud bo‘lgan.Ushbu mikrokontrollerlarning afzalligi kichik xajmga ega bo‘lish bilan birga ish tezligining yuqori darajada ekanligi va ishonchliligi.Xar qanday vazifani tez va ishonchli bajarishidadir.  

Ìèêðîêîíòðîëëåð ñåìåéñòâà AVR ATMEGA8

Ñòðóêòóðíàÿ ñõåìà ìèêðîêîíòðîëëåðà AVR

ponyprog2000_1

 

Portlarning vazifasi vaqtinchalik MK larni ma’lum ob’ekt bilan aloqa o‘rnatish uchun foydalaniladi.

Parallel portlar asosida MK va tashqi qurilmalar bilan ma’lumot almashish algoritmi 3 ta tip algoritmiga ajratiladi:

1. Oddiy dasturiy kiritish-chiqarish;

2. Strobli kiritish-chiqarish;

3. Ma’lumot almashishni to‘liq tasdiqlovchi kiritish-chiqarish rejimlari;

4-4

Boshqaruv triggeri ma’lumotlarni tashqi qurilmalarga chiqarishga ruxsat beradi. 

Shuni inobatga olish kerakki,ma’lumotlarni kiritishda trigger tarkibidagi ma’lumotlar emas,balki tashqi chiqishdagi signallar miqdori sanaladi.Agar MK chiqishlari turli tashqi qurilmalarga ulangan bo‘lsa,ular kutilayotgan trigger qiymatlari bilan birga olinadi yoki(kvaziikki yo‘nalishli) deb ataladi.Bunday tashkillashtirish «montajlangan I»qurilma sxemasi shinalari xosil qiladi.

Taymer.

Ko‘p vazifalar MK ish jarayonini ma’lum vaqt mobaynida bajarilishiga qarab baxolanadi. Markaziy protsessorda ma’lum vaqt mobaynida signallar ishlab chiqarish effektiv natijani bermaydi,shuning uchun zamonaviy MK larda taymerlardan foydalaniladigan apparat ta’minoti zarur bo‘ladi.

Taymer moduli 8-razryadli MK da 8 yoki 16 boshqaruv sxemali xisoblagichga ega.Sxemotexnikada tashqi qurilmalardan ma’lumot olish rejimi xisoblagichi ko‘rinishida tushunilgani uchun ,ularni taymer/xisoblagich deyiladi.

 

5-1

 

 

Garvard arxitekturasiga asoslangan bo‘lib,ma’lumot shinalari va (OZU)ma’lumot xotirasi(kengligi 8-bit), dastur shinasi va dastur xotirasi14-bit.Bunday arxitektura bit va bayt registr operatsiyalari yuqori tezlikda ishlashga imkon yaratadi.O‘tish komandalaridan tashqari xamma komandalar bir siklda bajariladi.

6-3

 

 

MK ish dasturi  FLASH xotira datsurida saqlanadi.Dastur ketma-ket bajarilaveradi toki o‘tish komandasi uchramaguncha.(RK)komanda registri joriy komandani saqlaydi, (DX) dastur xisoblagichi keyingi komandaning adresini xisoblash uchun belgilangan. Joriy buyruq bajarilishi bilan:

DX dastur xisoblagichi adresidan (RK) komandani tanlaydi;

Komanda deshifratsiya qilingunga qadar (DX) dastur xisoblagichi inkrementlanadi va (DX) keyingi komandani adreslaydi;

Komanda bajarilishi tugallanishi bilan (DX)tarkibi xotira dasturiga joylashtiriladi va sikl qaytariladi.

Komandalar natija alomatlari STATUS registrida qayd etiladi. Ushbu registrda ma’lumotlar alomatlari tekshiriladi. Adres multipleksori adreslash rejimlariga nisbatan ,(RK) komanda registri (to‘g‘ri adreslash)yoki mavxum adreslashFSR rejimida bo‘ladi.

      Konfiguratsiya bitlari MK rejimlari funksiyalarini belgilaydi:

      Manba’ga ulanganda fayta yuklash (POR);

      Manba’ga ulanish taymeri (PWRT);

      Generator ishga tushirish taymeri (OSC);

      Manba’ kamligida qayta yuklash (BOR);

      Qo‘riqchi taymer (WDT);

      Kichikvoltli ketma-ket dasturlash rejimi(LVP);

      Ichki sxema rejimi  (ICD).

Misol: 4-razryadli indikatorning birinchi razryadida inkrement xisob,ikkinchi razryadida 6 raqamini aks ettiring,3-chi razryadida -7ni va 4-chi razryadida -8ni aks ettiring.

org 0000h  

jmp start  

org 0100h  

    

start: mov  r1,#0   ; zagruzka v registr r1 sifrû dlya  ; otobrajeniya na pervom ; razryade indikatora

 

mov r2,#6               ;   z  a  g  ruzka v registrû r1, r2, r3 sifr ; dlya otobrajeniya na vtorom,      

mov r3,#7   ; tretem i chetvertom razryadax  ; indikatora

mov r4,#8  

    

st:  mov r5,#40   ; ustanovka siklov povtornogo ; otobrajeniya kadra 

 

st1:  mov     p2,#00   ; posûlka v port R2 adresa pervogo ; razryada indikatora

  mov r0,#200  ; ustanovka v registr r0 vremeni  ; zaderjki dlya otobrajeniya sifrû

; v pervom razryade

  mov  p0,r1   ; posûlka v port R0 simvola, ; otobrajaemogo na pervom razryade ; indikatora

zn1:  nop   ; otobrajenie simvola v pervom ; razryade, poka r0>0

  dec r0   ; umenshenie na yedinisu chisla v ; registre r0

  cjne r0,#0,zn1

mov     p2,#01 ; otobrajenie simvola na vtorom  ; razryade indikatora

mov r0,#200  

mov  p0,r2  

zn2:  nop  

dec r0  

 cjne r0,#0,zn2  

    

  mov     p2,#02 ; otobrajenie simvola na tretem  ; razryade indikatora

  mov r0,#200  

  mov  p0,r3  

zn3:  nop  

  dec r0  

  cjne r0,#0,zn3

mov     p2,#03 ; otobrajenie simvola na ; chetvertom razryade indikatora

  mov r0,#200  

  mov  p0,r4  

zn4:  nop  

  dec r0  

  cjne r0,#0,zn4  

  dec r5 ; umenshenie na yedinisu chisla v ; registre r5

  cjne r5,#0,st1 ; otobrajenie kadra,  poka r5>0

  inc r1  ; uvelichenie na yedinisu chisla v ; registre r1

  cjne r1,#10,st2  

  mov r1,#0  

st2:  jmp st  ; perexod k otobrajeniyu novogo  ; kadra

    end

 

 

3-4- MAVZU. MIKROKONTROLLER BUYRUQLAR TIZIMI.  MIKROKONTROLLERLARDA STEK VA TASHQI XOTIRADAN FOYDALANIB MA’LUMOT VA DASTURIY XOTIRA ISHI VA STRUKTURASI.

 

Dasturlash nima.

Ko‘p xolatlarda dasturlash bu maxsus oyna bo‘lib,xar qanday belgilangan tugmachalarni bosish natijasida qandaydir masala yechimi aniqlanadi deb tushuniladi.Lekin dasturlash maxsus dasturiy til bo‘lib,ular ma’lum muxitlarda foydalaniladi.Masalani yechimini topish uchun inson tomondan dastur tuziladi.

PIC protsessorlari Garvard arxitekturasini qo‘llaydi.Ma’lumot shinalari va ma’lumot xotirasi (OXQ) PIC16  8-razryadli, dasturiy ma’lumot shinalari va dasturiy xotira

( PZU) 14-razryadli.

Bunday  konsepsiya oddiy,lekin juda kuchli bir so‘zli komandalardan foydalanishga, ya’ni registrdagi ma’lumotlar yuqori tezlikda amalga oshiriladi.Xar bir komanda 16 oraoiq iaki chastotasida bajariladi. Bu oraliqlar 4ta teng guruxlarga bo‘lingan. Ushbu oraliqlar protsessor takti deyiladi.

Bir takt teng 4-ta orqliq takt chastotasiga teng.Birinchi taktda komandani o‘qish,1-chi taktda komandani o‘qish va uni deshifratsiyalash, 2-chi taktda o‘qish va ma’lumotlarni uzatish,3-chi taktda ma’lumotlarni qayta ishlash, 4-chi – natijani yozish.Xar bir taktda protsessorning turli qurilmalaridan foydalaniladi va ma’lumotlar xam turli shinalarga joylashtiriladi. 4 pog‘onali  konveyer- bir vaqtning ichida tanlash va 4 ta komandani ketma-ket bajaradi. Natijada xamma komanda (komanda xisoblagichidan tashqari)bir taktda bajariladi.

Mikrokontrollerlar PIC16 simmetrik komandalar tizimiga ,ya’ni ixtiyoriy operatsiyani ixtiyoriy registr bilan ixtiyoriy adreslash usullarida bajara oladi.Bu esa o‘z navbatida dasturlashni yengillashtiradi.

Mikrokontrollerlar PIC16   da  8-razryadli arifmetiko-logik qurilma (ALQ) va ishchi  registr W (Word). ALQ- qo‘shish,ayirish, surish, arifmetik va mantiqiy operatsiyalarni bajaradi. Komandalarda ikki opernad bo‘lib ulardan biri ishchi  registr W. Ikkinchi operand konstanta yoki OXQ ixtiyoriy registr tarkibi bo‘lishi mumkin.

Xolatlar registri STATUS operatsiya bajarilish xolatiga ko‘ra xolatlarga tekshiriladi.

 

Dasturiy xotirani tashkil qilish.

Dasturiy xotira maydoni o‘zida  8192ta  14-razryadli yacheykalarni saqlaydi. Ushbu xotira maydoni 4ta bankga bo‘lingan, xar bir bank –  8ta segmentga xar biri  256tadan  yacheykalarga ega bo‘lgan qismlarga bo‘lingan.  (tabl.1.1).Xar bir xotira yacheykalari adresiRS da saqlanadi.Dastur xisoblagichi tarkibi PCL va  PCLATH maxsus nomga ega bo‘lgan ma’lumot xotira maydoni yacheykalarida aks ettiriladi.(mladshiy bayt i starshiy bayt adresa). Segment nomerini  PCLATH registri bitlari 0, 1, 2 aniqlaydi.

Ma’lumot xotirasini tashkil qilish.

8-razryadli ma’lumot xotirasi OXQ registrlarni biriktirgan, kiritish chiqarish portlari va ALQ.Ma’lumot xotirasi maydoni  512tagacha birbaytli yacheykalardan,  128 baytdan saxifalar yoki 256baytdan sektorlarga bo‘lingan.Xar bir saxifaning Xar bir saxifaning kichik 32- yacheykalarida protsessorxolatlari,kiritish chiqarish rejimlari xolatlarini aniqlaydigan xizmatchi registrlar saqlanadi.

Protsessor funksionirovat qilishini ta’minlovchi registrlar – RSL, PCLATH, STATUS, INDF, FSR, INTCON – xamma saxifada o‘z klonlarini saqlaydilar.Ushbu registrlar xar doim qaysi saxifada bo‘lishidan qat’iy nazar foydalanuvchi uchun ochiq.  (tabl. 1.2). Foydalanuvchi registrlari (USER FILES) xar bir saxifaning pastki qismida joylashtirilgan. Ulardan ba’zi birlari (UNITED USER FILES)stek ma’lumotlarnini tashkillashtirish uchun biriktirilgan.

 

Registrlar adreslanishi mumkin, komandalrda adresni ko‘rsatish bilan yoki FSR mavxum registrlash yordamida formal adresni ko‘rsatish bilan INDF.

Bevosita adreslash- maxsus komandalar orqali amalga oshiriladi.

Registr xolatlari STATUS.

         Registr STATUS foydalanuvchi uchun ochiq.

Lekin bitlar TO va PD apparat asosida o‘rnatiladi uni dasturiy o‘zgartirish mumkin emas.Dastur tuzish jarayonida ushbu xolatlarni inobatga olish kerak. Masalan, komanda CLRF STATUS xamma bitlarni nolga tenglashtiradi, TO va PDbitlardan tashqari, keyinchalik bit Z=1ga o‘rnatadi.Undan tashqari  BCF, BSF lardan foydalanilsa bo‘ladi. 

PIC16 komandalar tizimi.

PIC16 xar bir komandasi  14-razryadli so‘zni saqlaydi,ular operatsiya kod maydoni COM va argument maydoni ARGShartli belgilanishi tabl 2.da keltirilgan.Komandalar tizimi tabl 3 a keltirilgan.

Baytlar bilan ishlash komandalari

 ‘f‘ registr xarakatinini belgilaydi,   bit ‘d’ tayinlanishi kerak bo‘lgan registr. Agar ‘d’=0 natija registr W ga joylashtiriladi,agar ‘d’=1 natija registr ‘f’ ga joylashtiriladi.

Dlya komand rabota s bitami ‘b’ komandadagi bit nomerini belgilaydi.

 ‘f’- bit joylashgan registr. 

Boshqarish komandalari va konstanta bilan ishlash komandalari

 ‘k’  8‑bitli konstantani belgilaydi, ‘addr’ – o‘tish adresi .

MISOL:

LIST p=16f77;  kompilyatorga dasturda protsessor PIC16F77komandalari ishlatilishi xaqida xabar.

 2. INCLUDE file_name –dasturda fayl file_name matni qo‘shilishi xaqida xabr

 3. END – majburiy  direktiva.

 4. name EQU arg –  name va argument arg orasidagi muvofiqlik.

MISOL:

c_x    EQU           0x20           ;  c_x nomi konstataga mos 0x20   

c_y    EQU           c_x+1                  ;  c_y nomi konstantaga mos 0x21.

5. CBLOCK arg

         name1[: size1]

         name2[: size2]

         name3[: size3]

         ENDC

 

ORG arg – arg dan boshlab keyingi komandalarni joylashtirishnikompilyatorga e’lon qilish.

Misol:

ORG 0x015f

label MOVLW 0x25    ; komanda kodi  MOVLW 0x25 adresdan boshlanadi.

 

 

 

 

 

 

 

 

 

 

 

5-MAVZU. MIKROKONTROLLERLAR MA’LUMOT KIRITISH VA CHIQARISH PORTLARI TASHKILLASHTIRISH VA STRUKTURASI.

 

 

Garvard arxitekturalari –oeratsiyalarning parallel ishlab chiqishiga imkoniyatlariga qarab Fon-Neyman arxitekturalariga nisbatan tezkor ma’lumot almashish bilan farqlanadi.Ushbu arxitekturada keyingi komandaning bajarilishi oldingi komandaning bajarilishi bilan birga bajariladi.Natijada protsessor komandalarga so‘rovni amalga oshirishda ish jarayonini to‘xtatmaydi.

MK protsessori komandalar tizimi.

MK -4-ta asosiy gurux:

-ma’lumotlarni uzatish komandalari;

arifmetik komandalar;

logik komandalar;

o‘tish komandalari.

MK ma’lumot va dastur xotirasi

MK da 3-ta asosiy xotira turlari ishlatiladi.

-DXQ(PZU)-konstanta va dastur kodini saqlash uchun foydalaniladi.Uning tarkibi dastur bajarilishida o‘zgarmaydi.

-Ma’lumotlar xotirasi-dastur bajarilishida ma’lumotlarni(o‘zgaruvchilar) saqlash uchun ishlatiladi.(OZU)

-MK registrlari-xotira turi registrlar va protsessor ichki registrlarini saqlab pereferiya qurilmalarini boshqarish uchun ishlatiladi.

Dastur xotirasi

Manba’dan uzilgan xolatlarida dasturning saqlanishi bilan xarakterlanadi.Ular quyidagi turlarga bo‘linadi:

- mask-ROM – niqobli turdagi PZU(PZU tarkibiga o‘rnatilgan bo‘lib,keyinchalik o‘zgartirish mumkin emas).Shuning uchun bu tipdagi MK bir qancha tajribalardan so‘ng foydalanish mumkin.

Kamchiligi-yangi fotoshablonlarning ishlab chiqarilishiga sarf-xarajat

Ultrafioletli o‘chirish EPROM —(Erasable Programmable ROM)PZU.-Elektr signallar asosida dasturlanib, ultrafiolet nur asosida o‘chiriladi.

         EPROMli  MK keramik korpusli ko‘p martali dasturlashga mo‘ljallangan. 

Korpus qimmat bo‘lganligi uchun  MK baxosini oshiradi. OTPROM (One-Time Programmable ROM).Bir marta dasturlanuvchi turi.

-EEPROM (Electrically Erasable Programmable ROM)-elektrik o‘chirishga mo‘ljallangan,foydalanuvchi tomonidan dasturlanadigan OXQ(PZU).

Ushbu turdagi PZU EPROMning yangi avlod xisoblanib tunel mexanizmlari asosida el. o‘chirish ishlatiladi. EEPROMdan  foydalanish dastur yozib ,o‘chirishga imkon yaratadi.Ular o‘z navbatida qurilmalarning nosozligini tekshirish,tizimlarning ish xolatini tekshirish uchun yordam beradi.

Keyinchalik Flash-ROM paydo bo‘lib ularning farqi

- EEPROMda xar bir yaeykasi aloxida o‘chiriladi,

-Flash-ROMda esa umumiy bloklari bilan o‘chiriladi.Agar Flash-ROMda bitta yacheyka tarkibini o‘zgartirish kerak bo‘lsa,barcha bloklarini qayta dasturlashga to‘g‘ri keladi.

Ma’lumotlar xotirasi

Statik OZU(OZU tarkibi MK takt chasotasi(1 V ) kamayishida saqlanadi) asosida ma’lumotlarni saqlaydi.Ko‘pchilik MK lar “ma’lumotlarni saqlash kuchi”parametrlari bilan xarakterlanadi (USTANDBY).

MK registrlari

MK registrla to‘plamiga ega bo‘lib,uning resurslarini boshqarishda foydalaniladi.Registrlar tarkibiga:

- protsessor registri(akkumulyator, xolatlar registri, indeks registrlar),boshqarish registrlari(uzilishlarni,taymerni boshqarish),ma’lumotlarni kiritish-chiqarishni ta’minlash registrlari(analog,parallel,ketma-ket port ma’lumot registrlari).Ushbu keltirilgan registrlarga murojaat turli ko‘rinishda bo‘ladi.Adreslarni ko‘rsatib murojaat,adreslar maydoniga murojaat v.b.

Tashqi xotira

Ba’zi xolatlarda qo‘shimcha tashqi xotiradan foydalanish zaruriyati paydo bo‘ladi.Bularga,murakkab shina tashkil qiluvchilarni ishlatmay dastur orqali tashqi qurilmalar bilan kiritish-chiqarishni tashkillashtirish

8-bitli mikrokontrollerlar

8-bitli mikrokontrollerlar Garvard arxitekturali bo‘lib 2 katta oilaga mansub: PIC10/12/16 i PIC18.

8-bitli MK lar PIC10/12/16 -2-ta bazali arxitekturali yadroga ega: BASELINE va MID-RANGE.

BASELINE- PIC10 va PIC12 i PIC16 oilasiga mansub

Korpusda 6 dan 28gacha chiqishlar bo‘lgan 12-razryadli arxitekturaga ega.(Microchip)

-kichik korpus va kam chiqishli

- Flash xotira

-kam xarajat

- 35 ta  komandalar ketma-ketligi

MID-RANGE

PIC12 va PIC16 MK seriyasiga mansub.8 da 64 ta chiqishli. Flash xotira va  2.0 dan 5.5V.

- 6 — 64 chiqishli korpuslar:

-Flash xotira dasturi:

35 ta komandalar tizimi

 

 

 

6-MAVZU. MIKROKONTROLLERLAR QUVVAT SARFLANISHINI TEJASH REJIMLARI.

 

OXQ(OZU)dan tashqari , mikrokontroller o‘rnatilgan quvvat sarflanishini tejash xotirasiga ega bo‘lib, ma’lumot va dasturni saqlash uchun foydalaniladi.Ba’zi bir MK larda tashqi xotirani ulash shinalari mavjud emas.Eng arzon MK xotirasiga bir marta dasturlash mumkin bo‘lganlar kirib ular yangilanmaydi.Boshqa turdagi MK quvvat sarflanishini tejash xotirasiga bir necha marta yozish mumkin. quvvat sarflanishini tejash rejimlari mavjud bo‘lib,xisoblash moduli va qurilmalar ba’zi qismi o‘chiriladi.

Kutish rejimi va AVR MK manba’sini boshqarish juda foyda keltirishi mumkin,qachonki MK qandaydir vaqtda xech narsa qilmaydi faqat kutadi.MK ni shunday rejimga o‘tkazish uchun masalan WinAVR muxitida ,uning uchun SLEEP instruksiyasidan foydalanib MK registrlariga mos bitlarni o‘rnatish kerak.

asm("sleep");

Turli MK larda manba’ni tejash rejimlari(energosberejeniya) turli registrlarga taqsimlangandir.Undan tashqari turli MK larda manba’tejash rejimlari miqdori 2 dan 6 gacha bo‘lishi mumkin.

( v datashit v razdel "Power management and sleep modes“). 

MK mega8.

MK manba’ ta’minoti bilan tanishib chiqamiz.

 

 

 

Bit 7 - SE: Uxlash(spyaùego) rejimi. Bit “1”ga o‘rnatilishi shart ,chunki MK uxlash rejimlaridan biriga kirishishi shart.

Bitû 6:4 - SM2:0: Uxlash rejimini tanlash.

 

 

Xamma uxlash rejimlari va ulardan chiqishni ko‘rib chiqamiz.

Idle Mode. Kutish rejimi (obùiy dlya vsex modeley).Ushbu rejimda markaziy protsessor to‘xtaydi, periferiya - SPI, USART, Analog komparator, ADC, TWI, taymer/xisoblagichlar, qo‘riqchi  taymer va uzilishlar tizimi o‘z ishini davom ettiradi.

ADC Noise Reduction Mode. Bu rejimda protsessor to‘xtaydi,lekin  ASP, tashqi uzilishlar, TWI, taymer/xisoblagich2, qo‘riqchi taymer taymer (yesli vklyuchen) ish jarayonini davom ettiradi.

Power-down Mode.  AVR MK uchun umumiy. Ushbu rejimda MK xamma qurilmalari qo‘riqchi taymer va tashqi uzilishlardan tashqarilari ish jarayonini to‘xtatadi.

Faqat tashqi qayta yuklash,uzilishlar TWI , INT0 yoki  INT1pog‘onalarni o‘zgartirish bilan MK uyg‘otish mumkin.

Power-save Mode. Bu  rejim  Power-down mode ga o‘xshash.Farqi shundaki ,agar Taymer/xisoblagich2 asinxron ishlayotgan bo‘lsa,uxlash rejimida xam o‘z ishini davom ettiradi. (MK ni real vaqt ichida foydalanishda kerak bo‘ldai).

StandbyMode. Bu rejim xam Power-down mode ga o‘xshash bo‘lib,ushbu rejimda MK takt generatori ish jarayonini davom ettiradi.Ushbu rejimdan MK 6 taktdan so‘ng uyg‘onadi. MK quvvat sarflanishini tejash rejimlarini ishlatio‘da extiyot bo‘lish kerak,chunki u darxol uyg‘onishi va keltirilgan rejimda bo‘lmasligi xam mumkin.

Mikrokontroller kristallida dasturlar xotirasi va ma’lumotlar xotirasi kabi xotiraning ikkita bloki integratsiyalangan. MK avtonom rejimda ishlashining mo‘ljallanishiga qarab, dastur xotirasi ta’minot kuchlanishi bo‘lmaganda ichidagilarni saqlashi kerak. MKning ichki arxitekturasini soddalashtirish va taktli generatorning chastotalarning keng diapazonida ishlash imkoniyati uchun ma’lumotlar xotirasi statik arxitekturasiga ega bo‘lishi (ya’ni regeneratsiyani talab etmasligi) kerak.

Xotira modulining umumlashtirilgan tuzilmasi 4.5. -rasmda keltirilgan. Xotira moduli m-razryadli qatorlarning N ko‘rinishida tashkil etilgan xotira elementlarining matritsalaridan, katakchalar adresining deshifratoridan va buferli kaskaddan iborat bo‘ladi.

Xotiraning bunday modulining adres shinalarining razryadliligi n-(log2N) dan iborat, ma’lumotlar shinasining razryadliligi m dan iborat.     Adres kodi ko‘rinishdagi katakcha tanlanishini kerak bo‘lgan raqam to‘g‘risidagi axborot o‘zining bitta chiqishidagi yuqori mantiqiy darajani generatsiyalashning xotira elementlarining matritsa qatorlaridan birini aktivlashtiradigan deshifratorga kelib tushadi. Bunda (kelib tushadigan boshqaruv signallariga bog‘liq holda) tanlangan qatorlarning barcha xotira elementlarining mantiqiy darajasi ma’lumotlar shinasiga buferli kuchaytirgich kaskadi orqali kelib tushadi (katakcha holatini o‘qish vaziyati), yoxud ma’lumotlar shinasiga tanlangan qatorning xotira elementlariga buferli kuchaytirgich kaskadlari orqali uzatiladi (katakcha holatini yozish vaziyati).

Kiritish-chiqarishning parallel portlari

Kiritish-chiqarishning parallel portlari mikrokontroller almashinuvi va MK mikrosxemaning kiritish-chiqarish liniyalari orqali uzatiladigan mantiqiy signallar ko‘rinishda keltirilgan ma’lumotlarning tashqi ob’ekti uchun mo‘ljallangan. Umumiy holatda har bir port bilan ma’lumotlar registri (MKdan ob’ekti chiqariladigan axborotni saqlash uchun yoki MKga ob’ektga kiritiladigan axborotni saqlash uchun), boshqaruv tizimi (portning ishlash rejimlarini berish uchun) va signallarni kuchaytirish va qo‘shish vazifasini hal etuvchi chiqish kaskadiga  bog‘liq bo‘ladi. Port tuzilmasi 4.6-rasmda keltirilgan.

Kiritish-chiqarish portlari MK barcha modellarida amalga oshiriladi. Ma’lumotlar registri o‘z ichiga MKning ichki shinasi bilan axborot registriga kiritish yoki registr holatining ichki shinasiga chiqarish imkonini beradigan yozish va o‘qishni boshqarish liniyalari bilan ikki yo‘nalishli kiritish-chiqarishning N-razryadli registrini oladi. MK yadrosining prosessori va port registri o‘rtasidagi axborot almashinuvi momenti ichki shina orqali yadro shinasining kontrollerini belgilaydi. Almashinuv komandalarining tipiga muvofiq (prosessordan portga yoki portdan prosessorga uzatish) WR yoki RD signallari shakllantiriladi, keyin almashinuv CS boshqaruv signali bilan stroblanadi.

Umumiy holatda,  almashinuvning juda murakkab vazifalarini hal etish imkoniyati uchun kiritish-chiqarish portining tuzilmasiga signallar holatini aniqlash va o‘zgartirishning kombinatsiyalanadigan sxemasidan iborat bo‘lgan boshqaruv tizimi, shuningdek ushbu holatni saqlaydigan registrni yozish va o‘qish uchun dasturiy qulay bo‘lgan registr kiritiladi. Bunday vazifa ikkita: kiritish-chiqarish liniyalarining multiplekslash vazifasi va almashinuvning kengaytirilgan protokollarni qo‘llab-quvvatlash vazifasidir.

Ma’lumotlar registridan tashqari, bir xil va xuddi shunday MK kontaktlari  ayrim periferiya qurilmasi (masalan, taymer) ob’ekt bilan (kiritish-chiqarishning muqobil funksiyalari deb ataladigan) axborot almashinuvi uchun talab etilishi mumkin. Bunda qaysi qurilma (porti yoki boshqa periferiya moduli) bilan MK mikrosxemalarning muayyan har bir kontakti mahkamlanganligini aniqlash zarur bo‘ladi. Bunday rostlash cignallar kommutatorining holatini belgilaydigan maxsus kodning boshqaruv tizimining registriga yoziladi. (4.8.-rasm).

Boshqaruv tizimi hisob (boshqaruv tizimi registrining dasturiy qulay biti yoki tashqa signal) yo‘nalishlarining topshiriq manbaini, shuningdek taktirlash manbai (yadroning tayanch chastotasi yoki tashqi impulslari) va taktli impulslarni bo‘lish koeffitsientini aniqlash imkonini beradi.  Nominal (maksimal bo‘lib hisoblangan) intervallardan farqlanadigan vaqtli intervallarni berish uchun hisoblagichning  dastlabki dasturiy yuklamasidan foydalaniladi.

0 kodiga erishilganda (kamayishdagi hisobda) yoki Nmax (ko‘payishdagi hisobda) dasturiy vositalar uchun bo‘lgani kabi (taymer-hisoblagichni boshqarish tizimi holatining registrini o‘qishda), tashqi apparatura uchun, xususan, ob’ekt uchun qulay bo‘lgan OV to‘lish signali generatsiyalanadi.

Shuni ta’kidlash kerakki, vaqtli intervallarga rioya qilish vazifalarining echimi dasturiy vositalar ayrim yo‘riqnomalar bajariladigan t vaqtni, siklda uning N-karrali bajarishni tashkil etish oson emasligini bilgan holda, shu bilan birga T=Nt davomiylik bilan kechikishni ta’minlagan holda qo‘llanilishi mumkin, biroq, bunday holatda boshqa dasturiy harakatlarni (masalan, axborotni yig‘ish, operator bilan ma’lumotlar almashinuvi va h.) bajarish mumkin emas, bundan tashqari, T kvant  qonikarsiz darajada katta bo‘lishi mumkin.

Taymer-hisoblagichlar MKning barcha modellarida amalga oshiriladi.

Hodisalarga ishlov berish bloklari

Taymer-hisoblagichlar qo‘llanilishi bilan erishiladigan vaqt funksiyalarini amalga oshirish imkoniyatlarini kengaytirish uchun MKning ayrim modellarining periferiya qurilmalar tarkibiga taymer-hisoblagichlar bilan bog‘liq bo‘lgan vaqtli hodisalarga apparatli ishlov berish bloki kiritilgan.  Turli firmalarning MKdagi bunday bloklarning nomi farqlanishi mumkin: EPA (Event Processors Array – hodisalar prosessorlar massivi), HSIO (High Speed Input/Output unit – tezkor kiritish-chiqarish bloki), RSA (Programmable Counters Array – dasturlanadigan hisoblagichlar massivi) va boshqalar.

Bunday bloklarning asosiy vazifalari bo‘lib quyidagilar hisoblanadi:

- berilgan ko‘rinish hodisalar (hodisalarni tutib qolish) sodir bo‘lgan vaqtni aniqlash. Tutib qolishni dasturiy amalga oshirishning prinsipial qiyinchiligi taymer ma’lumotlarining ko‘rsatkichini aniq o‘qish imkoniyati mumkin emasligi bo‘lib hisoblanadi (chunki taymer razryadliligi ichki shina razryadliligidan oshadi va registr fragmentlarini ketma-ket o‘qish prosedurasi o‘zgarishlar bilan bajarilishi mumkin);

- vaqtning berilgan momentida berilgan ko‘rinishdagi hodisalarni generatsiyalash (vaqtga nisbatan hodisani bog‘lash). Bog‘lashni dasturiy amalga oshirishning prinsipial qiyinchiligi vaqtning berilgan momentini aniqlash momenti (masalan, taymer ma’lumotlarining registrini to‘ldirish bo‘yicha) va berilgan mantiqiy hodisalarni generatsiyalash komandalarini bajarish momenti o‘rtasidagi vaqtli kechikishning mavjudligi bo‘lib hisoblanadi;

- umumiy vaqtli bazadagi keltirilgan ko‘rinishlarning ko‘p kanalliligini ta’minlab turish. Ko‘p kanllilikni dasturiy amalga oshirishning prinsipial qiyinchiligi bir nechta dasturiy modullar tomonidan taymer ko‘rsatkichlarini kuzatishning murakkabliligi va samarasizligi bo‘lib hisoblanadi. Ahamiyatli belgilangan qiyinchilik bo‘lib, dasturiy ishlov berish o‘lchanadigan va

generatsiyalanadigan intervallarda ahamiyatli xatoliklar kiritiladigan hodisalar o‘rtasidagi vaqt intervallarida hisoblanadi.

 

 

7-8- MA’RUZA. TAKT GENERATORLARI, QUVVAT SARFLANISHINI TEJASH REJIMLARI MANBA’ SXEMALARI. QO‘RIQCHI TAYMERLAR VA MIKROKONTROLLERLAR QO‘SHIMCHA MODULLARI.

 

Ko‘pchilik o‘rnatilgan tizimlar o‘z tizimiga bog‘liq xolda ishlaydi.

-Agar dasturiy ta’minot to‘xtab qolsa xar doim xam uni qayta yuklash imkoniyatini kutish xolatlari mavjud bo‘lmaydi.

-xamma qurilmalar xam inson tomonidan qayta yuklash imkoniyatiga ega emas(kosmicheskie zondû).

-tizimni qayta yuklovchi operator tezligi qanoatlantirmaydi.

Qo‘riqchi taymer – qurilma elementi xisoblanib , qandaydir xodisa ro‘y berganda avtomatik ravishda dasturiy ta’minot xatoligini aniqlash va protsessorni qayta yuklash uchun foydalaniladi.

Qo‘riqchi taymer xisoblagich asosida qurilgan bo‘lib ,xisob to‘lgandan so‘ng xisob nol bo‘lgandan so‘ng teskari xisobni amalga oshiradi.

O‘rnatilgan dasturiy ta’minot xisoblagich joriy xolatini oladi va vaqt oralig‘ida uni qayta yuklaydi.Agar so‘rovlarni amalga oshirishgacha xisob nolga teng bo‘lsa demak dasturda xatolik mavjud va protsessor qayta yuklanadi.Qayta yuklanish inson tomonidan qayta yuklanishga o‘xshash bo‘ladi.

Rasmda qo‘riqchi taymer sxemasi keltirilgan.Unda keltirilishicha qo‘riqchi taymer –bu chip bo‘lib protsessordan tashqarida yoki protsessor tarkibida joylashgan bo‘ladi. Ko‘pchilik mikrokontrollelar shunday qurilgan.Ikkala xolatda xam qo‘riqchi taymer pini bevosita protsessor qayta yuklanishi(sbros) bilan bog‘langan.

 

 

Ko‘pchilik xolatlarda qo‘riqchi taymer xisoblagichini qayta yuklash “xayvonlardan ximoyalanish”terminida qo‘llaniladi.Masalan yovvoyi xayvonlar tashlanmasligi uchun xar doim ularni nima bilandir qo‘rqitib turish kerak.

Demak dastur xar doim ma’lum chastotada  qo‘riqchi taymerni qayta yuklab turishi kerak,aks xolda qayta protsessor yuklanish xavfi paydo bo‘ladi.

Qo‘riqchi taymer tizimni xavfli situatsiyalardan qutqarishi mumkin.Shuning uchun dasturchi dasturiy ta’minotda xar doim qo‘riqchi taymer xavfli xolatlarni aniqlash uchun ishlatilishini biladi.

Tizim turli xolatlarda sekinlashishi(zavisayut)mumkin.Mantiqiy xatoliklar v.b. Masalan  read_ komandasi natijasida xosil bo‘ldi.Uzilishlarni tashkil qilish qismidan tashqari dasturning xar qanday qismi ishni qaytadan boshlata olmaydi.

 

 

 

Qo‘riqchi taymer aloxida o‘rnatilgan generatorda taktlanadi (chastota  1 MGs), manba’ ta’minoti VCC=5. Bo‘linish koeffitsienti intervali 16 ming.  2048 ming. sikl ( 16 dan 2048 ms). Komanda WDR (Watchdog Reset) qo‘riqchi taymerni qayta yuklaydi.

 

 

 

 

Bits 7.5 - Res: Reserved bits - Rezervlangan bitlar
 ATmega603/103  MK larida rezervlangan va xisoblashda xar doim 0.

Bit 4 - WDTOE: Watch Dog Turn Off Enable – Qo‘riqchi taymerni o‘chirishga ruxsat. Dannie  biti doljni bût ustanovleni v sostoyanie 1 pri ochistke bita WDE bitini o‘chirishda bitlar 1 rejimga o‘rnatilishi kerak aks xolda qo‘riqchi taymer taqiqlanmaydi. Bit 3 - WDE: Watch Dog Enable – Qo‘riqchi taymerga ruxsat.
Agar  bit WDE  1ga o‘rnatilgan bo‘lsa (qo‘riqchi taymerga ruxsat) va agar  bit WDE h0 qo‘riqchi taymer funksiyasi taqiqlangan.

 

 

9- 10 – ma’ruza.  Mikrokontrollerlar apparat vositalari va ularning imkoniyatlari. Mikrokontrollerlar asosida tizim sifatini oshirish va imkoniyatlarini kengaytirish maxsus funksiyalari.

 

LabVIEW – dasturiy muxit bo‘lib dasturlash jarayonlari bilan farqlanadi.Dasturlash jarayonlari muxiti grafik ko‘rinishda tasvirlanadi.U esa o‘z navbatida dasturiy tillardagi xatoliklar va buyruqlarning formatidagi xatoliklarni oldini oladi.

         LabVIEW muxiti  radioinjenerlar va ilmiy ishchilar uchun qulaydir,chunki muxitda tayyor jixozlar berilgandir. LabVIEW muxitida  mikrokontrollerlarni shina USB orqali boshqarish  bibliotekalar asosida bo‘ladi

 

 

 

Funksiya PortX_Write ikkita argumentni saqlaydi: birinchi Address – boshqaruv portini aniqlaydi. Maket platasida svetodiod  PB0 portiga ulangan,uning uchun  adres 0 dan foydalaniladi.Qolgan porlar uchun P1..P22 maket platasidagi (port razryadlari A, B, C, D mikrokontroller ATmega32) uchun 1 dan 22gacha qiymatlar ishlatiladi.

Ikkinchi argument on_off – xolat, portga sozlash uchun. Misol, svetodiodni yoqish on_off parametriga  1,o‘chirish 0. Address parametrida  0

( svetodiod port adresi).

Virtual jixoz xosil qilish (VI):

 

 

Numeric Control port nomerini aniqlash,  katta/ kichik va tumbler Vertical Toggle Switch, asosida  portni boshqaramiz (tumbler tepaga – mantiqiy  1, tumbler pastga – mantiqiy 0:

 

 

 

Numeric (adresni kiritish maydoni) va Boolean (tumbler joylashishi):

Funksiyasini chaqirish uchun uzelni joylashtirish.  blok diagramm => Connectivity=>Libraries & Executables => Call Library Function Node:

 

 

 

 

 

11-12- MAVZU. MIKROKONTROLLERLAR ASOSIDA RAQAMLI QURILMALARNI LOYIXALASH AFZALLIKLARI. MIKROKONTROLLERLAR ASOSIDA RAQAMLI QURILMALARNI LOYIXALASH VA ISHLAB CHIQISH ASOSIY BOSQICHLARI.APPARAT VA DASTURIY VOSITALARNI BIRGALIKDA SOZLASH.

Dasturlashda ishlatiladigan buyruqlar

 

 

2-qadam. OptionsSelect Microcontroller ni bosish.

 

 

 

 

 

3-qadam. FileLoad Program ni bosish.

 

 

4-qadam. FileLoad Program ni bosish

"Begushiy ogon"

m1          movlw       b00000011 ;  akkumulyatorga yozish

            movwf       PORTB       ; akkumulyatordan  portga        jo‘natish

           call        Pause       ; metkaga o‘tish (qaytish bilan)

            movlw       b00001100 ;  akkumulyatorga yozish

            movwf       PORTB       ;  akkumulyatordan portga jo‘natish

            call        Pause       ; metkaga o‘tish (qaytish bilan)

            movlw       b00110000 ;  akkumulyatorga yozish

            movwf       PORTB       ; akkumulyatordan portga jo‘natish

            call        Pause       ;

movlw       b11000000 ; akkumulyatorga  yozish

            movwf       PORTB       ; akkumulyatordan portga jo‘natish

            call        Pause       ;  metkaga o‘tish (qaytish bilan)

            goto        m1          ; metkaga o‘tish (siklga tushish)

MISOL:

Foydalanuvchi bo‘limdan 7segment.bas fayli tanlab olinadi.

Ushbu dastur 0 adn 99 gacha bo‘lgan sonlarni ikkita 7-segmentli displeyda parallel ulangan va ikki boshqaruv liniyalaridan foydadalanilgan multipleks rejimidagi uzilishlarni tashkil qiluvchi  TMR0 rejimida ishlaydi.

 

 

 

 

Dasturni yuklash

 

 

 

 

 

 

 

13-14-15- MAVZU. MIKROKONTROLLERLAR UCHUN DASTURIY TA’MINOT YARATISH.(MIKROPASCAL)

MIKROKONTROLLERLAR UCHUN DASTURIY TA’MINOT YARATISH.(C).

 

MPLAB IDE muxitida tizimlarni loyixalash.

Project menyusidan  Project Wizard,

Protsessor turi,

Ishga tushirish jixozlari (Microchip MPASM Toolsuite) va

Dasturiy til (MPASM Assembler),

Fayl nomi

ishchi direktoriya,

fayl name.asm  nomlari  Source files ro‘yxatdan va

fayl konfiguratsiyalari Header files ro‘yxatidan belgilanadi.

 View bo‘limidan:

File register – registrlar bloki va ularning nomlari;

Hardware Stack – stek xolati;

Project – loyixa tarkibini kuzatish;

Disassembly Listing – dastur  listingi.

 

 

LIST p=16f77                                 

INCLUDE p16f77.inc           

         LOOP         NOP

                            NOP

                            NOP

                            INCF  20,W

                            DECF  20,F

                            GOTO  LOOP

                   END         

 

 

Debugger / Select Tool dan MPLAB SIM.bo‘limini tanlang va  Build All yoki  Run tugmachasi orqali ishga tushiring. Xatolik mavjud bo‘lmasa  Build Succeeded xabari ko‘rsatiladi.

 

 

 

 

 

VMLAB - AVR mikrokontrollerlari asosida raqamli qurilmalarni boshqarish dasturiy paketidir. Uning tarkibiga tashqi qurilmalar bilan ulanishi mumkin bo‘lgan virtual qurilmalar kirgani uchun virtual emulyator deb xam aytiladi.  VMLAB juda oson  assembler va S kompilyatorlari bilan bog‘lana oladi:

Kuchli ko‘p oynali matn redaktori;Simvolik dasturlovchi;aralash rejimdagi analog-raqamli  modellashtirish;kodni sifatli nazorati.

VMLAB  o‘z navbatida ish jarayonida mikrokontrollerlar asosida  boshqariladigan qurilmalarni apparat vositalari va dasturiy vositalari modeli ish jarayonini yaqqol nmoyon etadi. Uning afzalligi xam xech qanday payalniksiz modellashtirish imkoniyatining mavjudligidadir.  Visual Micro Lab (VMLAB) dastur xatoliklarini ko‘rish imkoniyatini yaratadi.Mikrokontrollerga yuklanish fayli  hex fayl yoki  *.asm. Emulyator o‘z navbatida svetodiodlar,  ossillograf, dastur yordamida  temperaturani o‘zgartirishi, kristall chastotasi va parallel ravishda keltirilgan qurilmalarda belgilangan parametrlar ishlash jarayonini kuzatish mumkin.Undan tashqari  registrlarda, EEPROM xotirasida mikrokntroller periferiya qurilmalardagi ish jarayonini xam namoyon etadi.

 

 

 

 

 

 

 

 

 

 

1.Loyixa nomi va uni qaerda saqlash joyi. Buning uchun  kursorni olib kelib “Enter name …” va sichqonchaning chap tugmasi bilan belgilanadi. Kiritilayotgan nom 8 simvoldan kam bo‘lmasligi va albatta lotin xarflarida bo‘lishi kerak;

2. Loyixa yaratish uchun foydalanilayotgan mikrokontroller turi.Buning uchun  “Select micro” va sichqonchaning chap tugmasi bilan ma’lumot kiritiladi;

3. Dasturiy fayl nomini kiritish. Agar nomni o‘zgartirish kerak bo‘lsa  “Add source code file” va “Add this” oynasiga qo‘shimcha nom kiritish mumkin;

4. Keltirlgan parmetrlar asosida loyixa xosil qilish . “Create new project” + “OK” , VMLAB  da 2ta oyna xosil bo‘ladi.

– “Project file”, fayl oynasi (fayl kengaytmasi .prj);

– “Code Notebook”, dasturiy fayl oynasi (fayl kengaytmasi .asm).

Keyinchalik barcha loyixa bilan bog‘liq ma’lumotlar keltirilgan oynalar bilan bog‘liq bo‘ladi.

VMLAB menyusida  “Components” oynasidan aktiv elementlar ro‘yxatini tanlaymiz.

 

ðèñ-2f

 

 

VMLAB nazorat panelida  (Control Panel)  16-ta tugmacha mavjud bo‘lib, xar bir raqam 16 sanoq tizimidagi nomeriga ega.

 

LED diode (svetodiodni boshqarish).Svetodiodni boshqarish – vizual  komponent bo‘lib, ularning soni  8 va ularning xar biri o‘z nomeriga ega  D1 to  D8.

 

 

LCD komponentini  kontroller JKI turi HD44780 firma Hitachi boshqaradiQator va belgilar kombinatsiyasi : 8x1, 8x2, 16x1, 16x2, 16x4, 20x1, 20x2, 20x4, 24x2 va 40x2.

 

 

“Scope” – ossillograf oynasi ,loyixa apparat vositalari kuchlanish  epyurlarini ko‘rsatadi. 

 

Scope-2

 

 

 

16-17- 18- MAVZU. MIKROKONTROLLERLAR UCHUN DASTUR YARATISHDA ASOSIY VOSITALAR VA SOZLASH VOSITALARI. (ASSEMBLER).RAQAMLI QURILMALAR ISH JARAYONI UCHUN DASTURIY TA’MINOT YARATISH VA ULARNI SOZLASH.(C). TEXNOLOGIK JARAYONLARNI AVTOMATIK BOSHQARISH DASTURIY TA’MINOTINI YARATISH VOSITALARI VA ULARNI SOZLASH.(C)

 

PIC Simulator IDE – bu Microchip kompaniyasi tomonidan microPIC 12 va 16 seriyadagi mikrokontrollerlar uchun yozilgan dasturlar sozlovchisidir. Bu dastur shuningdek ishlab chiqaruvchiga bevosita sozlanuvchi kodda virtual periferiya bilan ishlash imkonini beradi: SK (suyuq kristalli) simvolli ekranli, 7 segmetli indicator, aloqa terminali, 4 kanalli generator, ostsillograf va boshqa qurilmalardan iborat. Qariyib butun sozlash jarayoni va dasturlarni yozish jarayonini PIC Simulator IDE da bajarish mumkin, ya’ni dasturga biror bir o’zgartirishlar kiritish, MK ni dasturlashirish va uni biriktirilgan tashqi qurilmalar bilan birgalikda sozlash platasiga ulashning hojati yo’q. Shu boisdan, PIC Simulator IDE MK uchun yozilgan dasturlarning yozilish va sozlanishi jarayonini jadallashtiradi. PIC Simulator IDE o’rnatilgan assembler va batafsil til uchun Basicc kompilyayoriga ega bo’lib, bu uskuna MK uchun yoziladigan dasturlarni yozish jarayonini tezlashtiradi va umuman boshqa uskunalar bilan ishlash vaqtini kamaytiradi. PIC Simulator IDE da ko’p sonli va ko’p imkoniyatli sozlashlar va ish rejimlari mavjud bo’lib, bu foydalanuvchiga mustaqil ravishda MK uchun dasturlarni sozlashning optimal rejimini beradi.

PIC Simulator IDE ning shu kabi barcha imkoniyatlari uni boshlovchi va tajribali dasturchilar uchun a’lo darajadagi instrumentga aylantiradi.

 

¹1. PIC «PIC Simulator IDE» arxitekturali mikrokontrollerlarning strukturasi va funktsiyalanish printsiplari

 

Microchip Technology firmasi tomonidan ishlab chiqarilayotgan PIC16FXX integral mikrosxemalar oilasi o’zida RISC arxitekturali sakkiz razryadli mikrokontrollerlardan iborat. Bu mikroprotsessorlar oilasi past energiya sarfi, komandalarni bajarish tezligi, past narhi bilan boshqalardan ajraladi. Mikrokontrollerlar o’rnatilgan PZU laddan tuzilgan bo’lib, ular OZU ma’lumotlari va energiyaga bog’liq bo’lgan dasturlarni saqlash uchun mo’ljallangan. Ushbu oilaning eng oddiy vakillaridan biri bu PIC16F84 mikrokontrolleridir. KOntroller KMOP texnologiyasi bo’yicha tuzilgan bo’lib, ichki 1Kx14 bit electron qayta dasturlovchi PZU (EEPROM) dan iboratdir, bu qurilma bajarilayotgan dastur va 64 baytli energiyaga bog’liq OZU ma’lumotlarining saqlanishi uchun mo’ljallangan. Kontoller bajaradigan komandalar, kengligi 14 bit ikki soz’dan iborat bo’ladi va bir cikl davomida bajariladi (400 ns. Sinxronlashning 10 MgH chastotasida), bunda uzatish boshqaruvining komandalari ikki ciklda bajariladi. Ciklning davomiyligi taktli chastotaning to’rtta ciklidan tashkil topadi. Kontroller 0 dan 10 MgH chastotali diapazonda ishlash qobiliyatini saqlab qoladi. Kontroller 4 manbadan uzilishni ta’minlaydi va ularning sakkiz darajali apparat oqimini ta’minlaydi. 8 bitli taymer/schetchik va 8 bitli dasturlanuvchi boshlang’ich ajratuvchiga ega. Periferik qurilmalarni ulash uchun (datchik, klaviatura, ijrochi mexanizmlar) uchun kontrollerning 13 ta liniyasi bor, ularning har biri dastur jihatidan axborotni kiritish va chiqarishga sozlangan. Bu liniyalarning yuqori quvvar qobiliyati (20mA) bo’lib, bu kirish va chiqish drayverlarining sxemali realizatsiyasini osonlashtiradi.  Qurilmalarning ishlab chiqaruvchilari bunday kontrollerlarning asosida assembler yordamida tutib turiladi, bundan tashqari dasturlovchi va dasturli simulyator (PIC Simulator IDE) bilan tutib turiladi, bu esa o’z navbatida dasturlar asozlanishini alamga oshirish va kontrollerning portlariga ulangan tashqi qurilmalarning olib borilishini modellashtiradi. 

pic1

Rasm 1 Mikrokontrollerning funktsional sxemasi

 

1-rasmdagi sxemada quyidagi ko’rsatgichlar keltirilgan: OSC1  va OSC2 bo’yicha chiqish nuqtalari kvartsli rezonatorning yoki RC-zanjir, yoki taktli impulslar generatorining ulanishi uchun mo’ljallangan/ RA0-RA4 chiqishlari PORT A ning razryadlarini hosil qiladi. TOSK1 ham taymer/schetchikning kirish nuqtasi kabi ishlatilishi mumkin. RB0-RB7 chiqish nuqtalari B PORT B ning razryadlari hisoblanadiINT- tashqi ulanishning kirishi.  RB4, RB5 signalning o’zgarishigacha ulanish kirishi or’nida ishlatilishi mumkin. RB6 - signalning o’zgarishigacha ulanish kirishi or’nida ishlatilishi mumkin yoki kontrollerning dasturlanishida taktli signalning kirishi or’nida ishlatilishi mumkin. RB7 – signalning o’zgarishi bo’yicha uzatishning kirish nuqtasi yoki ma’lumotlarni dasturlash vaqtidagi signal/ MCLR – tashlash signalining kirishi yoki dasturlash vaqtidagi kuchlanish. VDD – energiya manbasining musbat chiqishi. GND -  umuniy chiqish.

PIC Simulator IDE – kuchli ilova bo’lib, PIC ishlab chiqaruvchilarini Windows uchun grafik atrof muhitning integratsiyalshgan simulyator (emulyator), Basic kompilyator, assembler, disassembler and sozlovchi bilan oson ishlatilishini ta’minlaydi. PIC Simulator IDE hozirda quyidagi mikrokontrollerda iborat Microchip PICmicro 12F va 16F gacha bo’lgan mahsulotlar nomenklaturalari: 12F629, 12F635, 12F675, 12F683, 16F627, 16F627A, 16F628, 16F628A, 16F630, 16F631, 16F636, 16F639, 16F648A, 16F676, 16F677, 16F684, 16F685, 16F687, 16F688, 16F689, 16F690, 16F72, 16F73, 16F74, 16F76, 16F77, 16F737, 16F747, 16F767, 16F777, 16F83, 16F84, 16F84A, 16F87, 16F88, 16F818, 16F819, 16F870, 16F871, 16F872, 16F873, 16F873A, 16F874, 16F874A, 16F876, 16F876A, 16F877, 16F877A, 16F882, 16F883, 16F884, 16F886, 16F887, 16F913, 16F914, 16F916, 16F917, 16F946

PIC Simulator IDE – MicroPIC mikrokontrollerlari uchun yozilgan dasturlas sozlovchisi bo’lib, uning seriyasi 12 va 16 Microchip kompaniyasiga tegishli. Dastur ishlab chiqaruvchiga bevosita sozlanayotgan dasturda virtual periferiya bilan ishlash imkonini beradi va sozlash jarayoni va dasturlarni yozish jarayoni esa PIC Simulator IDE da barajish imkonini beradi.

 

PIC Simulator IDE v6.65

 

Rasm 2.  PIC Simulator IDE ning atrofi

Bu dastur (2- rasm) shuningdek, ishlab chiqaruvchiga bevosita sozlanuvchi kodda virtual periferiya bilan ishlash imkonini beradi: SK (suyuq kristalli) simvolli ekranli, 7 segmetli indicator, aloqa terminali, 4 kanalli generator, ostsillograf va boshqa qurilmalardan iborat. Qariyib butun sozlash jarayoni va dasturlarni yozish jarayonini PIC Simulator IDE da bajarish mumkin, ya’ni dasturga biror bir o’zgartirishlar kiritish, MK ni dasturlashirish va uni biriktirilgan tashqi qurilmalar bilan birgalikda sozlash platasiga ulashning hojati yo’q. Shu boisdan, PIC Simulator IDE MK uchun yozilgan dasturlarning yozilish va sozlanishi jarayonini jadallashtiradi. PIC Simulator IDE o’rnatilgan assembler va batafsil til uchun Basicc kompilyayoriga ega bo’lib, bu uskuna MK uchun yoziladigan dasturlarni yozish jarayonini tezlashtiradi va umuman boshqa uskunalar bilan ishlash vaqtini kamaytiradi. PIC Simulator IDE da ko’p sonli va ko’p imkoniyatli sozlashlar va ish rejimlari mavjud bo’lib, bu foydalanuvchiga mustaqil ravishda MK uchun dasturlarni sozlashning optimal rejimini beradi. PIC Simulator IDE ning shu kabi barcha imkoniyatlari uni boshlovchi va tajribali dasturchilar uchun a’lo darajadagi instrumentga aylantiradi.

 

¹2 «PIC Simulator IDE» komandalari tizimini o’rganish

 

Mnemoniklar mashina kodiga bevosita o’tuvchi mnemonic ko’rsatgichlardan iborat. Asselmblerli instruksiyalarning mnemoniklari, assembler direktivalari va makrochaqiruvlari minimum 2 bo’limda boshlanishi kerak. Agar huddi o’sha liniyada belgi bo’lsa u ikki nuqta yoki ikkita bo’sliq yoki bo’lmasa javval bilan ushbu belgidan ajratilishi shart.

 

Arifmetik va mantiqiy instruksiyalar

Mnemonika

Operanda

Tasviri

Operasiya

Bayroq

Cikl

ADD 

Rd,Rr 

Otkazishsiz umumlashtirish

Rd = Rd + Rr 

Z,C,N,V,H,S 

1

ADC

Rd,Rr

Otkazishli umumlashtirish

Rd = Rd + Rr + C

Z,C,N,V,H,S

1

SUB

Rd,Rr

Otkazishsiz  hisoblash

Rd = Rd - Rr

Z,C,N,V,H,S

1

SUBI

Rd,K8

Konstantani hisoblash

Rd = Rd - K8

Z,C,N,V,H,S

1

SBC

Rd,Rr

Otkazishli hisoblash

Rd = Rd - Rr - C

Z,C,N,V,H,S

1

SBCI

Rd,K8

Otkazishli konstantani hisoblash

Rd = Rd - K8 - C

Z,C,N,V,H,S

1

AND

Rd,Rr

Mantiqiy I

Rd = Rd · Rr

Z,N,V,S 

1

ANDI

Rd,K8

Konstantali mantiqiy I

Rd = Rd · K8

Z,N,V,S

1

OR

Rd,Rr

Mantiqiy ILI

Rd = Rd V Rr

Z,N,V,S

1

ORI

Rd,K8

Konstantali mantiqiy ILI

Rd = Rd V K8

Z,N,V,S

1

EOR

Rd,Rr

Mantiqiy chiqaruvchi ILI

Rd = Rd EOR Rr

Z,N,V,S

1

COM

Rd

Pobit invertsiyasi

Rd = $FF - Rd

Z,C,N,V,S

1

NEG

Rd

Belgining o’zgarishi (qo’shimcha kod)

Rd = $00 - Rd

Z,C,N,V,H,S

1

SBR

Rd,K8

Registrda bit ni ornatish

Rd = Rd V K8

Z,C,N,V,S

1

CBR

Rd,K8

Registrda bitlarni olib tashlash

Rd = Rd · ($FF - K8)

Z,C,N,V,S

1

INC

Rd

Registr belgisini inkrementasiyasi

Rd = Rd + 1

Z,N,V,S

1

DEC

Rd

Registr belgisini diskrementasiyasi

Rd = Rd -1

Z,N,V,S

1

TST

Rd

Nol yoki manfiylikka tekshirish

Rd = Rd · Rd

Z,C,N,V,S

1

CLR

Rd

Registrni tozalash

Rd = 0

Z,C,N,V,S

1

SER

Rd

Registrni ornatish

Rd = $FF

None

1

ADIW

Rdl,K6

Konstanta va sozni kiritish

Rdh:Rdl = Rdh:Rdl + K6 

Z,C,N,V,S

2

SBIW

Rdl,K6

So’zdan konstantani olib tashlash

Rdh:Rdl = Rdh:Rdl - K 6

Z,C,N,V,S

2

MUL

Rd,Rr

Belgisiz sonlarni kopaytirish

R1:R0 = Rd * Rr

Z,C

2

MULS

Rd,Rr

Belgili sonlarni kopaytirish

R1:R0 = Rd * Rr

Z,C

2

MULSU

Rd,Rr

Belgili son va belgisiz sonni ko’paytirish

R1:R0 = Rd * Rr

Z,C

2

FMUL

Rd,Rr

Belgisiz kasrli sonlarni kopaytirish

R1:R0 = (Rd * Rr) << 1

Z,C

2

FMULS

Rd,Rr

Belgili sonlarni kopaytirish

R1:R0 = (Rd *Rr) << 1

Z,C

2

FMULSU

Rd,Rr

Belgili kasr son va belgisiz sonni ko’paytirish

R1:R0 = (Rd * Rr) << 1

Z,C

2

 

Bo’linish instruksiyalari

 

Mnemonika

Operanda

Tasviri

Operasiya

Bayroq

Cikl

RJMP

k

Nisbiy o’tish

PC = PC + k +1

None

2

IJMP

Net

(Z) ga bilsovita o’tish

PC = Z

None

2

EIJMP

Net

(Z) ga bilvosita kengaygan o’tish

STACK = PC+1, PC(15:0) = Z, PC(21:16) = EIND

None

2

JMP

k

O’tish

PC = k

None

3

RCALL

k

Dasturchaning nisbiy chaqiruvi

STACK = PC+1, PC = PC + k + 1

None

3/4*

ICALL

Net

(Z) ning bilvosita chariruvi

STACK = PC+1, PC = Z 

None

3/4*

EICALL

Net

 (Z) ning bilvosita kengaygan chaqiruvi

STACK = PC+1, PC(15:0) = Z, PC(21:16) =EIND

None

4*

CALL

k

Dasturchaning chaqiruvi

STACK = PC+2, PC = k

None

4/5*

RET

Net

Dasturchadan qaytish

PC = STACK

None

4/5*

RETI

Net

Uzilishdan qaytish

PC = STACK

I

4/5*

CPSE

Rd,Rr

Teng bo’lsa solishtirish va o’tkazish 

if (Rd ==Rr) PC = PC 2 or 3

None

1/2/3

CP

Rd,Rr

Slishtirish

Rd -Rr

Z,C,N,V,H,S

1

CPC

Rd,Rr

Otishli solishtirish

Rd - Rr - C

Z,C,N,V,H,S

1

CPI

Rd,K8

Konstanta bilan solishtirish

Rd - K

Z,C,N,V,H,S

1

SBRC

Rr,b

O’tkazish agar registrdagi bit toza bo’lsa

if(Rr(b)==0) PC = PC + 2 or 3

Yo’q

1/2/3

SBRS

Rr,b

O’tkazish agar registrdagi bit o’rnatilgan bo’lsa

if(Rr(b)==1) PC = PC + 2 or 3

Yo’q

1/2/3

SBIC

P,b

O’tkazish agar portdagi bit toza bo’lsa

if(I/O(P,b)==0) PC = PC + 2 or 3

Yo’q

1/2/3

SBIS

P,b

O’tkazish agar portdagi bit o’rnatilgan bo’lsa

if(I/O(P,b)==1) PC = PC + 2 or 3

Yo’q

1/2/3

BRBC

s,k

O’tish agar SREG dagi bayroq toza bo’lsa

if(SREG(s)==0) PC = PC + k + 1

Yo’q

1/2

BRBS

s,k

O’tish agar SREG dagi bayroq o’rnatilgan  bo’lsa

if(SREG(s)==1) PC = PC + k + 1

Yo’q

1/2

BREQ

k

Otish agar teng bolsa

if(Z==1) PC = PC + k + 1

Yo’q

1/2

BRNE

k

Otish agar teng bolmasa

if(Z==0) PC = PC + k + 1

Yo’q

1/2

BRCS

k

O’tish agar o’tkazish o’rnatilgan bo’lsa

if(C==1) PC = PC + k + 1

Yo’q

1/2

BRCC

k

O’tish agar o’tkazish toza bo’lsa

if(C==0) PC = PC + k + 1

Yo’q

1/2

BRSH

k

O’tish agar tegn yoki yuqori bo’lsa

if(C==0) PC = PC + k + 1

Yo’q

1/2

BRLO

k

Kam bolsa otish

if(C==1) PC = PC + k + 1

Yo’q

1/2

BRMI

k

Minus bolsa otish

if(N==1) PC = PC + k + 1

Yo’q

1/2

BRPL

k

Plyus bo’lsa o’tish

if(N==0) PC = PC + k + 1

Yo’q

1/2

BRGE

k

Yuqori yoki teng bo’lsa o’tish (belgili)

if(S==0) PC = PC + k + 1

Yo’q

1/2

BRLT

k

Past bo’lsa o’tish (belgili)

if(S==1) PC = PC + k + 1

Yo’q

1/2

BRHS

k

Agar ichki o’tishnig bayrog’i o’rnatilgan bo’lsa

if(H==1) PC = PC + k + 1

Yo’q

1/2

BRHC

k

Agar ichki o’tishnig bayrog’ toza bo’lsa

if(H==0) PC = PC + k + 1

Yo’q

1/2

BRTS

k

O’tish agar T bayrogi o’rnatilgan bo’lsa

if(T==1) PC = PC + k + 1

Yo’q

1/2

BRTC

k

O’tish agar T bayrogi toza bo’lsa

if(T==0) PC = PC + k + 1

Yo’q

1/2

BRVS

k

O’tish agar to’ldiriosh bayrogi o’rnatilgan bo’lsa

if(V==1) PC = PC + k + 1

Yo’q

1/2

BRVC

k

O’tish agar to’ldiriosh bayrogi toza bo’lsa

if(V==0) PC = PC + k + 1

Yo’q

1/2

BRIE

k

O’tish agar uzishlarlarga ruhsat bo’lsa

if(I==1) PC = PC + k + 1

Yo’q

1/2

BRID

k

O’tish agar uzishlarlar man qilingan bo’lsa

if(I==0) PC = PC + k + 1

Yo’q

1/2

 Ma’lumotlarga operatsion kirish uchun cikllar soni ma’lumotlarning ichki hotirasiga kirish sharti bilan ko’rsatiladi, va tashqi OZU bilan ishlaganda korrekt bo’lmaydi. CALL, ICALL, EICALL, RCALL, RET va RETI instruksiyalari uchun uchta cikl plyus ikkita ciklni 16 bitli PC kontrollerlariga qoshish kerak (128KB dasturlar hotirasi). Hotirasi 128 KB dan ortiq bolgan dasturlar uchun beshta cikl va yana har bir kutish uchun uchta cikl qoshing.

Malumotlarnig uzatish instruktsiyalari .

 

Mnemonika

Operandû

Opisanie

Operatsiya

Flagi

Siklû

MOV

Rd,Rr

Registrga nusxalash

Rd = Rr

Yo’q

1

MOVW

Rd,Rr

Registerlar juftini nusxalash

Rd+1:Rd = Rr+1:Rr, r,d even

Yo’q

1

LDI

Rd,K8

Konstantani yuklash

Rd = K

Yo’q

1

LDS

Rd,k

To’gri yuklash

Rd = (k)

Yo’q

2*

LD

Rd,X

Bilvosita yuklash

Rd = (X)

Yo’q

2*

LD

Rd,X+

Post-inkrementli bilvosita yuklash

Rd = (X), X=X+1

Yo’q

2*

LD

Rd,-X

Pre-dekrementli bilvosita yuklash

X=X-1, Rd = (X)

Yo’q

2*

LD

Rd,Y

Bilvosita yuklash

Rd = (Y)

Yo’q

2*

LD

Rd,Y+

Post-inkrementli bilvosita yuklash

Rd = (Y), Y=Y+1

Yo’q

2*

LD

Rd,-Y

Pre-dekrementli bilvosita yuklash

Y=Y-1, Rd = (Y)

Yo’q

2*

LDD

Rd,Y+q

Egallashli bilvosita yuklash

Rd = (Y+q)

Yo’q

2*

LD

Rd,Z

Bilvosita yuklash

Rd = (Z)

Yo’q

2*

LD

Rd,Z+

Post-inkrementli bilvosita yuklash

Rd = (Z), Z=Z+1

Yo’q

2*

LD

Rd,-Z

Pre-dekrementli bilvosita yuklash

Z=Z-1, Rd = (Z)

Yo’q

2*

LDD

Rd,Z+q

Egallashli bilvosita yuklash

Rd = (Z+q)

Yo’q

2*

STS

k,Rr

To’g’ri saqlash

(k) = Rr

Yo’q

2*

ST

X,Rr

Bilvosita saqlash

(X) = Rr

Yo’q

2*

ST

X+,Rr

Post-inkremetnli bilvosita saqlash

(X) = Rr, X=X+1

Yo’q

2*

ST

-X,Rr

Pre-dekrementli bilvosita saqlash

X=X-1, (X)=Rr

Yo’q

2*

ST

Y,Rr

Bilvosita saqlash

(Y) = Rr

Yo’q

2*

ST

Y+,Rr

Post-inkremetnli bilvosita saqlash

(Y) = Rr, Y=Y+1

Yo’q

2

ST

-Y,Rr

Pre-dekremetnli bilvosita saqlash

Y=Y-1, (Y) = Rr

Yo’q

2

ST

Y+q,Rr

Egallashli bilvosita saqlash

(Y+q) = Rr

Yo’q

2

ST

Z,Rr

Bilvosita saqlash

(Z) = Rr

Yo’q

2

ST

Z+,Rr

Post-inkremetnli bilvosita saqlash

(Z) = Rr, Z=Z+1

Yo’q

2

ST

-Z,Rr

Pre-dekrementli bilvosita saqlash

Z=Z-1, (Z) = Rr

Yo’q

2

ST

Z+q,Rr

Egallashli bilvosita saqlash

(Z+q) = Rr

Yo’q

2

LPM

Net

Dasturli hotiradan yuklash

R0 = (Z)

Yo’q

3

LPM

Rd,Z

Dasturli hotiradan yuklash

Rd = (Z)

Yo’q

3

LPM

Rd,Z+

Post-inkrementli dasturli hotiradan yuklash

Rd = (Z), Z=Z+1

Yo’q

3

ELPM

Net

Dasturli hotiradan kengaygan yuklash

R0 = (RAMPZ:Z)

Yo’q

3

ELPM

Rd,Z

Dasturli hotiradan kengaygan yuklash

Rd = (RAMPZ:Z)

Yo’q

3

ELPM

Rd,Z+

Post-inkrementli dasturli hotiradan kengaygan yuklash

Rd = (RAMPZ:Z), Z = Z+1

Yo’q

3

SPM

Yo’q

Dasturli hotiradan saqlash

(Z) = R1:R0

Yo’q

-

ESPM

Yo’q

Dasturli hotiradan kengaygan saqlash

(RAMPZ:Z) = R1:R0

Yo’q

-

IN

Rd,P

Portni o’qish

Rd = P

Yo’q

1

OUT

P,Rr

Portga saqlash

P = Rr

Yo’q

1

PUSH

Rr

Registrga malumotlarni kiritish

STACK = Rr

Yo’q

2

POP

Rd

Registrdan malumotlarnig chiqarish

Rd = STACK

Yo’q

2

Ma’lumotlarga operatsion kirish uchun cikllar soni ma’lumotlarning ichki hotirasiga kirish sharti bilan ko’rsatiladi, va tashqi OZU bilan ishlaganda korrekt bo’lmaydi. LD, ST, LDD, STD, LDS, STS, PUSH va POP instruksiyalari uchun bitta ciklni qo’shish kerak.

Bitlar bilan ishlash instruktsiyalari

 

Mnemonika

Operanda

Tasviri

Operatsiya

Bayroq

Cikl

LSL

Rd

Chapga mantiqiy burilish

Rd(n+1)=Rd(n), Rd(0)=0, C=Rd(7)

Z,C,N,V,H,S

1

LSR

Rd

O’ngga mantiqiy burilish

Rd(n)=Rd(n+1), Rd(7)=0, C=Rd(0)

Z,C,N,V,S

1

ROL

Rd

C orqali ciklli chap tomonga burilish

Rd(0)=C, Rd(n+1)=Rd(n), C=Rd(7)

Z,C,N,V,H,S

1

ROR

Rd

C orqali ciklli o’ng tomonga burilish

Rd(7)=C, Rd(n)=Rd(n+1), C=Rd(0)

Z,C,N,V,S

1

ASR

Rd

Ong tarafga arifmetik burilish

Rd(n)=Rd(n+1), n=0,...,6

Z,C,N,V,S

1

SWAP

Rd

Tetradlarning qayta joylashtirish Perestanovka tetrad

Rd(3..0) = Rd(7..4), Rd(7..4) = Rd(3..0)

Yo’q

1

BSET 

s

Bayroqni or’natish

SREG(s) = 1

SREG(s)

1

BCLR

s

Bayroqni tozalash

SREG(s) = 0

SREG(s)

1

SBI

P,b

Portda bitni o’rnatish

I/O(P,b) = 1

Yo’q

2

CBI

P,b

Portdagi bit ni tozalash

I/O(P,b) = 0

Yo’q

2

BST

Rr,b

Registrdan T ga bit ni ko’chirish

T = Rr(b)

T

1

BLD

Rd,b

T dan registrga bit ni yuklash

Rd(b) = T

Yo’q

1

SEC

Yo’q

Kochish bayrogini ornatish

C =1

C

1

CLC

Yo’q

Kochish bayrogini tozalash

C = 0

C

1

SEN

Yo’q

Manfiy raqamli bayroqni o’rnatish

N = 1

N

1

CLN

Yo’q

Manfiy raqamli bayroqni tozalash

N = 0

N

1

SEZ

Yo’q

Noldan bayroqni o’rnatish

Z = 1

Z

1

CLZ

Yo’q

Bayroqni noldan tozalash

Z = 0

Z

1

SEI

Yo’q

Uzilishlar bayrogini ornatish

I = 1

I

1

CLI

Yo’q

Uzilishlar bayrogini tozalash

I = 0

I

1

SES

Yo’q

Sonli belgili bayroqni ornatish

S = 1

S

1

CLN

Yo’q

Sonli belgili bayroqni tozalash

S = 0

S

1

SEV

Yo’q

Toldirish bayrogini ornatish

V = 1

V

1

CLV

Yo’q

Toldirish bayrogini tozalash

V = 0

V

1

SET

Yo’q

T bayrogini o’rnatish

T = 1

T

1

CLT

Yo’q

T bayrogini tozalash

T = 0

T

1

SEH

Yo’q

Ichki kochish bayrogini ornatish

H = 1

H

1

CLH

Yo’q

Ichki kochish bayrogini tozalash

H = 0

H

1

NOP

Yo’q

Operatsiya yo’q

Yo’q

Yo’q

1

SLEEP

Yo’q

Uhlash (energiya sarfini kamaytirish)

Instruktsiya tasvirini ko’ring

Yo’q

1

WDR

Yo’q

Qoriqlash taymerini orqaga burish

Instruktsiya tasvirini ko’ring

Yo’q

1

  Assembler simvollar registrini ajratmaydi.

Operandalar quyidagi turlarda bo’lishi mumkin:

Rd: Rezul’tativ (va boshlang’ich) registr – register faylida
Rr: Registrlash faylidagi boshlang’ich registr
b: Konstanta (3 bit), konstantali ibora bo’lishi mumkin
s: Konstanta (3 bit), konstantali ibora bo’lishi mumkin
P: Konstanta (5-6 bit), konstantali ibora bo’lishi mumkin
K6; Konstanta (6 bit), konstantali ibora bo’lishi mumkin
K8: Konstanta (8 bit), konstantali ibora bo’lishi mumkin
k: Konstanta (hajmi instruksiyaga bog’liq), konstantali ibora bo’lishi mumkin
q: Konstanta (6 bit), konstantali ibora bo’lishi mumkin
Rdl:  R24, R26, R28, R30. ADIW va SBIW instruksiyalari uchun 
X,Y,Z: Bilvosita adresatsiya registrlari (X=R27:R26, Y=R29:R28, Z=R31:R30)

Assembler direktivalari (yo’nalishlari)

 

Kompilyatorda bir qator direktivalar (yo’nalishlar) bor. Ular kodga bevisota tartibda translyasiyalanmaydi. Buning o’rniga ular dasturli hotirada holatni ko’rsatish uchun, makroslarni aniqlash, hotirani boshlash uchun qo’llaniladi/ Direktivalar ro’yhati quyidagi jadvalda keltirilgan.

 

Direktiva

Tasvir

BYTE

OZUga baytlarni saqlash

CSEG

Dasturli segment

DB

Flesh yoki EEPROM baytlarni aniqlash

DEF

Registrga simvolik nom berish

DEVICE

Dastur kompilyasilanadigan qurilmani belgilash

DSEG

Ma’lumotlar segmenti

DW

Flesh yoki EEPROM soz’larni aniqlash

ENDM, ENDMACRO

Makros ohiri

EQU

Doimiy tasvirni o’rnatish

ESEG

EEPROM segmenti

EXIT

Fayldan chiqish

INCLUDE

Boshqa fayli qoldirish

LIST

Listing generatsiyasini yoqish

LISTMAC

Listingdagi makroslarning aylanishing yoqish

MACRO

Makros boshi

NOLIST

Listing generatsiyasini yoqish

ORG

Segmentda joylashishni ornatish

SET

Iboraning simvolik ozgaruvchan ekvivalentini

Barcha buyruqlar nuqta bilan boshlanadi.

Operatorlar:

Kompilyatorda jadvalda sanab keltirilgan bir qator operatorlar mavjud. (jadvaldagi holatlar yuqori bo’lgani sari, operator imtiyozi shunchalik oshaveradi). Iboralar aylana qavsga olinadi, bu iboralar boshqa iboralardan oldin qavsgacha qo’yiladi.

Imtiyoz

Simvol

Tasviri

14

!

Mantiqiy rad etish

14

~

Pobitli rad etish

14

-

Minus

13

*

Ko’paytirish

13

/

Bo’lish

12

+

Summalash

12

-

Hisoblash

11

<<

Chapga burish

11

>>

O’ngga burish

10

<

dan kam

10

<=

Kam yoki teng

10

>

dan ko’p

10

>=

Ko’p yoki teng

9

==

Teng

9

!=

To’g’ri mas

8

&

Pobitli I

7

^

Pobitli ajratuvchi ILI

6

|

Pobitli ILIL

5

&&

Mantiqiy I

4

||

Mantiqiy ILI

 

 

 

 

¹ 3. Uzishni yaratish uchun RB0/INT ning chiqishini ishlatish

Bu dastur RB0/INT ning chiqish nuqtasini uzilishni yaratish uchun ishlatiladi, bunda PORT AS ning ko’rsatgichlarini o’zgartirish uchun. rb0int.asm fayli generasiyalashtiriladi, bunda Basic o’rnatma kompillyatori ishlatiladi. rb0int.hex fayli o’rnatma assemblernig qo’shgan holda generasiyalashtirilgan.

TRISA = 0x00  PORT A ning barcha quyi qismlarini chiqish o’rnida ishlatadi
PORTA = 0xff  'PORT A ning barcha quyi qismlarini yuqori holatga keltiradi
INTCON.INTE = 1   RB0/INT ning uzilishini yoqadi
INTCON.GIE = 1  ' End ning hamma uzilishlarini yoqadi
 On Interrupt uzilish dasturchasi
PORTA = PORTA - 1  'PORT A ga decrement ko’rsatgichi
INTCON.INTF = 0    RB0/INT ning takroriy uzilishini o’z ichiga oladi

 

1-qadam. PIC Simulator ni ishga tushirish

 

 

 

2-qadam. OptionsSelect Microcontroller ni bosish.

 

 

3-qadam. FileLoad Program ni bosish.

 

 

4-qadam. FileLoad Program ni bosish.

 

T tugmasini bosish, RB0/INT nig pastki qismi bilan bog’liq bu tizim ushbu chiqishning mantiqiy holatinig yoqadi. Uzilishlar impulslarning oldingi frontida chaqiriladi. PORT A  ning ko’rsatgichi o’zgarib boraveradi.

 
Modellashtirishni istalgan vaqtda to’htatilishi mumni, bunda SimulationStop ni bosing. 7- segmentli parallel ulanishli displeyda 0 dan 99 gacha raqamlarni aks ettirish.

Bu dastur 7- segmentli parallel ulanishli 0 dan 99 gacha raqamlarni aks ettiradi  va ikkita boshqaruvchi liniyadan iborat bo’ladi, bunda multiplekatsiya jarayoni TMR0 qo’llaniladi.

 

1-qadam. Mikrokontrollerni tanlash.

 

 

 

2-qadam. Tools 7-Segment LED Displays Panel ni bosing. Bu 7-segmentli 4-displeyli oyna ochiladi.

 

 

3-qadam. Displey yonidagi tillarangli maydonni bosing, bular ushbu displayni yoqish/ochirish uchun belgiga ishlatiladigan chiqish nuqtasini belgilash imkonini beradi.

 

4-qadam. Vvesti 4, chtobû vûbrat PORTC i zatem najat na OK.

- 0 ni  kiritish, bunda RC0 chiqishini tanlang va OK ni bosing.
- 1-displey tagidagi Set up tugmasini bosing.
- Displey yonidagi tillarangli maydonni bosing, bular ushbu displayni yoqish/o’chirish uchun belgiga ishlatiladigan chiqish nuqtasini belgilash imkonini beradi.
- 4 ni kiriting, PORT C ni tanlash uchun, keyin OK ni bosing.
- 1 ni kiritish, RC 1 dan chiqish uchun, keyin OK ni bosing.
- Hide set up ni bosing, bunda ma’lum ekran maydoni hotirada saqlanadi.
- Yaxshi tasvirni ko’rish uchun oynalarni yana ekranda o’rnating.
- Rate ultimate modellashtirish tugmasinig tanlang RateUltimate (No Refresh).
 SimulationStart ni bosing. Modellashtirish boshlanadi.


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

                       IV. AMALIY MAShG‘ULOT MATERIALLARI

1- Amaliy mashG‘ulot

ma’lumotlarga ketma-ket va parallel ishlov beruvchi Arifmetik – mantiQiy Qurilma sintezi

Ishdan  maqsad:  Summatorlar EHM arifmetik–mantiqiy qurilmalari (AMQ) va mikroprotsessorlarni  (MP) qurishning asosiy tamoyillarini o‘rganish, ularni yig‘ish muammolari, summator va AMQ larni ekspremental tadqiqot qilish.

Qisqacha nazariy ma’lumotlar

EHMning ma’lumotlarga amallar yordamida ishlov berish qismi protsessor deb ataladi. Protsessor apparat vositasi bo‘lib, ular buyruqlarga va ma’lumotlarga ishlov berish uchun mo‘ljallangan. Protsessor o‘z ichiga AMQni, amallarni boshqarish blokini va buyruqlarni boshqarish blokini oladi. Amallarni boshqarish bloki amallar kodini ketma-ket elektr signallariga aylantiradi. Buyruqlarni boshqarish bloki esa, buyruqlar majmuasini boshqaradi. AMQ ikkilik sanoq tizimida arifmetik va mantiqiy amallarni bajarish uchun mo‘ljallangan. Bunday ikkilik sanoq tizimi operendlar deb atalib, ular o‘zgarmas vergul va suzuvchi vergul shaklida yozilishi mumkin. Bundan tashqari ularga o‘nlik sonlar, buyruqlar va ayrim uning maydonlari, mantiqiy kodlar, alfavit raqam maydonlari kirishi mumkin. AMQda bajariladigan amallarni quyidagi guruxlarga bo‘lish mumkin:

-   O‘zgaruvchan va o‘zgarmas vergulli ikkilik sanoq tizimidagi amallar;

-   O‘nlik arifmetik amallar;

-   Ko‘rsatkichli – arifmetik amallar (buyruq adreslari ustida amallar)

-   Mantiqiy maydonlar ustida amallar;

-   Alfavit–raqam maydonlari ustida amallar.

AMQning funksional sxemasini oddiy amallar misolida ko‘ramiz. Ular, o‘zgarmas va suzuvchi vergulli mantiqiy kodlar ustida amallardir. Ikkilik sanoq sonlarni qo‘shish misolida AMQ strukturasini tushuntirish oson bo‘ladi. Masalan, 00111 va 01101 sonlarni qo‘shish kerak bo‘lsin.

Birinchi son    00111

+

Ikkinchi son   01101

Surilish           1111

Natija            10100

Qo‘shish amali ketma–ketlikda bajariladi. Ketma-ketlik kichik razryaddan boshlanib, katta razryadni qo‘shish bilan tugaydi. Qo‘shishda surilish ro‘y berishi mumkin, bular keyingi razryadda inobatga olinishi shart. Yuqorida keltirilgan misolda surilish birinchi razryadda ro‘y bergan. O‘z navbatida ikkinchi razryadda ham ro‘y bergan va xokazo. Demak, ikki sonni qo‘shishda summator amalini eng kichik razryaddan boshlaydi va bunda yig‘indi va siljish keyingi razryad uchun xosil bo‘lishi kerak. Qolgan hamma razryadlarni qo‘shishda oldingi razryaddagi siljish hisobga olinishi  kerak. i – razryaddagi (i=0, n-1) qo‘shish amalini bajarishda, n razryadli sonlarni qo‘shishda uch kirishli va 2 chiqishli kombinatsion sxema qo‘llanilishi mumkin: 1-jadvalda  olinishi mumkin bo‘lgan signal qiymatlari bir razryadli summator kirishida va unga mos chiqishdagi signallar qiymati, ya’ni yig‘indi (Si) va siljish (Ri) keltirilgan.

 

1-jadval

Kirish                                                  Chiqish

Ai                 bi                  Pi+1            Pi               Ci

0                                          0                   0                 0                 0

1                  0                    0                0                  1

0                  1                    0                0                  1

0                  0                    1                0                  1

1                  1                    0                1                  0

0                  1                    1                1                  0

1                  0                    1                1                  0

1                  1                    1                1                  1

 

Yuqoridagi jadval bo‘yicha AMQ funksiyasini  quyidagicha ko‘rinishda yozamiz:

 

                          Si=Pi+1(aibiVaibi)VPi+1(aibi V aibi)                                    (1)

 

                          Pi+1(ai bi V aib i) V Pi+1(aibi V ai bi)=Pi+1+ (ai+bi)               (2)

 


                ai     ai        bi       bi       Pi+1   Pi+1

&

1

 

&

 

Ci

 

 

 

&

 

 

 

 

 

 

&

1

 

&

 

Pi

&

 

 

 

 

 

 

 

 

 

 

 

1-rasm. Bir razryadli summatornining sxemasi

(1)      va (2)  funksiyalar asosida 2-rasmda bir razryadli summator uchun

sxema keltirilgan.

 

ai

bi

==1

 

=1

 
Ci

Ïîäïèñü: 1Pi+1

 

 

 

 

 


2-rasm. Bir razryadli summatornining sxemasi

 

Bir razryadli summator asosida (1 va 2-rasm)  n- razryaddan sonlar uchun summator qurish mumkin.

 

                  a0  b0         a1   b1                                                an-2  bn-2          an-1  bn-1

 

 


P0                  P1               P2                              P n-2                      Pn-1                  Pn

 

 

 


                 Co               C1                                                      Cn-2                 Cn-2

 

3-rasm. Paralel n-razryadli summator sxemasi

 

3-rasmda paralel n-razryadli summator sxemasi keltirilgan. Uni qurish uchun n ta summator kerak bo‘ladi. Si chiqishlari (i=0,n-1) yig‘indi amallarini hosil qiladi. Siljish signallarning chiqishi keyingi razryadning siljish kirishiga ulangan. 3-rasmda keltirilgan sxema bo‘yicha siljishlar ketma–ketlikda amalga oshiriladi. Bu sxemada qo‘shish  amalini bajarish vaqti quyidagicha aniqlanadi.

 

t å = tc+(n-1)tp    (3)

 

bu yerda tc – summatorning bir razryadida qo‘shish amalini bajarish vaqti ;

tp – signalning bir razryadda hosil bo‘lish vaqti;

Yig‘indining hosil bo‘lish vaqtini tezlashtirish uchun (3) tenglamaning ikkinchi xadini kichiklashtirish kerak. Bu ish maxsus generator–sxemasi yordamida amalga oshirish mumkin. Quyida Ri qiymatini aniqlash formulasi keltirilgan.

 

                                Ri=aibiV(ai+bi)Ri+1                                             (4)

 

Quyidagi o‘zgartirish kiritib  aibi=gi ; ai+bi=qi, Ri ni aniqlash formulasini o‘zgartirilgan xolini yozamiz.

 

                                     Ri=gi Vqipi+1                                                                                (5)

 

Bunday o‘zgartirishlarning maqsadi shunday bulevo–funksiyalarni qurib, ular yordamida har bir razryadda parallel ravishda siljish signallarini xosil qilish va bunga javob beruvchi sxemani qurishdan iboratdir.

4-razryadli summator uchun funksiyalar tizimi quyidagi ko‘rinishda bo‘ladi.

 

                                     P3=g3Vq3P4                                                                                   (6)

 

            P2=g2Vq2P3=g2Vq2(g3Vq3P4)=g2Vg3q2Vq2q3P4                                    (7)

 

                 P1=g1Vq1P2=g1Vq1g2Vq1q 2g3Vq1q2q3P4                                             (8)

 

                   P0=g0 Vq0g1 Vq0q1q2g3 Vq0q1q2q3P4                                                    (9)

 

4-rasmda.4 razryadli parallel summatorning tezkor siljish hosil qiluvchi sxemasi keltirilgan. U (7) formula asosda qurilgan.

Tezkor siljishli n-razryadli summatorda amalni bajarish vaqti quyidagicha aniqlanadi.

                                           t å = tc+tp                                                                                (10)

 

bunday summatorda qurilmaning xajmi razryadlar soni oshishi bilan keskin oshadi. Shuning uchun amaliyotda ketma–ket va tezkor siljishning majmuasi qo‘llaniladi. Ya’ni hamma n-razryadlar r-razryadli  guruxlarga bo‘linib, gurux ichida tezkor siljish, gruppalararo ketma-ket siljish qo‘llaniladi.

Paralel n-razryadli summatordan  foydalanib, ayrim arifmetik amallarni, ya’ni  qo‘shish, ayirish, biror sonni 1ga orttirish qurilmasini tuzish mumkin.

1

 

&

 
P4

P3

=1

 

&

 
a3

b3                                        S3

Ïîäïèñü: =1
 

 

 


q3

 

 

&

 
a2

b2

&

 
q2

=1

 

=1

 
S2

 


=1

 

&

 
P

 


q2

 


&

 
a1

&

 
b1

=1

 
q1

=1

 
S1

 

 

 

 


q1

a0

 


=1

 

&

 
b0                                                         q0

=1

 
So

 

 

 


&

 
q0

 

 

 

 

 

 


4-rasm.4 razryadli parallel summatorda tezkor siljish hosil qilish sxemasi

 

Arifmetik amallarni bajarish

Ayirish  amalini bajarilishini  ko‘rib chiqamiz.Uni qo‘llash  uchun  ikki yo‘l bor – summator kabi ayiruvchi  sxemasini qurish, ikkinchi yo‘l sonlarni maxsus formaga keltirib summatordan foydalanish. Ko‘pgina EHMlarda  ikkinchi yo‘l qo‘llaniladi. Bunday amalda qo‘llanilayotgan sonlar teskari va qo‘shimcha kodlarga o‘zgartiriladi. Sonni teskari kodga o‘tkazish uchun, xar bir razryadni inversiya qilinadi. Masalan, 0100 soni teskari kodda quyidagicha bo‘ladi: 10011. Ikkilik sonni qo‘shimcha kodga aylantirish uchun, teskari kodga aylantirilgan sonning kichik razryadiga 1 qo‘shiladi.

10011+00001=10100

Bu xolda ayirish amalini bajarish uchun ayiruvchini teskari yoki qo‘shimcha kodga keltiramiz. Masalan, 10011 dan 01010 sonini ayirish kerak bo‘lsin. Oddiy xolda bu amal quyidagicha bajariladi:

10011

-

01010

01001

Agar, ayiruvchini teskari va qo‘shimcha kod xolda yozsak yuqoridagi amalni quyidagicha bajarsa bo‘ladi.

10011                        10011

+                                 +

10101                        10110

1¬01000                   1¬01001

 

00001

01001

 

Shunday qilib, teskari kodni ishlatish yuqori razryadda siljigan 1 ni yuqori razryaddan quyi razryadga o‘tkazish kerak va bu xolda qo‘shimcha kodni topishga xojat qolmaydi. Bunda yuqori razryadda sodir bulgan siljish inobatga olinmaydi. Bularni bajarish uchun summator kirishini (Si) qo‘shimcha mantiqiy elementlar bilan bog‘lash kerak. Ular yordamida bi ni to‘g‘ri xolda yoki invers xolda kiritish mumkin. Kichik razryadli 1 ni qo‘shish summator kirishiga R0 signalini berish bilan amalga oshiriladi. Quyida (5-rasmga qarang) bi kodini to‘g‘ri va inversiya xolda beruvchi sxemasi keltirilgan.

 

1

 
          bi

 

 

 


                                                                     Si

         &

 
                     S0

 

 

 

 

 

 

 

 


                                                   bi

5-rasm. Summatorni kirishi

 

5-rasm. Summatorni kirishi uchun (Si) qo‘shimcha mantiqiy elementlar ulanishi

Har bir razryadda bunday sxemaning bo‘lishi, summatorning faqat qo‘shish, ayirish emas, balki boshqa bir qancha amallarni bajarishi imkoniyatini yaratadi. Yuqorida aytilgan gaplarni tushuntiruvchi sxemalar 6-rasmlarda keltirilgan. Bu rasmlardagi  1-sxema qo‘shish amalini bajaradi va bu xol uchun S0, S1ning qiymatlari berilgan (6a-rasmga qarang). Ayirish amalini bajaruvchi sxema 6b-rasmda berilgan.

 


            A        V                                                             A        B

Ñóììàòîð

 
P

Ñóììàòîð

 
0                             Pn=0(S2=0)                               P0                       Pn=1(S2=1)

 


C      S0=0

S    S0=1                                                                         S1=1

S=A+V     S1=0                                              C=A+B+1=A-B

                                    a)                                                                       b)

 


             A         V                                                           A          B

Ñóììàòîð

 

Ñóììàòîð

 
P0                              Pn=1(S2=1)                     P0                              Pn=0(S2=0)

 


S  S0=0                                                           C      S0=0

S1=0                                                                    S1=1

C =A+B+1                                                       C=A+B=A-B-1

                                   v)                                                                          g)

 

 

                   A     1                                                            A      0

Ñóììàòîð

 

Ñóììàòîð

 
P0                                   Pn=0(S2=0)                   P0                             Pn=0(S2=0)

 


C        S0=1                                                   C          S0=0

C=A-1           S1=1                                          C=A             S1=0

 

                                    d)                                                                         ye)

 


                   A      1                                                           A      0

R0                                     Rn=1(S2=1)                 P0                           Pn=1(S2=1)

 

 


C        S0=1                                                 C         S0=0

C=A           S1=1                                     C=A+1            S1=0

 

                                   j)                                                                         z)

 

6-rasm. Summatorda bajariladigan amallar

 

Mantiqiy amallarni bajarish

Arifmetik amallardan tashqari EHMning ma’lumotlarni qayta ishlash blokida mantiqiy amallarni ham bajarish mumkin. Mantiqiy amallar kodlar ustida razryadlar bo‘yicha bajariladi va bu ko‘p xollarda AMQ elementlari majmuasiga juda ham bog‘lik. Quyidagi 8-rasmda AMQ  i-razryadining to‘rt mantiqiy amal bajaruvchi sxemasi keltirilgan. Bular quyidagi amallar: I, ILI, ILI-NE va NE. Bajariladigan amalning tanlanishishi S0 va S1 boshqarish signallari yordamida amalga oshiriladi.

 


1

 
ai

bi

 

 

 

 

 

 


1

 
                                                                                                                             fi

 


S0

 


S1

 

 

 

 

 

 

a)

S0     S1

Chiqish signal fi

Amal nomi

0 0

1 0

0 1

1 1

fi=aivbi

fi=ai+bi

fi=ai/\bi

fi=ai

ILI-NE

ILI

I

NE

b)

 

7-rasm. Mantiqiy amallar bajarilishi

 

Mantiqiy elementlar soni va ularni tanlash mashinaning mantiqiy amallar bo‘yicha ro‘yxatida amalga oshiriladi. Mavjud sxemalarni birlashtirish, ya’ni arifmetik va mantiqiy amallarni birgalikda bajarish quyidagi 8-rasmda keltirilgan sxema bo‘yicha amalga oshiriladi. Bu yerda amallarni tanlash – S0, S1 va M signallari yordamida bajariladi. Summatorning (S), i-razryaddagi chiqish va mantiqiy amallarni bajaruvchi sxemaning f i chiqishi multipleksor (MS) yordamida birlashtiriladi. M kirish bo‘lsa amalning xilini, ya’ni 0-bo‘lsa – arifmetik, 1-bo‘lsa mantiqiy amalligini belgilaydi.

 

Pi+1 SM

                     S

A

 

                    Pi 

B   

 

          MS

0

 

 

 

 

 

 

 

 

1

 

 

Yo

 
Pi+1

Si                                                                                                                                             Ci

ai

 

 


bi

S0                                                                                                                             fi

S1

Ìàíòèқèé àìàë

áàæàðèø áëîêè

 
 


         

 

 


                           M

                                                                                             Pi

 

 

8-rasm. Arifmetik va mantiqiy amallarni birgalikda bajarish sxemasi

 

Ammo ayrim amallarni bajarishda AMQ elementlarini qo‘llash, faqat ba’zi xolatlardagina o‘zini oqlashi mumkin. Ko‘p xollarda yaxlit tuzilgan bitta kombinatsion sxemagina xar bir razryad uchun barcha amallarni bajarishga mo‘ljallangan bo‘ladi. Agar amallarni bajarishga sarflanadigan vaqt xal qiluvchi bo‘lmasa, u xolda dasturlash yo‘li bilan amallar bajariladi . Bu xolda murakkab buyruk (buyruq), oddiy amallar ketma-ketligidan iborat bo‘ladi. Bunga yaqqol  misol qilib ko‘paytirish amalini ketma-ket qo‘shishlar amali yordamida bajarilishini keltirish mumkin. Masalan, 0111 ni 1010 ga ko‘paytirish kerak bo‘lsin. Quyida keltirilgan ko‘p sonli qo‘shishlar va ko‘paytiriluvchi razryadlarni siljitishlar ko‘paytirish amalini bajarishga olib keladi. Ya’ni bu xolda ko‘paytirish amalini bajarish uchun EHM amalar ro‘yxatida qo‘shish va siljitish amalllari bo‘lishi yetarlidir. Summatorning mantiqiy amallarni bajarishga yaqqol misolini «ILI–NE» amalini bajarishda razryadga qo‘shimcha «o‘tishni» yo‘q qilish kifoya. Buning uchun to‘g‘ridan to‘g‘ri o‘tish zanjirida (8-rasm) «I» sxemasini o‘rnatish va uning bir kirishiga oldingi razryaddan  o‘tish signalini, ikkinchisiga esa S2 signalni ulash lozim. U xolda S2=1 da summator faqat arifmetik amalni, S2=0 da «ILI-NE» mantiqiy amalni bajaradi. Xuddi shu summatorda ko‘paytirish amalini bajarish uchun quyidagilarni bajarish lozim.

                                               S2=0    da

                         Ci=ai+bi=(ai+ki)+bi=ai*bi/ki*bi/ai*ki*bi                                           (11)

                                              ki=bi  xolda

                                      Ci=aibi/bibi/aibibi=aibi                                                                  (12)

Shunday qilib, summatorning ai kirishiga “ILI” va “I” elementlarini o‘z ichiga oluvchi kombinatsion sxema qo‘llab, “I” amalini bajaruvchi AMQ xosil qilish mumkin. Bu sxemaga agar biz “I” sxemasini ham qo‘shsak, qo‘shimcha “ILI” amalini ham bajarish mumkin. 9-rasmda ikki razryadli AMQ ning bir kancha arifmetik va mantiqiy amallarini bajaruvchi kombinatsion sxemasining qismi keltirilgan. 2-jadvalda esa, S0, S1, S2, S3 boshqaruv signallarning qiymatlari va AMQ bajarishi mumkin bo‘lgan amallar keltirilgan.

 

AMQ qo‘shimcha registri

Ba’zi xolllarda arifmetik amallarni bajarishda natijani yakuniy registrga joylashtirishni iloji bo‘lmaydi. Masalan, bunday xollar qo‘shish va ko‘paytirishda yaqqol ko‘rinishi mumkin. Buni boshqa so‘z bilan aytganda razryad setkasini to‘lishi deb izoxlanadi.

Ko‘p xollarda bajarilgan amal natijasi S registriga yozilgan «0» qiymatdan kattaligiga, ya’ni S – registrning bita bo‘lsa ham razryadida 1 borligiga bog‘lik. Bunday xollarda natijani vaqtinchalik saqlash uchun AMQda bir necha trigerlar qo‘llaniladi. Ular o‘z navbatida qo‘shimcha registrni xosil qiladilar. Amaliyotda hamma arifmetik va mantiqiy amallar qo‘shimcha qiymatlarni xosil qiladi.

9-rasmda qo‘shimcha registrli sakkiz razryadli AMQning sxemasi keltirilgan.

                                                                            2-jadval

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Bayroq  registri

                                                                                 A/8                   B/8

 

ÀÌÊ  êîìáèíàöèîí

ñõåìàñè

 
                        Z                    W

                                                                                                                      S0

T

 

C        D

 

 

  Ò

 

 Ñ     D

 
                                                                                                                      S1    bosh.

Chiqish.

 

 


P0

       1

 
 


                amal

               tugashishi

 

 

 

 


                                                                                S0                              S7

                                                                                         Natija

 

9-rasm. Qo‘shimcha registrli sakkiz razryadli AMQ ning sxemasi

 

Registrning qo‘shimcha trigerlari Z va W bilan belgilanib quyidagi vazifalarni bajaradi.

W- yo‘q razryadga o‘tish sodir bo‘lsa “1” qiymatni qabul qiladi (R0=1-razryad setkaning to‘lishi);

Z – agar S ning kirishidagi natija hamma razryadda “0” bo‘lsa, “1” qiymatni qabul qiladi.

 

AMQ  sintezi

Yuqorida ko‘rib chiqilgan kombinatsion sxemalar  asosida EHMning AMQsini qurish mumkin. AMQ sintezi bir necha bosqichdan iborat. Bular, funksional sxemalarni qurish, kombinatsion sxemalarga qo‘yiladigan talablarni izoxlash, AMQning kombinatsion avtomatlarini sintezi, operatsion registrlarni sintez qilish va boshqalar.

AMQning funksional sxemasini qurishda ishni unga qo‘yilayotgan asosiy talablarni shakllantirish bilan boshlash zarur. Bu esa o‘z navbatida loyixalashtirayotgan AMQning asosiy xarakteristikalarini yoritib beradi.

Har bir razryad qiymatini qayta ishlashiga qarab AMQ ikki turga bo‘linadi; bular ketma-ket va paralel AMQlar. Ketma-ket AMQlarda natija har bir razryaddagi son bir razryadli kombinatsion sxemada qayta ishlanadi. Bunday AMQning funksional sxemasi 10-rasmda keltirilgan.

 

 

 

Malumotlar shinasi           ShD                                                                            n

                                                                                                                             

        / n                                                                /n

 

 

 

 

 

 

 


ShS

T

 

D      C

 
o‘ngga     .           ai     bi

A            B Pi+1

                                            C                Pi     

 
siljitish                                          Pi+1

T2n

 

 

 

 


                                Ci

 

 

 

 

 


                                                               / n

 

 


10-rasm. Ketma-ket va paralel AMQ

 

AMQda amallarni bajarish A va V registrlarni axborot joylashtirish bilan boshlanadiyu, birinchi parametr ma’lumoti (operend) n-razryadli ma’lumotlar shinasidan (MSh) A registriga yoziladi, ikkinchisi  esa V registriga  yoziladi. S – registri  esa, ma’lumotni qabul qilish, saqlash va natijani qabul qilish uchun mo‘ljallangan. Uchchala registr ham bitta impuls S ning kirishiga qabul qilingandan keyin axborotni bir razryad o‘ngga suradi. AMQ kombinatsion sxemasi A, V va Ri kirishlariga ikkilik sanoq tizimidagi  ma’lumotlarni qayta ishlash uchun  mo‘ljallangan.

Ma’lumotlarga ishlov berish qoidasi Si signali yordamida aniqlanadi. T2n – trigeri arifmetik amallarda o‘tish signalini saqlash uchun qo‘llaniladi. Ketma–ket AMQlar (10–rasm) minimal apparat xarajatlarini talab qilgan xolda, n–razryadli sonlarga ishlov berishda n- ta takt talab etadi. A, V registrlar sifatida oddiy registrlar qo‘llaniladi, odatda ular  D–trigerlar bazasida quriladi. Ammo bu xolda ularning chiqishida n–kirishli multipleksorlar chiqishini A va V kombinatsion sxemaning kirishi bilan bog‘lash kerak.

Agar, AMQning asosiy xarakteristikasi sifatida amallarni bajarish tezligi asosni tashkil etsa, u xolda paralel AMQlardan foydalanish kerak. Bunday AMQlarda amallarni bajarish vaqti n-marotaba kamayadi. Quyidagi 11-rasmda n-razryadli paralel tipdagi AMQ keltirilgan.

 

MSh

n                                                                 n                      n

 

 


0......i......n-1                                             0.......i.....n-1

 

 

 


S

S0-Sk-1

ÊÑ

(n-1) ðàçð.

 

ÊÑ

0 ðàçð.

 

ÊÑ

I ðàçð.

 
P0              P1          Pi               Pi+1          Pn-1                  P0

 


Stock

S0                           Si

Cn-1

0..i....................n-1

         Áàéðîê ðåãèñòð

 
 

 


n

 


11-rasm. n-razryadli paralel tipdagi AMQ

 

Keyingi bosqichda AMQning kombinatsion sxemasini i-razryadini sintezini amalga oshirish kerak. Ish amallar ro‘yxatini tuzish va analizdan boshlanishi kerak. Bunda arifmetik va mantiqiy amallarni ajratish va xar bir guruxda bajarilishi mumkin bo‘lgan amallarni bajarilishini aniqlash zarur. Agar amallar soni ko‘pchilikni tashkil qilsa, u xolda kombinatsion sxemani    i-razryadini ikki qismga, ya’ni arifmetik va mantiqiy qismlarga bo‘lish maqsadga muvofiqdir. Xuddi shunday sxema 11-rasmda keltirilgan. Agar, mantiqiy amallar soni kamchilikni tashkil etsa, 10-rasmda keltirilgan sxemadan foydalanish mumkin. Bu sxemaning asosini summator tashkil qiladi. Sintez qilish masalasining asosini summator kirishida mantiqiy amallarni bajaruvchi elementlar sonini aniqlash tashkil etadi.

Operendlarni, natijalarini saqlash registr yordamida amalga oshiriladi. Trigerlarning xilini tanlash esa registr oldiga quyilgan vazifaga qarab amalga oshiriladi. Agar axborotni faqat saqlash masalasi turgan bo‘lsa, bir kaskadli D–trigerlarni qo‘llash maqsadga muvofikdir. Agar, axborotni o‘ng yoki chap tomonga surish masalasi tursa, u xolda kirishida kombinatsion sxemasi bo‘lgan 2–kaskadli Jk yoki D-trigerlardan foydalaniladi. Endi, konkret misolda AMQni sintezini ko‘rib chiqamiz. Aytaylik, uchinchi jadvalda keltirilgan ro‘yxat bo‘yicha amalar bajaradigan AMQni sintez qilish kerak bo‘lsi

 

                    3-jadval

 

 

 

 

 

 

 

 

 

 

 

 

 


Qo‘shimcha registr qiymatlari:

W – mashinaning razryad setkasi to‘lganda – «1» qiymatni egallaydi;

F – registrning katta razryadi “1” qiymatni egallasa, u ham “1” qiymatni qabul qiladi;

Z – registrning hamma razryadlari “0” bo‘lsa, “1” qiymatni egallaydi;

3-jadvalning oxirgi ustunidagi “+” belgisi, amallarni bajarishda qo‘shimcha registr qiymatlari o‘zgarishi mumkinligini anglatadi. Masalan, to‘rtinchi amalni bajarishda, Z va F xolatlari o‘zgarishi mumkin. Qo‘shimcha registr qiymatlari amal bajarilgandan keyingina qabul qilinadi va  keyingi amal bajarib bo‘linguncha saqlanadi.

AMQni sintez qilishning birinchi bosqichida amallarni bajarish algoritmini yaratish va AMQ  funksional sxemasini tuzish zarur. 3-jadvalda keltirilgan buyruqlar ro‘yxatidan, yuqorida faqatgina ikki buyruqni bajarish keltirilmagan edi. Bular–sonlarni ko‘paytirish va A sonini  bir razryad chapga surish amallaridir.

Ikki sonni bir-biriga  ko‘paytirish  ikki xil usulda bajarilishi mumkin. Bular, ko‘paytuvchilardan foydalangan xolda amalni bajarish va ketma-ket surish, so‘ng qo‘shishdir. Birinchi usul maxsus yaratilgan kombinatsion  sxemalarni talab etadi va  bunda amal bajarilishi uchun ketgan vaqt minimal bo‘ladi. Ikkinchi usul uchun ko‘paytirish amalini bajarishni konkret misolda  ko‘ramiz. Masalan, 10111 va 0110 sonlarni ko‘paytirish kerak bo‘lsin. Ko‘paytirish ko‘payuvchilarning  kichik razryadlarini qarab chiqiùdan boshlanadi. Agar, ko‘paytiruvchi biti “1” bo‘lsa, ko‘payuvchi keyingi qatorga bir razryad chapga surish yo‘li bilan yoziladi, so‘ng hamma sonlar qo‘shilib ko‘paytma  topiladi.

Agar, ko‘paytirish amalini bajarishda paralel AMQlardan foydalanilsa (11-rasm), u xolda AMQ tarkibida qo‘shimcha V-registri bo‘lishi kerak va u xosil bo‘layotgan xususiy yig‘indilarni saqlab turishi kerak.

V-registri undagi eng kichik o‘ng razryadni tekshirishi va kerak bo‘lsa ko‘payuvchini chapga bir razryadga surishi kerak. Buning  uchun A-registrida maxsus chapga bir razryad suruvchi zanjir hisobiga  olinishi lozim.

Bunday AMQlarda  ko‘paytirish amalining  bajarilishi A va V registrlarni ko‘payuvchi va  ko‘paytiruvchilar bilan to‘ldirish, so‘ng  S va V registrlarni tozalash  bilan boshlanadi.

Keyingi etapda V-registrining kichik razryadini tekshirish va u «0» bo‘lsa A dagi sonni bir razryadga chapga surish, «1» bo‘lsa – A va V dagi sonlarni qo‘shib uni

 

yana V ga yozib qo‘yish kerak. Oxirgi bosqichda A– registrdagi sonni chapga bir razryadga surish va V=0 ekanligini tekshirish kerak. Agar u xaqiqatdan ham «0» bo‘lsa, ko‘paytirish amalini to‘xtatish zarur, aksincha «1» bo‘lsa davom ettirish  kerak.

Qolgan amallarni bajarish 6-rasmning a,v,z qismlarida ko‘rsatilgandek amalga oshiriladi. Keltirilgan misoldagi AMQ kombinatsion sxemasining o‘ziga xosligi V-registrida uchinchi kirishning mavjudligidir va uning faqat ko‘paytirish amalini bajarishida ishlatilishidir. Boshqa amallarni bajarishda V-registri ishlatilmaydi.

Mantiqiy amallarni bajarishda 6-rasmda keltirilgan sxemadan foydalanish mumkin. Bunda AMQ kombinatsion sxemaning bitta razryadining funksional sxemasi 5-rasmda keltirilgan sxemadek bo‘ladi.

 

Tekshiruv savollari.

1.EHM kanday asosiy qismlardan tashkil topgan?

2.AMQ kanday funksiyalarni bajaradi?

3.AMQning asosiy amallar guruxini ayting va amallar qo‘llanishiga misollar keltiring.

4.Bir razryadli sonlarda ikkilik summatorining xolat jadvalini keltiring.

5.Ikkilik sonlar uchun 2 va 3 – rasmlardagi sxemalarni foydalangan xolda 4-razryadli summator quring.

6.Qanday maqsad uchun sonlarni razryad bo‘ylab tezkor suruvchi sxema zarur? Bunda vaqtni tejash qanday amalga oshiriladi?

7.Konkret misollarda 5-rasmda keltirilgan amallarni xaqiqatligini isbotlang.

8.9-rasmda keltirilgan sxema bo‘yicha arifmetik va mantiqiy amallar bajarilishini xolat jadvali bo‘yicha tushuntiring.

9.Konkret misollarda 2-jadvalda keltirilgan hamma amallarni bajarilishini 10-rasmda keltirilgan sxema bo‘yicha tushintiring.

10.Nima maqsadda qo‘shimcha registrlar (flagovûy) kerak.

11.Qo‘shimcha (flagovûy) registrga  sonlar qay tariqa yoziladi? Bunda qanday  signallardan  foydalaniladi va  ular qanday qilib  tashkillashtiriladi?

12.Ketma-ket va paralel AMQlar farqi nimada?

13.Paralel–ketma-ket  AMQ sxemasini keltiring.

14.Ko‘paytirish amalini bajaruvchi o‘z algoritmingizni keltiring. Uni qo‘llash uchun AMQga  qanday qo‘shimcha elementlar kerak bo‘ladi.

15.AMQ sintezining asosiy etaplarini ayting.

16. AMQ (5-rasm) uchun A, V, V’ registrlar sxemasini keltiring.

 

Amaliy ishga  tayyorgarlik

1. Amaliy ishing bayonotini o‘rganish.

2. Amaliy ishining hamma tekshiruv savollariga yozma ravishda javob berish.

3. Berilgan variant bo‘yicha AMQni sintez qilish.

3.1. AMQni funksional sxemasini qurish.

3.11. Amallar bajarilish  algoritmini qurish ;

3.12. Har bir algoritm uchun AMQ funksional sxemasida  zarur bo‘lgan tarmoq va

 

 

elementlarni ko‘rsating;

3.13. Keltirilgan amallar soniga qarab AMQ umumiy funksional sxemasini quring;

3.2.Bitta  i-razryad uchun AMQ funksional sxemasini kombinatsion qismini tuzing;

3.2.1. Arifmetik va mantiqiy amallar qanday bajarilishini aniqlang;

3.2.2.AMQ ning i-razryadida amallar bajarilishi boshqaruv signalini aniqlang;

3.3.AMQ i-razryadining prinsipial sxemasini quring;

3.4.Berilgan razryadlar uchun AMQ kombinatsion sxemasini quring;

3.5.Berilgan razryadlar uchun AMQ registrlari va schetchiklarini sintez qiling.

3.6.AMQning mantiqiy sxemasini quring. Jadvalda boshqaruv signallarining qiymatini keltiring.

3.7.Boshkarish signallarining jadvalda ketma-ketlik shaklida keltiring.

4.AMQni o‘rganish sxemasini yarating.

5.AMQning bitta i-razryadi uchun vaqt diagrammasini quyidagi kodlar uchun keltiring .

 

                                                      4-jadval.

Ri+1

1

1

ai

1

0

bi

1

1

 

 

5-jadval.

 


¹

p/p

AMQ razryadlari

AMQ buyruklari

Operandlar kodlari

A             B

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

2

4

4

2

3

4

2

4

2

3

4

2

3

4

2

3

4

2

3

4

2

3

4

2

3

4

2

3

4

2

A+V,A-1,V+1,A-V,A+V,A

A-1,A-V,A+V,V,V,AVV

A-V,V-1,AVV,A/V

A+V,A-V,V+1,A*V,A↓V,A,V

A+1,A-V-1,A+V,A*V,A

V+1,A-V,A+V,V

A+V,A-V,V-1,AVV,A/V

A-1,A+V-1,A*V,A*V,V

V-1,A+V,A/V,V

A+V,A-V,V+1,A*V,A↓V,A

A+1,A-V+1,A+V,A*V,A

V+1,A-V,A+V,A

A+V,A-V,V-1,AVV,A/V,V

A-1,A+V+1,A*V,AV,V

V-1,A+V,A*V,A

A-V,A+V+1,V+1,A*V,A↓V,A

A+1,A+V-1,A+V,AVV,A

V+1,A-V,A*V,A

A-V,A+V-1,V-1,A V,A/V,V

A-1,A+V-1,A*V,AVV,V

V-1,A+V+1,A*V,V

A-1,A+V+1,V+1,A*V,A↓V,A

A+1,A+V+1,A+V,AVV,A

V+1,A-V-1,A↓V,V

A-V,A+V+1,V-1,AVV,A/V,V

A-1,A+V-1,A*V,A,V,A*V

V-1,A+V+1,A/V,A

A-V,A+V+1,V+1,A*V,A↓V,A

A-1,A+V+1,A+V,A,V,AVV

V+1,A-V+1,A+V,A

10          11

0101     0111

1011     1001

10         01

011       011

1101     1000

01         10

1111     0010

11         10

111       101

0101     0101

01         01

111       011

0111     0110

10         01

011       011

0011     0001

11         01

101       010

0101     0101

10         10

101       110

1010     0101

11         10

111       010

1110     0101

01         01

101       011

0101     0111

10         11

 

 

 

 

 

 

 

 

2 Amaliy mashG‘ulot

ODDIY  DASTURLARNI  YoZISh  VA    BAJARISh

 

Ishdan maqsad: Alohida buyruqlarni va oddiy dasturlarning bajarilishini  tekshirish, turli adresatsiyalash usullarining dasturlashda qo‘llanilishi, dasturlarni yozish.

 

nazariyadan qisqacha ma’lumot

KIS KR580IK80A  mikroprotsessori oldindan qayd qilingan  buyruqlarga ega. Bunday buyruqlar bajarilish vaqti buyruqning olinish jarayoni, kodlash va uning bajarilishi bilan aniqlanadi. Bu vaqtni bir qator vaqtlar oralig‘i orqali ifodalash mumkin. MP KISning sinxrosignallar davriga teng vaqt oralig‘i, shu mashina  ishlash takti deb ataladi. Bir bayt ma’lumotni xotiradan, yoki tashqi qurilmadan, yoki buyrukning bajarilishiga ketgan vaqt bir mashina so‘zi bilan ifodalansa, bu  mashina sikli deb  ataladi. Mashina sikli  MP  KIS  uchun  3-5 mashinali  taktlarni o‘z ichiga olishi mumkin. Bajarilish vaqti buyruq turiga qarab 1-5 mashinali   sikllardan tashkil topishi mumkin. MP  KIS  uchun  10 ta xar xil mashina sikllari bor:

·     buyruq kodini chaqirib olish ( M1  sikl),

·     xotiradan ma’lumotni o‘qish,

·     xotiraga  ma’lumot yozish,

·     stekdan ma’lumotni chaqirib olish,

·     stekka ma’lumot yozish,

·     tashqi qurilmadan  ma’lumotlarni kiritish,

·     tashqi qurilmaga ma’lumot yozish,

·     uzilish sikliga xizmat qilish,

·     to‘xtash,

·     to‘xtash  rejimida uzilishga  xizmat qilish.

M1 sikli xar qanday buyruqni chaqirib  olishda birinchi mashina sikli bo‘ladi. MP KISning  har bir mashina siklida  "Tayyor" xolat signalini o‘zining kirishi orqali tekshiradi. Kirishidagi  nol signali KISning normal ish jarayonini to‘xtatib turib, aynan ko‘rilayotgan mashina sikli shu vaqtda  kichik-EHM o‘z magistrallarida uzatilishi lozim bo‘lgan hamma ma’lumot  qatnashib turadi. Bu esa o‘quv kichik-EHMda buyruqlarning mashina taktlari orqali bajarilishini tekshirish uchun qo‘llaniladi. Bu rejimda ma’lumot kichik-EHM  magistrallarida yorug‘lik diodlari xolatlari bilan ko‘rsatilib turiladi.

Dastur kichik-EHMning  xotira yacheykalarida ketma-ket yoziladi. Misol tariqasida xotira qurilmasining 0V00N  yacheykasidan sonni chaqirib olib, uning miqdorini  bittaga kamaytirib, natijani  0V01N  adresiga yozilishi lozim bo‘lgan oddiy dasturni ko‘rib chiqamiz.

1- dastur  (mnemokodlarda)

 

Mnemokod                               Izox

 

LDA  0B00                 0V00 adresdan sonni olish

DCR  A                       sonni bittaga kamaytirish

STA   0B01                 natijani  0V01 adresga yozish

HLT                            to‘xtash.

 

Dasturni yozishda  hamma sonlar o‘n oltilik  sanoq tizimida beriladi. Dasturni kichik-EHM xotirasiga yozishda mnemokod mashina kodiga aylantirilishi lozim. Dastur buyruqlari bir, ikki yoki uch baytli bo‘lishi va xotiradagi bir, ikki, uch adresni egallashi lozim.

 

 

1-dastur     (xotira adreslariga joylashtirish)

Adres            Kod                    Izox

 

0800               3A              LDA buyruq kodi

0801               00               kichik bayt adresi

0802               0V              katta bayt adresi

0803               3D              DCR A buyruq kodi

0804               32               STA buyruq kodi

0805               01               kichik bayt adresi

0806               0V               katta bayt adresi

0807               76               HLT buyruq kodi

 

Dasturni avval juda ixcham ko‘rinishga keltirish maksadga  muvofikdir. Dasturda har bir buyruqning boshlang‘ich adresi ko‘rsatilgan bo‘lib, bunda bir, ikki, uch baytli buyruq uzunligiga bog‘lik xolatga ketma-ket birdan uchtagacha bo‘lgan xotira yacheykalar egallaydi. Bunday yozilish tartibida chap tomon ustunida faqatgina buyruk adreslari  ko‘rsatiladi. Bu  esa dasturning ta’sir qilish xajmini kamaytiradi, va uni taxlil qilishni juda  ham soddalashtiradi.

1-dastur   (yozuvning umumiy kurinishi)

Adres    Mashina kodi     Mnemokod                     Izox

 

0800       3A 000V        LDA 0B00        0V00 adresdan sonni olish.

0803       3D                  DCR A             Sonni bittaga  kamaytirishga

0804       32 010V         STA 0B01         0V01 adresga yozish.

0807       76                   HLT                  To‘xtash.

 

Bu yerda adresga to‘g‘ridan-to‘g‘ri murojaat etish usuli qo‘llaniladi. Mavxum adreslash  asosida 1-dasturga o‘xshash misol ko‘rib chiqamiz (2-dastur).

 

 

 

2 -  dastur

Adres   Mash.kodi Mnemokod                               Izox

 

0800       21 000V   LXI 0B00      H , L registrlariga 0V00 sonini yozish.

0803       7E            MOV A,M     H , L registrlarida ko‘rsatilgan  sonni

                                                         adresdan olish.

0804       3D            DCR A           Akkumulatordagi sonni bittaga

                                                          kamaytirish.

0805       23             INX H            H,L registrlardagi sonni bittaga

                                                          ko‘paytirish.

0806       77             MOV M,A              H , L  lardagi ko‘rsatilgan adresga 

                                                          akkumulatordagi sonni yozish

0807       76             HLT              To‘xtash.

 

Uyda tayyorlash uchun topshiriqlar

1. Dasturlash  tili va  KR580IK80  MP KIS  buyruqlari tarkibiy tuzilishi bilan tanishing.

2. MP KIS  buyruqlarning ishlash rejimi va bajarilish   vaqt diagrammasini o‘rganib chiqing.

3. Assembler tilida va  KR580IK80  MP KIS  mashina kodlari asosida dasturlash usullarini o‘qib chiqing.

4. INR A (3C), CMA  (2F), ADD A (87), ANA A (A7), ORA A (B7),

CMP A (BF), DAA (27) buyruqlarining bajarilish qoidalarini ko‘rib chiqing. Qavslar ichida buyruqlarning mashina kodlari berilgan.

5. Topshiriqning  4-bandida keltirilgan buyruqlar 1-dasturda 0803 adresga qo‘yish natijasi bilan tekshirib chiqing. 1-dasturda 0803 adres o‘rniga qo‘yilgan xar xil buyruqlar bajarilishi natijalari  6-jadvalga kiritilsin. 0V00 adresga yozilgan son  sizning (gurux jurnaldagi ikki xonali tartib) nomeringizga mos keladi.

6 – jadval

0V00 adresga

yozilgan son

0803 adresga

yozilgan son

0V01 adresga

yozilgan son

 

 

 

 

 

 

6. Dasturni ishlab chiqish

a) 7-jadvalda ko‘rsatilgan adresga yozilgan sonni inversiyalash va natijani 7-jadvalda ko‘rsatilgan (5 ustun)  adresga yozish.

                                                                 

 

 

 

 

 

 

 

 

 

 

 

 

         7 - jadval

Var.

 

1-son adresi

(operand)

1-son

2-son adresi

(operand)

2-son

 

 

3-son adresi

(operand)

3-son

 

 

Natija

adresi

 

01

0806

34

0A11

45

0A45

CD

0BA1

02

080A

56

09CB

6A

0A46

4F

0A10

03

0811

67

0AAA

72

0941

57

0912

04

082A

12

0916

84

0A10

3A

0912

05

082E

1E

0B00

50

0A0A

8E

0914

06

0831

4G‘

0AEC

25

0949

FD

0915

07

0835

78

0A16

59

0999

3F

0A23

08

083A

91

0940

21

0BFF

73

0A45

09

083C

4S

09AC

3V

0AEC

CA

0916

10

084F

03

090A

67

0A7F

9D

0BA2

11

0853

25

0A09

81

0A89

16

0BA3

12

0859

56

0913

04

0AA3

3F

0BA4

13

085B

71

0926

5S

09AA

49

0BA5

14

086C

39

09C3

28

09B6

32

0BA6

15

0863

48

0A60

52

09BB

48

0BA7

16

0860

31

0A5B

49

09CD

6C

0BA8

17

08BE

26

096C

18

09CF

30

0BA9

18

0874

4V

095C

61

0AF4

92

0BAA

19

0877

67

0A6E

58

0A4F

31

0BAB

20

0879

48

0A63

4E

0950

16

0BAC

21

087D

93

0974

18

0959

67

0BAD

22

087F

81

094F

83

0A5B

45

0BAE

23

0889

38

0A79

68

096C

10

0BAF

24

08A3

47

0977

3F

0963

87

0AB0

25

08AA

21

0A7F

CD

0A60

56

0AB1

26

08B6

28

097D

48

096E

47

0AB2

27

08BB

9A

0959

AB

0A74

71

0AB3

28

08CD

67

0ABB

28

0A77

23

0AB4

29

08CF

41

0AB6

FE

0979

5A

0AB5

30

08B4

39

09CD

87

0960

45

0AB6

 

 

8 – jadval

Variant

 

Vazifa

Variant

 

Vazifa

 

1

 

2

 

 

3

 

 

4

 

 

5

 

6

 

 

7

 

8

 

 

9

 

 

10

 

 

 

 

 

 

 

 

 

11

 

 

12

 

 

13

 

 

14

 

 

15

 

 

16

 

 

17

 

18

 

 

 

19

 

 

20

 

 

 

 

 

 

 

 

 

 

 

 

Amaliy   ish uchun topshiriklar

1-topshiriq.   1–dasturni o‘rganish.

Topshiriqni  bajarish tartibi:

1. Kichik-EXMga 1- dasturni joylashtirish ( kirgizish ).

2. Ishlatilishi lozim bulgan sonni 0V90 adresga yozing.

3. 1- Dasturni 0800 adresdan boshlab ishga tushiring.

4.   0V01 adresga yozilgan sonni urganish yo‘li bilan dasturning bajarilish natijasini tekshiring.

5.   Buyruklar bajarilishi jarayonini 1-dasturning mashina sikllari orkali tekshiring. Xar bir buyrukning bajarilishida kichik-EXMda ma’lumotlarning bajarilishi ketma-ketligiga, turlanishiga asosiy e’tiborni karatishingiz lozim. Dasturdagi istalgan bir va uch baytli buyruklarning bajarilish jarayonining vaqt diagrammasini keltirish.

6.   1-dasturdagi DCR buyrukning INR A (3C), CMA (2F), ADD A (87), ANA A           (A7), ORA  A(B7), CMP A (BF), DAA (27)  buyruklariga almashtirib, bu buyruklarning bajarilishini urganish 0VV1 adresga yozilgan son buyicha bulib, natijalarini tekshiring. Uyda bajariladigan topshirik natijalari bilan olingan sonlarni 3 - jadval bilan solishtiring.

2 - topshirik.      2- dasturni  urganish.

Topshirikni bajarish tartibi.

1.   Kichik-EXMga 2-dasturni kirgizing.

2.   0VV0 adresga tekshirilishi  lozim bulgan sonni yozing.

3.   Dasturni 0800 adresdan boshlab ishga tushiring.

4.   0V01 adresga yozilayotgan son orkali dastur bajarilishi natijasini tekshiring.

5.   MOV A, M buyrugini mashina siklida bajarilish jarayonini tekshiring.

3 - topshirik.    3- dasturni urganish.

1.   Uyda ishlab chikilgan 3-dasturni kichik-EXMga kiriting.

2.   Adresga 7-jadval 3-ustunda kursatilgan gurux jurnalidagi uzingizga taallukli  rakamga to‘g‘ri keladigan sonni yozing.

3.   7-jadvalning 5-ustunidagi sonlar bilan berilgan adresdan 3-dasturni ishlatib, natijani tekshiring.

     4 - topshirik      4-dasturni urganish.

1.   Uy sharoitida ishlab chikilgan 4-dasturni kichik-EXMga kiriting.

2.   7-jadvalning 3, 4-operandlari uchun ukituvchidan sonlar olib kursatilgan adresga yozing.

3.   Boshlangich adresga asosan dasturni ishga tushiring.

4.   Natija adresidagi chikkan songa asosan dastur ishini tekshiring.

 

 

 

 

 

 

O‘QUV KICHIK-EHMDA ISHLASH.

 

O‘quv kichik-EHMda amaliy ishlarini bajarishda quyidagilar ko‘zda tutilishi kerak:

1.   Tekshirilayotgan dastur xotira yacheykalariga ketma-ket yozish bilan amalga oshiriladi. Adresga sonni yozib olishda "P", " __ " tugmachalar, hamda klaviatura qismidagi raqamli tugmachalardan foydalaniladi.

2.   Dasturni ishga solib  "ST" tugmachani bosish bilan amalga oshiriladi.

3.   Buyruqlar bo‘yicha dasturning bajarilishi "ShG" tugmachani bosish bilan amalga oshirilishi kerak, biroq bundan oldin "RB/ShG" tugmachasi pastgi xolatga o‘tkazilgan bo‘lishi kerak. Bu rejimda yorug‘lik diodlari magistrallarida buyruq kodi, shu adres yacheykasidagi son miqdori (ma’lumoti) va xolatlar registri natijalarining tasviri qurilgan bo‘ladi.

4.   Mashina sikllari bo‘yicha dasturning bajarilishi "RB/ShG", "RG/KS" tugmachalari bosilishi va "ShG" tugmachasi ketma-ket bosilishi bilan amalga oshiriladi. Bunda yorug‘lik diodlarida buyruq adresi kuzatilayotgan adres yacheykasi miqdori, xolatlar registrining har bir razryadi to‘g‘risidagi har bir mashina sikli yaqqol ko‘rinib turadi. "SB" tugmachasini bosish bilan ko‘rilayotgan rejim ishi to‘xtatiladi.

 

HISOBOTNING   MAZMUNI.

Hisobotda quyidagilar qayd qilinishi kerak:

1.   To‘ldirilgan 6-jadval.

2.   1-dasturda har qanday erkin tanlangan bir yoki uch baytli buyruqlarni bajarilish vaqt diagrammalari.

3.   2-dasturdagi MOV A,M buyrug‘ini kichik-EHMda bajarilish vaqt diagrammasi.

4.   Uyda tayyorlanish jarayonida ishlab chiqilgan 3 va 4-dastur.

5.   1, 2, 3, 4–dasturlarni o‘rganish natijalari.

 

O‘z - o‘zini     tekshirish   uchun    savollar

1.   1 va  2 - dasturdagi har bir buyruq necha mashina taktlaridan iborat?

2.   K580 turkumidagi UMT asosida qurilgan adreslash usullarining farqi nimada?

3.   3-dasturni tuzishda qanday adreslash usullaridan foydalanilgan?

4.   1-dasturning qaysi buyruqlari bajarilganda, 4-topshiriqning bajarilishida MP registr razryadidagi o‘zgarishlar ro‘y beradi?

 

 

 

 

 

 

 

3, 4 va 5 – Amaliy mashg‘ulotlar

tarmoqlanuvchi dasturlarni yozish va bajarish

massiv MA’LUMOTLARIda NIqOBLAShni va shartli o‘tishlarni TAShKIL ETISh

 

Ishdan maqsad: shartli o‘tishlar vositasida tarmoqlanuvchi dasturlarni yozish va ma’lumotlarni niqoblashni (maskirovaniya) tashkillashtirish usullarini  o‘rganish.

 

Qisqacha nazariy ma’lumotlar

Kichik-EXMda shartli o‘tishlar MP qismlaridagi  xolatlar  registrlari orqali amalga oshiriladi. Xolatlar registri besh razryaddan iborat bo‘lib, ular MP KISida (Mikroprotsessor katta integral sxemasida) oxirgi buyruq bajarilib  bo‘lgandan  so‘ng  har biri tegishli qoida bilan o‘rnatiladi. Bular quyidagi razryadlardir:

1.  S - CARRY- razryad  setkasining to‘lib ketish alomati. Agar arifmetik yoki siljitish buyruqlari  bajarilish  jarayonida akkumulator razryad to‘lib ketsa,          1 yoziladi, aks xolda esa shu razryadga 0 yoziladi.

2.  S - SIGN - razryad ishorasi. Agar arifmetik yoki mantiqiy buyruqlar  bajarilish  jarayonida  akkumulatordagi  sonning katta, yettinchi razryadiga 1 yozilgan bo‘lsa, son musbat  bo‘ladi va S razryadga 1 yoziladi. Boshqa xollarda S razryadga 0 yoziladi.

3.  Z - ZERO - olingan natijaning nolga tengligi alomati. Agar arifmetik yoki mantiqiy buyruqlar bajarilishi natijasida akkumulatorning hamma razryadlari nolga teng  bo‘lsa, Z razryadga 1 yoziladi, boshqa xollarda razryadga 0 yoziladi.

4.  AC  - AUX CARRY - to‘lib ketganlikni qo‘shimcha aniqlovchi razryad. Agar akkumulatorda buyruq  bajarilish jarayonida 1 uchinchi razryadga ko‘chib o‘tsa, unga       1 yoziladi.

5.  P -  PARITY - juftlik  alomatini  aniqlovchi  razryad. Agar buyruq bajarilishi jarayonida  akkumulator razryadidagi 1 lar soni juft bo‘lsa,  unga             1 yoziladi.

Ko‘pincha dastur ishining bajarilishi jarayonida  akkumulatordagi son razryadlarini tekshirish yoki  o‘zgartirish  (niqoblash) zaruriyati paydo bo‘ladi. Buni quyidagi amallar  orqali amalga oshirish mumkin.

1)  akkumulatordagi son va niqob mantiqiy ko‘paytiriladi. Agar niqobning mos  razryadlariga 0 yozilgan bo‘lsa, bunda razryaddagi son tozalanadi, agarda niqob razryadiga 1 yozilgan bo‘lsa, u hech narsani o‘zgartirmaydi.

1 - misol

ANI,22N  buyrug‘i (22N soni niqob vazifasini bajaradi)

01110011            akkumulatordagi son

00100010            niqob

00100010            akkumulatordagi natija

2 - misol

ANI ,FO              buyrug‘i

01011111            akkumulatordagi son

11110000            niqob

01010000            akkumulatordagi natija

2) akkumulatordagi son va niqob  mantiqiy qo‘shiladi. Agar shu niqob razryadida 1 soni bo‘lsa, bunda 1 soni razryadda o‘rnatiladi, agar shu razryadga 0 soni yozilgan bo‘lsa, u berilgan sonni o‘zgartirmaydi.

3 - misol                                                 4 - misol

ORI,22N                buyrug‘i                            ORI ,FO         buyrug‘i

01110011   akkumulatordagi son                   01011111 akkumulatordagi son

00100010   niqob                                  11110000       niqob

01110011   akkumulatordagi natija      11111111       natija

 

3) akkumulatordagi son va niqob mantiqiy rad etuvchi "yoki" amalini bajaradi. Agar berilgan niqob razryadiga 1 soni yozilgan bo‘lsa, bunda razryad teskarilanadi (inversiyalanadi), agarda bu razryadda 0 soni yozilgan bo‘lsa, u o‘zgarmaydi.

5 - misol                                                  6 - misol

XRI,22N    buyrug‘i                                   XRI ,FO                buyrug‘i

01110011   akkumulatordagi son            01011111    akkumulatordagi son

00100010   niqob                                     11110000    niqob

 


01010001   akkumulatordagi natija      10101111      natija

 

Keltirilgan mantiqiy amallar faqat akkumulator ichidagi sonlardan tashqari MP  KISining qolgan ichki registrlari bilan ham bajarilishi mumkin. Bu xolda buyruqlar bir baytli bo‘ladilar. Barcha mantiqiy amallar bajarilayotganda xolatlar registrning  Z, S, P, AC razryadlari ish xolatida bo‘ladi (S razryadga 0 soni yoziladi). Bu esa ixtiyoriy razryadlarni tekshirish imkonini beradi va dasturlarda shartli o‘tishlarni bajarish mumkin bo‘ladi. Aloxida razryadlarni niqoblash dasturlari (3- dastur) quyida keltirilgan.

3 – dastur. Adres   Mash. kod      Mnemokod                       Izox

0800     3A 00 0A        LDA 0A00        Xotiradan sonni chaqirib olish

0803      E6 F0             ANI  F0             Mantikiy amal bajarish

0805      32 01 0A        STA 0A01        Natijani xotiraga yozib kuyish

0808          76                    HLT             Tuxtash

 

Quyidagi 4- dasturda xotira yacheykasidan olingan sonning nolinchi razryadida 1 borligini aniqlovchi va topilgan bunday sonni xotira yacheykasiga yozib qo‘yuvchi dastur keltirilgan. Dastur sonni niqoblash va shartli o‘tish buyruqlarini ishlatishga asoslanadi.

4 – dastur. Adres   Mash. kod   Belgi  Mnemokod                       Izox

0800     3A 00 0A                LDA 0A00    Xotiradan son olinsin.

0803       47                          MOV B,A    V registrda saqlansin.

0804      Ye6 01                      ANI  01        0 razryadning xolati tekshirilsin.

0806   S2 0A 08                   JZ M1          Agarda 0 nolinchi razryadda bo‘lsa, M1

0809    76                    M2:    HLT               To‘xtash.

080A    78                   M1:    MOV A,B      Son  akkumulatorga kaytarilsin

080V   32 01 SA                    STA  0A01    Xotiraga yozilsin

080E   S3 09 08                      JZ  M2          Dastur tugashiga utilsin.

 

5-dastur. OXK (OZU)dagi 1-massivdan ikkinchi va beshinchi razryadlarida 1 bor  bo‘lgan sonlarni aniqlaydi, so‘ngra  shu sonlardan 2-massivni  xosil qiladi.

Adres   Mash. kod    Belgi   Mnemokod      Izox

 

0800     21 00 0A                    LXI  N,0A00   1-massiv boshlangich adresi

0803     11 20 OA                   LXI  D,0A20   2-massiv boshlangich adresi

0806     06 06                          MVI V,06        Tekshiriladigan sonlar

0808     7E                  M2:      MOV A,M      Xotiradan son o‘qilsin

0809     4F                               MOV C,A       Sondan nusxa ko‘chirilsin.

080A    Ye6  24                         ANI 24H         Niqoblash bajarilsin.

080S    SA 11 08                    JZ M1              Agarda kerakli razryadlarda

                                                                         1 bo‘lsa, unda M1ga o‘tilsin.

080F     79                                MOV  A,C      Topilgan son akkumulatorga

                                                                          qaytarilsin.

0810     12                                STAX D           U xotiraga yozilsin.

0811     13                                INX   D            2-massiv adresi bittaga

                                                                          orttirilsin.

0812     23                   M1:      INX  H             1-massiv adresi bittaga

                                                                          orttirilsin.

0813     05                                DCR B             Tekshirilaetgan sonlarning 

                                                                         miqdori  bittaga kamaytirilsin.

0814  C2 08  08                        JNZ  M2          Agarda hamma tekshirilayotgan

                                                                          sonlar qaralmagan bo‘lsa, unda

                                                                          M2 ga o‘tilsin.

08²7      76                                 HLT                Dastur oxiri.

 

Uyda tayyorlash  uchun topshiriqlar

1.  Mantiqiy va shartli  o‘tish buyruqlarni o‘rganing.

2.  MP  KISining  xolatlar registr razryadlari va ularga 1 sonini

yozish qoidalari bilan tanishing.

3.  3,4,5-dasturlar  bilan  tanishib chiqing.

4.  8-jadvalga asosan o‘z dasturingizni  ishlab chiqing.

 

 

 

 

 

 

 

 

 

 

9-jadval

Variant raqami

Dasturning vazifasi

Massiv uzunligi

01

Adresi 0A01bo‘lgan 1-massivdan adresi 0A39 bo‘lgan               2-massivga barcha juft sonlar o‘zatilsin

10N

02

Adresi 0A13 bo‘lgan 1-massivdan adresi 0963 bo‘lgan                  2-massivga barcha musbat sonlar uzatilsin

08N

 

03

0916  adresi bir massivdan  kichik yarim baytida 1 bo‘lgan barcha sonlar tanlab olinib, ular 0A10 adresli 2-massivga yozilsin.

12D

 

04

0AVS  adresli 1-massiv 09SE adresli 2-massivga qayta ko‘chirilsin. Oxirgi ko‘chirilgan son ishorasi aniqlansin,  agar u  musbat bo‘lsa, uni 0990 yacheykaga  yozib qo‘ying.

14D

 

05

Boshlang‘ich adresi 0901 bo‘lgan 1-massivdan katta ryazryadida 1100 bo‘lgan sonlar aniqlanib, ulardan 09A0 adresli yangi massiv  xosil qiling.

10N

 

06

0910 adresli 1-massivdan barcha juft sonlar yig‘indisini to‘plab ulardan adresi 09E1dan boshlanadigan 2-massiv tashkil qiling. Aniqlangan yig‘indi 0A16 yacheykaga joylansin .

0AN

 

07

0996 adresli 1-massivdan eng kichik son ajratib olinsin va 0A0A adresli yacheykaga yozilsin. Aniqlangan sondagi 1 lar soni hisoblansin, agar hisoblanganda juft son chiqsa, 0A08 adresli  yacheykaga yozib qo‘yilsin.

04N

08

0A12 adresli 1-massivdan barcha toq sonlar tanlab  olinsin  va 09E0 adresli 2-massiv tashkil etilsin.

0EN

 

09

Sakkiz bitli ishorasiz sonlar yig‘indisi aniqlanib 09V0 yacheykaga yozilsin. Aniqlangan yig‘indining juftligi tekshirilsin, agarda u juft son bo‘lsa, 0981 yacheykaga yozib qo‘ying.

 

07N

10

0A49 adresli 1-massivdan  manfiy ishorali sonlar qidirilib ulardan yangi 0A59 adresli 2-massiv tashkil  etilsin .

09N

 

11

0911  adresli 1-massiv sonlar yig‘indisi topilsin.                Aniqlangan yig‘indi muloxaza qilinsin, agar u toq son bo‘lsa 0992 yacheykaga, agar juft son bo‘lsa 0991 yacheykaga joylashtirilsin .

10D

 

12

0920 adresdan boshlanuvchi 1-massivdan 09N operandi                  qidirilsin, agar shu operand bo‘lsa, uning adresi ketma-                  ket 0980 va 0981 yacheykalariga yozilsin, agar bu operand                   yo‘q bo‘lsa , V0 kodi 0906 yacheykaga yozilsin.

16D

 

 

13

0910 adresdan boshlanuvchi 1-massivdan katta razryadida 0011  kodi bor barcha sonlar tanlab olinsin, bu aniqlangan sonlardan adresi  0920 dan boshlanuvchi 2-massiv tashkil qilinib, 0982 yacheykaga shu massiv miqdori yozib qo‘yilsin .

 

10N

 

14

0A44 adresdan boshlanuvchi 1-massivdagi sonlar yacheykasi to‘lib ketguncha qo‘shilsin. So‘ngra qo‘shish amalidagi oxirgi son adresi ketma-ket 0910 va 0911 yacheykalarga yozib qo‘yilsin.

 

09D

15

0A90  adresli 2-massivdan 0A10  adresli 1-massivga yettinchi razryadida  1bo‘lgan sonlar ko‘chirib yozilsin.

10N

 

16

0A98 adresli 2-massiv 0AA0 adresli 1-massivga 0A00                  yacheykaga shu massiv mikdori yozilishi  bilan ko‘chirilsin. So‘ngra 0A00 yacheykadagi sonda nechta 1 borligi aniqlanib, uning miqdori 0A01 yacheykaga yozilsin .

 

06N

17

0A01 adresli 1-massiv 0A00 adresli 2- massivga teskari

tartibda ko‘chirilib yozilsin. Ko‘chirish jarayonida manfiy sonlar yozilmasin.

 

07N

18

0A00 adresli 1-massivdan barcha toq sonlar tanlab olinib, 099A adresli 2-massiv tashkil qilinsin.

08D

 

19

0V00 adresli 2-massivdan beshinchi razryadida  0 bor sonlar tanlab olinib, 0A00 adresli 1-massiv tashkil etilsin. So‘ngra bu tanlangan sonlar soni aniqlansin

10D

20

0A29 adresli 1-massivdan ASCII kodiga (30N kod) mos bo‘lgan hamma sonlardan 0981 adres bilan boshlangan, 2-massiv tashkil qilinsin.

12D

 

21

0A15 adresli 1-massivdan barcha toq sonlar yig‘indisi topilib, 0943 adresli 2-massiv tashkil qilish zarur. Bunda shu 2-massivning oxirgi yacheykasiga aniqlangan yig‘indi mikdori yozilgan bo‘lishi zarurdir.

11D

 

22

0949  adresli 1-massivdan eng katta son topilsin va uning ishorasi tekshirilsin. Agarda u musbat bo‘lsa, u xolda bu son 0906 yacheykaga yozilsin.

07N

 

23

0944 adresli 2-massivni 0A28 adresdan boshlangan                 1-massivdan tashkil qiling. Berilgan ma’lumotlar :

1-massiv uchun X1,X2, ... Xn, 2-massiv uchun  c1=X1, c2=X1+X2,

c3=X1+X2+X3,...va x.k.

0AN

 

24

0991 adresga joylashgan 1-massiv yig‘indisi topilsin, uning ishorasi aniqlansin. Agar ishora manfiy bo‘lsa, uni 0A00 yacheykaga joylang.

04N

 

25

0943 adresli 2-massiv 0A40 adresli 1-massivdagi  son adreslardan tashkil qilinsin.Agar 1-massiv yacheykalar soni  0A dan katta bo‘lsa massiv tashkil qilish to‘xtatilsin.

05N

26

09A1 adresli 1-massivdan kichik uch razryadida 1 bo‘lgan sonlar ajratib olinib 0A09 adresli 2-massiv tashkil etilsin.

11D

27

0AV3 adresli 1-massivning juftligi tekshirilsin va barcha toq sonlardan 0AS0 adresli 2-massiv xosil qilinsin.

09D

 

28

0936 adresli 1-massivdan juft mikdorga teng bo‘lgan sonlar ajratib olinsin va ulardan 0949 adresli 2-massiv xosil qilinsin.

0AN

 

Amaliy ishlarni bajarish uchun topshiriqlar

1-topshiriq.  3-dastur tekshirilsin.

Topshirikning bajarish tartibi.

1.   3-dastur kichik-EHMga kiritilsin

2.   OXK tekshirilishi uchun zarur ma’lumotlar yozilsin.

3.   Dastur ishga tushirilsin.

4.   Dasturning to‘g‘ri bajarilganiga ishonch xosil kilinsin.

2- topshiriq. 4-dastur tekshirilsin.

1. Dastur va ma’lumotlar kiritilsin.

2. Dasturni kadamlab bajarish usuliga uting va dasturni ishga tushiring.

3. UMT  oldi panelidagi yoruglik diodlar yonishini izoxlang va dasturning to‘g‘ri bajarilayotganiga ishonch xosil kiling.

4. Dasturni buyruq rejimida ishlashga uting va yoruglik diodlari orkali

uning bajarilayotganiga ishonch xosil kiling.

5. Tizimni boshlangich xolatga kaytaring.

3- t o p sh i r i k. 5- dastur tekshirilsin.

Topshirikning  bajarish tartibi: 1-topshirik bajarilishiga uxshashdir.

4-t o p sh i r i k. Mustakil tuzilgan dastur ishi tekshirilsin.

Topshirikning bajarish tartibi: 1-topshirik bajarilishiga mosdir

 

Hisobotning     mazmuni

Xisobot kuyidagi:

1.   3, 4, 5 - dasturlardan.

2.   Mustakil bajarilgan 8-dasturdan.

3.   KR580IK80 MPning shartli bajarilish buyruq turlari to‘g‘risidagi to‘liq ma’lumotlardan.

4.   MP  KIS uchun to‘liq bo‘lgan mantiqiy amallar to‘g‘risidagi ma’lumotdan tashkil topgan bo‘lishi zarur.

 

Topshiriqlar va o‘z-o‘zini tekshirish uchun savollar

 

1.   3-dasturda MP KISning qanday buyruqlari ishlatilganda xolatlar registridan foydalanilgan ?

2.   MP KISning xolatlar registriga 1 soni qanday shartlar bajarilganda yoziladi?

3.   MP KISda qanday mantiqiy amal turlari ishlatilgan?

 

 

 

6 – amaliy mashg‘ulot

QISM  DASTUR  VA  STEK

 

Ishdan maqsad : Qism dasturning yozilishi va unga murojaat qilish tamoyillarini tekshirish, dastur tuzishda stekning ishlatilish usullarini o‘rganish.

 

Qisqacha nazariy ma’lumotlar

KR580 seriyasida qurilgan MPQ  xotira elementlari (qurilmasi) 66536 ta bir baytli yacheykalardan tashkil topgan bo‘lishi mumkin. Xotira yacheykalar soni cheklangan bo‘lgani uchun tuzilayotgan dasturlar ham iloji boricha qiska bo‘lishi zarur. Buning uchun tuzilayotgan dasturning ko‘p marta takrorlanadigan qismi yoki shu dasturning o‘zi qism dastur tarzida ifodalanishi mumkin. U buyruqlar ketma-ketligidan tashkil topilgan bo‘lib, uning bajarilishi asosiy dasturning istalgan joyidan chaqirilib istalgancha takrorlanishi mumkin. Qism  dasturga boshqaruvning berilishi jarayoni chaqiruv deb ataladi. Qism dastur bajarilishidan va o‘z ish jarayoni to‘xtashidan hosil bo‘lgan ma’lumot uning chiqish parametri deb ataladi.

Qism  dasturni chaqirish va undan qaytish uchun CALL<A2><A1> va  RET  buyruqlaridan foydalaniladi.   CALL<A2><A1>  buyruqdagi <A2><A1> baytlar MP  KISining  dastur  hisoblagichiga xotira yacheykalarining CALL  (SD) kodidan keyin joylashgan ketma-ket yacheykalardan olib yuklanadi. <A2> bayt qaramog‘idagi ma’lumot dastur hisoblagichining kichik baytiga PCLga yoziladi. Buyruqdagi <A1>ning uchinchi bayti dastur hisoblagichining  katta PCH  baytiga yozilib, bundan MP  KISining stekida qism  dasturning ish jarayoni tugagandan  so‘ng  asosiy dasturga  avtomatik ravishda qaytish  adres saqlanib turiladi.

Stek  - Kichik-EHMdagi berilgan ma’lumot va adreslarni vaqtincha saklash uchun qo‘llaniladigan  OHQdagi maxsus tashkil qilingan qismdir. Stekka  oxirgi yozilgan son birinchi bo‘lib chaqiriladi.

RET qaytarish buyrug‘i  esa qaytish  adresini stekdan chiqarib olib, dastur hisoblagichiga yuklaydi. Keyin esa asosiy dastur ishi shu yuklangan oxirgi adresdan davom ettiriladi. Barcha mavjud qism dasturlar RET buyrug‘i bilan tugashi zarurdir.

Asosiy dastur adresi qism dastur bajarilishi jarayonida avtomatik tarzda saqlanishi va uning qayta tiklanishi qism dasturlarning ichida qo‘shimcha qism dastur kiritish imkoniyatini yaratib, bunda bir qism dasturdan ikkinchisini chaqirish mumkin bo‘ladi. Bunda joylashtirish satxi kichik-EXMning steki xajmi bilan cheklanadi.

Qism dasturlarni chaqirish va undan qaytish uchun yana shartli buyruqlar ham mavjud. Ular qism dasturlarni chaqirish va undan qaytish uchun xolatlar registrining ba’zi bir xolatlaridan foydalaniladi.

 

Qism dasturni chaqirish va undan qaytish buyruqlaridan tashqari stek bilan ma’lumotlar ayrboshlashni PUSH<P> (belgilangan MP KIS registridagi ma’lumotni stekka yozish) va  POP<P> (ma’lumotni stekdan MP KISining belgilangan registriga ko‘chirib yozish) buyruqlari bilan ham amalga oshirish mumkin. Bu buyruqlar bir baytli bo‘lib, ularda MP  KISining juft registrlari ko‘rsatiladi.

Dasturlar  ishlab chiqarilayotganda avval stek chegarasi ko‘rsatilib,                    LXI  SP<A2><A>  yoki  SPHL  buyruqlar orqali SP (stek ko‘rsatgichi) adresiga yozib qo‘yiladi.

Stek bilan bajariladigan amallar teng bo‘lmogi zarur. Boshqacha  aytganda, har bir qism dastur ichida  PUSH<P>  va  POP<P>  buyruqlari teng bo‘lib,  RET buyrug‘i bilan tugashi kerak. Aks xolda RET buyrug‘ining qism dastur oxrida bajarilishi dastur hisoblagichiga stekdan tasodifiy son yozilishiga olib keladi. Bu esa asosiy dasturga qaytish adresining yo‘qolishiga va uning bajarilishining buzilishiga olib keladi.

12-rasmda stek xotirasining ishlash jarayoni tushuntirilgan. Stekka A so‘zi joylashtirilganda  u birinchi bo‘sh  bo‘lgan  xotira yacheykasini egallaydi. Keyingi yozilayotgan so‘z oldingi yozilib turgan so‘zni bitta yuqoriga yacheykaga surib, o‘zi esa shu boshlagan joyni egallaydi va qolgan xollarda ham shu tartibda davom etadi. Sakkiz yacheykali stekka 8 so‘z N  dan keyin yozilishi, stekning  to‘lib ketishiga va A so‘zning yo‘qolishiga olib keladi. Stekdan malumot yozilgan so‘zlarni o‘qish teskari tartibdan yuz beradi, boshqacha qilib aytganda oxirgi yozilgan N so‘zini o‘qishdan boshlanadi. Shuni aytish kerakki, Ye  so‘zini tanlashni   F  so‘zini olmaguncha bajarish mumkin emas.

 

 

 

 

 

 

 

 

A

 

 

 

 

 

 

V

 

 

 

 

 

 

S

 

 

 

 

 

 

D

 

 

 

 

 

 

E

 

 

 

 

A

 

F

 

 

A

 

V

 

H

 

Stek cho‘qqisi.

12 - rasm.    Stek xotirasining  ishlash  jarayoni.

 

13-rasmda  oddiy kutish vaqtini xosil qiluvchi qism  dasturning algoritmi keltirilgan. Umumiy kutish vaqti quyidagi munosabat bilan aniqlanadi:

 

TD = t1 + (t2  +  t3 + t4)N1 +  t5                                                       (13)

 

bu yerda N - hisoblagichga yozilgan birlamchi son.

Hisoblagich sifatida V registr tanlab olingan bo‘lib, unga N1  soni  S  registrdan olib yoziladi.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


                                                                          Yo‘k

                                                          V=0

 

                                                               Ha

 

 

 

13-rasm. Kutish vaqti xosil qiluvchi oddiy qism dasturning algoritmi

 

 

Quyida  DLY  kutish vaqti 3 - qism dasturi keltirilgan.

3 - qism dastur

Adres   Mash. kodi Belgi   Mnemokod                         Izoh

 

0900      41                            MOV B,C  S  registrdan V registrga  son yozilsin.

0901      00                DLY:   NOP           Bush amal

0902      05                            DCR B       V registrdagi son qiymati 1ga 

                                                                 kamaytirilsin

0903      S2 01 09                  JNZ DLY   Agar V registrdagi son 0ga teng

                                                                  bo‘lmasa, DLYga o‘tilsin

0906      S9                            RET            Qaytish

NOP buyrug‘i sikldagi bajarilish vaqtini uzaytirish uchun zarur bo‘lishi bilan birga, u umumiy kutish vaqtini ham ko‘paytiradi. NOP buyrug‘i o‘rniga boshqa buyruqlar ketma-ketligidan ham foydalanish mumkin bo‘lib, faqat olingan buyruqlar mikroprotsessor registrlari ishini o‘zgartirmasligi lozim. N1 sonining V registrga ish va    t1 +  t5  qism dasturdan chiqish vaqtlari aniq bo‘lib, ular sikl vaqti ichiga kirmaydi. Keltirilgan qism dasturdagi minimal  kutish vaqti N1=0.1 aniqlanadi va u

 

Tdmin = t1 + t2 + t3 + t4 + t5  ga  teng

N1=00  bo‘lganda maksimal kutish vaqtiga ega bo‘ladi va u quyidagi munosabat orqali aniqlanadi

Tdmax = t1 + (t2 + t3 + t4)256 + t5                                                 (14)

4-dastur va 3-qism dastur yordamida sakkiz razryadli sonlarni qo‘shishni amalga oshirish mumkin.

4 - dastur

Adres   Mashina kodi   Belgi   Mnemokod                              Izox

0900                                             LXI H,0940          Qo‘shiluvchi sonlarning bosh

0903                                             LXI D,0A10         adreslarini yuklang

0906                                             MVI C,08             Xisoblagichni urnatish

0908                                             PUSH PSW          A registr va xolatlar

                                                                                   qiymatini stekda saklash

0909                                 POP:   CALL SLOG         SLOG kism dasturni

                                                                                   chakirish

090S                                            SUB A                   Akkumulator tozalash

090D                                            DCR O                  Xisoblagichni 1ga

                                                                                   kamaytirish

090E                                            JZ  LOP                 Agar registr S=0 bulsa,  unda

                                                                                   LOP  ga utilsin.

0911                                             INX H                   Keyingi qo‘shiluvchilar juft-

0912                                             INX D                   ligi adreslarini tashkil etish

0913                                             JMP POP              POP 0ga shartsiz utish

0916                                LOP:    POP PSW             A registr va xolatlar kiymati-

                                                                                   ni stekdan chikarish

0917                                              HLT                     Dastur oxiri

5 -  kism dastur

Adres    Mashina kodi    Belgi     Mnemokod                        Izox

096S                                 SLOG:    MOV B,M      Qo‘shiluvchilarni xotiradan V

                                                                                 registrga yuklash.

096D                                                LDAX D         D registridagi sonni chakirish.

096E                                                 ADC B           Kuchirishni xisobga olib qo‘shish.

096F                                                 STAX D         Yigindini ikkinchi qo‘shiluvchi

                                                                                 adresida saklash.

0970                                                 RET                Asosiy dasturga kaytish.

 

Uyda     tayyorlash    uchun    topshiriklar

1.   CALL<A1><A2>  va  RET   buyruqlarining kichik-EXM da bajarilish vaqt diagrammasi urganilsin.

2.   Kism dasturni chakirish va unga  kaytish uchun MP KISlarining shartlari .

3.   4-va 5-kism dasturlarni  ishga tayyorlang.

4.   5-kism dasturining bajarilish vaqtini aniklang.

5.   5 va 10 sekundli  kutish kism dasturlarini tuzing.

 

amaliy ishlarni bajarish uchun topshiriklar

1-topshiriq   3-kism dastur yordamida kutish vaqtini tekshirish

Topshiriqni bajarish tartibi :

1.  Kichik-EHM ga 3-qism dastur kiritilsin .

2. Qism dastur ishga tushirilsin va uning bajarilishi kichik-EXMda qadamlash  rejimida tekshirilsin.

 

2-topshiriq. 4-dastur va 5-qism dastur tekshirilsin

Topshiriqni bajarish tartibi:

1. 4-dastur va 5-qism dastur kichik-EXMga kiritilsin.

2. Boshlangich ma’lumotlar (sakkiz razryadli qo‘shiluvchilar) kiritilsin.

3. 0900 adresdagi dastur ishga tushirilsin.

4. Olingan natija tekshirilsin.

 

H i s o b o t n i n g   m a z m u n i

Hisobotda quyidagilar bo‘lishi kerak:

1. CALL<A1><A2>, RET buyruqlarining vaqt diagrammalari.

2. MP  KIS  KR580 uchun qism dasturni chaqirish va undan qaytish buyruqlari  to‘g‘risida to‘liq ma’lumotlar.

3. 5 va 10 sekundli kutish dasturlarining uyda tayyorlab kelingan nusxasi (hisoblangan vaqtlari bilan).

4. 3, 4, 5-dasturlar.

 

 

7 – Amaliy mashg‘ulot

ARIFMETIK AMALLARNI BAJARISh

 

Ishdan  maksad : Arifmetik amallarni bajarish dasturlarini tekshirish va tashkil kilish usullarini urganish.

 

Qisqacha nazariy ma’lumotlar

Sonlar tasvirlashining belgilangan va siljuvchi nuqtali usulidan birinchisi   MP  KIS  KR580IK80A   kichik-EXMda dasturlash uchun ko‘proq tarqalgan. Bu shu bilan bog‘liqki, MP  KISda  siljuvchi nuqtali sonlar ustida ishlovchi maxsus buyruqlar yo‘k,  o‘z navbatida, belgilangan nuqtali -128dan +127gacha qiymatga ega bo‘lgan ishorali sakkiz razryadli ikkilik sonini belgili ikkilik son ko‘rinishda tasavvur qilish mumkin. Bunda manfiy son qo‘shimcha kodda berilib, oxirgi yettinchi  razryadi son ishorasini aniqlovchi sifatida qo‘llaniladi. Sonning bunday qurilishi arifmetik amallari bo‘lgan bir xil razryadlarni qo‘shishdan xosil bo‘lgan orttirmalarni yuqori razryadga uzatish va ayirishda esa katta qiymatli razryaddan qarz olish xolatlarini bajara olmaydi.

Belgilangan nuqtali sonni 0dan 255gacha qiymatga ega bo‘lgan, ikkilik belgisiz sonlar ko‘rinishi orqali ifodalash mumkin bo‘lib,  MP  KIS KR580IK80A  uchun bu sonlar har bir bayti ikki yarim baytga - ikki tetrada ko‘rinishida aniqlanib, bulardan har birini o‘nlik kod raqamida  BINARY-CODE- DECIMAL  (BCD) ikkilik-o‘nlik ko‘rinishida ifodalash mumkin. Bunday tasvirlashda 1 bayt orqali  0dan  99gacha sonlarni kodlash  mumkin bo‘ladi.

Arifmetik qo‘shish, ayirish, ko‘paytirish, bo‘lish, maxsus funksiyalarni hisoblash amallarini tegishli dastur (qism dastur) misollarida ko‘rib chiqamiz.

6-dastur

Adresi    Mashina kodi Belgi    Mnemokod                    Izox

 

0800         21 00 0V          MAIN:  LXI H,0B00  Birinchi qo‘shiluvchi adresini

                                                                              H ,L registrlariga yozish

0803         06 05                              MVI B,05     Qo‘shiluvchilarni V registriga

                                                                             yuklash

0805        CD 09 08          CALL    ADDB          Qo‘shilish kism dasturini

                                                                              chakirish.

0808         76                                   HLT             Dastur bajarilishini uzish.

 

7-Kism dastur

 

Adres  Mash. kodi  Belgi  Mnemokod                                 Izox

 

0809       AF                         XRA A       Akkumulatorni tozalash

080A      4F                          MOV C,A   Kuchirish xisoblagichni tozalash

080B      86               CNT:   ADD M      Akkumulator ichidagi songa massivdan

                                                                 navbatdagi son mikdorini qo‘shish.

080S  D2 10 08                   JNC TRM   Agar kuchirish bulmasa TRMga o‘tilsin.

080F      0C                          INR C        S  registri kiymatini  bittaga oshirish

0810      23              TRM:   INX H        Qo‘shiluvchining xisoblashining kiyma-

                                                                tini kamaytirish.

0812     D2 0B 08                JNC CNT    Agar xamma qo‘shiluvchilar bulmasa

                                                                 CNT ga utish.

0815      S9                          RET             Kaytish.

 

Sonlarni qo‘shish bir baytli massiv sonini qo‘shish natijasida ikki baytli sonni hosil qilish - MAIN qism dasturi (6-dastur)da ko‘rsatilgan. Bunda hosil bo‘ladigan yig‘indilar xotira adreslarida ketma-ket joylashgan bo‘lishi kerak. Kirish parametrlar ADD B qism dasturning (7-qism dastur) H, L registrga yozilganidir. MAIN  dasturida kirish parametri bo‘lib yig‘indi xizmat qiladi, bunda S registrda yozilgan katta bayt, kichigi esa akkumulatorda joylashgan.

Yig‘indilar hosil qilish dasturi algoritmi shundan iboratki, bunda xar bir elementning qo‘shilishidan keyin akkumulatorning to‘ldirilishi aniqlanadi (xolat alomati S), agar u ma’lum bo‘lsa, unda S registrida joylashgan son bittaga ko‘payadi. Shunday qilib, to‘ldirish birliklari qo‘shilishi natijasida katta bayt yig‘indisi hosil bo‘ladi.

Kichik-EXM ikki mashina so‘zilik yoki undan katta uzunlikdagi ikkilik sonlar bilan arifmetik amallarni bajarishi mumkin. MP  KISda sakkiz razryadli ALK (Arifmetik mantiqiyk qurilma) bo‘lgani uchun, bunday amallar bir bayt sonlar ustida bajarilib, kichik baytlardan boshlab ijro etilishi kerak. Shunday qilib, 17F5+3411 sonlarni qo‘shish amali quyidagicha ko‘rinishda bajariladi:

 

Katta bayt       S bayrog‘i                     Kichik bayt          Sonlar

00010111                                            11110101              17F5

+                                                                 +                            +

00110100                                             00010001              3411

+1                          1

01001100                                             00000110              4S05

 

6F5C - 13S5 sonlarning ayirma natijasi kuyidagi kurinishda yoziladi.

 

Katta bayt         S bayrogi                    Kichik bayt        Sonlar

01101111                                             01011100              6F5C

–                                                                   –                            –

00010011                                             11000101              13S5

–1                         –1

01011011                                                  10010111              5V97

Keltirilgan misoldan ko‘rinadiki, kichik baytlardagi sonlarning  yig‘indisini (ayirmasini) olishda ADD (SUB) buyruqni qo‘llash lozim, qolganlarini qo‘shishda (ayirishda) ADC (SBB) buyrug‘i ishlatilib, S registr xolatini hisobga olish lozim.

8-dastur bir xil uzunlikka ega bo‘lgan sonlarning ayirmasini topish dasturidir. Bunda kirish parametrlari: S registri - sonlar uzunligi (baytlarda), H, L registrlari - ayriluvchining kichik bayti adresi, D,E registrlari kamayuvchining kichik bayt adresi.

Har bir son xotira adresiga ketma-ket kichik baytdan boshlab yoziladi. Olingan natija ayirmaga ajratilgan xotira maydoniga kiritiladi.

8-dastur

Adres  Mash. kodi    Belgi  Mnemokod        Izox

 

0900       AF                 SBN:  XRA  A     S registr bayrogi va akkumulatorni    

                                                                   tozalash

0901       1A                 CNT: LDAX  D    Kamayuvchini akkumulatorga yozish

0902       9E                            SBB   M     Ayiriluvchini akkumulator

                                                                   tarkibidan ayirib tanlash

0903       77                            MOV M,A  Ayirmani ayriluvchining

                                                                   o‘rniga yozish.

0904        23                           INX H         Ayriluvchining keyingi baytiga

                                                                   murojaat etish.

0905       13                            INX  D        Kamayuvchining keyingi

                                                                   baytiga murojaat etish

0906      AD                           DCR  C       Xisoblovchi kurilmasi

                                                                   tarkibini kamaytirish.

0907      S2 01 09                 JNZ CNT      Agar (sonining katta bayti) oxirgi

                                                                   bulmasa, unda CNT ga utish.

090A     RNC                                             Agar katta bayt va natija

                                                                   karrasiz bulsa, kaytish.

 

Sonlarni  ko‘paytirish

Sonlarni ko‘paytirishning bir necha algoritmi mavjud. Birinchi algoritmda ko‘paytirishni bir necha bor qo‘shish bilan almashtirish mumkin, masalan:

14*3=14+14+14

Bu usulning asosiy kamchiligi hisoblashning davomiyligidir (uzoq muddatligidir).

 

 

 

14-rasm. Ko‘paytirish amalini bajaruvchi qism dasturning algoritmi.

 

Ikkinchi algoritm buyicha kupaytirish natijasini xisoblashda albatta jamlash bir necha kaytalab (uzluksiz)kupayuvchini chapga surish va shu bilan birga kupaytuvchining kichik razryadi tomonidan boshlab mavjud darajasini tekshirish asosida o‘tkaziladi. Shu bilan bir katorda ko‘paytuvchining navbatdagi yozuvi 1 bo‘lsa, ko‘payuvchi yig‘indisi qo‘shiladi va chapga 1 razryadga suriladi. Ko‘payuvchini surishni yig‘indini o‘ngga surish bilan almashtirish ham mumkin. Mana shu algoritm yordamida (14-rasm) ikki bir baytli sonning kupaytmasidan  2 baytli natija olish kuyidagi kism dastur asosida bajariladi.(9-qism dastur). Qism dastur boshlang‘ich adresi 09E1  kirish parametrlari: ko‘payuvchi D-registrda,  ko‘paytuvchi Ye-   registrda. Ko‘paytirish natijalari V,S registrlariga yoziladi.

9-qism dastur

Adres   Mash. kodi  Belgi  Mnemokod             Izox

 

09E1     01 00 00      MPL   LXI B,0000    V,S registrlarni nollash.

09E4     3E 01                     MVI A,01       Razryad ko‘rsatkichini

                                                                    akumulyatorga yuklash

09E6      A7                         ANA A           Registr bayrogini tozalash.

09E7      F5              MPLI  PUSH PSW   Stekda razryad ko‘rsatkichini

                                                                  saqlab qolish.

09E8      A3                        ANA E           Navbatdagi razryad ko‘paytuvchining

                                                                  tarkibini tekshirish.

09E9      78                        MOV A, B      Akkumulatorga hamma bayt   

                                                                  yig‘indisini yuklash

09EA  CA EE 09                JZ MPL2        Agar navbatdagi razryadda 0

                                                                  yozilgan bo‘lsa,unda MPL2 o‘tish.

09ED     82                        ADD D            Kupayuvchini yig‘indiga qo‘shish.

09EE     IF                         MPL2              RAR Yig‘indini o‘ngga surish

09EF     4F                        MOV B,A         V registrda akumulyatordagi

                                                                    sonni saqlab qolish.

09FO     79                       MOV A, C         Yig‘indi kichik baytini

                                                                    akkumulatorga yuklash

09F1      1F                        RAR                 Akkumulatordagi sonni o‘ngga

                                                                    surish (S-katta bayt)

09F2      4F                      MOV C,A          C registrga akkumulator

                                                                    tarkibini yozish

09F3     F1                      POP PSW           Razryad ko‘satkichini tekdan olish.

09F4     17                        RAL                 Keyingi razryad ko‘rsatkichi

09F5   D2 E7 09             JNC MPL1       Agar razryad oxiri bo‘lsa MPL1ga o‘tish.

09F8      C9                        RET                 Qaytish.


 

15-rasm. Ikkita sakkiz razryadli sonlarni bo‘lish qism dasturi  algoritmining chizmasi.

Sonlarni  bo‘lish

Ikkilik sonlarni bo‘lish, har qanday hisoblash tizimidagi  sonlar kabi ifodalangandek  bo‘luvchidan bo‘linuvchini va bo‘linma qoldiqlaridan ketma-ket ayirishga asoslangandir. Biroq ikkilik bo‘linish osonroo‘ amalga oshiriladi, chunki unda faqat ikkita raqamli har bir bo‘lish siklida  bo‘linuvchi qoldiklardan  bo‘luvchi sonni  aniqlash zaruratiga  xojat o‘olmaydi, (fakat ular bir-birlari bilan solishtiriladi). Ikkilik sonlarni bo‘lish algoritmi chizmasi 15-rasmda keltirilgan. Shu algoritm bo‘yicha 10-dastur tuzilgan. Shu dasturning kirish parametrlari bo‘linuvchi (Ye registrida) va bo‘luvchi (D registrida) bo‘ladi; chiqish parametrlari  bo‘linma (N registrida ) va qoldiq (S registrida).

10-dastur

Adres   Mash. kodi  Belgi  Mnemokod                         Izoh

 

0900     21 0800        DIVB:  LXI N,0008   Bitlar hisoblagichi to‘ldirilsin

                                                                    va bo‘linma N registr tozalansin.

0903     0E 00                         MVI S,00    Bo‘linma oraliq registri tozalansin.

0905       7B              MXTB: MOV A,E    Akkumulatorga bo‘linuvchini yuklash.

0906       17                             RAL            Katta baytni S razryadga surish.

0907       5F                            MOV E,A    Ye registrga bo‘linuvchini qaytarish.

0908      79                             MOV A,C    C registrdan oraliq bo‘linma

                                                                    akkumulatorga yozilsin.

0909     17                               RAL           S razryadni kichik bit ga surish.

090A     92                             SUB D         Bo‘linuvchini akkumulator son

                                                                    mikdoridan ayirib tashlash.

090B  D2  0F  09               JNC NOADD   Agar S=1 bo‘lsa, akkumulatorda son miqdori o‘z xoliga keltirilsin.

090E     B2                           ADD D           Akkumulatorga bo‘luvchini qo‘shish.

090F      4F          NOADD:  MOV C,A      Natija S registrga qaytarilsin.

0910      3F                              CMC           S razryadni inversiyalash

0911      7C                          MOV A,N       N registrdagi bo‘linmaga

                                                                     S razryaddan son mikdorini qo‘shish

0912      17                             RAL               O‘ngga surilish bilan yozish.

0913      67                       MOV H,A

0914     2D                     DCR L                  Barcha razryadlar tekshirilganmi?

0915  S2  05 09                JNZ MXTB       Yo‘q bo‘lsa, davom ettirish

0818     CF                           RST 1             Ha bo‘lsa, dasturni to‘xtatish.

 

Uyda tayyorlash uchun topshiriqlar

1.   MP KIS KR580IK80ning arifmetik buyruqlar guruxini o‘rganib chiqking.

2.   Akkumulator o‘nlik korreksiyasi "DAA" buyrug‘i bajarilishi qoidalari bilan tanishib chiqing.

3.   Yuqorida keltirilgan 6-10 dasturlarni o‘rganib chiqing.  Aniq sonli  misolda har bir dasturning bajarilish natijasini ko‘rib chiqing.

4.   8 razryadli sonlarda bo‘lish dasturi va ko‘paytirish qism dasturlarining  bajarilish vaqtlarini bir-biri bilan solishtirib ko‘ring.

5.   Ikki 8 razryadli sonlarni qo‘shish dasturining natijasini ikkilik-o‘nlik kodida tasvirlanuvchi ko‘rinishdagi dasturni ishlab chiqing.

Amaliy  ishlar  uchun  topshiriq

1-topshiriq.  Bir baytli sonlarni qo‘shish bilan ikki baytli natija olish dasturini  tekshiring.

Topshirikni   bajarish tartibi

1.   Kichik-EHMga 6-dasturni joylashtiring (kirgizing).

2.   0V00 adresidan boshlab beshta sondan iborat bo‘lgan ketma-ketlikni kichik-EXMga yozing.

3.   MP  KIS  akkumulatoriga va S registriga yozilgan sonlar miqdori bo‘yicha bajarilishini tekshiring va dasturni ishga tushiring.

4.   6-dasturni shunday o‘zgartiringki, bunda bajarilgan natija 0V06 va 0V07 adreslarga yozilsin. Uning bajarilish natijasini tekshiring.

5.   Dasturdagi qo‘shiluvchilar soni ko‘rsatkichini o‘zgartiring va dasturni qaytadan bajaring.

2-Topshiriq. Bir xil uzunlikka ega bo‘lgan, ikki sonning ayrilish dasturini  tekshiring.

Topshiriqni bajarish tartibi

1.   Kichik-EXMga 8 - dasturni joylashtiring.

2.   D,E va H,L registrlari mos ravishda kamayuvchi va ayriluvchilarning  kichik bayt adreslari yozilsin. Ayriluvchi OXK maydoniga yozilishi kerak. S registriga bayt uzunligi soni yozilsin. Birinchi xol uchun S registrga 01 soni yozilsin (bunda 8 razryadli ikki son ayirmasi kuzatiladi).

3.   Ye,D va H,L registriga ayriluvchi va kamayuvchilarning adreslari yozilsin. Bunda kamayuvchi miqdori ayriluvchiga nisbatan katta bo‘lmog‘i kerak.

4.   8 - dasturni ishga tushiring va uning bajarilishi natijasini ayirma yozilgan adresdagi sondan boshlab tekshiring.

5.   8 - dasturni ko‘rinishi bo‘yicha shunday o‘zgartiringki, ikkita xar xil 2 razryadli sonning natijasi  AAE2 adresda yozilsin.

6.   H, L va  D, E  registrlar adresidagi sonlarni shunday o‘zgartiringki, kamayuvchi ayriluvchidan kichkina bo‘lishi zarur.

7.   10 - dasturni ishga tushiring va bunda nima bo‘layotganini ko‘rsating (qadamli rejimida).

 

3 - topshiriq. Ikki 8 razryadli sonlarni ko‘paytirish bilan 16 razryadli natija olish dasturini tekshirish.

 

Topshiriqni bajarish tartibi

 

1.   5 - bandga asosan uyda tayyorlab kelingan ikkita sonni ko‘paytirish dasturini kichik-EXMga kiritish.

2.   V,S registrlarda yozilgan ikkita son bo‘yicha qayta ko‘paytirish natijasini tekshiring va dasturni ishga tushirishni amalga oshiring.

 

4 - topshiriq.  Ikki 8 razryadli sonning bo‘linish dasturini tekshiring.

 

Topshiriqni bajarish tartibi:

 

1.   Kichik-EXMga 10-dasturni joylang.

2.   E ,D  registriga tegishli bo‘lgan bo‘luvchi va bo‘linmani yozing.

3.   Dasturni ishga tushiring va H, L  registrlarida bor bo‘lgan ma’lumot bo‘yicha ikkita sonning bo‘linmasini tekshiring.

 

 

Hisobotning  mazmuni

Hisobotda quyidagilar qayd qilinishi kerak :

1.  MP KIS KR580IK80 arifmetik buyruqlari to‘g‘risida to‘liq ma’lumot.

2.  Uyda tayyorlash uchun 3-banddagi topshiriqga nisbatan ishlab chiqilgan, ikki 8 razryadli sonni qo‘shishda, natijani ikkili-o‘nli kod olish   dasturi.

3.  Uyda tayyorlanish uchun 5-banddagi topshiriqda ishlab chiqilgan, ikki 8 razryadli sonni ko‘paytirish natijasini tekshirish uchun dastur.

4.  2-topshiriqda tekshirilgan ko‘rinishi o‘zgartirilgan 7-dastur.

5.  Hamma topshiriqlar bo‘yicha arifmetik amallar bajarilganligining natijalari.

 

O‘z-o‘zini  tekshirish  mashqlari

1. MP KIS KR580IK80da qanday arifmetik amallar bajarilishi mumkin?

2. MP KIS DAA buyrug‘ining bajarilish qoidasini izohlab bering.

3. Qanday buyruqlardan so‘ng akkumulatorning o‘nli korreksiya sonini amalga oshirish  mumkin (DAA buyruqni bajarish)?

4.   Ikki son ko‘paytmasining qism dastur bajarilish maksimal vaqtini qanday baholash kerak (9qism dastur)?

5.   9-qism dasturga asosan ikkita sonni ko‘paytirishni tekshirish mumkinmi?

6.   Sonlarni ko‘paytirish va bo‘linish qism dasturi algoritmlarning ishlari nimaga asoslangan ?

7.   Ikkili-o‘nli kodda 0 dan 20 gacha  bo‘lgan sonlarni keltiring.

8.   MP KIS KR580IK80 uchun sonlarni ifodalashning mumkin bo‘lgan usulini ko‘rsating.

9.   Agar MP KIS uchun mashina vaqtining davomiyligi (takti) T = 1 mks bo‘lsa, ikkita sonning dasturi bajarilishining maksimal vaqtiga baxo bering.

 

 

8 Amaliy mashG‘ulot

MA’LUMOTLARNI KIRITISh VA ChIqARIShni tashkil etish

 

Ishdan maqsad: Oddiy kiritish - chiqarish qurilmalarining  ulanishi va massiv malumotlarini almashishni tashkil qilish usullarini tekshirish; displey va klaviturani MPTga  ulashning dasturiy - apparat usulini o‘rganish.

 

Qisqacha nazariy ma’lumotlar

MP KIS KR580IK80da kiritish va chiqarish buyruqlariga IN(A1) va OUT(A1) buyruqlari kiradi. IN(A1) buyrug‘ining bajarilishida kichik-EHMga (A1)adresli qurilmadan malumotni o‘qiydi va uni akkumulatorga yozadi. OUT(A1) buyrug‘ining bajarilishida MP KIS malumotni akkumulatordan olib A1 adresli chaqirish qurilmasiga yozadi. Qurilmaning adresi bir bayt asosida ko‘rsatilgani uchun, bu buyruqlar yordamida kichik-EHM faqat 256 tadan ortiq bo‘lmagan tashqi qurilmalar bilan malumot almashish mumkin.

Oddiy  kiritish va chiqarish qurilmalari sifatida 8-razryadli registrlarni qo‘llash mumkin. (Masalan, ko‘p rejimli bufer registri K589IR12).

Kiritish va chiqarish  qurilmasi sifatida birmuncha murakkab sxemalarni ham qo‘llash mumkin, masalan malumotni  kodda kiritish va chiqarishning tashkil qiluvchi dasturlanuvchi qurilma (KR580IK55) KR589IR12 (D1) ko‘p rejimli registr qayta ulagichlar asosida qurilgan kiritish qurilmasining kichik-EHMga ulash sxemasi 16-rasmda keltirilgan. Qayta ulagich ulanganda registrning kirishiga "0"  beriladi, uzilganda esa "1" beriladi. Qayta ulangan (pereklyuchatel)lar tashqi qurilmalaridan malumot uzatishni tashkil qilish uchun ishlatiladi. Registrga yozilgan sonlarni indikatsiya  qilish uchun (HL1-HL8) yorug‘lik  diodlarni registrga ulash mumkin. 17-rasmda KR589IR12 (D1) sxema asosida qurilgan tashqi qurilmani kichik-EHMga ulanish sxemasi keltirilgan. HL1-HL8 yorug‘lik diodlar tashqi qurilmaga yozilgan son miqdorini ko‘rsatadi. Kiritish qurilmasidan (20 adresi bilan) chiqarish qurilmasiga (30 adresli bilan) sonni qayta yozishning oddiy dasturi (11-dastur) quyidagi ko‘rinishga ega.

 

 

8-jadval.

11-dastur

Adres

Mashina kodi

Belgi

Mnemokod

Izox

0800

DB 20

CNT:

IN 20

20 - adreslik kiritish qurilmasidan sonni akkumulatorga yozish.

0802

D3 30

 

OUT 30

30 - adresli akkumulatordagi son 30 adresli chiqarish qurilmasiga yozish

0804

S3 0008

 

JMP CNT

CNTga borish.

 

16-rasm. Kiritish qurilmasini  kichik-EHMga ulash sxemasi.

 

17-rasm.Chiqarish qurilmasini kichik - EHMga ulash sxemasi.

 

Malumotni qabul qilish uchun qulay bo‘lgan chaqirish qurilmasi sifatida ko‘pincha displey qo‘llaniladi. 6 ta yacheykadan iborat bo‘lgan displeyni ulash usulini ko‘rib chiqamiz. Bu yacheykalarda 8-ta yoruglik-diodi umumiy anodi bilan bitta korpusga o‘rnatilgan. Har bir indikator (3a-rasm) son segmentlarini tasvirlash uchun 7 ta yorug‘lik-diodlaridan iborat, 8 yorug‘lik-diodi esa nuqtani tasvirlash uchun ishlatiladi (18 b- rasm).

18 - rasm  a) tashqi ko‘rinishi. b) yetti  segmentli  yorug‘lik-diodlar matritsa sxemasi.

 

 

 

 

 

19- rasm. Displey yacheykalarni nomerlash.

 

Displeyni kichik-EHMga ulashda  zarur bo‘lgan sxemotexnika ta’minotini kamaytirish uchun ko‘pincha indikatorlarning multipleksli ish rejimi qo‘llaniladi. Bunda informatsiyani displeyga chiqarish uchun KR580VV55 KIS ko‘laniladi. KR580VV55 KISning 3 ta 8-razryadli A,V,S kanali mavjud. KIS 3 xil ish rejimida ishlaydi. 0 , 1 , 2 rejimlar. 0-rejimi A va V kanallarni displey ishini boshqarish uchun ma’lumotlarni chiqarishga moslashtiradi, S kanalini esa ma’lumotlarnini qabul qilishga moslashtiradi. 1 va 2 rejimlar boshqa maksadda qo‘llaniladi.

 

 

20-rasm. Displey va klaviaturani kichik-EHMga ulash sxemasi.

 

Buning uchun boshqaruvchi so‘z (FB adresli) registriga 89N boshqaruvchi so‘z kodi yoziladi. V kanal orqali (F9 adres) diod matritsasining katodiga yorug‘lik ko‘rinishi lozim bo‘lgan raqamning kodi uzatiladi. A kanal orqali aniq razryadni tanlash amalga oshiriladi. (20- rasmga qarang).

Indikatorning har bir yacheykasini bir xil segmentlari umumiy shina bilan bog‘langan bo‘lib, bu shina D1 va D2 (K155 LA12) kichik sxemalarning biror bir chiqishiga ulangandir. Bu kichik sxemalarning har biri kuchlanish qobiliyatiga ega bo‘lgan 4ta "2I-NE" elementidan tarkib topgan. D1 va D2 kichik sxemalar V kanalining kuchlanish qobiliyatini ko‘paytiradi va shina tashkil etuvchi vazifasini bajaradi. Indikatorning umumiy anodlari A kanalining chiqishida VT1-VT6 tranzistor kollektorlarning birortasiga ulanadi. Tasvirlash uchun A va V kanallariga ma’lumot chiqarish ikkita OUT buyrug‘i bilan amalga oshiriladi. Masalan, V kanaliga  00000110 (06N) soni chaqirilganda yorug‘lik matritsa katodiga teskari qiymatlari 11111001 beriladi, A kanaliga esa 0010 0000 soni chiqariladi VT6 tranzistor ochiladi va tok +5B -VT6 -HG6 -b va c-D1.2 va D1.3-yer zanjiri orqali oqib o‘tadi. Bunda o‘ng tomondagi indikatorda "1" yonadi. Agar endi hamma yacheykalar ketma-ket dastur orqali yoritilishi amalga oshirilsa va bunda A kanal orqali yonish lozim bo‘lgan yacheyka tanlansa V kanal orqali esa shu yonadigan malumot kodi yetarlicha tezlik bilan o‘chirilib - yoqilib turilsa, u xolda displey ekranida aniq malumot paydo bo‘ladi.

Displey yacheykasining 6 indikatoriga 6 raqamini chiqarishning oddiy dasturini keltiramiz.(12-dastur).

 

9-jadval. 12-dastur

Adres

Mashina kodi

Belgi

Mnemokod

Izox

0800

3E 89

 

MVI A, 89H

Boshqaruv so‘zini RUS (SWR)ga yuklash.

0802

D3 FB

 

OUT SWR

 

0804

3E 7D

 

MVI A,7DH

6 raqamining kodini V kanalga yuklash

0806

D3 F9

 

OUT port B

 

0808

3E 20

 

MVI A,20H

indikator nomerini A kanalga yuklash

080A

D3 F8

 

OUT port A

 

080C

76

 

HLT

 

 

21-rasmda  K580IK55 KISni boshqarish uchun buyruqlar formatining ko‘rinishi keltirilgan. Kerakli buyruq kodini va ish rejimini tanlash(olish) uchun kerakli razryadlarga "1"  yoki  "0" yoziladi, xosil qilingan son ikkilik sanoq tizimi ko‘rinishidagi 8 razryadli son  bo‘ladi va shu sonni o‘n oltilik raqam kodiga o‘tkazish kerak. Shundan so‘ng kerakli buyruq kodi xosil bo‘ladi, ya’ni xosil kilingan kod yordamida, kerakli portni kiritish yoki chiqarish uchun dasturlash imkoniyatiga ega bo‘lamiz.

 

 

 

 

 

1

D6

D5

D4

D3

D2

D1

D0

 

Rejim  0

0

0

Rejim  1

0

1

Rejim  2

1

0

 

Kirish

1

 

1

Kiritish

Chiqish

0

 

0

Chikarish

 

Kirish

1

 

0

Rejim 0

Chiqish

0

 

1

Rejim 1

 

21-rasm. K580 IK55 KIS ga buyruqni  belgilovchi rejimlarning formati

 

Displeyning multipleks rejimini tashkil qilish.

 

Multipleks ish rejimida displeyning har bir indikatoriga malumot chiqarish ketma-ket amalga oshiriladi. Indikatorda raqam yoki simvol vaqt oralig‘i qism dastur yordamida qandaydir muddatga yoritiladi. Indikatorlarining yuqori chastotada o‘chib-yonishi ma’lumotini raqamli displeyda yorqin tasvir hosil qilishga olib keladi.

Displeyning multipleks rejimini ta’minlovchi dasturning algoritm sxemasi 22-rasmda keltirilgan (13-dastur). Displeyning har bir yacheykasiga chiqarish uchun ma’lumot kodi xotiraning 0900 ... 0906 adresli ketma-ket yacheykalarida saqlanadi. Bunda displeyning birinchi indikatoriga chiqarish lozim bo‘lgan raqam ma’lumot kodi 0900N adresiga yozilgan. Vaqt oralig‘i qism dasturning boshlang‘ich adresi 0880Ndir.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


                                       Yo‘q

 

 

                                                       Ha

 

 

22-ðàñì. Äèñïëåéíèíã ìóëüòèïëåêñ ðåæèìèíè òàúìèíëîâ÷è äàñòóðíèíã àëãîðèòì ñõåìàñè

 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


10-jadval

13-dastur

Adres

Mashina kodi

Belgi

Mnemokod

Izox

0800

 

 

3E  89

 

MVI    A,89H

Boshqaruv so‘zi RUS

(CWR)ga yuklash

0802

D3  FB

 

OUT    CWR

Birinchi raqam adresini yuklash.

0804

21   00  09

START:

LXI    H,0900

0807

AF

 

XRA   A

Barcha indikatorlar

o‘chirilsin.

0808

D3   F8

 

OUT   F8

080A

0601

 

MVI   B,01H

Birinchi yoqiladigan indikator razryadi adresini yuklash.

080S

7E

STEP4:

M0V   A,M

B portga tasvirlanadigan raqam kodi chiqarilsin.

080D

D3   F9

 

OUT   F9

0812

SD   80  08

 

CALL  DELL

Raqamlar yonish davrini chegaralash qism dasturi chaqirilsin.

0815

78

 

MOV A,B

Hamma ma’lumot chiqarib bo‘linganmi?

0816

FE  20

 

CPI   20

0818

SA  04  08

 

JZ START

Agar chiqarib bo‘lingan

bo‘lsa, unda ish dastur boshidan bajarilsin, agar shart bajarilmasa, dastur o‘z ishini davom ettirsin

 

 

 

 

081V

A7

 

ANA  A

Navbatidagi razryad adresi ko‘rsatilsin va V registrga yozilsin

081S

17

 

RAL

081D

47

 

MOV  B,A

081E

23

 

INX H.

Raqamlar kodi adresi oshirilsin

081F

AF

 

XRA A

Hamma indikatorlar o‘chirilsin.

0820

D3 F8

 

OUT F8

0822

C3 00 08

 

JMP STEP4

STEP4 belgili dasturlar katoriga o‘tilsin.

0825

76

 

HLT

To‘xtash

0880

DE OF

DEL:

MVI C, OFH

OF raqam S registrga yuklansin.

0882

16FF

BACK:

MVI D,FFH

FF raqam D registrga yuklansin.

0884

15

BACK1:

DCR D

D registrdagi raqam mikdori 0 teng bo‘lgunga qadar ish bajarilsin

0885

S2 84 08

 

JNZ BACK1

0888

0D

 

DCR C

OF marta ish qaytarilsin

0889

C2 82 08

 

JNZ BACK

088S

S9

 

RET

Raqamlar yonish chegarasini tugatish.

KLAVIATURANI KICHIK-EHMGA ULASH

 

Kichik-EHMda klaviatura eng keng tarqalgan malumot kiritish va boshqarish qurilmasidir. Klaviatura yordamida OXKga dastur kiritish, kichik-EHM uchun turli ish rejimlarni xosil qilish (masalan ko‘rsatilgan adres yordamida dasturni ishga tushirish, dastur ishini to‘xtatish, dasturni mashina ish sikli bo‘yicha ishlatish, MP KIS displeyiga registrlarga yozilgan malumotlarni chiqarish va boshqalar) mumkin.

Kichik-EHM ishlab chiqkaruvchi oldida turli xollarda malumotlarni klaviatura orqkali kiritish davrida, quyidagi asosiy masalalarni yechish talab etiladi;

1) klaviaturada klavisha (tugma) larning bosilish xolatini aniqlash:

2) bosilgan klavish (tugma) raqamini  qidirib topish:

3) boshqarishni mos  qism-dasturga uzatishni bajarish:

Ko‘rilayotgan bo‘limda biz asosan birinchi ikki masala bo‘lgan, malumotlarni klaviaturalar orqali kiritishga etiborni qaratamiz. Uchinchi masala esa qoida bo‘yicha dastur usuli orqali yechiladi. Klaviaturaga n x m o‘lchamli matritsa ko‘rinishdagi tashkil qilish eng qulaydir, bu yerda  n x m   matritsa qator va ustuni mos ravishda aniqlaydi. Shu usulda kichik-EHMga  n x m klavish ulash mumkindir.

20-rasmda keltirilgan o‘quv kichik-EHMda displey va klaviatura A va S portlarga ulangandir. Shuni ta’kidlash zarurki A kanal ham displeyni va ham klaviaturani boshqarish uchun ishlatiladi. S kanal esa klaviaturani kiritish qurilmasi adresi FAN sifatida o‘quvchi kanal deb qabul qilingan.

Klavishaning bosilganligi xolatining dastur orqali aniqlanishi quyidagi ketma-ket amallar tartibidan iborat.

1.  Chiqarish qurilmasi (A kanal) razryadlariga nollar yozilsin.

2.  Kirish qurilmasi (S kanal)  razryadlariga yozilgan ma’lumot o‘qilsin.

3.  Agarda qurilmalariga birlar yozilgan bo‘lsa, ish jarayoni boshidan qaytarilsin. 14-dastur yuqorida keltirilgan algoritm yordamida klavishalardan birining bosilish xolatini aniqklash bilan, qaysi klavish bosilgani ko‘rsatmaydi.

22-rasmda esa bosilgan klavish raqamini aniqlash algoritmi keltirilgan. Bu algoritm matritsa klaviaturasi ustunlarga ketma-ket nollarni yozishga asoslangandir. Kichik-EHMda klavisha bosilganini aniqlanayotgan, ustunda nol borligini bilish uchun, klaviatura joylashgan ustun taxlil qilinadi. Agar qaysi bir klavish bosilgan bo‘lsa, u xolda uning raqamini razryad nomerida nol yozilgan joyining aniklash orqali bilish mumkin. Bosilgan klavish raqami klaviatura ustuni nomerida nol borligiga mos keladi va bu raqam kirish qurilmasi bo‘lgan (S kanal) razryadiga nol yozilgan razryad raqamiga tengdir.

11-jadval. 14-dastur

Adres

Mashina kodi

Belgi

Mnemokod

Izox

0800

3E   3F

WAITK:

MVI A,3F

Akkumulatorning  kichik olti razryadiga 1 yozilsin.

0802

D3   F8

 

OUT   F8

Klaviaturaning  hamma ustunlariga 0 chiqarilsin.

0804

DB   FA

 

IN      FA

Klaviatura chiqishidan raqamli son olinsin.

0806

E6   74

 

ANI,74H

Foydanilayotgan razryadlar tozalansin

0808

FE   74

 

CPI,74H

Klaviatura chiqishida nol bormi?

080A

SA  00  08

 

JMP NEXT

NEXT adresi bo‘yicha

navbatdagi  bajarilishi lozim bo‘lgan joyga o‘tilsin.

 

 

 

 

 

 

 

 

 

 

 

 

 

                                                       Yo‘q

 

 

 

 

 

                                                                        Yo‘q

 

 

                                                                                        Xa

 

 

 

 

 

               Yo‘q

 

 

                              Xa

22–rasm. Kichik-EHM klavishi bosilganini aniqlash algoritmi.

Ko‘pincha ma’lumotlarni tovush signallari ko‘rinishda chiqarish talab etiladi. Buning uchun kichik-EHMda tovush signallarini 23-rasmda keltirilgan oddiy sxema orqali xosil qilish mumkin. Bu jarayon sxema kirishiga, ketma-ket "0" va "1" yozish orqali amalga oshiriladi. Tovush signallarini xosil qilish qism dasturi 15-dasturda, shu dastur algoritmi 24-rasmda keltirilgan.

 

 
 


 

 
 

 


23- rasm.  Tovush signallarini xosil kilish

 


24-rasm. Tovush signallarini chikarish algoritmi

12-jadval.

 15-qism-dastur

 

Adres

Mashina kodi

Belgi

Mnemokod

Izox

0A00

AF

VRR:

XRA  A

Akkumulator tozalansin.

0A01

D380

 

OUT 80

Chiqish qurilmasiga yozilsin

0A03

CD 00 09

 

CALL DLY

Vaqtni chegaralash qism dasturi chaqirilsin.

0A06

2F

 

SMA

FF kodi akkumulatorga yozilsin

0A07

D3 80

 

OUT 80

FF kodi chiqish qurilmasiga yozilsin

0A09

CD 00 09

 

CALL DLY

Vaqtni chegaralash qism dastur chaqirilsin.

0A00

09

 

RET

Qaytish.

 

 

Uyda tayyorlanish uchun topshiriklar

1.  20-rasmda keltirilgan klaviatura va displeyning kichik-EXMga  ulanish  sxemasi  bilan tanishing.

2.  Ma’lumotlarni multipleks rejimida displeyga chiqarilishini o‘qing.

3.  Klaviaturaning  bosilgan klavish raqamini aniqlash tamoyilini o‘qing.

4.  11-15-dasturlarni o‘qib o‘rganing.

5.  Bitta raqamli sonni displeyning turli razryadlarida multipleks ravishda ketma-ket chiqarish dasturini ishlab chiqaring. Har bir raqamning chiqarib yoritish uchun vaqtni chegaralash qism-dasturidan foydalanish, vaqtni chegaralash nimalarga bog‘likligini aniqlang.

6.  13-jadvaldan  o‘z variantingizga mos dasturni (13-dasturdan foydalanib o‘z dasturingizni) yarating va tekshiring.

 

 

13-jadval

 

Variant

 

Dastur sharti

 

1 va 12

1,2,3,4,5 indikatorlarda  GOROD so‘zi  7 raqamli klavish bosilgandan  so‘ng yoritilsin.

2 va 13

3 raqamli klavish bosilganda  VESNA so‘zi ketma-ket yoqilsin va ular  1,2,3,4,5 indikatorlarda uchib yonsin.

3 va 14

V klavishi bosilishi bilan GORA so‘zi 1,2,3,4 indikatorlarda, bir sekunddan so‘ng esa 3,4,5,6 indikatorlarda  paydo bo‘lsin.

4 va 15

A klavishi  bosilishi bilan ZONA so‘zi ketma-ket faqat bir indikatorda chiqarilsin.

5 va 16

4 klavishi  bosilish bilan BORBA so‘zi har 0,5 sek davomida  uchib yonib tursin.

6 va 17

D klavishi bosilgandan so‘ng 1,2,3 indikatorlarda, 250 msek so‘ng esa 4,5,6 indikatorlarda GOD so‘zi chiqarilsin.

7 va 18

6 raqamli klavisha bosilgandan so‘ng ROZA so‘zi ketma-ket displey ekrani bo‘yicha o‘ng tomonga surilib yonish  dasturi ishlab chiqarilsin.

8 va 19

9 raqamli klavisha bosilgandan so‘ng  AVANGARD so‘zi ketma-ket ikki indikatorda yonib ko‘rinish dasturi ishlab chiqarilsin.

9 va 20

S klavishani ketma-ket bosish jarayonida 3,4,5,6 indikatorlarda SLON  so‘zi chiqarilsin.

10 va 21

1 raqamli klavish bosilgandan so‘ng 2,3,4,5,6 indikatorlarda VOLNA so‘zi chiqarilsin, so‘zlar 1 sek oraliqda ketma-ket chiqarilishi zarur bo‘lib, so‘ngra ular 1 sek oraliqda o‘chib yonib turishi zarurdir.

11 va 22

7 raqamli klavisha bosilganidan so‘ng, RAUND so‘zi 1,2,3,4,5 indikatorlarda chiqarilib o‘ng tomonga surilib yoqilsin, 8 raqamli klavisha bosilganda esa shu so‘z chap tomonga surilib yoqilsin.

 

 

 

Amaliy   ishlarni bajarish  uchun  topshiriqlar

 

1-topshiriq. 1-dastur kiritilsin.

Topshirikni bajarish tartibi.

Kichik - EHM xotirasiga 1 dastur kiritilsin .

1.1. Dastur ishga tushirilsin. Beshinchi displeyda segmentlarning  o‘garishiga etibor bering, buning uchun kirish qurilmasiga berilayotgan son mikdori o‘zgartirilsin.

2-topshiriq.  13-dastur tekshirilsin.

Topshirikni  bajarish  tartibi.

2.1.  13-dastur kichik-EXM xotirasiga yozilsin

2.2. Dastur ishga tushirilsin. Kerakli klavish bosilsin va uning displeyga   chiqarilishi to‘g‘riligi tekshirilsin.

Hisobotning mazmuni

Xisoboquyidagilardan iborat bo‘lishi zarur.

1.  Indikator segmentlarga chiqarilayotgan xarf va raqam kodlar jadvali.

2.  Displey indikatori raqamiga mos kodlar jadvali.

3.  Ishlab chiqarilgan 13-dastur.

 

Mustaqil tayyorlanish uchun topshiriqlar

 

1.  1,2,3,4,5,6 sonlarni displeyga chiqarish uchun 0900-0905 adreslariga qanday kodlar yozilishi kerak?

2.  Agarda ikkita klavisha bir vaqtda bosilsa, qaysi klavisha bosilgani aniqlanadi, agar uchtasi bosilsa-chi?

3.  12 va 13-dasturlar shunday o‘zgartirilsinki, klavisha raqamini aniqlash doimiy ravishda amalga  oshirilsin.

4.  Displey ekranida ma’lumot tekis siljishi(surilishi) uchun 13-dasturga qanday o‘zgartirishlar kiritish zarur.

 

 

 

Adabiyotlar

 

1.                Presnuxin L.N.,  Vorobev N.V., Shishkevich A.A.  Raschet elementov sifrovûx ustroystv.  M.: Vûssh.shk., 1991, 526 s.

2.                Ugryumov Ye.P. sifrovaya sxemotexnika. Ucheb. posobie dlya vuzov.g‘ 2- izd.

pererab.  i dop.-SPb. BXV – Peterburg. 2005.-800 s.:il.

3.                Kalabekov B.A. sifrovûe ustroystva  i mikroprotsessornûe  sistemû. Uchebnik.-M.:Gorachaya liniya- Telekom.,2003 g.-336.

4.                Suvorov V.I., Yunusov D.Yu. Metodicheskoe rukovodstvo po laboratorno-prakticheskim zanyatiyam po kursu «Osnovû sifrovoy texniki i mikroprotsessorû» (¹ 47).  TEIS, 1984, 118 s.

5.                Xokins G. sifrovaya elektronika dlya nachinayuùix: Per. s angl. M.: Mir, 1986, 232 s.

6.                Goldenberg L.M. i dr. sifrovûe ustroystva i mikroprotsessornûe sistemû. Zadachi i uprajneniya: Ucheb. posobie dlya vuzov. M.: Radio i svyaz, 1992, 256s.

7.                Abduraxmanov R.P., Bashirov R.V., Amirsaidov U.B.  Zadaniya k kontrolnoy rabote i metodicheskie ukazaniya k ix vûpolneniyu po kursu «Sifrovaya i vûchislitelnaya  texnika».  TEIS, 1995, 30 s.

8.                Presnuxin L.N.,  Vorobev N.V., Shishkevich A.A.  Raschet elementov sifrovûx ustroystv. – M.: Vûssh.shk., 1991. – 526 s.

9.                Ugryumov Ye.P. Proektirovanie elementov i uzlov EVM . – M.: Vûssh.shk., 1987. – 318 s.

10.           Suvorov V.I., Yunusov D.Yu. Metodicheskoe rukovodstvo po laboratorno-prakticheskim zanyatiyam po kursu «Osnovû sifrovoy texniki i mikroprotsessorû» (¹ 47). – TEIS, 1984. – 118 s.

11.           Goldenberg L.M. sifrovûe ustroystva i mikroprotsessornûe sistemû.

Zadachi i uprajneniya.: Ucheb. Posobie dlya vuzov. M.: Radio i svyaz, 1992.

12.           Goldenberg L.M. sifrovûe ustroystva na integralnûx sxemax v svyazi.

M.: Radio i svyaz, 1979, 232 s.

13.           Abduraxmanov R.P., Bashirov R.V., Amirsaidov U.B.  Zadaniya k kontrolnoy rabote i metodicheskie ukazaniya k ix vûpolneniyu po kursu «Sifrovaya i vûchislitelnaya  texnika». – TEIS, 1995. – 30 s.

 

LABORATORIYa MAShG‘ULOTI  MATERIALLARI

 

¹1. PIC «PIC Simulator IDE» arxitekturali mikrokontrollerlarning strukturasi va funktsiyalanish printsiplari

 

Microchip Technology firmasi tomonidan ishlab chiqarilayotgan PIC16FXX integral mikrosxemalar oilasi o’zida RISC arxitekturali sakkiz razryadli mikrokontrollerlardan iborat. Bu mikroprosessorlar oilasi past energiya sarfi, komandalarni bajarish tezligi, past narhi bilan boshqalardan ajraladi. Mikrokontrollerlar o’rnatilgan PZU laddan tuzilgan bo’lib, ular OZU ma’lumotlari va energiyaga bog’liq bo’lgan dasturlarni saqlash uchun mo’ljallangan. Ushbu oilaning eng oddiy vakillaridan biri bu PIC16F84 mikrokontrolleridir. KOntroller KMOP texnologiyasi bo’yicha tuzilgan bo’lib, ichki 1Kx14 bit electron qayta dasturlovchi PZU (EEPROM) dan iboratdir, bu qurilma bajarilayotgan dastur va 64 baytli energiyaga bog’liq OZU ma’lumotlarining saqlanishi uchun mo’ljallangan. Kontoller bajaradigan komandalar, kengligi 14 bit ikki soz’dan iborat bo’ladi va bir cikl davomida bajariladi (400 ns. Sinxronlashning 10 MgH chastotasida), bunda uzatish boshqaruvining komandalari ikki ciklda bajariladi. Ciklning davomiyligi taktli chastotaning to’rtta ciklidan tashkil topadi. Kontroller 0 dan 10 MgH chastotali diapazonda ishlash qobiliyatini saqlab qoladi. Kontroller 4 manbadan uzilishni ta’minlaydi va ularning sakkiz darajali apparat oqimini ta’minlaydi. 8 bitli taymer/schetchik va 8 bitli dasturlanuvchi boshlang’ich ajratuvchiga ega. Periferik qurilmalarni ulash uchun (datchik, klaviatura, ijrochi mexanizmlar) uchun kontrollerning 13 ta liniyasi bor, ularning har biri dastur jihatidan axborotni kiritish va chiqarishga sozlangan. Bu liniyalarning yuqori quvvar qobiliyati (20mA) bo’lib, bu kirish va chiqish drayverlarining sxemali realizatsiyasini osonlashtiradi.  Qurilmalarning ishlab chiqaruvchilari bunday kontrollerlarning asosida assembler yordamida tutib turiladi, bundan tashqari dasturlovchi va dasturli simulyator (PIC Simulator IDE) bilan tutib turiladi, bu esa o’z navbatida dasturlar asozlanishini alamga oshirish va kontrollerning portlariga ulangan tashqi qurilmalarning olib borilishini modellashtiradi. 

pic1

Rasm 1 Mikrokontrollerning funktsional sxemasi

1-rasmdagi sxemada quyidagi korsatgichlar keltirilgan: OSCva OSC2 boyicha chiqish nuqtalari kvartsli rezonatorning yoki RC-zanjir, yoki taktli impulslar generatorining ulanishi uchun moljallangan/ RA0-RA4 chiqishlari PORT A ning razryadlarini hosil qiladi. TOSK1 ham taymer/schetchikning kirish nuqtasi kabi ishlatilishi mumkin. RB0-RB7 chiqish nuqtalari B PORT B ning razryadlari hisoblanadiINT- tashqi ulanishning kirishi.  RB4, RB5 signalning o’zgarishigacha ulanish kirishi or’nida ishlatilishi mumkin. RB6 - signalning o’zgarishigacha ulanish kirishi or’nida ishlatilishi mumkin yoki kontrollerning dasturlanishida taktli signalning kirishi or’nida ishlatilishi mumkin. RB7 – signalning o’zgarishi bo’yicha uzatishning kirish nuqtasi yoki ma’lumotlarni dasturlash vaqtidagi signal/ MCLR – tashlash signalining kirishi yoki dasturlash vaqtidagi kuchlanish. VDD – energiya manbasining musbat chiqishi. GND -  umuniy chiqish.

PIC Simulator IDE – kuchli ilova bo’lib, PIC ishlab chiqaruvchilarini Windows uchun grafik atrof muhitning integratsiyalshgan simulyator (emulyator), Basic kompilyator, assembler, disassembler and sozlovchi bilan oson ishlatilishini ta’minlaydi. PIC Simulator IDE hozirda quyidagi mikrokontrollerda iborat Microchip PICmicro 12F va 16F gacha bo’lgan mahsulotlar nomenklaturalari: 12F629, 12F635, 12F675, 12F683, 16F627, 16F627A, 16F628, 16F628A, 16F630, 16F631, 16F636, 16F639, 16F648A, 16F676, 16F677, 16F684, 16F685, 16F687, 16F688, 16F689, 16F690, 16F72, 16F73, 16F74, 16F76, 16F77, 16F737, 16F747, 16F767, 16F777, 16F83, 16F84, 16F84A, 16F87, 16F88, 16F818, 16F819, 16F870, 16F871, 16F872, 16F873, 16F873A, 16F874, 16F874A, 16F876, 16F876A, 16F877, 16F877A, 16F882, 16F883, 16F884, 16F886, 16F887, 16F913, 16F914, 16F916, 16F917, 16F946

PIC Simulator IDE – MicroPIC mikrokontrollerlari uchun yozilgan dasturlash sozlovchisi bo’lib, uning seriyasi 12 va 16 Microchip kompaniyasiga tegishli. Dastur ishlab chiqaruvchiga bevosita sozlanayotgan dasturda virtual periferiya bilan ishlash imkonini beradi va sozlash jarayoni va dasturlarni yozish jarayoni esa PIC Simulator IDE da barajish imkonini beradi.

PIC Simulator IDE v6.65

Rasm 2.  PIC Simulator IDE ning atrofi

Bu dastur (2- rasm) shuningdek, ishlab chiqaruvchiga bevosita sozlanuvchi kodda virtual periferiya bilan ishlash imkonini beradi: SK (suyuq kristalli) simvolli ekranli, 7 segmetli indicator, aloqa terminali, 4 kanalli generator, ostsillograf va boshqa qurilmalardan iborat. Qariyib butun sozlash jarayoni va dasturlarni yozish jarayonini PIC Simulator IDE da bajarish mumkin, ya’ni dasturga biror bir o’zgartirishlar kiritish, MK ni dasturlashirish va uni biriktirilgan tashqi qurilmalar bilan birgalikda sozlash platasiga ulashning hojati yo’q. Shu boisdan, PIC Simulator IDE MK uchun yozilgan dasturlarning yozilish va sozlanishi jarayonini jadallashtiradi. PIC Simulator IDE o’rnatilgan assembler va batafsil til uchun Basicc kompilyayoriga ega bo’lib, bu uskuna MK uchun yoziladigan dasturlarni yozish jarayonini tezlashtiradi va umuman boshqa uskunalar bilan ishlash vaqtini kamaytiradi. PIC Simulator IDE da ko’p sonli va ko’p imkoniyatli sozlashlar va ish rejimlari mavjud bo’lib, bu foydalanuvchiga mustaqil ravishda MK uchun dasturlarni sozlashning optimal rejimini beradi. PIC Simulator IDE ning shu kabi barcha imkoniyatlari uni boshlovchi va tajribali dasturchilar uchun a’lo darajadagi instrumentga aylantiradi.

 

Xisobotni ko’rinishi va shakli.

1)    Titul varog’i;

2)    Laboratoriya ishni mavzusi va raqami;

3)    Ishning varianti 1.6.-jadval;

4)    1-jadval shaklida registrlar tarkibi;

5)    2- jadval shaklida prossessor va xotira holati.

¹2 «PIC Simulator IDE» komandalari tizimini o’rganish

 

Mnemoniklar mashina kodiga bevosita o’tuvchi mnemonic ko’rsatgichlardan iborat. Asselmblerli instruktsiyalarning mnemoniklari, assembler direktivalari va makrochaqiruvlari minimum 2 bo’limda boshlanishi kerak. Agar huddi o’sha liniyada belgi bo’lsa u ikki nuqta yoki ikkita bo’sliq yoki bo’lmasa javval bilan ushbu belgidan ajratilishi shart.

1- jadval Arifmetik va mantiqiy instruksiyalar

 

Mnemonika

Operanda

Tasviri

Operasiya

Bayroq

Cikl

ADD 

Rd,Rr 

Otkazishsiz umumlashtirish

Rd = Rd + Rr 

Z,C,N,V,H,S 

1

ADC

Rd,Rr

Otkazishli umumlashtirish

Rd = Rd + Rr + C

Z,C,N,V,H,S

1

SUB

Rd,Rr

Otkazishsiz  hisoblash

Rd = Rd - Rr

Z,C,N,V,H,S

1

SUBI

Rd,K8

Konstantani hisoblash

Rd = Rd - K8

Z,C,N,V,H,S

1

SBC

Rd,Rr

Otkazishli hisoblash

Rd = Rd - Rr - C

Z,C,N,V,H,S

1

SBCI

Rd,K8

Otkazishli konstantani hisoblash

Rd = Rd - K8 - C

Z,C,N,V,H,S

1

AND

Rd,Rr

Mantiqiy I

Rd = Rd · Rr

Z,N,V,S 

1

ANDI

Rd,K8

Konstantali mantiqiy I

Rd = Rd · K8

Z,N,V,S

1

OR

Rd,Rr

Mantiqiy ILI

Rd = Rd V Rr

Z,N,V,S

1

ORI

Rd,K8

Konstantali mantiqiy ILI

Rd = Rd V K8

Z,N,V,S

1

EOR

Rd,Rr

Mantiqiy chiqaruvchi ILI

Rd = Rd EOR Rr

Z,N,V,S

1

COM

Rd

Pobit invertsiyasi

Rd = $FF - Rd

Z,C,N,V,S

1

NEG

Rd

Belgining o’zgarishi (qo’shimcha kod)

Rd = $00 - Rd

Z,C,N,V,H,S

1

SBR

Rd,K8

Registrda bit ni ornatish

Rd = Rd V K8

Z,C,N,V,S

1

CBR

Rd,K8

Registrda bitlarni olib tashlash

Rd = Rd · ($FF - K8)

Z,C,N,V,S

1

INC

Rd

Registr belgisini inkrementasiyasi

Rd = Rd + 1

Z,N,V,S

1

DEC

Rd

Registr belgisini diskrementasiyasi

Rd = Rd -1

Z,N,V,S

1

TST

Rd

Nol yoki manfiylikka tekshirish

Rd = Rd · Rd

Z,C,N,V,S

1

CLR

Rd

Registrni tozalash

Rd = 0

Z,C,N,V,S

1

SER

Rd

Registrni o’rnatish

Rd = $FF

None

1

ADIW

Rdl,K6

Konstanta va sozni kiritish

Rdh:Rdl = Rdh:Rdl + K6 

Z,C,N,V,S

2

SBIW

Rdl,K6

So’zdan konstantani olib tashlash

Rdh:Rdl = Rdh:Rdl - K 6

Z,C,N,V,S

2

MUL

Rd,Rr

Belgisiz sonlarni kopaytirish

R1:R0 = Rd * Rr

Z,C

2

MULS

Rd,Rr

Belgili sonlarni kopaytirish

R1:R0 = Rd * Rr

Z,C

2

MULSU

Rd,Rr

Belgili son va belgisiz sonni ko’paytirish

R1:R0 = Rd * Rr

Z,C

2

FMUL

Rd,Rr

Belgisiz kasrli sonlarni kopaytirish

R1:R0 = (Rd * Rr) << 1

Z,C

2

FMULS

Rd,Rr

Belgili sonlarni kopaytirish

R1:R0 = (Rd *Rr) << 1

Z,C

2

FMULSU

Rd,Rr

Belgili kasr son va belgisiz sonni ko’paytirish

R1:R0 = (Rd * Rr) << 1

Z,C

2

 

2-jadval Bo’linish instruksiyalari

 

Mnemonika

Operanda

Tasviri

Operasiya

Bayroq

Cikl

RJMP

k

Nisbiy o’tish

PC = PC + k +1

None

2

IJMP

Net

(Z) ga bilsovita o’tish

PC = Z

None

2

EIJMP

Net

(Z) ga bilvosita kengaygan o’tish

STACK = PC+1, PC(15:0) = Z, PC(21:16) = EIND

None

2

JMP

k

O’tish

PC = k

None

3

RCALL

k

Dasturchaning nisbiy chaqiruvi

STACK = PC+1, PC = PC + k + 1

None

3/4*

ICALL

Net

(Z) ning bilvosita chariruvi

STACK = PC+1, PC = Z 

None

3/4*

EICALL

Net

 (Z) ning bilvosita kengaygan chaqiruvi

STACK = PC+1, PC(15:0) = Z, PC(21:16) =EIND

None

4*

CALL

k

Dasturchaning chaqiruvi

STACK = PC+2, PC = k

None

4/5*

RET

Net

Dasturchadan qaytish

PC = STACK

None

4/5*

RETI

Net

Uzilishdan qaytish

PC = STACK

I

4/5*

CPSE

Rd,Rr

Teng bo’lsa solishtirish va o’tkazish 

if (Rd ==Rr) PC = PC 2 or 3

None

1/2/3

CP

Rd,Rr

Slishtirish

Rd -Rr

Z,C,N,V,H,S

1

CPC

Rd,Rr

Otishli solishtirish

Rd - Rr - C

Z,C,N,V,H,S

1

CPI

Rd,K8

Konstanta bilan solishtirish

Rd - K

Z,C,N,V,H,S

1

SBRC

Rr,b

O’tkazish agar registrdagi bit toza bo’lsa

if(Rr(b)==0) PC = PC + 2 or 3

Yo’q

1/2/3

SBRS

Rr,b

O’tkazish agar registrdagi bit o’rnatilgan bo’lsa

if(Rr(b)==1) PC = PC + 2 or 3

Yo’q

1/2/3

SBIC

P,b

O’tkazish agar portdagi bit toza bo’lsa

if(I/O(P,b)==0) PC = PC + 2 or 3

Yo’q

1/2/3

SBIS

P,b

O’tkazish agar portdagi bit o’rnatilgan bo’lsa

if(I/O(P,b)==1) PC = PC + 2 or 3

Yo’q

1/2/3

BRBC

s,k

O’tish agar SREG dagi bayroq toza bo’lsa

if(SREG(s)==0) PC = PC + k + 1

Yo’q

1/2

BRBS

s,k

O’tish agar SREG dagi bayroq o’rnatilgan  bo’lsa

if(SREG(s)==1) PC = PC + k + 1

Yo’q

1/2

BREQ

k

Otish agar teng bolsa

if(Z==1) PC = PC + k + 1

Yo’q

1/2

BRNE

k

Otish agar teng bolmasa

if(Z==0) PC = PC + k + 1

Yo’q

1/2

BRCS

k

O’tish agar o’tkazish o’rnatilgan bo’lsa

if(C==1) PC = PC + k + 1

Yo’q

1/2

BRCC

k

O’tish agar o’tkazish toza bo’lsa

if(C==0) PC = PC + k + 1

Yo’q

1/2

BRSH

k

O’tish agar tegn yoki yuqori bo’lsa

if(C==0) PC = PC + k + 1

Yo’q

1/2

BRLO

k

Kam bolsa otish

if(C==1) PC = PC + k + 1

Yo’q

1/2

BRMI

k

Minus bolsa otish

if(N==1) PC = PC + k + 1

Yo’q

1/2

BRPL

k

Plyus bo’lsa o’tish

if(N==0) PC = PC + k + 1

Yo’q

1/2

BRGE

k

Yuqori yoki teng bo’lsa o’tish (belgili)

if(S==0) PC = PC + k + 1

Yo’q

1/2

BRLT

k

Past bo’lsa o’tish (belgili)

if(S==1) PC = PC + k + 1

Yo’q

1/2

BRHS

k

Agar ichki o’tishnig bayrog’i o’rnatilgan bo’lsa

if(H==1) PC = PC + k + 1

Yo’q

1/2

BRHC

k

Agar ichki o’tishnig bayrog’ toza bo’lsa

if(H==0) PC = PC + k + 1

Yo’q

1/2

BRTS

k

O’tish agar T bayrogi o’rnatilgan bo’lsa

if(T==1) PC = PC + k + 1

Yo’q

1/2

BRTC

k

O’tish agar T bayrogi toza bo’lsa

if(T==0) PC = PC + k + 1

Yo’q

1/2

BRVS

k

O’tish agar to’ldiriosh bayrogi o’rnatilgan bo’lsa

if(V==1) PC = PC + k + 1

Yo’q

1/2

BRVC

k

O’tish agar to’ldiriosh bayrogi toza bo’lsa

if(V==0) PC = PC + k + 1

Yo’q

1/2

BRIE

k

O’tish agar uzishlarlarga ruxsat bo’lsa

if(I==1) PC = PC + k + 1

Yo’q

1/2

BRID

k

O’tish agar uzishlarlar man qilingan bo’lsa

if(I==0) PC = PC + k + 1

Yo’q

1/2

 Malumotlarga operasion kirish uchun sikllar soni malumotlarning ichki xotirasiga kirish sharti bilan korsatiladi, va tashqi OZU bilan ishlaganda korrekt bolmaydi. CALL, ICALL, EICALL, RCALL, RET va RETI instruktsiyalari uchun uchta sikl plyus ikkita siklni 16 bitli PC kontrollerlariga qoshish kerak (128KB dasturlar xotirasi). xotirasi 128 KB dan ortiq bolgan dasturlar uchun beshta sikl va yana har bir kutish uchun uchta sikl qoshing.

3-jadval Malumotlarnig uzatish instruktsiyalari

 

Mnemonika

Operandû

Opisanie

Operatsiya

Flagi

Siklû

MOV

Rd,Rr

Registrga nusxalash

Rd = Rr

Yo’q

1

MOVW

Rd,Rr

Registerlar juftini nusxalash

Rd+1:Rd = Rr+1:Rr, r,d even

Yo’q

1

LDI

Rd,K8

Konstantani yuklash

Rd = K

Yo’q

1

LDS

Rd,k

To’gri yuklash

Rd = (k)

Yo’q

2*

LD

Rd,X

Bilvosita yuklash

Rd = (X)

Yo’q

2*

LD

Rd,X+

Post-inkrementli bilvosita yuklash

Rd = (X), X=X+1

Yo’q

2*

LD

Rd,-X

Pre-dekrementli bilvosita yuklash

X=X-1, Rd = (X)

Yo’q

2*

LD

Rd,Y

Bilvosita yuklash

Rd = (Y)

Yo’q

2*

LD

Rd,Y+

Post-inkrementli bilvosita yuklash

Rd = (Y), Y=Y+1

Yo’q

2*

LD

Rd,-Y

Pre-dekrementli bilvosita yuklash

Y=Y-1, Rd = (Y)

Yo’q

2*

LDD

Rd,Y+q

Egallashli bilvosita yuklash

Rd = (Y+q)

Yo’q

2*

LD

Rd,Z

Bilvosita yuklash

Rd = (Z)

Yo’q

2*

LD

Rd,Z+

Post-inkrementli bilvosita yuklash

Rd = (Z), Z=Z+1

Yo’q

2*

LD

Rd,-Z

Pre-dekrementli bilvosita yuklash

Z=Z-1, Rd = (Z)

Yo’q

2*

LDD

Rd,Z+q

Egallashli bilvosita yuklash

Rd = (Z+q)

Yo’q

2*

STS

k,Rr

To’g’ri saqlash

(k) = Rr

Yo’q

2*

ST

X,Rr

Bilvosita saqlash

(X) = Rr

Yo’q

2*

ST

X+,Rr

Post-inkremetnli bilvosita saqlash

(X) = Rr, X=X+1

Yo’q

2*

ST

-X,Rr

Pre-dekrementli bilvosita saqlash

X=X-1, (X)=Rr

Yo’q

2*

ST

Y,Rr

Bilvosita saqlash

(Y) = Rr

Yo’q

2*

ST

Y+,Rr

Post-inkremetnli bilvosita saqlash

(Y) = Rr, Y=Y+1

Yo’q

2

ST

-Y,Rr

Pre-dekremetnli bilvosita saqlash

Y=Y-1, (Y) = Rr

Yo’q

2

ST

Y+q,Rr

Egallashli bilvosita saqlash

(Y+q) = Rr

Yo’q

2

ST

Z,Rr

Bilvosita saqlash

(Z) = Rr

Yo’q

2

ST

Z+,Rr

Post-inkremetnli bilvosita saqlash

(Z) = Rr, Z=Z+1

Yo’q

2

ST

-Z,Rr

Pre-dekrementli bilvosita saqlash

Z=Z-1, (Z) = Rr

Yo’q

2

ST

Z+q,Rr

Egallashli bilvosita saqlash

(Z+q) = Rr

Yo’q

2

LPM

Net

Dasturli xotiradan yuklash

R0 = (Z)

Yo’q

3

LPM

Rd,Z

Dasturli xotiradan yuklash

Rd = (Z)

Yo’q

3

LPM

Rd,Z+

Post-inkrementli dasturli xotiradan yuklash

Rd = (Z), Z=Z+1

Yo’q

3

ELPM

Net

Dasturli hotiradan kengaygan yuklash

R0 = (RAMPZ:Z)

Yo’q

3

ELPM

Rd,Z

Dasturli xotiradan kengaygan yuklash

Rd = (RAMPZ:Z)

Yo’q

3

ELPM

Rd,Z+

Post-inkrementli dasturli xotiradan kengaygan yuklash

Rd = (RAMPZ:Z), Z = Z+1

Yo’q

3

SPM

Yo’q

Dasturli xotiradan saqlash

(Z) = R1:R0

Yo’q

-

ESPM

Yo’q

Dasturli xotiradan kengaygan saqlash

(RAMPZ:Z) = R1:R0

Yo’q

-

IN

Rd,P

Portni o’qish

Rd = P

Yo’q

1

OUT

P,Rr

Portga saqlash

P = Rr

Yo’q

1

PUSH

Rr

Registrga malumotlarni kiritish

STACK = Rr

Yo’q

2

POP

Rd

Registrdan malumotlarni chiqarish

Rd = STACK

Yo’q

2

Malumotlarga operatsion kirish uchun sikllar soni malumotlarning ichki xotirasiga kirish sharti bilan korsatiladi, va tashqi OZU bilan ishlaganda korrekt bolmaydi. LD, ST, LDD, STD, LDS, STS, PUSH va POP instruktsiyalari uchun bitta xiklni qo’shish kerak.

4-jadval Bitlar bilan ishlash instruktsiyalari

 

Mnemonika

Operanda

Tasviri

Operatsiya

Bayroq

Cikl

LSL

Rd

Chapga mantiqiy burilish

Rd(n+1)=Rd(n), Rd(0)=0, C=Rd(7)

Z,C,N,V,H,S

1

LSR

Rd

O’ngga mantiqiy burilish

Rd(n)=Rd(n+1), Rd(7)=0, C=Rd(0)

Z,C,N,V,S

1

ROL

Rd

C orqali siklli chap tomonga burilish

Rd(0)=C, Rd(n+1)=Rd(n), C=Rd(7)

Z,C,N,V,H,S

1

ROR

Rd

C orqali siklli o’ng tomonga burilish

Rd(7)=C, Rd(n)=Rd(n+1), C=Rd(0)

Z,C,N,V,S

1

ASR

Rd

Ong tarafga arifmetik burilish

Rd(n)=Rd(n+1), n=0,...,6

Z,C,N,V,S

1

SWAP

Rd

Tetradlarning qayta joylashtirish Perestanovka tetrad

Rd(3..0) = Rd(7..4), Rd(7..4) = Rd(3..0)

Yo’q

1

BSET 

s

Bayroqni or’natish

SREG(s) = 1

SREG(s)

1

BCLR

s

Bayroqni tozalash

SREG(s) = 0

SREG(s)

1

SBI

P,b

Portda bitni o’rnatish

I/O(P,b) = 1

Yo’q

2

CBI

P,b

Portdagi bit ni tozalash

I/O(P,b) = 0

Yo’q

2

BST

Rr,b

Registrdan T ga bit ni ko’chirish

T = Rr(b)

T

1

BLD

Rd,b

T dan registrga bit ni yuklash

Rd(b) = T

Yo’q

1

SEC

Yo’q

Kochish bayrogini ornatish

C =1

C

1

CLC

Yo’q

Kochish bayrogini tozalash

C = 0

C

1

SEN

Yo’q

Manfiy raqamli bayroqni o’rnatish

N = 1

N

1

CLN

Yo’q

Manfiy raqamli bayroqni tozalash

N = 0

N

1

SEZ

Yo’q

Noldan bayroqni o’rnatish

Z = 1

Z

1

CLZ

Yo’q

Bayroqni noldan tozalash

Z = 0

Z

1

SEI

Yo’q

Uzilishlar bayrogini ornatish

I = 1

I

1

CLI

Yo’q

Uzilishlar bayrogini tozalash

I = 0

I

1

SES

Yo’q

Sonli belgili bayroqni ornatish

S = 1

S

1

CLN

Yo’q

Sonli belgili bayroqni tozalash

S = 0

S

1

SEV

Yo’q

Toldirish bayrogini ornatish

V = 1

V

1

CLV

Yo’q

Toldirish bayrogini tozalash

V = 0

V

1

SET

Yo’q

T bayrogini o’rnatish

T = 1

T

1

CLT

Yo’q

T bayrogini tozalash

T = 0

T

1

SEH

Yo’q

Ichki kochish bayrogini ornatish

H = 1

H

1

CLH

Yo’q

Ichki kochish bayrogini tozalash

H = 0

H

1

NOP

Yo’q

Operatsiya yo’q

Yo’q

Yo’q

1

SLEEP

Yo’q

Uxlash (energiya sarfini kamaytirish)

Instruktsiya tasvirini ko’ring

Yo’q

1

WDR

Yo’q

Qoriqlash taymerini orqaga burish

Instruktsiya tasvirini ko’ring

Yo’q

1

  Assembler simvollar registrini ajratmaydi.

Operandalar quyidagi turlarda bo’lishi mumkin:

Rd: Rezul’tativ (va boshlang’ich) registr – register faylida
Rr: Registrlash faylidagi boshlang’ich registr
b: Konstanta (3 bit), konstantali ibora bo’lishi mumkin
s: Konstanta (3 bit), konstantali ibora bo’lishi mumkin
P: Konstanta (5-6 bit), konstantali ibora bo’lishi mumkin
K6; Konstanta (6 bit), konstantali ibora bo’lishi mumkin
K8: Konstanta (8 bit), konstantali ibora bo’lishi mumkin
k: Konstanta (hajmi instruktsiyaga bog’liq), konstantali ibora bo’lishi mumkin
q: Konstanta (6 bit), konstantali ibora bo’lishi mumkin
Rdl:  R24, R26, R28, R30. ADIW va SBIW instruksiyalari uchun 
X,Y,Z: Bilvosita adresatsiya registrlari (X=R27:R26, Y=R29:R28, Z=R31:R30)

Assembler direktivalari (yo’nalishlari)

 

Kompilyatorda bir qator direktivalar (yo’nalishlar) bor. Ular kodga bevisota tartibda translyasiyalanmaydi. Buning o’rniga ular dasturli xotirada holatni ko’rsatish uchun, makroslarni aniqlash, xotirani boshlash uchun qo’llaniladi/

5-jadval Direktivalar ro’yxati quyidagi jadvalda keltirilgan.

Direktiva

Tasvir

BYTE

OZUga baytlarni saqlash

CSEG

Dasturli segment

DB

Flesh yoki EEPROM baytlarni aniqlash

DEF

Registrga simvolik nom berish

DEVICE

Dastur kompilyasilanadigan qurilmani belgilash

DSEG

Ma’lumotlar segmenti

DW

Flesh yoki EEPROM soz’larni aniqlash

ENDM, ENDMACRO

Makros oxiri

EQU

Doimiy tasvirni o’rnatish

ESEG

EEPROM segmenti

EXIT

Fayldan chiqish

INCLUDE

Boshqa fayli qoldirish

LIST

Listing generatsiyasini yoqish

LISTMAC

Listingdagi makroslarning aylanishing yoqish

MACRO

Makros boshi

NOLIST

Listing generasiyasini yoqish

ORG

Segmentda joylashishni ornatish

SET

Iboraning simvolik ozgaruvchan ekvivalentini

 

Barcha buyruqlar nuqta bilan boshlanadi.

Operatorlar

Kompilyatorda jadvalda sanab keltirilgan bir qator operatorlar mavjud. (jadvaldagi holatlar yuqori bo’lgani sari, operator imtiyozi shunchalik oshaveradi). Iboralar aylana qavsga olinadi, bu iboralar boshqa iboralardan oldin qavsgacha qo’yiladi.

Imtiyoz

Simvol

Tasviri

14

!

Mantiqiy rad etish

14

~

Pobitli rad etish

14

-

Minus

13

*

Ko’paytirish

13

/

Bo’lish

12

+

Summalash

12

-

Hisoblash

11

<<

Chapga burish

11

>>

O’ngga burish

10

<

dan kam

10

<=

Kam yoki teng

10

>

dan ko’p

10

>=

Ko’p yoki teng

9

==

Teng

9

!=

To’g’ri mas

8

&

Pobitli I

7

^

Pobitli ajratuvchi ILI

6

|

Pobitli ILIL

5

&&

Mantiqiy I

4

||

Mantiqiy ILI

 

 

 

 

 

¹ 3. Uzishni yaratish uchun RB0/INT ning chiqishini ishlatish

 

Bu dastur RB0/INT ning chiqish nuqtasini uzilishni yaratish uchun ishlatiladi, bunda PORT AS ning ko’rsatgichlarini o’zgartirish uchun. rb0int.asm fayli generasiyalashtiriladi, bunda Basic o’rnatma kompillyatori ishlatiladi. rb0int.hex fayli o’rnatma assemblernig qo’shgan holda generasiyalashtirilgan.

 

TRISA = 0x00  PORT A ning barcha quyi qismlarini chiqish o’rnida ishlatadi
PORTA = 0xff  'PORT A ning barcha quyi qismlarini yuqori holatga keltiradi
INTCON.INTE = 1   RB0/INT ning uzilishini yoqadi
INTCON.GIE = 1  ' End ning hamma uzilishlarini yoqadi
 On Interrupt uzilish dasturchasi
PORTA = PORTA - 1  'PORT A ga decrement ko’rsatgichi
INTCON.INTF = 0    RB0/INT ning takroriy uzilishini o’z ichiga oladi

 

 

 

 

 

 

 

 

 

 

 

1-qadam. PIC Simulyator ni ishga tushirish

 

 

2-qadam. OptionsSelect Microcontroller ni bosish

 

 

 

 

 

 

 

3-qadam. FileLoad Program ni bosish

 

 

 

4-qadam. FileLoad Program ni bosish

 

T tugmasini bosish, RB0/INT nig pastki qismi bilan bog’liq bu tizim ushbu chiqishning mantiqiy holatini yoqadi. Uzilishlar impulslarning oldingi frontida chaqiriladi. PORT A  ning ko’rsatgichi o’zgarib boraveradi.

 Modellashtirishni istalgan vaqtda to’htatilishi mumkin, bunda Simulya Stopni bosing.

7- segmentli parallel ulanishli displeyda 0 dan 99 gacha raqamlarni aks ettirish .

Bu dastur 7- segmentli parallel ulanishli 0 dan 99 gacha raqamlarni aks ettiradi  va ikkita boshqaruvchi liniyadan iborat bo’ladi, bunda multiplekasiya jarayoni TMR0 qo’llaniladi.

 

1-qadam. Mikrokontrollerni tanlash

 

2-qadam. Tools7-Segment LED Displays Panel ni bosing. Bu 7-segmentli 4-displeyli oyna ochiladi

 

3-qadam. Displey yonidagi tillarangli maydonni bosing, bular ushbu displayni yoqish/ochirish uchun belgiga ishlatiladigan chiqish nuqtasini belgilash imkonini beradi

4-qadam.
- 0 ni  kiritish, bunda RC0 chiqishini tanlang va OK ni bosing.
- 1-displey tagidagi Set up tugmasini bosing.
- Displey yonidagi tillarangli maydonni bosing, bular ushbu displeyni yoqish/o’chirish uchun belgiga ishlatiladigan chiqish nuqtasini belgilash imkonini beradi.
- 4 ni kiriting, PORT C ni tanlash uchun, keyin OK ni bosing.
- 1 ni kiritish, RC 1 dan chiqish uchun, keyin OK ni bosing.
- Hide set up ni bosing, bunda ma’lum ekran maydoni xotirada saqlanadi.
- Yaxshi tasvirni ko’rish uchun oynalarni yana ekranda o’rnating.
- Rate ultimate modellashtirish tugmasini tanlang RateUltimate (No Refresh).
 SimulationStart ni bosing. Modellashtirish boshlanadi.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

V. KEYSLAR BANKI

Mikroprotsessorlar va mikrokontrolleralr dasturiy ta’minoti.

Berilgan keys-stadining maqsadi: Tinglovchilarda mikrootsessor tizimlarida  qo‘llaniladigan uslublari bo‘yicha bilim va ko‘nikmalarni rivojlantirish, o‘tilgan mavzular bo‘yicha egallangan bilimlarini tekshirib ko‘rishdan iborat.

Kutilayotgan natijalar: O‘rganilayotgan mavzu bo‘yicha amaliy ko‘nikmalarga ega bo‘ladi; dasturlash tili va uning turlarini o‘rganadi va tahlil qiladi; muammolarni yechish uchun siqish algoritmlarining qiyosiy tahlilini o‘tkazadi; mikroprotsessorlarda qo‘llaniladigan  algoritmlarining asoslarini o‘rganadi; har bir faoliyat turi bo‘yicha tavsiyalar ishlab chiqish ko‘nikmalari shakllanadi.

Keys-stadini muvaffaqiyatli bajarish uchun tinglovchi quyidagi bilimlarga ega bo‘lishi lozim:

Tinglovchi bilishi kerak:  diskret matematika raqamli mantiqiy qurilmalarni loyixalash fanlaridan chuqur bilimlarga; dastuash algoritmlarining  qiyosiy tahlili; mikroprotsessorda qo‘llaniladigan dasturiy qurilmalarni farqi va  asoslari.

Tinglovchi amalga oshirishi kerak: mavzuni mustaqil o‘rganadi; muammoning mohiyatini aniqlashtiradi; g‘oyalarni ilgari suradi; ma’lumotlarni tanqidiy nuqtai nazardan ko‘rib chiqib, mustaqil qaror qabul qilishni o‘rganadi; o‘z nuqtai nazariga ega bo‘lib, mantiqiy xulosa chiqaradi; ma’lumotlarni taqqoslaydi, tahlil qiladi va umumlashtiradi;

Keys-stadida real vaziyat bayon qilingan. Keys-stadining ob’ekti – mikroprotsessorda qo‘llaniladigan dasturiy ta’minot,  ularni qulmaga yuklash , tuzilishi  kabi parametrlarni hisobga olgan holda ularning algoritmlari.

Keys-stadida ishlatilgan ma’lumotlar manbai: mikroprotsessor tizimlaridaga dasturiy boshqariladigan qurilmalarda  keladigan muammolar asosida olingan ma’lumotlar asosida ishlab chiqilgan.

Keys-stadining tipologik xususiyatlariga ko‘ra xarakteristikasi: mazkur keys-stadi kabinetli keys-stadi toifasiga kirib, syujetsiz hisoblanadi. Keys-stadi muammolarni taqdim qilishga, ularni hal etishga hamda tahlil qilishga qaratilgan.

Bu tashkiliy-institutsional keys-stadi, tahliliy yozishma ko‘rinishida tuzilgan.f

U tuzilmalanmagan, qisqa hajmdagi keys-stadi – texnologiya hisoblanadi. O‘quv topshirig‘ini taqdim etish usuli bo‘yicha – keys-stadi topshiriq.

Didaktik maqsadlarga ko‘ra treningli keys-stadi hisoblanadi, shuningdek bu keys-stadi amaliy mashg‘uloti davomida belgilangan mavzu bo‘yicha olingan bilimlarni mustahkamlashga mo‘ljallangan. Ushbu keys-stadi OTM Tinglovchilari uchun “Mikroprotsessor” fanida foydalanilishi mumkin.

 

 Keys-stadi: Dasturiy boshqariladigan mikroprotsessor tizimlarini yaratish usullari

Dasturiy boshqariladigan qurilmalarning tahlili shuni ko‘rsatadiki, ularni  quyidagi sinflarga bo‘lish mumkin:

1) dasturlash tillari;

2) dasturiy muxit;

3) qurilmaga yuklash jarayonlari;

4) qurilma qurish jarayonlari;

5)qurilmani boshqarish jarayonlari.

Keysdagi asosiy muammo mikroprotsessorda  qo‘llaniladigan dasturlash  uslublarining qo‘llanilish sohasiga qarab eng maqbul (optimal) variantlarini ishlab chiqishga qaratilgan.

Savollar:

1. Sizningcha ushbu holatda muammo mavjudmi va agar bor bo‘lsa u qanday muammo?

2. Ushbu vaziyatda muammoni qayd etuvchi qanday isbot-dalillarni keltira olasiz?

3. Dasturlash jarayonlari

4. Muallifning yechimi sizni qoniqtiradimi?

5. Bunday vaziyatda siz muammoni qanday bartaraf etgan bo‘lar edingiz?

 

Amaliy vaziyatni bosqichma – bosqich tahlil qilish va hal etish bo‘yicha tinglovchiga metodik ko‘rsatmalar

Keys-stadini yechish bo‘yicha individual ish yo‘riqnomasi

1. Avvalo, keys-stadi bilan tanishing. Muammoli vaziyat haqida tushuncha hosil qilish uchun bor bo‘lgan butun axborotni diqqat bilan o‘qib chiqing. O‘qish paytida vaziyatni tahlil qilishga harakat qiling.

2. Birinchi savolga javob bering.

3. Ma’lumotlarni yana bir marotaba diqqat bilan o‘qib chiqing. Siz uchun muhim bo‘lgan satrlarni quyidagi harflar yordamida belgilang:

“D” harfi – muammoni tasdiqlovchi dalillar,

“S” harfi – muammo sabablarini,

“O.O.Y.” harflari – muammoni oldini olish yo‘llari.

4. Ushbu belgilar 2,3,4 savollarga yechim topishga yordam beradi.

5. Yana bir bor savollarga javob berishga harakat qiling.

Guruhlarda keys-stadini yechish bo‘yicha yo‘riqnoma.

1. Individual yechilgan keys-stadi vaziyatlar bilan tanishib chiqing.

2. Guruh sardorini tanlang.

3. Vatman qog‘ozlarda quyidagi jadvalni chizing.

Muammoni tahlil qilish va yechish jadvali

Muammoni tasdiqlovchi dalillari

Muammoni kelib chiqish sabablari

Muallif tomonidan taklif qilingan yechim

Guruh yechimi

 

 

 

 

 

Ishni yakunlab, taqdimotga tayyorlang.

 

Auditoriyadan tashqari bajarilgan ish uchun baholash mezonlari va ko‘rsatkichlari

Tinglovchilar ro‘yxati

Asosiy muammo ajratib olinib, tadqiqot ob’ekti aniqlangan

maks. 6 b

Muammoli vaziyatning kelib chiqish sababi va dalillari aniq ko‘rsatilgan maks. 4 b

Vaziyatdan chiqib ketish harakatlari aniq ko‘rsa- tilgan

maks. 10 b

Jami maks. 20 b

 

 

 

 

 

 

Auditoriyada bajarilgan ish uchun baholash mezonlari va ko‘rsatkichlari

Guruhlar ro‘yxati

Guruh faol

 

maks. 1 b

Ma’lumotlar ko‘rgazmali taqdim etildi

maks. 4 b

Javoblar to‘liq va aniq berildi

 

maks. 5 b

Jami

 

maks.

10 b

1.                 

 

 

 

 

2.                 

 

 

 

 

 

8-10 ball – “a’lo”, 6-8 ball – “yaxshi”, 4-6 ball – “qoniqarli”,              0-4 ball – “qoniqarsiz”.

 

IV. O‘qituvchi tomonidan keys-stadini yechish va tahlil qilish varianti

Keys-stadidagi asosiy muammo: Keysdagi asosiy muammo raqamli televidenieda qo‘llaniladigan siqish uslublarining qo‘llanilish sohasiga qarab eng maqbul (optimal) variantlarini ishlab chiqishga qaratilgan.

Muammoni tasdiqlovchi dalillar: Muammoli vaziyatni tahlil qilishga harakat qilamiz. Qo‘llanilish sohasiga ko‘ra mikroprotsessorda dasturlash jarayonlari algoritmlarini aniqlaymiz.

·                   Assembler dasturiy ta’minoti;

·                   C dasturiy ta’minoti ;

·                   C++ dasturiy ta’minoti;

·                   Java dasturiy ta’minoti.

Muammoli vaziyatning kelib chiqish sabablari: Mikroprotsessor tizimlarini loyixalashtirishda yuzagakeladigan muammolarda turli xil dasturiy muxitlarning turlichaligidadir. Xar bir muxit o‘z dasturiy tillariga va ularning interfeysiga bog‘liq.

Muallif o‘z taklifida muammoni oldini olishda quyidagi yo‘llarini ko‘rsatib bergan:

Birinchi navbatda dasturiy muxitlarning farqi va ularni mikroprotsessor tizimlarini yaratishdagi muammolarini bartaraf etilishi va tanlanishi.Yaratilgan dasturni tizimga qo‘llay olinishi.

TATU Telekommunikatsiyada boshqaruv tizimlarining apparat va dasturiy ta’minoti kafedrasida mazkur muammoli vaziyatni hal qilish chora tadbirlari sifatida maxsus virtual laboratoriya ishlari yaratilgan. Ya’ni tinglovchilarga kalendar reja asosida ushbu laboratoriya mashg‘ulotlari muntazam ravishda olib borilmoqda.

Mazkur vaziyatdan kelib chiqib, olib boriladigan muntazam izlanishlar va tadqiqotlar natijasi o‘laroq tasvir signallarini siqishda Veyvlet o‘zgartirish (VO‘) usuli eng optimali ekanligi aniqlandi.

 

Yakuniy xulosa

Muammoning yechimi: Mikroprotsessor tizimlarini yaratishda ishlashga qulay bo‘lgan dasturlash tili va muxitlari ko‘p bo‘lganligi sababali vaqt kerak bo‘ldai. Shu sababli lay muxit tanlanierak bo‘ldai..

 

Keys-stadi o‘qitish texnologiyasi

O‘quv mashg‘ulotining texnologiyasi modeli

Mashg‘ulot vaqti-2 soat

Tinglovchilar soni: 25 –30 ta gacha

Mashg‘ulot shakli va turi

Amaliy-bilimlarni mustahkamlash va ko‘nikma va malakalarni shakllantirish bo‘yicha amaliy mashg‘ulot

O‘quv mashg‘ulot rejasi

1. Tinglovchilar bilimlarini faollashtirish maqsadida blis - so‘rov o‘tkazish.

2.Keys-stadi mazmuniga kirish. Muammoni va uni yechish vazifalarini aniq ifoda etish. 3.Keys-stadini guruhlarda yechish.

4. Natijalar taqdimoti va muhokamasini o‘tkazish.

5.Yakuniy xulosa chiqarish. Erishilgan o‘quv natijalariga ko‘ra Tinglovchilar faoliyatini baholash

O‘quv mashg‘ulotining maqsadi: Mikrprotsessor tizimlarini yaratish.

Pedagogik vazifalar:

- keys-stadi vaziyati bilan tanishtirish, muammoni va uni yechish vazifalarini ajratishni o‘rgatish;

- muammoni yechish bo‘yicha harakatlar algoritmini tushuntirish;

- siqish algoritmlarini qiyosiy tahlil etishni tushuntirish.

- raqamli televidenieda eng optimal variantni tanlashni o‘rgatish

- mantiqiy xulosa chiqarishga ko‘mak berish

O‘quv faoliyatining natijalari:

- keys-stadi mazmuni bilan oldindan tanishib chiqib, yozma tayyorgarlik ko‘radi;

- vaziyatga qarab muammoni va uni yechish bo‘yicha vazifalarni ta’riflaydi;

- muammoni yechish bo‘yicha aniq vaziyatlarning ketma – ketligini aniqlaydi:

- siqish algoritm turlarini o‘rganadi;

- ularni qiyosiy tahlil qila oladi;

- raqamli televidenie uchun modulyatsiyaning optimal variantini tanlaydi;

- muammoli vazifalarni yechishda nazariy bilimlarini qo‘llaydi;

- muammoni aniqlab, uni hal qilishda yechim topadi;

- yakuniy mantiqiy xulosalar chiqaradi.

O‘qitish metodlari

Keys-stadi, aqliy hujum, insert, munozara, amaliy usul

O‘quv faoliyatini tashkil etish shakllari

O‘quv materiali, tinglovchiga uslubiy ko‘rsatmalar, taqdimot, flipchart

O‘qitish vositalari

Individual, frontal, jamoa, guruhlarda ishlash

O‘qitish sharoiti

Guruhlarda ishlashga mo‘ljallangan, auditoriya

Qaytar aloqaning yo‘l va vositalari

Blis-so‘rov, taqdimot, kuzatuv

 

 

1-ilova

Blis-so‘rov savol va javoblari

 

¹

Savol

Javob

1.

Mikroprotsessor turlari.....?

Mikroprotsessor razryadlar soni.

2.

Dasturlash turlari

1) assembler dasturlash tili;

2) S dasturlash tillari;

.

3.

Dasturiy muxitlar

·                   AVR studio ;

·                   Cod vision AVR;

 

 

 

 

 

 

 

 

 

 

 

 

 

VI. MUSTAQIL TA’LIM MAVZULARI

 

Mustaqil ishni tashkil etishning shakli va mazmuni

 

Tinglovchi mustaqil ishni muayyan modulning xususiyatlarini hisobga olgan holda quyidagi shakllardan foydalanib tayyorlashi tavsiya etiladi:

- me’yoriy xujjatlardan, o‘quv va ilmiy adabiyotlardan foydalanish asosida modul mavzularini o‘rganish;

- tarqatma materiallar bo‘yicha ma’ruzalar qismini o‘zlashtirish;

- avtomatlashtirilgan o‘rgatuvchi va nazorat qiluvchi dasturlar bilan ishlash;

 - maxsus adabiyotlar bo‘yicha modul bo‘limlari yoki mavzulari ustida ishlash;

 -tinglovchining kasbiy faoliyati bilan bog‘liq bo‘lgan modul bo‘limlari va mavzularni chuqur o‘rganish.

Tavsiya etilayotgan mustaqil ta’lim mavzulari:

-Raqamli qurilmalarni vizual muhitlarda loyihalash.

-Mikroprotsessorlar asosida boshqaruv qurilmalarini yasash.

-Mikrokontrollerlar asosida boshqaruv qurilmalarini yasash.

-Mikroprotsessorlar asosida o‘lchov qurilmalarini yasash.

-Turli interfeyslar orqali aloqa qiluvchi qurilmalarni yasash.

-Mikrokontrollerlar asosida “aqqli” qurilmalarni loyihalash va yasash.

-Ob’ektlarni monitoring qilish tizimlarini loyihalash.

-Qurilmalarni monitoring qilish tizimlarini loyihalash.

-Energiyani avtomatik monitoring qilish tizimlarini loyihalash.

-Qurilmalarni testlash.

-Mikroprotsessorlar asosida ma’lumot uzatish tizimlarini loyihalash.

 Mikrokontrollerlar asosida ma’lumot uzatish tizimlarini loyihalash.

 

VII. GLOSSARIY

 

Termin

O‘zbek tilidagi sharhi

Ingliz tilidagi sharhi

ASI

Asinxron seriyali interfeys

Asynchronous Serial Interface or ASI, is a streaming data format which often carries an MPEG Transport Stream (MPEG-TS).

ADC

Analog raqamli o‘zgartirgich. Signalni raqamli holatga o‘tkazuvchi qurilma

analog-to-digital converter (device converting an analog voltage

into a binary number).

ADSL

Asimmetrik raqamli abonent liniyasi (keng polosali aloqa tarmog‘i bo‘lib 20 Mb/s tezlikkacha ma’lumot uzatish qobiliyatiga ega)

Asymmetric Digital Subscriber Line (system exploiting the

high-frequency transmission capabilities of a telephone line to

enable an asymmetric broadband link method (up to 20Mb/s for the

downlink and 1Mb/s for the uplink with ADSL2+).

COFDM

Kanalli kodlashga mos

COFDM is basically OFDM with error protection (coding - C), which

always precedes OFDM.

CI

Umumiy interfeys

The CI is an interface at the receiver end for a broadcaster-specific, exchangeable CA plug-in card. This interface allows scrambled programs from different broadcasters to be de-scrambled with the same hardware despite differences in CA systems.

CIF

 

 

CPU

Markaziy protsessor

Central Processing Unit

CS

Boshqaruvchi xotira qurilmasi

Control Storage

DDS

Raqamli ma’lumotlar oqimi

Digital Date Stream

ISDN

Integrallangan xizmatlar raqamli tarmog‘i) - Kanallar kommutatsiyasiga ega raqamli aloqa tarmoqlari turi.

 

Integrated Services Digital Network

ISO

Standartlash bo‘yicha Xalqaro tashkilot

 International Organization for Standartization

ITU

Elektroaloqa Xalqaro Ittifoqi (MSE). Bu tashkilotning vazifalaridan biri – xalqaro standart hisoblanadigan tavsiyalarni tayyorlash.

International Telecommunication Union

MMDS

O‘ta yuqori chastotali taqsimlashning ko‘pkanalli tizimi

Multichannel Microvave Distribution System

MISC

Minimal komandalarni terish bilan hisoblash

Minimum Instruction Set Computing

PCMCIA

Shaxsiy kompyuter xotirasini kengaytirish vositalarining standarti

Personal Computer Memory Card International Association

PID

Protokol identifikatsiyasi

Protocol Identification. The PID is a 13 bit value in the TS header. It shows that a TS packet belongs

to a substream of the transport stream.

QAM

Kvadratur amplitudali modulyatsiya

Quadrature Amplitude Modulation. QAM is the modulation method used for transmitting a transport stream

via cable. The channel coding is performed prior to QAM.


VIII. ADABIYoTLAR RO‘YXATI

 

Maxsus adabiyotlar:

 

1.

Mayorov S.A, Kirillov V.A, Pribluda A.A. Vvedenie v mikroEVM. L.: Mashinostroenie. Leningr. otd-nie, 1988. – 304s.

2.

Jmakin A.P. Arxitektura EVM.-SPb.: BXV-Peterburg, 2006. -320 s.

3.

Presnuxin L.N. Mikroprotsessorû: V 3 kn. Kn. 2: Sredstva sopryajeniya. Kontroliruyuùie i upravlyayuùie sistemû: Ucheb.dlyatexn. Vuzov /V.D. Verner, N.V. Vorobev, A.V. Goryachev i dr.; Pod red. L.N. Presnuxina. – Mn.: Vûsh.shk., 1987.-303 s.

4.

Maksimov N.V, Partûka T.L., Popov I.I. Arxitektura EVM i vûchislitelnûx sistem: Uchebnik. M.: FORUM: INFRA-M, 2005. 512 s.

5.

Peskova S.A., Kuzin A.V. Arxitektura EVM i vûchislitelnûx sistem: Uchebnik. M.: FORUM: INFRA-M, 2006. 352 s.

6.

Silker B.Ya. Organizatsiya EVM i sistem / B.Ya. silker, S.A. Orlov. SPb.: Piter, 2007.- 672 s.

7.

Tanenbaum E.  Arxitektura kompyutera. 5-ye izd. — SPb.: Piter, 2007. — 844 s.

8.

Yunusov J.Yu., Abasxonova X.Yu. Raqamli qurilmalar va mikroprosessor tizimlari .  O‘quv qo‘llanma –Toshkent, Iqtisod , 2010- 256 v.

9.

Zarubin A.A. Mikroprotsessornoe programmnoe upravleniya. Arxitektura IXA. Metodicheskie rekomendatsii k prakticheskim zanyatiyam. SPbGUT.- SPb, 2004.

10.

Kalabekov B.A. sifrovûe ustroystva i mikroprotsessornûe sistemû. –M.: Goryachaya liniya-Telekom., 2003.- 336 s.

11.

Grebeshkov A.Yu. Mikroprotsessornûe sistemû i programmnoe obespechenie v sredstvax svyazi: Ucheb.posobie.- Samara, PGUTI, 2009.-298 s.

12.

Novikov Yu.V., Skorobogatov P.K. Osnovû mikroprotsessornoy texniki.-  M.: INTUIT, 2010, 440 s.

13.

Kustarev P.V. Spesializirovannûe protsessorû. Protsessorû dlya vstraivaemûx prilojeniy: Konspekt leksiy.-SPb.: SPbGIMO(TU).- 2002.- 30 s.

14.

Belov A.V. Sozdaem ustroystva na mikrokontrollerax.- SPb.: Nauka i texnika, 2007.- 304 s.

15.

Xartov V.Ya. Mikrokontrollerû AVR. Praktikum dlya nachinayuùix.- M.: MGTU im. N.E.Baumana, 2007.- 240 s.

16.

Golubsov M.S. Mikrokontrollerû AVR: ot prostogo k slojnomu.- M.: SOLON-Press, 2003.- 288 s.

17.

Vasilev A.Ye. Mikrokontrollerû. Razrabotka vstraivaemûx prilojeniy: Ucheb. Posobie. SPb: SPbGPU, 2003.- 210 s.

18.

Griùenko V.I., Ladûjenskiy, Moataz Yunis Osnovnûe napravleniya razvitiya sovremennûx setevûx protsessorov.- DonTU, Informatika, kibernetika i vûchislitelnaya texnika,  ¹14, 2011.- s.123-127.

19.

Griùenko V.I., Ladûjenskiy Yu.V. Modelirovanie marshrutizatorov na mnogoyadernûx setevûx protsessorax.- DonTU, Informatika, kibernetika i vûchislitelnaya texnika,  ¹12, 2010.- s.169-176.

20.

Moataz Yunis,  Griùenko V.I., Ladûjenskiy Yu.V Obobùennaya arxitektura setevogo protsessora. – Inaormatika i kompyuternûe texnologii-2011. –DonTU,  s.386-391.

21.

Setevûe protsessorû firmû Intel – Komponentû i texnologii, ¹8, 2003.

22.

Griùenko V.I., Ladûjenskiy, Moataz Yunis Perspektivnûe arxitekturû i tendensii razvitiya sovremennûx setevûx protsessorov- 4- Mejdunarodnaya nauchno-texnicheskaya konferensiya « Modelirovani i kompternaya grafika», DonTU,  2011. s-93-9.

23.

ARM System Developer's Guide: Designing and Optimizing System Software . Dominic Sums and Chris Wright. The Morgan Kaufmann Series in Computer..., Apr 8, 2004.

24.

Computers as Components, Third Edition: Principles of Embedded Computing System Design. Marilyn Wolf. The Morgan Kaufmann Series... ,May 23, 2012

25.

PIC Microcontroller. Muhammad Ali Mazidi, Rolin D. McKinlay and Danny Causey, Feb 16, 2007.

 

Internet resurslar:

1.     www.ZiyoNET.uz - Uzbekistan Respublikasi axborot-ta’lim portali.

2.     www.intuit.ru

3.     http://www.embeddedtux.org/

4.     http://www.oreilly.com/catalog/belinuxsys/

5.     http://www.oreilly.com

6.     http://elks.sourceforge.net/,

7.     http://www.ericsson.com/about/blipnet/

8.     http://www.myzaurus.com

9.     www.appinf.com

10.           http://www.cygwin.com.

11.           pahsiung@cs.ccu.edu.tw

12.           www.books-shop.com