Проектирование микропроцессорной системы для идентификации объекта управления

Автор работы: Пользователь скрыл имя, 11 Мая 2014 в 15:33, курсовая работа

Описание работы

Курсовой проект выполняется с целью закрепления знаний по курсу “Микропроцессорные системы” и развития навыков самостоятельного проектирования микропроцессорных систем, специализированных на конкретный вид информации.
Задачами курсового проекта является:
• практическое овладение методикой проектирования микропроцессорных систем;
• анализ вариантов проектных решений и выбор на его основе оптимального решения;
• синтеза функциональной схемы микропроцессорной системы на основе анализа исходных данных и принятого оптимального решения;

Содержание работы

ВВЕДЕНИЕ 4
ТЕХНИЧЕСКОЕ ЗАДАНИЕ 5
АНАЛИЗ АЛГОРИТМА ВЫЧИСЛЕНИЙ 8
ОПРЕДЕЛЕНИЕ СОСТАВА МПС 9
РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 11
ВЫБОР МПК И РАЗРАБОТКА АРХИТЕКТУРЫ МПС 12
ПРОЕКТИРОВАНИЕ ПРОЦЕССОРА МПС 14
РАЗРАБОТКА ПОДСИСТЕМЫ ПАМЯТИ МПС 22
РАЗРАБОТКА ПОДСИСТЕМЫ ВВОДА-ВЫВОДА 23
РАЗРАБОТКА ТЭЗА 26
ЗАКЛЮЧЕНИЕ 27
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 29

Файлы: 1 файл

PZ.doc

— 335.50 Кб (Скачать файл)

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

Для синхронизации операций чтения/записи используется синхронный способ, для которого интервал времени чтения/записи определяется длительностью сигналов управления. Способ обеспечивает наибольшую пропускную способность системной шины. Используется синхронный способ обмена с управляемой длительностью интервала обмена, причем изменение длительности интервала возможно только в сторону его увеличения под управлением сигналов подтверждения обмена, формируемыми ЗУ и ВУ. Для увеличения длительности интервала обмена на системной шине используется режим ожидания процессора.

Состав средств доступа к СШ определяется типом шины. Разрабатываемая МПС является однопроцессорной и в ней используется однопользовательская СШ. В этом случае шиной управляет сам процессор и дополнительных средств управления не требуется.

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

 

Расчет нагрузочной способности шины адреса:

Т.к. в один момент времени может работать модуль ОЗУ или модуль ПЗУ.

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 имеются следующие соединения:

  • выходы BUSY#, ERROR#, PEREQ сопроцессора 80387 подключаются к соответствующим выводам МП 80386;
  • вход RESET сопроцессора 80387 подключается к выходу RESET тактового генератора 82384;
  • входы выбора микросхемы арифметического сопроцессора 80387 (CS1#, CS2) непосредственно подключаются к выходам M/IO# и A31 соответственно. Для циклов с сопроцессором сигнал А31 всегда имеет высокий уровень, а сигнал M/IO# – всегда низкий уровень напряжения;
  • вход команды сопроцессора 80387 (CMD0#) отделяет данные от команд. Этот вход подключается к выходу А2. МП 80386 выводит адрес 800000F8h при записи команды, и адрес 800000FCh – при записи или считывании данных;
  • все 32 линии (D31-D0) шины данных МП 80386 непосредственно подключаются к шине данных сопроцессора 80387;
  • входы READY#, ADS#, W/R# сопроцессора 80387 подключаются к соответствующим выводам МП 80386. Сопроцессор 80387 использует сигналы READY# и ADS# для отслеживания активности магистрали и того момента времени, когда могут быть опрошены сигналы W/R#, CS1#, CS2 и сигналы разрешения состояния (STEN);
  • сигнал STEN является сигналом выбора микросхемы 80387. Он может быть установлен на высоком уровне напряжения. Если же один и тот же МП 80386 работает с несколькими сопроцессорами 80387, то сигнал STEN может использоваться для активизации одного из них в конкретный момент времени;
  • выход готовности (READYO#) является дополнительным выходом. Он может быть использован для генерации состояния ожидания, требуемого сопроцессором.

Если МП 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)

CLK2 обеспечивает  основную синхронизацию работы 80386. Эта тактовая частота делится  пополам для того, чтобы сформировать  внутреннюю процессорную тактовую  частоту, используемую при выполнении команд внутри процессора.

    • Шина данных (D0-D31)

Двунаправленные с тремя состояниями линии шины данных обеспечивают перемещение данных от 80386 к другим устройствам. Наличие высокого уровня напряжения на входах/выходах шины данных обозначает наличие кодов логической единицы "1" на этих выводах. Шина данных может передавать данные как на 32-, так и на 16-разрядные шины благодаря тому, что есть возможность изменения размера шины данных; размер шины данных определяется значением входного сигнала BS16#. При любой операции записи (включая циклы останова и выключения) 80386 всегда передает все 32 разряда данных, даже если в текущем цикле размер шины обмена равен 16 разрядам.

    • Шина адреса (BE0#-BE3#, A2-A31)

Эти выходы с тремя состояниями обеспечивают физическую адресацию памяти или адресацию устройств ввода/вывода. Шина адреса обеспечивает физическое пространство адресов памяти объемом 4 гигабайта (от 00000000H до FFFFFFFFH) и пространство адресов ввода/вывода объемом 64 килобайта (от 00000000H до 0000FFFFH) для обращения к устройствам ввода/вывода.

Значения сигналов стробов данных BE0#-BE3# определяют соответственно те байты 32-разрядной шины данных, которые участвуют в текущей передаче. Это особенно удобно для взаимодействия с внешней аппаратурой.

    • Сигналы определения типа цикла шины (W/R#, D/C#, M/IO#, LOCK#)

Эти выходы с тремя состояниями определяют тип текущего цикла шины. В зависимости от значения W/R# все циклы подразделяются на циклы записи и циклы чтения. D/C# разделяет все циклы на циклы обмена данными и циклы обмена управляющими сигналами. M/IO# отличает циклы обращения к памяти от циклов обращения к устройствам ввода/вывода. По сигналу LOCK# различаются циклы с блокированной шиной.

    • Указатель 16-разрядной шины (BS16#)

Благодаря сигналу BS16# осуществляется непосредственная связь 80386 с 32-разрядной и 16-разрядной шинами данных. Установка активного уровня этого входа приведет к тому, что в текущем цикле шины обмен будет производиться только по младшей половине шины данных (D0-D15) в соответствии со значениями сигналов BE0# и BE1#. Дополнительное влияние сигнала BS16# (установленного в активное состояние) не проявится, если в текущем цикле сформированы активные уровни только сигналов BE0# или BE3#, действие сигнала BS16# (активного уровня) заставит процессор 80386 выполнить необходимые переключения для правильной передачи старшего (их) байта (ов) по линиям D0-D15.

В данной работе этот сигнал всегда установлен в пассивное состояние и обмен с памятью производится только 32 разрядными данными.

    • Сигналы прерывания INTR, NMI

Могут прерывать или приостанавливать выполнение процессором текущего набора инструкций. Так как обработка прерываний не требуется, то эти сигналы не используются.

    • Сигнал сброса (установки в исходное состояние)(RESET).

Этот входной сигнал останавливает выполнение любой операции и переводит 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

Запись данных в память

Информация о работе Проектирование микропроцессорной системы для идентификации объекта управления