Адрестер мен деректер үшін жалпы шина.
Шинадағы сызықтар санын ақпаратты деректердікідей сызықтар бойымен тасмалдай отырып азайтуға болады. Бұл жағдайда жөнелткіш пен қабылдағыштың ұқсастырушы коды құрға онымен деректер өту алдында келуі қажет. Ұқсастырушы кодтарды оларға шинаның өзіндік бір бөлігін бере отырып бір уақытта шығаруға болады және код астына барлық құрды бере отырып, оларды қатар бойынша шығаруға болады. Ұқсастырушы кодтарға сәйкес келетін модульдер осы кезде олардың деректердің жөнелткіш немесе қабылдағыш ретінде таңдалғаны туралы ақпаратты сақтау керек.Соңғы сатыда таңдалған екі модульдер арасында стробтайтын сигналдардың қолдауымен деректер сөздері қажетті көлімінде тасымалданады.
Жалпы шинасы бар мүмкін болатын жүзеге асыру схемасы 12.5-суретте көрсетілген. Шина барлық модульдерге,сонымен бірге басқарушыға қосылған.Басқарушы модульден барлық қалғандарына үш қосымша сызықтар өтеді: жөнелткіш стробы,қабылдағыш стробы және деректер стробы. Олардың көмегімен құрда сәйкес жөнелткіш ұқсастырушы коды,қабылдағыш ұқсастырушы коды және берілетін деректердің бар болуы туралы хабарланады.
Әрбір модульде модуль тасымалдау немесе қабылдау үшін таңдалатыны туралы тұжырымдамасын тіркеу үшін қызмет ететін екі Д-триггерлері болады,олар “жөнелткіш таңдауы”және “қабылдағыш таңдауы” ретінде белгіленеді.Осы Д-триггерлердің кірісідегі сигналдар және вентильдерімен қалыптасады,олардың кірістері берілген модуль үшін ұқсастырушы код мәнінен тәуілдіікте құр сызықтарына тікелей немесе терістеуіштер арқылы қосылады.Триггерлердің синхрондаушы кірістеріне “жөнелткіш стробы” және “қабылдағыш стробтарының”сәйкес стробтайтын сызықтары жалғанады.
12.5.- сурет. Деректер мен адрестер үшін жалпы шинасы бар параллель жүйе.
Осылайша, таңдалған модульдің “жөнелткіш таңдауы” триггерінде “жөнелткіш стробы” сигналы бойынша логикалық 1орнатылады. Барлық қалған модульдерде осы кезде “жөнелткіш таңдауы” триггері босатылады. Қабылдау үшін таңдалған модульде “ қабылдағыш стробы” сигналы бойынша “ қабылдағыш таңдауы” триггерінде ұқсас тәсілмен 1 орнатылады.
Модуль регистрін құрға қосатын үш орнықты қалыптастырғыштар басқарушы модульден “жөнелткіш таңдауы” және “деректер стробы” сигналдарының логикалық ЖӘНЕ–мен басқарылады. Регистрге “жүктеме шешу” сигналы “ қабылдауыш таңдауы” және “деректер стробы” сигналдарының сол сияқты логикалық ЖӘНЕ болып табылады. Бұл жөнелткіш регистр модулінен “деректер стробы” сигналы бойынша қабылдауыш регистр модуліне ақпараттың тасмалдауын қамтамасыз етеді.
Соңында шина жүйесі 12.5.- суретте көрсетілгендей келесі әдіспен жұмыс жасайды:
Басқарушы модуль жөнелткішті ұқсастырушы кодын құрға береді, және “жөнелткіш строб” сызығын қыздырады. Осы кезде көрсетілген модульде модуль жөнелткіш болып табылатын тұжырымдамасы тіркеледі.
Кейіннен басқарушы модуль құрға қабылдауышты ұқсастыратын кодты береді, және “қабылдауыш стробы” сызығын қыздырады осы кезде көрсетілген модульде модуль қабылдағыш болатын тұжырымдама тіркеледі.
Кейіннен басқарушы модуль “ деректер стробы” сызығын қоздырады, ол модуль – жөнелткіш регистрінің құрамы модуль – қабылдағыш регистріне өтуіне әкеледі. Бұл қадамды сол екі модульдердің арасындағы сөздердің қажетті көлемінің берілісі үшін көп еселі рет қайталауға болады.
Екібағытталған шиналар
Жоғарыда қарастырылған схемаларда шина бойымен беріліс кез-келген екі модульдердің арасымен жіберілетін. Бірақ кейде модульдердің бірі әрқашанда тасымалдауда қатысатын жағдайларда болады және бұл модуль басқарушы. Бұл жағдай микрокомпьютерлер үшін стандартты және оларда құр жүйесінің қарапайымдалуы болуы мүмкін, себебі тасмалдауда қатысатын модульдердің тек біреуін ғана таңдау керек. Кейбір шартты түсінікте мұндай құрды екі бағытталған деп атауға болады, себебі деректерді белгіленген және кез-келген басқа модуль арасымен және кері бағытта тасмалдауға болады.
Екібағытты шинасы бар жүйені қарастырайық, ол жерде белгіленілген қатысушы ретінде басқарушы модуль болып табылады. Тасымалдаудың басқа қатысушысы айтылған кез-келген тәсілдердің берілген таңдалуы мүмкін, яғни жеке адрестік құр бойынша сәйкес тасымалдауымен, не сол сияқты деректер шинасы боынша. Бірақ берілген жағдайда тасымалдау бағыты көрсетілу тиіс: Басқарушы модульге немесе одан оны стробтайтын екі сигналдардың көмегімен жасауға болады. Осылардың бірі таңдалған модульдің регистр құрамын шинағаға бере алады. Бұл ақпарат басқарушы модульмен қабылданады. Басқасы басқарушы модульмен шинада орнатылған таңдалған модуль регистрімен қабылдауды шақыра алады. Сызықтың бірі берілістің бағытын тапсыратын, ал басқасы стробтайтын – беріліс моментін тапсыратын вариация болуы мүмкін.
Жоғарыда қарастырылған барлық шиналар жүйелері синхронды режимде жұмыс жасаған. Ал негізінен берілу мен қабылдағыш арасындағы деректер басқарушы модульмен берілетін стробтау сызығында импульске жауап ретінде жіберілген. Сонымен бірге стробтау моментінде модуль – жөнелткіште деректер қол жетерлік түрде, ал модуль – қабылдауыш оларды қабылдайтын күйде болуы қажет. Егер деректердің берілісі екі модульдердегі тек регистрлерді және басқа жеткілікті қарапайым схемаларды тікелей қамтитын болса, онда синхронды жұмыс жүзеге асырмалы. Бұл жағдайларда басқарушы модуль екі модуль тасымалдауға қатысуына дайын болғанда моментті таңдай алады.
Бірақ көп жағдайларда деректермен ауысатын бәір немесе екі модульдер дереу бірнеше сыртқы құраушылармен әсерлесуі керек, олардың іске қосылу уақытысы белгісіз немесе өзгереді. Мысалы жіберуші модуль бұл деректерді өлшеуіш аспабынан (айталық, цифрлық вольтметр) алуы мүмкін, ол белгілі бір сыртқы жағдайлар кезінде іске қосылады. Сол сияқты қабылдаушы модуль деректерді қандайда бір басқарылатын құрылғыға бере алады ( мысалы, матор жылдамдығын реттеуішіне) ол жаңа деректерді тек белгілі бір жағдайларда қабылдайды. Мұндай жағдайларды құрлар синхронды жұмысы тиімсіз, себебі басқарушы модуль стробтау импульсінің берілісі үшін моментті алдын ала біле алмайды.
Синхронды режимде жұмыс жасайтын құрларды құруға болады. Жөнелткіш пен қабылдағыш іс-әрекеттерінің координациясы бұл жағдайда басқарушы модульден стробтайтын сигналдарға емес, ал деректерді ауыстыруда қатысатын модульдер жағдайын бейнелейтін сызықтарды қолдануында тірелуі тиіс.
Достарыңызбен бөлісу: |