Компоненты встроенных систем 1 Таймер


Контроллер прямого доступа к памяти



Pdf көрінісі
бет13/13
Дата30.01.2023
өлшемі341,06 Kb.
#63759
1   ...   5   6   7   8   9   10   11   12   13
Байланысты:
Tema4

 
4.8 Контроллер прямого доступа к памяти
Обмен данными микропроцессора с медленнодействующими
периферийными устройствами (ПУ) обычно организуется по прерываниям 
или по программному опросу. Однако при передаче между основной и
внешней памятью микро-ЭВМ больших блоков данных (десятки байт и
более) производительность процессора в этих режимах является недостаточ-
ной.
Скорость передачи данных в режиме программного ввода-вывода
ограничивается только процессором. Поэтому для передачи данных меж-
ду


устройствами внешней памяти и ОЗУ разработан специальный метод переда-
чи данных без участия процессора, получившего название прямого дос-
тупа к памяти (Direct Memory Access, DMA). Аппаратные средства реализа-
ции канала ПДП называются контроллером прямого доступа к памяти 
(КПДП).
DMA-контроллер содержит несколько регистров, доступных центрально-
му процессору для чтения и записи. Обычно эти регистры задают порт (или 
канал), который должен быть использован; направление переноса данных
(чтение/запись); единицу переноса (побайтно/пословно); число байтов, кото-
рое следует перенести; адрес.
Необходимо отметить, что контроллер ПДП используется не только
для передачи данных между ПУ и памятью, но и из памяти в память, и из ПУ 
в ПУ.
В идеальном случае режим ПДП совершенно не должен влиять на
действия процессора, но для этого потребуется сложный и дорогой
тракт в основную память вычислительной системы. Поэтому в большин-
стве систем используется временное разделение (мультиплексирование)
общей системной шины между процессором и КПДП.
Разработано две разновидности ПДП: режим без пропусков тактов
микропроцессора и режим с пропуском тактов микропроцессора.
В первом режиме реализации прямой доступ осуществляется без участия
процессора (параллельно микропроцессору). Для этого используются те
интервалы машинных циклов, в течение которых микропроцессор не
обращается к основной памяти. Процессор (или дополнительная схема)
идентифицирует эти интервалы для КПДП специальным сигналом,
означающим доступность системной шины. Производительность процессора 
в этом режиме не уменьшается, но для каждого типа процессора потре-
буется свой контроллер ПДП. С другой стороны, сами передачи будут
носить нерегулярный характер ввиду отсутствия у некоторых команд этих 


интервалов, что приведет к уменьшению скорости передачи данных в режи-
ме ПДП.
Во втором способе реализации КПДП полностью ″захватывает″ систем-
ную шину на время передачи, при этом процессор отключается от системной 
шины и переходит в режим холостого хода. Таким образом, передачи
ПДП осуществляются путем пропуска тактов процессора в выполняемой 
программе. При выполнении передач ПДП содержимое внутренних регист-
ров процессора не модифицируются, поэтому его не нужно запоминать в
памяти, а затем восстанавливать, как при обработке прерываний. Выпол-
нение программы осуществляется сразу после окончания ПДП. Тем не
менее, в условиях интенсивных передач ПДП эффективная производи-
тельность процессора уменьшается.
Обычно блоками ПДП снабжаются сравнительно мощные модели
микроконтроллеров. В основном ПДП используется для взаимодействия па-
мяти с устройствами ввода-вывода, которые могут создать большой поток 
данных: сетевыми контроллерами, UART, ЦАП и АЦП.
Как правило, блок ПДП программисты встроенных систем, особенно
начинающие, стараются обходить стороной, считая его излишне сложным. 
На самом деле, использование ПДП не является более сложным, чем,
например, использование системы прерываний, а эффект от применения
ПДП может разгрузить центральный процессор и увеличить производи-
тельность контроллера.
4.9 Средства понижения энергопотребления
Практически все современные микроконтроллеры имеют встроенные
средства понижения энергопотребления, позволяющие отключать не
используемые в данный момент блоки, понижать тактовую частоту процес-
сора и переходить в различные режимы сна.


Достарыңызбен бөлісу:
1   ...   5   6   7   8   9   10   11   12   13




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет