Bir kristalli mikroprotsessorlarning ichki strukturasi, ishlash prinsipi va
komandalar sistemasi bilan tanishishni 8 razryadli K580BM80A mikroprotsessori
misolida kơrib chiqamiz.
K580BM80A mikroprotsessori quyidagi asosiy qismlardan iborat:
•
8-razryadli arifmetik-mantiqiy qurilma (ALU);
•
Belgilar registri (Registr priznakov), komandalar bajirilish jarayonida
natijaning belgilari (nolga teng yoki teng emas (Z), musbat yoki manfiy (S), juft yoki
toqlik belgisi (P), ơtish razryadi qiymati (S), oraliq ơtish razryadi qiymati (AC))ni
ơzida saqlaydi;
•
akkumulyator (Akkumulyator);
•
axborotni
ikkilik koddan ikkilik-
ơnlik kodga ơzgartiruvchi ơnlik
korreksiya sxemasi (Sxema desyatichnoy korrektsii);
•
komandaning operatsiya kodini ifodalovchi birinchi baytini saqlovchi
registr (Reg.komand);
•
komanda deshifratori (D/SH komand);
•
programmani bajarish jarayonida axborotni qabul qiluvchi, vaqtincha
saqlovchi va uzatuvchi umumiy foydalanish registrlari (B, C, D, E, H, L - 8 razryadli
registrlar (ular 16 razryadli BC, DE va HL registrlar juftliklariga
birlashishi xam
mumkin), stek k
ơrsatgichi (UC), navbatdagi komanda adresini saqlovchi komanda
schetchigi (SK));
•
programmist murojaat qilishi mumkin bơlmagan, ma`lumotlarni
vaqtincha saqlovchi buffer registrlari), Z, W
va PSW registrlari;
•
ALU va registrlar ishlashu uchun boshqarish signallari ketma-ketinligini
xosil qiluvchi sinxronlash va boshqarish sxemasi;
•
16 razryadli adresni saqlovchi bufer registri;
•
8 razryadli ma`lumotlarni mikroprotsessorga kiritish/chiqarish buferi;
•
akkummulyator, ALU va umumiy foydalanish registrlari orasida
ma`lumotlarni ikkiyoqlama yơnalishda uzatuvchi mul`tipleksor.
Bundan tashqari mikroprotsessor 16 razryadli adres buferi A(15-0) va 8
razryadli ma`lumotlar buferi D(7-0), 4 ta kirish (RESET, READY, INT, HOLD) va
6 ta chikish boshkarish signallari (SYNC, DBIN, READY, WAIT, INTE, HLDA)
ga ega.
Sinxronlash va boshkarish sxemasi komanda va operandlarni tanlash, ALUni
ishlashini
boshqarish, kiritish/chiqarish qurilmalarini sinxronlash va boshqarish,
mikroprotsessor ishida kutish rejimini tashkil qilish va xoti
raga tơg’ridan-tơg’ri
murojaat qilish rejimida mikroprotsessorni sistema shinasidan ajratish vazifalarini
bajaradi.
Mikroprotsessor ishlash prinsipini tushinish uchun unda komanda
bajarilish jarayonini kơrib chikamiz:
-
bajarilishi lozim bơlgan komanda adresi CKda saqlanadi va shu adres
bơyicha mikroprotsessor xotiradan komanda kodini birinchi baytini komanda
registriga oladi;
-
komanda deshifratori komanda uzunligini (bir, ikki yoki uch bayt),
operandlarni qaerdan olish lozimligini va ular ustida
qanday operatsiya bajarish
lozimligini aniqlaydi;
-
komanda deshifratoridan olingan axborotga mos ravishda sinxronlash
va boshqarish sxemasi operandlarni registrlardan yoki xotiradan olishni, komanda
kodiga mos ravishda arifmetik yoki mantiqiy operatsiya bojarilishini, komanda
uzunligiga mos ravishda uning ikkinchi va uchinchi baytlarini (ikki va uch baytli
komandalar uchun) xotiradan olashni, xamda boshqarishni navbatdagi komandaga
uzatishni amalga oshiruvchi sinxronlash va boshqarish signallari bilan
mikroprotsessorning barcha qurilmalarini ta`minlaydi.
Programma komandalarining bajarilish tartibini mikroprotsessorning natija
belgilari registrida xosil bulgan “c” (Carry)- o’tish razryadi, “S” (Signum) –
natijaning ishora razryadi, “Z” (Zero) – natijaning nolga teng yoki teng emasligi
belgisi, “P” (Parity) – natijadagi birlar
sonining juftligi belgisi, xamda “Ac”
(Auxiliary Carry)
– oraliq (natija baytida kichik tơrtlikdan katta tơrtlikka) o’tish
razryadi xolati belgilari aniqlaydi.
Quyidagi shartlar bajarilganda nati
janing belgilarini kơrsatuvchi triggerlar
xolati ơzgaradi:
-
akummulyatordagi ma`lumot chapga yoki ơngga “c” ơtish razryadi
ishtirokida surilganda, qơshish operasiyasi bajarilganda va ayirish operasiyasida eng
katta razryaddan qarz olinganda;
-
natija nolga
teng bơlganda “Z” trigger “1” qiymatni oladi, aks xolda “0”
qiymatini oladi;
-
natijadagi “1” lar soni juft bơlganda “P” triggeri “1” qiymatni oladi;
-
natija manfiy bơlsa (akummulyatorning katta razryadi birga teng
bơlsa), “S” trigger “1” xolatiga ơtadi;
-
natijaning kichik tơrtligidan katta tơrtligiga ơtish razryadi bơlsa, “Ac”
triggeri “1” xolatiga ơtadi.
Programmada tarmoqlanishlar xosil qilish
uchun yuqoridagi triggerlar
xolatini xisobga olgan xolda boshqarishni uzatish uchun mikroprotsessorning
komandalar sistemasida bir qator komandalar nazarda tutilgan.