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

 
 
> 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
Ответов
makc
сообщение Jul 10 2006, 17:32
Сообщение #2


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



В архитектуре PCI нет того DMA, который был на шине ISA. Вместо этого появилось понятие мастера (задатчика) на шине, который может получить контроль над шиной после выполнения процедуры арбитрации.

Таким образом, DMA на шине PCI выглядит следующим образом:
1. Программа дает команду устройству на передачу данных и физический адрес в памяти, откуда/куда эти данные должны быть переданы. Естественно, может быть задан объем передаваемых данных.
2. Устройство (мастер) выдает запрос на захват шины устанавливая сигнал REQ#.
3. Арбитр шины выполняет обработку запросов и через некоторое время (при выполнении определенных условий) выдает разрешение устройству на захват шины сигналом GNT#.
4. Устройство получив сигнал разрешения захвата шины выставляет сигнал FRAME# и прочие для проведения полноценной транзакции. После выполнения всех транзакций или при снятии сигнала разрешения устройство должно освободить шину. И т.д.

Таким образом мастер осуществляет передачу данных по шине в обход процессора и это можно назвать DMA. Но как таковой DMA нигде не расписан подробно, спецификация шины PCI лишь предусматривает возможность создания задатчиков для этой шины.


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 3rd August 2025 - 17:19
Рейтинг@Mail.ru


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