Силин В.Б., Мельников Б.С. Электронные вычислительные устройства. Операционный синтез - файл n1.doc

Силин В.Б., Мельников Б.С. Электронные вычислительные устройства. Операционный синтез
скачать (1022 kb.)
Доступные файлы (1):
n1.doc1022kb.02.11.2012 23:35скачать

n1.doc

  1   2


681.141 (075.8) С 362

УДК:681.3.066 (075.8)

Авторы: В.Б. СИЛИН, Б.С. МЕЛЬНИКОВ

ЭЛЕКТРОННЫЕ ВЫЧИСЛИТЕЛЬНЫЕ УСТРОЙСТВА. ОПЕРАЦИОННЫЙ СИНТЕЗ

Учебное пособие (Для дневной и вечерней форм обучения)

МОСКВА, Московский авиационный институт, 1982 г.
В пособии рассмотрен структурный базис операцион­ных устройств вычислительной техники - операционные элементы комбинационного и автоматного типов. Среди рассмотренных элементов - регистры, счетчики, суммато­ры, дешифраторы, мультиплексоры и т.д. На формальном и содержательном уровнях обсуждаются основные характерис­тики операционных элементов, их внутренняя организация.
ПРЕДИСЛОВИЕ

Настоящим учебным пособием по курсу "Электронные вычислитель­ные устройства" продолжается ряд учебных пособий по цифровой тех­нике, выпущенных на факультете радиоэлектроники летательных аппа­ратов МАИ. В ранее изданных пособиях были рассмотрены арифметические и логические основы цифровой техники, элементы теории конеч­ных автоматов. Как это видно, все изложенные ранее разделы могут быть отнесены к основам цифровой техники. Настоящее пособие явля­ется первым, в котором начинают рассматриваться уже более сложные, комплексные вопросы, непосредственно связанные с практическим син­тезом цифровых устройств.

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

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

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

Полнота изложения соответствует программе курса "Электронные вычислительные устройства" для специальности "Конструирование и производство электронной вычислительной аппаратуры", подготавли­ваемой на факультете радиоэлектроники летательных аппаратов МАИ. Однако пособие в полном объеме может быть использовано студента­ми, обучающимися и по остальным специальностям на дневном отделе­нии факультета.

Главы 1 и 2 написаны канд. техн. наук В.Б. Силиным, главы 3, 4 и 5 - канд. техн. наук Б.С. Мельниковым.

Глава 1. ОПЕРАЦИОННЫЕ ЭЛЕМЕНТЫ. ОСНОВНЫЕ ПОНЯТИЯ

1.1. Иерархия структурных элементов цифровых устройств

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

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

1. Уровень простейших элементов комбинационной логики.

2. Уровень триггерных элементов.

3. Уровень операционных элементов.

4. Уровень операционных устройств.

5. Уровень ЭВМ.

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

Для каждого из иерархических уровней можно выделить целый ряд характерных особенностей. Во-первых, это набор основных струк­тур - объектов этого уровня. Во-вторых, это вид входного и выход­ного сигнала, который в различных случаях может рассматриваться на электрическом, логическом или содержательном уровнях как в ви­де единичного воздействия, так и в виде параллельных или последо­вательных организаций единичных сигналов (параллельных или последовательных кодов).

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

Естественно, что основной, главной особенностью объектов каж­дого уровня является функциональное преобразование, выполняемое ими над входными сигналами. Это преобразование, форма его описа­ния самым тесным образом связаны со структурной организацией объек­тов, их математической формализацией. Для каждого иерархического уровня существенной особенностью, определяющей многие особенности функционирования его объектов, является элементный базис, т.е. на­бор компонентов, из которых создаются его структуры. В предыдущих разделах курса "Электронные вычислительные устройства" [1-3] де­тально были рассмотрены первые два низших уровня иерархии, в на­стоящем пособии обсуждается третий уровень. Потребности его обсуж­дения требуют некоторого краткого предварительного ознакомления с его особенностями, а также особенностями следующего уровня, уров­ня операционных устройств. Столь же полезным будет краткое напо­минание о первых двух уровнях. Это и будет сделано ниже.
1.2. Основные особенности объектов первых четырех иерархических уровней вычислительных устройств

1.2.1. Уровень простейших элементов комбинационной логики. К этому уровню обычно относят комбинационные логические элементы И, ИЛИ, НЕ, И-НЕ, ИЛИ-НЕ, И-ИЛИ-НЕ и др. Часто такие элементы не­зависимо от вида реализуемой логической функции называют вентиль­ными элементами. В этом случае представление цифрового устройства на уровне комбинационных логических элементов называют представ­лением на уровне вентилей. Входные и выходные сигналы комбинацион­ных элементов относятся к классу логических сигналов. Как правило, для описания сигналов используется двухуровневая логика (уровни логического "0" и логической "1"). Однако в последние года с целью более детального описания функционирования логических цепей и ди­агностики их неисправностей начинает использоваться многозначная логика. Элементы этого низшего иерархического уровня осуществля­ют элементарные логические операции над отдельными логическими переменными, которым не придается какого-либо содержательного смыс­ла. Общий вид таких операций

