Всё сдал! - помощь студентам онлайн Всё сдал! - помощь студентам онлайн

Реальная база готовых
студенческих работ

Узнайте стоимость индивидуальной работы!

Вы нашли то, что искали?

Вы нашли то, что искали?

Да, спасибо!

0%

Нет, пока не нашел

0%

Узнайте стоимость индивидуальной работы

это быстро и бесплатно

Получите скидку

Оформите заказ сейчас и получите скидку 100 руб.!


Разработка узла с функцией перевода чисел из формата в формат

Тип Реферат
Предмет Математика
Просмотров
1601
Размер файла
52 б
Поделиться

Ознакомительный фрагмент работы:

Разработка узла с функцией перевода чисел из формата в формат

ВВЕДЕНИЕ

Режим работы данного узла - преобразование чисел, поэтому стоит поговорить о самих числах и их представлении в ЭВМ.

В ЭВМ используются двоичные числа, которые не привычны обыкновенному человеку, привыкшему к арабским - десятичным числам. Но для ЭВМ операции и само хранение двоичных чисел более удобно. Двоичные числа - это числа, составленные из 0 и 1. Например:


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

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


Принятая минимальная единица информации в ЭВМ - 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. С фиксированной точкой:


Но таким образом большие вещественные числа хранить неудобно и неэффективно. Поэтому используется второй вариант хранения:

2. С плавающей точкой.


То есть в формате с плавающей точкой хранится 2 числа порядок и мантисса. Так как порядок может быть и отрицательным, то приняли еще одно правило: порядок всегда смещенный. То есть если порядок колеблется от +128d до -127d то к порядку всегда прибавляют 127d и тогда он колеблется в пределах от 0 до +255d и таким образом нам не приходится хранить знак числа.

В связи с такими разными форматами представления чисел в ЭВМ и был разработан данный узел, задача которого - преобразование чисел из формата с фиксированной точкой в формат с плавающей точкой.

ВЫБОР СТРУКТУРЫ УЗЛА

Так как по заданию ввод/вывод в данном узле должен происходить параллельно, то потребуется 2 регистра (один для входных данных, один для выходных), разрядность которых исходя из условия - 8 бит. Также, для промежуточных результатов потребуется 1 восьмиразрядный регистр (для хранения и работы с мантиссой) и один четырехразрядный регистр и один сумматор для обработки порядка. Дополнительно также потребуется 13 элементов И-НЕ. Это пока все без доказательства - оно будет позже. В качестве 8-ми разрядных регистров нам хорошо подходят К155ИР13, в качестве 4-х разрядного - К155ИР1. Также мы используем сумматор К155ИМ3, а для дополнительной логики 4 микросхемы К155ЛА3. Итого вся схема собрана собрана, как и требовалось на микросхемах серии К155. Альтернативный вариант схемы будет рассмотрен далее. Общая схема узла приводится в приложении.

РАСЧЕТ ПОСТРОЕНИЯ И ОПИСАНИЕПРИНЦИПИАЛЬНЫХ СХЕМ

Как же именно, с моей точки зрения, должен работать данный узел? В целом его работу можно описать так:

Обозначим:

1. Число с фиксированной точкой


2. Число с плавающей точкой


Учитывая приведенные выше обозначения, общий принцип работы данного узла можно изобразить так:


Словесно, алгоритм преобразования можно описать так:

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 разряда.

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

Формирователь суммы (вариант комбинационного сумматора) :


Этот элемент сумматора работает по несколько измененной формуле (в связи с базисом реализации И-НЕ и И-ИЛИ-НЕ):


Можно показать, что формирователь переноса строится абсолютно аналогично.

Затем перенос из i-того разряда передается на (i+1)-ый разряд, а сумма i-того разряда выводится. Соединяя такие блоки, можно получить сумматор любой разрядности.

