Последната актуализация на този раздел е от 2019 година.

 

 

6.1   УПРАВЛЯВАЩ  АВТОМАТ  С  ПРОМЕНЛИВА  ПРОДЪЛЖИТЕЛНОСТ  НА  МИКРОТАКТА  ЗА  СТРУКТУРИ  С  АПАРАТНО  ЗАКРЕПЕНА  ЛОГИКА

 

 

      Възможните логически структури на управляващ (краен) автомат с апаратно закрепена логика (УААЗЛ) са пояснени в книга [1], пункт 7.1 (вижте фигура 7.1.6). Методиката за проектиране на синхронни УААЗЛ е представена тук в тази книга [3], в раздел 4 (продължение 2), а методиката за проектиране на асинхронни УААЗЛ – в раздел 4.1.

      В настоящия пункт ще разгледаме възможността за проектиране на УААЗЛ, но в условията на комбинация от двата основни метода за управление – синхронен и асинхронен. Целта е постигане на максимално възможното бързодействие при изпълнение на управляващия алгоритъм в съчетание с простотата на синхронното тактуване. Както беше пояснено в предидущия раздел 6, такива автомати се наричат автомати с променлива продължителност на микротакта. Принципът за формиране на променливата продължителност е аналогичен на приложения за автоматите с програмно закрепена логика, като за целта, т.е. за измерване на продължителността на отделните тактове, се използва някакъв брояч.

      За разлика от микропрограмните автомати, които имат възможност да представят в структурата на микрокомандата си продължителността на микротакта, измерена в брой периоди на тактовите импулси, УААЗЛ нямат тази възможност. Това се дължи на факта, че тези автомати не притежават памет за всички възможни микрокоманди, а само за текущата.

 

     Това означава, че продължителността на текущият микротакт е функция на текущото състояние на автомата и като число не може да се съдържа в структурата на микрокомандата (разбирай кодовата комбинация на текущото състояние). От тук следва, че продължителността на всеки микротакт трябва да се изчислява, т.е. да се възстановява от кодовата комбинация на състоянието за всеки микротакт поотделно.

      За измерване на продължителността следва да се използва брояч. Продължителността на всеки отделен микротакт се оценява (измерва) числено още по време на синтеза на управляващия алгоритъм. Така се съставя следната кодова таблица, която трябва да се използва за синтеза на шифриращата комбинационна схема:

Таблица 6.1.1  Кодова таблица за продължителност на микротакта

Състояние  S(t)

Продължителност  T(t+1)

S0

1 период (001)

S1

3 периода (011)

S2

4 периода (100)

S3

2 периода (010)

***   ***

***   ***

 

      С други думи, ако при автоматите с програмно закрепена логика продължителността на микротакта е елемент в структурата на всяка отделна микрокоманда и се явява в регистъра на микрокомандата прочетена от микропрограмната памет заедно с всичките й останали елементи, то при автоматите с апаратно закрепена логика тази продължителност следва да се изчислява апаратно за всеки отделен микротакт според функционалната връзка с кодовата му комбинация, дефинирана с горната таблица.

      Превключване на автомата от една състояние в друго е възможно само след изтичане на неговото време (продължителност), което по принцип съответства на следния граф на преходите:

 

