Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МПСИС_shpora_ch2.doc
Скачиваний:
20
Добавлен:
15.06.2014
Размер:
903.68 Кб
Скачать

8.Гарвардская архитектура цсп

Используя ШД, мы можем изменять память, а ШП позволяет только считывать данные

С5510 – модифицированная гарвардская архитектура. Память данных и память программ едины, но шины для доступа к данным и программам различны. Соответственно, через шину данных нельзя получить доступ к программам.

9.Архитектура с5510(общий вид)

ARn, CDP – регистры общего назначения.

Шина В имеет доступ только ко внутренней памяти.

Буфер команд позволяет разгрузить процессор и избежать остановки процессор в случае нехватки исполняемых команд.

A – адрес программ

D – данные программ

10-11.Основные характеристики микропроцессора C5510

Память программ адресуется байтами, память данных – словами.

  1. Адресуемое пространство –16Мх8

  2. C5510 –160Kслов ОЗУ (внутренняя память)

  3. 23-бит адресные регистры(ARx)

  4. Два АЛУ (16-, 40 бит) – одно основное, второе – для формирования адресов

  5. Dual-MAC (Два MACмодуля)

  6. 4х40-бит аккумулятора(ACx)

  7. 4 временных регистра (T)

  8. Переменная длинная команды(1-6 байт)

  9. 64х8 буфер команд (При циклическом повторении команд, которые находятся в буфере, происходит экономия энергии, т.к. эти команды не требуется перезагружать)

  10. Выполнение параллельных инструкций (сложение, сдвоенное умножение с накоплением, загрузка и пр.)

  11. Аппаратная защита конвейера

  12. Аппаратная поддержка двух вложенных циклов (при поиске мин и макс значений)

  1. 12 независимых шин

    1. 3 шины чтения данных (BD,CD,DD) (16-ти разрядные)

    2. 2 шины записи данных(ED, FD) (16-ти разрядные)

    3. 5 шин адреса данных(BA,CA,DA,EA,FA) (24-х разрядные)

    4. 1 шина чтения программ(PD) (32-х разрядная)

    5. 1 шина адреса чтения программ(PA) (24-х разрядная)

13.Свертка для с5510

Инкремент CDP выполняется только один раз, несмотря на сдвоенную операцию умножения с накоплением (:: -- обозначают сдвоенную операцию).

15.P-Mодуль и I-Модуль

I-Модуль – блок буфера инструкций. В течение каждого цикла ЦП принимает 4 байта программного кода в буфер инструкций и затем декодирует один из шести байтов, полученных ранее. Все константы, которые были закодированы в команде, извлекаются в данном блоке, а затем пересылаются другим блокам.

Когда ЦП готов, декодер считывает из буфера 6 байт, определяет нужно ли выполнять инструкции параллельно.

ЦП осуществляет единовременно 32-х разрядную выборку из памяти программ.

Р-Модуль – блок операций с адресами команд. Котролирует последовательность инструкций при аппаратном зацикливании, условном переходе и т.п.

16.A-Модуль

А-Модуль – блок операций с адресами данных, генерирует адреса пространства данных.

Вся память делится на страницы по 16Кслов (128 страниц).

АЛУ осуществляет операции сдвига, насыщения, логические и арифметические операции.

17.D-Модуль

D-Модуль – содержит основные вычислительные блоки.

При использовании двух шин записи выполняется запись 32 бит за один цикл.

19.Ресурсы памяти c5510

Все шины, имеющие доступ к внешней памяти мультиплексированы, кроме шины D.

20.Расширенный интерфейс к памяти (EMIF)

SBSRAM – синхронная буферизированная память

SDRAM - синхронная динамическая память

DMAобмен данными в обход ЦП

CLKMEM – тактирование

Большинство устройств подключаются как асинхронная память, т.к. такой вид памяти обеспечивает большую гибкость.

21.Карта памяти микропроцессора С5510

MTYPE – тип подключаемой памяти.

Синхронная память требует настроек, потому она имеет возможность подстройки к любой схеме.

22.Периферия микропроцессора С5510

McBSP – многоканальный буферизированный передатчик.

GPIO - выводы общего назначения

