[an error occurred while processing this directive]
DMA, выделение памяти, драйвер?????
(«Телесистемы»: Конференция «Программируемые логические схемы и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено -=Sergei=- 16 октября 2002 г. 17:49

Цель.
Осушествить запись/чтение неким PCI девайсом кусок памяти выполняемого на центральном процессоре приложения.
Что делаю.
1. В приложении выделяю нужный объем.
2. Узнаю его реальный (а не логический, который внутри приложения) адрес.
3. сообщаю этот адрес PCI устройству и размер блока.
4. PCI устройство записывает его туда.
5. Затем PCI устройство считывает его (при этом считывает именно то, что и записало).
6. Смотрю по средствам приложения, которое выполняется на PC что записано в той выделенной области. Там то что было с самого начала, до записи туда PCI устройством.

Впринципе все симптомы, указывают на то, что чтото не правильно с адресами: 1. Если я контроллером PCI выставляю неправилный адрес на шину и попадаю в другое место -проверял на видеокарте, вроде попадал туда када нужно. 2. Получил неправильный реальный адрес - над этим думают нащи программеры, говорят что все вроде правильно. 3. Самый интересный случай - кеширование памяти в процессоре. Т.е. я пишу то в память, но приложение видит то, что храниться в кеше. Возникает вопрос, как синхронизовать кеш с памятью в этом случае?

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru