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

Костян

Свой
  • Постов

    690
  • Зарегистрирован

  • Посещение

Весь контент Костян


  1. Разрабатываю согласованный фильтр. Частота дискретизации такая, что требует суммировать не целое число отчетов для получения нужной импульсной характеристики. Как грамотно поступить ? Имульсная характеристика в аттаче
  2. да, все верно. спасибо.
  3. PCIE interrupt.

    Выставляю запрос прерывания (MSI либо Legacy нет разницы, эффект одинаковый) на устройстве. В ответ от PC получаю два идущих подряд сигнала ready. См. аттач. Судя по документации я должен получать один ready. Почему их два ?
  4. Интересный эффект. Читает ровно 5 раз верно, на шестой дает 0xFFFFFFFF. И это до тех пор, пока не перезагрузить ОС. В chipscope заметно, что все запросы WRd идентичны. Соответственно все ответы CplD тоже Читаем при помощи windriver: DWORD size = 1; DWORD *data = (PDWORD) malloc(size*sizeof(ULONGLONG)); if (WDC_ReadAddrBlock(deviceHandle, addrSpace, 0, size*sizeof(DWORD), data, WDC_MODE_32, WDC_ADDR_RW_DEFAULT)) { printf("ERROR: WDC_ReadAddrBlock\n"); goto Exit; } Критично ли время ответа CplD на запрос MRd, в каких пределах оно должно находится ?
  5. а вот где собака зарыта. спасибо. понятно. т.е считаем кол-во оставщихся байт еще до отправки cpld
  6. спасибо. тогда я не совсем понимаю значение Byte Count. Он же показывает оставшееся число байт, почему оно 4 ?
  7. спасибо. Но как быть тогда с физическим адресом ? Например нужно прочитать/записать область ОЗУ в PC. Где гарантия , что ОС не использует данные адресса ?
  8. Дано, запрос чтения памяти со стороны PC MRd: 000000001 0060000F F60001000 Подробнее по полям: Length = 1 DW Requester ID = 0x60 Last DW BE = 0x0 first DW BE = 0xF Address = 0xF6001000 Как коректно сформировать ответ CpLD c 1 DW? Не понятны поля : Lenght (такой же , как и у Mrd ?) Byte Count (настолько я понял из пояснений на это поля, в данном случае 0 ? ) Lower Address (первые биты адресса 0xF6001000 ?) Completer ID (любой ? )
  9. Спасибо. По записи в память PC еще вопросы есть. Может ли ПЛИС послать пакет записи в память MWr ? Данный пакет не требует ответа. И CPU не будет занят в его обработке. Иными словами Может ли в качестве requester выступать ПЛИС при MWr ?
  10. Тогда получается слудующие 1. ПЛИС выставляет на шину запрос чтения/записи в память с PAYLOAD равной максимальной 2. Материнка без участия CPU принимает запрос и дает на него ответ макс длины Верно ?
  11. Прошу прошения , an456 стр 20. Там явно видно, что intel выигрывает у остальных. Побаловатся заказал себе H67 - это последователь X58. Сейчас работаю с nvidia. Как будет новая материнка, смогу написать некоторые выводы по скорости. считает то он иначе, но как передать 256B , тогда как windriver поддерживает макс 64B не понятно.
  12. у altera-ы приведен список скоростей для разных материнок. AN431 И судя по документации на чипсет X58 payload у него не менее 128 http://www.evga.com/support/manuals/files/132-BL-E758.pdf
  13. спасибо, разбираемся. Пока никак не могу понять, зачем они используют прерывания. понятно. попробуем на низком уровне подцепится к pcie, без windriver
  14. Благодарю, только где выставляется в системе PAYLOAD ? В Bios-е нет :(
  15. обойти это нельзя никак ? Вы хотите сказать, что макс пакет данных 16DW ? А как же стандарт со своими 1024DW , как это реализовать ?
  16. А какой приоритет TC использовали в пакете ? Сюдя по невысокой скорости чтения , стояло по умолчанию TC0
  17. Почему WinXP не видет BAR Memory без перезагрузки ? Как можно обойти это перезагрузку ?
  18. Куда пропал cableserver.exe из ISE 12 ? Всегда лежал в xilinx\bin\nt\
  19. prefetchable/non-prefetchable memory в чем различия данных типов памяти ?
  20. Работаем с PCIe. Передаем видео поток с ПК на PCIe board. 1. Какой тип передачи выбрать, чтобы обеспечить максимальную пропускную способность ? Склоняемся к MemoryWrite на 1024Dword. 2. Используем jungo WinDriver . Как и где задается traffic classes (TC) ? Пытаемся установить макс. приоритет для посылок TC7
×
×
  • Создать...