ЭУМК по дисциплине "Проектирование проблемно-ориентированных вычислительных средств" › Теория › Тема 5. Внутренняя периферия процессоров платформы с5000

# Электронный учебно-методический
комплекс по дисциплине
"Проектирование проблемно-ориентированных вычислительных средств"

для специальности

1-40 02 02 «Электронные вычислительные средства»

Оглавление | Программа | Теория | Практика | Контроль знаний | Об авторах

5.5. Управление последовательным портом
5.5.1. Доступ к регистрам управления

Для управления используется набор субрегистров (суббанков), которые непосредственно не отображаются на адресное пространство процессора. Доступ к регистрам управления и состояния осуществляется через два специальных регистра, отображаемых на память: регистр адресов суббанков последовательного порта SPSA и регистр данных суббанков последовательного порта SPSD.
Для обращения к соответствующему регистру управления или состояния его номер (адрес) предварительно записывается в регистр SPSA, а затем данные записываются в регистр SPSD или читаются из него.
Перечень основных регистров и субрегистров многоканальных буферизированных последовательных портов приведен в табл. 5.9.
Таблица 5.9. Регистры и субрегистры McBSP процессора C5402

Адрес (Hex) | Суб-адрес | Имя † | Описание
McBSP0 | McBSP1
— | — |  | RBR[1,2] | Буферный регистр приемника 1 или 2
— | — |  | RSR[1,2] | Сдвиговый регистр приемника 1 или 2
— | — |  | XSR[1,2] | Сдвиговый регистр прередатчика 1 или 2
0020 | 0040 | — | DRR2x | Регистр данных приемника 2
0021 | 0041 | — | DRR1x | Регистр данных приемника 1
0022 | 0042 | — | DXR2x | Регистр данных прередатчика 2
0023 | 0043 | — | DXR1x | Регистр данных прередатчика 1
0038 | 0048 | — | SPSAx | Регистр субадреса
0039 | 0049 | 0x0000 | SPCR1x | Регистр управления последоват. порта 1
0039 | 0049 | 0x0001 | SPCR2x | Регистр управления последоват. порта 2
0039 | 0049 | 0x0002 | RCR1x | Регистр управления приемника 1
0039 | 0049 | 0x0003 | RCR2x | Регистр управления приемника 2
0039 | 0049 | 0x0004 | XCR1x | Регистр управления прередатчика 1
0039 | 0049 | 0x0005 | XCR2x | Регистр управления прередатчика 2
0039 | 0049 | 0x0006 | SRGR1x | Регистр тактового генератора 1
0039 | 0049 | 0x0007 | SRGR2x | Регистр тактового генератора 2
0039 | 0049 | 0x0008 | MCR1x | Мультиканальный регистр 1
0039 | 0049 | 0x0009 | MCR2x | Мультиканальный регистр 2
0039 | 0049 | 0x000A | RCERAx | Регистр разрешения приемников A
0039 | 0049 | 0x000B | RCERBx | Регистр разрешения приемников B
0039 | 0049 | 0x000C | XCERAx | Регистр разрешения прередатчиков A
0039 | 0049 | 0x000D | XCERBx | Регистр разрешения прередатчиков B
0039 | 0049 | 0x000E | PCRx | Регистр управления выводами

† RBR [1,2], RSR [1,2] и XSR [1,2] непосредственно не доступны ЦП или DMA.

5.5.2. Регистры управления портом

Последовательный порт конфигурируется через два 16-битных регистра управления последовательного порта (SPCR[1,2]) и регистр управления выводами (PCR). Формат этих регистров показан на рис. 5.8-5.10. SPCR[1,2] и PCR содержат информацию состояния McBSP и биты, которые могут быть сконфигурированы для желаемой операции. Описание назначения отдельных битов этих регистров приведено в табл. 5.10-5.12.

######

Внимание: R = Чтение, W = Запись, +0 = Состояние после сброса

###### Рисунок 5.8 – Регистр управления последовательного порта 1 (SPCR1)

Таблица 5.10. Назначение битов регистра управления 1 (SPCR1)

Бит | Имя | Функция
15 | DLB | Режим цифровой обратной связи (выкл/вкл)
14-13 | RJUST | Режим расширения знака и выравнивания приемника 00 Выравнивание вправо и заполнение старших 0 DRR[1,2] 01 Выравнивание вправо и заполнение старших знаком DRR[1,2] 10 Выравнивание влево и заполнение младших 0 DRR[1,2] 11 Резерв

12-11

CLKSTP

Режим останова тактового генератора (CSM)
0X CSM выключен. Нормальная синхронизация не SPI режима
10 и
CLKXP=0 Запускается положительным фронтом без задержки
CLKXP=1 Запускается отрицательным фронтом без задержки
11 и
CLKXP=0 Запускается положительным фронтом с задержкой
CLKXP=1 Запускается отрицательным фронтом с задержкой