Y(t) = F({Xi(t)}),

где Xi(t) - некоторый входной логический сигнал, определенный в мо­мент времени t; {Хi(t)} - некоторый набор (комбинация) входных сигналов; Y(t) - выходной логический сигнал, в идеализированном случае появляющийся одновременно с подачей входных сигналов; F - некоторая функция двузначной логики.

1.2.2. Уровень триггерных элементов. Триггерные элементы являются простейшими (элементарными) конечными автоматами. В их число входят такие широко используемые триггеры, как D, T, R-S, JK и многих других типов. Они применяются как для записи и хранения информации (например триггеры D- и R-S -типов), так и для преобразования входных сигналов (таковы триггеры T-, J-K- ти­пов).

Все триггерные элементы представляют собой некоторые струк­туры, выполненные на определенных наборах простейших элементов комбинационной логики. Некоторые из триггеров требуют для своего функционирования специальных управляющих сигналов. Формальное описание внутренних и внешних свойств триггерных элементов осущест­вляется средствами булевой алгебры и теории конечных автоматов. Совокупность входных и выходных сигналов, а также внутренних со­стояний триггеров в общем совпадает с сигналами комбинационной логики. Однако при этом допускаются некоторые упрощения в пред­ставлении этих сигналов как функций времени, что объясняется осо­бенностями описания и поведения триггерных элементов во времени.

Функционирование триггерных элементов (см. [3] ) может быть представлено в виде
Y(tj) = F({Xi(tk)}), tj > tk ,

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

Заметим, что все эти триггерные элементы выполняют ограничен­ный набор фиксированных типовых операций над отдельными логически­ми сигналами, не обладающими каким - либо определенным содержатель­ным смыслом.
1.2.3. Уровень операционных элементов. В предыдущих разделах курса "Электронные вычислительные устройства" изучение комбинаци­онной логики и элементов теории конечных автоматов не ограничива­лось только лишь обсуждением простейших элементов комбинационной логики и автоматного типа. В частности, рассматривались и более сложные комбинационные цепи и конечные автоматы (например, прово­дился даже синтез многоразрядных счетчиков). Такие более сложные комбинационные цепи и автоматы обладают способностью выполнять пусть даже простейшую обработку, но уже не отдельных логических переменных, а целых их групп, представляющих собой двоичные коды. Эти кода могут допускать свою интерпретацию как числа или некото­рые смысловые цифровые, текстовые или сигнальные записи. Записи такого типа часто называют словами. Каждая двоичная переменная, входящая в такие слова, может быть позиционирована, т.е. занимает вполне определенное место (позицию), обладая в связи с этим неко­торым конкретным смыслом. Так, в частности, в записи кода числа одна из его двоичных позиций (обычно самая левая) представляет знак числа, а остальные в зависимости от их номера могут обладать тем или иным весом в представлении мантиссы или порядка числа. Таким образом, входные и выходные сигналы в таких цепях уже прин­ципиально отличаются от сигналов в простейших комбинационных це­пях и триггерных ячейках.

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

Заметим, однако, что подобно тому, как при изучении отдельных простейших элементов комбинационного и автоматного типов возникла необходимость обращаться к более сложным цепям, компонентами кото­рых являлись рассматриваемые элементы, так и в настоящем случае обсуждение операционных элементов требует наличия определенных представлений о следующем иерархическом уровне - уровне операцион­ных устройств.
1.2.4. Уровень операционных устройств. Операционные устрой­ства представляют собой достаточно высокий уровень структурной организации цифровых устройств. Наиболее характерным примером операционного устройства является арифметически-логический блок (АЛБ) современных ЭВМ. В АЛБ, подобно тому, как и в операционных элементах, выполняются операции над машинными словами. Однако ес­ли в операционных элементах эти операции носят элементарный харак­тер, да и в каждом операционном элементе выполняется как правило только одно типовое преобразование, то в АЛБ выполняется целый на­бор самых разнообразных, в тот числе и достаточно сложных, опера­ций по обработке отдельных машинных слов или их целых наборов (групповая обработка). Число различных операций, выполняемых в АЛБ, весьма велико и может достигать нескольких сотен.

Каждая операция в АЛБ представляет собой завершенное дей­ствие над некоторым числом машинных слов. Выполнение такой опера­ции в АЛБ распадается на некоторое число шагов, каждый из которых связан с выполнением какого-либо простейшего элементарного дей­ствия, преобразования. Но именно такие простейшие элементарные действия могут быть произведены в операционных элементах. Таким образом, выполнение каждой операции в АЛБ, ее элементарных шагов распределено по некоторому набору операционных элементов, из кото­рых и состоит АЛБ как операционное устройство. Управление последо­вательностью выполнения отдельных шагов осуществляется специальны­ми управляющими сигналами. По принятой в настоящее время термино­логии, шаги, на которые разделяется каждая операция в АЛБ и кото­рые выполняются в соответствующих операционных элементах, называ­ются микрооперациями; управляющие сигналы, вызывающие выполнение этих микроопераций, называются микрокомандами; наконец, вся за­конченная последовательность микрокоманд, реализующая некоторую операцию в АЛБ, называется микропрограммой этой операции.
1.3. Основные определения

В разд. 1.2.3 предварительно описано понятие операционного элемента. Определим его более точно. Для этого сначала уточним и некоторые другие понятия.

1.3.1. Понятие "слово". Под термином "слово" или "машинное слово" понимается двоичный код фиксированной длины, каждый разряд которого может нести в зависимости от своего положения определен­ную смысловую нагрузку. В формальных текстах каждое употребляемое слово должно быть предварительно описано. Описание слова содержит имя слова - некоторую символьную конструкцию, начинающуюся с бук­вы и содержащую далее произвольное число букв или цифр. Примерами имен являются A, B, У, СЧ, СМ, РЕГ, ДШ, БОЛЬШЕ. После имени в описании слова содержится размерная часть, содержащая в фигурных скобках номера граничных, разрядов - самого левого и самого право­го, разделенные двоеточием. Примерами полного описания слов могут служить следующие записи:

А {0:31} - слово, содержащее 32 разряда;

В {5:20} - слово, содержащее 16 разрядов;

С {1:1} - слово, содержащее только один разряд. В этом слу­чае в описании такого слова размерная часть может быть опущена.

В различных текстах можно обращаться к отдельным разрядам или полям предварительно описанных слов. Так, например, 7-й раз­ряд слова А, описанного выше, будет записан как А{7}; поле слова В, начинающееся с 8-го и кончающееся 11-м разрядом, будет записано как В{8:11} .

Над словами, их отдельными разрядами или полями могут быть определены необходимые операции. Запись этих операций осуществля­ется с помощью предложений, подобных предложениям присваивания алгоритмических языков АЛГОЛ и ФОРТРАН. Пусть, например, слова А1, В1 и С1 были описаны как 32-разрядные слова с нумерацией разрядов от 0-го до 31-го. Тогда предложением С1{0:31} = A1{0:31} + B1{0:31} слову C1 присваивается значение суммы слов А1 и B1. В связи с тем, что операция осуществляется над полными словами, их размерные части в предложении могут быть опущены, т.е. ранее полученный результат дает и предложение С1=А1+ В1. Операции над отдельными разрядами или полями имеют следующий вид:

С1{8:15} = А1{24:31} + В1{0:7} .

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

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

Во всем последующем изложении в случае необходимости опера­ции над словами будут сопровождаться всеми необходимыми коммента­риями.

В функционирований операционных устройств, а значит, и опе­рационных элементов, могут встретиться слова трех основных типов, определяемых ниже.

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

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

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

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

Так как микрооперация связана с преобразованием слов, то со­держание микрооперации может быть выражено теми же формальными средствами, что и преобразование слов, т.е. с помощью предложений присваивания, рассмотренных в 1.3.1. Однако перед предложением присваивания при этом записывается управляющий сигнал (микроко­манда). Если результат микрооперации будет далее храниться в том операционном элементе, в котором была выполнена микрооперация, то предложение присваивания и имя микрокоманды должны быть разде­лены двоеточием. Тогда выполнение микрооперации сложения двух ко­дов с последующим хранением результата под управлением микроко­манды У будет записано как У: С1 = А1 + В1. Если микрооперация выполняется в нескольких операционных элементах, го действие в каждом операционном элементе будет представлено своим отдельным предложением присваивания. В записи микрооперации эти предложения должны отделяться друг от друга точкой с запятой. Примером такой микрооперации будет У1: С1=А1 + В1; РЕГ = РЕГ + 1. Из записи микрооперации видно, что одна микрокоманда У1 вызывает выполнение двух независимых действий в двух операционных элементах.

1.3.3. Понятие операционного элемента. Все рассмотренное вы­ше позволяет окончательно сформулировать понятие операционного элемента. Итак, операционным элементом будем называть устройство комбинационного или автоматного типа, в котором под влиянием од­ной микрокоманды выполняется или полная микрооперация, или ее не­зависимая часть. В процессе выполнения микрокоманды могут быть сформированы выходное информационное или осведомительное слово. Набор операционных элементов различных типов образует структурный базис (элементную базу) операционных устройств.
1.4. Общая структурная организация операционных элементов

Набор операционных элементов должен быть синтезирован под заданную совокупность необходимых микроопераций. Задача такого синтеза допускает неоднозначное решение, что объясняется множест­вом факторов, которые могут быть учтены в процессе этого синтеза. В настоящее время качество решения оценивают не только по конеч­ным результатам, заключенным в самом решении, но и по затратам на его получение. Это, в частности, проявляется в том, что в про­цесс синтеза стремятся ввести некоторые унифицированные приемы, облегчающие не только сам процесс синтеза, но и последующую кон­структорскую разработку цифрового устройства, возможность быст­рой организации производства, обеспечения средствами технической диагностики и т.д: Из двух возможных решений, одно из которых пусть будет отличаться меньшим объемом аппаратных затрат за счет оригинальных неповторимых способов структурной организации, а другое, напротив, содержит типичные проверенные варианты построе­ний, пусть даже в данном случае и требующие больших аппаратных затрат, предпочтение, как правило, будет отдано второму. Его лег­че выполнить на готовом наборе элементов, легче понять, легче про­контролировать. Можно выделить несколько типичных приемов струк­турной организации операционных элементов, унифицирующих процесс их синтеза, управления, описания. Наибольший интерес представляют два основных приема, кратко обсуждаемых ниже.


  1. Каноническое представление операционных элементов.

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

  1. Регулярность структурных решений операционных элементов. Операционные элементы осуществляют сходные операции над от­дельными разрядами информационных слов. Это является основанием

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

Глава 2. ХАРАКТЕРИСТИКИ ОПЕРАЦИОННЫХ ЭЛЕМЕНТОВ

Набор характеристик операционных элементов обусловлен их функциональным назначением и способами необходимого рассмотрения. Различают внешние и внутренние характеристики операционных элемен­тов. Внешние характеристики включают в себя в конечном итоге все то, что определяет общую зависимость выходных сигналов от входных. К внутренним характеристикам относят все то, что связано с внут­ренними средствами реализации внешних характеристик.
2.1. Внешние характеристики операционных элементов

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

2.1.1. функциональные или операционные характеристики. Харак­теристики этой группы являются основными, определяющими внешними характеристиками операционных элементов и связаны прежде всего с их общим функциональным назначением, с содержанием выполняемого преобразования входной информации. Все эти характеристики обсужда­ются ниже. При их описании будут широко использоваться некоторые формальные средства или, как их теперь принято называть, средства формального языка, в настоящем случае языка описания операционных схем (т.е. и элементов, и устройств), сокращенно ЯООС, Языки тако­го типа находят в настоящее время широкое применение и в силу сво­ей формальной организации предназначены для устранения какой бы то ни было неоднозначности в трактовке свойств и характеристик объектов описания. Эта языки обладают большинством черт современ­ных алгоритмических и описательных языков. В связи с тем, что ни один из ЯООС до сих пор не стандартизирован и не обладает по сравнению с другими аналогичными языками явными преимуществами, в последующем изложении будет использоваться некоторый условный учебный язык, который в соответствии с этим и будет называться УЯООС. Этот язык будет наделяться теми или иными средствами лишь в той мере, в которой это будет необходимо, по мере изложения для простоты, строгости и четкости представления материала. Заметим, что в первой главе при описании понятий слов, микрокоманд и микро­операций уже использовались некоторые формальные средства, кото­рые и будут теперь включены в число средств УЯООС.

Наименование операционного элемента. УЯООС должен предостав­лять определенные средства для идентификации каждого операционно­го элемента. Такая идентификация может осуществляться путем вве­дения имени операционного элемента. Могут быть определены два различных типа имен операционных элементов. Так, имя может быть дано всем однотипным стандартным операционным элементам, выпускае­мым промышленностью в настоящее время в интегральном исполнении. В качестве такого имени может быть взято паспортное наименование операционного элемента. С этим именем связывается область возможного применения типового операционного элемента. Имя такого вида будем называть формальным именем.

Однако именем должен обладать и конкретный операционный эле­мент, входящий в некоторую структуру, в некоторое операционное устройство. Это имя должно выделять единственный операционный эле­мент с его конкретным назначением и местом использования. Это имя монет иметь некоторую условную форму, однако должно отвечать тре­бованиям УЯООС. Скажем, операционный элемент типа "регистр" (воз­можно, с таким именно формальным именем) будет именоваться в кон­кретном устройстве как РЕГИСТР., или РГ, или PГ1, или Р, или даже А и т.д.

Размерная характеристика операционного элемента. Операцион­ные элементы предназначены для выполнения преобразований слов, имеющих определенную разрядность. В связи с этим сами операцион­ные элементы могут иметь свои собственные размеры, также выражен­ные в числе разрядов. При этом предполагается, что операционные элементы имеют регулярную структуру так, что может быть определе­на некоторая; связь между разрядами обрабатываемых слов и разряда­ми их структуры. Эта связь может быть явной, непосредственной, что можно будет легко усмотреть из материала последующих глав, но может быть и достаточно сложной. Тем не менее, размеры операцион­ных элементов во многих случаях могут быть выражены числом их раз­рядов, что может быть описано теми же средствами, что размеры слов. Тогда, скажем, 32-разрядный регистр с именем РГ будет опи­сан как РГ{0:31}.

Описание информационных и осведомительных слов. Внешние ха­рактеристики операционного элемента должны содержать в себе опи­сание всех входных и выходных информационных и осведомительных слов, обрабатываемых и формируемых в операционном элементе. Заме­тим, что в операционном элементе, кроме упомянутых слов, описыва­емых средствами, использованиями ранее в главе 1, в качестве ар­гументов или результатов преобразований могут выступать слова еще одного типа - слова внутреннего состояния операционного эле­мента, если этот элемент автоматного типа. Эти cлова уже не тре­буют специального описания, так как они непосредственно связыва­ются с самой структурой операционного элемента. Описание операци­онного элемента автоматного типа одновременно представляет собой и описание слова его внутреннего состояния. Следует отметить, что описание слова внутреннего состояния операционного элемента автоматного типа является его внешней характеристикой, так как оно в самом непосредственном виде определяет его общие функцио­нальные свойства.

Набор выполняемых операций (микроопераций). Один операционный элемент может использоваться при выполнении многих микроопераций. Каждая из них может завершаться или выдачей соответствующих выход­ных информационного или осведомительного слов, или установлением некоторого слова внутреннего состояния (для операционных элемен­тов автоматного типа). Во всех этих случаях микрооперации пред­ставляются соответствующими записями (см. разд. 1.3.2), содержа­щими некоторую микрокоманду и предложения присваивания. Признаком того, что микрооперация осуществляется в данном операционном эле­менте, является наличие в левой части предложения присваивания или имени операционного элемента, или представлений его отдельного разряда или поля. В качестве примера можно привести три микроопе­рации, осуществляемые в одном и том же операционном элементе авто­матного типа, описанном ранее как РГ{0:31} :

РГ=А; РГ{0}= 1;

?????
В первой из приводящихся микроопераций в рассматриваемый опе­рационный элемент вводится некоторый код А. Во второй микроопе­рации устанавливается значение только одного нулевого разряда. В последней микрооперации производится обнуление второго байта сло­ва внутреннего состояния. Все приведенные микрооперации в своей совокупности определяют функциональные свойства рассматриваемого операционного элемента.

Описание внешних связей. Операционный элемент в операционной структуре связан с другими элементами информационными и осведоми­тельными цепями или шинами. Цепь предназначена для передачи оди­ночного сигнала, шина - для многоразрядного, т.е. кода. Каждая шина может именоваться самостоятельно или иметь имя операционного элемента, из которого она выходит, т.е. для которого она является выходной. Имя кода, передаваемого по шине, должно совпадать с име­нем шины. При этих условиях все входные шины операционного элемен­та должны быть упомянуты в правых частях предложений присваивания его микроопераций. Таким образом, совокупность микроопераций, реализуемых в некотором операционном элементе, содержит в себе ин­формацию о всех его входных шинах. Выходная шина операционного элемента в полной мере описана только в микрооперациях других опе­рационных элементов, входящих в состав рассматриваемого операцион­ного устройства.

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

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

Необходимость использования характеристик этой группы следу­ет по крайней мере из двух причин. Первая из них заключается в том, что чисто формальное описание функциональных свойств операци­онных элементов не обладает той степенью наглядности, чтобы позволять по своему тексту полно воспринимать все многообразие выполня­емого преобразования. Будучи предельно точным, оно, к сожалению, не дает общей картины процесса обработки. Так, например, специа­лист в области вычислительной техники без затруднений сможет пред­ставить себе операцию умножения чисел, представленных в дополни­тельных кодах. Если же ему придется разбираться в работе устрой­ства, выполняющего эту операцию только на основе соответствующих микроопераций, то с уверенностью можно сказать, что осмысливание работы такого устройства ему дастся с большим трудом. Вторая при­чина связана с достаточно близким, но все же различным ходом выполнения одноименных операций над числами, представленными в тех или других кодах. Так, большинство операций над различными машин­ными кодами - прямым, обратным или дополнительным - отлично друг от друга казалось бы в незначительных деталях, но эти отличия прин­ципиальны. На уровне же микроопераций это проявляется чрезвычайно не наглядно.

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

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

К числу учитываемых электрических характеристик могут быть отнесены:

1. Электрические уровни (токов, напряжений или каких-либо других параметров), используемые для представления логических "0" и "1".

2. Задержки срабатывания (следует отметить, что временные ха­рактеристики могут представляться в чрезвычайно разнообразных формах).

3. Вид синхронизации: синхронные или асинхронные элементы. Для синхронных элементов может быть важным указание направления перепада, по которому осуществляется синхронизация.

4. Нагрузочные способности выходов и т.д.

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

2.2. Внутренние характеристики операционных элементов

Заметим, что рассмотренные внешние характеристики операцион­ных элементов не равноценны. Так, внешние функциональные характе­ристики определяют само назначение элемента, его сущность. Их из­менение недопустимо. В то же время электрические характеристики в какой-то мере говорят о качественных показателях операционного элемента. Он может быть более или менее быстродействующим, обла­дать возможностью к связи с большим или меньшим числом других эле­ментов, однако при этом он останется тем же самым операционным элементом, если только останутся неизменными его функциональные свойства. Очевидно, что внешние качественные показатели операцион­ных элементов зависят от их внутренних свойств, представленных на­бором внутренних характеристик. К их числу могут быть отнесены все характеристики, связанные с выбранными методами и средствами реа­лизации операционного элемента на некоторых реальных физических элементах.

2.2.1. Внутренние функциональные характеристики операционно­го элемента. Необходимость реализации операционного элемента с за­данными внешними функциональными характеристиками может потребо­вать определенной структурно - функциональной организации элемента, выбора специальных форм представления сигналов.

Структурно-Функциональная организация операционных элемен­тов зависит от общих принципов структурной организации элементов и выбора конкретного метода реализации заданной микрооперации. В качестве общих принципов структурной организации операционных эле­ментов, как правило, используются описанные в главе 1, разд. 1.4.1 и 1.4.2 принципы структурной организации, основывающиеся на кано­ническом представлении операционного элемента, т.е. с разделением его на комбинационную и автоматную части, и регуляризации структуры. Влияние выбора конкретного метода выполнения микрооперации может быть проиллюстрировано на примере такой операции, как сло­жение кодов. Эта микрооперация допускает различные реализации в последовательной или параллельной форме, с формированием последо­вательного или сквозного переноса, или же совсем без переноса, с организацией переноса по группам разрядов, с одновременным много­разрядным сложением и т.д. Результат операции во всех случаях бу­дет один и тот же, а структурная организация операционного эле­мента будет существенно отличаться.

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

2.2.2. Структурно-логические характеристики операционных эле­ментов связаны с конкретной логической реализацией функциональной организации на выбранной элементной базе. К соответствующим харак­теристикам при этом можно отнести:

  1. Тип элементной базы.

  1. Общие характеристики логических цепей: логическая струк­тура, сложность, число ступеней и т.д.

  2. Формы временного управления логическими элементами (формы тактирования, асинхронное функционирование).

  1. Временные диаграммы функционирования и т.д.

2.2.3. Внутренние электрические характеристики операционных элементов, как правило, представляются только двумя следующими:

  1. Электрические уровни представления логических "0" и "1" (в различных точках операционного элемента может одновременно ис­пользоваться как "положительная", так и "отрицательная" логики,
    устанавливающие различное соответствие между логическими и элек­трическими сигналами).

  2. Временные характеристики логических цепей (часто рассмат­риваются различия в задержках следования сигналов переключения по различным цепям элемента).


Глава 3. ОПЕРАЦИОННЫЕ ЭЛЕМЕНТЫ КОМБИНАЦИОННОГО ТИПА


3.1. Предварительные замечания

Операционные элементы комбинационного типа представляют со­бой сложные логические устройства без памяти. Выходные сигналы та­ких элементов у = {y1, y2, ..., yk} формируются как булевские функ­ции наборов входных сигналов x = {x1, x2, ..., xn} и определяются либо таблицами истинности, либо выражениями алгебры логики [1]: y1 = F1(x), у2 = F2(х) , ..., ук = Fk(х). В операционных элемен­тах входные сигналы образуют n -разрядное входное слово х{1:n}, а выходные сигналы - k - разрядное выходное слово y{1: k}, поэто­му операционный элемент может рассматриваться как логическое ком­бинационное устройство, преобразующее входное слово X в выходное слово У. Это преобразование осуществляется согласно требованиям функции F, включающей в себя функции преобразования индивидуаль­ных выходных сигналов F1, F2, ..., Fk.

Работа операционного элемента комбинационного типа описыва­ется предложением операционного описания следующего вида:

y{1:k} = F(x{1:n}), (3.1)

Заметим, что выходные сигналы элемента у всегда cтоят слева от знака равенства (точнее - присваивания), а входные сигналы х - справа. Поэтому предложения y = x и х = у имеют разный смысл; в первом случае входной сигнал X формирует выходной сигнал у, во втором - входной сигнал у формирует выходной сигнал х.

Если комбинационный элемент выполняет двух- или многомест­ную операцию, целесообразно входное слово представлять совокуп­ностью двух или нескольких слов (подслов):

x{1: n} =x{1:q} . x{q+1:n}
или

x{1:n} = x{1:p} . x{p+1:q} x{s+1: n},

здесь знак . (точка) означает соединение (конкатенацию) отдельных слов в общее слово х{1:n}. Для удобства записи полсловам присва­иваются индивидуальные имена с самостоятельными полями разряднос­ти:

х{1:n} = x1{1:r1}.х2{1:r2} xi{1:ri} ;

значения r1, r2, ..., ri могут быть как одинаковыми, так и отличаться друг от друга.

Итак, предложение операционного описания элемента, обрабаты­вающего I. входных слов, записывается теперь в виде

y{1:k} = F(x1{1:r1} . x2{1:r2} . . . . . xi{1:ri}). (3.2)

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

F{1:k} = F(х1{1:r1} . х2{1:r2} . . . . . xi{1:ri}). (3.3)

Операционные элементы комбинационного типа строятся из эле­ментарных логических элементов, образующих базовую систему элемен­тов [1] . Поскольку каждый из логических элементов обладает конеч­ным временем переключения, выходные сигналы операционного элемен­та F изменяются с некоторой задержкой относительно моментов из­менения входных сигналов х. Такой режим работы операционного элемента называется асинхронным.

При построении реальных операционных элементов цепочки эле­ментарных логических элементов, связывающих входы х и выходы F, могут быть разной длины, поэтому формирование разрядов выходного слова заканчивается в разные моменты времени. Это обстоятельство приводит к некоторым затруднениям при согласовании во времени ра­боты комбинационных операционных элементов в операционном устрой­стве. Для исключения этого явления на операционные элементы пода­ются специальные синхронизирующие, или стробирущие сигналы, по­зволяющие коду F{1:k} проходить на выход элемента лишь после окон­чания всех переходных процессов. Отсутствие стробирующего сигна­ла соответствует нулевому значению выходного кода F{1:k}. Такой режим работы операционного элемента называется синхронным; он описывается следующим предложением операционного описания:

У: F{1:k} = F(x1{1:r1}.x2{1:r2) xi{1:ri}) , (3.4).

здесь У - имя стробирующего сигнала; при У = 0 выходной код F{1:k} = 0 .

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

F=F(x1{1:r1}.x2 xi). (35)

Отсутствие поля разрядности y x2 и xi означает, что эти входные шины включают в себя по одному проводу.

Графическое изображение операционных элементов комбинацион­ного типа строится согласно требованиям ГОСТа:

  1. Элемент изображается в виде прямоугольника.

  1. Движение информации в элементе происходит слева направо, входные сигналы подходят к левой стороне прямоугольника, выходные отходят от правой стороны.

  2. Имя функции преобразования записывается в левом верхнем углу прямоугольника.

  3. Входные и выходные шины изображаются двойными линиями; расстояние между линиями не зависит от разрядности шины.

  4. Запрещается использование стрелок, указывающих направле­ние движения информации по проводам и шинам.

Условное изображение комбинационных операционных элементов представлено на рис. 1. Изображения отличаются количеством вход­ных шин, количеством проводов в шинах, наличием или отсутствием стробирующего сигнала. Для определенности будем считать, что счет проводов в шине идет сверху вниз - верхний провод шины имеет но­мер левой цифры поля разрядности, нижний провод - правой цифры поля разрядности.



Рис. 1. Условное изображение операционного элемента комбинационного типа: а - с тремя входными шинами и стробирующим сигналом; б - с одной входной шиной и стробирующим сигналом; в - с одноразрядным выходом; г - с одноразрядным выходом и стробирующим сигналом.
Наша промышленность выпускает широкий ассортимент микросхем, которые могут использоваться для построения комбинационных опера­ционных элементов либо непосредственно, либо в определенных комби­нациях. Несмотря на различив в способе построения базового элемен­та - диодно-транзисторное, транзисторное, с использованием МОП- или КМОП-структур, функциональный набор элементов внутри серии элементов приблизительно одинаков, поэтому практическую реализа­цию комбинационных операционных элементов мы будем рассматривать на элементах наиболее распространенной серии K155.

Операционные элементы комбинационного типа мы опишем в поряд­ке увеличения их функциональной сложности: схемы поразрядного пре­образования, схемы свертки, схемы формирования признака логическо­го отношения, схемы формирования признака арифметического отноше­ния и, наконец, схемы сложного преобразования кодов, такие, как сумматоры, дешифраторы, мультиплексоры и демулътиплексоры. Рас­смотрение будет сопровождаться рекомендациями по их реализации на элементах серии K155. Этим перечнем не ограничивается возмогший набор комбинационных операционных элементов. Сюда не вошли, напри­мер, устройства умножения, программируемые матрицы и другие. Тем не менее, материал этой главы затрагивает все базовые вопросы, не­обходимые для построения наиболее распространенных комбинационных операционных элементов.
3.2. Схемы поразрядного преобразования

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

y{1:k} =A{1:k} f B{1:k}, (3.6)

где y{1} = A{1} f B{1};

В качестве f можно использовать любые логические функции двух переменных. Если одно из слов принимает одинаковые значения по всем разрядам, то шина этого слова может быть заменена одним проводом, в результате чего операционное описание упрощается:

у{1:k} = A f B{1:k}. (3.7)
Если в качестве f выступает функция "И", то выражение (3.7) описывает работу коммутатора, в котором роль стробирующего сигнала У играет переменная А:

y{1:k} = A & B{1:k} (3.8)

или согласно (3.4).

A y{1:k} = B{1:k}. (3.9)

Выражения (3.8) и (3.9) являются эквивалентными, но первое из них более информативно, поскольку подчеркивает конъюнктивную связь стробирующего сигнала и коммутируемого кода. Функция "И" в выражении (3.6) воспринимается как функция выделения тех разрядов слова B{1:k}, для которых соответствующие разряды слова А{1:k} принимают единичное значение. Например, для выделения первых пяти разрядов слова B{1:k} слово А{1:k} должно принять значение А{1:k} = 1111100 ... 0. Функция "ИЛИ" используется для формирования выходного слова по его частям. Эти части записываются в словах А л В таким образом, чтобы при дизъюнктивном их соединении было сформировано требуемое слово - разряды А и В, не формирующие у, заполняются нулями. Пусть при выполнении операции y{1:k}=A{1:k} V B{1:k} (3.10)

первая половина слова у формируется словом А, а вторая - словом В. Тогда реальное преобразование описывается как y{1:k} = А{1: k/2) . 00...0 V 00...0 . B{k/2+1:k}.

Функция "равнозначность" применяется для установления тождес­твенности слов А и В:

y{1:k} =А{1:k} = B{1:k}.

При совпадении слов А и В по всем разрядам код выходного слова будет состоять из одних единиц. Напомним, что функция равнозначности опи­сывается в нормальной форме записи следующим образом [1]:

у = AВ + -А-B.

Функция отрицания равнозначности (функция сложения по модулю два, функция "Исключающее ИЛИ") устанавливает поразрядное несовпа­дение слов A и В: у{1:k} = A{1:k} mod2 B{1:k} . (3.11)

Код слова y принимает единичное значение во всех разрядах, если коды слов А и В взаимно инверстны. Если код А тождественно равен единице, то выходной код у формируется как инверсия кода B. Действительно, преобразуя функцию отрицания равнозначности (3.12)

y = АB + АВ для A =1, получаем у = ┐В , откуда здесь - знак инверсии кода.



Рис. 2. Схемы поразрядного преобразования: а - инвертор; б - поразрядное "И"; в - коммутатор кода; г - поразрядное "ИЛИ"; д - совпадение; е – несовпадение; ж - 6 "НЕ" К155ЛН1; з - 4"И" K155ЛИ1; в - 4"ИЛИ" К155ЛЛ1; к - 4"ИСКЛЮЧ. ИЛИ" К155ЛП5.

Условное обозначение схем поразрядного преобразования приве­дено на рис. 2, а-е. Имя выходных шин отражает характер преобра­зования - инверсия, коммутация, и, или, совпадение, несовпадение. На том же рисунке приведены микросхемы K155, из которых могут быть собраны реальные схемы требуемой разрядности.

3.3. Схемы свертки по логической функции

Схемы свертки по логической функции связывают все входные переменные операционного элемента одной и той же функции ? : у = ? х{1:п}. (3.13)

В качестве ? могут выступать все логические функции многих пере­менных, подчиняющиеся перестановочному закону [1] . Свертка по "И" у = & x{1:n} устанавливает наличие единиц во всех разрядах входного кода х{1:n} . Свертка по "ИЛИ" y = V x{1:n} проверяет, имеется ли во входном коде x{1:n} хотя бы одна единица. Свертка по mod 2 y = mod 2x {1:n} формирует единичный входной сигнал при нечетном количестве единиц в коде слова x{1:n} и нулевой при их четном количестве. Условное обозначение схем сверток приведено на рис.3,а,б,в.




e)

Рис. 3 Схемы свертки по функции: а - по "И"; б - по "ИЛИ"; в - по "mod 2"; г – пирамидальное соединение; д - цепочечное соедине­ние; е - по "И" на 16 входов на К155ЛА2 и К155ЛА3; ж - по "mod2” на 8 входов на К155ИП2
Реализация схем свертки по "И" и "ИЛИ" на микросхемах K155 встречает значительные трудности, поскольку схемы "И" и "ИЛИ" выпускаются только в двухвходовом варианте. Действительно, для построения схемы на п входов потребуется п-1 двухвходовых схем. Эти схемы могут соединяться либо пирамидально, либо цепочечно, как это показано на рис. 3,г,д. Некоторый выигрыш может быть по­лучен при использовании восьмивходовых схем "И-НЕ", но для этого реализуемую функцию необходимо представить в базисе Функции "Штрих Шеффера" [I]. На рис. 3,е изображена шестнадцативходовая схема свертки по "И", логическое выражение которой было получено в результате следующих преобразований:



Для организации свертки по функции сложения по mod2 можно использовать восьмивходовую микросхему К155ИП2, условное обозначение которой представлено на рис. 3,ж. Эта схема формирует S1=1 при четном количестве единиц во входном коде и S2=1 при нечетном . "Четность" и "нечетность" меняются местами при изменении вспомогательных сигналов на .

При одинаковом значении входных сигналов работа схемы не определена. Если количество разрядов свертки больше восьми, необходимо использовать несколько схем К155ИП2, соеди­няя их либо пирамидально, либо цепочечно.

3.4. Схемы Формирования признаков логического отношения

Схемы формирования признаков логического отношения описываются выражением
Y = A{1:n} ? B{1:n} (3.14)
и представляют собой двухступенчатую схему, в которой на первой ступени отношение w проверяется поразрядно, а во второй - конъюнктивно формируется суммарный признак y:



В качестве признака w чаще всего выступает функция равнозначности и ее отрицание (функция сложения по mod2). Схема формирования признака равнозначности

y = A{1:n} ? B{1:n} (3.15)
генерирует единичный выходной сигнал при совпадении кодов входных слов А и B по всем разрядам; схема формирования признака неравнозначности
  1   2


Учебный материал
© bib.convdocs.org
При копировании укажите ссылку.
обратиться к администрации