Узел преобразования чисел Узел преобразования чисел
Узел преобразования чисел РЕФЕРАТЫ РЕКОМЕНДУЕМ  
 
Тема
 • Главная
 • Авиация
 • Астрономия
 • Безопасность жизнедеятельности
 • Биографии
 • Бухгалтерия и аудит
 • География
 • Геология
 • Животные
 • Иностранный язык
 • Искусство
 • История
 • Кулинария
 • Культурология
 • Лингвистика
 • Литература
 • Логистика
 • Математика
 • Машиностроение
 • Медицина
 • Менеджмент
 • Металлургия
 • Музыка
 • Педагогика
 • Политология
 • Право
 • Программирование
 • Психология
 • Реклама
 • Социология
 • Страноведение
 • Транспорт
 • Физика
 • Философия
 • Химия
 • Ценные бумаги
 • Экономика
 • Естествознание




Узел преобразования чисел


                ВВЕДЕНИЕ
     Режим работы данного узла -
преобразование чисел, поэтому
стоит
поговорить о самих числах и их представлении в ЭВМ.
     В ЭВМ используются двоичные числа,  которые 
не  привычны
обыкновенному
человеку,  привыкшему к  арабским 
-  десятичным
числам.
Но для ЭВМ операции и само хранение двоичных чисел бо-
лее
удобно. Двоичные числа - это числа, составленные из 0 и 1.
Например:
     Десятичные числа   Двоичные числа
            0                0
            1                1
            2                10
            3                11
            4                100
            5                101
            6                110
                    и т.д.
     С физической точки зрения,  1 можно представить как неко-
торый
импульс/уровень напряжения, а 0 - как отсутствие таково-
го.
Тогда, устанавливая некоторый порог напряжения, можно все,
что
выше этого порога считать 1, а что ниже - 0. С десятичными
числами
пришлось бы поступить сложнее -  пришлось  бы 
вводить
несколько
пороговых уровней и на порядок 
усложнились  бы  все
узлы и
блоки ЭВМ.  Поэтому в современных ЭВМ
используются дво-
ичные
числа и двоичная арифметика.
     Также в 
современных  ЭВМ  применяется 
шестнадцатиричная
арифметика.
Это связано с тем,  что очень легко
выполнить пре-
образование
из шестнадцатиричной системы исчисления 
в  двоич-
ную и
наоборот.  Одна шестнадцатиричная  цифра 
представляется
четыремя
двоичными, например:
        Десятичные      Двоичные        Шестнадцатиричные
        1               0001           
1
        9               1001           
9
        10              1010           
A
        11              1011           
B
        12              1100           
C
        15              1111           
F
                и т.д.
     Принятая минимальная единица информации в
ЭВМ  - 
1  бит.
Один
бит равен одной двоичной цифре. 
Более  крупной  единицей
является
байт.  Один байт равен 8 битам.  Существуют 
и  более
крупные
единицы - слово (2 байта),  двойное
слово  (4  байта),
килобайт
(1024 байта), мегобайт (1024 Кбайта) и т.д.
     В данном курсовом, все операции
производятся с восьмираз-
рядными
числами, т.е. с числами, размером 1 байт.
     Немного надо сказать о представлении
чисел в ЭВМ.
     Числа делятся на целые и
вещественные.  Это деление,  ко-
нечно
весьма условно, но хорошо подходит для описания хранения
и
операций над числами в ЭВМ.  Чтобы
сильно не  углубляться  в
общности,
рассмотрим конкретный вариант, используемый в данном
курсовом
- размер чисел 8 байт.
     Как будут выглядеть целые числа -
показано  в  вышеприве-
денных
примерах. Как же будут выглядеть вещественные числа?
     Существует 3 наиболее распространенных
варианта кодирова-
ния:
прямой код, обратный код и дополнительный код.
     Далее введем одно обозначение.  Если 
после  цифры  стоит
"d"
- это десятичная цифра, "b" - двоичная, а "h" - шестнадца-
тиричная.
     Прямой код - это так сказать
"естественный" код,  то есть
1d=0001b,
10d=1010b, 15d=1111b и т.д.
     Обратный код образуется из прямого  путем 
инвертирования
всех
разрядов прямого кода, например 1d=0001b в прямом=1110b в
обратном,
10d=1010b в прямом=0101b в обратном коде.
     Дополнительный получается из обратного,
путем прибавления
к
младшему разряду 1.
     Обычно, 
прямой код используется для хранения положитель-
ных
чисел, а обратный и дополнительный - для отрицательных чи-
сел.
     В нашем курсовом,  вся работа с числами ведется в  прямом
коде.
     Но выше мы рассматривали только целые
числа, а как посту-
пить с
дробными?
     Существует два возможных варианта
хранения - в формате  с
фиксированной
точкой и в формате с плавающей 
точкой.  Покажем

живую" эти форматы на примере:
     1. С фиксированной точкой:
     5.8 d = 0 0101 110 b
             В ДВДД ДВД
             і  і    АДДД цифры после
запятой (.8)
             і  АДДДДДДДД цифры до запятой (5.0)
             АДДДДДДДДДДД знаковый разряд
(0='+', 1='-')
     Но таким образом большие вещественные
числа  хранить  не-
удобно
и неэффективно.  Поэтому  используется  второй  вариант
хранения:
     2. С плавающей точкой.
     5.8 d = 0 1001 011 b
             В ДВДД ДВД
             і  і    АДДД порядок числа
             і  АДДДДДДДД мантисса числа
             АДДДДДДДДДДД знаковый разряд
     То есть в формате с плавающей точкой
хранится 2  числа  -
порядок
и мантисса.  Так как порядок может быть
и  отрицатель-
ным, то
приняли еще одно правило: порядок всегда смещенный. То
есть если
порядок колеблется от +128d до -127d 
то  к  порядку
всегда
прибавляют 127d и тогда он колеблется в пределах  от  0
до
+255d и таким образом нам не приходится хранить знак числа.
     В связи с такими разными форматами
представления  чисел в
ЭВМ и
был разработан данный узел, задача которого - преобразо-
вание
чисел из формата с фиксированной точкой в формат с  пла-
вающей
точкой.
                ВЫБОР СТРУКТУРЫ УЗЛА
     Так как по заданию ввод/вывод в данном
узле должен проис-
ходить
параллельно,  то потребуется 2 регистра
(один для вход-
ных
данных, один для выходных),  разрядность
которых исходя из
условия
- 8 бит. Также, для промежуточных результатов потребу-
ется 1
восьмиразрядный регистр (для хранения и работы 
с  ман-
тиссой)
и один четырехразрядный регистр и 
один  сумматор  для
обработки
порядка.  Дополнительно также
потребуется 13 элемен-
тов
И-НЕ. Это пока все без доказательства - оно будет позже. В
качестве  8-ми 
разрядных  регистров   нам  
хорошо   подходят
К155ИР13,  в качестве 4-х разрядного - К155ИР1.  Также мы 
ис-
пользуем
сумматор  К155ИМ3,  а 
для  дополнительной  логики 
4
микросхемы
К155ЛА3.  Итого вся схема собрана  собрана, 
как  и
требовалось
на микросхемах серии К155. 
Альтернативный вариант
схемы
будет рассмотрен далее.  Общая схема
узла  приводится  в
приложении.
                РАСЧЕТ ПОСТРОЕНИЯ И ОПИСАНИЕ
                    ПРИНЦИПИАЛЬНЫХ СХЕМ
     Как же именно, с моей точки зрения,  должен работать дан-
ный
узел? В целом его работу можно описать так:
     Обозначим:
     1. Число с фиксированной точкой
     S1.I1.R1
     і 
  АДД цифры после запятой, 3
разряда
     і 
АДДДДД цифры до запятой, 4 разряда
     АДДДДДДДД знак, 1 разряд
     2. Число с плавающей точкой
     S2.M2.P2
     і 
  АДД порядок, 3 разряда
     і 
АДДДДД мантисса, 4 разряда
     АДДДДДДДД знак, 1 разряд.
     Учитывая приведенные выше
обозначения,  общий принцип ра-
боты
данного узла можно изобразить так:
     ВходныеіS1іДДДДДДДДДДДДДґзнакГДДДДДДДДДДДДД>іS2іВыходные
     данные іI1іДДї  ЪДДДДДДДДДї             
ЪД>іM2іданные
            іR1іДїі  іхранение і             
Ъ>іP2і
                 іАД>іи работа іДї
ЪДДДДДДДДї іі
                 АДД>іс мантис-і і
нормали-іДЩі
                     ісой числаі
А>ізация   і  і
                     АДДДДДДДДДЩ Ъ>ірезуль-
ДДЩ
                     ЪДДДДДДДДДї і ітата    і
                     іхранение і і АДДДДДДДДЩ
                     іи работа іДЩ
                     іс поряд- і
                     іком числаі
                     АДДДДДДДДДЩ
     Словесно, алгоритм преобразования можно
описать так:
     1. Занесение исходных данных в регистр
RG1.
     2. Занесение мантиссы числа с регистр
RG2.
     3. Занесение 7d(111b) в регистр порядка
RG4 (автоматичес-
     кий сдвиг на 4 разряда + 3, так как
порядок смещенный).
     4. Нормализация результата:
     а. Если мантисса не нормализована, т.е.
старший бит равен
     "0", то сдвигаем мантиссу влево
на 1 разряд с помощью ре-
     гистра RG2 и с помощью сумматора SM
вычитаем 1 из регист-
     ра RG4, 
который содержит порядок числа и заносим резуль-
     тат снова в регистр RG4. Возвращаемся к
пункту 4.
     б. Если в старшем разряде мантиссы  "1",  то значит число
     нормализовано и мы переходим к пункту 5.
     5. Занесение результата в регистр RG3
     Это было о алгоритме.  Как же работает сама схема  и 
от-
дельные
ее части?
     Сначала о частях.  Рассмотрим два элемента данной  схемы:
сумматор
и регистр.
                        СУММАТОР
     Формулы для суммы и переноса  и 
i-том  разряде  выглядят
так:                   _ _      _  
_      _ _
    
S(i)=a*b*P(i-1)+a*b*P(i-1)+a*b*P(i-1)+a*b*P(i-1)
                     _            _            _
    
P(i)=a*b*P(i-1)+a*b*P(i-1)+a*b*P(i-1)+a*b*P(i-1),
где:
     S(i) - сумма в i-ом разряде,
     P(i) - перенос в i-ом разряде,
     a,b - слагаемые в i-ом разряде,
     P(i-1) - перенос из i-1 разряда.
     Один из вариантов схемы для
реализации  такого  сумматора
(точнее
говоря элемента сумматора для одного разряда, из кото-
рых
можно построить сумматор любой разрядности) выглядит так:
     Формирователь суммы (вариант
комбинационного сумматора) :
P(i-1)ДВДДДДДДДДДДДДДДДДДДДДї     ЪДВДДДДДї
       і                    АДДДВДґ&і1    і
aДДДДВДЕДДДДДДДДДВДДДДДДДДДДДДДДЕДґ
     і
     і і         і           ЪДВЕДґ
     і
bДДДДЕВЕДДДДДДДДДЕДДДДДДДДДДДЩ
ГДґ     OДї
     ііі 
ЪДДДї 
АДДДДДДДДДДДДДЕЕДґ&і     і і
     іііЪДґ&  і   ЪДДДДДДДДДДДВЕЕДґ
     і і
     ііАґ і  
OДДДЩ        ЪДДЕЕЕДґ і     і і
     іі АДґ  
      ЪДДДї і  ііі АДБДДДДДЩ і  ЪДДДї
     іі  
АДДДЩ    ЪДґ&  і і 
ЪДВДДДДДї АДДґ&  і
     іАДДДДДДДДДДДДґ і   OДґ 
АЕДґ&і1    і    і  
OДД S(i)
     і   
ЪДДДї    АДґ   і і 
АДЕДґ і     і ЪДДґ   і
     і 
ЪДґ&  і      АДДДЩ і ЪДДЕДґ і     і і 
АДДДЩ
     АДДґ і  
OДДДДДДДї    і і  і ГДґ    
OДЩ
        АДґ  
       і    і і 
АДґ&і     і
          АДДДЩ       АДДДДЕДБДДДДґ і     і
                           АДДДДДДґ і     і
                                  АДБДДДДДЩ
     Этот элемент сумматора работает по  несколько 
измененной
формуле
(в связи с базисом реализации И-НЕ и И-ИЛИ-НЕ):
         
_______________________________________________
           _____________________   _____________________
                        _ _        _  
_      _ _
    
S(i)=(a*b*P(i-1)+a*b*P(i-1))*(a*b*P(i-1)+a*b*P(i-1))
     Можно показать, что формирователь
переноса строится абсо-
лютно
аналогично.
     Затем перенос из i-того разряда  передается 
на  (i+1)-ый
разряд,
а сумма i-того разряда выводится. 
Соединяя такие бло-
ки,
можно получить сумматор любой разрядности.
     Таким образом,  в представленном сумматоре сумма формиру-
ется
параллельно,  а перенос
последовательно.  Данный сумматор
не
отличается высоким быстродействием, а для повышения быстро-
действия
используют так называемый сквозной и групповой 
пере-
нос.
     В качестве элементов для  такого 
сумматора  можно  взять
микросхемы
К155ЛА3 и две К155ЛР4.
     Возможно также построение сумматоров  на 
основе  тригге-
ров -
тогда сумматор будет 
накапливающим,  то есть  результат
суммы
будет доступен  для  считывания 
даже  после  отключения
входных
сигналов.
                        РЕГИСТР
     Регистры в данном курсовом проекте