10-8 | – | Резерв
7 | DXENA | Разрешение задержки DX (выкл/вкл)
6 | ABIS | Режим ABIS (режим A-bis выкл/вкл)
5-4 | RINTM | Режим прерывания от приемника 00 RINT управляется RRDY (конец слова) и конец фрейма в A-bis 01 RINT генерируется концом блока или фрейма в многоканальном 10 RINT генерируется новым сигналом синхронизации фрейма 11 RINT генерируется RSYNCERR
3 | RSYNCERR | Ошибка синхронизации приемника (определяется McBSP аппаратно)
2 | RFULL | Сдвигающий регистр приемника (RSR[1,2]) полон (RBR[1,2]&RSR[1,2])
1 | RRDY | Готовность приемника (готовы данные для чтения из DRR[1,2])
0 | /RRST | Сброс приемника. Это сброс или разрешение работы приемника. 0 Приемник последовательного порта выключен и сброшен 1 Приемник последовательного порта включен

######

###### Рисунок 5.9 – Регистр управления последовательного порта 2 (SPCR2)

Таблица 5.11. Назначение битов регистра управления 2 (SPCR2)

Бит | Имя | Функция
15-10 | – | Резерв
9 | FREE | Режим свободного выполнения (выкл/вкл)
8 | SOFT | Программный режим (выкл/вкл)
7 | /FRST | Сброс генератора сигналов синхронизации фрейма 0 Логика синхронизации фрейма сброшена. Сигнал синхронизации фрейма FSG не формируется тактовым генератором 1 Сигнал синхронизации фрейма FSG генерируется после (FPER+1) числа тактов CLKG; т.е. все счетчики фреймов загружаются этим программируемым значением
6 | /GRST | Сброс генератора тактов 0 Тактовый генератор сброшен 1 Тактовый генератор работает и CLKG управляется программируемым значением из регистра SRGR[1,2]
5-4 | XINTM | Режим прерывания от передатчика 00 XINT управляется XRDY (конец слова) и конец фрейма в A-bis 01 XINT генерируется концом блока или фрейма в многоканальном 10 XINT генерируется новым сигналом синхронизации фрейма 11 XINT генерируется XSYNCERR
3 | XSYNCERR | Ошибка синхронизации передатчика (определяется McBSP аппаратно)
2 | /XEMPTY | Сдвигающий регистр передатчика (XSR[1,2]) пуст (/XEMPTY=0)
1 | XRDY | Готовность передатчика (можно писать новые данные в DXR[1,2])
0 | /XRST | Сброс передатчика. Это сброс или разрешение работы передатчика. 0 Передатчик последовательного порта выключен и сброшен 1 Передатчик последовательного порта включен

######

###### Рисунок 5.10 – Регистр управления выводами (PCR)

Таблица 5.12. Назначение битов регистра управления выводами (PCR)

Бит | Имя | Функция
15-14 | – | Резерв
13 | XIOEN | Режим контактов I/O общего назначения передатчика (при XRST=0) 0 DX, FSX и CLKX конфигурируются как выводы последовательного порта, а не контакты I/O общего назначения 1 DX – выходной контакт I/O общего назначения; FSX и CLKX – контакты I/O общего назначения
12 | RIOEN | Режим контактов I/O общего назначения приемника (при RRST=0) 0 DR, FSR, CLKR и CLKS конфигурируются как выводы последовательного порта, а не контакты I/O общего назначения 1 DR и CLKS – входные контакты I/O общего назначения; FSR и CLKR – контакты I/O общего назначения
11 | FSXM | Режим синхронизации фрейма передатчика 0 сигнал синхронизации фрейма от внешнего источника 1 сигнал синхронизации фрейма задается битом FSGM в SRGR2
10 | FSRM | Режим синхронизации фрейма приемника 0 сигнал синхронизации фрейма от внешнего устройства. FSR – вход 1 сигнал синхронизации фрейма от внутреннего генератора. FSR – выход, за исключением если GSYNC=1 в SRGR

9

CLKXM

Режим тактирования передатчика
0 тактовый генератор передатчика внешний, вывод CLKX – вход
1 CLKX выходной контакт управляется внутренним генератором
В режиме SPI (когда CLKSTP не ноль):
0 McBSP – ведомый и CLKX управляется ведущим в системе SPI. CLKR внутренне объединен с CLKX.
1 McBSP – ведущий и генерирует частоту CLKX под управлениемCLKR и частотой сдвига, совместимыми с SPI ведомыми в системе

8

CLKRM

Режим тактирования приемника
Вариант 1: Нет цифровой обратной связи (DLB = 0) в SPCR1
0 Частота приемника (CLKR - вход) определяется внешним сигналом
1 CLKR является выходом и управляется внутренним генератором
Вариант 2: Есть цифровая обратная связь (DLB=1) в SPCR1
0 Частота приемника (не вывод CLKR) управляется частотой передатчика (CLKX) которая определяется CLKXM в PCR. Вывод CLKR в третьем состоянии
1 CLKR – выходной вывод и определяется частотой передачи. Частота передачи определяется CLKXM bit в PCR

