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

 
 
> Знакокам PCI: DMA запись в память ПК
L_Konstantin
сообщение Nov 1 2006, 11:56
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 13-10-06
Из: Новосибирск
Пользователь №: 21 282



При попытке писать в память (команда CBE = X"F") 64-битных данных происходит следующее:
1. происходит запись 1280 байт (80 транзакций по 64 бита), после чего транзакция прерывается по DisconnectOnNextADB - все корректно.
2. при продолжении как будто происходит все номрально, но при этом после 4 транзакции передачи данных выставляется STOP (DisconnectOnNextADB), но при этом на 8 такте снимаются TRDY и DEVSEL.

Как это может быть, если в стандарте записано что прерывание транзакции возможно лишь на границу в 128 байт (16 тактов по 64 бита).

Я в полном ступоре: либо я сильно чего-то не понимаю, либо налицо несоответствие поведения стандарту PCI.

(попытался прикрепить картинку с логгера как происходит отсоединение target-а)
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
L_Konstantin
сообщение Nov 3 2006, 03:51
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 13-10-06
Из: Новосибирск
Пользователь №: 21 282



УРА!!!! cheers.gif
Проблема побеждена!

Дело было вот в чем: я хотел писать 4К данных. После записи 80 транзакий меня прерывал таргет (DisconnectOnNextADB). Соответственно реально я записал 80*64b = 640Byte. Значит при инициализации следующей транзакции я должен был выставить адрес 640 (X"280"), а я выставлял X"140" (осталось от 32-битных передач).
Вот в этом месте бридж похоже с ума и сходил. Вообщем оба мы были не правы a14.gif

Если у кого будут вопросы по PCI-X - обращайтесь - походу я уже на все грабли наступил smile.gif
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 12:39
Рейтинг@Mail.ru


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