реклама на сайте
подробности

 
 
> DMA на шине PCI, непонятки =(
Murr Von Kater
сообщение Jul 10 2006, 17:16
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 11-04-06
Из: Украина, Днепр(самтаймз Эстония :)
Пользователь №: 16 022



Доброго всем времни суток. Пытаюсь реализовать DMA c усторойством на PCI. Честно говоря абсолютно не понятно, как ПДП организован в PCI. Не могу найти нормальных описаний протоколов PC/PCI & DDMA. Так же непонятки с драйверами к этому всему под Линух. LDD добавило еще больше вопросов чем ответов blink.gif . У кого есть подробное описание всего вышеперечисленного, прошу поделиться( на фтп тоже не нашел ничего полезного, на 800-ах страницах PCI system architecture это даже не упоминается).

И еще вопрос: обязательно ли мое устройство, с которым планируется обмен данными ПДП, должно быть мастером? Можно ли каким-то образом дать команду хосту к инициализации передачи данных по DMA?

За любую инфу заранее спасибо.


--------------------
С утра нет желания работать? Откройте журнал "Форбс" и найдите там свою фамилию... Не нашли? Поднимайтесь и марш на работу!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
mkalexey
сообщение Jul 18 2006, 06:32
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 86
Регистрация: 12-04-05
Пользователь №: 4 066



Доброго всем дня!
Небольшая цитата для обобщения.
Михаил Гук "Аппаратные интерфейсы ПК"
Цитата
Шина PCI не предоставляет возможности прямого достуступа к памяти с использованием централизованного контроллера в стиле 8237А (как для шины ISA). Для разгрузки центрального процессора от рутинных перекачек данных предлагается прямое управление шиной со стороны устройств, называемых ведущими устройствами шины (PCI Bus Master). Степень интеллектуальности ведущего устройства может быть различной. В простейшем варианте ведущее устройство обеспечивает пересылку блоков данных между устройством и системной памятью (или памятью других устройств) по указанию от CPU. Здесь CPU командами обращения к определенным регистрам ведущего устройства задает начальный адрес, длину блока, направление пересылки и разрешает запуск переда¬чи. После этого пересылка выполняется по готовности (или инициативе) устройства, без отвлечения CPU. Таким образом выполняется прямой доступ к памяти (DMA). Более сложный контроллер DMA может организовывать сцепку буферов при чтении, разбросанную запись и т. п. — возможности, знакомые еще по «про¬двинутым» контроллерам DMA для ISA/EISA. Более интеллектуальное ведущее устройство, как правило, обладающее собственным микроконтроллером, не огра¬ничивается такой простой работой по указке CPU — оно выполняет обмены уже по программе своего контроллера.

з.ы. Советую прочитать.
Удачи. smile.gif


--------------------
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 12th August 2025 - 15:36
Рейтинг@Mail.ru


Страница сгенерированна за 0.01288 секунд с 7
ELECTRONIX ©2004-2016