Вычислительные системы и микропроцессорная техника
11

Примем, что выходной код В{1:k} - двоичный позиционный код, численный эквивалент которого равен числу единичных символов кода А{1:32}. Легко заметить, что максимальное число "единиц", равное 32, потребует формирования шестиразрядного выходного кода B{1:6}, так как  (32)10 = (100000)2    (32Д = 100000B).

В качестве сопутствующей можно рассмотреть задачу формирования выходного кода в двоично-десятичном представлении. Разрядность при этом не изменится: потребуется тетрада для формирования младшей цифры (0 - 9) и два двоичных разряда для представления старшей цифры (0 - 3). Представляет интерес введение контрольного разряда В{7} для проверки кода на четность (нечетность) при передаче по каналу связи.

Итак, задание на проектирование может быть выражено в виде функциональной схемы и эпюр напряжения, изображенных на рис. 2.1.

Примем, что в разрабатываемом устройстве не требуется введе­ния внутренней индикации, и не будем пока накладывать никаких ограничений на потребляемую устройством мощность и, следовательно, на выбор оптимальной элементной базы. Эти вопросы могут быть реше­ны при дальнейшей работе над заданием.

Разработка схемы устройства начинается с главного вопроса - определения метода построения устройства как комбинационного или как регистрового. Согласно заданию устройство преобразует входной параллельный код в выходной, поэтому оно может быть построено и как комбинационное, и как регистровое. Рассмотрим оба варианта, сравним сложность их реализации и определим область применения.

2.2. КОМБИНАЦИОННАЯ РЕАЛИЗАЦИЯ УСТРОЙСТВА

При построении устройства в виде комбинационной схемы надо решить задачу синтеза системы шести логических функций 32 перемен­ных. Эта задача достаточно сложна и в условиях ограниченного вре­мени проектирования решена быть не может.

К решению задачи можно подойти с позиций операционного синте­за, построив устройство, реализующее цепочку простых преобразова­ний. Разобьем входной код на такие части, для которых решение задачи преобразования "числа единиц" в позиционный двоичный код яв­ляется практически реализуемым. Разобьем входной код на четыре части:

А{1:32} = A{l:8}. А{9:16}. А{17:24}. А{25:32}.