[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
>Получил первые транзакции в Master PCI.
Отлично!
>как программой выделяется память для мастер режима
Рассмотрим пересылки в память, в качестве которой могут выступать
1. Другая карта PCI (естеств. Target)
2. Системная память компьютера (но, собственно, отвечает опять же target, в качестве которого выступает ‘мост' память<->PCI).
В первом случае BARx адресует непрерывный сегмент запрашиваемой длины. Соотв. мл. биты – 0.
Во втором случае то, что будет выделен непрерывный сегмент, – не факт (особенно под Win, где все упирается в драйвер).
Я понял, что вам нужно 2MB системной памяти для мастер-пересылок, и программа, которая будет работать под Windows. По поводу программы ничего сказать не могу, но определенно нужен драйвер, который позволит выделить непрерывное пространство 2MB, а не 512 кусочков по 4KB, разбросанных по памяти. Точно не помню, но WinDriver ф. Jungo это, кажется, позволяет. Если это так (можно написать им письмо и спросить – ответят), то логично посмотреть примеры в комплекте с WinDriver. Раньше они все были в виде 'Console Applications’, т.е. просто DOS-окно в Win, соотв. ничего лишнего и в программе. Только нужно иметь Microsoft Visual Studio, и простой обмен можно получить.
Но для целей отладки лучше начать с DOS и видеопамяти. В приложении к стандарту VBE (я давал ссылку) есть полная DOS-программа. Нужно только а) инициализировать видеорежим б) получить и передать адрес.
Напишите все же поподробнее, правильно ли я понял про 2MB, и какие сейчас встретились трудности.
--IgorK
E-mail: info@telesys.ru