Программирование и комп-ры

Передача массива информации в параллельном формате между двумя микроЭВМ КР580ВН80А с использованием БИС КР580ВВ55

   Белорусский Государственный Университет Информатики и Радиоэлектроники.



                             Контрольная работа
                                по дисциплине
                                   «ММПС»



                                          Выполнил студент группы 500501
                                          Балахонов Е.В.



                               Минск, 2000 г.


Контрольная работа № 1.



Задание.


      Разработать МПС для передачи массива информации в параллельном формате
между двумя микро ЭВМ КР580ВН80А с использованием БИС КР580ВВ55.  Устройство
сопряжения  должно  обеспечивать  однонаправленный  обмен   информацией   по
параллельному каналу связи, где  одна  микро  ЭВМ  –  ведущая,  в  другая  –
ведомая  (без  контроля  правильности).  В  качестве   сигналов   управления
использовать разряды канала С.


Описание микросхемы КР580ВВ55А.


      Предложенная в задании микросхема КР580ВВ55 предназначена для ввода  и
вывода информации через параллельный интерфейс.
      Рассмотрим структурную схему данной БИС и алгоритм ее работы:

      Структурная схема КР580ВВ55 представлена на рис. 1.
      Сигналы управления работой ППИ  подаются  на  блок  RWCU  и  вместе  с
адресными входами A0 и  A1  задают  вид  операции,  выполняемой  БИС.  Режим
работы каждого  из  каналов  ППИ  программируется  при  помощи  управляющего
слова. Управляющее  слово  может  задавать  один  из  трех  режимов  работы:
основной режим ввода /вывода (режим  0),  стробируемый  режим  ввод/вывод  и
режим двунаправленной  передачи  информации  (режим  2).  Одним  управляющим
словом можно программно  установить  любые  режимы  работы  для  каждого  из
каналов.

                                    [pic]

                  Рис. 1. Структурная схема БИС КР580ВВ55.


Выбор режима работы и подключения


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

      -  строб  приема  (STB)  –  входной   сигнал,   формируемый   внешним
        устройством, указывает на готовность к вводу информации;
      - подтверждение приема (IBF) – выходной  сигнал  ППИ,  сообщающий  об
        окончании приема данных в канал, формируется по спаду STB;
      - запрос прерывания  (INTR)  –  выходной  сигнал  ППИ,  информирующий
        микропроцессор о завершении приема информации в канале;

      Для вывода информации в режиме 1  используются  следующие  управляющие
сигналы:
      - строб записи (OBF) – выходной сигнал, указывающий  о  готовности  к
        выводу;
      - подтверждение записи (ACK) – выходной сигнал, подтверждающий  прием
        информации из ППИ;
      - запрос прерывания (INTR) – выход ППРИ, информирующий микропроцессор
        о завершении вывода информации в канале;

      Для операции ввода необходимо записать управляющее слово:

|D7    |D6    |D5      |D4    |D3      |D2     |D1      |D0   |
|1     |0     |1       |1     |0       |1      |1       |1    |

      А для производства операции  вывода  необходимо  записать  управляющее
      слово:

|D7    |D6    |D5      |D4    |D3      |D2     |D1      |D0   |
|1     |0     |1       |0     |0       |1      |0       |0    |


      Схема  подключения КР580ВВ55 показана на рис. 2.

[pic]
                    Рис. 2. Схема  подключения КР580ВВ55.



Контрольная работа № 2.



Задание.


      Разработать программу, обеспечивающую работу двухпроцессорной  системы
в указанном режиме по алгоритму
     a) Передача массива информации из ведущей в ведомую микро ЭВМ.
     b) Размещение информации в ведомой микро ЭВМ

      Исходные данные:

     a) Длина массива информации (64/номер зачетки) ~= 8 байт
     b) Адрес параллельного порта на БИС К580ВВ55А – 90
     c) Адрес расположения массива данных – 90



Текст разработанной программы:



Передача массива информации из ведущей в ведомую микро ЭВМ.


