• RU
  • icon На проверке: 16
Меню

Препроцессор

  • Добавлен: 24.01.2023
  • Размер: 771 KB
  • Закачек: 0
Узнать, как скачать этот материал

Описание

Препроцессор

Состав проекта

icon
icon
icon Процессор.doc
icon 3.dwg
icon 2.dwg
icon 4.dwg
icon 1.dwg

Дополнительная информация

Контент чертежей

icon Процессор.doc

Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«Тульский государственный университет»
Кафедра электронных вычислительных машин
Исходными данными для курсового проектирования препроцессора являются:
Одна – две функции обработки выполняемые препроцессором - задаются преподавателем из приведенного набора или аналогичные им.
Требуемые параметры вычисления функций:
размер обрабатываемого входного массива данных N = 8;
частота поступления входных отсчетов данных fD = 275 МГц;
допустимое время задержки выходного потока данных относительно входного (ТЗД) = 08мкс;
форма представления чиселПЗП.
Требуемые частные характеристики препроцессора:
формат входныхвыходных данных10
внутренний формат данных16
потребляемая мощность Рсс150Вт
вероятность безотказной работы Р(10000)095
Требуемые общие характеристики препроцессора:
связь препроцессора с другими устройствами вычислительной системы через системную магистраль Mult
представление входныхвыходных данных - ФЗП в формате целых чисел;
Форматы слов данных (внутренних и внешних) имеют вид.
Форматы слов данных: а – для ФЗП; б – для ПЗП; S – знак числа или мантиссы (числа внутреннего формата имеют два знаковых разряда); Р – порядок; М - мантисса
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
Анализ исходных данных и разработка алгоритма4
Разработка структурной схемы8
Разработка функциональной схемы9
Разработка принципиальной схемы13
Моделирование средствами САПР16
Оценка электрических и временных параметров18
Сложность современных микропроцессорных систем такова что методы проектирования требуют особой методики их проектирования.
При проектировании сложных технических систем (в том числе БИС и других изделий микроэлектроники) используется блочно-иерархический подход. При блочно-иерархическом подходе процесс проектирования разделяется на уровни (этапы). На высшем уровне используется наименее детализированное представление отражающее только самые общие черты проектируемой системы. На каждом низшем последовательном уровне проектирования степень подробности рассмотрения возрастает при этом система рассматривается не в целом а отдельными блоками как правило функционально законченными. Такой подход позволяет на каждом этапе формулировать и решать задачи приемлемой сложности поддающиеся пониманию одним человеком.
Основное достоинство блочно-иерархического подхода состоит в том что сложная задача большой размерности разбивается на последовательно решаемые задачи меньшей размерности. При блочно-иерархическом подходе на каждом уровне абстракции имеются свои представления о системе и элементах. То что на одном уровне называлось элементом становится системой на следующем уровне. При проектировании сложных систем используются так называемые нисходящее или восходящее проектирование или их комбинации. Суть нисходящего – от общих требований к системе к технологическому процессу изготовления а при восходящем – наоборот.
Анализ исходных данных и разработка алгоритма
Общая формула для вычислений функции
Исходя из формулы для накопления суммы потоковых переменных xi требуется сумматор который бы накапливал сумму и устройство умножения суммы на число Dx.
Ограничение по потребляемой мощности и требования высокой надежности заставляют использовать следующий критерий качества проекта:
Требования по условиям эксплуатации заставляют использовать микросхемы предназначенные для реализации устройств специального назначения использовать конструкции повышенной жесткости. Остальные требования позволяю конкретизировать алгоритм вычисления заданной функции (с учетом разрядности внутренних слов данных используемых методов вычисления и тому подобное).
При реализации алгоритма вычисления заданной функции необходимости использовать простые арифметические и логические функции которые могут быть реализованы на серийных интегральных микросхемах.
Для нахождения суммы входных переменных достаточно сохранять входные переменные в массиве памяти и производить ее перерасчет суммы но это способ требует N-1 сложений и существенно скажется на быстродействии разрабатываемого устройства.
С учетом того что необходимо вычислять функцию непрерывного потока входных переменных xi то целесообразно сумму N – элементов находить по следующей формуле
xi-N – последняя переменная массива.
Массив входных переменных следует сохранять в памяти типа FIFO.
На рисунке 1 представлен алгоритм вычисления заданной функции для реализации.
Рисунок 1 Алгоритм вычисления заданной функции
Алгоритм вычисления заданных функций имеет следующие особенности:
Для корректного вычисления сумм RG4 и RG5 требуется хранение последней выборки при этом чтение последней переменной и запись входной переменной P(xi) могут быть выполняться параллельно.
Для вычислений требуется шесть промежуточных переменных которые могут быть реализованы на регистрах.
Для реализации алгоритма необходимо выполнение операций сложения чисел с плавающей точкой с 15 разрядной мантиссой а также умножение на переменную.
С учетом выше изложенного можно утверждать что алгоритм (рисунок 1) не отражает оптимального решения так как некоторые операции алгоритма можно параллельно совместить с другими несвязанными операциями.
Например последнюю N – выборку данных целесообразно хранить в оперативном запоминающем устройстве которая записывается по циклу то есть после записи в N – ячейку памяти следующая запись производится в ячейку N=0. Поэтому запись входной переменной P(xi) в регистр RG1 целесообразно совместить с выборкой N – элемента памяти который необходимо вычесть из суммы.
На рисунке 2 представлен алгоритм вычисления заданной функции с учетом параллельного вычисления.
Рисунок 2 Алгоритм вычисления функции
В момент Т1 производится запись входной переменой P(xi) и переменной P(xN) из оперативного запоминающего устройства.
В момент T2 регистр RG4 увеличивается на значение из регистра RG4 а регистр RG5 вычисляется произведение P(xN) на три.
В момент T3 регистр RG4 уменьшается на значение из регистра RG3 а регистр RG6 уменьшается на полученное произведение сохраненное в регистре RG6.
В момент T4 регистр RG6 увеличивается на значение из регистра RG4.
В момент Т5 выполняется умножение суммы регистра RG6 на регистр RG2.
Таким образом суммарное быстродействие разрабатываемого устройства
T = T1 + T2 + T3 + T4 + T5. (4)
Но из алгоритма представленного на рисунке 2 видно что если выполнить раздельное управление чтения и записи в регистры RG1 –RG6 то разрабатываемое устройство может параллельно обрабатывать на стадиях T1 – T3 новую выходную величину и на стадии T3 обрабатывать предыдущую входную переменную xi.
Таким образом время обработки входной переменной остается прежним – время T но время чередования входных переменных xiменьше времени обработки переменной
DT = T4 +T5 – (T1 + T2 + T3) T. (5)
Таким образом разработанный алгоритм показал что устройство можно реализовать как двухконвейерное устройство позволяющее обрабатывать одновременно две входных переменные но на разных стадиях алгоритма вычисления. При этом время вычисления выходной переменной не изменяет но увеличивается общая скорость обработки потока входных переменных.
Разработка структурной схемы
На основании алгоритма вычисления заданной функции разработаем структурную электрическую схему которая содержит основные блоки разрабатываемого устройства и связи между ними.
Регистр RG1 предназначен для временного хранения двоичного кода входной переменной P(xi) а регистр RG2 – значение Dx.
В любой цикл вычисления запускается загрузкой входной переменной P(xi) в регистр RG1. В свою очередь загрузка регистра RG2 не производит каких либо запусков расчета выходной переменной.
Параллельно загрузке входной переменной в устройство из оперативной памяти в регистр RG3 сохраняется последний элемент массива который используется в вычислениях двух сумм: суммы элементов массива P(xi) и суммы функции Si. После сохранения числа в регистре RG1 оперативное запоминающее устройство доступно для сохранения новой входной переменной (регистр RG1). После окончания цикла записи в ОЗУ двоичный счетчик адреса увеличивает (уменьшает) код адреса на единицу то есть к следующему циклу вычисления счетчик адреса будет генерировать адрес ячейки следующего последнего числа в массиве.
Сохранение значения из ОЗУ в регистре RG3 требуется чтобы последующая запись данных в память производилась параллельно с последующими арифметическими операциями.
В регистре RG4 сохраняется сумма массива P(xi) которая каждый цикл вычисления увеличивается на число входной переменной и уменьшается на число из регистра RG3. В регистре RG5 сохраняется сумма функции Si которая каждый цикл вычисления увеличивается на сумму P(xi) и уменьшается произведения содержимого значения регистра RG3 на 7.
Блок умножения вычисляет произведение регистра RG5 на регистр RG2 где выходной результат сохраняется в регистре выходной переменной RG6.
На чертеже АБВГ.000000.001Э1 представлена структурная электрическая схема разрабатываемого устройства.
Разработка функциональной схемы
На основе разработанной структурной электрической схемы устройства разработаем функциональную электрическую схему. При разработке некоторые узлы функциональной схемы рассмотрим в различных вариантах исполнения с целью выборки более оптимального варианта у которого максимально отвечает двум критериям: 1) уменьшение объема оборудования; 2) увеличение быстродействия.
На рисунке 3 представлена функциональная схема входного узла где информационные выходы Q[9:0] регистра RG1 и входы D[9:0] регистра RG3 подключаются к портам А и В оперативного запоминающего устройства.
Наличие раздельной входной и выходной шины данных оперативного запоминающего устройства облегчают подключение регистров RG1 и RG3: выходы регистра RG1 подключены к входной шине ОЗУ а входы регистра RG3 подключены к выходной шине ОЗУ.
Рисунок 3 Функциональная схема регистров RG1 RG3 и ОЗУ
Выходы выборки микросхемы ОЗУ должны быть всегда активными тогда время считывания будет зависеть только от времени задержки сигнала tWR или tRD а не от сигнала выборки микросхемы и адреса tCS.
Вычислений сумм производятся на 16 – разрядных двоичных сумматорах. Так как сумма произведений Si не может быть выполнена раньше чем сумма входных переменных поэтому с целью экономии энергопотребления целесообразно использовать ни несколько сумматоров а один сумматор.
Для снижения времени вычисления суммы сумматор не должен иметь промежуточные регистры а вычисление суммы производить на базе комбинационной схеме. Результат вычислений сумм сохраняются в выходных регистрах. Поэтому сумматор выполняется как двоичный сумматор четырех входных переменных с последовательным вычислением двух сумм: первая определяется сумма входных переменных и сохраняется в регистре а вторая – сумма произведений S.
В таком случае полученный результат входы сумматора можно оптимизировать под вычисления сразу двух сумм.
Вход DA сумматора используется для ввода суммы так как он применяется в вычислениях обеих сумм. Вход DB через мультиплексор поступает входные переменные (при вычислении сумм Pi) и сумма Si. Вход DC поступает переменная Px-N. Вход DD сумматора поступает сдвинутая на единицу переменная DC.
Рисунок 4 Функциональная схема сумматора
Сумма охраняется в регистре а сумма S поступает в блок умножения. Блок умножения с целью увеличения скорости выполнения целесообразно выполнить на базе параллельной матрицы умножителей.
Разработка принципиальной схемы
Входной регистр RG1 (микросхемы DD1–DD3) и регистр RG3 (микросхемы DD10–DD12) выполнен на базе регистра КP1531ТМ9 представляющий собой шесть D- триггеров со статическим входом разрешения. Запись в триггеры производиться по фронту тактового сигнала на входе CLK.
Массив N – элементов сохраняется в оперативном запоминающем устройстве и выполнен на базе микросхем К155РУ2 (микросхемы DD5 – DD9). Микросхема К155РУ2 представляет собой статическое оперативное запоминающее устройство 164. Для увеличения разрядности памяти его адресные шины объедены в общую шину а информационные входа DI и выхода DO образуют 12 – разрядные однонаправленные шины данных. К информационной шине данных DI памяти подключены выходы триггеров RG1 для записи нового двоичного кода входной переменной а к информационной шине данных DO - информационные входы триггеров RG3.
Для формирования адреса используется 4-разрядный двоичный счетчик который подключен к адресной шине микросхемам памяти. При каждом поступлении тактового импульса CLK счетчик увеличивает двоичный код счетчика на единицу.
Сумматор выполняет одновременно сложение четырех 16 – разрядный чисел и построен на базе микросхемы К1802ИМ1. Микросхема К1802ИМ1 представляют собой схему четырехвходового 4-разрядного сумматора и предназначены для выполнения арифметического сложения или вычитания до четырех чисел (A B C D) представленных дополнительным кодом. В результате операции ±А ±B ±C ±D вырабатывается 4-разрядный результат в дополнительном коде и формируются признаки переполнения нуля результата и знака. Отдельными управляющими входами предусмотрено исключение любого операнда из операции суммирования или вычитания. В состав входят управляемый блок инверсии 4-разрядных регистра данных (A B C D) буферные схемы сигналов STB и суммирующая матрица SM 5-разрядный регистр суммы и признака перевыполнения; выходная буферная схема с тремя состояниями; схема выделения признака нуля результата.
При вычислении обоих сумм входы сумматора DA0 DA1 используются для ввода сумма произведений переменных P(xi) и I так как она участвует в вычислениях обоих сумм поэтому на входы всегда поступает текущее число P(xi).
При вычислении суммы входных переменных входы сумматора DB0 DB1 используются для ввода входной переменной P(xi) а при вычислении суммы произведений – текущая сумма произведений поэтому через порт А мультиплексора (микросхемы DD) в блок суммирования вводится число текущей входной переменной а через порт В – текущая сумма произведений.
Результат суммирования сохраняется в регистрах RG3.1 и RG3.2 (микросхемы DD14 и DD15) которые выполнены на базе буферного регистра КP1531ИР22. Запись в регистры производится лишь в том случае когда блок деления закончит операцию. Поэтому регистры выполняют двоякую функцию: с одной стороны они выдают двоичный код для сумматоров D10 – D13 (для вычисления нового значения) и другой для вычисления деления.
Все входные данные перед суммированием выравниваются к общему наибольшему порядку. Для выравнивания входных данных используется микросхема арифметического расширителя – К1802ВР1.
Микросхема представляет собой арифметический расширитель (16-разрядный вспомогательный блок микропроцессора) и предназначен для реализации устройств осуществляющих сдвиги арифметические логические расширенные влево и вправо циклические за один цикл на произвольное число разрядов и поиск номера левого единичного бита. Имеют однотактовую схему синхронизация. В состав микросхемы входит регистр информации узел поиска левой 1 (Y2); узел сдвига мультиплексор регистра расширения регистр расширения узел выдачи результата схема признака нуля буферная схема параметра сдвига схема выдачи признака регистр параметра сдвига схема анализа переполнения Y17.
В схеме используется один общий сумматор для последовательного вычисления двух сумм: суммы входных переменных P(xi) и суммы произведений P(xi) и i.
Микросхема КР1802ВР2 представляет собой параллельный умножитель 1616 разрядов (комбинационное устройство для умножения 16-разрядных операндов). Каждый из операндов может быть либо кодом (числом без знака) либо числом со знаком.
В последнем случае такой операнд представляется в дополнительном коде. Числа могут быть как целыми так и меньше 1. На выходе умножителя вырабатывается произведение двойной точности (32 разряда) которые могут быть округлены доя16 разрядов включая знаковый разряд. При умножении чисел со знаком в дополнительном коде произведение получается в дополнительном коде. При действиях над числами со знаком предусмотрена возможность присвоения знака произведения младшей части произведения. Микросхема является устройством модульного типа обеспечивающим построение множителей с любой разрядностью операндов. В состав микросхемы входят регистр множимого (регистр Х) регистр множителя (регистр Y) триггер округления блок умножения сдвигатель регистры младшей и старшей частей произведения и выходные буферные каскады младшей и старшей частей произведения.
Моделирование средствами САПР
На задачу моделирования вынесена часть схемы являющаяся главной и наиболее сложной а именно делитель с фиксированной точкой поскольку именно эта часть вызывает наибольшие сложности при проектировании поскольку является нестандартной и требует особого внимания при разработке. Моделирование производится с помощью MULTISIM12. На входы схемы подаются тестовые воздействия определяющие различные комбинации операндов. Предполагается произвести следующие тесты:
Это означает что конструктивно препроцессор при заданном размере плат может быть выполнен на трех ТЭЗах. Разбиение на ТЭЗы выполняется так чтобы минимизировать число связей между ТЭЗами.
Рассмотрим схему ТЭЗа выполняющего вычисление суммы членов выборки. ТЭЗ будет содержать регистры память и сумматора с плавающей точкой. Так как плата исполнена в двустороннем варианте то возникает необходимость разбиения на стороны (0 и 1) которое выполняется чисто из конструктивных соображений. Разбиение на стороны показано в таблицах 2.
Таблица 2 Расчет печатной платы
Кроме микросхем ТЭЗ включает вилку разъема СНП-34-135 фильтрующие конденсаторы: два электролитических К53-4-6В-15 И 144 керамических К10-17-001 устанавливаемых на плате в непосредственной близости от микросхемы. Для подачи уровня логической единицы используются резисторы.
Оценка электрических и временных параметров
Анализ таблицы содержащей информацию о полном составе элементов препроцессора позволяет сделать следующие выводы:
) потребляемая мощность препроцессора
) критерий качества проекта
) общая площадь посадочных мест равна 831425 мм2. Поэтому число поверхностей размещения
потребляемая мощность Pп = 2287 Вт;
погрешность вычислений s = 2–L = 2–16 = 0.000015;
Надежность устройства оценивается по количеству микросхем и разъемов. Примем для микросхем l=0.015*10-7 для разъемов l=1*10-7. Учитывая тот факт что в препроцессоре использовано 23 микросхема и 1 разъема получаем:
Размещение микросхем производится вручную. Микросхемы устанавливаются с двух сторон платы с воздушным зазором 15 мм. Ориентация микросхем 0 градусов. На плате устанавливается вилка разъема СНП34-90. С другой стороны платы устанавливается лицевая планка.
В периферийной зоне платы рядом с лицевой планкой размещаются контрольные гнезда.
Тепловой режим обеспечивается средствами естественного воздушного охлаждения. В целях защиты элементов и печатной платы от влаги ТЭЗ покрывается лаком ПФЛ-86.
Ремонтоспособность обеспечивается наличием контрольных точек для подсоединения измерительной аппаратуры при настройке и контроле за работой препроцессора.
Определим максимальная частота препроцессора поступления входных данных
С учетом схемы определим время задержки микросхем.
Время записи входной переменной в триггеры DD1 (DD2 и DD3)
Задержка времени считывания переменной из памяти
tRAMRD= t1 + t2 + t3 = 32 + 105 + 10 = 147нс.
гдеt1 – время задержки счетчика нс;
t2 – минимальное время цикла чтения данных из ОЗУ нс;
t3 – время записи данных в регистр нс.
tRAMWR= t1 + t2 = 130 + 10 = 140нс.
гдеt1 – минимальное время цикла чтения данных из ОЗУ нс;
t2 – время записи данных в регистр нс.
Общее время задержки арифметического расширителя DD16 (DD18 и DD20)
TAE = t1 + t2 + t3 = 70 + 100 + 70 =240нс.
гдеt1 и t3 – время задержки чтения и записи нс;
t2 – время задержки сдвига нс.
Общее время задержки сумматоров DD31 – DD34
tSM = t1 + 3×tP = 35 + 3×29 = 122нс.
гдеtD – время задержки распространения по выходу суммы нс;
tP – время задержки распространении по переносу нс.
Умножение определяется задержкой микросхемами DD38 и DD40.
tMUL =t1 + t2 = 175+22= 197 нс.
гдеt1 – время задержки распространения сигнала от входов CLKX CLKY до выходов P микросхемы множителя нс;
t2 – время задержки распространении по входу данных микросхемы регистра нс.
Максимальное время задержки вычисления умножения (без учета синхронизации)
TMUL = TX.RD + TAE + tSM + tMUL = 147 + 2×(2×240 + 122) + 197 = 1548нс.
Балашов Е. П. Григорьев В. Л. Петров Г. А. Микро- и миниЭВМ. Л.: Энергоатомиздат 1984. 376 с.
Микропроцессоры: В 3-х кн. Под ред. Преснухина. М.: Высшая шко-ла 1986. Кн.1. 495 с. Кн. 2. 383 с. Кн. 3. 351 с.
Токхайм Р. Микропроцессоры: Курс и упражнения Пер. с англ. Под ред. Грасевича. М.: Энергоатомиздат 1987. 338 с.
Майоров С. А. Кириллов В. В. Приблуда А. А. Введение в микроЭВМ. Л.: Машиностроение Ленингр. отд. 1988. 303 с.
Морисита И. Аппаратные средства микроЭВМ Пер. с япон. М.: Мир 1988. 279 с.
Соучек Б. Микропроцессоры и микроЭВМ Пер. с англ. Под ред. А. И. Петренко. М.: Сов. радио 1979. 517 с.
Гибсон Г. Лю Ю.-Ч. Аппаратные и программные средства микроЭВМ Пер. с англ. В. Л. Григорьева Под ред. В. В. Сташина. М.: Финансы и статистика 1983. 255 с.
Гивоне Д. Россер Р. Микропроцессоры и микрокомпьютеры: Вводный курс Пер. с англ. М.: Мир 1983. 463 с.
Байцер Б. Архитектура вычислительных комплексов. М.: Мир 1974. Т.12.
Шило В.Л. Популярные микросхемы ТТЛ.
31. Цифровые и аналоговые интегральные микросхемы: Справочник С.В.Якубовский Л.И.Ниссельсон В.И.Кулешова и др.; Под ред. С.В.Якубовского. — М.: Радио и связь 1990. — 496 с.
32. ШилоВ.Л.Популярные микросхемы ТТЛ. — М.: Аргус 1993. — 64 с.
33. Шило B. Популярные микросхемы КМОП: Справочник. — М.: Ягуар 1993. — 64 с.

icon 3.dwg

3.dwg

icon 2.dwg

2.dwg

icon 4.dwg

4.dwg

icon 1.dwg

1.dwg
up Наверх