Фиг. 6.1.1.  Граф на преходите в автомат с променлива продължителност на микротакта

 

      От графа се вижда, при липса на сигнал “Пуск”, автоматът се удържа в изходно състояние в продължение на неопределен брой тактове. Превключването (при изпълнение на управляващия алгоритъм) започва след появата на този сигнал, като продължава от състояние към състояние само при условие, че времето на текущото е изтекло, плюс, разбира се, допълнителните условия за преход, имащи смисъл и отнасящи се до конкретния алгоритъм за управление. От тук лесно може да бъде съобразено, че сигналът за запис на кодовата комбинация на състоянието в регистъра на състоянието е функция от съдържанието на брояча, отмерващ времето.

      Ако като пример, за управляващия автомат бъде избрана логическата структура на Мур, то във връзка с по-горе казаното, тя ще трябва да бъде допълнена със съответния брояч в качеството му на измерител на продължителността на всеки отделен микротакт. Заедно с изчисляването на кодовата комбинация на новото състояние S(t+1), комбинационната схема на функциите за преход в автомата трябва да изчисли (да шифрира) и продължителността на следващия микротакт T(t+1) като функция от състоянието T(t+1)=f(S(t)) според таблица 6.1.1. Тази продължителност следва да се записва в нулирания брояч като начално съдържание. Този запис следва да се извършва едновременно със записа на кодовата комбинация на новото състояние. Така на брояча може да се гледа като естествено допълнение към регистъра на кода на състоянието.

      Във връзка с направените съждения е проектирана допълнителната апаратура към структурата на УААЗЛ, за да може той да работи с променлива продължителност на микротакта. Както се вижда на фигура 6.1.2, в долната й част е изобразена логическата структура на УААЗЛ, която съответства на структурата на автомат на Мур. В центъра й се вижда регистъра на кода на състоянието Рг.КС, а към неговите изходи е включена комбинационната схема ФИС, реализираща функциите на изходните сигнали. Към входовете на Рг.КС е подведена новата кодова комбинация на състоянието S(t+1), изчислена в текущия микротакт от Ф.Пр – комбинационната схема, реализираща функциите на преходите. Представената структура е проектирана като синхронна и се тактува от сигнала Clock. Основната задача на допълнителната апаратура е да не допуска всеки тактов импулс до входовете за запис на регистъра и на брояча и да селектира такива импулси W само в нужните моменти.

Фиг. 6.1.2.  Логическа структура на УААЗЛ променлива продължителност на микротакта

      Показаното допълнение се състои от декрементен брояч на тактови импулси Бр.ТИ, към изходите на който е включен дешифратор на съдържание нула EQ (EQ=1, ако (Бр.ТИ)=0). Правата и инверсната фази на сигнала EQ от дешифратора управляват състоянието на синхронния Latch RS-тригер. Той от своя страна управлява чрез своите изходи в кой момент импулсите от инверсната фаза на тактовата последователност  not(Clock)  да се подават в качеството им на декрементни импулси (-1) към брояча Бр.ТИ, или в качеството им на сигнали за запис W към Рг.КС и към Бр.ТИ.

      Функционирането на показаната логическа структура e илюстрирано с времедиаграмата от фигура 6.1.3. Микрооперациите запис в регистър Рг.КС и в брояча Бр.ТИ се изпълняват по предния фронт.

 

Фиг. 6.1.3.  Времедиаграма за изпълнение на последователността (…S0(1), S1(3), S2(4), S3(5))

 

      Показана е последователност, съответстваща на графа от фигура 6.1.1, в която състояние S1 се задържа в продължение на 3 такта, състояние S2 – 4 такта, състояние S3 – 5 такта, а началното състояние S0 с продължителност 1 такт се повтаря няколко пъти в цикъл, докато не се появи стартовият сигнал “Пуск”. За правилно стартиране на превключванията към този сигнал се предявяват определени изисквания:

·         Сигналът “Пуск” да се появява синхронно по предния фронт на тактовата последователност Clock ;

·         Продължителността му да е минимум един период, както е показано на времедиаграмата.

      При това положение входната комбинационна схема ФПр следва да успее да изчисли продължителността на състоянието S1 (за примера това е числото 2) за времето между предния и задния фронт на тактовия импулс Clock. Във всички останали състояния времето за аналогичното изчисление е многократно по-голямо, което следва да се има предвид при синтеза на шифриращата схема според таблица 6.1.1.

      На последните 3 абсциси във времедиаграмата са показани изходни управляващи сигнали УС1, УС2 и УС3, които имат различна продължителност, съответстваща на тази на отделните състояния на автомата, приети за примера.

      Логиката на сигналите във времедиаграмата, реализирани от логическите схеми в структурата на автомата, е следната:

·         Сигнал за запис W :

·         Сигнал (-1) :

·         Сигнали за управление на тригер TL :

      Синтезираната логическа структура без изменения може да се приложи и върху крайни автомати на Мили, което я определя като универсална.

 

 

 

Следващият раздел е:

 

7.  Ускоряване на условните преходи в микропрограмни автомати с програмно закрепена логика