Контроллеры управления SMC, страница 2

Память параметров SMC-каналов располагается во внутренней памяти параметров коммуникационного контроллера, для МРС860. Память параметров SMC-канала состоит из двух частей: протокол независимой части, в которой определены общие па­раметры работы SMC-контроллера (табл. 3), и протокол ориентированной, в которой содержатся параметры, определяющие работу выбранных коммуникационных протоколов. Назначение переменных в протокол независимой памяти параметров SMC-контроллера совпадает с назначением аналогичных ячеек в протокол независимой памяти параметров SCC-контроллера, описание которых было приведено ранее.

Таблица 3. Протокол независимая память параметров SMC-контроллеров в МРС860.

Адрес

Название

Размер, бит

Описание

SMC base+00

RBASE

16

Базовый адрес таблицы RX BD

SMC base+02

TBASE

16

Базовый адрес таблицы TX BD

SMC base+04

RFCR

8

Функциональные коды Rx

SMC base+05

TFCR

8

Tx функциональные коды

SMC base+06

MRBLR

16

Максимальная длина Rx-буфера

SMC base+08

RSTATE

32

Rx-состояние

SMC base+0С

32

Указатель на ячейку памяти в буфере приема Rx

SMC base+10

RBPTR

16

Указатель на ячейку памяти дескриптора RX BD

SMC base+12

16

Счетчик принятых в буфер Rx байт данных

SMC base+14

32

Временная переменная Rx

SMC base+18

TSTATE

32

Тх-состояние

SMC base+1С

32

Указатель на ячейку памяти в буфере приема Tx

SMC base+20

TBPTR

16

Указатель на ячейку памяти дескриптора TX BD

SMC base+22

16

Счетчик переданных из буфера Tx байт данных

SMC base+24

32

Временная переменная Tx

При работе с SMC-каналами пользователь может в любой момент времени произвести модификацию параметров канала, например, настроить его на работу с другим коммуникационным протоколом. Для этого канал должен быть выключен из работы, а затем снова включен. Большинство параметров настройки контроллера рекомендуется производить только при выключен­ных приемнике (бит REN=0) и передатчике (бит TEN=0). При этом теку­щие буферы данных, с которыми работает канал, закрываются, и после во­зобновления работы канал будет работать с другими буферами. Рекомендо­ванная последовательность инициализации приемника SMC-канала:

1.  Сбросить бит работоспособности (разрешения работы) приемника REN:= 0. Прием будет немедленно прерван и приемник будет установлен в нор­мальное состояние.

2.  Произвести модификацию памяти параметров и регистров SMC-канала. При желании пользователь может просто сбросить все параметры в исход­ное состояние, передав контроллеру команду INIT RX PARAMETERS. Если команда INIT RX PARAMETERS не используется, то необходимо передать команду CLOSE RX BD или ENTER HUNT MODE.

3.  Установить бит разрешения приема REN:=1 в регистре SMCMR, разре­шив контроллеру начать прием информации из канала связи.

Если пользователь решил только сбросить параметры приемника SMC-канала в исходное состояние, не изменяя режимов работы, то достаточно выполнить следующие действия (короткая последовательность):

1.  Сбросить бит REN:=0 в регистре SMCMR, выключив приемник из работы.

2.  Передать каналу команду INIT RX PARAMETERS.

3.  Разрешить работу приемника, установив бит REN:=1.

Рекомендованная последовательность инициализации передатчика SMC-канала:

1.  Если контроллер в текущий момент времени выполняет передачу кад­ра данных, то предварительно требуется передать ему команду STOP TRANSMIT для прерывания процесса передачи.

2.  Сбросить бит работоспособности (разрешения работы) передатчика TEN:= 0. Передатчик будет установлен в начальное состояние.

3.  Произвести модификацию памяти параметров и регистров SMC-канала. При желании пользователь может просто сбросить все параметры в ис­ходное состояние, передав контроллеру команду INIT TX PARAMETERS. Если команда INIT TX PARAMETERS не используется, то необходимо передать команду RESTART TRANSMIT.

4.  Установить бит разрешения передачи TEN:=1 в регистре SMCMR, раз­решив контроллеру начать передачу в сеть информации из буфера дан­ных, адрес которого указан в ячейке TBPTR.

Если пользователь решил только сбросить параметры передатчика SMC-канала в исходное состояние, то достаточно выполнить следующие действия (короткая последовательность):

1.  Сбросить бит TEN:=0 в регистре SMCMR, выключив передатчик из ра­боты.

2.  Передать каналу команду INIT TX PARAMETERS.

3.  Разрешить работу передатчика, установив бит TEN:=1.

Если пользователь решил только изменить протокол, с которым работает в текущий момент времени SMC-контроллер, и не менять общих парамет­ров работы канала, то он должен выполнить следующие шаги:

1.  Сбросить биты разрешения работы приемника и передатчика SMC-канала REN=TEN:=0.

2.  Передать каналу команду инициализации всех параметров приемника и передатчика в исходное состояние INIT TX and RX PARAMETERS. Про­извести настройку регистра SMCMR и памяти параметров на работу с другим протоколом.

3.  Установить биты TEN=REN:= 1, разрешив SMC-контроллеру работать с новым протоколом.