Автор работы: Пользователь скрыл имя, 11 Мая 2014 в 15:33, курсовая работа
Курсовой проект выполняется с целью закрепления знаний по курсу “Микропроцессорные системы” и развития навыков самостоятельного проектирования микропроцессорных систем, специализированных на конкретный вид информации.
Задачами курсового проекта является:
• практическое овладение методикой проектирования микропроцессорных систем;
• анализ вариантов проектных решений и выбор на его основе оптимального решения;
• синтеза функциональной схемы микропроцессорной системы на основе анализа исходных данных и принятого оптимального решения;
ВВЕДЕНИЕ 4
ТЕХНИЧЕСКОЕ ЗАДАНИЕ 5
АНАЛИЗ АЛГОРИТМА ВЫЧИСЛЕНИЙ 8
ОПРЕДЕЛЕНИЕ СОСТАВА МПС 9
РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 11
ВЫБОР МПК И РАЗРАБОТКА АРХИТЕКТУРЫ МПС 12
ПРОЕКТИРОВАНИЕ ПРОЦЕССОРА МПС 14
РАЗРАБОТКА ПОДСИСТЕМЫ ПАМЯТИ МПС 22
РАЗРАБОТКА ПОДСИСТЕМЫ ВВОДА-ВЫВОДА 23
РАЗРАБОТКА ТЭЗА 26
ЗАКЛЮЧЕНИЕ 27
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 29
Состав и структура интерфейса системной шины определяется в соответствии с организацией и разрядностью шин данных и адресов, их требуемой нагрузочной способностью. Интерфейс адресной шины реализуется буферным регистром адреса, а интерфейс шины данных - шинным формирователем. Ток нагрузки шинных формирователей и буферных регистров интерфейса определяет нагрузочную способность системной шины.
Для синхронизации операций чтения/записи используется синхронный способ, для которого интервал времени чтения/записи определяется длительностью сигналов управления. Способ обеспечивает наибольшую пропускную способность системной шины. Используется синхронный способ обмена с управляемой длительностью интервала обмена, причем изменение длительности интервала возможно только в сторону его увеличения под управлением сигналов подтверждения обмена, формируемыми ЗУ и ВУ. Для увеличения длительности интервала обмена на системной шине используется режим ожидания процессора.
Состав средств доступа к СШ определяется типом шины. Разрабатываемая МПС является однопроцессорной и в ней используется однопользовательская СШ. В этом случае шиной управляет сам процессор и дополнительных средств управления не требуется.
Интерфейс адресной шины реализуется буферным регистром адреса, а интерфейс шины данных - шинным формирователем. Ток нагрузки шинных формирователей и буферных регистров интерфейса определяет нагрузочную способность системной шины.
Расчет нагрузочной способности шины адреса:
Т.к. в один момент времени может работать модуль ОЗУ или модуль ПЗУ.
Iвых182 = max{4* IвхПЗУ1, 4* IвхОЗУ1} = max{4*4×10-5, 4*0.04} = 0.16mA £ 32mA
Iвых082 = max{4* IвхПЗУ0, 4* IвхОЗУ0} = max{4*0.25, 4*0.45} = 1.8mA £ 5 mA
Расчет нагрузочной способности шины данных:
Т.к. в один момент времени может работать модуль ОЗУ или порт вывода.
Iвых186 = max{IвхОЗУ1, IвхIOP1} = max{0.04, 0.0007} = 0.04mA £ 32mA
Iвых086 = max{IвхОЗУ0, IвхIOP0} = max{0.3, 0.05} = 0.3mA £ 5mA
Расчет нагрузочной способности линий CS для ОЗУ и ПЗУ из дешифратора:
Iвых1DC = max{4* IвхПЗУ1, 4* IвхОЗУ1} = max{4*4×10-5, 4*0.04} = 0.16mA £ 0.4mA
Iвых0DC = max{4* IвхПЗУ0, 4* IвхОЗУ0} = max{4*0.25, 4*0.9} = 3.6mA £ 8 mA
Расчет нагрузочной способности линий W/R для ОЗУ из МС 8282:
Iвых182 = 4* IвхОЗУ1 = 4*0.04 = 0.16mA £ 32mA
Iвых082 = 4* IвхОЗУ0 = 4*0.45 = 1.80mA £ 5mA
Расчет нагрузочной способности шин данных, адреса и управления показал, что предложенное подключение микросхем памяти и портов не требует дополнительных микросхем для повышения нагрузочной способности линий.
Тактовый генератор 82384, используемый в системах на базе МП i80386, вырабатывает тактовые сигналы для выполнения синхронных операций различных компонентов системы. На выходе CLK2 схемы генератора формируются импульсы с частотой равной частоте внешнего кварца (33 МГц), а на выходе CLK - с частотой вдвое меньшей. Сигналы на выходе CLK и сигналы внутренней синхронизации МП совпадают по фазе. Выравнивание фаз этих сигналов происходит по срезам сигнала RESET.
Сигнал RESET служит для установки в исходное состояние МП и других компонентов системы и формируется генератором от внешней RC - цепочки. Сигнал ADS# обеспечивает требуемые времена установки и удержания для сигнала CLK2, а сигнал ADS0# используется совместно с CLK для управления периферийными устройствами. Вывод F/C# заземляется, т.к. применяется кварцевый резонатор.
Регистры защелки адреса 8282, выполняют функции интерфейса шины адреса, в следствии чего повышается нагрузочная способность шины адреса. Данные в в регистры защелкиваются по фронту сигнала ADS#, поступающего с тактового генератора. Входной сигнал OE# - отключение третьего состояния выходов, находится в активном состоянии.
Шинные формирователи 8286, выполняют функции интерфейса шины данных, для повышения нагрузочной способности шин данных. Входной сигнал T – задает направление передачи данных. Входной сигнал OE# - отключение третьего состояния выходов, находится в активном состоянии.
Арифметический сопроцессор 80387 сконструирован для полностью синхронной, либо псевдосинхронной работы с МП 80386. В псевдосинхронном режиме интерфейсная логика сопроцессора 80387 работает от тактового сигнала МП 80386, тогда как его внутренняя логика работает от другого тактового сигнала. Когда МП 80386 работает с сопроцессором 80387, он выполняет все необходимые магистральные циклы с памятью и передачи данных в 80387 и из него. Все передачи с сопроцессором 80387 являются 32-разрядными.
Между МП 80386 и сопроцессором 80387 имеются следующие соединения:
Если МП 80386 обнаруживает команду сопроцессора, он автоматически генерирует один или более циклов ввода-вывода по адресам 800000F8H и 800000FCH. Процессор выполняет все необходимые магистральные циклы с памятью и передачи к сопроцессору 80387 и от него. Все обмены с сопроцессором 80387 являются 32-разрядными. Если по какой-либо причине используется 16-разрядная подсистема памяти, то МП 80386 автоматически выполняет преобразования перед передачей данных к арифметическому сопроцессору или от него.
Передача данных от сопроцессора 80387 к МП 80386 требует по крайней мере одного состояния ожидания. Циклы записи в сопроцессор 80387 не требуют состояний ожидания. Поскольку интерфейс с МП 80386 всегда синхронный, то вывод CLK2 сопроцессора 80387 должен быть подключен ко входу CLK2 МП 80386. Состояние входа СКМ сопроцессора 80387 определяет, в каком из двух режимов он работает.
В псевдосинхронном режиме сигнал СКМ имеет низкий уровень. Ко входу CLK2 сопроцессора 80387 должен быть подключен источник тактовой частоты. Синхронной с МП 80386 является только интерфейсная логика сопроцессора 80387. Внутренняя логика сопроцессора 80387 работает от источника тактовой частоты со входа 80387 CLK2.
В синхронном режиме сигнал СКМ имеет высокий уровень и вход 80387 CLK2 никуда не подключается. Сопроцессор 80387 работает от основного тактового сигнала CLK2. Операции арифметического сопроцессора полностью синхронны с работой МП 80386.
Сопроцессор 80387 использует два метода для взаимодействия с МП 80386. Первый используется, когда операции с сопроцессором инициирует МП 80386. Это происходит во время исполнения команды сопроцессора (команды ESC) и осуществляется под контролем программы. Взаимодействие по второму методу осуществляется, когда сопроцессор использует сигнал PEREQ для запроса, чтобы МП 80386 начал передачу операндов к системной памяти или от нее. Эти передачи осуществляются по требованию сопроцессора, поэтому они асинхронны с выполнением команд МП 80386. Передачи данных для сопроцессора имеют тот же самый приоритет на магистрали, что и передачи данных под управлением программы.
ОРГАНИЗАЦИЯ МИКРОПРОЦЕССОРА
В 80386 имеются две раздельные шины: шина адреса и шина данных. Шина данных - 32-разрядная и двунаправленная. В большинстве применяемых модулей для высокоcкоростной локальной шины используются 32 разряда адреса, передаваемого по адресной шине, из них 2 младших разряда дешифрируются в 4 сигнала строба данных (каждый из этих сигналов разрешает или запрещает передачу соответствующего байта данных, сигналы BE0#-BE3#), а остальные 30 разрядов представляют собой двоичный код адреса. Для управления обменом по шине адреса и шине данных используются соответствующие управляющие сигналы.
Изменяемая ширина (разрядность) шины данных позволяет процессору взаимодействовать как с 32-х, так и с 16-разрядными внешними шинами в синхронном режиме.
Выводы микропроцессора:
CLK2 обеспечивает
основную синхронизацию работы 80386.
Эта тактовая частота делится
пополам для того, чтобы сформировать
внутреннюю процессорную
Двунаправленные с тремя состояниями линии шины данных обеспечивают перемещение данных от 80386 к другим устройствам. Наличие высокого уровня напряжения на входах/выходах шины данных обозначает наличие кодов логической единицы "1" на этих выводах. Шина данных может передавать данные как на 32-, так и на 16-разрядные шины благодаря тому, что есть возможность изменения размера шины данных; размер шины данных определяется значением входного сигнала BS16#. При любой операции записи (включая циклы останова и выключения) 80386 всегда передает все 32 разряда данных, даже если в текущем цикле размер шины обмена равен 16 разрядам.
Эти выходы с тремя состояниями обеспечивают физическую адресацию памяти или адресацию устройств ввода/вывода. Шина адреса обеспечивает физическое пространство адресов памяти объемом 4 гигабайта (от 00000000H до FFFFFFFFH) и пространство адресов ввода/вывода объемом 64 килобайта (от 00000000H до 0000FFFFH) для обращения к устройствам ввода/вывода.
Значения сигналов стробов данных BE0#-BE3# определяют соответственно те байты 32-разрядной шины данных, которые участвуют в текущей передаче. Это особенно удобно для взаимодействия с внешней аппаратурой.
Эти выходы с тремя состояниями определяют тип текущего цикла шины. В зависимости от значения W/R# все циклы подразделяются на циклы записи и циклы чтения. D/C# разделяет все циклы на циклы обмена данными и циклы обмена управляющими сигналами. M/IO# отличает циклы обращения к памяти от циклов обращения к устройствам ввода/вывода. По сигналу LOCK# различаются циклы с блокированной шиной.
Благодаря сигналу BS16# осуществляется непосредственная связь 80386 с 32-разрядной и 16-разрядной шинами данных. Установка активного уровня этого входа приведет к тому, что в текущем цикле шины обмен будет производиться только по младшей половине шины данных (D0-D15) в соответствии со значениями сигналов BE0# и BE1#. Дополнительное влияние сигнала BS16# (установленного в активное состояние) не проявится, если в текущем цикле сформированы активные уровни только сигналов BE0# или BE3#, действие сигнала BS16# (активного уровня) заставит процессор 80386 выполнить необходимые переключения для правильной передачи старшего (их) байта (ов) по линиям D0-D15.
В данной работе этот сигнал всегда установлен в пассивное состояние и обмен с памятью производится только 32 разрядными данными.
Могут прерывать или приостанавливать выполнение процессором текущего набора инструкций. Так как обработка прерываний не требуется, то эти сигналы не используются.
Этот входной сигнал останавливает выполнение любой операции и переводит 80386 в состояние, известное как состояние сброса. Сброс 80386 производится установкой активного уровня сигнала RESET в течение 15-ти или более периодов CLK2. Сигнал RESET может быть асинхронным по отношению с CLK2. Если необходимо, фаза внутреннего синхросигнала процессора, а также целое состояние 80386 могут быть полностью синхронизированы с внешними схемами.
Описание функционирования шины
80386 имеет отдельные параллельные шины: шину адреса и шину данных. Шина данных 32-х разрядная и двунаправленная. Ширина шины адреса 32 разряда: из них 30 старших разрядов адрес операнда и 2 разряда формируются из 4х сигналов стробов данных каждый из которых служит для выборки соответствующего байта в операнде. Тип каждого цикла шины определяется тремя сигналами: M/IO#, W/R# и D/C#. Одновременно с этими сигналами устанавливается достоверный адрес на линиях BE0#BE3# и A2-A31. Сигнал строба адреса указывает на выдачу процессором 80386 нового типа цикла шины и адреса. В рабочем состоянии шина выполняет один из ниже перечисленных циклов шины:
Таблица 1. Определение цикла шины
М/IO |
D/C |
W/R |
ТИП ПЕРЕДАЧИ |
0 |
0 |
0 |
Подтверждение прерывания |
0 |
0 |
1 |
Специальные циклы BE0-BE3 |
0 |
1 |
0 |
Считывание данных из ввода-вывода |
0 |
1 |
1 |
Запись данных во ввод-вывод |
1 |
0 |
0 |
Предвыборка (считывание) команд из памяти |
1 |
0 |
1 |
(зарезервирован) |
1 |
1 |
0 |
Считывание данных из памяти |
1 |
1 |
1 |
Запись данных в память |
Информация о работе Проектирование микропроцессорной системы для идентификации объекта управления