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

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

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

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

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

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

Файлы: 1 файл

PZ.doc

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

 

 

РАЗРАБОТКА ПОДСИСТЕМЫ ПАМЯТИ МПС

 

При проектировании ЗУ МПС решались задачи разработки схемы накопителя информации и схемы сопряжения ОЗУ и ПЗУ с системной шиной.

Потребность в оперативной памяти определяется по ассемблерной программе:

  • данные под временные переменные - 688 байт;
  • объем памяти под код программы составляет 928 байт.

Особенность построения модулей памяти для микропроцессора 80386 состоит в том, что для обращения к данным используется 32-х разрядная шина данных (т.е. обмен производится по 4 байта, нужный байт выбирается по сигналам выбора байтов BE0#-BE3#). На основании этого модули памяти строятся из четырех банков с разрядностью 1 байт.

Накопитель OЗУ строится на основе микросхем КМ185РУ8 статического типа размерностью 256´8, с временем записи/считывания 45нс, Рсс = 915мВт. Накопитель ПЗУ строится на основе микросхем 556РТ17 размерностью 512´8, с временем считывания 50нс, Рсс = 998мВт.

Из временных диаграмм приведенных в приложении 4 следует, что организация тактов ожидания при обращении к памяти не требуется, т.к. циклы чтения/записи укладываются во временные ограничения – два цикла процессора T1 + T2 = 1/33МГц + 1/33МГц = 61нс.

Адресный выход МП A11 и выход M/IO# используются для выбора одного из адресуемых пространств, а сигналы BE0#, BE1#, BE2#, BE3# используются для выбора адресуемого байта в модулях ОЗУ или ПЗУ.

Объем памяти был выбран исходя из потребностей системы и адресное пространство МПС разделено и доступно для использования следующим образом:

M/IO

А11

Диапазон адресов

Адресуемое пространство

0

0

0000h – 0FFFh

Порты ввода/вывода

1

0

0000h – 0FFFh

ОЗУ объемом 1Кбайт

1

1

1000h – 1FFFh

ПЗУ объемом 2Кбайта


 

 

РАЗРАБОТКА ПОДСИСТЕМЫ ВВОДА-ВЫВОДА

 

Подсистема ввода-вывода МПС представляет собой совокупность каналов ввода-вывода, каждый из которых обслуживает отдельные ВУ. Канал содержит средства сопряжения с СШ (интерфейс ВУ) и средства управления вводом-выводом и реализуется аппаратными средствами и программным обеспечением.

Так как в МПС информация поступает от восьми датчиков, то в процедуре ввода, прежде чем приступить к приему данных, последовательно выбирается ВУ, с которым будет производиться обмен. Нужный датчик задается в цикле, путем записи в регистр DX его номера. Используя данный номер, аппаратными средствами (дешифратор адреса и средствами управления) разрешается прием от источника с заданным номером. Интерфейс канала реализуется на основе портов ввода-вывода .

 

Подключение МС последовательного порта.

Интерфейсы последовательных каналов В/В реализуются на БИС программируемого интерфейса последовательной связи, например, КР580ВВ51А.

БИС КР580ВВ51А представляет собой универсальный синхронно-асинхронный приемопередатчик последовательной связи, выполняющий функции приема и преобразования параллельных форматов слов данных в последовательные форматы со служебными символами для передачи по КС (каналу связи) и последовательных форматов, принимаемых из КС слов данных в параллельный формат для ввода в процессор. БИС может быть запрограммирована для работы в 5 режимах: асинхронная передача, асинхронный прием, синхронная передача, синхронный прием с внутренней синхронизацией, синхронный прием с внешней синхронизацией. Контролируются ошибки в принимаемых словах данных на четность или нечетность, ошибки в структуре кода при асинхронном приеме, возникающие вследствие отсутствия стоповых битов, а также ошибки наложения, возникающие в результате нарушения синхронизации обмена, когда очередное слово поступает до считывания предыдущего. Скорость обмена до 64000 бод.

 

Управление передачей.

Управление передачей регулирует всю деятельность, связанную с передачей последовательных данных. Он получает и вырабатывает следующие сигналы, и внешние, и внутренние, для выполнения этой функции:

  • TxRDY (Transmitter Ready): Этот выход сигнализирует системному блоку, что передатчик готов получить символ данных. TxRDY автоматически сбрасывается по переднему фронту выходного сигнала WR, когда символ данных загружается из системного блока;
  • ТхС (Transmit Clock): Тактирование передачи управляет скоростью, с которой должен передаваться символ. В синхронном режиме скорость в битах в секунду равна частоте ТхС. Задний фронт сигнала ТхС сдвигает последовательные данные .

 

Передача данных.

При синхронной передаче выход TxD постоянно находится в маркерном уровне, пока система не пошлет свой первый символ,  который  является символом синхронизации КР580ВВ51А. Все биты выдвигаются по заднему фронту ТхС.

Когда передача началась, поток данных на выходе TxD должен продолжаться со скоростью ТхС. Если система не обеспечивает КР580ВВ51А символами данных до того, как буфер передачи становится пустым, то в поток данных будут автоматически вставляться символы синхронизации. В этом случае бит ТхЕ в регистре состояния переключается в высокое состояние для сигнализации того, что КР580ВВ51А пуст и передаются символы синхронизации. ТхЕ не переходит в низкое состояние,  когда выдвигается символ синхронизации.  Бит состояния ТхЕ сбрасывается автоматически при записи в КР580ВВ51А символа данных.

 

Управление приемом.

  • RxRDY (Receiver Ready): Этот выход показывает, что КР 580ВВ51А содержит символ, готовый для передачи в системный блок;
  • RхС (Receiver Clock) : Тактовая частота приемника управляет скоростью, с которой должен приниматься символ. Скорость следования битов равна действительной частоте RxC.

 

Прием данных.

Приемник получает последовательные данные, преобразует их в параллельный формат, проверяет на биты или символы, которые зависят от метода связи, и посылает обработанный символ в системный блок. Вход последовательных данных приходит на вывод RxD и тактируется по переднему фронту RxC.

 

Процедура программирования КР580ВВ51А.

КР580BB51A загружается набором управляющих слов, определяющих среду связи. Управляющие слова разбиваются на два формата: инструкция режима и инструкция команды. Инструкция режима и команды должны соответствовать определенной последовательности для надлежащей работы устройства. Инструкция режима должна быть вставлена непосредственно после операции сброса, перед использованием КР580ВВ51А для связи. Требуемые символы синхронизации для выбранного метода связи загружаются после этого в КР580ВВ51А. Все управляющие слова, записанные в КР580ВВ51А после инструкции режима, будут обозначать инструкцию команды. Сопрягается КР580ВВ51А с системными шинами процессора через выводы шины данных D7-D0, управляемые сигналами выборки БИС, чтения, записи, подаваемыми на входы CS, C/D, RD, WR. Управление входом C/D выполняется с линии А2.

Для чтения/записи данных из портов ввода/вывода достаточно только обращение к соответствующему адресному пространству.

 

РАЗРАБОТКА ТЭЗА

 

Конструктивно препроцессор при заданном размере плат может быть выполнен на одном ТЭЗе. Кроме микросхем ТЭЗ включает:

  • 1 разъем типа СНП34-90;
  • 1 разъем типа PS9 – для подачи напряжения питания и заземления;
  • фильтрующие конденсаторы: 2 электролитических и 6 (1 штука – на 5 микросхем) керамических КМ–51–Н90–0.05, устанавливаемые на плате в непосредственной близости от микросхем;
  • кварцевый резонатор и колебательный контур на 33МГц.
  • Для подачи уровня "1" в данной работе вместо резисторов номиналом 1К используются "лишние" линии логического элемента 2И-НЕ, на входы которого поданы "0".

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

Тепловой режим обеспечивается средствами естественного воздушного охлаждения, и плата выполненна на металлической основе, рассеивающей тепло. В целях защиты элементов и печатной платы от влаги ТЭЗ покрывается лаком ПФЛ-86.

 

ЗАКЛЮЧЕНИЕ

 

При проектировании микропроцессорной системы использовалось следующее программное обеспечение:

  • Borland C++ 3.1 и Turbo Assembler 3.1 – для оценки размера программы МПС;
  • система автоматизированного проектирования Visio 4.5 и Microsoft Word 2000 –для оформления конструкторской документации.

В результате выполнения курсового проекта была построена МПС на базе микропроцессора i80386DX33 для которой можно оценить следующие технические характеристики:

  • разрядность, бит        – 32;

т.к. разрядность шины данных – 32 бита

  • быстродействие (RG-RG), опер/с:     – 6.6*106;

т.к. МП 80386 выполняет одну команду в среднем за 5 тактов, в итоге быстродействие определяется: 33МГц / 5 = 6.6*106 опер/с

  • объем внутренней памяти, Кбайт:     – ОЗУ – 1, ПЗУ –2;
  • максимальная скорость обмена данными, Кбод:  – 64;
  • потребляемая мощность, Вт:      – 17.25;
  • напряжение питания, В (Гц):      – 220 (50),

 

В ходе выполнения курсового проекта были решены следующие задачи проектирования МПС:

  • моделирование источников входной информации, заданного алгоритма и потребителей выходной информации;
  • определение параметров элементов МПС по результатам моделирования;
  • синтез и разработка функциональных и принципиальных схем МПС;
  • разработка программного обеспечения МПС;
  • разработка конструкции и конструкторской документации проекта (чертежи и пояснительная записка).

 

Критерий качества системы равен:

 

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

 

  • Микропроцессор 80386: Справочник /К. Паппас, У. Марри / М.: Радио и связь, 1993.-320 с.
  • Процессор 80386DX в схеме персонального компьютера / Поляков А.В. -М.:ИКС, 1994.
  • Микропроцессоры и микропроцессорные комплекты интегральных микросхем: Справочник. В 2 т./ Под ред. В. А. Шахнова.- М.: Радио и связь, 1988.- 368 с.: ил.
  • Логические ИС КР1533, КР1554: справочник. В 2 т. /Под ред. И. И. Петровского, БИНОМ, 1993, с ил.
  • Применение микросхем памяти в электронных устройствах, О. Н. Лебедев, М.: Радио и связь, 1994. – 216 с.: ил.
  • ГОСТ 2.743-91 ЕСКД. Обозначения условные графические в схемах. Элементы цифровой техники.
  • ГОСТ 2.708-81 ЕСКД. Правила выполнения электрических схем цифровой электрической техники.
  • ГОСТ 2.755-87 ЕСКД. Обозначения условные графические в схемах. Устройства коммутационные и соединения контактные.
  • Токарев В. Л. Микропроцессорные системы: методические указания по выполнению лабораторных работ и курсового проекта для студентов специальности 220100 дневного и вечернего обучения. – Тула: ТГУ, 1997. – 48 с.
  • Матикашвили Т.И. Оформление документов по программированию и цифровой электронике Тула: ТГТУ, 1994. -44с.

 

ПРИЛОЖЕНИЕ 1

 

Листинг программы моделирования объекта наблюдения и МПС.

 

#include <stdlib.h>

#include <stdio.h>

#include <mem.h>

 

#define R 1

#define L 7

 

float real[R+L] = {0.6, 0.3, -0.3, -0.1, 0.5, -0.2, 0.1, -0.3};

 

float x, z, ksi;

float fi[R+L];

 

float O[R+L], k[R+L], r[R+L][R+L], e;

float chline[R+L], chisl[R+L][R+L];

float rfi[R+L];

float tmpr, znam;

 

float sigma = 0.5;

 

int   i, j, l, step;

 

void main()

{

clrscr();

randomize();

 

x = 0.0;

z = 0.0;

memset(O, 0, sizeof(float)*(R+L));

memset(fi, 0, sizeof(char)*(R+L));

memset(r, 0, sizeof(float)*(R+L)*(R+L));

for (i=0; i<R+L; i++) r[i][i] = 1.0;

 

for (step=1; step<30; step++)

{

for (i=R-1; i>0; i--) fi[i] = fi[i-1];

for (i=R+L-1; i>R-1; i--) fi[i] = fi[i-1];

 

fi[0] = z; fi[R] = x;

 

ksi = ((float)rand()/RAND_MAX)*sigma;

x = ((float)rand()/RAND_MAX)*2-1;

z = 0.0;

for (i=0; i<R+L; i++) z+=real[i]*fi[i];

z+= ksi;

 

printf("Step %d: fi = [ ", step);

for (i=0; i<R+L; i++) printf("%.3f ", fi[i]);

printf("]\n");

 

memset(rfi, 0, sizeof(float)*(R+L));

for (i=0; i<R+L; i++)

for (j=0; j<R+L; j++) rfi[i]+=r[i][j]*fi[j];

 

znam = 0.0;

for (i=0; i<R+L; i++) znam+=fi[i]*rfi[i];

znam+=sigma;

 

for (i=0; i<R+L; i++)

{

for (j=i+1; j<R+L; j++)

{

tmpr = r[i][j]; r[i][j] = r[j][i]; r[j][i] = tmpr;

}

}

 

memset(chisl, 0, sizeof(float)*(R+L)*(R+L));

 

for (i=0; i<R+L; i++)

{

for (j=0; j<R+L; j++) chline[j] = rfi[i]*fi[j];

 

for (j=0; j<R+L; j++)

{

for (l=0; l<R+L; l++)

{

chisl[i][j]+=chline[l]*r[l][j];

}

}

}

 

for (i=0; i<R+L; i++)

{

for (j=0; j<R+L; j++)

{

r[i][j]-=chisl[i][j]/znam;

}

k[i] = rfi[i]/znam;

}

 

e = 0.0;

for (i=0; i<R+L; i++) e+=fi[i]*O[i];

 

e = ksi-e;

 

for (i=0; i<R+L; i++) O[i]+=k[i]*e;

 

printf("        e = %.3f\n        O = [ ", e);

for (i=0; i<R+L; i++) printf("%.3f ", O[i]);

printf("]\n");

}

}

 

 

ПРИЛОЖЕНИЕ 2

 

Результаты моделирования объекта наблюдения и МПС.

 

Step 1: fi = [ 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ]

        e = 0.405

        O = [ 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ]

Step 2: fi = [ 0.405 0.022 0.000 0.000 0.000 0.000 0.000 0.000 ]

        e = 0.578

        O = [ 0.930 0.413 0.000 0.000 0.000 0.000 0.000 0.000 ]

Step 3: fi = [ 0.627 0.653 0.022 0.000 0.000 0.000 0.000 0.000 ]

        e = -0.322

        O = [ 0.322 0.021 -0.001 0.000 0.000 0.000 0.000 0.000 ]

Step 4: fi = [ 0.696 -0.774 0.653 0.022 0.000 0.000 0.000 0.000 ]

        e = -0.092

        O = [ 0.303 0.005 -0.001 -0.001 0.000 0.000 0.000 0.000 ]

Step 5: fi = [ 0.048 0.973 -0.774 0.653 0.022 0.000 0.000 0.000 ]

        e = 0.386

        O = [ 0.821 0.377 -0.409 0.030 0.704 0.000 0.000 0.000 ]

Step 6: fi = [ 0.853 -0.425 0.973 -0.774 0.653 0.022 0.000 0.000 ]

        e = 0.091

        O = [ 0.875 0.411 -0.429 0.033 0.765 -0.305 0.000 0.000 ]

Step 7: fi = [ 0.835 0.225 -0.425 0.973 -0.774 0.653 0.022 0.000 ]

        e = -0.242

        O = [ 0.467 0.233 -0.247 -0.026 0.375 -0.109 0.007 0.000 ]

Step 8: fi = [ 0.225 0.266 0.225 -0.425 0.973 -0.774 0.653 0.022 ]

        e = -0.028

        O = [ 0.485 0.220 -0.242 -0.018 0.348 -0.126 0.054 -0.202 ]

Step 9: fi = [ 1.007 -0.375 0.266 0.225 -0.425 0.973 -0.774 0.653 ]

        e = -0.008

        O = [ 0.491 0.212 -0.238 -0.020 0.336 -0.103 0.020 -0.259 ]

Step 10: fi = [ -0.216 -0.940 -0.375 0.266 0.225 -0.425 0.973 -0.774 ]

        e = 0.372

        O = [ 0.821 0.451 -0.467 -0.260 0.789 -0.323 0.299 -0.482 ]

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