|Адрес команды |Машинный код      |Ассемблер         |Пояснение      |
|000           |00111110          |MVI A, 0A4H       |Запись в       |
|              |                  |                  |аккумулятор    |
|              |                  |                  |управляющего   |
|              |                  |                  |слова.         |
|002           |00100001          |LXI HL, 05AH      |Загрузка адреса|
|              |                  |                  |начала массива |
|              |                  |                  |(90)           |
|005           |00010110          |MVI D, 08H        |Количество     |
|              |                  |                  |элементов      |
|              |                  |                  |массива (8)    |
|007           |11010011          |OUT 05AH          |Запись         |
|              |                  |                  |управляющего   |
|              |                  |                  |слова в порт   |
|009           |11011011          |WAIT: IN 05AH     |Считывание из  |
|              |                  |                  |канала С       |
|00B           |11100110          |ANI 20H           |Выбираем  6 бит|
|00D           |11001010          |J2 WAIT           |Переход по     |
|              |                  |                  |готовности     |
|010           |00101010          |LDAX HL           |Загрузка в     |
|              |                  |                  |аккумулятор    |
|              |                  |                  |байта из памяти|
|013           |11010011          |OUT 05BH          |Запись в порт  |
|              |                  |                  |1-го слова     |
|              |                  |                  |массива        |
|015           |00100011          |INX HL            |Инкремент      |
|              |                  |                  |указателя на   |
|              |                  |                  |массив         |
|016           |00010101          |DCB D             |Декремент      |
|              |                  |                  |счетчика       |
|017           |00111110          |MVZ A, 00H        |Обнуляем       |
|              |                  |                  |аккумулятор    |
|019           |10100010          |ANA D             |Проверка, что  |
|              |                  |                  |счетчик еще на |
|              |                  |                  |равен нулю     |
|01A           |11000010          |JNZ WAIT          |Переход на     |
|              |                  |                  |начало         |
|              |                  |                  |пересылки, если|
|              |                  |                  |еще не весь    |
|              |                  |                  |массив послан  |
|01E           |01110110          |HLT               |Останов        |
|              |                  |                  |программы      |



Размещение массива в памяти ведомой микро ЭВМ.


|Адрес команды |Машинный код      |Ассемблер         |Пояснение      |
|000           |00111110          |MVI A, 0ADH       |Запись в       |
|              |                  |                  |аккумулятор    |
|              |                  |                  |управляющего   |
|              |                  |                  |слова.         |
|002           |00100001          |LXI HL, 05AH      |Загрузка адреса|
|              |                  |                  |начала массива |
|              |                  |                  |(90)           |
|005           |00010110          |MVI D, 08H        |Количество     |
|              |                  |                  |элементов      |
|              |                  |                  |массива (8)    |
|007           |11011011          |WAIT: IN 05AH     |Считывание из  |
|              |                  |                  |канала С       |
|009           |11100110          |ANI 04H           |Выбираем  3 бит|
|00A           |11001010          |J2 WAIT           |Переход по     |
|              |                  |                  |готовности     |
|00E           |11011011          |IN 05BH           |Считывание     |
|              |                  |                  |принятого байта|
|010           |00100010          |STAX HL           |Запись         |
|              |                  |                  |принятого байта|
|              |                  |                  |в память       |
|011           |00100011          |INX HL            |Инкремент      |
|              |                  |                  |указателя на   |
|              |                  |                  |массив         |
|012           |00010101          |DCB D             |Декремент      |
|              |                  |                  |счетчика       |
|013           |00111110          |MVI A, 010H       |Запись в       |
|              |                  |                  |аккумулятор    |
|              |                  |                  |управляющего   |
|              |                  |                  |слова.         |
|015           |11010011          |OUT 05AH          |Записываем     |
|              |                  |                  |управляющее    |
|              |                  |                  |слово в канал С|
|017           |00111110          |MVI A, 00H        |Обнуляем       |
|              |                  |                  |аккумулятор    |
|019           |10100010          |ANA D             |Проверка       |
|              |                  |                  |счетчика       |
|01A           |11000010          |JN2 WAIT          |Если не ноль,  |
|              |                  |                  |переход на     |
|              |                  |                  |метку WAIT     |
|01D           |01110110          |HLT               |Останов        |
|              |                  |                  |программы      |





смотреть на рефераты похожие на "Передача массива информации в параллельном формате между двумя микроЭВМ КР580ВН80А с использованием БИС КР580ВВ55"