используются для  хра-
нения и
преобразования (сдвига) мантиссы и 
порядка.  В  целом
регистры
делятся на параллельные, 
последовательные и комбини-
рованные.
В нашем узле используются возможности как параллель-
ных (для
хранения) так и последовательных (для сдвига) регист-
ров.
     Как же строятся регистры? Регистры
строятся на  основании
триггеров,
количество которых зависит от разрядности регистра.
                Параллельные регистры.
     Вот пример простейшего параллельного
однофазного регистра
на
RS-триггерах:
Вывод
прямого кодаДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДДДДДДДДДДДД
ВводДДДВДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДДДДДДДДД
       і ЪДДДї     ЪДДДВДДДДДДї   і ЪДДДї
       АДґ&  і     і   і TT  
   АДґ&  і
         і  
OДДДДДO S і      ГДї   і  
OДДДДДДДї
 X(i) ДДДґ  
     і   і      і АДДДґ   і      

         АДДДЩ     ГДДДґ      і     АДДДЩ ЪДДДї і ЪДДДї
                   і   і      і   ЪДДДДДДДґ&  і АДґ&  і
                ЪДДO R і      OДДДЩ       і   OДї і   OДД X(i)
                і  і   і      і       
ЪДДґ   і АДґ   і
                і  АДДДБДДДДДДЩ        і  АДДДЩ  
АДДДЩ
Установка
"0"ДДДБДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДДДД
Вывод
обратного кодаДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДДДДДД
     Эта схема только для одного разряда,  но 
соединив  такие
блоки
можно получить регистр любой разрядности. Условное обоз-
начение
для 4-х разрядного регистра:
             ЪДДВДДДДВДДї
         ДДДДґS1іRG  і  і
             і  і    і1 ГДДД
         ДДДДґS2і    і  OДДД
             і  і    і2 ГДДД
         ДДДДґS4і    і  OДДД
             і  і    і4 ГДДД
         ДДДДO Rі    і  OДДД
             АДДБДДДДБДДЩ
     Такой регистр является 2-х тактным,
поскольку ввод инфор-
мации
производится в 2 такта:  первым тактом
на шину "Уст.  0"
подается
0 сигнал для установки в 0 всех триггеров, 
при  этом
на шине
"Ввод" - 0;  вторым тактом
устанавливается 1 на  шинах
"Уст.
0" и "Ввод" и значения разрядов X1,X2,..,X(i),.. записы-
ваются
по входу S триггеров. Ввод - в прямом коде. Вывод - как
в
прямом так и в  обратном.  Для 
вывода  в  нужном 
нам  коде
подается
1 на нужную нам шину,  причем
одновременная подача  1
на обе
шины запрещена.
     Парафазный регистр на RS-триггерах:
Ввод
кодаДДДВДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
            і ЪДДДї     ЪДДДВДДДДДДї      ЪДДДї
            ГДґ&  і     і   і TT  
ЪДДДДґ&  і    _
            і і   OДДДДДO S і      ГДЩ    і  
OДДД X(i)
     X(i) ДДЕДґ   і     і   і     
    ЪДґ   і
            і ГДДДґ     ГДДДґ      і    і ГДДДґ
            АДґ&  і     і   і     
ЪДДЕДґ&  і
     _       
   OДДДДДO R і      OДЩ 
   OДДД X(i)
     X(i) ДДДДґ   і     і   і     
    ГДґ   і
              АДДДЩ    
АДДДБДДДДДДЩ    і АДДДЩ
Вывод
кодаДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДДДДД
     Также как и в предыдущем случае (и как
будет во всех  по-
следующих)
это схема всего одного  разряда,  соединяя 
которые
вместе
можно получить регистр любой разрядности.
     Отличие данного регистра  от 
предыдущего  заключается  в
том,  что ввод информации осуществляется путем
подачи  "1"  на
шину
"Ввод" без предварительной установки в 0, т.е. за 1 такт.
Это
объясняется парафазным представлением вводимого кода.  Вы-
вод
также парафазный,  для чего необходимо
подать  1  на  шину
"Вывод".
     Однофазный регистр на D-триггерах:
              ЪДДДВДДДДДДДДї
           ДДДO S і TT     і
              і   і        ГДДД
      X(i) ДДДі D і        і
              і   і        і      ЪДДДї
        ЪДДДД>і C і        і   
ЪДґ&  і
        і    
   і        OДДДДЩ і   OДДД X(i)
        і 
ДДДO R і        і    ЪДґ  

        і    
АДДДБДДДДДДДДЩ    і АДДДЩ
ВводДДДДБДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДД
Вывод
прямого кодаДДДДДДДДДДДДДДБДДДДДДДДДДДДДД
     Значения подаются на входы D
соответствующих триггеров, а
сигнал
"Ввод" подается подается на входы C, 
причем  предвари-
тельная
установка в "0" не требуется.
     Парафазный регистр на JK-триггерах:
              ЪДДДВДДДДДДДДДї
           ДДДO S і TT      і
              ГДДДґ         і      ЪДДДї
X(i)
ДДДДДДДДДґ J і        
ГДДДДДДґ&  і    _
              і   і         і      і  
OДДД X(i)
        ЪДДДД>і C і         і    ЪДґ   і
_       і    
   і         і    і АДДДЩ
X(i)
ДДДЕДДДДДґ K і         OДД  і
        і    
ГДДДґ         і    і
        і 
ДДДO R і         і    і
        і    
АДДДБДДДДДДДДДЩ    і
ВводДДДДБДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДД
Вывод
обратного кодаДДДДДДДДДДДДДБДДДДДДДДДДДДДД
     Вводимая информация должна быть
представлена в парафазном
коде,  а выводимая информация может быть в
прямом,  обратном и
парафазном
виде.  Данный регистр,  как и предыдущий,  является
однотактным.
                Последовательные регистры
                    (регистры сдвига)
     В отличие от параллельных регистров,  которые не 
связаны
друг с
другом, параллельные регистры обязательно связаны между
собой.  По этим связям при сдвиге  информации 
каждый  триггер
передает
свое состояние соседнему в направлении сдвига тригге-
ру и
изменяет свое состояние,  принимая
состояние  предыдущего
триггера.
Информация может передаваться между триггерами как в
однофазном
так и в парафазном виде, а сдвиг может производить-
ся
вправо либо влево для простых регистров сдвига или в  любом
направлении
для реверсивных регистров сдвига.
     Как же построить регистр данного вида?
Для этого  необхо-
димо
определить взаимодействие между триггерами:
     Для D-триггера:
     RG>:  
D(i)=Q(i-1)
            ЪДДДВДДДДДДї           ЪДДДВДДДДДДї
        ДДДДO S іTT    і Q(i)  ДДДДO S іTT    і Q(i+1)
            ГДДДґ      ГДДДї       ГДДДґ      ГДДД
        ДДДДґ D і      і   АДДДДДДДґ D і      і
         ЪД>і C і      і        ЪД>і C
      і
         і 
ГДДДґ      OДДД     і 
ГДДДґ      OДДД
         і ЪO R і      і        і ЪO R і      і
         і іАДДДБДДДДДДЩ        і іАДДДБДДДДДДЩ
Уст."0"ДДЕДБДДДДДДДДДДДДДДДДДДДДЕДБДДДДДДДДДДДДДДД
СдвигДДДДБДДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДД
     Для сдвига влево используется формула:
D(i)=Q(i+1). Стро-
ится
такой регистр аналогично.
     Вот формулы и схема  для 
для  аналогичного  регистра 
на
JK-триггерах:
                              _
     RG>: 
 J(i)=Q(i-1), K(i)=Q(i-1)
            ЪДДДВДДДДДї Q(i)          ЪДДДВДДДДДї
   X(i) ДДДДґ J іTT   ГДДДДДДДДДДДДДДДґ J іTT  
ГДДДД Q(i+1)
            і   і     і               і   і     і
          Ъ>і C і     і _           Ъ>і C
     і
   _     
   і     і Q(i)        і і   і    
     _
   X(i) ДДЕДґ K і     OДДДДДДДДДДДДДЕДґ K і    
OДДДД Q(i+1)
          і АДДДБДДДДДЩ             і АДДДБДДДДДЩ
СдвигДДДДДБДДДДДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДДДДДДД
     Наиболее экономичной для построения
регистров сдвига  яв-
ляется
схема на D-триггерах,  которая требует в
2 раза  меньше
корпусов
микросхем по сравнению со схемой на JK-триггерах и  в
2 раза
меньше связей между триггерами за счет однофазной пере-
дачи
информации.
     Реверсивный  сдвиговый  регистр  имеет 
схемы  управления
межтриггерными
связями для  чего  обычно 
используют  элементы
И-ИЛИ-НЕ.
С помощью этих элементов в соответствии с сигналами,
управляющими
направлением сдвига  обеспечиваются  связи 
между
триггерами
для выполнения сдвига в заданном направлении.
     В нашем узле мы не будем конструировать
сами ни  сумматор
ни
регистры,  поскольку все нужные нам
элементы уже содержатся
в серии
микросхем К155.
     Теперь перейдем к конкретному
рассмотрению  схемы  нашего
узла.
     Входные данные подаются на регистр RG1 в
параллельном ви-
де.  Для этого на входы D1-D8 подаем входные
данные а  на  ос-
тальные:  V1=V2=R=1, 
D(+)=D(-)=0.  Тогда по приходу
синхроим-
пульса
C1 данные со входов D1-D8 будут занесены в регистр. Об-
щая
схема работы (с точки  зрения  синхроимпульсов)  приведена
ниже:
     і
  C1 і ЪДї
     ГДЩ АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
     ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
     і  
ЪДї
  C2 ГДДДЩ АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
     ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
     і    
ЪДї ЪДї ЪДї ЪДї ЪДї ЪДї ЪДї
  C3 ГДДДДДЩ АДЩ АДЩ АДЩ АДЩ АДЩ АДЩ АДДДДД
     АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
     Затем, как видно из вышеприведенной
схемы, данные с выхо-
дов 2-8
регистра RG1 поступают на входы 
D1-D7  регистра  RG2,
причем
на вход D8 подается 0.  Абсолютно
аналогично,  то  есть
подав
V1=V2=R=1,  D(+)=D(-)=0 мы заносим
данные (это  мантисса
числа,  которую нам надо нормализовать) по  приходу 
синхроим-
пульса
C2 в регистр RG2.  По приходу этого же
синхроимпульса в
регистр
RG4 заносится 7d=111b - это  сразу  смещенный 
порядок
числа.
Затем, начинается подача импульсов C3. 
Что же происхо-
дит при
этом? Здесь  начинает  работать 
логика  на  элементах
И-НЕ.  То есть, 
проверяется содержится ли в 
старшем  разряде
мантиссы
0 (выход 1 регистра RG2).  Если да,  то сихнроимпульс
приходит
на регистры RG2 и RG4. Это приводит к тому, 
что ман-
тисса,
содержащаяся в регистре RG2 сдвигается на 1 разряд вле-
во, а
информация из регистра RG4 поступает на сумматор, где из
порядка
вычитается 1 и обратно заносится в регистр RG4.  Таким
образом
мы разряд за разрядом нормализуем 
мантиссу.  Когда  в
старшем
разряде мантиссы окажется 1,  то
сработает  логика  на
элементах
И-НЕ и синхроимпульс C3 пойдет на регистр RG3, в ко-
торый
попадут выходные данные:  старший разряд
с регистра  RG1
(знак),
четыре разряда с регистра RG2 (мантисса) и три разряда
с
регистра RG4 (порядок).  Для обеспечения
работы регистра RG2
в
параллельном и последовательном режиме на входе узла имеется
управляющий
вход V2.  В начале работы,  для обеспечения парал-
лельного
занесения из регистра RG1 в RG2  на  вход 
V2  должна
подаваться
1, а затем, для сдвига влево,  должен
подаваться 0.
В
регистре RG4,  для обеспечения  параллельного  занесения  на
входы
D0,  V и C1 подается 1.  Занесение 0111b (07d) в регистр
RG4
происходит при появлении 
синхроимпульса  C2,  который 
не
только
обеспечивает занесение 7d в регистр порядка но и  обес-
печивает
занесение в регистр RG2 мантиссы, а синхроимпульсы C3
отвечают
за нормализацию мантиссы и за занесение выходных дан-
ных в
регистр RG3 (это так сказать "выходной" регистр, с кото-
рого
снимаются результаты преобразования).
     Временная диаграмма для конкретного
примера приводится  в
приложении,  однако в несколько сокращенном виде
поскольку по-
лную
временную диаграмму привести практически очень тяжело по-
скольку
она будет занимать очень большой размер, 
да и это не-
нужно
потому что некоторые внутренние входы/выходы практически
никакой
смысловой нагрузки не несут.
     Более подробное описание логики (уже на
основе конкретной
схемы,  приведенной в приложении и на основе
позиционных обоз-
начений
микросхем) следует далее:
     Как было описано выше,  после появления синхроимпульса на
