Микропроцессорлық жүйенің желілері
ҚАЗАҚСТАН РЕСПУБЛИКАСЫНЫҢ БІЛІМ ЖӘНЕ ҒЫЛЫМ МИНИСТРЛІГІ
"Алматы энергетика және байланыс институты"
коммерциялық емес акционерлік қоғамы
О.Т. Шанаев
МИКРОПРОЦЕССОРЛЫҚ ЖҮЙЕЛЕР
Оқу құралы
Алматы 2009
Оқу құралында жеке микропроцесорлар мен микропроцессорлық жинам микросхемаларының негізіндегі дәстүрлі микропроцессорлық жүйелердің құрама бөліктері, олардың құрылым принциптері және жүйе жұмысының ұйымдастырылу тәртібі қарастырылады. Микропроцессорлардың негізгі құрылым принциптері мен жұмыс тәртібін түсіндіру ыңғайлылығы үшін нақтылы Intel 8085 микропроцессоры алынып, оның ішкі құрама блоктары мен оның іс-әрекетін басқарушы бағдарламаларының құрылу негіздері қарастырылады.
Оқу құралында берілген материалдарды оқып, игеру арқылы студенттердің микропроцессорлық жүйелердің құрылым принциптері және олардың жұмыс тәртібі жөніндегі білімі қалыптастырылып, олардың оқу барысының келесі кезеңдерінде оқылатын арнайы пәндерді игеруіне немесе өздік жұмыс арқылы білім деңгейін көтеруіне қажетті түпнегіз қаланады.
Кіріспе
Микропроцессорлық жүйе (МПЖ) - есептеу, бақылау-өлшеу және басқару жұмыстарын атқаруға арналған, микропроцессор негізіндегі электрондық құрылымдардың жалпылама аталымы. Олардың кіріс және шығыс сигналдары ретінде аналогты сигналдар, жеке цифрлық сигналдар, цифрлық кодтар, цифрлық кодтардың тізбелері пайдаланалуы мүмкін. Микропроцессорлық жүйелерде информацияның өңделуі және сақталуы цифрлық түрде жүргізілетіндіктен, оларға түсетін аналогты кіріс сигналдары аналогты-цифрлы түрлендіргіштер (АЦТ) арқылы таңдалым кодтарының тізбесіне түрлендіріледі, ал олардан өңдеу нәтижесі ретінде шығарылатын аналогты шығыс сигналдары таңдалым кодтарының тізбесінен цифрлы-аналогты түрлендіргіштер (ЦАТ) арқылы қалыптастырылады.
Дәстүрлі цифрлық жүйелердегі информацияның өңделу және сақталу алгоритмдері жүйенің схемақұралысымен ғана анықталады, яғни өзге алгоритмге көшу үшін, оны жүйе құрамындағы электрондық буындардың өзара байланыстарын өзгерту арқылы немесе осы буындарды олардың қойылған мәселеге жарамды түріне ауыстыру арқылы ғана жүзеге асыруға болады немесе жүйенің құрылымын толықтай өзгертуге тура келеді. Әрине, бұндай түрлендірімдердің жүйе жұмысының барысында жүргізілуі мүмкін емес, ол үшін жүйені қайтадан құру керек болады. Тап осы себептен дәстүрлі цифрлық жүйе көбіне "тастай логикалы" жүйе деп аталады.
Кез келген "тастай логикалы" жүйе - алдын ала белгілі жеке бір мәселені (немесе бірнеше жуық мәселелерді) шешуге арналған арнайы жүйе. Оның күмәнсіз артықшылықтары бар.
Біріншіден, арнайы жүйенің құрамында артық элемент болмайды, оның әрбір элементі міндетті түрде толыққанды жұмыс атқарады (әрине, жүйенің дұрыс жобаланғандығында).
Екіншіден, арнайы жүйеде информацияны өңдеу алгоритмінің орындалу жылдамдығы оның құрамындағы логикалық элементтердің тезәрекеттілігімен және олардың нақтылы байланыстарымен ғана анықталатындықтан, бұндай құрылымдар аса жоғары тезәрекеттілікті қамтамасыз ете алады.
"Тастай логикалы" жүйенің басты кемістігі - әрбір жаңа мәселені шешу үшін оны қайта құру қажеттігінде. Ал бұл - ұзаққа созылатын және қосымша қаражат талап ететін жұмыс.
Бұл кемістіктен құтылу үшін, кез келген мәселеге жеңіл икемделетін жүйе құру керек, яғни, оның шешілетін мәселеге байланысты (құрылымды өзгертпестен) жұмыс алгоритмін (жүйенің жұмыс бағдарламасын) ауыстыру мүмкіншілігі болу керек. Бұндай "икемді логикалы" жүйе әмбебап немесе бағдарламалы жүйеге айналады, микропроцессорлық жүйе тап осындай жүйеге жатады.
Әмбебаптылыққа жету ұтылысқа да әкеледі. Аса күрделі мәселені шешу үшін (қарапайым мәселелермен салыстырғанда) көбірек құрал қажет болады. Сондықтан, әмбебап жүйенің құрамы ең күрделі мәселенің шешілу мүмкіндігін қамтамасыз ету керек. Әрине, қарапайым мәселенің шешілуі кезінде бұндай жүйенің бар мүмкіншілігі толыққанды пайдаланылмайды. Сонымен қатар, әмбаптылық жүйенің (оның құрылымының күрделенуіне байланысты) тезәрекеттілігін де төмендетеді.
Сонымен, келесі қорытындыға келуге болады: "тастай логикалы" жүйелер, аса жоғары тезәрекеттілікті қажет қылатын, өңделу алгоритмдері қарапайым түрдегі, жеке мәселелерге ыңғайлы келеді. Ал әмбебап, бағдарламалы жүйелер, онша тезәрекеттілікті қажет қылмайтын, шешетін мәселелері жиі өзгеріп отыратын және олардың шешілуі күрделі алгоритмдермен жүзеге асырылатын жағдайларға ыңғайлы келеді.
Бірақ соңғы кезде шығарылған әмбебап (микропроцессорлық) жүйелердің тезәрекеттілігі аса (бірнеше дәрежеге) көтерілді және бұндай жүйелерге арналған микросхемалардың шығарылым көлемінің ұлғаюы олардың құнының төмендеуіне әкелді. Оның нәтижесінде "тастай логикалы" жүйелердің қолданылым аймағы тарыла түсті. Бұған қоса, қазіргі заманда ішкі құрылымын бағдарламалы тәсілмен өзгерту арқылы жеке мәселелерді шешуге тез икемделетін микросхемалардың шығарылым технологиясы аса қарқынды дамып келе жатыр. Олар "тастай логикалы" жүйелердің тезәрекеттілігі мен бағдарламалы жүйелердің икемділігін біріктіреді. "Бағдарламалы құрылымдарға" қатысты мәселелер бұл оқу құралында қарастырылмайды.
Оқу құралының бірінші бөлімінде микропроцессорлық жүйелердің құрылым принциптері және олардың құрама бөліктері туралы жалпы түсініктер берілген.
Оқу құралының екінші бөлімінде, жалпы түрде микропроцессорлық жүйе (МПЖ) деп аталатын, есептеу, бақылау-өлшеу және басқару жүйелерінің құрамындағы басты құрылғысы саналатын, микропроцессорлардың құрылымы мен олардың іс-әрекеттерінің ұйымдастырылу тәртібін тиянақты таныстыру мақсатында қарапайым Intel 8085 микропроцессорының ішкі құрылымы мен оның микропроцессорлық жүйенің құрамында қолданылу принциптері және олардың жұмысын басқарушы бағдарламалардың Ассемблер тілінде құрастырылу жолдары қарастырылады.
Оқу құралының үшінші бөлімінде микропроцессорлық жүйенің құрама бөліктері біріктірілген жеке кристалды микроконтроллерлердің құрылым принциптері мен олардың құрамына енгізілетін ерекше буындар қарастырылады.
Оқу құралы автордың өндіріс және педагогика саласындағы көпжылдық тәжірибесінің негізінде жазылды.
1 Микропроцессорлық жүйелер
1.1 Микропроцессорлық жүйелер жөніндегі жалпы түсініктер
Микропроцессорлық жүйелер (МПЖ) - есептеу, өлшеу-бақылау, басқару жүйелерінде және тұрмыстық техникада кеңінен қолданылатын, микропроцессорлар негізіндегі күрделі электрондық құрылымдардың жалпылама аталымы. Микропроцессорлық жүйелерді құрып, олармен жұмыс істеуді үйрену үшін оларға байланысты басты ұғымдарды түсініп, олардың жалпы құрылым принциптерін, оларды аппаратты және бағдарламалы жобалау тәсілдері мен жаңа заманғы жетілдірім жолдарын толық игеру керек болады.
Микропроцессорлық жүйенің негізін қалаушы және оның жұмысын жүзеге асырушы басты бөлігі - микропроцессор (МП). Микропроцессор жүйеде информацияның өңделуін және оның жан-жақты жіберілімін бағдарлама арқылы басқарады. Қойылған мәселенің орындалу тәртібі сәйкесті бағдарламаға, яғни алынған микропроцессорға тән (яғни, оның командалар жүйесіне кіретін) командалар тізбесінің орындалуы арқылы жүзеге асырылады.
Микропроцессорлық жүйенің құрамына микропроцессормен қатар жады құрылымдары және информацияны енгізушығару құрылғылары (сыртқы құрылғылар) кіреді. Микропроцессорлық жүйелердің бастапқы даму барысында олар, микропроцессорлық жинам түрінде біріктірілген, бірге қолдануға жарамды (яғни, архитектурасы мен электрлік параметрлері бойынша сәйкестірілген) микросхемалар негізінде құрылды.
Микропроцессорлық жүйелердің (МПЖ) құрылым негізіне үш принцип алынған:
модулдік;
магистралдік;
микробағдарламалы басқару.
Модулдік принцип жүйенің, қызметі жағынан толықтай бітірілген, жеке блоктар негізінде құрылатындығын сипаттайды. Әрбір модулдің, оны іске қосатын, рұқсат кірісі болады; ондағы сигнал деңгейі модулдің үшінші (жоғары кедергілі) жағдайын, яғни оның жүйе желісіне қосылуқосылмауын басқарады.
Магистралдік принцип МПЖ-нің қызмет блоктарының арасындағы байланыс сипатын анықтайды; жүйенің барлық блогы өзара жүйелік магистраль (жүйе желісі) арқылы жалғанады және сол арқылы информация алмасады.
Микробағдарламалы басқару принципі жүйе бағдарламасын құруға пайдаланылатын командалардың әрбіреуінің қарапайым операциялар - микрокомандалар (информация жіберілімі, арифметикалық операциялар, ығыстырымдар және т.б.) арқылы жүзеге асырылу мүмкіндіктерін сипаттайды.
Қазіргі заманда микропроцессорлық жүйелер, негізінде (80% шамасында), олардың қажетті қызмет бөліктері технологиялық тәсілмен құрамына енгізілген, микроконтроллерлерді пайдалану арқылы құрылады. Микропроцесорлар мен микропроцессорлық жинам микросхемаларының негізіндегі дәстүрлі микропроцессорлық жүйелер (олардың құрылу және реттелу процесінің күрделілігіне байланысты) қазіргі заманда сирек шығарылады. Микропроцессорлық жүйелердің бұл түрі, негізінде, өндірісте шығарылатын қалыпты микроконтроллерлердің қойылған талапқа сай сипаттамаларды қамтамасыз ете алмайтын жағдайында ғана құрылады.
Бұл тарауда микропроцессорлық жүйелердің құрылым принциптері мен жұмыс режимдері, құрама буындары мен олардың өзара байланыстарының жүзеге асырылым жолдары және олардың қазіргі заманғы құрылым және шығарылым түрлері жөнінде жалпы түсініктер беріледі.
1.1.1 Микропроцессорлық жүйенің орталық процессоры
Кез келген микропроцессорлық жүйенің орталық буыны - микропроцессор (Microprocessor), яғни жүйедегі информация өңделуі мен оның жан-жақты жіберілуі түгелдей осы микропроцессордың басқаруымен жүзеге асырылады. Микропроцессорлық жүйенің өзге буындары қосалқы қызметтер атқарады, олар: информацияны сақтау (оның ішінде басқару информациясын да, яғни жұмыс бағдарламасын да), сыртқы құрылғылармен байланыс, пайдаланушымен байланыс және т.б. Сонымен, процессор арифметикалық (қосу, алу және т.б.), және логикалық (ығыстыру, салыстыру, кодтарды жасыру және т.б.) функциялардың орындалуын, кодтардың уақытша сақталуын (оның ішкі регистрлерінде), кодтардың микропроцессорлық жүйенің құрама буындары арасында жіберілуін және т.б. жұмыстарды жүзеге асырады. Процессор орындайтын, бұндай қарапайым операциялардың саны жүздеген болуы мүмкін.
Процессор операцияларды тізбелеп (яғни, бірінен соң бірін, кезектеп), орындайды. Әрине, кейбір операцияларды параллель орындайтын процессорлар да бар, қатар істеуші бірнеше процессордан құрылған көппроцессорлы жүйелер де кездеседі, бірақ олар ерекше жағдайлар. Бір жағынан қарастырғанда, операциялардың тізбелі орындалуы информация өңделуінің кез келген күрделі алгоритмін жалғыз процессор арқылы жүзеге асыруға мүмкіндік береді. Бірақ, екінші жағынан, операциялардың тізбелі орындалуы жүйенің жұмыс алгоритмінің орындалу ұзақтығын оның күрделілігіне тәуелді қылады, яғни күрделі алгоритмдер қарапайым алгоритмдерге қарағанда баяуырақ орындалады. Өңделуші информация ағымын микропроцессорлық жүйенің жалғыз буыны - микропроцессор арқылы өткізу керек болғандықтан, оның тезәрекеттілігі онша жоғары болмайды. Дәстүрлі цифрлық жүйеде информация ағымының параллель орындалуын ұйымдастыру қиын емес, бірақ ол үшін схеманы күрделендіруге тура келеді.
Микропроцессордың кезекті мезетте қандай операция орындайтындығы басқару информациясымен, яғни бағдарламаның кезекті командасымен анықталады. Командалар (нұсқамалар) жинамы түріндегі бағдарламадағы әрбір команданың нақтылы кодын ажырату арқылы процессор осы мезетте не істеу керектігін біледі.
Процессордың орындай алатын командалары оның командалар жүйесін құрады. Процессордың командалар жүйесінің құрылымы мен көлемі оның тезәрекеттілігін, икемділігін, пайдаланылу ыңғайлылығын анықтайды. Командалар жүйесі, микропроцессордың түріне байланысты, жеке мәселелерді ғана шешуге икемделген (арнайы процессорларда) немесе алуан түрлі мәселелерді шешуге (әмбебап процессорларда) бағытталған болуы мүмкін. Команда кодтарының разряд саны әртүрлі болуы мүмкін (бір байттан бірнеше байтқа дейін). Командалардың орындалу ұзақтығы әртүрлі, сондықтан командалар жинамы түріндегі жеке бағдарламаның түгелдей орындалу ұзақтығы бағдарламадағы командалар санына ғана емес, онда қандай командалардың пайдаланылғандығына да тәуелді болады.
Командалардың орындалуын қамтамасыз ету үшін процессордың құрамына келесі буындар енгізілген, олар: жалпы қызмет регистрлерінің жинағы, арифметикалық-логикалық құрылғы (АЛҚ, ALU - Arithmetic Logic Unit), арнайы регистрлер, мультиплексорлар, буферлер және т.б. қызмет буындары. Микропроцессор буындарының жұмысы процессордың жалпы сыртқы тактілік сигналдары арқылы сәйкестіріледі.
Микропроцессорлық жүйені құрушының процессордың ішкі құрылымы жөнінде, оның нақтылы кіріс сигналдарына және басқару кодтарына жауап ретінде қандай операция орындайтыны және қандай шығыс сигналдарын шығаратындығы туралы толық түсінігі болу керек. Олармен қатар, ол міндетті түрде, процессордың командалар жүйесін, оның жұмыс режимдерін және процессордың сыртқы әлеммен байланыс тәртібін (яғни, дерек алмастыру хаттамасын) білу керек.
1.1.2 Микропроцессорлық жүйенің байланыс жүйесі
Дәстүрлі байланыс құрылымында жүйе құрамындағы әрбір құрылғы өзінің сигналдары мен кодтарын өзге құрылғыларға тәуелсіз, жеке байланыс жолдары арқылы жібереді. Бұл жағдайда жүйедегі байланыс жолының саны да, ондағы дерек алмастыру хаттамасы да (шешілетін мәселеге байланысты) әртүрлі болады.
Микропроцессорлық жүйелердің құрамындағы әртүрлі құрылғылардың арасындағы дерек алмастырылу хаттамаларының әмбебаптылығы мен қарапайымдылығын қамтамасыз ету үшін желілік байланыс жүйесі деп аталатын құрылым қолданылады.
Желілік байланысты жүйелерде құрылғылар арасындағы сигналдардың барлығы да бір жолдармен, бірақ әртүрлі уақыт мезеттерінде жіберіледі (ол кезектелімді жіберілім деп аталады). Жіберілімнің екі бағытта да жүзеге асырылуы мүмкін (ол екібағытты жіберілім деп аталады). Нәтижесінде байланыыс жолдарының саны қысқарады және дерек алмастырылу тәртіптері (хаттамалары) қарапайымдалады. Сигналдардың немесе кодтардың жіберілетін жолдарының тобы желі (Bus) деп аталады.
Желілік байланыс құрылымында желіге қосылған құрылғылардың барлығының да дерек жіберуі немесе оны қабылдауы нақтылы тәртіппен (желі арқылы дерек алмастырылу хаттамасы бойынша) жүзеге асырылады.
Желілік байланысты жүйелер, негізінде, үш жағдайлы (3S, 3-state) шығысты микросхемалар арқылы құрылады. Ол микросхемалардың сәйкесті шығыстарын біріктіріп, кезектелімді немесе қосбағытты жолдар алуға мүмкіндік береді.
3S шығысты микросхемалардың қолданылымы кезінде жолға қосылған бір микросхеманың ғана шығыстары жандандырылып, ал өзгелерінің шығыстары үшінші (жоғарыкедергілі) жағдайында болуы қамтамасыз етілу керек.
Қалыпты микропроцессорлық жүйенің құрамына кіретін негізгі құрылғылар (1.1-сурет):
жүйеде информацияның өңделуін және оның жан-жақты жіберілімін жүзеге асыратын орталық процессор (ОП);
жүйенің жұмыс бағдарламаларын сақтауға арналған тұрақты жады (ROM - Read Only Memory);
жүйе жұмысына қажетті деректерді сақтауға арналған қызмет жадысы (RAM - Random Access Memory);
микропроцессорлық жүйенің сыртқы құрылғылармен байланысын қамтамасыз етуші енгізушығару құрылғылары мен олардың сәйкесті интерфейстері.
1.1 Сурет
Микропроцессорлық жүйенің құрамындағы құрылғылардың барлығы ортақ жүйе желісі арқылы біріктілген (ол жүйе магистралі немесе байланыс арнасы деп те аталады). Жүйе магистраліне негізгі үш информациалық желі кіреді, олар:
адрес желісі АВ (Address Bus);
дерек желісі DB (Data Bus);
басқарым желісі СВ (Control Bus).
Дерек желісі - жүйе модулдерінің арасында дерек алмастырылуын қамтамасыз етуші, негізгі желі. Дерек желісі, оның деректерді екі бағытта да жіберуін қамтамасыз етуі керек болғандықтан, ол әрқашан екібағытты болады.
Адрес желісі - жадыға (немесе сыртқы құрылғыларға) нақтылы бағытталған байланысымды қамтамасыз етуші желі.
Магистралдың байланыс жолдарының толық санын кеміту үшін көбіне адрес желісі мен дерек желісін кезектестіру тәсілі қолданылады, яғни байланыс жолдары арқылы әртүрлі уақыт мезетінде адрес пен дерек кезектеп жіберіледі (цикл басында - адрес, цикл аяғында - дерек).
Басқару желісінің жолдарындағы сигналдар кезекті цикл түрін анықтайды және оның әртүрлі кезеңдеріне сәйкесті уақыт мезеттерін бекітеді. Онымен қатар, басқару сигналдары процессордың (немесе магистралдың өзге қожасының, бастаушының, master) жұмысын жадының немесе енгізушығару құрылғыларының (орындаушы құрылғының, slave) жұмысымен келістіреді.
Негізгі басқару сигналдары - алмастыру стробтары, яғни жазу (шығару) стробы мен оқу (енгізу) стробы. Бұл сигналдарды процессор қалыптастырады, олар деректердің желі арқылы сәйкесті бағытта жіберілу мезеттерін анықтайды.
Микропроцессорлық жүйенің құрамындағы құрылғылардың барлығы да жүйе магистралына қосылған және олардың өзара информация алмасуы да осы магистраль арқылы жүзеге асырылады.
Енгізушығару құрылғыларын немесе сыртқы құрылғыларды (ЕШҚ немесе СҚ) жүйе магистралына қосу үшін олардың сигналдары нақтылы стандарттарға сәйкес келу керек, ол сәйкесті енгізушығару интерфейстері арқылы жүзеге асырылады.
1.1.3 Микропроцессорлық жүйенің жұмыс режимдері
Микропроцессорлық жүйені, жоғарыда айтылғандай, кез келген жұмысқа икемдеуге болады. Бұндай икемділік жүйенің орталық буыны - микропроцессор жұмысының сәйкесті бағдарлама (software) арқылы орындалуымен анықталады. Микропроцессорлық жүйенің аппараттық құрылымы (hardware) шешілетін мәселеге байланысты өзгертілмейді. Қойылған мақсатқа сәйкесті бағдарлама құрып, оны жүйе жадысына енгізу арқылы, микропроцессорды, жүйенің аппаратық мүмкіндігі жететін, кез келген мәселені шешуге бағыттауға болады. Бұның үстіне, микропроцессорлық жүйенің байланыстарының желілік ұйымдастырылуы оның аппараттық модулдерін жаңартуға, мысалы, жүйе жадысын бұрынғысынан көлемдірек немесе тезәрекеттілеу түрлеріне ауыстыруға, оған жаңа енгізушығару құрылғыларын қосуға, тіпті микропроцессордың өзін де одан қуаттырақ түріне ауыстыруға мүмкіндік береді.
Микропроцессорлық жүйенің шешілетін мәселеге икемделуіне оның жұмыс режимін (яғни, жүйелік магистраль арқылы дерек алмастырылу режимін) таңдау мүмкіндігі де көмектеседі.
Кез келген микропроцессорлық жүйеде оның магистралі арқылы информация алмастырылуы негізгі үш түрлі режимде жүзеге асырылады, олар:
бағдарламалы-басқарылымды алмастыру;
үзілістер арқылы алмастыру (Interrupts);
жадыға тура шығу арқылы алмастыру (ЖТШ, DMA - Direct Memory Access).
Олардың ішіндегі негізгісі - біріншісі, онсыз қалған алмастыру режимдері орындалмайды. Бұл режимде процессор жүйелік магистралдың жеке қожасы (Master) болады, яғни жүйе құрамындағы құрылғылар арасында информация алмастырылуы, орындалушы бағдарламаның анықтаған тәртібі бойынша, процессордың басқаруымен ғана жүзеге асырылады. Процессор жадыдан команда кодтарын оқиды (таңдап шығарады), сосын оларды орындап (яғни, жадыдан немесе енгізушығару құрылғысынан алынған деректерді осы командаларға сәйкесті өңдеп), өңдеу нәтижелерін жадыға жазады немесе енгізушығару құрылғысына жібереді.
Үзілістер арқылы дерек алмастыру микропроцессорлық жүйенің сыртқы оқиғаға немесе сырттан түскен сигналға байланысты кезексіз әрекетінің қажетті жағдайында пайдаланылады. Сыртқы оқиғаға байланысты әрекетті келесі жолдармен ұйымдастыруға болады:
сыртқы оқиғаның туғанын бағдарламалық тәсілмен бақылап отыру арқылы (ту тексеру тәсілі немесе Polling);
оқиғаның туғаны туралы сыртқы құрылғының жіберген үзіліс сұранысы арқылы (IRQ - Interrupt ReQuest).
Екі жағдайда да процессор негізгі бағдарламаға байланысты кезекті жұмысын уақытша тоқтатып, сыртқы оқиғаға байланысты іс-әрекетке ауысады да, бұл жұмыс біткеннен кейін негізгі бағдарламаның жұмысына қайтып келеді. Үзілістер арқылы дерек алмастыру кезінде, бағдарламалы алмастырудағы сияқты, магистралдағы барлық сигналды процессор қояды, яғни үзіліске байланысты жұмыс та толықтай процессордың басқаруымен жүзеге асырылады.
Жадыға тура шығу режимінде (DMA - Direct Memory Access) қызмет қажет қылған сыртқы құрылғы процессорға сәйкесті сұраныс жібереді, оған жауап ретінде микропроцессор кезекті команданың орындалуын бітіргеннен кейін жүйе желісінен ажырап, сұраныс жіберген құрылғының жұмысына рұқсат береді. Жадыға тура шығу арқылы, негізінде, енгізушығару құрылғысы мен жады арасындағы информация жіберілуі жүзеге асырылады. Жадыға тура шығу арқылы дерек жіберілімін процессор емес, арнайы контроллер (ЖТШ контроллері) басқарады. Магистралді сұрап алған құрылғының жұмысы біткеннен кейін, магистраль босатылып, процессордың қарауына беріледі де, ол уақытша тоқтатылған негізгі бағдарламаның жұмысын жалғастырады.
1.1.4 Микропроцессорлық жүйенің архитектуралары
Осы кезеңге дейін біз микропроцессорлық жүйенің бір түрін, атап айтқанда ортақ желілі архитектурамен (ол Принстон немесе фон-Нейман архитектурасы деп аталады) құрылған түрін қарастырдық. Бұндай құрылымда деректер мен командалар бір жадыда сақталады және олар жалғыз ортақ желі арқылы жіберіледі (1.2-сурет).
1. 2 Сурет
Микропроцессорлық жүйе архитектурасының бұдан басқа түрі де бар, ол - жеке желілі архитектура (ол Гарвард архитектурасы деп аталады). Бұндай құрылымда деректер мен командалар олардың өздеріне арналған дербес жадыларда сақталады және олар әрбіреуіне сәйкесті дербес желілері арқылы жіберіледі (1.3-сурет).
1.3 Сурет
Ортақ желілі (фон-Нейман) архитектура екі желіге қатар жұмыс істеуді және олар арқылы дерек жіберілуін қатар бақылауды қажет қылмайды. Деректер мен командалардың жалғыз жадыда сақталуы жадыны олардың көлеміне байланысты бөлуге мүмкіндік береді. Мысалы, кейбір жағдайда күрделі және үлкен көлемді бағдарлама керек болып, ал деректер онша көп болмауы мүмкін. Басқа жағдайда, керісінше, бағдарлама қарапайым, ал деректер үлкен көлемді болуы мүмкін. Жады аймағын осы жағдайларға байланысты бөлу ешқандай қиындық тудырмайды, әйтеуір - деректер мен командалар жүйе жадысына сыйса болды. Әдетте, осындай архитектуралы жүйелердің жадысы үлкен мөлшерлі болады (ондаған және жүздеген мегабайт). Ортақ желілі архитектура көбірек таралған, мысалы, дербес компьютерлерде осы архитектура қолданылады.
Ортақ желілі архитектурада жадыдан командалардың таңдалуы мен деректердің жадыдан немесе енгізушығару құрылғысынан қабылдануы немесе оларға жіберілуі жалғыз желі арқылы жүзеге асырылатындықтан, олар кезектеп жіберіледі, ал бұның жүйе жұмысында кідіріс тудыратындығы сөзсіз. Қазіргі заманғы процессорларда конвейерлік технологиялар мен кэш-жадыны пайдалану және тактілік жиілікті көтеру арқылы командалардың орындалу уақыты қысқартылып, жүйенің жұмыс жылдамдығы едәуір көтерілген. Бірақ, жүйенің тезәрекеттілігін одан әрі көтеру деректер мен командалардың жіберілімін қатарластыру арқылы ғана, яғни екіжелілі архитектураға ауысу арқылы жүзеге асырылады.
Екіжелілі (Гарвард) архитектурада әрбір желідегі жіберілімдер бір-біріне тәуелсіз және уақыт бойынша параллель түрде жүзеге асырылады. Бұған сәйкесті, желілердің құрылымын (адрес коды мен дерек кодтарының разряд санын, информация алмастырылуының тәртібі мен жылдамдығын және т.б.) әрбір желінің шешетін мәселесіне байланысты ыңғайлап таңдауға болады. Сонымен, екіжелілі архитектура микропопроцессорлық жүйенің жұмысын тездетеді.
Екіжелілі архитектураның қолданылатын негізгі аймағы - үлкен көлемді жадыны қажет қылмайтын, онша күрделі емес жұмыстарға арналған, бірақ аса жоғары тезәрекеттілікті қажет қылатын, жекекристалды микроконтроллерлер.
1.1.5 Микропроцессорлық жүйелердің түрлері
Микропроцессорлық техниканың қазіргі заманғы қолданылым аймағы ұшан байтақ, оларға қойылатын талап та алуан түрлі. Сондықтан, микропроцессорлық жүйелердің, қуаты, әмбебаптылығы, тезәрекеттілігі және құрылым ерекшеліктерімен ажыратылатын, бірнеше түрлері қалыптасқан. Олардың негізгі түрлері:
микропроцесорлар мен микропроцессорлық жинам микросхемаларының негізіндегі дәстүрлі микропроцессорлық жүйелер;
микроконтроллерлер - құрамына жүйе буындарының барлығы немесе көпшілігі енгізіліп, жеке микросхема түрінде орындалған, микропроцессорлық жүйенің ең таралған түрі;
контроллерлер - жеке модулдер түрінде орындалған, микропроцес-сорлық басқару жүйелері;
микрокомпьютерлер - сыртқы құрылғылармен ұштастырылу мүмкіндіктері аса дамытылған, қуаты жағынан көтеріңкі келетін, микропроцессорлық жүйелер;
компьютерлер (оның ішінде, дербес түрлері де) - аса қуатты және әмбебаптылығы жоғары дәрежедегі микропроцессорлық жүйелер.
Микропроцесорлар мен микропроцессорлық жинам микросхемаларының негізінде құрылатын дәстүрлі микропроцессорлық жүйелер өндірісте шығарылатын қалыпты микроконтроллерлердің қойылған талапқа сай сипаттамаларды қамтамасыз ете алмайтын жағдайда пайдаланылады. Мысалы, олардың құрамына қажетті сыртқы құрылғылардың сәйкесті интерфейстік құрылғыларын орналастыру арқылы олардың жұмыс мүмкіндігін кеңейтуге болады.
Микроконтроллерлер іс жүзінде жеке түрінде емес, олардан күрделірек құрылғылардың құрамында пайдаланылатын (мысалы, контроллер құрамында), әмбебап құрылғылар. Микроконтроллердің жүйелік желісі микросхема ішінде орналастырылған, яғни оған пайдаланушының қолы жетпейді. Микроконтроллерге сыртқы құрылғыларды қосу мүмкіншілігі шектелген. Микроконтроллерлі құрылғылар, әдетте, жеке бір мәселені шешуге ғана бағытталып құрылады.
Контроллерлер, әдетте, жеке топқа біріктірілген, мазмұны жағынан бір-біріне жуық келетін бірнеше мәселені шешу үшін құрылады. Оларға, әдетте, қосалқы буындар мен құрылғылар (мысалы, үлкенірек жады, енгізушығару құралдары) қосу мүмкіндігі болмайды. Олардың да жүйелік желісіне пайдаланушының қолы жетпейді. Контроллердің құрылымы қарапайым келеді және ол ең жоғарғы тезәрекеттілікке ыңғайландырылған. Көптеген жағдайда орындалатын бағдарламалар тұрақты жадыда сақталады және өзгертілмейді. Контроллерлер жекетақталы құралым түрінде шығарылады.
Микрокомпьютерлер, контроллерлерден ерекше, ашық құрылыммен құрылады, яғни олардың жүйелік желісіне бірнеше қосалқы құрылғыны қосу мүмкіндігі болады. Микрокомпьютерлердің пайдаланушымен байланыс мүмкіншілігі де (видеомонитор, түймежинам) кеңейтілген. Микроком-пьютерлерді түр-түрлі мәселелерді шешуге пайдалануға болады, бірақ әрбір мәселеге байланысты оларды қайтадан ыңғайлау керек болады, бұл оған жаңа бағдарлама енгізу арқылы жүзеге асырылады.
Компьютерлер және олардың аса таралған түрі - дербес компьютерлер - микропроцессорлық жүйелердің әмбебаптылығы жағынан ең жоғарғы түрі. Оларды жетілдіру және оларға жаңа құрылғылар қосу мүмкіншіліктері алдын ала ескерілген. Сыртқы құрылғылар оларға бірнеше порттар арқылы қосылады. Компьютерлердің қолданылым аймағы ұшан байтақ, олар: математикалық есептемелер, дерек қорларымен жұмыс атқару, күрделі электрондық жүйелердің жұмысын басқару, компьютерлік ойындар, құжаттар дайындау және т.б. Әрине, басқару жұмысына арналған микропроцессорлық жүйелерді дербес компьютерлер негізінде де құруға болады. Бұл жағдайда дербес компьютер бағдарланған жұмысына сәйкесті қосалқы ұштастыру құрылғыларымен қамтылу керек.
1.2 Информация ауыстырылымының ұйымдастырылуы
1.2.1 Информация ауыстырылымының циклдері
Микропроцессорлық жүйелерді құрушының оларды құрар алдында білуі керек басты мәселе - ол бұндай жүйелердің желілері арқылы информация ауыстырылымының ұйымдастырылу принциптері. Онсыз жүйенің аппаратық бөлігін құру мүмкін емес, ал аппараттық бөлігінсіз, әрине, ешқандай бағдарлама жұмыс істемейді.
Микропроцессорлық жүйелердегі информация ауыстырылымы бірнеше ауыстыру циклдерінде жүзеге асырылады. Информация ауыстыру циклі ретінде желі арқылы жүргізілетін қарапайым ауыстыру операциясының орындалуына қажетті уақыт аралығы алынады. Информация ауыстыру циклінің нақтылы мысалы ретінде дерек кодтарының процессордан жадыға немесе олардың енгізушығару құрылғысынан процессорға жіберілуін келтіруге болады.
Информация ауыстыру циклдері негізгі екі түрге бөлінеді:
жазу (шығару) циклі, бұл циклде процессор жадыға немесе сыртқы құрылғыға информация жазады (шығарады);
оқу (енгізу) циклі, бұл циклде процессор жадыдағы немесе сыртқы құрылғыдағы информацияны оқиды (енгізеді).
Әрбір циклде информация ауыстырылуына қатысты құрылғылар тиянақты қойылған тәртіппен (информация ауыстырылымының қабылданған хаттамасы бойынша) бір-біріне информациялық және басқару сигналдарын жібереді.
Ауыстыру циклінің ұзақтығы тұрақты да, айнымалы да мөлшерде болуы мүмкін, бірақ ол әрқашан жүйенің тактілік сигналының бірнеше периодына созылады, яғни процессордың информацияны оқу немесе жазу жиілігі идеалды жағдайда да жүйенің тактілік жиілігінен бірнеше есе кем болады.
Команда кодтарының жүйе жадысынан таңдалуы да оқу циклінің тәртібімен жүзеге асырылады. Сондықтан, біржелілі архитектуралы құрылымның жүйе магистралында команда таңдау циклдері мен дерек жіберу (оқу және жазу) циклдері кезектеседі, бірақ ауыстырылым хаттамалары деректердің немесе командалардың жіберілетіндігіне тәуелсіз, өзгермеген түрінде қалады. Екіжелілі архитектуралы құрылымда команда таңдау циклдері мен дерек жазу немесе оқу циклдері сәйкесті желілерге бөлініп, олар уақыт бойынша қатар жүргізіледі.
1.2.2 Микропроцессорлық жүйенің желілері
Микропроцессорлық жүйенің құрамы мен оның әртүрлі желілерінің қызметін толығырақ қарастыралық.
Бұрын айтылғандай, микропроцессорлық жүйенің жүйе магистралының (жүйе желісінің) құрамына үш түрлі информациялық желі кіреді, олар: адрестік желі, дерек желісі және басқару желісі.
Дерек желісі - жүйе модулдерінің арасында дерек ауыстырылуы жүзеге асырылатын, негізгі желі. Оның разрядының (байланыс жолдарының) саны информация ауыстырылымының жылдамдығы мен тиімділігін және микропроцессордың командалар жүйесіндегі команда санын анықтайды.
Дерек желісі, оның деректерді екі бағытта да жіберуін қамтамасыз етуі керек болғандықтан, әрқашан екібағытты болады. Бұл желінің жолдарына қосылатын құрылғылардың шығыс каскады үш жағдайлы (3S) болу керек.
Қалыпты дерек желілері 8, 16, 32 немесе 64 разрядты болады. Жеке ауыстыру циклінде 64-разрядты желі арқылы 8 байт, ал 8-разрядты желі арқылы бір ғана байт жіберуге болатындығы түсінікті. Дерек желісінің разряд саны бүкіл магистралдың разряд санын анықтайды. Мысалы, 32-разрядты жүйе магистралы туралы сөз болғанда, оның дерек желісінің 32-разрядты екенін түсінуге болады.
Адрес желісі микропроцессорлық жүйенің күрделілігінің ең жоғарғы мөлшерін, яғни оның жады көлемінің ең жоғарғы мәнін, демек, бағдарлама мен сақталатын деректердің максималды көлемін анықтайды. Адрес желісінің қамтамасыз ететін адрес саны - 2N, бұндағы N - адрес желісінің разряд саны. Мысалы, Intel 8085 микропроцессорының 16-разрядты адрес желісі 216 = 65 536 ұяшыққа шығуға мүмкіндік береді.
Магистралдың байланыс жолдарының толық санын кеміту үшін көбіне адрес желісі мен дерек желісін кезектестіру тәсілі қолданылады, яғни байланыс жолдары арқылы әртүрлі уақыт мезетінде адрес пен дерек кезектеп жіберіледі (цикл басында - адрес, цикл аяғында - дерек). Осы мезеттерді бекіту (стробтау) басқару желісіндегі арнайы сигналдармен жүзеге асырылады. Кезектесімді адресдерек желісі арқылы ауыстыру жылдамдығының кемірек, демек, ондағы ауыстыру циклінің ұзағырақ болатындығы түсінікті. Сонымен, адрес желісі мен дерек желісінің түріне байланысты магистралдар кезектесімді және кезектесімсіз түрлеріне бөлінеді.
Басқару желісінің жолдарындағы сигналдар (басқару сигналдары) процессордың (немесе магистралдың өзге қожасының, бастаушының, master) кезекті жұмысын жадының немесе енгізушығару құрылғыларының (орындаушы құрылғының, slave) жұмысымен келістіреді. Басқару сигналдары арқылы үзіліс немесе ЖТШ сұраныстарына байланысты жұмыстар да жүргізіледі.
Процессордың ауыстыру процесін цикл шегінің қай кезінде бітіретіндігіне, яғни оның ауыстыру стробын қай мезетте алып тастайтындығына байланысты, екі түрлі жағдай бар:
Синхронды ауыстырылымда процессор дерек ауыстырылуын нақтылы қойылған ұсталым уақытынан (tұст) кейін, яғни орындаушы-құрылғыға санаспай-ақ бітіреді;
Асинхронды ауыстырылымда процессор дерек ауыстырылуын орындаушы-құрылғы операцияның орындалғандығын арнайы сигнал арқылы құптағасын (handshake - қол қысу) ғана бітіреді.
Сонымен, микропроцессорлық жүйелерде пайдаланылатын ауыстырылым тәртібіне байланысты, олардың магистралдары синхронды және асинхронды болып ажыратылады.
1.2.3 Информация ауыстырылымының ұйымдастырылуы
1.2.3.1 Бағдарламалы ауыстырым
Микропроцессорлық жүйенің магистралдары арқылы бағдарламалы дерек ауыстырылымның екі түрлі жағдайын қарастыралық. Бірінші жағдай - микрокомпьютерлер мен контроллерлерде қолданылатын, асинхронды, кезектесімді Q-bus магистралы арқылы жүргізілетін ауыстырылым. Екінші жағдай - дербес комьютерлерде қолданылатын, синхронды, кезектесімсіз ISA (Industrial Standard Architecture) магистралы арқылы жүргізілетін ауыстырылым.
1.2.3.1.1 Асинхронды Q-bus магистралы арқылы дерек ауыстырылымы
Асинхронды, кезектесімді Q-bus магистралі арқылы бағдарламалы басқарылымды дерек жіберілімінің ұйымдастырылуы келесі тәртіппен жүзеге асырылады.
Адресдерек (AD) желісінде жіберім циклінің басында (адрес фазасында) процессор (бастаушы) желіге адрес кодын қояды және онымен қатар теріс строб сигналын SYNC' қояды. Жазу циклінің де, оқу циклінің де адрес фазасы бірдей болады.
Оқу циклінің дерек фазасында (1.4-сурет) процессор дерек оқылымының теріс строб сигналын DIN' қояды. Оған жауап ретінде орындаушы құрылғы желіге өзінің дерек кодын (оқылатын дерек) қояды да, дерек жіберу операциясының орындалғандығын RPLY' сигналымен құптайды.
1.4 Сурет
Процессор, RPLY' сигналын қабылдағаннан кейін, DIN' сигналын алып тастайды. Оған жауап ретінде орындаушы құрылғы құптаушы RPLY' сигналын алып тастайды. Бұдан кейін процессор SYNC' сигналын алып тастайды да, жіберім процесін бітіреді.
Жазу циклінің дерек фазасында (1.5-сурет) процессор AD желісіне жазылатын дерек кодын қойып, онымен қатар дерек жазылымының теріс строб сигналын DOUT' қояды. Оған жауап ретінде орындаушы құрылғы деректі қабылдайды да, дерек қабылдау операциясының орындалғандығын RPLY' сигналымен құптайды. Процессор мен орындаушы құрылғының келесі әрекеттері оқу цикліндегі әрекеттер тәрізді.
Қарастырылған магистралда адрес синхронды жіберіледі (оның қабылданғандығын орындаушының құптамасынсыз), ал деректер, оның жіберілгендігін немесе қабылданғандығын міндетті түрде құптау арқылы, асинхронды жіберіледі.
1.5 Сурет
1.2.3.1.2 Синхронды ISA магистралы арқылы дерек ауыстырылымы
Синхронды, кезектесімсіз ISA магистралі арқылы бағдарламалы басқарылымды дерек жіберілімінің ұйымдастырылуы келесі тәртіппен жүзеге асырылады.
Оқу және жазу циклдерінің екеуі де процессордың (бастаушының) адрес желісіне (SA) адрес кодын қоюынан басталады да, онда ол жіберілім процесінің аяғына дейін қалады. Оқу және жазу циклдеріне бірдей, адрес циклі дерек жіберілімі стробының (IOR' немесе IOW') маңдай басымен аяқталады. Адрес фазасында өз адресін таныған орындаушы құрылғы дерек жіберіліміне дайындық жағдайына ауысады.
Оқу циклінің дерек фазасында (1.6-сурет) процессор енгізушығару құрылғысынан (ЕШҚ) дерек оқылымының теріс строб сигналын (IOR') қояды. Оған жауап ретінде орындаушы құрылғы дерек желісіне (SD) өзінің дерек кодын (оқылатын дерек) қояды. Нақтылы қойылған уақыттан кейін процессор IOR' стробын, сосын SA желісінен адрес кодын алып тастайды.
1.6 Сурет
ISA магистралы арқылы жазу циклінің дерек фазасында (1.7-сурет) процессор дерек желісіне (SD) жазылатын дерек кодын қойып, онымен қатар ЕШҚ-ға дерек жазылымының теріс строб сигналын IOW' қояды. Оған жауап ретінде орындаушы құрылғы SD желісінен оған жазылатын дерек кодын қабылдайды. Процессор мен орындаушы құрылғының келесі әрекеттері оқу цикліндегі әрекеттер тәрізді.
1.7 Сурет
Қарастырылған жағдай негізгі, синхронды ауысуға ғана қатысты. ISA магистралында асинхронды алмастыруды жүзеге асыру мүмкіндігі де бар. Ол үшін арнаның (магистралдың) дайындық сигналы IO CH RDY қолданылады.
Қарастырылған жағдайлар осы магистралдар арқылы информация ауыстырылуының басты принциптерін ғана суреттейді.
1.2.3.2 Үзілістер арқылы ауыстырым
Үзіліс режиміндегі ауыстыру циклдері де, бағдарламалы ауыстыру циклдеріндегі сияқты тәртіппен жүргізіледі, бірақ олардың өздеріне тән ерекшеліктері де бар.
Микропроцессорлық жүйелердегі үзілістердің негізгі екі түрі болады:
магистраль арқылы оқу циклінің жүргізілуін қажет қылатын, векторлық үзілістер;
магистраль арқылы ешқандай ауыстыру циклін қажет қылмайтын, радиалды үзілістер.
Микропроцессорлық жүйедегі үзілістердің көптігіне байланысты, процессорға нақтылы үзілістің номері (үзіліс векторының адресі) туралы мәлімет керек. Бұл мәліметті процессорға үзіліс түрлеріне сәйкесті екі жолмен жіберуге болады.
1.2.3.2.1 Q-bus магистралындағы үзіліс
Векторлық үзілісте үзіліс номерінің кодын процессорға үзіліс сұраған енгізушығару құрылғысының өзі жібереді. Оны қабылдау үшін процессор магистраль арқылы оқу циклін жүргізеді де, дерек желісі арқылы үзіліс номерінің кодын алады. Адрес желісі бұл циклде пайдаланылмайды, үзіліс сұраған құрылғы белгілі болғандықтан, информация ауыстыру үшін процессор үзіліс сұраған енгізушығару құрылғысының тап өзіне байланысады. Бұл жағдайда барлық енгізушығару құрылғыларының үзіліс сұранысына магистралдың бір-ақ жолы жеткілікті. Мысалы, Q-bus магистралындағы үзілістер тап осылай ұйымдастырылған. Осы Q-bus магистралындағы үзілістерге байланысты сигналдардың таралым схемасы 1.8-суретте көрсетілген.
1.8 Сурет
Q-bus магистралындағы үзіліс сұрауберу циклінің уақыттық диаграммасы 1.9-суретте келтірілген. Үзіліс сұранысы -VIRQ сигналымен жіберіледі. Үзіліс сұраушы құрылғылардың арасында талас-тартыс тудырмас үшін, олардың шығыс каскадтары OC түрлі болу керек. Үзіліс сұранысын қабылдап, (кезекті команданы орындағаннан кейін) процессор IAKO сигналымен үзіліс береді және дерек оқу сигналын ( - DIN) қояды. IAKO сигналы тізбелеп, үзіліс сұраушы құрылғылардың барлығынан өтеді. Үзіліс сұраған құрылғы бұл сигналды өзінен әрі жібермейді. Үзіліс сұранысын екі құрылғы қатар жіберген болса, онда үзіліс олардың процессорға жуығырақ тұрғанына беріледі. Талас-тартыс тудырмаудың бұндай механизмі тізбелік мәртебе (Daisy Chain) деп аталады. Үзіліс сұраған құрылғы IAKO сигналын қабылдағаннан кейін, өзінің -VIRQ сұранысын алып тастау керек.
1.9 Сурет
Бұдан кейін процессор үзіліс номерін адрессіз оқу циклін жүргізеді. Қабылданған -DIN және IAKO сигналдарына жауап ретінде үзіліс алған құрылғы адресдерек желісіне (AD) үзіліс номерінің кодын (үзіліс векторының адресін) қойып, оны -RPLY сигналымен құптауы керек. Процессор үзіліс номерінің кодын қабылдап, одан кейін -DIN және IAKO сигналдарын алып тастау арқылы адрессіз оқу циклін бітіреді.
1.2.3.2.2 ISA магистралындағы үзіліс
Радиалды үзілісте қанша үзіліс сұраушы құрылғы болса, магистралда үзіліс сұранысының сонша жолы болады, яғни үзіліс қажет қылған әрбір құрылғы сұранысын өзінің жеке жолымен жібереді. Процессор үзіліс номерін сұраныс келген жол номеріне қарап біледі, яғни бұнда ешқандай оқу циклі қажет болмайды. Радиалды үзілістер пайдаланылған жағдайда жүйеге, үзіліс сұраныстарын реттеу жұмысын атқаратын, үзіліс контроллері қосылады. Мысалы, ISA магистралындағы үзілістер тап осы тәртіппен ұйымдас-тырылған. Осы ISA магистралындағы үзілістерге қатысты құрылғылардың байланыс құрылымы 1.10-суретте көрсетілген.
1.10 Сурет
Процессор үзіліс контроллерімен магистраль арқылы да (оның жұмыс режимін қоюға), магистралдан тыс та (үзіліс сұраныстарының жұмысын атқару кезінде) байланысады. Үзіліс сұраушы құрылғының әрбіреуінің сұраныс сигналының жеке жолы IRQ болады. Бұл жағдайда ешқандай талас-тартыс тумайтындықтан, құрылғылардың шығыс каскадтары 2S түрлі болады. Үзіліс сұранысының түсу мезеті IRQ сигналының алғы, тура ауытқуымен анықталады. Бірнеше сұраныстың қатар түсуі кезінде, олардың жұмыс тәртібін үзіліс контроллері анықтайды.
1.2.3.3 ЖТШ режиміндегі ауыстырым
Жадыға тура шығу (ЖТШ) режиміндегі ауыстыру циклдері бағдарламалы ауыстыру және үзіліс беру циклдерінің тәртібімен орындалады.
ЖТШ режиміндегі ауыстыруды бастар алдында, ЖТШ қажет қылған құрылғы микропроцессорға сұраныс жіберу керек. ЖТШ сұранысын жіберу және оның берілу тәртібі үзіліс сұранысын жіберу және оның берілу тәртібіне ұқсас келеді. Екі жағдайда да, қызмет қажет қылған құрылғы процессорға сұраныс сигналын жібереді. Бірақ ЖТШ жағдайында процессор өзін магистралдан ажыратып, міндетті түрде сұраушы құрылғыға арнайы сигналдар арқылы ЖТШ береді. Ал радиалды үзіліс сұраныстарына процессордың үзіліс бермеуі де мүмкін.
1.2.3.3.1 Q-bus магистралындағы ЖТШ режимі
Q-bus магистралындағы ЖТШ сұранысы мен оның берілуі үзіліс жағдайындағы сияқты (1.11-сурет). ЖТШ сұранысының -DMR сигналын, ЖТШ қажет қылған құрылғылардың барлығы магистралдың бір жолымен жібереді. Құрылғылардың шығыс каскадтары OC түрлі болу керек. ЖТШ сұранысын (яғни, -DMR сигналын) қабылдап, процессор DMGO сигналымен ЖТШ берілу сигналын жібереді. Бұл сигнал барлық құрылғыдан тізбелеп өтеді де, нәтижесінде сұраныс жіберген құрылғылардың процессорға жуықтау орналасқаны (Daisy Chain мәртебесімен) ЖТШ алады. Сосын ЖТШ алған құрылғы магистраль арқылы, бағдарламалы ауыстырудағы сияқты, ауыстыру циклдерін жүргізеді. ЖТШ циклдерінде информация жадыдан оқылып, енгізушығару құрылғысына жазылады, немесе, керісінше - енгізушығару құрылғысынан оқылып, жадыға жіберіледі.
1.11 Сурет
1.2.3.3.2 ISA магистралындағы ЖТШ режимі
ISA магистралындағы ЖТШ сұранысының жіберілуі мен оның берілуі радиалды үзілістердің ұйымдастырылуын еске түсіреді (1.12-сурет). Дәл сондағыдай, жүйеде, сұраныс сигналдары (DRQ) жиналатын және рұқсат сигналдары (-DACK) таралатын, ЖТШ контроллері болады. Әрбір ЖТШ арнасына (DRQ және - DACK сигналдарының жұбына) ЖТШ сұраушы бір ғана құрылғы қосылады. Олардың шығыс каскадтары - 2S түрлі. ЖТШ қажет қылған құрылғы сұраныс сигналын (DRQ) жібереді де, жауапқа ЖТШ сигналын (-DACK) алады. Бұдан кейін ЖТШ контроллері магистраль арқылы енгізушығару құрылғылары мен жады арасында ауыстыру циклдерін жүргізеді.
1.12 Сурет
ISA магистралындағы ЖТШ циклдерінің уақыттық диаграммасы 1.13-суретте көрсетілген. ISA магистралында жеке түрдегі жадыға жазу (-MEMW) және енгізушығару құрылғыларына жазу (-IOW) стробтары мен жадыдан оқу (-MEMR) және енгізушығару құрылғыларынан оқу (-IOR) стробтары пайдаланылады. Бұл ЖТШ режимінің дербес алмастыру циклінде информацияны жадыдан оқып, оны енгізушығару құрылғысына жазуға немесе информацияны енгізушығару құрылғыларынан оқып, оны жадыға жазуға мүмкіндік береді. Бұл кезде адрес желісіне жады адресі қойылады да, ал енгізушығару құрылғысы жалғыз AEN сигналымен табылады. ЖТШ режиміндегі алмастыру цикліне алдын ала ЖТШ сұраған және оны алған құрылғы ғана қатысады, сондықтан құрылғылар арасында адреске байланысты ешқандай талас-тартыс тумайды.
1.13 Сурет
1.3 Микропроцессорлық жүйенің негізгі буындары
1.3.1 Процессор
Микропроцессорлық жүйенің құрамына міндетті түрде енгізілетін негізгі буындарына процессор, жады, енгізушығару құрылғылары жатады.
Процессор (1.14-сурет), микропроцессорлық жүйенің негізін қалаушы, яғни оның жұмысын басқарушы, басты буыны. Ол, әдетте, жеке микросхема түрінде (микропроцессор) немесе микросхеманың (мысалы, микроконтроллердің) құрама бөлігі ретінде шығарылады. Процессор микросхемасының сәйкесті желі топтарына біріктірілген үш түрлі шықпалары болады, олар: адрес желісі, дерек желісі және басқару желісі. Кейде, микросхеманың шықпа санын кеміту үшін, кейбір сигналдар мен желілер кезектестіріледі.
1.14 Сурет
Процессордың басты сипаттамалары - оның дерек, адрес және басқару желілерінің разряд саны. Дерек желісінің разряд саны жүйенің жұмыс жылдамдығын анықтайды. Адрес желісінің разряд саны жүйенің дерек жеткізу күрделілігін анықтайды. Басқару жолдарының саны ауыстыру режимдерінің түр-түрлігін және процессордың, оған сәйкесті, өзге құрылғылармен байланыс тиімділігін анықтайды.
Процессордың негізгі үш желісінің сигналдық шықпаларынан басқа, сыртқы тактілік сигналдар (CLK) генераторын қосуға арналған бір (немесе екі) шықпасы болады. Процессордың тактілік жиілігі жоғары болған сайын, ол тезірек істейді, яғни командаларды тезірек орындайды. Дегенмен, процессордың тезәрекеттілігі тактілік жиілігімен ғана анықталмайды, оған оның құрылым ерекшеліктері де әсер етеді. Қазіргі заманғы процессорлар командалардың көпшілігін бір тактіде орындайды және олардың бірнеше команданы қатар орындау мүмкіншілігі де бар. Процессордың тактілік жиілігі оның магистраль арқылы ауыстыру жиілігін емес, ол микропроцессордың ішкі тезәрекеттілігін ғана сипаттайды.
Кез келген процессорда болатын тағы бір маңызды сигнал - бастапқы тазарту сигналы RESET. Қорек көзінің қосылғанында немесе ахаулық жағдайда бұл сигналдың берілуі арқылы процессор бастапқы қойылым бағдарламасын орындауға кіріседі. Бұл сигнал - радиалды үзілістің ерекше бір түрі. Кейде процессор микросхемасының, ерекше жағдайларға байланысты жұмыс атқаруға арналған (мысалы, сыртқы таймер арқылы үзіліске), тағы бір-екі радиалды үзіліс кірісі болады. Қазіргі заманғы процессорлар, әдетте, бір қорек көзінен (+5В немесе +3,3В) жұмыс істейді.
Процессорды магистралға қосу үшін буферлік микросхемалар пайдаланылады. Олар жүйе магистралы мен процессор желілерінің ауыстыру хаттамаларын келістіру қызметін атқарады. Кейде микропроцессорлық жүйеде бірнеше магистраль (жүйелік және жергілікті) пайдаланылуы мүмкін, бұндай жағдайда бұл магистралдардың әрбіреуінің өзінің жеке буферлік буыны болады. Бұндай құрылым, мысалы, дербес компьютерлерде қолданылады.
Қорек көзі қосылғаннан кейін процессор бастапқы ... жалғасы
"Алматы энергетика және байланыс институты"
коммерциялық емес акционерлік қоғамы
О.Т. Шанаев
МИКРОПРОЦЕССОРЛЫҚ ЖҮЙЕЛЕР
Оқу құралы
Алматы 2009
Оқу құралында жеке микропроцесорлар мен микропроцессорлық жинам микросхемаларының негізіндегі дәстүрлі микропроцессорлық жүйелердің құрама бөліктері, олардың құрылым принциптері және жүйе жұмысының ұйымдастырылу тәртібі қарастырылады. Микропроцессорлардың негізгі құрылым принциптері мен жұмыс тәртібін түсіндіру ыңғайлылығы үшін нақтылы Intel 8085 микропроцессоры алынып, оның ішкі құрама блоктары мен оның іс-әрекетін басқарушы бағдарламаларының құрылу негіздері қарастырылады.
Оқу құралында берілген материалдарды оқып, игеру арқылы студенттердің микропроцессорлық жүйелердің құрылым принциптері және олардың жұмыс тәртібі жөніндегі білімі қалыптастырылып, олардың оқу барысының келесі кезеңдерінде оқылатын арнайы пәндерді игеруіне немесе өздік жұмыс арқылы білім деңгейін көтеруіне қажетті түпнегіз қаланады.
Кіріспе
Микропроцессорлық жүйе (МПЖ) - есептеу, бақылау-өлшеу және басқару жұмыстарын атқаруға арналған, микропроцессор негізіндегі электрондық құрылымдардың жалпылама аталымы. Олардың кіріс және шығыс сигналдары ретінде аналогты сигналдар, жеке цифрлық сигналдар, цифрлық кодтар, цифрлық кодтардың тізбелері пайдаланалуы мүмкін. Микропроцессорлық жүйелерде информацияның өңделуі және сақталуы цифрлық түрде жүргізілетіндіктен, оларға түсетін аналогты кіріс сигналдары аналогты-цифрлы түрлендіргіштер (АЦТ) арқылы таңдалым кодтарының тізбесіне түрлендіріледі, ал олардан өңдеу нәтижесі ретінде шығарылатын аналогты шығыс сигналдары таңдалым кодтарының тізбесінен цифрлы-аналогты түрлендіргіштер (ЦАТ) арқылы қалыптастырылады.
Дәстүрлі цифрлық жүйелердегі информацияның өңделу және сақталу алгоритмдері жүйенің схемақұралысымен ғана анықталады, яғни өзге алгоритмге көшу үшін, оны жүйе құрамындағы электрондық буындардың өзара байланыстарын өзгерту арқылы немесе осы буындарды олардың қойылған мәселеге жарамды түріне ауыстыру арқылы ғана жүзеге асыруға болады немесе жүйенің құрылымын толықтай өзгертуге тура келеді. Әрине, бұндай түрлендірімдердің жүйе жұмысының барысында жүргізілуі мүмкін емес, ол үшін жүйені қайтадан құру керек болады. Тап осы себептен дәстүрлі цифрлық жүйе көбіне "тастай логикалы" жүйе деп аталады.
Кез келген "тастай логикалы" жүйе - алдын ала белгілі жеке бір мәселені (немесе бірнеше жуық мәселелерді) шешуге арналған арнайы жүйе. Оның күмәнсіз артықшылықтары бар.
Біріншіден, арнайы жүйенің құрамында артық элемент болмайды, оның әрбір элементі міндетті түрде толыққанды жұмыс атқарады (әрине, жүйенің дұрыс жобаланғандығында).
Екіншіден, арнайы жүйеде информацияны өңдеу алгоритмінің орындалу жылдамдығы оның құрамындағы логикалық элементтердің тезәрекеттілігімен және олардың нақтылы байланыстарымен ғана анықталатындықтан, бұндай құрылымдар аса жоғары тезәрекеттілікті қамтамасыз ете алады.
"Тастай логикалы" жүйенің басты кемістігі - әрбір жаңа мәселені шешу үшін оны қайта құру қажеттігінде. Ал бұл - ұзаққа созылатын және қосымша қаражат талап ететін жұмыс.
Бұл кемістіктен құтылу үшін, кез келген мәселеге жеңіл икемделетін жүйе құру керек, яғни, оның шешілетін мәселеге байланысты (құрылымды өзгертпестен) жұмыс алгоритмін (жүйенің жұмыс бағдарламасын) ауыстыру мүмкіншілігі болу керек. Бұндай "икемді логикалы" жүйе әмбебап немесе бағдарламалы жүйеге айналады, микропроцессорлық жүйе тап осындай жүйеге жатады.
Әмбебаптылыққа жету ұтылысқа да әкеледі. Аса күрделі мәселені шешу үшін (қарапайым мәселелермен салыстырғанда) көбірек құрал қажет болады. Сондықтан, әмбебап жүйенің құрамы ең күрделі мәселенің шешілу мүмкіндігін қамтамасыз ету керек. Әрине, қарапайым мәселенің шешілуі кезінде бұндай жүйенің бар мүмкіншілігі толыққанды пайдаланылмайды. Сонымен қатар, әмбаптылық жүйенің (оның құрылымының күрделенуіне байланысты) тезәрекеттілігін де төмендетеді.
Сонымен, келесі қорытындыға келуге болады: "тастай логикалы" жүйелер, аса жоғары тезәрекеттілікті қажет қылатын, өңделу алгоритмдері қарапайым түрдегі, жеке мәселелерге ыңғайлы келеді. Ал әмбебап, бағдарламалы жүйелер, онша тезәрекеттілікті қажет қылмайтын, шешетін мәселелері жиі өзгеріп отыратын және олардың шешілуі күрделі алгоритмдермен жүзеге асырылатын жағдайларға ыңғайлы келеді.
Бірақ соңғы кезде шығарылған әмбебап (микропроцессорлық) жүйелердің тезәрекеттілігі аса (бірнеше дәрежеге) көтерілді және бұндай жүйелерге арналған микросхемалардың шығарылым көлемінің ұлғаюы олардың құнының төмендеуіне әкелді. Оның нәтижесінде "тастай логикалы" жүйелердің қолданылым аймағы тарыла түсті. Бұған қоса, қазіргі заманда ішкі құрылымын бағдарламалы тәсілмен өзгерту арқылы жеке мәселелерді шешуге тез икемделетін микросхемалардың шығарылым технологиясы аса қарқынды дамып келе жатыр. Олар "тастай логикалы" жүйелердің тезәрекеттілігі мен бағдарламалы жүйелердің икемділігін біріктіреді. "Бағдарламалы құрылымдарға" қатысты мәселелер бұл оқу құралында қарастырылмайды.
Оқу құралының бірінші бөлімінде микропроцессорлық жүйелердің құрылым принциптері және олардың құрама бөліктері туралы жалпы түсініктер берілген.
Оқу құралының екінші бөлімінде, жалпы түрде микропроцессорлық жүйе (МПЖ) деп аталатын, есептеу, бақылау-өлшеу және басқару жүйелерінің құрамындағы басты құрылғысы саналатын, микропроцессорлардың құрылымы мен олардың іс-әрекеттерінің ұйымдастырылу тәртібін тиянақты таныстыру мақсатында қарапайым Intel 8085 микропроцессорының ішкі құрылымы мен оның микропроцессорлық жүйенің құрамында қолданылу принциптері және олардың жұмысын басқарушы бағдарламалардың Ассемблер тілінде құрастырылу жолдары қарастырылады.
Оқу құралының үшінші бөлімінде микропроцессорлық жүйенің құрама бөліктері біріктірілген жеке кристалды микроконтроллерлердің құрылым принциптері мен олардың құрамына енгізілетін ерекше буындар қарастырылады.
Оқу құралы автордың өндіріс және педагогика саласындағы көпжылдық тәжірибесінің негізінде жазылды.
1 Микропроцессорлық жүйелер
1.1 Микропроцессорлық жүйелер жөніндегі жалпы түсініктер
Микропроцессорлық жүйелер (МПЖ) - есептеу, өлшеу-бақылау, басқару жүйелерінде және тұрмыстық техникада кеңінен қолданылатын, микропроцессорлар негізіндегі күрделі электрондық құрылымдардың жалпылама аталымы. Микропроцессорлық жүйелерді құрып, олармен жұмыс істеуді үйрену үшін оларға байланысты басты ұғымдарды түсініп, олардың жалпы құрылым принциптерін, оларды аппаратты және бағдарламалы жобалау тәсілдері мен жаңа заманғы жетілдірім жолдарын толық игеру керек болады.
Микропроцессорлық жүйенің негізін қалаушы және оның жұмысын жүзеге асырушы басты бөлігі - микропроцессор (МП). Микропроцессор жүйеде информацияның өңделуін және оның жан-жақты жіберілімін бағдарлама арқылы басқарады. Қойылған мәселенің орындалу тәртібі сәйкесті бағдарламаға, яғни алынған микропроцессорға тән (яғни, оның командалар жүйесіне кіретін) командалар тізбесінің орындалуы арқылы жүзеге асырылады.
Микропроцессорлық жүйенің құрамына микропроцессормен қатар жады құрылымдары және информацияны енгізушығару құрылғылары (сыртқы құрылғылар) кіреді. Микропроцессорлық жүйелердің бастапқы даму барысында олар, микропроцессорлық жинам түрінде біріктірілген, бірге қолдануға жарамды (яғни, архитектурасы мен электрлік параметрлері бойынша сәйкестірілген) микросхемалар негізінде құрылды.
Микропроцессорлық жүйелердің (МПЖ) құрылым негізіне үш принцип алынған:
модулдік;
магистралдік;
микробағдарламалы басқару.
Модулдік принцип жүйенің, қызметі жағынан толықтай бітірілген, жеке блоктар негізінде құрылатындығын сипаттайды. Әрбір модулдің, оны іске қосатын, рұқсат кірісі болады; ондағы сигнал деңгейі модулдің үшінші (жоғары кедергілі) жағдайын, яғни оның жүйе желісіне қосылуқосылмауын басқарады.
Магистралдік принцип МПЖ-нің қызмет блоктарының арасындағы байланыс сипатын анықтайды; жүйенің барлық блогы өзара жүйелік магистраль (жүйе желісі) арқылы жалғанады және сол арқылы информация алмасады.
Микробағдарламалы басқару принципі жүйе бағдарламасын құруға пайдаланылатын командалардың әрбіреуінің қарапайым операциялар - микрокомандалар (информация жіберілімі, арифметикалық операциялар, ығыстырымдар және т.б.) арқылы жүзеге асырылу мүмкіндіктерін сипаттайды.
Қазіргі заманда микропроцессорлық жүйелер, негізінде (80% шамасында), олардың қажетті қызмет бөліктері технологиялық тәсілмен құрамына енгізілген, микроконтроллерлерді пайдалану арқылы құрылады. Микропроцесорлар мен микропроцессорлық жинам микросхемаларының негізіндегі дәстүрлі микропроцессорлық жүйелер (олардың құрылу және реттелу процесінің күрделілігіне байланысты) қазіргі заманда сирек шығарылады. Микропроцессорлық жүйелердің бұл түрі, негізінде, өндірісте шығарылатын қалыпты микроконтроллерлердің қойылған талапқа сай сипаттамаларды қамтамасыз ете алмайтын жағдайында ғана құрылады.
Бұл тарауда микропроцессорлық жүйелердің құрылым принциптері мен жұмыс режимдері, құрама буындары мен олардың өзара байланыстарының жүзеге асырылым жолдары және олардың қазіргі заманғы құрылым және шығарылым түрлері жөнінде жалпы түсініктер беріледі.
1.1.1 Микропроцессорлық жүйенің орталық процессоры
Кез келген микропроцессорлық жүйенің орталық буыны - микропроцессор (Microprocessor), яғни жүйедегі информация өңделуі мен оның жан-жақты жіберілуі түгелдей осы микропроцессордың басқаруымен жүзеге асырылады. Микропроцессорлық жүйенің өзге буындары қосалқы қызметтер атқарады, олар: информацияны сақтау (оның ішінде басқару информациясын да, яғни жұмыс бағдарламасын да), сыртқы құрылғылармен байланыс, пайдаланушымен байланыс және т.б. Сонымен, процессор арифметикалық (қосу, алу және т.б.), және логикалық (ығыстыру, салыстыру, кодтарды жасыру және т.б.) функциялардың орындалуын, кодтардың уақытша сақталуын (оның ішкі регистрлерінде), кодтардың микропроцессорлық жүйенің құрама буындары арасында жіберілуін және т.б. жұмыстарды жүзеге асырады. Процессор орындайтын, бұндай қарапайым операциялардың саны жүздеген болуы мүмкін.
Процессор операцияларды тізбелеп (яғни, бірінен соң бірін, кезектеп), орындайды. Әрине, кейбір операцияларды параллель орындайтын процессорлар да бар, қатар істеуші бірнеше процессордан құрылған көппроцессорлы жүйелер де кездеседі, бірақ олар ерекше жағдайлар. Бір жағынан қарастырғанда, операциялардың тізбелі орындалуы информация өңделуінің кез келген күрделі алгоритмін жалғыз процессор арқылы жүзеге асыруға мүмкіндік береді. Бірақ, екінші жағынан, операциялардың тізбелі орындалуы жүйенің жұмыс алгоритмінің орындалу ұзақтығын оның күрделілігіне тәуелді қылады, яғни күрделі алгоритмдер қарапайым алгоритмдерге қарағанда баяуырақ орындалады. Өңделуші информация ағымын микропроцессорлық жүйенің жалғыз буыны - микропроцессор арқылы өткізу керек болғандықтан, оның тезәрекеттілігі онша жоғары болмайды. Дәстүрлі цифрлық жүйеде информация ағымының параллель орындалуын ұйымдастыру қиын емес, бірақ ол үшін схеманы күрделендіруге тура келеді.
Микропроцессордың кезекті мезетте қандай операция орындайтындығы басқару информациясымен, яғни бағдарламаның кезекті командасымен анықталады. Командалар (нұсқамалар) жинамы түріндегі бағдарламадағы әрбір команданың нақтылы кодын ажырату арқылы процессор осы мезетте не істеу керектігін біледі.
Процессордың орындай алатын командалары оның командалар жүйесін құрады. Процессордың командалар жүйесінің құрылымы мен көлемі оның тезәрекеттілігін, икемділігін, пайдаланылу ыңғайлылығын анықтайды. Командалар жүйесі, микропроцессордың түріне байланысты, жеке мәселелерді ғана шешуге икемделген (арнайы процессорларда) немесе алуан түрлі мәселелерді шешуге (әмбебап процессорларда) бағытталған болуы мүмкін. Команда кодтарының разряд саны әртүрлі болуы мүмкін (бір байттан бірнеше байтқа дейін). Командалардың орындалу ұзақтығы әртүрлі, сондықтан командалар жинамы түріндегі жеке бағдарламаның түгелдей орындалу ұзақтығы бағдарламадағы командалар санына ғана емес, онда қандай командалардың пайдаланылғандығына да тәуелді болады.
Командалардың орындалуын қамтамасыз ету үшін процессордың құрамына келесі буындар енгізілген, олар: жалпы қызмет регистрлерінің жинағы, арифметикалық-логикалық құрылғы (АЛҚ, ALU - Arithmetic Logic Unit), арнайы регистрлер, мультиплексорлар, буферлер және т.б. қызмет буындары. Микропроцессор буындарының жұмысы процессордың жалпы сыртқы тактілік сигналдары арқылы сәйкестіріледі.
Микропроцессорлық жүйені құрушының процессордың ішкі құрылымы жөнінде, оның нақтылы кіріс сигналдарына және басқару кодтарына жауап ретінде қандай операция орындайтыны және қандай шығыс сигналдарын шығаратындығы туралы толық түсінігі болу керек. Олармен қатар, ол міндетті түрде, процессордың командалар жүйесін, оның жұмыс режимдерін және процессордың сыртқы әлеммен байланыс тәртібін (яғни, дерек алмастыру хаттамасын) білу керек.
1.1.2 Микропроцессорлық жүйенің байланыс жүйесі
Дәстүрлі байланыс құрылымында жүйе құрамындағы әрбір құрылғы өзінің сигналдары мен кодтарын өзге құрылғыларға тәуелсіз, жеке байланыс жолдары арқылы жібереді. Бұл жағдайда жүйедегі байланыс жолының саны да, ондағы дерек алмастыру хаттамасы да (шешілетін мәселеге байланысты) әртүрлі болады.
Микропроцессорлық жүйелердің құрамындағы әртүрлі құрылғылардың арасындағы дерек алмастырылу хаттамаларының әмбебаптылығы мен қарапайымдылығын қамтамасыз ету үшін желілік байланыс жүйесі деп аталатын құрылым қолданылады.
Желілік байланысты жүйелерде құрылғылар арасындағы сигналдардың барлығы да бір жолдармен, бірақ әртүрлі уақыт мезеттерінде жіберіледі (ол кезектелімді жіберілім деп аталады). Жіберілімнің екі бағытта да жүзеге асырылуы мүмкін (ол екібағытты жіберілім деп аталады). Нәтижесінде байланыыс жолдарының саны қысқарады және дерек алмастырылу тәртіптері (хаттамалары) қарапайымдалады. Сигналдардың немесе кодтардың жіберілетін жолдарының тобы желі (Bus) деп аталады.
Желілік байланыс құрылымында желіге қосылған құрылғылардың барлығының да дерек жіберуі немесе оны қабылдауы нақтылы тәртіппен (желі арқылы дерек алмастырылу хаттамасы бойынша) жүзеге асырылады.
Желілік байланысты жүйелер, негізінде, үш жағдайлы (3S, 3-state) шығысты микросхемалар арқылы құрылады. Ол микросхемалардың сәйкесті шығыстарын біріктіріп, кезектелімді немесе қосбағытты жолдар алуға мүмкіндік береді.
3S шығысты микросхемалардың қолданылымы кезінде жолға қосылған бір микросхеманың ғана шығыстары жандандырылып, ал өзгелерінің шығыстары үшінші (жоғарыкедергілі) жағдайында болуы қамтамасыз етілу керек.
Қалыпты микропроцессорлық жүйенің құрамына кіретін негізгі құрылғылар (1.1-сурет):
жүйеде информацияның өңделуін және оның жан-жақты жіберілімін жүзеге асыратын орталық процессор (ОП);
жүйенің жұмыс бағдарламаларын сақтауға арналған тұрақты жады (ROM - Read Only Memory);
жүйе жұмысына қажетті деректерді сақтауға арналған қызмет жадысы (RAM - Random Access Memory);
микропроцессорлық жүйенің сыртқы құрылғылармен байланысын қамтамасыз етуші енгізушығару құрылғылары мен олардың сәйкесті интерфейстері.
1.1 Сурет
Микропроцессорлық жүйенің құрамындағы құрылғылардың барлығы ортақ жүйе желісі арқылы біріктілген (ол жүйе магистралі немесе байланыс арнасы деп те аталады). Жүйе магистраліне негізгі үш информациалық желі кіреді, олар:
адрес желісі АВ (Address Bus);
дерек желісі DB (Data Bus);
басқарым желісі СВ (Control Bus).
Дерек желісі - жүйе модулдерінің арасында дерек алмастырылуын қамтамасыз етуші, негізгі желі. Дерек желісі, оның деректерді екі бағытта да жіберуін қамтамасыз етуі керек болғандықтан, ол әрқашан екібағытты болады.
Адрес желісі - жадыға (немесе сыртқы құрылғыларға) нақтылы бағытталған байланысымды қамтамасыз етуші желі.
Магистралдың байланыс жолдарының толық санын кеміту үшін көбіне адрес желісі мен дерек желісін кезектестіру тәсілі қолданылады, яғни байланыс жолдары арқылы әртүрлі уақыт мезетінде адрес пен дерек кезектеп жіберіледі (цикл басында - адрес, цикл аяғында - дерек).
Басқару желісінің жолдарындағы сигналдар кезекті цикл түрін анықтайды және оның әртүрлі кезеңдеріне сәйкесті уақыт мезеттерін бекітеді. Онымен қатар, басқару сигналдары процессордың (немесе магистралдың өзге қожасының, бастаушының, master) жұмысын жадының немесе енгізушығару құрылғыларының (орындаушы құрылғының, slave) жұмысымен келістіреді.
Негізгі басқару сигналдары - алмастыру стробтары, яғни жазу (шығару) стробы мен оқу (енгізу) стробы. Бұл сигналдарды процессор қалыптастырады, олар деректердің желі арқылы сәйкесті бағытта жіберілу мезеттерін анықтайды.
Микропроцессорлық жүйенің құрамындағы құрылғылардың барлығы да жүйе магистралына қосылған және олардың өзара информация алмасуы да осы магистраль арқылы жүзеге асырылады.
Енгізушығару құрылғыларын немесе сыртқы құрылғыларды (ЕШҚ немесе СҚ) жүйе магистралына қосу үшін олардың сигналдары нақтылы стандарттарға сәйкес келу керек, ол сәйкесті енгізушығару интерфейстері арқылы жүзеге асырылады.
1.1.3 Микропроцессорлық жүйенің жұмыс режимдері
Микропроцессорлық жүйені, жоғарыда айтылғандай, кез келген жұмысқа икемдеуге болады. Бұндай икемділік жүйенің орталық буыны - микропроцессор жұмысының сәйкесті бағдарлама (software) арқылы орындалуымен анықталады. Микропроцессорлық жүйенің аппараттық құрылымы (hardware) шешілетін мәселеге байланысты өзгертілмейді. Қойылған мақсатқа сәйкесті бағдарлама құрып, оны жүйе жадысына енгізу арқылы, микропроцессорды, жүйенің аппаратық мүмкіндігі жететін, кез келген мәселені шешуге бағыттауға болады. Бұның үстіне, микропроцессорлық жүйенің байланыстарының желілік ұйымдастырылуы оның аппараттық модулдерін жаңартуға, мысалы, жүйе жадысын бұрынғысынан көлемдірек немесе тезәрекеттілеу түрлеріне ауыстыруға, оған жаңа енгізушығару құрылғыларын қосуға, тіпті микропроцессордың өзін де одан қуаттырақ түріне ауыстыруға мүмкіндік береді.
Микропроцессорлық жүйенің шешілетін мәселеге икемделуіне оның жұмыс режимін (яғни, жүйелік магистраль арқылы дерек алмастырылу режимін) таңдау мүмкіндігі де көмектеседі.
Кез келген микропроцессорлық жүйеде оның магистралі арқылы информация алмастырылуы негізгі үш түрлі режимде жүзеге асырылады, олар:
бағдарламалы-басқарылымды алмастыру;
үзілістер арқылы алмастыру (Interrupts);
жадыға тура шығу арқылы алмастыру (ЖТШ, DMA - Direct Memory Access).
Олардың ішіндегі негізгісі - біріншісі, онсыз қалған алмастыру режимдері орындалмайды. Бұл режимде процессор жүйелік магистралдың жеке қожасы (Master) болады, яғни жүйе құрамындағы құрылғылар арасында информация алмастырылуы, орындалушы бағдарламаның анықтаған тәртібі бойынша, процессордың басқаруымен ғана жүзеге асырылады. Процессор жадыдан команда кодтарын оқиды (таңдап шығарады), сосын оларды орындап (яғни, жадыдан немесе енгізушығару құрылғысынан алынған деректерді осы командаларға сәйкесті өңдеп), өңдеу нәтижелерін жадыға жазады немесе енгізушығару құрылғысына жібереді.
Үзілістер арқылы дерек алмастыру микропроцессорлық жүйенің сыртқы оқиғаға немесе сырттан түскен сигналға байланысты кезексіз әрекетінің қажетті жағдайында пайдаланылады. Сыртқы оқиғаға байланысты әрекетті келесі жолдармен ұйымдастыруға болады:
сыртқы оқиғаның туғанын бағдарламалық тәсілмен бақылап отыру арқылы (ту тексеру тәсілі немесе Polling);
оқиғаның туғаны туралы сыртқы құрылғының жіберген үзіліс сұранысы арқылы (IRQ - Interrupt ReQuest).
Екі жағдайда да процессор негізгі бағдарламаға байланысты кезекті жұмысын уақытша тоқтатып, сыртқы оқиғаға байланысты іс-әрекетке ауысады да, бұл жұмыс біткеннен кейін негізгі бағдарламаның жұмысына қайтып келеді. Үзілістер арқылы дерек алмастыру кезінде, бағдарламалы алмастырудағы сияқты, магистралдағы барлық сигналды процессор қояды, яғни үзіліске байланысты жұмыс та толықтай процессордың басқаруымен жүзеге асырылады.
Жадыға тура шығу режимінде (DMA - Direct Memory Access) қызмет қажет қылған сыртқы құрылғы процессорға сәйкесті сұраныс жібереді, оған жауап ретінде микропроцессор кезекті команданың орындалуын бітіргеннен кейін жүйе желісінен ажырап, сұраныс жіберген құрылғының жұмысына рұқсат береді. Жадыға тура шығу арқылы, негізінде, енгізушығару құрылғысы мен жады арасындағы информация жіберілуі жүзеге асырылады. Жадыға тура шығу арқылы дерек жіберілімін процессор емес, арнайы контроллер (ЖТШ контроллері) басқарады. Магистралді сұрап алған құрылғының жұмысы біткеннен кейін, магистраль босатылып, процессордың қарауына беріледі де, ол уақытша тоқтатылған негізгі бағдарламаның жұмысын жалғастырады.
1.1.4 Микропроцессорлық жүйенің архитектуралары
Осы кезеңге дейін біз микропроцессорлық жүйенің бір түрін, атап айтқанда ортақ желілі архитектурамен (ол Принстон немесе фон-Нейман архитектурасы деп аталады) құрылған түрін қарастырдық. Бұндай құрылымда деректер мен командалар бір жадыда сақталады және олар жалғыз ортақ желі арқылы жіберіледі (1.2-сурет).
1. 2 Сурет
Микропроцессорлық жүйе архитектурасының бұдан басқа түрі де бар, ол - жеке желілі архитектура (ол Гарвард архитектурасы деп аталады). Бұндай құрылымда деректер мен командалар олардың өздеріне арналған дербес жадыларда сақталады және олар әрбіреуіне сәйкесті дербес желілері арқылы жіберіледі (1.3-сурет).
1.3 Сурет
Ортақ желілі (фон-Нейман) архитектура екі желіге қатар жұмыс істеуді және олар арқылы дерек жіберілуін қатар бақылауды қажет қылмайды. Деректер мен командалардың жалғыз жадыда сақталуы жадыны олардың көлеміне байланысты бөлуге мүмкіндік береді. Мысалы, кейбір жағдайда күрделі және үлкен көлемді бағдарлама керек болып, ал деректер онша көп болмауы мүмкін. Басқа жағдайда, керісінше, бағдарлама қарапайым, ал деректер үлкен көлемді болуы мүмкін. Жады аймағын осы жағдайларға байланысты бөлу ешқандай қиындық тудырмайды, әйтеуір - деректер мен командалар жүйе жадысына сыйса болды. Әдетте, осындай архитектуралы жүйелердің жадысы үлкен мөлшерлі болады (ондаған және жүздеген мегабайт). Ортақ желілі архитектура көбірек таралған, мысалы, дербес компьютерлерде осы архитектура қолданылады.
Ортақ желілі архитектурада жадыдан командалардың таңдалуы мен деректердің жадыдан немесе енгізушығару құрылғысынан қабылдануы немесе оларға жіберілуі жалғыз желі арқылы жүзеге асырылатындықтан, олар кезектеп жіберіледі, ал бұның жүйе жұмысында кідіріс тудыратындығы сөзсіз. Қазіргі заманғы процессорларда конвейерлік технологиялар мен кэш-жадыны пайдалану және тактілік жиілікті көтеру арқылы командалардың орындалу уақыты қысқартылып, жүйенің жұмыс жылдамдығы едәуір көтерілген. Бірақ, жүйенің тезәрекеттілігін одан әрі көтеру деректер мен командалардың жіберілімін қатарластыру арқылы ғана, яғни екіжелілі архитектураға ауысу арқылы жүзеге асырылады.
Екіжелілі (Гарвард) архитектурада әрбір желідегі жіберілімдер бір-біріне тәуелсіз және уақыт бойынша параллель түрде жүзеге асырылады. Бұған сәйкесті, желілердің құрылымын (адрес коды мен дерек кодтарының разряд санын, информация алмастырылуының тәртібі мен жылдамдығын және т.б.) әрбір желінің шешетін мәселесіне байланысты ыңғайлап таңдауға болады. Сонымен, екіжелілі архитектура микропопроцессорлық жүйенің жұмысын тездетеді.
Екіжелілі архитектураның қолданылатын негізгі аймағы - үлкен көлемді жадыны қажет қылмайтын, онша күрделі емес жұмыстарға арналған, бірақ аса жоғары тезәрекеттілікті қажет қылатын, жекекристалды микроконтроллерлер.
1.1.5 Микропроцессорлық жүйелердің түрлері
Микропроцессорлық техниканың қазіргі заманғы қолданылым аймағы ұшан байтақ, оларға қойылатын талап та алуан түрлі. Сондықтан, микропроцессорлық жүйелердің, қуаты, әмбебаптылығы, тезәрекеттілігі және құрылым ерекшеліктерімен ажыратылатын, бірнеше түрлері қалыптасқан. Олардың негізгі түрлері:
микропроцесорлар мен микропроцессорлық жинам микросхемаларының негізіндегі дәстүрлі микропроцессорлық жүйелер;
микроконтроллерлер - құрамына жүйе буындарының барлығы немесе көпшілігі енгізіліп, жеке микросхема түрінде орындалған, микропроцессорлық жүйенің ең таралған түрі;
контроллерлер - жеке модулдер түрінде орындалған, микропроцес-сорлық басқару жүйелері;
микрокомпьютерлер - сыртқы құрылғылармен ұштастырылу мүмкіндіктері аса дамытылған, қуаты жағынан көтеріңкі келетін, микропроцессорлық жүйелер;
компьютерлер (оның ішінде, дербес түрлері де) - аса қуатты және әмбебаптылығы жоғары дәрежедегі микропроцессорлық жүйелер.
Микропроцесорлар мен микропроцессорлық жинам микросхемаларының негізінде құрылатын дәстүрлі микропроцессорлық жүйелер өндірісте шығарылатын қалыпты микроконтроллерлердің қойылған талапқа сай сипаттамаларды қамтамасыз ете алмайтын жағдайда пайдаланылады. Мысалы, олардың құрамына қажетті сыртқы құрылғылардың сәйкесті интерфейстік құрылғыларын орналастыру арқылы олардың жұмыс мүмкіндігін кеңейтуге болады.
Микроконтроллерлер іс жүзінде жеке түрінде емес, олардан күрделірек құрылғылардың құрамында пайдаланылатын (мысалы, контроллер құрамында), әмбебап құрылғылар. Микроконтроллердің жүйелік желісі микросхема ішінде орналастырылған, яғни оған пайдаланушының қолы жетпейді. Микроконтроллерге сыртқы құрылғыларды қосу мүмкіншілігі шектелген. Микроконтроллерлі құрылғылар, әдетте, жеке бір мәселені шешуге ғана бағытталып құрылады.
Контроллерлер, әдетте, жеке топқа біріктірілген, мазмұны жағынан бір-біріне жуық келетін бірнеше мәселені шешу үшін құрылады. Оларға, әдетте, қосалқы буындар мен құрылғылар (мысалы, үлкенірек жады, енгізушығару құралдары) қосу мүмкіндігі болмайды. Олардың да жүйелік желісіне пайдаланушының қолы жетпейді. Контроллердің құрылымы қарапайым келеді және ол ең жоғарғы тезәрекеттілікке ыңғайландырылған. Көптеген жағдайда орындалатын бағдарламалар тұрақты жадыда сақталады және өзгертілмейді. Контроллерлер жекетақталы құралым түрінде шығарылады.
Микрокомпьютерлер, контроллерлерден ерекше, ашық құрылыммен құрылады, яғни олардың жүйелік желісіне бірнеше қосалқы құрылғыны қосу мүмкіндігі болады. Микрокомпьютерлердің пайдаланушымен байланыс мүмкіншілігі де (видеомонитор, түймежинам) кеңейтілген. Микроком-пьютерлерді түр-түрлі мәселелерді шешуге пайдалануға болады, бірақ әрбір мәселеге байланысты оларды қайтадан ыңғайлау керек болады, бұл оған жаңа бағдарлама енгізу арқылы жүзеге асырылады.
Компьютерлер және олардың аса таралған түрі - дербес компьютерлер - микропроцессорлық жүйелердің әмбебаптылығы жағынан ең жоғарғы түрі. Оларды жетілдіру және оларға жаңа құрылғылар қосу мүмкіншіліктері алдын ала ескерілген. Сыртқы құрылғылар оларға бірнеше порттар арқылы қосылады. Компьютерлердің қолданылым аймағы ұшан байтақ, олар: математикалық есептемелер, дерек қорларымен жұмыс атқару, күрделі электрондық жүйелердің жұмысын басқару, компьютерлік ойындар, құжаттар дайындау және т.б. Әрине, басқару жұмысына арналған микропроцессорлық жүйелерді дербес компьютерлер негізінде де құруға болады. Бұл жағдайда дербес компьютер бағдарланған жұмысына сәйкесті қосалқы ұштастыру құрылғыларымен қамтылу керек.
1.2 Информация ауыстырылымының ұйымдастырылуы
1.2.1 Информация ауыстырылымының циклдері
Микропроцессорлық жүйелерді құрушының оларды құрар алдында білуі керек басты мәселе - ол бұндай жүйелердің желілері арқылы информация ауыстырылымының ұйымдастырылу принциптері. Онсыз жүйенің аппаратық бөлігін құру мүмкін емес, ал аппараттық бөлігінсіз, әрине, ешқандай бағдарлама жұмыс істемейді.
Микропроцессорлық жүйелердегі информация ауыстырылымы бірнеше ауыстыру циклдерінде жүзеге асырылады. Информация ауыстыру циклі ретінде желі арқылы жүргізілетін қарапайым ауыстыру операциясының орындалуына қажетті уақыт аралығы алынады. Информация ауыстыру циклінің нақтылы мысалы ретінде дерек кодтарының процессордан жадыға немесе олардың енгізушығару құрылғысынан процессорға жіберілуін келтіруге болады.
Информация ауыстыру циклдері негізгі екі түрге бөлінеді:
жазу (шығару) циклі, бұл циклде процессор жадыға немесе сыртқы құрылғыға информация жазады (шығарады);
оқу (енгізу) циклі, бұл циклде процессор жадыдағы немесе сыртқы құрылғыдағы информацияны оқиды (енгізеді).
Әрбір циклде информация ауыстырылуына қатысты құрылғылар тиянақты қойылған тәртіппен (информация ауыстырылымының қабылданған хаттамасы бойынша) бір-біріне информациялық және басқару сигналдарын жібереді.
Ауыстыру циклінің ұзақтығы тұрақты да, айнымалы да мөлшерде болуы мүмкін, бірақ ол әрқашан жүйенің тактілік сигналының бірнеше периодына созылады, яғни процессордың информацияны оқу немесе жазу жиілігі идеалды жағдайда да жүйенің тактілік жиілігінен бірнеше есе кем болады.
Команда кодтарының жүйе жадысынан таңдалуы да оқу циклінің тәртібімен жүзеге асырылады. Сондықтан, біржелілі архитектуралы құрылымның жүйе магистралында команда таңдау циклдері мен дерек жіберу (оқу және жазу) циклдері кезектеседі, бірақ ауыстырылым хаттамалары деректердің немесе командалардың жіберілетіндігіне тәуелсіз, өзгермеген түрінде қалады. Екіжелілі архитектуралы құрылымда команда таңдау циклдері мен дерек жазу немесе оқу циклдері сәйкесті желілерге бөлініп, олар уақыт бойынша қатар жүргізіледі.
1.2.2 Микропроцессорлық жүйенің желілері
Микропроцессорлық жүйенің құрамы мен оның әртүрлі желілерінің қызметін толығырақ қарастыралық.
Бұрын айтылғандай, микропроцессорлық жүйенің жүйе магистралының (жүйе желісінің) құрамына үш түрлі информациялық желі кіреді, олар: адрестік желі, дерек желісі және басқару желісі.
Дерек желісі - жүйе модулдерінің арасында дерек ауыстырылуы жүзеге асырылатын, негізгі желі. Оның разрядының (байланыс жолдарының) саны информация ауыстырылымының жылдамдығы мен тиімділігін және микропроцессордың командалар жүйесіндегі команда санын анықтайды.
Дерек желісі, оның деректерді екі бағытта да жіберуін қамтамасыз етуі керек болғандықтан, әрқашан екібағытты болады. Бұл желінің жолдарына қосылатын құрылғылардың шығыс каскады үш жағдайлы (3S) болу керек.
Қалыпты дерек желілері 8, 16, 32 немесе 64 разрядты болады. Жеке ауыстыру циклінде 64-разрядты желі арқылы 8 байт, ал 8-разрядты желі арқылы бір ғана байт жіберуге болатындығы түсінікті. Дерек желісінің разряд саны бүкіл магистралдың разряд санын анықтайды. Мысалы, 32-разрядты жүйе магистралы туралы сөз болғанда, оның дерек желісінің 32-разрядты екенін түсінуге болады.
Адрес желісі микропроцессорлық жүйенің күрделілігінің ең жоғарғы мөлшерін, яғни оның жады көлемінің ең жоғарғы мәнін, демек, бағдарлама мен сақталатын деректердің максималды көлемін анықтайды. Адрес желісінің қамтамасыз ететін адрес саны - 2N, бұндағы N - адрес желісінің разряд саны. Мысалы, Intel 8085 микропроцессорының 16-разрядты адрес желісі 216 = 65 536 ұяшыққа шығуға мүмкіндік береді.
Магистралдың байланыс жолдарының толық санын кеміту үшін көбіне адрес желісі мен дерек желісін кезектестіру тәсілі қолданылады, яғни байланыс жолдары арқылы әртүрлі уақыт мезетінде адрес пен дерек кезектеп жіберіледі (цикл басында - адрес, цикл аяғында - дерек). Осы мезеттерді бекіту (стробтау) басқару желісіндегі арнайы сигналдармен жүзеге асырылады. Кезектесімді адресдерек желісі арқылы ауыстыру жылдамдығының кемірек, демек, ондағы ауыстыру циклінің ұзағырақ болатындығы түсінікті. Сонымен, адрес желісі мен дерек желісінің түріне байланысты магистралдар кезектесімді және кезектесімсіз түрлеріне бөлінеді.
Басқару желісінің жолдарындағы сигналдар (басқару сигналдары) процессордың (немесе магистралдың өзге қожасының, бастаушының, master) кезекті жұмысын жадының немесе енгізушығару құрылғыларының (орындаушы құрылғының, slave) жұмысымен келістіреді. Басқару сигналдары арқылы үзіліс немесе ЖТШ сұраныстарына байланысты жұмыстар да жүргізіледі.
Процессордың ауыстыру процесін цикл шегінің қай кезінде бітіретіндігіне, яғни оның ауыстыру стробын қай мезетте алып тастайтындығына байланысты, екі түрлі жағдай бар:
Синхронды ауыстырылымда процессор дерек ауыстырылуын нақтылы қойылған ұсталым уақытынан (tұст) кейін, яғни орындаушы-құрылғыға санаспай-ақ бітіреді;
Асинхронды ауыстырылымда процессор дерек ауыстырылуын орындаушы-құрылғы операцияның орындалғандығын арнайы сигнал арқылы құптағасын (handshake - қол қысу) ғана бітіреді.
Сонымен, микропроцессорлық жүйелерде пайдаланылатын ауыстырылым тәртібіне байланысты, олардың магистралдары синхронды және асинхронды болып ажыратылады.
1.2.3 Информация ауыстырылымының ұйымдастырылуы
1.2.3.1 Бағдарламалы ауыстырым
Микропроцессорлық жүйенің магистралдары арқылы бағдарламалы дерек ауыстырылымның екі түрлі жағдайын қарастыралық. Бірінші жағдай - микрокомпьютерлер мен контроллерлерде қолданылатын, асинхронды, кезектесімді Q-bus магистралы арқылы жүргізілетін ауыстырылым. Екінші жағдай - дербес комьютерлерде қолданылатын, синхронды, кезектесімсіз ISA (Industrial Standard Architecture) магистралы арқылы жүргізілетін ауыстырылым.
1.2.3.1.1 Асинхронды Q-bus магистралы арқылы дерек ауыстырылымы
Асинхронды, кезектесімді Q-bus магистралі арқылы бағдарламалы басқарылымды дерек жіберілімінің ұйымдастырылуы келесі тәртіппен жүзеге асырылады.
Адресдерек (AD) желісінде жіберім циклінің басында (адрес фазасында) процессор (бастаушы) желіге адрес кодын қояды және онымен қатар теріс строб сигналын SYNC' қояды. Жазу циклінің де, оқу циклінің де адрес фазасы бірдей болады.
Оқу циклінің дерек фазасында (1.4-сурет) процессор дерек оқылымының теріс строб сигналын DIN' қояды. Оған жауап ретінде орындаушы құрылғы желіге өзінің дерек кодын (оқылатын дерек) қояды да, дерек жіберу операциясының орындалғандығын RPLY' сигналымен құптайды.
1.4 Сурет
Процессор, RPLY' сигналын қабылдағаннан кейін, DIN' сигналын алып тастайды. Оған жауап ретінде орындаушы құрылғы құптаушы RPLY' сигналын алып тастайды. Бұдан кейін процессор SYNC' сигналын алып тастайды да, жіберім процесін бітіреді.
Жазу циклінің дерек фазасында (1.5-сурет) процессор AD желісіне жазылатын дерек кодын қойып, онымен қатар дерек жазылымының теріс строб сигналын DOUT' қояды. Оған жауап ретінде орындаушы құрылғы деректі қабылдайды да, дерек қабылдау операциясының орындалғандығын RPLY' сигналымен құптайды. Процессор мен орындаушы құрылғының келесі әрекеттері оқу цикліндегі әрекеттер тәрізді.
Қарастырылған магистралда адрес синхронды жіберіледі (оның қабылданғандығын орындаушының құптамасынсыз), ал деректер, оның жіберілгендігін немесе қабылданғандығын міндетті түрде құптау арқылы, асинхронды жіберіледі.
1.5 Сурет
1.2.3.1.2 Синхронды ISA магистралы арқылы дерек ауыстырылымы
Синхронды, кезектесімсіз ISA магистралі арқылы бағдарламалы басқарылымды дерек жіберілімінің ұйымдастырылуы келесі тәртіппен жүзеге асырылады.
Оқу және жазу циклдерінің екеуі де процессордың (бастаушының) адрес желісіне (SA) адрес кодын қоюынан басталады да, онда ол жіберілім процесінің аяғына дейін қалады. Оқу және жазу циклдеріне бірдей, адрес циклі дерек жіберілімі стробының (IOR' немесе IOW') маңдай басымен аяқталады. Адрес фазасында өз адресін таныған орындаушы құрылғы дерек жіберіліміне дайындық жағдайына ауысады.
Оқу циклінің дерек фазасында (1.6-сурет) процессор енгізушығару құрылғысынан (ЕШҚ) дерек оқылымының теріс строб сигналын (IOR') қояды. Оған жауап ретінде орындаушы құрылғы дерек желісіне (SD) өзінің дерек кодын (оқылатын дерек) қояды. Нақтылы қойылған уақыттан кейін процессор IOR' стробын, сосын SA желісінен адрес кодын алып тастайды.
1.6 Сурет
ISA магистралы арқылы жазу циклінің дерек фазасында (1.7-сурет) процессор дерек желісіне (SD) жазылатын дерек кодын қойып, онымен қатар ЕШҚ-ға дерек жазылымының теріс строб сигналын IOW' қояды. Оған жауап ретінде орындаушы құрылғы SD желісінен оған жазылатын дерек кодын қабылдайды. Процессор мен орындаушы құрылғының келесі әрекеттері оқу цикліндегі әрекеттер тәрізді.
1.7 Сурет
Қарастырылған жағдай негізгі, синхронды ауысуға ғана қатысты. ISA магистралында асинхронды алмастыруды жүзеге асыру мүмкіндігі де бар. Ол үшін арнаның (магистралдың) дайындық сигналы IO CH RDY қолданылады.
Қарастырылған жағдайлар осы магистралдар арқылы информация ауыстырылуының басты принциптерін ғана суреттейді.
1.2.3.2 Үзілістер арқылы ауыстырым
Үзіліс режиміндегі ауыстыру циклдері де, бағдарламалы ауыстыру циклдеріндегі сияқты тәртіппен жүргізіледі, бірақ олардың өздеріне тән ерекшеліктері де бар.
Микропроцессорлық жүйелердегі үзілістердің негізгі екі түрі болады:
магистраль арқылы оқу циклінің жүргізілуін қажет қылатын, векторлық үзілістер;
магистраль арқылы ешқандай ауыстыру циклін қажет қылмайтын, радиалды үзілістер.
Микропроцессорлық жүйедегі үзілістердің көптігіне байланысты, процессорға нақтылы үзілістің номері (үзіліс векторының адресі) туралы мәлімет керек. Бұл мәліметті процессорға үзіліс түрлеріне сәйкесті екі жолмен жіберуге болады.
1.2.3.2.1 Q-bus магистралындағы үзіліс
Векторлық үзілісте үзіліс номерінің кодын процессорға үзіліс сұраған енгізушығару құрылғысының өзі жібереді. Оны қабылдау үшін процессор магистраль арқылы оқу циклін жүргізеді де, дерек желісі арқылы үзіліс номерінің кодын алады. Адрес желісі бұл циклде пайдаланылмайды, үзіліс сұраған құрылғы белгілі болғандықтан, информация ауыстыру үшін процессор үзіліс сұраған енгізушығару құрылғысының тап өзіне байланысады. Бұл жағдайда барлық енгізушығару құрылғыларының үзіліс сұранысына магистралдың бір-ақ жолы жеткілікті. Мысалы, Q-bus магистралындағы үзілістер тап осылай ұйымдастырылған. Осы Q-bus магистралындағы үзілістерге байланысты сигналдардың таралым схемасы 1.8-суретте көрсетілген.
1.8 Сурет
Q-bus магистралындағы үзіліс сұрауберу циклінің уақыттық диаграммасы 1.9-суретте келтірілген. Үзіліс сұранысы -VIRQ сигналымен жіберіледі. Үзіліс сұраушы құрылғылардың арасында талас-тартыс тудырмас үшін, олардың шығыс каскадтары OC түрлі болу керек. Үзіліс сұранысын қабылдап, (кезекті команданы орындағаннан кейін) процессор IAKO сигналымен үзіліс береді және дерек оқу сигналын ( - DIN) қояды. IAKO сигналы тізбелеп, үзіліс сұраушы құрылғылардың барлығынан өтеді. Үзіліс сұраған құрылғы бұл сигналды өзінен әрі жібермейді. Үзіліс сұранысын екі құрылғы қатар жіберген болса, онда үзіліс олардың процессорға жуығырақ тұрғанына беріледі. Талас-тартыс тудырмаудың бұндай механизмі тізбелік мәртебе (Daisy Chain) деп аталады. Үзіліс сұраған құрылғы IAKO сигналын қабылдағаннан кейін, өзінің -VIRQ сұранысын алып тастау керек.
1.9 Сурет
Бұдан кейін процессор үзіліс номерін адрессіз оқу циклін жүргізеді. Қабылданған -DIN және IAKO сигналдарына жауап ретінде үзіліс алған құрылғы адресдерек желісіне (AD) үзіліс номерінің кодын (үзіліс векторының адресін) қойып, оны -RPLY сигналымен құптауы керек. Процессор үзіліс номерінің кодын қабылдап, одан кейін -DIN және IAKO сигналдарын алып тастау арқылы адрессіз оқу циклін бітіреді.
1.2.3.2.2 ISA магистралындағы үзіліс
Радиалды үзілісте қанша үзіліс сұраушы құрылғы болса, магистралда үзіліс сұранысының сонша жолы болады, яғни үзіліс қажет қылған әрбір құрылғы сұранысын өзінің жеке жолымен жібереді. Процессор үзіліс номерін сұраныс келген жол номеріне қарап біледі, яғни бұнда ешқандай оқу циклі қажет болмайды. Радиалды үзілістер пайдаланылған жағдайда жүйеге, үзіліс сұраныстарын реттеу жұмысын атқаратын, үзіліс контроллері қосылады. Мысалы, ISA магистралындағы үзілістер тап осы тәртіппен ұйымдас-тырылған. Осы ISA магистралындағы үзілістерге қатысты құрылғылардың байланыс құрылымы 1.10-суретте көрсетілген.
1.10 Сурет
Процессор үзіліс контроллерімен магистраль арқылы да (оның жұмыс режимін қоюға), магистралдан тыс та (үзіліс сұраныстарының жұмысын атқару кезінде) байланысады. Үзіліс сұраушы құрылғының әрбіреуінің сұраныс сигналының жеке жолы IRQ болады. Бұл жағдайда ешқандай талас-тартыс тумайтындықтан, құрылғылардың шығыс каскадтары 2S түрлі болады. Үзіліс сұранысының түсу мезеті IRQ сигналының алғы, тура ауытқуымен анықталады. Бірнеше сұраныстың қатар түсуі кезінде, олардың жұмыс тәртібін үзіліс контроллері анықтайды.
1.2.3.3 ЖТШ режиміндегі ауыстырым
Жадыға тура шығу (ЖТШ) режиміндегі ауыстыру циклдері бағдарламалы ауыстыру және үзіліс беру циклдерінің тәртібімен орындалады.
ЖТШ режиміндегі ауыстыруды бастар алдында, ЖТШ қажет қылған құрылғы микропроцессорға сұраныс жіберу керек. ЖТШ сұранысын жіберу және оның берілу тәртібі үзіліс сұранысын жіберу және оның берілу тәртібіне ұқсас келеді. Екі жағдайда да, қызмет қажет қылған құрылғы процессорға сұраныс сигналын жібереді. Бірақ ЖТШ жағдайында процессор өзін магистралдан ажыратып, міндетті түрде сұраушы құрылғыға арнайы сигналдар арқылы ЖТШ береді. Ал радиалды үзіліс сұраныстарына процессордың үзіліс бермеуі де мүмкін.
1.2.3.3.1 Q-bus магистралындағы ЖТШ режимі
Q-bus магистралындағы ЖТШ сұранысы мен оның берілуі үзіліс жағдайындағы сияқты (1.11-сурет). ЖТШ сұранысының -DMR сигналын, ЖТШ қажет қылған құрылғылардың барлығы магистралдың бір жолымен жібереді. Құрылғылардың шығыс каскадтары OC түрлі болу керек. ЖТШ сұранысын (яғни, -DMR сигналын) қабылдап, процессор DMGO сигналымен ЖТШ берілу сигналын жібереді. Бұл сигнал барлық құрылғыдан тізбелеп өтеді де, нәтижесінде сұраныс жіберген құрылғылардың процессорға жуықтау орналасқаны (Daisy Chain мәртебесімен) ЖТШ алады. Сосын ЖТШ алған құрылғы магистраль арқылы, бағдарламалы ауыстырудағы сияқты, ауыстыру циклдерін жүргізеді. ЖТШ циклдерінде информация жадыдан оқылып, енгізушығару құрылғысына жазылады, немесе, керісінше - енгізушығару құрылғысынан оқылып, жадыға жіберіледі.
1.11 Сурет
1.2.3.3.2 ISA магистралындағы ЖТШ режимі
ISA магистралындағы ЖТШ сұранысының жіберілуі мен оның берілуі радиалды үзілістердің ұйымдастырылуын еске түсіреді (1.12-сурет). Дәл сондағыдай, жүйеде, сұраныс сигналдары (DRQ) жиналатын және рұқсат сигналдары (-DACK) таралатын, ЖТШ контроллері болады. Әрбір ЖТШ арнасына (DRQ және - DACK сигналдарының жұбына) ЖТШ сұраушы бір ғана құрылғы қосылады. Олардың шығыс каскадтары - 2S түрлі. ЖТШ қажет қылған құрылғы сұраныс сигналын (DRQ) жібереді де, жауапқа ЖТШ сигналын (-DACK) алады. Бұдан кейін ЖТШ контроллері магистраль арқылы енгізушығару құрылғылары мен жады арасында ауыстыру циклдерін жүргізеді.
1.12 Сурет
ISA магистралындағы ЖТШ циклдерінің уақыттық диаграммасы 1.13-суретте көрсетілген. ISA магистралында жеке түрдегі жадыға жазу (-MEMW) және енгізушығару құрылғыларына жазу (-IOW) стробтары мен жадыдан оқу (-MEMR) және енгізушығару құрылғыларынан оқу (-IOR) стробтары пайдаланылады. Бұл ЖТШ режимінің дербес алмастыру циклінде информацияны жадыдан оқып, оны енгізушығару құрылғысына жазуға немесе информацияны енгізушығару құрылғыларынан оқып, оны жадыға жазуға мүмкіндік береді. Бұл кезде адрес желісіне жады адресі қойылады да, ал енгізушығару құрылғысы жалғыз AEN сигналымен табылады. ЖТШ режиміндегі алмастыру цикліне алдын ала ЖТШ сұраған және оны алған құрылғы ғана қатысады, сондықтан құрылғылар арасында адреске байланысты ешқандай талас-тартыс тумайды.
1.13 Сурет
1.3 Микропроцессорлық жүйенің негізгі буындары
1.3.1 Процессор
Микропроцессорлық жүйенің құрамына міндетті түрде енгізілетін негізгі буындарына процессор, жады, енгізушығару құрылғылары жатады.
Процессор (1.14-сурет), микропроцессорлық жүйенің негізін қалаушы, яғни оның жұмысын басқарушы, басты буыны. Ол, әдетте, жеке микросхема түрінде (микропроцессор) немесе микросхеманың (мысалы, микроконтроллердің) құрама бөлігі ретінде шығарылады. Процессор микросхемасының сәйкесті желі топтарына біріктірілген үш түрлі шықпалары болады, олар: адрес желісі, дерек желісі және басқару желісі. Кейде, микросхеманың шықпа санын кеміту үшін, кейбір сигналдар мен желілер кезектестіріледі.
1.14 Сурет
Процессордың басты сипаттамалары - оның дерек, адрес және басқару желілерінің разряд саны. Дерек желісінің разряд саны жүйенің жұмыс жылдамдығын анықтайды. Адрес желісінің разряд саны жүйенің дерек жеткізу күрделілігін анықтайды. Басқару жолдарының саны ауыстыру режимдерінің түр-түрлігін және процессордың, оған сәйкесті, өзге құрылғылармен байланыс тиімділігін анықтайды.
Процессордың негізгі үш желісінің сигналдық шықпаларынан басқа, сыртқы тактілік сигналдар (CLK) генераторын қосуға арналған бір (немесе екі) шықпасы болады. Процессордың тактілік жиілігі жоғары болған сайын, ол тезірек істейді, яғни командаларды тезірек орындайды. Дегенмен, процессордың тезәрекеттілігі тактілік жиілігімен ғана анықталмайды, оған оның құрылым ерекшеліктері де әсер етеді. Қазіргі заманғы процессорлар командалардың көпшілігін бір тактіде орындайды және олардың бірнеше команданы қатар орындау мүмкіншілігі де бар. Процессордың тактілік жиілігі оның магистраль арқылы ауыстыру жиілігін емес, ол микропроцессордың ішкі тезәрекеттілігін ғана сипаттайды.
Кез келген процессорда болатын тағы бір маңызды сигнал - бастапқы тазарту сигналы RESET. Қорек көзінің қосылғанында немесе ахаулық жағдайда бұл сигналдың берілуі арқылы процессор бастапқы қойылым бағдарламасын орындауға кіріседі. Бұл сигнал - радиалды үзілістің ерекше бір түрі. Кейде процессор микросхемасының, ерекше жағдайларға байланысты жұмыс атқаруға арналған (мысалы, сыртқы таймер арқылы үзіліске), тағы бір-екі радиалды үзіліс кірісі болады. Қазіргі заманғы процессорлар, әдетте, бір қорек көзінен (+5В немесе +3,3В) жұмыс істейді.
Процессорды магистралға қосу үшін буферлік микросхемалар пайдаланылады. Олар жүйе магистралы мен процессор желілерінің ауыстыру хаттамаларын келістіру қызметін атқарады. Кейде микропроцессорлық жүйеде бірнеше магистраль (жүйелік және жергілікті) пайдаланылуы мүмкін, бұндай жағдайда бұл магистралдардың әрбіреуінің өзінің жеке буферлік буыны болады. Бұндай құрылым, мысалы, дербес компьютерлерде қолданылады.
Қорек көзі қосылғаннан кейін процессор бастапқы ... жалғасы
Ұқсас жұмыстар
Пәндер
- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.
Ақпарат
Қосымша
Email: info@stud.kz