Перейти к содержанию
    

Что использовать ПЛИС или готовый контроллер?

Если ПЛИС, то нужны ли какие либо покупные ядра? Насколько сделать на плис трудоемко и гемморойно?

Посмотрите ПЛИС Акроникс. В них аппаратные контроллеры интерфейсов. И они как раз для телекома подходят...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

pcie tree только для 32-х разрядной системы. Данную программу использовал исключительно для отладки PCIe моста на ПЛИС, чтобы программист мог начать работать с winDrive.

Спасибо, думал у Вас какой-то другой pcie tree.

 

Для bridge PCIe вам необходимо будет делать переход из stream в memory mapped. Data mover вам в помощь. По поводу Gen3 Integrated Block for PCI Express сказать ничего не могу.

Спасибо. Пока читаю про AXI4 to PCIe bridge, но, возможно, Gen3 Integrated Block for PCI Express для моего случая подойдёт больше?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо, думал у Вас какой-то другой pcie tree.

 

 

Спасибо. Пока читаю про AXI4 to PCIe bridge, но, возможно, Gen3 Integrated Block for PCI Express для моего случая подойдёт больше?

Не подойдёт, там уровень транзакций, надо пакеты формировать, чем мост и занимается. Мост к тому же мастером работает, удобно управление делать через регистры на AXI4Lite

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На Xilinx 7-й серии всё просто, ip-ядро моста + axi central dma controller. Есть xapp по этому поводу. Там только драйвер писать надо. Зато скорость любая.

Подскажите номер этого xapp.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

xapp1171-pcie-central-dma-subsystem.pdf

 

Немного дегтя:

"To test this targeted design platform in hardware, you need a host machine capable of

PCI Express Gen1 x4, and the appropriate drivers and software that allow you to initiate

PCI Express traffic to the FPGA endpoint. The drivers and software are not provided with this

application note, and must be custom developed."

 

И скорость похоже не меряли.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Посоветуйте какую-нибудь прогу под Windows 7 x64, чтоб можно было помониторить PCIe. Чтоб была возможность писать/читать данные из памяти на плате и чтоб можно было посмотреть, что плата записала в память ПК. Есть ли такое?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Посоветуйте какую-нибудь прогу под Windows 7 x64, чтоб можно было помониторить PCIe. Чтоб была возможность писать/читать данные из памяти на плате и чтоб можно было посмотреть, что плата записала в память ПК. Есть ли такое?

rweverything

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

rweverything

Спасибо, слил и установил. Если я воткну мою плату в комп при наличии ядра PCIe-AXI bridge - она появится в перечне устройств? А как правильно задаются адреса и адреса перехода? Как система выделит адресное пространство под мою плату?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо, слил и установил. Если я воткну мою плату в комп при наличии ядра PCIe-AXI bridge - она появится в перечне устройств? А как правильно задаются адреса и адреса перехода? Как система выделит адресное пространство под мою плату?

Поставьте jungo windriver, мастер там всё за Вас сделает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поставьте jungo windriver, мастер там всё за Вас сделает.

Спасибо попробуем.

Может кто пояснит правило задания параметров для PCIe:BARs и AXI:BARs для ядра AXI to PCIe bridge? Что-то никак не могу понять, как это правильно делается.

Как понимаю, для PCIe:BARs надо ещё память в системе создать, куда ядро будет писать данные полученные по PCIe или читать по запросу PCIe. Но как адрес и размер данной памяти увязать с параметрами PCIe:BARs?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поставьте jungo windriver, мастер там всё за Вас сделает.

Немного :bb-offtopic: . Вопрос по работе с jungo windriver. Скачал версию 10.10 + кейген и всё класно работало. После перепрошивки FPGA создавал и устанавливал свой драйвер всё работало. Если заливалась новая прошивка в ПЛИС, то сносил созданный ранее драйвер, создавал и устанавливал новый и можно было работать. Т.е. перезагрузка ПК не требовалась.

Сейчас пришлось переустановить Windows 7 и всё работает как-то совсем не так. Плата вставлена в слот PCIe, заливаю прошивку в FPGA, создаю и устанавливаю драйвер - всё работает. Если перепрошить FPGA то при чтении получаю все FFFF (т.е. ничего не читается и не пишется). Если перезагрузить комп, то всё вернётся в работоспособное состояние. Пробую снести ранее установленный драйвер, он удаляется и комп виснет (пробовал сносить из менегера устройств и windriver-визарда, виснет в обоих случаях). После ресета и создания/переустановки драйвера опять могу писать/читать память в FPGA.

Может посоветуете, что тут можно поправить, чтоб работало без перезагрузки компа? Думаю сносить и переустанавливать систему, не понятно, как раньше работало.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может кто пояснит правило задания параметров для PCIe:BARs и AXI:BARs для ядра AXI to PCIe bridge? Что-то никак не могу понять, как это правильно делается.

Я все параметры оставил по умолчанию, за исключением адресов.

Для axi:bar все просто. В параметрах для адреса прописываете адреса мапируемых областей вашей axi системы (Вы так делали на скриншотах).

 

Как понимаю, для PCIe:BARs надо ещё память в системе создать, куда ядро будет писать данные полученные по PCIe или читать по запросу PCIe. Но как адрес и размер данной памяти увязать с параметрами PCIe:BARs?

Создаете память физическую с начальным адресом например AddrPhys (адрес возвращает функция из драйвера windrive). Далее в соответствующие контрольные регистры моста пишете адрес следующий AddrPhys & (Buffersize - 1), где Buffersize - размер выделяемого буфера.

Если необходимо читать из PCIe:BARs с помощью ДМА, то в регистр источника ДМА пишете адрес PCIe:BAR в системе с axi + AddrPhys & (Buffersize - 1)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо, тут я более-менее разобрался. С PCIe:BARs уже всё понятно и уже затестил, как работает. Остаётся проверить работу AXI:BARs, но тут, как понял, без написания драйвера не прокатит (драйвер должен выделить адреса и размеры для буферов на которые ссылаются AXI:BARs + прописать эти параметры в настройки моста).

 

Сейчас наиболее актуально

Немного :bb-offtopic: . Вопрос по работе с jungo windriver. Скачал версию 10.10 + кейген и всё класно работало. После перепрошивки FPGA создавал и устанавливал свой драйвер всё работало. Если заливалась новая прошивка в ПЛИС, то сносил созданный ранее драйвер, создавал и устанавливал новый и можно было работать. Т.е. перезагрузка ПК не требовалась.

Сейчас пришлось переустановить Windows 7 и всё работает как-то совсем не так. Плата вставлена в слот PCIe, заливаю прошивку в FPGA, создаю и устанавливаю драйвер - всё работает. Если перепрошить FPGA то при чтении получаю все FFFF (т.е. ничего не читается и не пишется). Если перезагрузить комп, то всё вернётся в работоспособное состояние. Пробую снести ранее установленный драйвер, он удаляется и комп виснет (пробовал сносить из менегера устройств и windriver-визарда, виснет в обоих случаях). После ресета и создания/переустановки драйвера опять могу писать/читать память в FPGA.

Может посоветуете, что тут можно поправить, чтоб работало без перезагрузки компа? Думаю сносить и переустанавливать систему, не понятно, как раньше работало.

Не знаю что делать, то ли сносить Windows и пробовать всё переустановить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...