Power – расширенная система энергосбережения

DMA – взаимодействует со всеми устройствами и памятью для передачи информации

Timers – могут использоваться для тактирования

Cashe – отвечает за хранение промежуточных данных

23.Работа микропроцессора в режиме реального времени

Используется схема двойной буферизации (применяется в системах реального времени), время обработки кратно времени заполнения буфера.

18-Основы управления памятью

1.Унифицированная память микропроцессора С5510

MMRs – область памяти регистров, отображаемых на память.

DARAM – ОЗУ с двойным доступом.

SARAM – ОЗУ с одинарным доступом.

Эти три области составляют внутреннюю память микропроцессора С5510.

2.Распределение ПО между секциями памяти

Секция глобальных переменных (.bss) определяет область в памяти для глобальных переменных.

Printf() – нештатная функция, выполняемая МП и возвращающая результат в среду. Секция .cio отвечает за нештатные функции, соответственно, если в программе не будет нештатных функций, то и области памяти этой секции также не будет.

3.Имена секции компилятора

Для секций, чья память не инициализируется (.bss или .far, .stack, .sysmem, .cio), в адресном пространстве выделяется область, но значения в ней не инициализируются. Значения в памяти будут случайны.

4.Размещение секций в памяти процессора

Данные области необходимо правильно разместить в памяти. Чтобы программа работала правильно и автономно, эти области часто размещают во FLASH, а затем загружают во внутреннюю память. Иногда, если нужно разместить большой массив данных, эти области помещают во внешнюю память.

7.Генерируемые CDB файлы средствами конфигурирования

CDB – файл компоновки.

В разделе MEMORY указывается автоматическое расположение памяти. В параметре org указывается начало той или иной памяти, а в параметре len – ее длина.

SECTIONS содержит описание размещения в памяти различных секций программы. Указанные в примере секции будут размещены: .bss в DARAM, .text в SARAM.

8.Командный файл компоновщика

Компоновщик получает исполняемый файл. Для этого ему необходимы указанные файлы. Данные лучше размещать в DARAM, если её не хватает, то оставлять в FLASH.

9.Размещение программ и данных во внешней и внутренней памяти

Впользовательском файле .cmd для массив coeff_sect помещается в специально выделенное адресное пространство SARAM_A.

Данные лучше размещать в DARAM, т.к. к ним может требоваться неоднократное параллельное обращение, если же данных слишком много и памяти не хватает, то их можно оставить во FLASH. Память с одиночным доступом используют для размещения программ, а с двойным доступом – для размещения неизменных констант.

10.Расширенный интерфейс к памяти (EMIF)

Интерфейс EMIF обеспечивает связь между внутренней памятью (блоками) и внешней памятью.

К каждому из четырех независимых пространств через EMIF могут подключаться: SBSRAM – синхронная буферизируемая память, SDRAM – синхронное динамическое ОЗУ и Асинхронная память. SBSRAM и SDRAM поддерживаются автоматически.

12.Асинхронная память

SRAM – статическое ОЗУ, не требующее обновления.

CEx – сигнал, определяющий, к какому подпространству будет происходить обращение.

BE[3:0] – определяет чтение слова, двух слов или байта из памяти.

D – 8-ми, 16-ти, 32-ух разрядная шина данных.

10 нс достаточно для качественной записи данных.

13.Асинхронная память

SETUP – время установки.

STROBE – основной строб.

HOLD – режим захвата (дополнительные такты для выполнения правильного чтения или записи).

Даже если в STROBE и SETUP поместить «0», автоматически добавиться «1».

Максимальная задержка в регистрах SCR1 и SCR2 составляет 255 тактов. После задержки в 255 тактов дальнейшая задержка воспринимается как зависание и процессор сбрасывается. Чтобы получить задержку более 255 тактов можно расширить поля SETUP, STROBE, HOLD за счет сигнала готовности.

Максимальная задержка говорит о том, что чтение будет идти наиболее медленно данные будут гарантированно прочитаны.

В С5510 тактовая частота составляет 200МГц. Соответственно один такт длиться 5нс. Значит, подключать память быстрее 10нс нет необходимости.

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