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

FLTI

Свой
  • Постов

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

  • Посещение

Сообщения, опубликованные FLTI


  1. Я уже называл: GA-P55-UD6 http://www.gigabyte.ru/products/mb/specs/ga-p55-ud6_10.html

    А вот для выдачи данных - наоборот, скорость в PCIE_x8_1 больше чем в PCIE_x4_1; ( 560 и 410 Мбайт/с )

    Не возникают ли провалы в скорости если начинают работать другие устройства, использующие DMA Bus Master, например если выводимые в плату данные будут поступать из гигабитной сети или с HDD?

     

    Не пробовали ли чипсет x58, возможно там результаты будут повыше?

    Как-то расстраивает 410 Мбайт/с на вывод на PCIE_x4_1...

  2. В моём компьютере PCI Express 2.0

    И даже PCIe x 1 слоты PCI Express 2.0? Если так, то назовите пожалуйста эту мать.

    Virtex 6 поддерживает PCIE v2.0 и я собираюсь сделать такую реализацию.

    Наверное на Artix-7 подешевле будет.

     

     

  3. dsmv, а пробовали ли Вы Ваше ядро на PCIe GEN2?

    Удалось ли получить увеличенные скорости по сравнению с GEN1?

    Кстати, есть ли сейчас матери со слотами PCIe x1 GEN2?

    Будет ли встроенное Spartan 6 ядро PCIe x1 работать на PCIe x1 GEN2 с увеличенной скоростью?

  4. Вот результаты измерения.

    Компьютер - Intel I7 2.8 ГГц, системная плата GIGABYTE GA-P55-UD6

     

    Модуль AMBPEX5 установлен через переходник x1

    Вывод данных ( из компьютера в устройство )

    1. системная память (непрерывная) 128 МБайт - 201 Мбайт/с

    2. пользовательская память (разрывная) 128 Мбайт - 201 Мбайт/с

     

    В моём контроллере дескрипторы объедены в блок дескрипторов.

    Посмотрите мои доклады: http://ds-dev.ru/projects/ds-dma/wiki/%D0%...%86%D0%B8%D0%B8

    Там же есть исходный код нового контроллера.

    А если Ваш код контроллера, который в Virtex 5 давал 201 Мбайт/с разместить в Спартан-6 используя его аппаратное ядро PCIe x 1, то можно ли ожидать получение таких же скоростей 200 Мбайт/с ?

    Или в Virtex 5 есть нечто, чего нет в Спартан-6 из-за чего такие скорости на Спартане-6 не получить?

     

  5. Вот результаты измерения.

    Компьютер - Intel I7 2.8 ГГц, системная плата GIGABYTE GA-P55-UD6

     

    Модуль AMBPEX5 установлен через переходник x1

     

    Вывод данных ( из компьютера в устройство )

    1. системная память (непрерывная) 128 МБайт - 201 Мбайт/с

    2. пользовательская память (разрывная) 128 Мбайт - 201 Мбайт/с

     

    Модуль AMBPEX1 - используется контроллер PEX8311

     

    Вывод данных ( из компьютера в устройство )

    1. системная память (непрерывная) 128 МБайт - 185 Мбайт/с

    2. пользовательская память (разрывная) 128 Мбайт - 120 Мбайт/с

     

    Для режима x1 скорости от компьютера практически не зависят. Хотя я это давно не проверял.

    Огромное Вам спасибо.

    Скажите, при выводе данных из компьютера в устройство в чём разница между понятиями "системная память (непрерывная)" и "пользовательская память (разрывная)"?

    И почему на AMBPEX5 через переходник x1 скорости вывода в обоих этих случаях равны, а на PEX8311 сильно отличаются?

  6. Для реализации x1 у нас используется PEX8311. Насколько я помню, на вывод удалось достичь 150 МБайт/с.

    Этот показатель как-то зависил от матери?

    Для x8 и чипсет P55 - 1050 МБайт/с. Если найду переходник, то измерю скорость Virtex 5 в режиме x1

    Заранее благодарю.

     

     

  7. Правы оба.

    FIFO => DMA => PCIExpress

     

    2 кбайт FIFO вполне достаточно для согласования скорости.

    Непонятно, в чём тогда прав Bad0512, который пишет, что ФИФО недостаточно и нужен буфер приличного размера?

    Напоминаю, что мы говорим о потоках около 200МБайт/с.

  8. У меня такая проблема: устройство на базе Endpoint Block Plus

    v1.9 не на всех PC работает в режиме х8. Перепробовал кучу машин с различными мостами. В некоторых материнках, устройство сразу работает на х8, в других при первом включении на х1, а после перезагрузки(помогает кнопка ресет), переходит на х8, в третьих только на х1, и никакая перезагрузка не помогает, не смотря на то, что на материнке написано х8 и в биосе тоже все нормально. Неужели Endpoint Block Plus такой привередливый к типу чипсетов?????

    Тема привередливости к чипсетам меня тоже интересует.

    demon_rt,что Вам удалось за год на эту тему выяснить?

     

  9. Пару слов вдогонку... При потоках 200мБс Вам не обойтись без промежуточной памяти приличного размера.

    У 6 спартана кстати есть аппаратный контроллер памяти. Корку ДМА готовую конечно можно найти, но всё

    равно в ней Вам как минимум разобраться придётся - все эти корки очень заточены и оптимизированы под

    определённые приложения.

     

    неправда, спокойно 200 мбайт сек через 2 кбайта фифошки (скорость записи в память pc), обратно мне больше 170 не удалось получить.

     

    Диаметрально противоположные мнения :wacko:

    Кто прав и почему ? Или оба правы, но каждый по-своему?

  10. у altera-ы приведен список скоростей для разных материнок.

    AN431

    Никакого списка скоростей для материнок в AN431 я не нашёл. На какой странице?

    И судя по документации на чипсет X58 payload у него не менее 128

    А вот по поводу payload для X58 Xilinx в XAPP1052 считает иначе:

    The x58 supports up to 256 byte maximum payload size (MPS), and the x38 supports up to 128 byte MPS.

    Хотя конечно "не менее 128" и "up to 256 byte" в итоге могут означать одно и тоже )

  11. Сергей, напишите, пожалуйста, конфигурацию оборудования, на котором проводили тестирование. Я надавно проводил аналогичные тесты для своего проекта, и получил на двух разных стендах скорости чт/зп 460/300 МБ/с и 820/375 МБ/с. Не правда ли, поразительная разница? Для 1-lane получал скорости в зависимости от стенда и ОС от 140/120 до 180/160.

    Может, стоит над сим задуматься и попробовать другой ПК?

    Не могли бы Вы более конкретно рассказать о том, на матерях с какими чипсетами и на каких ОС получаются самые высокие , и на каких - самые низкие результаты и с чем это связано ?

  12. Благодарю, только где выставляется в системе PAYLOAD ? В Bios-е нет :(

    Нигде,это свойство заложенное изготовителем материнской платы.

    Интересует статистика по матерям.

    На матерях с каким чипсетом MPS ( Maximum Payload Size ) 64 байта или даже 32 байта и ниже?

    Ну и соответственно, на матерях с каким чипсетом MPS ( Maximum Payload Size ) 256 байт и выше?

  13. Теоретически, можно запрограммировать DMA контроллер который есть в чипсете хоста провернуть чтение из хоста и запись в девайс, бОльшими блоками. Но это дает сильную аппаратную привязку к типу хоста + сложность в написании драйвера.

    Поясните, что значит - сильную аппаратную привязку к типу хоста? Какие типы хостов имеются в виду?

     

  14. Без ДДР - невозможно. Внутренней памяти мало, в реальной жизни необходимо буферировать минмум 1 секунду потока

    для того, чтобы всё работало без дропов.

    Буферировать минмум 1 секунду потока - это Вы имели в виду для какого видео, SD или 3G-HD?

    Буфер на секунду для капчура+ буфер на секунду для плейбека = транспортная задержка между вх. и вых. видео получется 2 секунды.

    Не многовато ли?

     

     

    6. В дальнейшем перетащил дизайн под архиетктуру Спартана6, но это уже отдельная история.

    Вы имеете в виду, что на Спартане-6 всё проще получается и без GN4124?

    Хотя , конечно не надо забывать, что в Спартане-6 только PCIe x1, а в GN4124 - PCIe x4 и поэтому 3G-HD через Спартан уже не пролезет.

  15. Bad0512, а Вы не пробовали вообще без DDR обойтись для капчура и плейбека?

    А что полезного вообще есть в pinto если Вы столько оттуда повыбрасывали?

    Какие впечатления от самой GN4124, так ли всё работает как в доках описано, нет ли каких явных багов?

     

     

  16. 1. Их машинка для работы с памятью была заточена на работу с фифошками, то есть адрес "протянуть" на память было невероятно сложно.

    В моём приложении (туча разных буферов для видео и аудио) адрес был необходим как воздух, пришлось вникнуть и всё переписать.

    Добавил механизм так называемых "локальных дескрипторов", то есть небольшая табличка для каждого ДМА движка (на запись и на чтение), которая описывает начальный адрес ДМА и размер ДМА в страничках со стороны локальной памяти ДДР.

    2. Крайне неэффективно использовалась память для SG таблиц внутри FPGA (3*32 bit на каждую SG страничку, переделал - у меня всего 32 бита на каждую страничку таблички, при этом всё пашет под 64 битными системами). Память BRAM в моём проекте была в большом дефиците (специфика многочисленных переходов из домена в домен и большое число фифошек).

    3. Механизм перехода из 32bit * 200MHz в 64bit * 100MHz мне очень не понравился, исключил все DCMки и сделал всё на 32bit 200 МГц. После некоторой оптимизации по скорости всё разводится на ура, все констрейны выполняются.

    4. Всю работу с видео выкинул, вставил свои куски (так было нужно для моей задачи).

    5. Для улучшения производительности между памятью DDR и DMA движком вставил фифошки (они там в любом случае были необходимы, ибо клоки - разные). Возложил на этот кусок функции кэширования - сильно помогает поднять производительность системы в целом.

    6. В дальнейшем перетащил дизайн под архиетктуру Спартана6, но это уже отдельная история.

    7. Да, капчур с плейбеком в моём дизайне естественно живут независимо и одновременно. Нельзя сказать что они друг на друга не влияют, так как обращаются они в итоге к одной и той же ДДР памяти. Но если скорости записи и чтения далеки от предельных это влияние минимально.

    Bad0512,благодарю за столь обстоятельный рассказ.

    Скажите, а насколько проект pinto в исходном виде, если не вносить в него никакие изменения, решает свою задачу по риал-тайм капчуру и плейбеку для HD-video?

     

  17. Схему редактировать в Entry/Capture CIS.

    А Вы в какой версии работаете?

    В 16.5 есть несколько программ ( см. вложение ) и внутри них несколько опций , в названии которых есть комбинация слов Entry / Capture / CIS / Design...

    post-5832-1311346625_thumb.jpg

  18. ЗЫ Хотя выбор программ - это самая маленькая проблема. Дальше будет интереснее...

    Спасибо за быстрый ответ.

    Да, действительно это только 1-й шаг.

     

    Где можно посмотреть методику по тому, что мне нужно: внести некоторые изменения в файл схемы ( удалить лишнее и кое-что добавить ) и с учётом этих исправлений переразвести референсную плату, причём так, чтобы разводка большей её части ( та, схему которой я оставлю неизменной ) осталась такой же, как в референсном дизайне.

     

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