|
||||||||||||||||||||||||||||||||
Меню:
Главная
Форум
Литература: Программирование и ремонт Импульсные блоки питания Неисправности и замена Радиоэлектронная аппаратура Микросхема в ТА Рубрикатор ТА Кабельные линии Обмотки и изоляция Радиоаппаратура Гибкие диски часть 2 часть 3 часть 4 часть 5 Ремонт компьютера часть 2 Аналитика: Монтаж Справочник Электроника Мощные высокочастотные транзисторы 200 микросхем Полупроводники ч.1 Часть 2 Алгоритмические проблемы 500 микросхем 500 микросхем Сортировка и поиск Монады Передача сигнала Электроника Прием сигнала Телевидиние Проектирование Эвм Оптимизация Автомобильная электроника Поляковтрансиверы Форт Тензодатчик Силовые полевые транзисторы Распределение частот Резисторные и термопарные Оберон Открытые системы шифрования Удк |
[47] 822. Режимы переноса DMA Контроллер DMA имеет шесть режимов переноса, определяемых битами DMADTx, в соответствии с таблицей 8-1. В каждом канале режим переноса конфигурируется индивидуально. К примеру, канал 0 может быть сконфигурирован в одиночном режиме переноса, канал 1 в режиме пакетно-блочного переноса, а канал 2 работать в повторяющемся блочном режиме. Режим переноса конфигурируется независимо от режима адресации. Любой режим адресации можно использовать в любом режиме переноса. Таблица 8-1. Режимы переноса DMA
Одиночный перенос В одиночном режиме переноса пересылка каждого байта/слова требует отдельного запуска. Диаграмма состояний при одиночном переносе показана на рис. 8-3. DMAEN = 0 DMAREQ = 0 T Size -► DMAxSZ [DMADTx = 1 и DMAxSZ = 0] или DMAEN = 0 DMAABORT=1 s----DDMaxSZ -► T Sizeч ( DMAxSA T SourceAdd 1 NDMAxDA -► T DestAdd ./ Ожидание DMAABORT = 0 [ENNMI=1 и NMI событие или [DMALEVEL= 1 и запуск= 0] [+ЗапускиDMALEVEL=0 ] или [Запуск=1 и DMALEVEL = 1 ] Останов ЦПУ, перенос одного байта/слова DMAxSZ > 0 и DMAEN = 1
DMADTx =4 и DMAxSZ = 0 и DMAEN = 1 Декремент DMAxSZ """"Ч. -( Модификация T SourceAdd j- хМодификация T DestAdd DMAEN = 0 DMAEN = 1 DMAREQ=0 Рис. 8-3. Диаграмма состояний одиночного переноса DMA Регистр DMAxSZ используется для задания числа переносов, которые нужно выполнить. Биты DMADSTINCRx и DMASRCINCRx выбираются, если адрес получателя и адрес источника инкрементируются или декрементируются после каждого переноса. Если DMAxSZ=0, переносы не выполняются. Регистры DMAxSA, DMAxDA и DMAxSZ копируются во временные регистры. Временные значения DMAxSA и DMAxDA инкрементируются или декремен-тируются после каждого переноса. Регистр DMAxSZ декрементируется после каждого переноса. Когда регистр DMAxSZ декрементируется до нуля, он перезагружается из временного регистра и происходит установка соответствую- щего флага DMAIFG. Когда DMADTx=0, бит DMAEN автоматически очищается, когда DMAxSZ декрементируется до нуля и он должен быть снова установлен для выполнения другого переноса. В повторяющемся одиночном режиме переноса контроллер DMA остается включенным с DMAEN=1, и переносы выполняются каждый раз при появлении условия запуска. Блочные переносы В блочном режиме перенос полного блока данных выполняется после всего лишь одного запуска. Когда DMADTx=1, бит DMAEN очищается после завершения переноса блока и должен быть установлен снова перед запуском переноса другого блока. После запуска переноса блока все последующие сигналы запуска, поступающие в ходе выполнения блочного переноса, игнорируются. Диаграмма состояний блочного переноса показана на рис. 8-4. Регистр DMAxSZ используется для задания размера блока, а биты DMADSTINCRx и DMASRCINCRx выбираются, если адрес получателя и адрес источника инкрементируется или декрементируется после каждого переноса блока. Если DMAxSZ=0, переносы не выполняются. Регистры DMAxSA, DMAxDA и DMAxSZ копируются во временные регистры. Временные значения DMAxSA и DMAxDA инкрементируются или декремен-тируются после каждого переноса в блоке. Регистр DMAxSZ декрементируется после каждого переноса блока и содержит количество оставшихся в блоке переносов. Когда регистр DMAxSZ декрементируется до нуля, он перезагружается из временного регистра, и устанавливается соответствующий флаг DMAIFG. В процессе переноса блока ЦПУ приостанавливается до завершения переноса блока. Для выполнения поблочного переноса необходимо 2xMCLKxDMAxSZ тактовых циклов. После завершения переноса блока ЦПУ возобновляет работу с предыдущего состояния. В режиме повторяющегося блочного переноса бит DMAEN остается установленным после завершения переноса блока. Следующий после завершенного повторяющегося блочного переноса сигнал запуска запустит другой блочный перенос. Пакетно-блочные переносы В пакетно-блочном режиме переносы блоков, чередуются с работой ЦПУ. ЦПУ выполняет 2 MCLK цикла после переноса каждых четырех байт/слов блока. В результате производительность ЦПУ составляет 20% от номинальной. После завершения пакетно-блочного переноса ЦПУ вновь начинает работать со 100% производительностью, а бит DMAEN очищается. DMAEN должен быть установ- |
Среды: Smalltalk80 MicroCap Local bus Bios Pci 12С ML Микроконтроллеры: Atmel Intel Holtek AVR MSP430 Microchip Книги: Емкостный датчик 500 схем для радиолюбителей часть 2 (4) Структура компьютерных программ Автоматическая коммутация Кондиционирование и вентиляция Ошибки при монтаже Схемы звуковоспроизведения Дроссели для питания Блоки питания Детекторы перемещения Теория электропривода Адаптивное управление Измерение параметров Печатная плата pcad pcb Физика цвета Управлении софтверными проектами Математический аппарат Битовые строки Микроконтроллер nios Команды управления выполнением программы Перехода от ahdl к vhdl Холодный спай Усилители hi-fi Электронные часы Сердечники из распылённого железа Анализ алгоритмов 8-разрядные КМОП Классификация МПК История Устройства автоматики Системы и сети Частотность Справочник микросхем Вторичного электропитания Типы видеомониторов Радиобиблиотека Электронные системы Бесконтекстный язык Управление техническими системами Монтаж печатных плат Работа с коммуникациями Создание библиотечного компонента Нейрокомпьютерная техника Parser Пи-регулятор ч.1 ПИ-регулятор ч.2 Обработка списков Интегральные схемы Шина ISAВ Шина PCI Прикладная криптография Нетематическое: Взрывной автогидролиз Нечеткая логика Бытовые установки (укр) Автоматизация проектирования Сбор и защита Дискретная математика Kb радиостанция Энергетика Ретро: Прием в автомобиле Управление шаговым двигателем Магнитная запись Ремонт микроволновки Дискретные системы часть 2 | ||||||||||||||||||||||||||||||