Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы_v3.doc
Скачиваний:
5
Добавлен:
01.05.2025
Размер:
1.02 Mб
Скачать

4. Вычислительное ядро и система ввода-вывода в стенде sdk-1.1

Ядро стенда SDK-1.1:

- Ядро семейства 8051

В ядре реализована типичная CISC-архитектура, большинство элементов ядра имеют байтовую организацию.

- Внутрисистемные интерфейсы МК AduC812

- Адресное пространства внешней памяти программ и данных, а также блоков памяти:

+ 8Kb Flash память программ

+ 256 байт ОЗУ данных

+ 640 байт странично-огранизованной EEPROM – 160 страниц по 4 байта для данных

Д оступ к внешней памяти программ осуществляется в двух случаях:

- при действии сигнала EA=0 независимо от адреса обращения

- в любом случае, если программный счетчик (РС) содержит число большее, чем максимальная ячейка внутренней памяти программ (больше 0x1FFF, т.е. больше 8 Кб

Flash).

В стенде SDK-1.1 EA = 1 (см. рис. 3), поэтому при подаче питания или после

перезапуска начинает исполняться загрузчик во Flash-памяти МК ADuC812. Этот загрузчик

ждет пользовательскую программу, которую (в качестве исполнительного модуля)

«получает» по коммуникационному интерфейсу RS-232 от персонального компьютера. Далее загрузчик записывает эту программу в внешнюю память программ и данных и передает ей управление (по умолчанию, по адресу 0x2100), и она исполняется.

ОЗУ данных AduC812

Адреса 0x00-0x7F – выборка одинаковых ячеек при прямой и косвенной адресации

Адреса 0x80-0xFF – регистры SFR для работы с ПУ при прямой адресации

- внутренний стек при косвенно-регистровой адресации

Система ввода-вывода SDK-1.1

К системе ввода вывода относятся:

- Схема ПЛИС, подключенная по системному интерфейсу

Реализует взаимосвязь микроконтроллера со следующими ПУ:

- ЖК дисплей

- Матричная клавиатура

- Звуковой излучатель

- Управляемые светодиоды (8 шт)

- Ручные переключатели тестовых сигналов (16 шт)

- Дискретные входы/выходы (x4)

- Аналоговые выходы (x2) – через 12-бит ЦАП

- Аналоговые входы (x8) – через 12-бит АЦП

- UART, связующий ядро с интерфейсом RS-232C

- Интерфейсы I2C (RTC и внешняя EEPROM 256 байт) и SPI

- Подсистема прерываний

5. Назначение и организация расширителя портов ввода/вывода в sdk-1.1.

В стенде 8РК-1.1 взаимодействие с периферией осуществляется с помощью микросхемы ПЛИС МАХ8064 (МАХ8128), которая служит расширителем портов. Благодаря такой реализации стенд имеет 7 дополнительных регистров, отображаемых во внешнее адресное пространство контроллера.

С точки зрения программиста ПЛИС выглядит как область памяти с 7-ью регистрами.

Адрес

Регистр

Доступ

Назначение

080000Н

KB

R/W

Регистр клавиатуры

080001Н

DATAIND

R/W

Регистр шины данных ЖКИ

080002Н

EXTLO

R/W

Регистр данных параллельного порта, младшие биты (0..7)

080003Н

EXTJfl

R/W

Регистр данных параллельного порта, старшие биты (8..15)

080004Н

ENA

W

Регистр управления портами ввода-вывода, звуком, сигналом ШТ0 и прерыванием от клавиатуры.

080006Н

C_IND

W

Регистр управления ЖКИ

080007Н

SV

W

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

Доступ к регистрам ПЛИС

Поскольку регистры-расширители отображены на начало 8-ой страницы внешней памяти стенда (адреса 080000Н:080007Н) Для программиста расширитель портов представлен в виде нескольких однобайтных регистров, расположенных в начале восьмой страницы внешней памяти. Посредством этих регистров производится управление периферией стенда.

Для доступа к регистрам ПЛИС нужно переключить страничный регистр DPP на 8 страницу памяти. Адреса регистров внутри страницы находятся в диапазоне от 0 до 7.

В SDK-1.1 используется программируемая логическая интегральная схема (ПЛИС) семейства MAX3000A фирмы Altera. В очень упрощенном виде ПЛИС представляет собой набор макроячеек и механизм для организации связи между ними. Микросхема EPM3064A содержит 64 макроячейки. Информация о связях между макроячейками хранится в энергонезависимой памяти находящейся внутри самой микросхемы.

Для программирования EPM3064A использовался специальный САПР Max+PlusII. Электрическая принципиальная схема расширителя портов ввода-вывода была нарисована в этом САПР и преобразована в базис макроячеек ПЛИС и, далее, в конфигурационный файл, необходимый для соединения нужных логических ячеек ПЛИС.

Конфигурационный файл доставляется в память ПЛИС через интерфейс JTAG (IEEE 1149.1). В стенде SDK-1.1 MAX3064A используется как расширитель портов ввода-вывода. Микросхема MAX3064A подключена к внешней шине ADuC812. Адресная линия A19 используется как сигнал CS (chip select) для MAX3064A. ПЛИС выбирается, когда на линии A19 логическая единица. Физический адрес ПЛИС таким образом равен 0x80000, что соответствует восьмой странице памяти.

Характеристики: энергонезависимая, 1250 вентилей, 64 макроячейки, 4 логических блока, 100 перезаписей.

Макроячейка – комбинационная логика+регистры(триггеры)+мультиплексоры