Организация памяти программ процессора TMS320VC5402

Большинство процессоров C54x могут адресовать до 64К 16-разрядных слов внешней памяти программ. Они имеют расположенные на кристалле ROM, DARAM, SARAM, которые могут быть отображены на пространство памяти программ. Когда ячейки памяти отображены на пространство программ, C54x автоматически обращается к этим ячейкам памяти, когда адреса попадают в границы внутренней памяти. Когда генератор адресов программы (PAGEN) генерирует адрес за пределами границы внутренней памяти, процессор автоматически генерирует внешние сигналы доступа к памяти.

Биты MP/#MC и OVLY определяют, какие внутренние блоки памяти включаются в пространство памяти программ.

При сбросе логический уровень с вывода MP/#MC копируется в бит состояния MP/#MC в регистре PMST и определяет доступ к внутреннему ПЗУ. Если MP/#MC=1 – устройство сконфигурировано как микропроцессор и ПЗУ недоступно. Если вывод MP/#MC=0 – устройство сконфигурировано как микроЭВМ и ПЗУ доступно. Состояние вывода MP/#MC имеет значение только при сбросе, однако, Вы можете отключать или включить ПЗУ программно установкой или сбросом бита MP/#MC в регистре PMST.

ПЗУ большого объема разделяется на части и организовано в виде блоков, чтобы повысить эффективность. Например, блочная организация дает возможность Вам выбирать команду из одного блока ПЗУ, выбирая при этом данные из другого блока ПЗУ. В зависимости от устройства ПЗУ разбивается на блоки 2К, 4К или 8К (в процессоре 5402 ПЗУ на блоки не разбивается).

При начальном сбросе процессора вектора сброса, прерываний и ловушек отображаются на страницу длиной 128 слов с начальным адресом FF80h в пространстве памяти программ. Однако эти вектора могут быть повторно переопределены на начало любой страницы длиной 128 слов в пространстве программы после сброса устройства. Это облегчает перемещение таблицы векторов из ПЗУ начальной загрузки в ОЗУ и затем удаление ПЗУ из карты памяти.

ПЗУ в зависимости от процессора может содержать один или несколько следующих элементов:

- программа-загрузчик, которая выполняет загрузку из последовательных портов, внешней памяти, портов ввода/вывода или главного портового интерфейса (HPI);

- таблица преобразования M-law длиной 256 слов;

- таблица преобразования A-law длиной 256 слов;

- таблица значений синуса длиной 256 слов;

- таблица векторов прерываний.

Ряд процессоров имеют расширенную память программ и используют страничную схему дополнительной памяти программ до 8192К слов. Для этого процессор C5402 включает несколько дополнительных элементов:

- 20 линий адреса, вместо 16;

- дополнительный регистр с отображением на память, для расширения счетчика программы (XPC);

- шесть дополнительных команд для адресации расширенного программного пространства.

Значение в XPC определяет страницу. Этот регистр доступен в пространстве памяти данных по адресу 001Eh. При аппаратном сбросе XPC устанавливается в 0.

Чтобы облегчить коммутацию страниц программным обеспечением C5402 имеет шесть специальных команд, которые воздействуют на XPC:

FB - дальний переход;

FBACC - дальний переход по адресу из аккумулятора;

FCALA - дальний вызов подпрограммы по адресу из аккумулятора (;

FCALL - дальний вызов подпрограммы;

FRET - дальний возврат;

FRETE - дальний возврат с разрешением прерываний.

Следующие команды расширены, чтобы использовать 20 битов адреса:

READA - читать память программ, адресованную аккумулятором А и сохранить в памяти данных;

WRITA - записать данные в память программ, адресованную аккумулятором A.

Все другие команды не изменяют XPC и обращаются только к памяти внутри текущей страницы.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: