Приветствую!
Цитата(spbroma @ Dec 11 2014, 15:26)

У меня есть задача:
Организовать передачу данных по PCIe с ПЛИС на ПК (Win7 x64).
...
Подскажите, как правильно и оптимально организовать систему?
Для начала нужно четко понять что за систему Вы строите и что от нее хотите -
какие данные (непрерывный поток, пакеты, одиночные слова, ...), каков суммарный трафик, кто инициатор передачи, требования к задержке передачи, структура/интерфейс/параметры управления, наличие готовых IP корок, ....? .
Цитата(spbroma @ Dec 11 2014, 15:26)

Как я понимаю, у меня есть два варианта:
1. Определиться, устройство какого типа я буду формировать на ПЛИС: контроллер памяти, мультимедийное утсройство, что-то ещё и под него писать свой драйвер.
2. Подумать насчёт того, может уже есть драйверы, которые решают мою задачу, останется только сформировать на ПЛИС соответствующую конфигурацию устройства.
Драйвер должен "знать" железо которое вы реализуете в FPGA с точностью до регистра/бита. Поэтому вариант у Вас один - сначала определитесь со структурой железа.
Цитата(spbroma @ Dec 11 2014, 15:26)

Собственно, вопросы к уважаемой публике:
1. Есть ли какие-то стандартные решения или подходы к подобной задачи? И какие?
2. Какой из вариантов лучше?
3. Что почитать?
1a- все самому, 1b- заказать разработку, 1c-Купить подходящее готовое IP, 1d- найти похожее open source, 1e.., 1f.., ...
2. Нужно определить Ваши критерии "лучше"
Сомневаюсь что Вы найдете готовые драйвера под Win. Обычно сорцы драйверов только под linux. Можно посмотреть понять что и как нужно делать. Поищите реф дизайны с PCIe. Есть от Xilinx тот же TRD connectivity kit (c evaluated версией DMA контроллера или их appnote пример с PCIe master. Есть ряд open source проектов с PCIe и DMA на
http://opencores.org ну или например тотже NetFPGA.
Успехов! Rob.