Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Блочная передача и режим повтораСодержание книги
Похожие статьи вашей тематики
Поиск на нашем сайте
Под понятием блочной передачи подразумевается операция выполнения передачи всех требуемых данных, которые измеряются в байтах и задаются размером блока. Размер блока задается в 16-битном регистре счетчика блока передачи (TRFCNT), который позволяет задавать величину блока до 64 Кбайт. Значение ноль – соответствует размеру блока 64 Кбайт. Размер блока не должен быть кратным количеству байтов пакетной передачи, передача данных остановится, когда все байты блока будут переданы. Например, используя режим четырехбайтной пакетной передачи с размером блока в 10 байт, передача будет выполнена двумя полными передачами данных и одной заключительной двухбайтной передачей. Для увеличения количества передаваемых данных более 64 Кбайт, может быть использован счетчик повторов блочной передачи требуемое количество раз. Общая сумма переданных данных будет равна величине блока умноженной на значение счетчика повторов. Режим повтора включается установкой бита режима повтора (REPEAT) в регистре управления каналом (CTRL). Информация о количестве повторений находится в регистре счетчика повторов (REPCNT). При использовании 8-битного счетчика повторений контроллер DMA может передать 16 Мбайт данных без вмешательства центрального процессора. Также возможно достичь бесконечного числа повторений, установкой разрешения режима повтора и настроив счетчик повторов в ноль. Рис.1 иллюстрирует блочную передачу в примере передачи посылке данных DMA.
DMA посылка Понятие DMA посылки в данном контексте означает полную процедуру, включающую в себя передачу всех данных с учетом повторных блочных передач. DMA посылка начинается с первого DMA запроса, после подготовки канала и заканчивается когда все блочные передачи завершены и счетчик повторений равен нулю. Рис.1 иллюстрирует различие между передачей данных, блочными передачами и DMA посылкой. Рис.1. Передача данных, блочная передача и DMA посылка Режимы адресации По умолчанию адреса источника и приемника фиксированы все время, пока идет передача, это означает, что каждая передача данных по каналу копирует данные из одной области памяти в другую. Такой режим удобен, например, для прямой пересылки данных от одного периферийного устройства другому. Длина пакета определяет количество байтов, копируемое в течение каждой передачи данных, но адреса источника и приемника остаются фиксированным для каждого доступа. Например, при четырехбитном пакетном режиме один и тот же бит будет копироваться четыре раза в течение каждой передачи данных. Для применений, где данные должны храниться в массивах, контроллер DMA может быть настроен на увеличение или уменьшение адреса получателя после каждого доступа к байту. Точно также, когда данные должны быть получены из массива, контроллер DMA может быть настроен на увеличение или уменьшение адреса источника после каждого доступа к байту. И, наконец, при копировании данных из одного массива в другой адреса и источника и получателя могут быть увеличены или уменьшены после каждого доступа к байту. Режимы адресации настраиваются в битовых полях режима адреса источника и получателя (SRCDIR и DESTDIR) по каждому каналу отдельно в регистре управления адресацией (ADDRCTRL). Примеры различных режимов адресации показаны на следующем рисунке: Перезагрузка адреса При использовании режима увеличения или уменьшения адреса должно происходить обновление адреса после каждого доступа. Однако, во многих применениях указатель адреса источника или получателя сбрасывается в начало массива в определенные моменты времени. В течение DMA посылки первичные адреса источника и получателя сохраняются в контроллере DMA и могут быть индивидуально настроены на перезагрузку по следующим условиям: 1. - конец каждой передачи; 2. - конец каждой блочной передачи; 3. - конец посылки; 4. - никогда не перезагружать. Например, перезагрузка адреса после каждой передачи данных может быть использована совместно с 8-битным пакетным режимом для повторяющегося чтения всех четырех результатов преобразования АЦП микропроцессора XMEGA и записи данных в массив. 8-битный пакетный режим гарантирует, что все четыре результата преобразования АЦП будут прочитаны разом и без использования центрального процессора, а указатель на адрес источника перезагрузится в начальное положение (на первый регистр результата АЦП) по завершению придачи данных. Отметим, что при использовании перезагрузки адреса после передачи пакета и общего количества байтов передачи некратного размеру пакета, передача последнего пакета будет остановлена по передаче последнего байта из общего количества байтов передачи, после чего также произойдет перезагрузка адреса. Например, используя 4-битную пакетную передачу с 17-байтным блоком, перезагрузка будет происходить после 4-го, 8-го, 12-го, 16-го и 17-го байтов. Настройка перезагрузки адреса для источника и получателя осуществляется в битовых полях SRCRELOAD и DESTRELOAD по каждому каналу отдельно в регистре управления адресом (ADDRCTRL).
|
||||
Последнее изменение этой страницы: 2016-12-30; просмотров: 592; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.144.224.30 (0.008 с.) |