СИНТЕЗ РАЗДЕЛЬНЫХ И ОБЩИХ ШИН

Шина – операционный элемент (ОЭ), служащий для выполнения микрооперации передачи информации, например, между регистрами:

y1: B(1:n):= A(1:n),

y2: B(1:n):= ù A(1:n) (инверсная передача).

Регистр А называют источником информации, а регистр B – приемником.

Шины состоят из цепей.

Цепь – ОЭ, служащий для передачи одного бита информации. В простейшем случае цепь – это проводник. Информация на его концах совпадает (clip_image002, рисунок 19, а). На рисунке 19, б показана управляемая цепь. Информация передается по цепи только при наличии управляющего сигнала у (clip_image004). Условное изображение управляемой шины на структурных схемах ОУ приведено на рисунке 19, в.

clip_image006Виды цепей:

- однофазные,

- парафазные.

Однофазные цепи (управляемые или неуправляе­мые) передают только прямое или только инверсное значение сигнала. Парафазные цепи пе­редают оба значения сигнала (рисунок 20).

Сложность парафазной шины увеличивается в два раза по сравнению с однофазной, что позволяет достичь выиг­рыша по быстродействию, если приемниками информации яв­ляются RS-триггеры (JK-триг­геры). В данном случае пара­фазная шина позволяет пере­дать информацию за один такт.

Для однофазной шины используется два такта.

1) В первом такте приемный регистр обнуляется (на R-входы всех триггеров регистра подаются единицы Ri:=1).

2) Во втором такте устанавливаются только единицы в нужных разрядах регистра (Si:= a).

clip_image008

Проектирование однотактных и двухтактных (парафазных и однофазных) цепей приема и установки кода рассматривалось выше в примере 1 (синтез регистра на раздельных триггерах).

Прием информации на D-триггер с помощью однофазной цепи осуществляется за один такт.

N-разрядная шина состоит из N одноразрядных цепей.

Шины могут быть раздельными и общими. При реализации передач в системе регистров раздельными шинами каждая передача осуществляется по собственной шине, связывающей соответствующий источник с соответствующим приемником, при подаче в схему соответствующего управляющего сигнала уi. Общая шина (магистраль) – это схемное решение, в котором все возможные передачи между регистрами осуществляются по единственной шине.

Раздельные шины

Если необходимо на один регистр-приемник передать информацию с нескольких регистров-источников, то соответствующие цепи объединяются при помощи логических элементов. Пусть на регистр В может передаваться информация с регистров A1, A2, … , Ak:

y1: B(1: n):= A1(1: n);

y2: B(1: n):= A2(1: n);

… …

yk: B(1:n):= Ak(1:n).

Рисунок 21,а иллюстрирует идеологию раздельной шины для осуществления указанных микроопераций. На рисунке 21,б приведена схема связей между i-ми разрядами регистров без привязки к конкретной серии микросхем.

Оценим сложность схемы, приведенной на рисунке 21,б , по числу входов логических элементов. Для n-разрядных регистров она составит clip_image010, где k – количество источников. В общем случае, если в системе не один, а m приемников, сложность схемы составит clip_image012. Если количество передач между регистрами clip_image014 в системе достаточно велико, то реализация этих передач раздельными шинами может быть сравнительно дорогой. В связи с этим появилась идея реализации всех передач одной – общей – шиной.

clip_image016

Пример 4. Синтезировать раздельные парафазные шины (функциональная схема i-го разряда) для осуществления следующих передач в системе из трех регистров:

clip_image018

Парафазные шины применяются, когда приемником является регистр, построенный на RS (JK)-триггерах для того, чтобы межрегистровые передачи могли быть осуществлены за один такт. Поэтому в схеме в качестве i-го разряда каждого регистра будет использован RS-триггер. Для осуществления прямой передачи на S-вход приемника должно быть передано прямое значение источника, домноженное на соответствующий управляющий сигнал, а на R-вход приемника – инверсное значение источника, домноженное на тот же сигнал.

Для осуществления инверсной передачи на S-вход приемника должно быть передано инверсное значение источника, домноженное на соответствующий управляющий сигнал, а на R-вход приемника – прямое значение источника, домноженное на тот же сигнал.

Функции возбуждения входов триггеров:

clip_image020;

clip_image022;

clip_image024

Функциональная схема i-го разряда раздельных шин, осуществляющих заданные передачи, приведена на рисунке 22. Схема выполнена без привязки к конкретной серии микросхем.

clip_image026

Общая шина (магистраль)

Структурная схема общей шины приведена на рисунке 23,а. Функциональная схема i-го разряда общей шины приведена на рисунке 23,б.

clip_image028

При осуществлении передачи Ak:=Aj через общую шину выход источника подключается ко входу общей по сигналу hj, выход общей шины подключается ко входу приемника по сигналу sk. Для осуществления указанной передачи управляющие сигналы hj и sk должны быть поданы в схему одновременно. Это значит что для осуществления любой передачи управляющий автомат должен выработать два соответствующих этой передаче унитарных кода:

