Автор работы: Пользователь скрыл имя, 05 Мая 2013 в 11:35, курс лекций
Машиналық командаларды орындайтын және басқа да құрылғылардың қызметін координациялайтын процессорлық құрылғыларды, әдетте командалар жүйесінің процессоры (Instruction Set Processor, ISP) немесе жәй процессор деп атайды. Біз процессордың ішкі құрылымын талдаймыз және ол таңдауды, дешифрацияны орындауды және программа командаларын өңдеуді қалай орындайтындығына тоқталамыз. Компьютердің процессорлық құрылғысын әдетте орталық процессор деп атайды (Central Processing Unit, CPU). «Орталық» термині бұрын қолданылған компбютерлерге байланысты айтылған, өйткені ол кездегі компьютерлерде бір ғана команда процессоры қолданылған, ал қазіргі компьютерлік жүйелерде бірнеше процессорлар қолданылады, демек ол термин ескірген деп айтуымызға да болады.
IF (interrupt flag) үзілісі мүмкіндігі жалаушасы және трассировка жалаушасы TF (trap flag) стектік жадта регистр құрамы сақталғаннан кейін үзіліс кезінде алынып тасталады.
9.3.-сурет. Қорғалған режимдегі үзіліс дескрипторы
Үзіліске қарасты жалаушалар
9.4-суретте жалаушалар регистрі құрамы көрсетілген.
9.4.-сурет. Жалаушалар регистрі форматы
Жалауша орнатуда IF микропроцессордың 1NTR шығуына түсетін сигнал үзіліске алып келеді, ал IF жалаушаны алып тастағанда бұл сигнал үзіліске алып келмейді. Трассировка (TF — I) жалаушасын орнатқанда әр бір команда орындалғаннан кейін 1 типті үзіліс болады(int ih). Сондықтан программаның орындалуының бұл режимі қадамдық деп атайды.
Үзіліс жалауасы STI және CLI командаларымен орнатылады және тазаланады сәйкесінше.
Аппараттық үзіліс
Препроцессор екі қорытуға ие. Әр түрлі екі сигнал аппаратты үзіліс үшін: маскаланбайтын үзіліс(NMI — non-maskable irrupt) және маскаланатын үзіліс (INTR — interrupt request). INTR сигналын активтендіргенде процессор сырттан үзіліс векторын алатын INTA үзілісін бекітеді.
INTR сигналы бойынша кез келген үзіліс векторы таңдалуы мүмкін. Алайда ереже бойынша 20Н—FFH типіндегі үзіліс пайдаланылады.
Негізгі әдебиеттер: [1] – 31- 800 б, [2] – 15-600 б
Бақылау сұрақтары:
10-Дәріс. Жадқа тікелей кіру
Енгізу-шығарудың жадқа тікелей кіруді қолдану арқылы соңғы жүйесі немесе ағылшынша айтқанда DMA (direct memory access) көрсетілген. DMA қолдану арқылы енгізу-шығару әдісі микропроцессор қатысуынсыз жадқа тікелей кіруді қамтамасыз етеді, яғни микропроцессордың уақытша өшуі бойында. Бұл жылдамдығы DMA бақылаушысы немесе жүйедегі жад элементтнрімен шектелген енгізу-шығару құрылғылары және жад арасындағы мәліметтер алмасуға мүмкіндік береді. Өткізу жылдамдығы DMA қолданғанда может достигать 32—40 Мбайт/с –қа жетуі мүмкін.
DMA өткізулері
көптеген мақсаттарда
Дискілердегі есте сақтау құрылғыларына иілгіш, қатты және оптикалық дискілердегі жинағыштар, ал видеожүйелерге цифралық және аналогтық мониторлар кіреді.
Жадқа тікелей кіру процесінің негіздері
Жадқа тікелей кіру процесін сұрау және бекіту үшін микропроцессор базасындағы жүйе үшін екі басқрушы сигнал қолданывлады.
HOLD (hold) сигналы
— бұл микропроцессор үшін
оның бір атты қорытуында кіру
сигналы, ол жадқа тікелей
HLDA (hold acknowledge) сигналы DMA процессінің орындалуы үшін жүйелік шинаның көрсетілуін бекітетін микропроцессордың шығу сигналы боп табылады.
Негізгі амалдар
Жадқа тікелей кіру көмегімен микропроцессоды қаолданбай мәліметтер алмасу әдетте енгізу-шығару құрылғысы мен жад арасында жүзеге асады. DMA процедурасы орындаған кезде оқу командасы бойынша жадтан енгізу-шығару құрылғысына мәліметтер өткізу, ал жазу командасы бойынша мәліметтер өткізудің кері амалы жүзеге асады, яғни енгізу-шығару құрылғысынан жадқа өтеді. Екі амалда да жадты және енгізу-шығару құрыфлғысын басқару бір мезгілде жүреді, сондықтан олар үшін жүйеде оқу және жазу үшін жеке басқару сигналдары бар. Бұндай басқару шинасы сигналдарының арнаулы құрылымы жадқа тікелей кіру көмегімен мәліметтер алмасуға мүмкіндік береді. DMA процедурасы орындалуы кезінде мәліметтерді өткізу үшін жадтан енгізу-шығару құрылғысына оқу амалы кезінде MEMR (MRDC) және IOW (IOWC) сигналдары бір мезгілде жүреді, ал жазу амалы кезінде MEMW (MWTC) және IOR (IORC) сигналдары активтендіріледі. Басқару шинасының мұндай сигналдары Intel тобы микропроцессорларының барлық жүйелерінде бар.
Мәліметтерді өткізу жылдамдығы жад жұмысы жылдамдығымен немесе DMA бақылаушысы жылдамдығы көмегімен анықталады, бұл жиі DMA өткізулерін басқарады. Жад жылдамдығы 100 нс болған жағдайда, онда ақпарат алмасу DMA көмегімен 1/100 нс немесе 10 МГц жиілікпен болады. Егер DMA бақылаушысы жұмысында максимальды 5 МГц жиілікте 100 нс жылдамдықтағы жад қолданылады.Онда мәліметтер берудің максимальды жиілігі 5 МГц құрайды, яғни DMA бақылаушы жадтан гөрі жайырақ жұмыс істейді. Көп жағдайда DMA бақылаушы алмасу кезінде жүйе жылдамдығын DMA көмегімен бәсеңдетеді.
Принтермен жұмыс істегенде жадқа тікелей кіру
10.3 – суретте
сұлба принтермен жұмыс
Мәліметтерді ағымдық сегменттен баспаға шығару процедурасы 13.3.-мысалда келтірілген. Бұл процедура DMA 8237А-5 бақылаушысын программалайды, бірақ іс жүзінде өзі ештеңені баспаға шығармайды. Баспаны DMA бақылаушысы басқаруында жадтан мәліметтер алушы принтер орындайды.
10.3.-сурет. Жадқа тікелей кіру процедурасы үшін принтера интерфейсі
10.1.-мысал. Процедура жадқа тікелей кіру қолдануымен мәліметтерді принтерге шығару
Жадқа тікелей кіру қолдануымен мәліметтерді принтерге шығару және 10.3.-суретте көрсетілген схема процедурасы;
Шаырылатын параметрлер:
ВХ = баспа үшін мәліметтер орналасқан орын ауыстыру ;
DS = баспа үшін мәліметтер орналасқан сегмент;
СХ = баспа үшін байт саны;
= 0010 LATCHB EQU ЮН ; адрес U3
- 007С CLEAR_F EQU 7CH ; триггерлер Firs/Last
= 0076 СНЗ_А EQU 76H ; ағын адрес регистры 3
= 0077 СНЗ_С EQU 77H 3 ағын қабатын санау регистры
= 007В MODE EQU 7BH режимдер регистры
= 0078 CMMD EQU 78H басқару регистры
= 007F MASKS EQU 7FH маскалр регистры
= С079 REQ EQU 7 9H сұраныстар регистры
0000 PRINT PROC FAR USES AX CX BX
0003 661 B8 00000000 MOV EAX,0
0009 8C D8 MOV AX,DS программалау
000B 661 Cl E8 04 SHR EAX,4 адрес U3
000F 50 PUSH AX
0010 661 Cl ES 10 SHR ЕАХ,16
0014 Е6 10 OUT LATCHB,AL
0016 58 POP AX адрес регистрын программалау
0017 E6 76 OUT CH3_A,AL
0019 8А С4 MOV AL,AH
001В Еб 76 OUT CH3_A,AL
001D SB Cl MOV AX,CX санау регистрын программалау
001F 48
DEC AX
сөздер санаудың мәнін
020 36 77 OUT CH3_C,AL
0022 8А MOV AL,AH
0024 Е6 77 OUT CH3_C,AL
0026 ВО OB MOV AL,0BH программалау
0028 Е6 7В OUT MODE,AL режимдер регистры
002A BO 00 MOV AL, 0 мәліметтерді блокты өткізуге рұқсат
002С Еб 78 OUT CMMD,AL "жад-жад"-тан басқа
002Е ВО 07 MOV AL,7 канал 3 ағынын маскалау
0030 Е6 7F OUT MASKS, AL
RET
0036 PRINT ENDP
Жалпы шинаны функционалдау. Күрделі компьютерлік жүйелер алдында көптеген мәселелер тұрғаны сонша, кейбр жүйелер жұмысты орындау үшін бір микропроцессордан көбірек қолданады. Бұл мультипроцессорлық (multiprocessing) немесе көппроцессорлық жүйе деп аталады. Кейде мұндай жүйелерді таратылған (distributed) деп те атайды. Бірден артық есептер орындайтын жүйелер көп есепті (multitasking) деп аталады. Бірден көп микропроцессор қолданатын жүйелер үшін басқарудың сәйкес әдісі жасалып қолданылуы керек. Таратылған, көппроцессорлы және көпесепті жүйелерге әр бір микропроцессор екі шинаға кіру мүмкіндігіне ие:
- локалдық шинаға (local bus);
- жалпы шинаға (shared bus).
10.4.-сурет. Бөлінген және локальды шиналар блок-схемасы
Негізгі әдебиеттер: [1] – 31- 800 б, [2] – 15-600 б
Бақылау сұрақтары:
11-Дәріс. Арифметикалық қосалқы процессор және кеңейтілген ММХ. Қосалқы процессордың арифметикалық форматтық мәліметтер. 80х87 Қосалқы процессор архитектурасы. Қосалқы процессор командасы. Программалық қосалқы процессор.
Арифметикалық Intel қосалқы процессор 8087, 80287, 80387SX, 80387DX, және де қосалқы процессор 80487SX, 80486SX процессормен бірге жұмыс істейді. Микропроцессор құрамына 80486DX—Pentium 4 жоғарғы арифметикалық қосалқы процессор енгізілген. Бірақ кейбір IBM және Cyrix фирмасы шығарған 80486 микропроцессор моделінде қосалқы процессор болмайды. Кейбір қосалқы процессор моделінің байланысы, негізінен аппараттың ерекше орталық процессормен; программалық модель және сонымен қатар олардың системалық командасы өзгерілмеген. 80x87 қосалқы процессоры базалық арифметикалық операцияны қамтамасыз етеді (қосу, кеміту, бөлу және көбейту), квадраттық түбірден шығару, логарифмді есептеу және тангенс және арктангенстің жуық мәні. Қосалқы процессормен жұмыс жасаған кезде, келесі типтік мәліметтерді пайдаланамыз: 16-, 32- және 64-биттік бүтін мән, екілік – ондық мәліметтер ( BCD) 18 ондық санымен, сонымен қатар 32-, 64- және 80-биттік жуық нүктеде анық.. 80х87 қосалқы процессор орталық процессорға қарағанда тез жұмыс істейді. Pentium Pro—Pentium 4 процессорінде қосалқы процессор өнімділігіне raov және FCOMI жаңа нұсқа қосылсада өзгерген жоқ.
Жүйелік команданың мультимедиялық кеңейтілуі немесе ММХ (multimedia extension) Pentium—Pentium 4 процессоры қосымша есептеу құрылымымен бірге арифметикалық қосалқы процессордің регистры қолданылады..
Арифметикалық сопроцессордың форматтық мәліметтері
Бүтін белгі
Форматық белгі
бүтін санның қосалқы процессоры
мен орталық процессор
11.1-сурет. 80х87 қосалқы процессоры бүтін белгі форматта: :бүтін сөз (а), қысқа бүтін сөз (б), ұзын бүтін(в).
Ескре кету керек, оң сан түзу екілік кодта нөлдік мәннің сол жақ битте, ал теріс – қосымша кодта бірлік мәнінде сақталады.
Диапазон 16-бит бүтіннен — -32,768 дейін +32,767. Қысқа бүтін диапазон ±2 х 10+9, ал ұзын бүтін -±9х10+18 құрайды.
Берілген бүтін сан сақталады және олар DW директивасы нақты істелінеді ( 16-биттік бүтін үшін), DD (қысқа бүтін үшін).
Берілген жуық нүкте нақты сан және ANSI форматта жоғарғы шығару системасын қабылдайды.
11.2-сурет. 80х87 қосалқы процессор форматы арифметикалық мәліметтің жуық нүктесі:
Нақты сандық форматты өңдеу
Ондық сандарды келесі түрде беріледі:
- Екілік санды бірыңғайлау.
- Аралас реттік санды есептеп шығару.
4. Санды формат мәліметтінде жуықтап сақтау.
1ОО.251О ондық санды нақты дара санға өзгерту мысалын қарастырайық (32-бит).
11.1-мысал. 100,25 ондық санды нақты дара санға өзгерту
Қадам Нәтиже
1 100.25 - 1100100.01
2 1100100.01 = 1.10010001 х 26
реттік = 10000101,
мантисса = 10010001000000000000000
Аралас реттік санды үшінші қадамда 110 (6 — бұл екілік санды бірыңғайлау) есептеп шығарғанға тең және аралас 011 111 11 (7FH), бұл 10000101 (85Н) құрайды. Аралас реттік санды дара нақты 7FH санға тең, дәлдік — 3FFH, ал кеңейтілген дәлдік — 3FFFH.