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

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

модуля необходимо сформировать таблицу векторов прерываний. Эта таблица хранится в памяти, начиная с адреса 00000h и может иметь размер до 1 Кбайта. У МП К1810ВЬ86 имеется пять жестко определенных видов прерываний:

1)прерывание ошибки деления на ноль (вектор 00000h),

2)прерывание пошагового режима (вектор 00004h),

)немаскируемое прерывание (вектор 00008h),

)прерывание 3 (вектор 0000Сh),

)прерывание по переполнению (вектор 00010h).

Вектора прерываний с 6 по 32 (вектора 00012h - 0007Ch) отводятся под системные программы, а остальные 224 - для пользовательских приложений. При поступлении запроса на прерывание на вход INTR МП выполняет те же действия, что и при интерпретации встреченной команды INT_v, где v - номер возникшего прерывания. Арес перехода на вектор прерываний, из которого будут загружены новые значения сегментного регистра команд и программного счетчика, вычисляется МП следующим образом:

 

PP = 14h + v*4,

 

где РР - адрес вектора прерываний, v - аргумент команды INT.

 

Так как в МП-модуле не предусмотрено никаких действий при возникновении прерываний 1-5, будем в таких случаях сбрасывать МП-модуля в начальное состояние. Для этого инициализируем эти векторы адресом первой ячейки памяти - FFFF0h.

Вектора прерываний от УВВ содержат адреса переходов на процедуры ввода и вывода соответственно.

Сегменты данных (ds и es) размещаются в ОЗУ сразу по окончании таблицы векторов прерываний, занимающей 28 байт. Сегмент стека во избежание перекрывания с сегментами данных расположен в области старших адресов ОЗУ и имеет базовый адрес 10000h и начальное смещение FFFЕh.

Программируемые БИС инициализируется загрузкой специальных слов состояния, описанных ранее.

В конце программы инициализации массив введенных данных объявляется пустым (смещение на последний элемент совпадает с началом сегмента данных), разрешаются прерывания по входу INTR и МП переводится в режим останов.

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

4. Анализ функционирования МП-модуля с использованием временных диаграмм

 

Исходя из значений номинальных временных задержек, приведенных в справочниках, и согласно алгоритмам работы микросхем составим временные диаграммы функционирования МП-модуля в режимах ввода и вывода данных. Ввод или вывод данных микропроцессором К1810ВМ86 производится за один четырехтактный машинный цикл. Быстродействие всех остальных элементов модуля должно быть таким, чтобы не нарушать машинный цикл МП.

Проанализируем пригодность выбранных элементов для работы с МП К1810ВМ86.

Тактовая частота МП К1810ВМ86 - 5МГц. Это значит, что длительность одного такта машинного цикла составляет 0,2 мс или 200 нс.

Цикл чтения

Из временных диаграмм видно, что критичным в этом цикле является время выставления данных на шину данных/адреса МП: с момента появления на его выходах сигналов низкого уровня RD и DEN и до момента их снятия. Эти сигналы поддерживаются на выходах МП в течение полутора тактов, т.е. около 300 нс. До этого момента адрес на шине адреса МП-модуля находился также не менее 300 нс, чего вполне достаточно для формирования сигналов выбора микросхем.

Сигнал чтения памяти формируется с помощью 2 микросхем простой логики, общая задержка на которых не превышает 40 нс. Задержка с момента получения сигнала чтения памяти до момента появления на выводах модуля значений выбранной ячейки для ОЗУ составляет 55 нс, а для ПЗУ - 100нс.

Задержка вывода шинного формирователя из третьего состояния составляет 10..130 нс.

Таким образом, в предельном случае данные поступят на шину адреса/данных через 140 нс, что вполне приемлемо.

Цикл записи

Сигналы WR и DEN в этом цикле держаться дольше относительно аналогичных сигналов RD DEN в цикле записи, - примерно 2 полных такта. Это позволяет производить успешную запись даже в относительно медленные внешние устройства.

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

 

Ввод данных

Вывод данных

Заключение

 

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

На основе задания и поставленных целей, была описана структура будущего модуля и построена его функциональная схема. Это позволило провести более детальный анализ, результатом которого стала разработка принципиальной схемы МП-модуля.

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

В результате на языке ассемблера было написано программное обеспечение для проектируемого