книги / Проектирование дискретных устройств автоматики
..pdf
|
* 1*2 |
|
|
|
|
|
|
|
|
00 |
10 |
11 |
01 |
00 |
10 |
11 |
01 |
00 |
0 |
0 |
|
|
0 |
|
0 |
'Л |
10 |
0 |
0 |
0 |
0 |
|
1 |
1 |
VS |
|
|
1 |
|
V4 |
|
|
|
|
И |
0 |
о ; |
1 |
1 |
1 |
1 |
|
|
01 |
0 |
|
1 |
0 |
1 |
|
0 |
0 |
|
|
|
Ч |
|
|
*2 |
|
|
Рассмотренный метод минимизации позволяет получить функ ции в базисе И, ИЛИ, НЕ. Для перехода к другим базисам суще ствуют определенные методы, позволяющие получить функции в любом базисе.
5.4. Синтез структур автомата в различных базисах
Схема автомата может быть построена на различных элемен тах: реле, диодах, транзисторах, интегральных схемах и т. д. У контактных элементов, к числу которых относятся нейтральные электромагнитные реле, каждая из переменных в функции соот ветствует контакту, а операция характеризует соединение контак тов. Контакт на замыкание соответствует в функции переменной без инверсии, а контакт на размыкание — переменной с инвер сией. Конъюнкция, или операция логического умножения, опреде ляет последовательное включение, а операция дизъюнкции, или логического сложения, — параллельное соединение контактов. Элементы памяти образуются за счет обратных связей обмоток и контактов реле.
Если функции ЭП заданы уравнениями (5.1) и (5.2), а состоя
ние выходов — уравнением (5.7), то |
принципиальная схема авто |
мата будет иметь вид, показанный |
на рис. 5.1. Автомат состоит |
из приемной части, воспринимающей входное воздействие на вхо ды Х\ и х2, промежуточной части, реализующей совместно с вход ными реле порядок работы автомата, и исполнительной части, формирующей сигналы на выходах z x и z2.
На бесконтактных элементах, к которым относятся диоды, транзисторы, интегральные схемы, в зависимости от их свойств и возможностей различным образом может быть реализована схе ма автомата.
Сложность схемы автомата определяется числом операций, а значит и числом элементов, а также числом переменных, от ко торого зависит число входов элементов. При построении схемы у большинства бесконтактных элементов не допускается запарал леливание выходов, однако возможно запараллеливание входов
в пределах возможностей нагрузочной способности элемента, под ключенного к данным входам.
В схеме автомата, основными элементами которого являются И, ИЛИ, НЕ, операции дизъюнкции реализуются элементами ИЛИ, конъюнкции — элементами И и инверсии — НЕ.
Структурная схема автомата, построенного в соответствии с уравнениями (5.3), (5;4) и (5.7), показана на рис. 5.2.
Если основным элементом схемы автомата является элемент типа И-НЕ, то функции необходимо преобразовать к такому виду, чтобы в них отсутствовали операции ИЛИ и имелись только опе-
Рис. 5.2
рации НЕ и И. Переход от базиса И, ИЛИ, НЕ к базису И-НЕ производится за счет двойной инверсии функции. Одну из опера ций инверсии используют для замены операции ИЛИ на И, а вторую — для инверсии всей функции.
Рассмотрим пример преобразования функции, заданной урав нением (5.5):
FY, = fy , = x1 x2 y1 \Jx1 i/x у 2 Vх2 У! Уг =
* (* i X t У !) (Хх l/х у а) (х 2 Ух Уг)-
Схема, реализующая данную функцию, приведена на рис. 5.3,а. Из рисунка видно, что первая группа схем И—НЕ реализует опе рацию логического умножения и инверсию каждой из конъюнк ций, а вторая — логическое умножение конъюнкций и их инвер сию.
Рассмотрим второй пример автомата, у которого функция за дана уравнением (5.3). Произведя преобразование функций, по лучим:
Fs, = F s , = л-2 |
Уг = ( * i х г) (х 2 у 2) ; |
F R , = Х х у 2. |
Схема, соответствующая данным |
уравнениям, приведена на |
рис. 5.3,6. Из рис. 5.3,6 видно, что схема, соответствующая функ ции, содержит такое же число элементов, как и схема рис. 5.2, а схема, реализующая функцию FR,, имеет еще дополнительный элемент НЕ.
Если основным элементом, используемым для реализации схе мы автомата, является схема ИЛИ—НЕ, то для перехода от бази са И, ИЛИ, НЕ к базису ИЛИ—НЕ необходимо исключить все операции И, а функция должна содержать только операции ИЛИ и НЕ. Для этой цели, если функция задана в минимальной нор мальной форме, производят двойную инверсию каждой конъюнк ции и двойную инверсию всей функции. Одной из операций инвер сии заменяют операцию И на ИЛИ, а второй — производят ин версию каждой конъюнкции. Двойная инверсия всей функции не обходима для осуществления операции ИЛИ—НЕ между конъ юнкциями.
В качестве примера рассмотрим преобразование функций (5.3) j
Fs, — х 1 х 2 V х 2 Уг — (л'х V х2) \[ {Хл V Уг); F R , — х 1 у2 — Хх VУг-
нения (pj = 0; отмечено знаком «—») условия. На рис. 5.4 кру жочком обозначены схемы, изображенные на рис. 5.5, которые служат для запроса от ЛФБ;- значения проверяемого им логиче ского условия Pj.
1т Mj
Рис. 5.5
Выход дешифратора Дш сопоставляется с микрокомандой, выполняемой за один такт работы автомата. Код каждой микро команды хранится в РМК. Очевидно, число разрядов РМК опре деляется числом микрокоманд, т. е. числом внутренних состоя ний MA. После выполнения микрокоманды в М3 формируется код следующей микрокоманды, который передается в РМК.
Последовательность выполнения микроопераций удобно описы вается на языке ЛСА, причем с оператором сопоставляется внешняя микрооперация zA{, а с логическим условием р, — внут
ренняя микрооперация zPf. Например, условия работы микро
программного автомата, изображенного на рис. 5.4, |
описывают |
ся ЛСА: |
|
*Al AaPl? p * F A 9 p9p i l- |
(5-8) |
Легко видеть, что если в каждую микрокоманду включить по юдной микрооперации, то число микрокоманд будет равно числу членов ЛСА. Однако в большинстве практических случаев за один микротакт может быть выполнено несколько микроопераций, т. е. в одну микрокоманду можно включить несколько микроопера ций. Метод формирования микрокоманд изложен в разд. 4.2.
Рассмотрим процесс синтеза структуры MA по схеме Уилкса.
Пример. Пусть имеется система микрокоманд, полученная в примере 4.8. Необходимо построить структурную схему MA.
Решение. Вначале определим разрядность РМК. Поскольку в системе име ется восемь микрокоманд, то РМК должен иметь три ЭП, в качестве которых
.используем /?5-триггеры. Кодовые комбинации, определяющие состояния тригге-
ров Ti—Тз, соответствующие этим микрокомандам, примем такими, |
как |
ука |
||||||
зано в табл. 4.15. Теперь нетрудно |
построить |
принципиальную |
схему M A |
|||||
(рис. 5.6). |
поступающим на вход |
Si, триггер |
Т ( переводится в |
состояние |
||||
Сигналом, |
||||||||
1, а сигналом |
на входе R — в состояние 0. Для |
запуска |
ЦБУ |
необходимо вклю |
||||
чить Ti. |
|
по ЛСА |
можно |
легко |
построить |
схему |
||
Таким образом, непосредственно |
ЦБУ. При этом видно, что чем меньше членов ЛСА, тем проще будет принци пиальная схема ЦБУ. Следовательно, ЛСА необходимо предварительно мини мизировать рассмотренными выше способами.
На рис. 5.6 показаны два регистра РМК' и РМК", между ко торыми установлены схемы И обеспечивающие передачу инфор мации в РМК, накопленной в коде следующей микрокоманды в РМК" во время выполнения текущей микрокоманды. Синхрони зирующие импульсы CHi и СИ2 находятся в противофазе, т. е. при наличии импульса СИ] осуществляется передача информации из РМК' в РМК", а при наличии импульса СИ2 выполняются мик рокоманды и формируется в РМК' код следующей микрокоманды.
Контрольные вопросы
1. |
Каковы принципы составления таблиц ЭП для электромагнитных реле? |
2. |
В чем особенности синтеза дискретного устройства, в котором в качестве ЭП |
3. |
используются триггерные схемы? |
Каковы особенности синтеза схем выходов дискретного устройства? |
|
4. |
Чем может быть обеспечено отсутствие состязаний выходных сигналов? |
5. |
В чем заключается табличный способ минимизации функций? |
6. Как осуществляется переход от базиса И, ИЛИ, НЕ к другим базисам? |
|
7. В чем состоят особенности синтеза микропрограммного автомата? |
Г л а в а 6.
СИНТЕЗ МИКРОЭЛЕКТРОННОГО ДИСКРЕТНОГО УСТРОЙСТВА В БАЗИСЕ БОЛЬШИХ ИНТЕГРАЛЬНЫХ МИКРОСХЕМ
6.1. Общие сведения
Как было отмечено в гл. 1, большие успехи микроэлектрони ки привели к созданию больших и сверхбольших интегральных микросхем (БИС и СБИС). При этом высокая и все возрастаю щая быстрыми темпами степень интеграции элементов на одном кристалле привела к необходимости использования при создании дискретных устройств настраиваемых (программируемых) БИС и СБИС: однородных сред и микропроцессоров*. К настоящему времени разработано достаточно большое число разновидностей однородных сред и микропроцессоров. Однако здесь описываются
* В связи с тем, что БИС и СБИС отличаются лишь количественными зна чениями создаваемых элементов в одном кристалле, в дальнейшем будем го ворить только о БИС.
лишь те из них, которые являются наиболее характерными пред ставителями имеющихся или перспективных однородных сред и микропроцессоров.
Среди однородных сред можно выделить три основных на правления создания настраиваемых БИС: универсальные ячей ки, программируемые логические матрицы и матричные однород ные среды.
В данной главе рассматриваются особенности проектирования (синтеза) ДУ в базисе однородных сред, а в следующей — в ба зисе микропроцессоров.
В теории автоматов [3] в основном уделяется внимание мето дам реализации условий работы автомата в виде дискретного устройства( т. е. методам синтеза ДУ), при которых последнее реализуется непосредственно по структурному описанию автома та (см. гл. 1), т. е. по системе булевых функций [1]. Если же ав томат задан в виде алгоритмического описания, то эти методы пе ред реализацией ДУ предполагают выполнение этапа логическо го синтеза, на котором заданное алгоритмическое описание авто мата (например, в виде таблицы переходов, логической схемы алгоритма и т. п.) транслируется в структурное описание, т. е. в систему булевых функций, представленных в том или ином бази се логических элементов.
Будем называть методы реализации ДУ (аппаратные или про
граммные) по структурному описанию автомата |
с выполнением |
|
этапа логического синтеза (если условия работы |
ДУ заданы |
в |
виде алгоритмического описания) методами программно-структур ного синтеза автоматов. Эти методы получили широкое распро странение, поскольку благодаря возможности применения в про цессе синтеза ЭВМ позволяют получать в приемлемые сроки до статочно хорошие решения. Однако с ростом сложности дискрет ных устройств реализация этих методов даже при использова нии ЭВМ становится все более затруднительной. В связи с этим представляет интерес возникший в последнее время в теории ав томатов новый принцип построения дискретного устройства не посредственно по алгоритмическому описанию без трансляции в структурное описание. Такие методы будем называть методами алгоритмического синтеза. Эти методы, рассмотренные в ряде работ, дают возможность существенно упростить процесс проек тирования дискретного устройства. Вместе с тем они учитывают особенность их реализации в базисе БИС, когда особое значение приобретает однородность структуры устройства, а не ее избы точность.
6.2. Синтез дискретного устройства в базисе универсальной ячейки
В ряде работ предлагается реализовать автрмат, задаваемой на языке таблиц переходов, в. виде дискретного устройства в бази се одной или двух типов универсальных ячеек (УЯ), сопостав
ляемых с одним состоянием автомата. При этом, когда использу ются две УЯ, одна из них сопоставляется с устойчивым, а вто рая — с неустойчивым состояниями автомата, а переход от од ного устойчивого состояния к другому через неустойчивое состо яние моделируется непосредственным соединением соответствую щих УЯ. Достаточно подробное изложение методов синтеза ДУ в базисе универсальных ячеек дано в '[17]. Здесь рассмотрим метод алгоритмического синтеза автомата в базисе одного из ти пов УЯ ([18], когда алгоритмическое описание автомата задано на языке ЛСА, а УЯ сопоставляется с внутренним состоянием ав томата. Функциональная схема используемой ячейки представле на на рис. 6.1.
Рис. 6.1
Универсальная ячейка построена на логических элементах ИЛИ, И (рис. 6.1,а), имеющих естественные задержки TI и тг. Общая
задержка сигнала с входа на выход УЯ составляет |
T= T I+T2. |
||
Универсальная ячейка УЯ» имеет два |
типа входов: xU, |
xin, со |
|
поставляемые |
с логическим условием |
р\, ..., р'п, и у1\, |
..., t/**, со |
поставляемые |
с выходами Ур~\ ..., IV-1 предыдущих УЯ»-ь Каж |
дая УЯ сопоставляется с микрокомандой, т. е. с внутренним со стоянием MA. При этом если к Микрокоманде Mi, с которой со поставлена УЯ», есть переход от Mj, /= 1, .... к, с которыми сопо ставлены УЯ;, /= 1, ..., к, то выход Y УЯ; соединяется со входом У] УЯ». Если в микрокоманду Mit сопоставленную с УЯ», входит оператор Ai, то сигнал На выход Z A { дискретного устройства по
ступает с выхода УЯ», а с входами Xi, ..., Xi, l ^ n , УЯ сопоставля
ются переменные ÿit , |
р,п если оператор At выполняется при |
значениях ЛУ pi, =1, |
=1. |
Поскольку при задании автомата на языке ЛСА каждому вну треннему состоянию соответствует микрокоманда, синтез автома та будем осуществлять непосредственно по системе микрокоманд. Примем, что в каждой микрокоманде имеется не более одного оператора. Универсальные ячейки будем сопоставлять с микро
командами. Определим условия, |
при |
которых с |
одной микро |
||
командой может быть сопоставлена одна УЯ. |
в микрокоман |
||||
Для удобства |
назовем оператор А и |
входящий |
|||
ду Mi, начальным, а оператор |
[А,], к |
которому |
необходимо |
пе |
|
рейти после выполнении микрокоманды |
Mi — конечным. Так |
как |
|||
с входами хи |
хп универсальной ячейки должна |
быть сопостав |
лена конъюнкция переменных ри ..., рп, то автомат по системе микрокоманд может быть реализован в базисе' УЯ тогда, когда выполняются следующие условия ;[18]:
1. В каждой микрокоманде имеется одна и только одна ветвь, заканчивающаяся начальным оператором.
2. В одной микрокоманде не должно быть более одной ветви
содним и тем же конечным оператором.
3.В микрокоманде оператор может быть или начальным, или конечным. В середине микрокоманды он не должен стоять.
4. |
Если |
оператор Aj является |
в микрокомандах конечным |
(т. е. |
[ A j ] ) , то |
|
|
а) t=lV |
аи А) =4 >и — Prs Aj, s < |
n, |
если n — число ЛУ в ЛСА;
б) для микрокоманды М,-, в которой начальным оператором является Ai, должно быть выполнено равенство
Pu — Рга• Plt ••• Plt — Pi, Pim>
где prt |
prs получено в соответствии с п. a); pit |
pit соответ |
ствует ветви в Mi, заканчивающейся начальным |
оператором А.; |
|
m ^ .s + 1 . |
|
|
Пример 6.1. Пусть заданы логическая схема алгоритма |
|
|
Я = I1 Аг Pl Г1 Т2 43 А2 р2î31« А3 р2 Î2 Pl о t* |
(6. 1) |
|
и система |
микрокоманд: |
|
|
( |
|
^[А2] |
|
|
|
|
|
|
I |
|
Р2 |
|
|
|
|
|
U |
L |
? |
\ [ А 3) |
I, |
М^2 |
( |
|
!• |
МА, = |
{ А2-+Pi |
|
{ а 2 - + р 2 |
|||||
|
{ |
\[Аг\ |
J |
|
î |
> * . >) |
||
|
|
|
-+ |
|
|
|
|
|
|
|
|
+ [Аг) |
|
|
|
|
|
|
|
P1 |
|
|
|
|
|
|
|
|
+ |
— |
|
|
|
|
|
Мл ,= |
|
/ |
\ 1 Аг] |
|
|
|
|
|
|
*~Р'2 |
|
|
|
|
|
|
\ 1 Л9]
Из системы микрокоманд видно, что первые три условия выполняются для всех микрокоманд. Легко убедиться, что выполняется и четвертое условие. Вначале проверим выполнение условия 4а:
для конечного оператора A i
P i A i |
V 0 A i V Рг P i A i —P i A i ( \ V ОV P2)= P i A i |
; |
|
|
для конечного оператора Л2 |
|
|
PiPz Аг V Рг А 2 V Р2 Pi А2= |
Р2 А2 (рî V 1 V Pi) = |
Рг А2 ; |
|
|
для конечного оператора |
Л3 |
|
PIPÎ |
А%V РгАг \/ Р%АЪ= р2 Аь (Pi V I V 0 = РгА3. |
||
110 |
|
|
|