Цикл ұрлау - Cycle stealing

Жылы есептеу, дәстүрлі түрде цикл ұрлау қол жеткізу әдісі болып табылады компьютер жады (RAM) немесе автобус процессорға кедергі жасамай. Бұл ұқсас жадқа тікелей қол жеткізу (DMA) енгізу-шығару контроллерлеріне оперативті жадының CPU қатысуынсыз оқуға немесе жазуға мүмкіндік беруі үшін. Белгілі бір процессордың немесе шинаның уақытының ақылды пайдаланылуы, егер сыртқы құрылғылар CPU жұмысына белсенді қатыспайтын жадқа қол жеткізсе және кез-келген ықтимал процессорлық қақтығыстарға дейін операцияларды аяқтаса, CPU-ді кідіртусіз толық жылдамдықпен жұмыс істеуге мүмкіндік береді. Мұндай жүйелер шамамен екі портты жедел жады жоғары жылдамдықты жедел жад есебінен. Көптеген жүйелер процессорды тоқтатады ұрлау, оны басқа атаумен DMA формасына айналдыру.

Мысалы, жеке командалық және деректерді жады банктері бар жүйе, егер екі қатынасу бір уақытта басталса, процессор нұсқаулық банкінен нұсқау алып жатқанда сыртқы құрылғыларға деректер банкіне бір жадқа қол жеткізуге мүмкіндік береді. A жадыны басқару блогы маңызды емес, мысалы Zilog Z80 Келіңіздер M1 желіні команданы деректерге қол жетімділіктен ажырату үшін қолдануға болады, сондықтан процессор командалық-RAM немесе ROM-дан команданы оқып жатқанда, жедел жады басқа құрылғыларға процессордың өңделуіне кедергі келтірмей қол жетімді.

Қазіргі заманғы сәулет

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

Бұл термин қазіргі кездегі компьютерлік архитектурада аз кездеседі (66-100 МГц-ден жоғары), мұнда әртүрлі сыртқы автобустар мен контроллерлер әдетте әртүрлі жылдамдықпен жүреді, ал орталық процессорлар енгізу-шығару шиналарымен тығыз байланыста болмайды.

Компьютерлік жүйелердегі мысалдар

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

The IBM 1130 «Цикл ұрлау» - бұл шынымен DMA, өйткені жадқа қол жеткізу кезінде CPU сағаты тоқтатылады. Бірнеше енгізу-шығару контроллері осылайша жедел жадқа қол жеткізеді. Олар белгіленген басымдылық схемасы бойынша өзін-өзі төрелік етеді. Көптеген контроллерлер жүйенің нұсқауларды орындау қабілетіне әсерін азайту үшін жедел жадқа қол жеткізуді әдейі жылдамдатады, ал басқалары, мысалы, графикалық бейне адаптерлер жоғары жылдамдықта жұмыс істейді және жүйенің жұмысын баяулатуы мүмкін.

1130 циклді ұрлау тұжырымдамасы CPU бағдарламасына енгізу-шығару құрылғысында операцияны бастауға, содан кейін енгізу-шығару құрылғысы жұмыс істеп тұрған кезде магистральдық бағдарламаны жалғастыруға мүмкіндік береді. Осылай жұмыс істейтін әрбір енгізу-шығару құрылғысы қажет болған кезде процессордан цикл алады (ұрлайды).

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

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

Сияқты циклды ұрлау машинада өнімділіктің нашарлауының негізгі себебі болды Синклер QL, қайда, экономикалық себептерге байланысты, видео Жедел Жадтау Құрылғысы Болмаған қосарлы қол жетімділік. Демек, M68008 Процессорға жад шинасына кіруге тыйым салынды ZX8301 «шебер контроллер» жадыға қол жеткізіп отырды, және ұқсас жылдамдықта ұқсас процессорларды қолданатын машиналармен салыстырғанда машина нашар жұмыс жасады.

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

  1. ^ IBM 1130 цикл ұрлау тұжырымдамасы