clip_image030 и clip_image032. То есть управление в данном случае осуществляется унитарными управляющими кодами. Часто на практике УА для осуществления передачи по общей шине вырабатывает позиционные коды номера источника и номера приемника (управление позиционными управляющими кодами). В этом случае выбор источника и подключение его ко входу общей шины осуществляется посредством мультиплексора, подключением нужного приемника ко входу общей шины управляет дешифратор (рисунок 24).

Следует отметить, что в рассмотренных схемах общих шин (рисунки 23, 24) передаются только прямые значения с регистров-источников. Если в системе возможны передачи инверсных значений, то число источников увеличивается в общем случае в два раза (так как будут использоваться не только прямые, но и инверсные выходы триггеров). В дальнейшем под источником будем понимать номер регистра и тип передачи (прямая или инверсная).

clip_image034

Мультиплексор – это операционный элемент, позволяющий передать сигнал с одного из своих информационных входов на выход. На выход мультиплексора коммутируется тот информационный вход, номер которого в двоичном позиционном коде подан на адресные входы мультиплексора. Так, если источником является регистр А1, то Аист(0:k) = 00…00, если информация передается с регистра А2, то Аист(0:k) = 00…01 и.т.д. Предполагается, что k-ый адресный вход мультиплексора – младший; в реальных микросхемах мультиплексоров бывает наоборот, и это необходимо учитывать. Так в микросхеме К155КП5 (рисунок 25) старшим является адресный вход A2, следовательно, на него нужно подать старший разряд номера источника. При построении общей шины необходимо также учитывать, что мультиплексор К155КП5 инвертирует входной сигнал. Микросхема может быть использована, если в системе не больше восьми источников.

Дешифратор – это операционный элемент, преобразующий входной позиционный двоичный код, в выходной унитарный код. В данном случае расшифровывается позиционный код номера приемника. Активный сигнал на соответствующем выходе дешифратора подключает к общей шине нужный приемник. Так, если приемником является регистр А1, то Апр(0:k) = 00…00, если информация передается на регистр А2, то Аист(0:k) = 00…01 и.т.д.

clip_image036

Если в схеме не больше четырех приемников в качестве дешифратора можно использовать, например, микросхему К155ИД4 (рисунок 26). Подаваемый на адресные входы А0, А1 (А1 – старший) код расшифровывается либо первым (D) либо вторым (Е) дешифратором. Входы D, E – входы выбора дешифратора. Входы clip_image038 - входы разрешения работы соответственно первого и второго дешифраторов. clip_image040 - выходы первого дешифратора, clip_image042 - выходы второго дешифратора.

D-дешифратор работает, когда на входе D присутствует уровень логической единицы, на входе clip_image044 – уровень логического нуля. E-дешифратор работает, когда на входы clip_image046 подан уровень логического нуля. На выходе работающего дешифратора, номер которого определяется кодом, поданным на входы А1, А2, уровень логического нуля (выходы инверсные). На всех остальных выходах микросхемы К155ИД4 – уровень логической единицы.

При работе схемы в динамическом режиме синхросерия (clip_image048) подается на вход разрешения работы (clip_image044[1]или clip_image050) используемого дешифратора. Микросхему К155ИД4 можно использовать как один дешифратор на три адресных входа и восемь выходов. Для этого надо объединить входы выбора дешифратора (clip_image052 с clip_image054) и входы разрешения работы дешифраторов (clip_image044[2] с clip_image050[1]). При этом объединенный clip_image052[1]-clip_image054[1]-вход будет старшим адресным входом дешифратора (A2) и работа обоих дешифраторов будет разрешаться одновременно. Постройте схему дешифратора 3х8, пронумеруйте выходы (от 0 до 7) и объясните нумерацию выходов.

Сравнение общей и раздельной шины.

1) По быстродействию. Более производительными считаются раздельные шины, так как они позволяют совместить некоторые передачи в одном такте. Передачи у1: A:=B и y2: C:=D могут производиться одновременно (но не у1: А:=B и у2: С:=А).

2) По стоимости. Стоимость общей шины, изображенной на рисунке 23, clip_image056. Если реализовать дополнительно все возможные инверсные передачи, то стоимость общей шины станет равна clip_image058. Такой ценой можно организовать любую передачу в системе из N n-разрядных регистров. Цена раздельной шины возрастает с увеличением количества передач: clip_image060, где clip_image062 - количество передач, clip_image064- количество источников, clip_image066 - количество приемников. Общая шина будет дешевле раздельной, когда clip_image068. Раздельные шины в операционных автоматах применяют, если регистры слабо связаны (передач между регистрами мало) и важно быстродействие.

3) По степени универсальности (настраиваемости на конкретную микропрограмму).

Общая шина – универсальное решение, пригодное для любой микропрограммы. Раздельную шину необходимо проектировать для каждой конкретной микропрограммы.

Предлагаю ознакомиться с аналогичными статьями: