|
||||||||||||
|
||||||||||||
|
|||||||||
МЕНЮ
|
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА - РЕФЕРАТЫ - Построение ОВС для решения формулыПостроение ОВС для решения формулыСодержание
В связи с тем, что в формуле используется вычитание необходимо проводить вычисления в обратном или в дополнительном кодах. Так как К - чётное число, вычитание проводится в дополнительно коде 1. При помощи параметра V, определяются направления входов операндов и выхода результата. Для этого используется формула (1.2.4), причём число V представляется в двоичном коде. V=K mod 64 (1.2.4) Для сорок второго варианта V=42=1010102, причём следует учесть, что направления движения чисел читаются с право налево, т.е. V=10 10 102, и 00-это юг, 01-запад, 10-север, 11-восток. С В А Устройство должно выполнить вычисление за минимальное время, т.е. за минимальное количество тактов. Частично этого можно достичь, сократив время программирования ОЭ. ТЈ (X+Y+Z+6) Ч16 (1.2.5) При К=42, накладывается следующее ограничение тактов программирования: TЈ (9+0+0+6) Ч16=15Ч16= 240. Из предыдущих вычислений следует, что С вычисляется по формуле С=7|A-B|/4, число А двоично-пятиричное и поступает с севера, В - двоично-девятиричное и так же поступает с севера, вычитание производится в дополнительном коде, результат выдаётся на север и количество тактов программирования не превышает двухсот сорока. 2. Структура вычислительного процесса алгоритмы вычислений2.1 Структура вычислительного процессаВ ОВС вычисления могут производиться ОЭ как последовательно, так и параллельно. В дальнейшем будут использоваться оба способа. Поэтому для наглядности происходящих процессов ниже на рис.1 приведена структура вычислительного процесса.Рис.1.2.2 Последовательность обработки операндов2.2.1 Обработка числа АОбработка числа заключается в том, что необходимо число перевести из двоично-кодированного вида в двоичный, а так же преобразовать его в дополнительный код, В таком виде оно пригодно для дальнейшего использования.В начальных условиях указано, что операнд А можно считать положительным числом, а это означает, что прямой код числа совпадает с дополнительным.Таким образом, обработка числа А состоит в выделении старшей тетрады, выделении младшей тетрады, умножении H на пять и сложении с L. Подробно эти действия представляет алгоритм на рис.2.Число А2-5 поступает с севера. Выделение старшей тетрады производится путём логического умножения А2-5 на константу вида 111100002 или F016. Это наглядно иллюстрирует пример: Рис.2Младшая тетрада выделяется аналогичным способом:Двоичное число находится по формуле (2.2.1 1)A2=HnЧS+L (2.2.1 1)где S-система счисления двоично-кодированного числа, L-его младшая тетрада, а Hn-нормализированная старшая тетрада двоично-кодированного числа:а8 а7 а6 а5 0 0 0 0=H0 0 0 0 а8 а7 а6 а5=HnДля сорок второго варианта формула (2.2.1 1) выглядит следующим образом: А2=5ЧHn+LПроцедура умножения старшей тетрады на пять может быть представленной в виде: 5Hn=Hn+4Hn2.2.2 Обработка числа ВОперанд В обрабатывается аналогично операнду А, за исключением некоторых особенностей.Рис.3 Число В поступает кодированное в двоично-девятиричной системе счисления, поэтому старшая тетрада умножается на девять, причём, поступающее число В отрицательно и его прямой код не совпадает с дополнительным. Следовательно, операнд В необходимо перевести в дополнительный код. Это осуществляется путём вычитания единицы с последующим инвертированием. Вычесть единицу можно путем сложения числа с константой вида 1 1 1 1 1 1 1 12 1.Всё выше перечисленное показано на рис.3.2.2.3 Обработка числа СДля получения числа С необходимо модуль разности чисел А2 и В2 умножить на семь и разделить на четыре. Сумма чисел Адп и Вдп даст результат так же в дополнительном коде. Получить прямой код результата, который будет равен разности чисел А2 и В2, можно при помощи арифметического сложения Сдп с его же знаковыми разрядами:Вычисление прямого кода из обратного производится путём сложения по модулю два числа Соб так же с его знаковыми разрядами:?????????????????????????????????????Умножение на семь осуществляется следующим способом: 7C= 4C+2C+C. А деление на четыре путём логического умножения на константу 1 1 1 1 1 1 0 02 и задержкой на два такта.Рисунок 4 представляет схему алгоритма вычисления числа С.Схема алгоритма вычисления числа СРис.4.3. Схемы ОВС3.1 Обозначения на схемахДля удобства применения и простоты восприятия, операции условно обозначаются значками:&-логическое умножение;&-логическое умножение с инверсией;-логическое сложение;-сумма по модулю два;+-арифметическое сложение;T-условное запоминание;GC-генерация константы;DD-задержка на девять тактов.Кроме этого, пунктирной линией показаны транзиты, стрелками-направления движения чисел. Так же указываются такты задержки и такты выходов первых бит чисел.Номера ОЭ состоят из двух цифр: первая-номер микросхемы, вторая-номер ОЭ в микросхеме.3.1 Схема участка ОВС для вычисления числа АНа схеме ОВС непосредственно указывается, как будут работать ОЭ.На рис.5 представлена схема ОВС для вычисления двоичного числа А.Число А2-5 поступает на двенадцатый элемент, он выполняет операцию логического умножения константы F016 и А2-5, а так же транзит числа на запад с задержкой на два такта. Тринадцатый элемент складывает число само с собой и задерживает его на два такта, таким способом достигается задержка числа на три такта.Рис.5 Элементы четырнадцать и пятнадцать позволяют умножить старшую тетраду на пять, при этом используется свойство двоичных чисел при умножении на константу вида 2:Взяв число на два такта раньше, получается число умноженное на четыре. Аналогично происходит умножение на два, восемь, шестнадцать и т.д. .На ННННННННННННННННННН шестнадцатом элементе происходит выделение младшей тетрады. Девятнадцатый ОЭ производит сложение старшей и младшей тетрад и выдаёт двоичный результат на запад. Одиннадцатый и тридцать четвёртый ОЭ генерируют константы.3.2 Схема участка ОВС для вычисления числа ВУчасток ОВС для обработки числа В работает аналогично участку, обрабатывающему число А, за исключением трёх ОЭ, позволяющих переводить двоичное число в дополнительный код.Рис.6.На Рис.6 перевод числа в дополнительный код осуществляется на трёх ОЭ. Тридцать первый ОЭ генерирует константу FF16, а тридцать второй складывает её с двоичным чсислом. Тридцать пятый ОЭ выполняет операцию логического умножения, причём, число умножается само на себя, чем достигается сохранение его начального значения, затем инвертирует его. Таким образом совершается перевод числа в дополнительный код в ОВС.3.3 Схема участка ОВС для вычисления числа СРис.7Тридцать восьмой ОЭ складывает поступающие числа А и В. Тридцать девятый ОЭ производит задержку числа на девять тактов и подаёт на юг тридцать шестого ОЭ. В тот такт, когда на тридцать шестой ОЭ поступает число Сдп с юга, с запада появляются знаковые разряды числа Сдп. Таким образом выполняется арифметическое сложение числа с его знаковыми разрядами. Такая операция может быть совершена благодаря свойству ОВС что, после чиса (после седьмого бита) следуют знаковые разряды этого числа, т.е. восьмой, девятый, десятый и т.д. биты знаковые разряды. Аналогичным способом происходит сложение по модулю два числа Соб с его знаковыми разрядами на сорок четвёртом и сорок седьмом ОЭ. На сорок первом, сорок втором, сорок пятом и сорок восьмом ОЭ выполняется умножение числа Спр на семь. А сорок шестой и сорок девятый позволяют делить число на четыре.Рис.84. Временные диаграммы4.1 Таблицы временных диаграммВременные диаграммы приводятся для входов ОВС и для всех использующихся выходов ОЭ. В столбцах указываются такты, в строках-номера ОЭ и имена выходов ОЭ, а так же код направления выхода.ОЭ начинают обрабатывать поступающие числа только с десятого такта. Это обусловлено тем, что для нормальной работы ОЭ необходимо обнулить все триггеры. Это так же позволит стабилизировать работу генераторов константы.Таблица 4.Временная диаграмма для участка ОВС обрабатывающего число А
Таблица 5. Временная диаграмма для участка ОВС обрабатывающего число В
Временные диаграммы позволяют удобно приводить константу к первому такту, а так же эффективно контролировать работу всей ОВС и каждого ОЭ в отдельности. В табл.4. обычным шрифтом указаны разряды двоичнокодированного числа. Прописные буквы символизируют готовый двоичный результат. В табл.5. обозначения идентичны, только разряды выделенные курсивом представляют результат, полученный при сложении двоичного числа с константой FF16. В обоих таблицах кресты обозначают неизвестные, но имеющие значение, разряды чисел. Таблица 6. Временная диаграмма для участка ОВС обрабатывающего число С
В табл.6. обычный шрифт обозначает число в дополнительном коде. Знаки Зн обозначают знаковые разряды числа С в дополнительном коде. Аналогично для курсива, который символизирует обратный код. Жирный шрифт определяет число в прямом коде. Подчёркнутый шрифт представляет конечный результат работы ОВС. Таблица 7. Приведение константы FC16
|
РЕКЛАМА
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА | ||
© 2010 |