Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
диплом / Шина Х.doc
Скачиваний:
48
Добавлен:
10.12.2013
Размер:
136.7 Кб
Скачать

Передатчик

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

  • безуспешная 4-х кратная передача пакета из-за неготовности приемника;

  • безуспешная 2-х кратная передача пакета из-за ошибок на стороне приемника;

  • безуспешная 2-х кратная передача пакета из-за отсутствия приемника;

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

  • продолжить передачу данного пакета (при этом в автоматическом режиме будет поддерживаться повторная передача при сбоях);

  • удалить данный пакет из очереди и возобновить работу передатчика (возможно также удаление следующих за ним пакетов из очереди, но только в строгом соответствии с порядком их записи);

  • сбросить передатчик. При этом все пакеты будут удалены, а передача будет прекращена до первой записи нового пакета.

Адресное пространство передатчика

Address

A[5..0]

Operation

Name

Description

00h

Write

First Write

Запись первого байта в ОЗУ передатчика.

Используется 8 мл. разрядов шины данных.

01h - 1Ch

Next Write

Запись следующего байта в ОЗУ передатчика. Фактически все адреса из данного диапазона равнозначны, т.е. запись данных (с 2-го по последний байт) можно выполнить, не меняя адреса. Используется 8 мл. разрядов шины данных.

20h

End Of Packet

Запись пакета завершена (переход к следующему пакету).

Шина данных не задействована.

24h

Read

Get Info

Состояние передатчика и передаваемого пакета

28h

Write

Continue

Продолжить работу (повторить попытку передачи, учитывая автоматические повторы). Шина данных не задействована.

30h

Delete Of Packet

Удаление из ОЗУ передатчика пакета, который должен в данный момент передаваться. Шина данных не задействована.

38h

Reset

Сброс передатчика. Удаление всех пакетов из ОЗУ передатчика.

Возможный алгоритм записи пакета

Регистр "Состояние передатчика и передаваемого пакета "

№ бита

Описание

2…0

Кол-во пакетов в передатчике (мин. число - 0; макс. число - 4).

2

Состояние буфера по передаче (старший бит кол-ва пакетов):

1 - буфер полный;

0 - есть место хотя бы для одного пакета.

3

Статус передатчика:

0 - Нормальная работа;

1 - Аварийная ситуация. Передача приостановлена. Требуется вмешательство процессора.

4

Осуществлено три неудачных передачи пакета (причина – неготовность приемника).

5

Осуществлено две неудачных передачи пакета (причина – ошибки в контрольной сумме).

6

Осуществлено две неудачных передачи пакета (причина – приемник не отвечает).

Приемник

Приемник формирует сигнал прерывания процессора всякий раз, когда принят очередной пакет. Минимальное время между двумя сигналами прерывания (случай, когда два пакета приходят сразу друг за другом) составляет один цикл передачи пакетов - 64 такта частоты синхронизации блока (4 МГц) или 15,6 мкс.

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

Address

A[5..0]

Operation

Name

Description

00h

Read

First Read

Чтение первого байта из ОЗУ приемника. Используется 8 мл. разрядов шины данных.

01h - 1Ch

Next Read

Чтение следующего байта из ОЗУ приемника. Фактически все адреса из данного диапазона равнозначны, т.е. чтение данных (с 2-го по последний байт) можно выполнить, не меняя адреса. Используется 8 мл. разрядов шины данных.

20h

Write

Next Packet

Переход к следующему пакету. Шина данных не задействована.

24h

Read

Get Info

Состояние приемника

30h

Read/

Write

Low Byte

Младший адресный байт

38h

High Byte

Старший адресный байт

Алгоритм чтения данных аналогичен алгоритму записи

Регистр "Состояние приемника"

№ бита

Описание

2…0

Кол-во пакетов в приемнике (мин. число - 0; макс. число - 4).

Соседние файлы в папке диплом