Жадыға тікелей қол жеткізуді ұйымдастыру
Бірінші параметр деректерді беру бағытын анықтайды: ОП-дан VU-ға немесе керісінше. Әдетте жад бастапқы нүкте ретінде қабылданады, сондықтан оқу ОС-дан мәліметтерді оқу және оны шығару құрылғысына беру деп түсініледі, ал жазу - енгізу құрылғысынан мәліметтерді қабылдау және ОС-ға жазу. Сұраныс түрі контроллердің басқару логикалық схемасында сақталады.
Әдетте CPDP-ге бірнеше VU қосылуы мүмкін және IUV мекенжайы олардың қайсысы алдағы деректер алмасуына қатысу керектігін көрсетеді. Бұл адрес RCAP басқару логикасында сақталады.
Үшінші параметр – бастапқы ұяшықтың адресі – контроллердің адрестік регистрінде (РА) сақталады. Әрбір сөзді жібергеннен кейін ҚБ мазмұны автоматты түрде біреуге ұлғаяды, яғни ОС келесі ұяшығының адресін құрайды.
Сөзбен берілген блок өлшемі контроллердің деректер есептегішіне (SD) енгізіледі. Әрбір сөзді жібергеннен кейін SD мазмұны автоматты түрде біреуге азаяды. Жарық диодтың нөлдік күйі деректер блогын тасымалдау аяқталғанын көрсетеді.
Баптандырудан кейін ақпаратты жіберу процесін кез келген уақытта бастауға болады. Биржаның бастамашылары процессор ретінде де, WU ретінде де әрекет етуге құқылы. Енгізу/шығаруды іске қосқысы келетін құрылғы тиісті сигнал беру арқылы контроллерге хабарлайды. Мұндай сигналды алған PDSC орталық процессорға «РАП сұрау» сигналын береді. Жауап ретінде орталық процессор адрестер шинасы (IIIA) мен деректер шинасында (SD) басқару операцияларын жүзеге асыратын сигналдар жіберілетін адрес пен деректер шинасын, сондай-ақ басқару шинасы желілерін шығарады. Оларға, ең алдымен, ChtZU, ZpZU, Vyv, Vv жолдары және 111 А мекенжайы бойынша мекенжайды беру желісі жатады.
Әрі қарай, процессор контроллерге «DMA растау» сигналымен жауап береді, бұл соңғысы үшін оған жүйелік шинаны басқару құқығы берілгенін білдіреді және сіз деректерді тасымалдауды бастай аласыз.
Блоктың әрбір сөзін тасымалдау процесі екі кезеңнен тұрады.
Оқу операциясы орындалған кезде (OP → VU), бірінші кезеңде APSC адрес шинасына RA мазмұнын (ағымдағы ОП ұяшығының мекенжайы) шығарады және ChTM сигналын жасайды. ОП ұяшығынан оқылған сөз деректер шинасына орналастырылады. Екінші кезеңде KDPP SHA-ға шығару құрылғысының адресін орнатады және деректер шинінен VU-ге сөзді тасымалдауды қамтамасыз ететін Vv сигналын жасайды.
Жазу операциясын орындау кезінде (WU -> OP) CPDP алдымен деректер шинасына енгізу құрылғысының адресін береді және Vv сигналын тудырады, ол арқылы енгізілген деректер деректер шинасына жіберіледі. Екінші кезеңде CPDP SHA-ға деректер енгізілетін ОП ұяшығының мекенжайын қояды және ZpZU сигналын жасайды. Бұл сигналмен SD-дан ақпарат ОС ұяшығына жазылады.
Оқу кезінде де, жазу кезінде де жіберілген сөз контроллердің деректер регистрінде (RD) буферленеді. Бұл ОП және ВУ жұмысының жылдамдығындағы айырмашылықтарды өтеу үшін қажет, осыған байланысты Vv және Vv сигналдары VU-дан дайындықты растау алынған кезде ғана контроллермен жасалады. Буферлеу бірінші кезеңнен кейін SD-дан сөздің РД-ға енгізілуіне, ал екіншісіне дейін РД-дан деректер шинасына қайтарылуына байланысты.
Әрбір сөзді тасымалдағаннан кейін басқару логикасы РА мазмұнына біреуін қосады (ОС келесі ұяшығының адресін қалыптастырады) және SD мазмұнын біреуге азайтады (тасымалдалған сөздерді санайды).
Тасымалдау аяқталған кезде (SD-де нөлдік мәнмен) RCAP «РАП сұрау» сигналын жояды, оған жауап ретінде орталық процессор «RAP-ны растау» сигналын жояды және жүйелік шинаны қайтадан бақылауға алады, яғни, процессор енгізу/шығару процесіне тек жіберудің басында және соңында қатысады.
RAP тиімділігі блокты тасымалдау кезінде орталық процессор мен RAP арасындағы жүйелік шинаны бөлу қалай жүзеге асырылатынына байланысты. Мұнда үш режимнің бірін пайдалануға болады:
1)блокты тасымалдау;
2)циклді өткізіп жіберу;
3)мөлдір режим.
Блокты тасымалдауда CRAP жүйе шинасын тасымалдау басталған сәттен бастап бүкіл блокты тасымалдау аяқталғанға дейін толығымен түсіреді. Осы уақыт ішінде процессордың автобусқа кіру мүмкіндігі болмайды.
Циклды өткізіп жіберу режимінде PDMA бір шина циклі үшін әрбір сөзді тасымалдағаннан кейін жүйелік шинаны босатып, оны осы уақытқа дейін процессорға береді. CPDP әлі де PU дайын болғанша күтуі керек болғандықтан, бұл процессорға осы жағдайды тиімді басқаруға мүмкіндік береді.
Мөлдір режимде PDMA жүйелік шинаға тек орталық процессор қажет болмаған кезде ғана қол жеткізе алады. Бұл процессордың ең тиімді жұмысын қамтамасыз етеді, бірақ деректер блогын тасымалдау жұмысын айтарлықтай баяулатуы мүмкін. Мұнда көп нәрсе шешілетін мәселеге байланысты, өйткені ол процессордың автобусты пайдалану қарқындылығын анықтайды.
ЕТЖ ұйымдастыру принциптері. PDP арнасын ұйымдастырудың құрылымдық схемасы суретте көрсетілген. 6.30. Жадқа тікелей қол жеткізу процессордың ағымдағы машина циклы аяқталғаннан кейін беріледі. Үзілістен айырмашылығы, HDPE арнасы бойынша алмасу бағдарламаның қатысуынсыз жүзеге асырылады, сондықтан процессордың жұмыс регистрлерінің мазмұны сақталады және HDPE режиміне кіру үшін уақыт қажет емес (процессордың жұмыс регистрлерінің мазмұнын сақтау қажет емес).
Орталық процессор контроллерді бағдарламалауды жүзеге асырады, оны қажетті жұмыс режиміне орнатады және контроллердің күйін бақылайды. HDPE арнасы арқылы мәліметтер алмасу кезінде процессор өшіріліп, контроллер жад пен сыртқы құрылғы үшін алмасуды басқару сигналдарын шығарады. VU жадымен байланыс адрес шиналары мен жүйелік интерфейс деректері арқылы жүзеге асырылады. Орталық процессор мен ВУ шиналарын ортақ пайдалану мәселесі екі жолмен шешіледі: "циклді ұстап алу" және (пакеттік немесе үздіксіз) процессорды құлыптау режимімен алмасу режимін ұйымдастыру.
Циклді ұстап тұру режимінде алмасу жадқа тікелей қол жеткізу үшін жеке циклдар (такталар) бөлінген кезде бір редуктормен жүзеге асырылады, яғни деректерді (сөздерді) беру бағдарламаның орындалуымен қиылысады.
Циклді басып шығарумен алмасудың бір нұсқасы-процессор жадпен деректерді алмаспайтын циклдарды пайдалану. Мұндай соққылар PDP контроллеріне белгілі болуы керек. Кейбір процессорлар процессордың осы циклде жадты қолданатындығын көрсететін арнайы сигнал шығарады. Мысалы, мұндай сигнал (VMA) Motorola 6800 микропроцессорын шығарады. Intel 8080 процессоры ешқашан сыртқы жадқа қол жеткізу үшін 4-ші және 5-ші машина циклдарын пайдаланбайды. Сонымен қатар, әр командалық цикл М — іріктеу командасының машина циклынан басталады. Процессор қабылдаған осы машина циклінің пәрмендерін декодтау кезінде жүйелік шиналар қолданылмайды. Осы уақытта жүйелік шиналарды бір сөзді PDP арнасы арқылы беру үшін беруге болады.
Жадқа тікелей қол жеткізу арнасын ұйымдастырудың жалпы принципі алмасуды ұйымдастырудың қарастырылған әдісінің пікірі процессорлардың жұмысын төмендетпейді, алайда:
=> қосымша аппараттық шығындарды талап етеді және тек кездейсоқ, тұрақты емес берілістерді жүзеге асыруға мүмкіндік береді;
= > айырбастау жылдамдығы NS жылдам болады, айырбастау қарқыны тұрақты емес, өйткені әр түрлі командалардың циклдарының ұзақтығы әртүрлі, сонымен қатар, егер PDP циклі процессордың цикліне сәйкес келетін аралықтан аспаса, бағдарламаның орындалуын баяулатуы мүмкін.
Болес - бұл "циклды түсіру" әдісінің нұсқасы, онда процессор адрес пен деректердің жүйелік шиналарынан мәжбүрлі түрде ажыратылады. Оны іске асыру екі желіні енгізумен байланысты: шиналарды (Жхв) басып алуға сұрау сигналдарын беру және басып алуды растау (Жхв) үшін. ZZHV сигналын PDP контроллері жасайды.
Zzhv сигналын алғаннан кейін процессор:
=> келесі команданың аяқталуын күтпестен орындалуын тоқтатады;
= > = > жүйелік интерфейске CCD басып алуды растау сигналын береді;
= > адрес шиналарынан және деректерден ажыратылып, жоғары дәрежелі Шина формаларына ауысады.
Циклді басып шығарумен алмасудың бір нұсқасы-процессор жадпен деректерді алмаспайтын циклдарды пайдалану. Мұндай соққылар PDP контроллеріне белгілі болуы керек. Кейбір процессорлар процессордың осы циклде жадты қолданатындығын көрсететін арнайы сигнал шығарады. Мысалы, мұндай сигнал (VMA) Motorola 6800 микропроцессорын шығарады. Intel 8080 процессоры ешқашан сыртқы жадқа қол жеткізу үшін 4-ші және 5-ші машина циклдарын пайдаланбайды. Сонымен қатар, әр командалық цикл М — іріктеу командасының машина циклынан басталады. Процессор қабылдаған осы машина циклінің пәрмендерін декодтау кезінде жүйелік шиналар қолданылмайды. Осы уақытта жүйелік шиналарды бір сөзді PDP арнасы арқылы беру үшін беруге болады.
Жадқа тікелей қол жеткізу арнасын ұйымдастырудың жалпы принципі алмасуды ұйымдастырудың қарастырылған әдісінің пікірі процессорлардың жұмысын төмендетпейді, алайда:
=> қосымша аппараттық шығындарды талап етеді және тек кездейсоқ, тұрақты емес берілістерді жүзеге асыруға мүмкіндік береді;
= > айырбастау жылдамдығы NS жылдам болады, айырбастау қарқыны тұрақты емес, өйткені әр түрлі командалардың циклдарының ұзақтығы әртүрлі, сонымен қатар, егер PDP циклі процессордың цикліне сәйкес келетін аралықтан аспаса, бағдарламаның орындалуын баяулатуы мүмкін.
Пайдаланылған әдебиеттер
1. https://wm-help.net/
2. https://ru.wikipedia.org/
3. http://perscom.ru/
4. https://www.sciencedirect.com/
5. Intel 64 and IA-32 Architectures Software Developer’s Manual (в пяти томах)
Достарыңызбен бөлісу: |