входе
XP6 (C1) входные данные с шины XP5 заносятся 
в  регистр
D1.
После чего появляется сигнал XP8 (C2) который заносит зна-
чения
2-8 регистра D1 (мантисса) в регистр D2. 
Надо  помнить,
что при
этом управляющий вход XP7 (управление 
регистром,  V2)
подана
1.  Кроме того,  сигнал XP8, 
проходит через логику  на
элементах
D6.1-D6.3,  D7.1-D7.3,  которые появляются на входах
d1-d3
регистра D4.  После пропадания
сигнала  XP8  по  заднему
фронту
в регистр D4  заносится  значение 
0111b  (07d).  Затем
синхроимпульсы
появляются на входе XP9 (C3).  На  логике 
D8.3
старший
разряд регистра D2 инвертируется и поступает совместно
с XP9
на элементы D6.4 и D7.4. Если в старшем разряде регистра
D2
содержится 0, то данная логика сработает и на входах C1 ре-
гистра
D4 и C регистра D2 возникнет 
синхроимпульс.  На  входе
XP7
(управление регистром) у нас уже 0.  Это
приводит к  тому,
что
значение в регистре D2 сдвинется влево на один разряд. Вы-
ходные
данные с регистра D4 уже прошли 
через  сумматор  D5  и
(всвязи
с тем,  что каждый четный выход у этого
сумматора  ин-
версный)
логику на элементах D8.1,  D8.2
поступили на вход ре-
гистра
D4.  В сумматоре данные складываются со
значением 1111b
(-1d),
то есть фактически вычитается 1. 
Итак,  эти данные уже
поступили
на вход регистра D4 и после 
прихода  синхроимпульса
на C2
эти данные в параллельном виде заносятся в регистр D4.
     В эти же моменты времени у нас работает
логика на элемен-
тах
D8.4, D9.1,  которая проверяет,  а не появилась ли у нас в
старшем
разряде регистра D2 единица?
     Пока в старшем разряде D2 будет
появляться 0 - будет идти
сдвиг
мантиссы и вычитание из порядка 1. Но как только в стар-
шем
разряде регистра D2 появится 0,  то  сработает 
логика  на
элементах
D6.4 и D7.4 которая прекратит подачу синхроимпульсов
и
преобразования над мантиссой и порядком. 
С другой  стороны,
сработает
логика на регистрах D8.4 и D9.1 и синхроимпульс  XP9
(C3)
появится на входе регистра D3,  что
приведет к  занесению
результатов
преобразования в регистр D3 (старший разряд из ре-
гистра
D1 - знак, 4 разряда из регистра D2 - мантисса и 3 раз-
ряда из
регистра D4 - порядок).
     Все преобразования закончились и узел
готов к  следующему
преобразованию.
     Возможен также альтернативный вариант
схемы: вместо связ-
ки
регистр-сумматор можно использовать 
синхронный  вычитающий
счетчик
с  возможностью  параллельного  занесения  информации.
Тогда
порядок подавался бы в на этот счетчик, а при преобразо-
вании
(сдвиге) мантиссы из порядка вычиталась 
бы  1.  Данный,
альтернативный
вариант хотя и на порядок проще, однако и рабо-
тает он
медленнее, так как вычитающий счетчик работает медлен-
нее чем
пара регистр-сумматор.
                    АНАЛИЗ БЫСТРОДЕЙСТВИЯ
     Временная диаграмма для конкретного
числа  (1 0010 101)
приведена
в приложении, а мы займемся быстродействием.
     1. Занесение данных в регистр D1 - 30 нс.
     2. Занесение данных в регистры D2, D4:
     а. D2: 30 нс.
     б. D4: логика И-НЕ - 15+22 нс=37 нс и
занесение в регистр
        35 нс.
     3. Работа логики D8.3: 22 нс;
D8.4+D9.1=37 нс (просиходит
        параллельно с пунктом 4a).
     4. Обработка порядка и мантиссы:
     а. Сдвиг в регистре D2: 30 нс.
     б. Порядок: сумматор, логика И-НЕ,
параллельное занесение
        в регистр: 55+22+35=112
     5. Занесение информации в регистр D3: 30
нс.
     То есть при худшем раскладе - 6
преобразований  над  ман-
тиссой
и порядком, суммарное быстродействие узла:
     30+72+112*6+30=804 нс.
     То есть максимальная частота
преобразования=1,24 МГц.
                        ЗАКЛЮЧЕНИЕ
     В данном курсовом проекте был  разработан 
узел,  который
выполняет
функцию перевода чисел  из  формата 
с  фиксировнной
точкой
в формат с плавающей точкой.
     Построенный узел выполняет поставленную
функцию и хотя  и
не
является оптимальным,  но работает при
данных условиях (как
максимальная  частота 
преобразования,  так  и 
реализация  на
микросхемах
серии К155 и т.д.).  Если критичны
затраты по эле-
ментам,
то более предпочтителен альтернативный вариант, а если
по
времени - то основной.
                        ЛИТЕРАТУРА
     1. Каган Б.М., Электронные вычислительные
машины и систе-
мы, М.
1991 год.
     2. 
Рахимов Т.М.,  Справочник по
микросхемам серии  К155,
Новосибирск
1991 год.
     3. Иванов Л.Н., Пентегов В.В.,