Таким образом, в представленном сумматоре сумма формируется параллельно, а перенос последовательно. Данный сумматор не отличается высоким быстродействием, а для повышения быстродействия используют так называемый сквозной и групповой перенос.

В качестве элементов для такого сумматора можно взять микросхемы К155ЛА3 и две К155ЛР4.

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

РЕГИСТР

Регистры в данном курсовом проекте используются для хранения и преобразования (сдвига) мантиссы и порядка. В целом регистры делятся на параллельные, последовательные и комбинированные. В нашем узле используются возможности как параллельных (для хранения) так и последовательных (для сдвига) регистров.

Как же строятся регистры? Регистры строятся на основании триггеров, количество которых зависит от разрядности регистра.

Параллельные регистры.

Вот пример простейшего параллельного однофазного регистра на RS-триггерах:


Эта схема только для одного разряда, но соединив такие блоки можно получить регистр любой разрядности. Условное обозначение для 4-х разрядного регистра:


Такой регистр является 2-х тактным, поскольку ввод информации производится в 2 такта: первым тактом на шину "Уст. 0" подается 0 сигнал для установки в 0 всех триггеров, при этом на шине "Ввод" - 0; вторым тактом устанавливается 1 на шинах "Уст. 0" и "Ввод" и значения разрядов X1,X2,..,X(i),.. записываются по входу S триггеров. Ввод - в прямом коде. Вывод - как в прямом так и в обратном. Для вывода в нужном нам коде подается 1 на нужную нам шину, причем одновременная подача 1 на обе шины запрещена.

Парафазный регистр на RS-триггерах:


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

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

Однофазный регистр на D-триггерах:


Значения подаются на входы D соответствующих триггеров, а сигнал "Ввод" подается подается на входы C, причем предварительная установка в "0" не требуется.

Парафазный регистр на JK-триггерах:


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

Последовательные регистры

(регистры сдвига)

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

Как же построить регистр данного вида? Для этого необходимо определить взаимодействие между триггерами:

Для D-триггера:


Для сдвига влево используется формула: D(i)=Q(i+1). Строится такой регистр аналогично.

Вот формулы и схема для для аналогичного регистра на JK-триггерах:


Наиболее экономичной для построения регистров сдвига является схема на D-триггерах, которая требует в 2 раза меньше корпусов микросхем по сравнению со схемой на JK-триггерах и в 2 раза меньше связей между триггерами за счет однофазной передачи информации.

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

В нашем узле мы не будем конструировать сами ни сумматор ни регистры, поскольку все нужные нам элементы уже содержатся в серии микросхем К155.

Теперь перейдем к конкретному рассмотрению схемы нашего узла.

Входные данные подаются на регистр RG1 в параллельном виде. Для этого на входы D1-D8 подаем входные данные а на остальные: V1=V2=R=1, D(+)=D(-)=0. Тогда по приходу синхроимпульса C1 данные со входов D1-D8 будут занесены в регистр. Общая схема работы (с точки зрения синхроимпульсов) приведена ниже:


Затем, как видно из вышеприведенной схемы, данные с выходов 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



Нет нужной работы в каталоге?

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

Цены ниже, чем в агентствах и у конкурентов

Вы работаете с экспертами напрямую. Поэтому стоимость работ приятно вас удивит

Бесплатные доработки и консультации

Исполнитель внесет нужные правки в работу по вашему требованию без доплат. Корректировки в максимально короткие сроки

Гарантируем возврат

Если работа вас не устроит – мы вернем 100% суммы заказа

Техподдержка 7 дней в неделю

Наши менеджеры всегда на связи и оперативно решат любую проблему

Строгий отбор экспертов

К работе допускаются только проверенные специалисты с высшим образованием. Проверяем диплом на оценки «хорошо» и «отлично»

1 000 +
Новых работ ежедневно
computer

Требуются доработки?
Они включены в стоимость работы

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

avatar
Математика
История
Экономика
icon
159599
рейтинг
icon
3275
работ сдано
icon
1404
отзывов
avatar
Математика
Физика
История
icon
156450
рейтинг
icon
6068
работ сдано
icon
2737
отзывов
avatar
Химия
Экономика
Биология
icon
105734
рейтинг
icon
2110
работ сдано
icon
1318
отзывов
avatar
Высшая математика
Информатика
Геодезия
icon
62710
рейтинг
icon
1046
работ сдано
icon
598
отзывов
Отзывы студентов о нашей работе
63 457 оценок star star star star star
среднее 4.9 из 5
Филиал государственного бюджетного образовательного учреждения высшего образования Московской област
Спасибо Елизавете за оперативность. Так как это было важно для нас! Замечаний особых не бы...
star star star star star
РУТ
Огромное спасибо за уважительное отношение к заказчикам, быстроту и качество работы
star star star star star
ТГПУ
спасибо за помощь, работа сделана в срок и без замечаний, в полном объеме!
star star star star star

Последние размещённые задания

Ежедневно эксперты готовы работать над 1000 заданиями. Контролируйте процесс написания работы в режиме онлайн

решить 6 практических

Решение задач, Спортивные сооружения

Срок сдачи к 17 дек.

только что

Задание в microsoft project

Лабораторная, Программирование

Срок сдачи к 14 дек.

только что

Решить две задачи №13 и №23

Решение задач, Теоретические основы электротехники

Срок сдачи к 15 дек.

только что

Решить 4задачи

Решение задач, Прикладная механика

Срок сдачи к 31 дек.

только что

Выполнить 2 задачи

Контрольная, Конституционное право

Срок сдачи к 12 дек.

2 минуты назад

6 заданий

Контрольная, Ветеринарная вирусология и иммунология

Срок сдачи к 6 дек.

4 минуты назад

Требуется разобрать ст. 135 Налогового кодекса по составу напогового...

Решение задач, Налоговое право

Срок сдачи к 5 дек.

4 минуты назад

ТЭД, теории кислот и оснований

Решение задач, Химия

Срок сдачи к 5 дек.

5 минут назад

Решить задание в эксель

Решение задач, Эконометрика

Срок сдачи к 6 дек.

5 минут назад

Нужно проходить тесты на сайте

Тест дистанционно, Детская психология

Срок сдачи к 31 янв.

6 минут назад

Решить 7 лабораторных

Решение задач, визуализация данных в экономике

Срок сдачи к 6 дек.

7 минут назад

Вариационные ряды

Другое, Статистика

Срок сдачи к 9 дек.

8 минут назад

Школьный кабинет химии и его роль в химико-образовательном процессе

Курсовая, Методика преподавания химии

Срок сдачи к 26 дек.

8 минут назад

Вариант 9

Решение задач, Теоретическая механика

Срок сдачи к 7 дек.

8 минут назад

9 задач по тех меху ,к 16:20

Решение задач, Техническая механика

Срок сдачи к 5 дек.

9 минут назад
9 минут назад
10 минут назад
planes planes
Закажи индивидуальную работу за 1 минуту!

Размещенные на сайт контрольные, курсовые и иные категории работ (далее — Работы) и их содержимое предназначены исключительно для ознакомления, без целей коммерческого использования. Все права в отношении Работ и их содержимого принадлежат их законным правообладателям. Любое их использование возможно лишь с согласия законных правообладателей. Администрация сайта не несет ответственности за возможный вред и/или убытки, возникшие в связи с использованием Работ и их содержимого.

«Всё сдал!» — безопасный онлайн-сервис с проверенными экспертами

Используя «Свежую базу РГСР», вы принимаете пользовательское соглашение
и политику обработки персональных данных
Сайт работает по московскому времени:

Вход
Регистрация или
Не нашли, что искали?

Заполните форму и узнайте цену на индивидуальную работу!

Файлы (при наличии)

    это быстро и бесплатно