7 | – | Резерв
6 | CLKS_STAT | Состояние вывода CLKS (когда CLKS – бит общего назначения)
5 | DX_STAT | Состояние вывода DX. (когда DX – бит общего назначения)
4 | DR_STAT | Состояние вывода DR. (когда DR – бит общего назначения)
3 | FSXP | Полярность сигнала синхронизации фрейма передачи 0 Импульс синхронизации фрейма FSX активный высокий 1 Импульс синхронизации фрейма FSX активный низкий
2 | FSRP | Полярность сигнала синхронизации фрейма приема 0 Импульс синхронизации фрейма FSR активный высокий 1 Импульс синхронизации фрейма FSR активный низкий
1 | CLKXP | Полярность частоты передачи 0 Передаваемые данный устанавливаются положительным CLKX 1 Передаваемые данный устанавливаются отрицательным CLKX
0 | CLKRP | Полярность частоты приема 0 Данные принимаются отрицательным фронтом CLKR 1 Данные принимаются положительным фронтом CLKR

5.5.3. Регистры управления приемом и передачей

Регистры управления приемом и передачей (RCR[1,2] and XCR[1,2]) задают различные параметры операций приема и передачи соответственно (рис. 5.11-5.14). Назначение отдельных битов этих регистров приведено в табл. 5.13-5.16).

######

###### Рисунок 5.11 – Регистр 1 управления приемом (RCR1)

Таблица 5.13. Назначение битов регистра 1 управления приемом (RCR1)

Бит | Имя | Функция
15 | – | Резерв
14-8 | RFRLEN1 | Длина 1-го принимаемого фрейма (- 1) от 1 до 128 слов на фрейм

7-5

RWDLEN1

Длина слова 1-го принимаемого фрейма:
000 8 бит
001 12 бит
010 16 бит
011 20 бит
100 24 бита
101 32 бита
11х резерв

4-0 | – | Резерв

######

###### Рисунок 5.12 – Регистр 2 управления приемом (RCR2)

Таблица 5.14. Назначение битов регистра 2 управления приемом (RCR2)

Бит | Имя | Функция
15 | RPHASE | Фазы приемника 0 фрейм с одной фазой 1 двухфазовый фрейм
14-8 | RFRLEN2 | Длина 2-го принимаемого фрейма (- 1) от 1 до 128 слов на фрейм

7-5

RWDLEN2

Длина слова 2-го принимаемого фрейма:
000 8 бит
001 12 бит
010 16 бит
011 20 бит
100 24 бита
101 32 бита
11х резерв

4-3 | RCOMPAND | Режимы сжатия данных. Режимы отличные от 00 доступны только для RWDLEN = 0 (8-битнык данные): 00 без сжатия, первый – старший бит 01 без сжатия, 8-битные данные, первый – младший бит 10 метод сжатия m-Law 11 метод сжатия A-Law
2 | RFIG | Игнорирование сигнала синхронизации фрейма приема: 0 сигнал синхронизации фрейма после первого перезапускает прием 1 сигнал синхронизации фрейма после первого игнорируется
1-0 | RDATDLY | Задержка принимаемых данных: 00 нет задержки данных 01 задержка данных на 1 бит 10 задержка данных на 2 бита 11 резерв

######

###### Рисунок 5.13 – Регистр 1 управления передачей (XCR1)

Таблица 5.15. Назначение битов регистра 1 управления передачей (XCR1)

Бит | Имя | Функция
15 | – | Резерв
14-8 | XFRLEN1 | Длина 1-го передаваемого фрейма (- 1) от 1 до 128 слов на фрейм

7-5

XWDLEN1

Длина слова 1-го передаваемого фрейма:
000 8 бит
001 12 бит
010 16 бит
011 20 бит
100 24 бита
101 32 бита
11х резерв

4-0 | – | Резерв

######

###### Рисунок 5.14 – Регистр 2 управления передачей (XCR2)

Таблица 5.16. Назначение битов регистра 2 управления передачей (XCR2)

Бит | Имя | Функция
15 | XPHASE | Фазы передатчика 0 фрейм с одной фазой 1 двухфазовый фрейм
14-8 | XFRLEN2 | Длина 2-го передаваемого фрейма (- 1) от 1 до 128 слов на фрейм
7-5 | XWDLEN2 | Длина слова 2-го передаваемого фрейма: 000 8 бит 100 24 бита 001 12 бит 101 32 бита 010 16 бит 11х резерв 011 20 бит
4-3 | XCOMPAND | Режимы сжатия данных. Режимы отличные от 00 доступны только для RWDLEN = 0 (8-битнык данные): 00 без сжатия, первый – старший бит 01 без сжатия, 8-битные данные, первый – младший бит 10 метод сжатия m-Law 11 метод сжатия A-Law
2 | XFIG | Игнорирование сигнала синхронизации фрейма передачи: 0 сигнал синхронизации фрейма после первого перезапускает передачу 1 сигнал синхронизации фрейма после первого игнорируется
1-0 | XDATDLY | Задержка передаваемых данных: 00 нет задержки данных 01 задержка данных на 1 бит 10 задержка данных на 2 бита 11 резерв

Оглавление | Программа | Теория| Практика | Контроль знаний | Об авторах
© БГУИР , 2012