Архитектура вычислительных
систем
и сетей. Методические указания к курсовому проектирова-
нию,
Новосибирск 1986 год.
                 ВРЕМЕНННАЯ ДИАГРАММА РАБОТЫ
УЗЛА
                        ДЛЯ ЧИСЛА 1 0010 101
       і
  A1  
ЪДДДДДДДДДДДДДДДДДДД       A1-A8
- входные данные
       ГБДДДДДДДДДДДДДДДДДДДДД
       і
  A2  

       ГННННННННННННННННННННДД
       і
  A3  

       ГННННННННННННННННННННДД
       і
  A4  
ЪДДДДДДДДДДДДДДДДДДД
       ГБДДДДДДДДДДДДДДДДДДДДД
       і
  A5  

       ГННННННННННННННННННННДД
       і
  A6  
ЪДДДДДДДДДДДДДДДДДДД
       ГБДДДДДДДДДДДДДДДДДДДДД
       і
  A7  

       ГННННННННННННННННННННДД
       і
  A8  
ЪДДДДДДДДДДДДДДДДДДД
       ГБДДДДДДДДДДДДДДДДДДДДД
       і
  C1  
ЪДї                       
С1-синхроимпульс
       ГНБДБННННННННННННННННДД
       і
  Q1(1)і  
ЪДДДДДДДДДДДДДДДД        Q1(1-8)
- выходы регистра D1
       ГНННБДДДДДДДДДДДДДДДДДД
       і
  Q1(2)і
       ГННННННННННННННННННННДД
       і
  Q1(3)і
       ГННННННННННННННННННННДД
       і
  Q1(4)і  
ЪДДДДДДДДДДДДДДДД
       ГДДДБДДДДДДДДДДДДДДДДДД
       і
  Q1(5)і
       ГДДДНННННННННННННННННДД
       і
  Q1(6)і  
ЪДДДДДДДДДДДДДДДД
       ГДДДБДДДДДДДДДДДДДДДДДД
       і
  Q1(7)і
       ГДДДНННННННННННННННННДД
       і
  Q1(8)і  
ЪДДДДДДДДДДДДДДДД
       ГДДДБДДДДДДДДДДДДДДДДДД
       і
  C2  
    ЪДї
       ГДДДНБДБНННННННННННННДД
       і
  C3  
       ЪДї ЪДї ЪДї          C2,C3 - синхроимпульсы
       ГДДДННННБДБНБДБНБДБННДД
       і
  Q2(1)і             ЪДДДДДД       
Q2(1-7) - выходы регистра D2
       ГДДДННННННННННБДДДДДДДД
       і
  Q2(2)і         ЪДДДї
      
ГДДДННННННБДДДБННННННДД
       і
  Q2(3)і     
ЪДДї   ЪДДДДДД
       ГДДДНННБДДБНННБДДДДДДДД
       і
  Q2(4)і         ЪДДДї
       ГДДДННННННБДДДБННННННДД
       і
  Q2(5)і     
ЪДДї   ЪДДДДДД
       ГДДДНННБДДБНННБДДДДДДДД
       і
  Q2(6)і         ЪДДДї
       ГДДДННННННБДДДБННННННДД
       і
  Q2(7)і     
ЪДДї
       ГДДДНННБДДБННННННННННДД
       і
  Q4(1)і     
ЪДДї   ЪДДДДДД        Q4(1-3) - выходы регистра D4
       ГДДДНННБДДБНННБДДДДДДДД
       і
  Q4(2)і     
ЪДДДДДДї
      
ГДДДНННБДДДДДДБННННННДД
       і
  Q4(3)і     
ЪДДДДДДДДДДДДД
       ГДДДНННБДДДДДДДДДДДДДДД
       і
  Q3(1)і                 ЪДД       
Q4(1-8) - выходы регистра D3
       ГДДДДДДДДДДДДДДДДДБДДДД
       і
  Q3(2)і                 ЪДД
       ГДДДДДДДДДДДДДДДДДБДДДД
       і
  Q3(3)і
       ГДДДДДДДДДДДДДДДДДННННД
       і
  Q3(4)і                 ЪДД
       ГДДДДДДДДДДДДДДДДДБДДДД
       і
  Q3(5)і
       ГДДДДДДДДДДДДДДДДДННННД
       і
  Q3(6)і                 ЪДД
       ГДДДДДДДДДДДДДДДДДБДДДД
       і
  Q3(7)і
       ГДДДДДДДДДДДДДДДДДННННД
       і
  Q3(8)і                 ЪДД
       АДДДДДДДДДДДДДДДДДБДДДД

      ©2010