Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Как завести внешний поток 250-500 МB/s в комп?
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Styv
Как завести внешний поток 250-500 МB/s в комп и записать его на HDD? Может кто даст направление в котором нада копать? А может есть готовые решения?
ClockworkOrange
сдаётся мне что на таких скоростях ПК - лишнее звено в цепочке..
Gate
Цитата(ClockworkOrange @ Mar 28 2008, 12:21) *
сдаётся мне что на таких скоростях КОМП - лишнее звенов цепочке..

+1
Кроме того, скорость записи винчестера где-то 50 Мб/с. 10 дисков, работающих независимо впараллель? Персоналки не поддерживают, м.б. какие-нибудь сервера?
Обычно такие задачи ставят физики-экспериментаторы, которым лень заранее подумать, что они хотят померять и что в итоге получить, типа - давайте сейчас накопим, а потом уже разберемся. Если их удается переубедить, то поток данных уменьшается до разумных значений после некоторой обработки.
dm.pogrebnoy
Цитата(Styv @ Mar 28 2008, 11:10) *
Как завести внешний поток 250-500 МB/s в комп и записать его на HDD? Может кто даст направление в котором нада копать? А может есть готовые решения?



Да, конечно комп для таких скоростей не предназначен. Если "внешний поток 250-500 МB/s" это данные с АЦП часто можно обойтись пакетным режимом, другого решения честно говоря я не вижу на таких скоростях.
alexander55
Цитата(Styv @ Mar 28 2008, 11:10) *
Как завести внешний поток 250-500 МB/s в комп и записать его на HDD? Может кто даст направление в котором нада копать? А может есть готовые решения?

Пишите в какое-то свое ОЗУ до упора (и то надо расширить шину, чтобы было подешевле), а потом медленно-спокойно и очень тихо передаете в комп. biggrin.gif
lock
Не вопрос:
- берем двухядерную машину;
- ставим SCSI контроллер Ultra 320;
- разрабатываем PCI Expres карточку с SerDes-ом;
- ставим линукс;
- пишем драйвера.
Все описанное работает у буржуев, гдето фотки были не помню этого шедевра.
Хе нужно сделать примерно тоже, остановились пока на скромном варианте до 100 Мбайт.
CodeWarrior1241
У нас часто бывает требованье записывать поток серийной информации на примерно таких скоростях о которых идет речь. Мы покупаем serial data recorders от curtiss-wright. В основном, data приходит к нам через front panel data port, но в рекодере можно вставлять другие интерфайс-карты по надобности. О стоймости этого дела я не осведомлен, но я предполагаю что аналоги такого устройства можно и в европе купить.
blackfin
Цитата(lock @ Mar 28 2008, 15:01) *
Не вопрос:
...
- разрабатываем PCI Expres карточку с SerDes-ом;
...
Хе нужно сделать примерно тоже, остановились пока на скромном варианте до 100 Мбайт.
Через обычную шину PCI можно передавать потоки до ~130 МБайт/с.
Через шину PCI-66 можно передавать потоки до ~260 МБайт/с.
Через шину PCI-X-133 можно передавать потоки до ~520 МБайт/с.

IMHO, PCI-Expres излишен, если, конечно, нет требований по размерам и
не предполагается длительное серийное пр-во изделия, поскольку PCI-Expres
рано или поздно вытеснит PCI-X.
AlexKit
http://www.kinor.ru/products/mediatorpc/
Работает, обращайтесь-))
lock
Цитата(blackfin @ Mar 29 2008, 05:13) *
Через обычную шину PCI можно передавать потоки до ~130 МБайт/с.
Через шину PCI-66 можно передавать потоки до ~260 МБайт/с.
Через шину PCI-X-133 можно передавать потоки до ~520 МБайт/с.

IMHO, PCI-Expres излишен, если, конечно, нет требований по размерам и
не предполагается длительное серийное пр-во изделия, поскольку PCI-Expres
рано или поздно вытеснит PCI-X.

Эт конечно красивые цифры, но даже при беглом просмотре мамок с PCI выше 66Мгц это уже серверные платформы, а если Linux там не к месту и по мимо этого есть еще разные процессы(как обычно) такие цифры только сняться.
Все конечно зависит от задачи но, я ее так и не увидел в посте.

Цитата(AlexKit @ Mar 30 2008, 22:32) *
http://www.kinor.ru/products/mediatorpc/
Работает, обращайтесь-))

Вот это красота!
Styv
Цитата(AlexKit @ Mar 30 2008, 22:32) *
http://www.kinor.ru/products/mediatorpc/
Работает, обращайтесь-))

2 AlexKit
Посмотри Личный Ящик.
Styv
Цитата(lock @ Mar 28 2008, 15:01) *
Хе нужно сделать примерно тоже, остановились пока на скромном варианте до 100 Мбайт.

2 lock
Я конечно погорячился с 500Мb/s, это в идеале. А на чем Вы сделали 100 Мбайт?
alexander55
Цитата(Styv @ Mar 31 2008, 13:39) *
2 lock
Я конечно погорячился с 500Мb/s, это в идеале.

Наверное, увидели цену вопроса и сразу стали скромнее в желаниях ? biggrin.gif
Styv
Цитата(alexander55 @ Mar 31 2008, 16:24) *
Наверное, увидели цену вопроса и сразу стали скромнее в желаниях ? biggrin.gif

Да нет. Просто на данном этапе хватит и столько.
Хотелось бы узнать цену на это устройство
http://www.kinor.ru/products/mediatorpc/
Styv
А кто может чтонибудь сказать про данный девайс?
http://sine.ni.com/nips/cds/view/p/lang/en/nid/202770
Как думаете реально ли с ним пропихнуть в комп поток в 120 МБайт/с
И Можно ли, поставив две такие платы, вводить и записывать на Рэйд массив кампа два потока данных по 120 МБайт/с (в сумме 240 МБайт/с )?
torik
На самом деле - почему бы не писать напрямую на HDD, если не хватает скорости - то сразу на два...
Styv
Цитата(torik @ Apr 4 2008, 10:39) *
На самом деле - почему бы не писать напрямую на HDD, если не хватает скорости - то сразу на два...

Такое уже сделано и работает. Хотим обработку данных делать пооперативнее (слишком долго считчвать с 8-ми винтов через USB)
RobFPGA
Приветствую!

При учете скорости ввода по различным шинам (PCI, PCIX, PCIe) необходимо также смотреть архитектуру чипсета конкретной материнки- пару лет назад накололся с этим - PCIX разъем и контроллер винтов сидели на одном сегменте шины sad.gif.

Сейчас работает система с платой PCIX FPGA + DSP, ввод и обработка с записью непрерывного потока до 210 МБайт/сек . Пишется все на 4 - 6 SATA винтов 750 Гб включенных в RAID0 под Windows XP. Причем RAID организован програмно методами XP. Ограничение скорости 210 Mb/s это прблемма платы обработки - на ней аппаратный контроллер PCIX имеет узкое место - локальную шину с пиковой 250 МБайт/сек. Физически данные на плату DSP с внешних АЦП поступают через два последовательных канала 2.5 Гбит/сек (медь или оптика).

Самый простой вариант сейчас - это PCIe 4x-8x. Правда на данный момент FPGA/DSP платы с таким интерфейсом пока дороговаты.

Успехов! Rob.
AlChi
Можно еще загнать поток в AT89С2051 и далее по i2c в eeprom
blackfin
Цитата(AlChi @ Jun 23 2008, 20:04) *
Можно еще загнать поток в AT89С2051 и далее по i2c в eeprom

01.gif загнать поток 500 МB/s по i2c в eeprom ??????? Ну, ну.. 08.gif
AlChi
епромок не должно много получиться
blackfin
Цитата(AlChi @ Jun 23 2008, 20:11) *
епромок не должно много получиться
И сколько же? laughing.gif
AlChi
могу ошибаться, но порядка 32
zltigo
Цитата(AlChi @ Jun 23 2008, 18:11) *
могу ошибаться, но порядка 32

Огласите методику получения этого числа, при условии что I2C обычно на 400KHz работают, ну и объемы EEPRO-мок сотни килобайт обычно предел.

Цитата(blackfin @ Jun 23 2008, 18:10) *
01.gif загнать поток 500 МB/s по i2c в eeprom ??????? Ну, ну.. 08.gif

А в "AT89С2051" smile.gif smile.gif
blackfin
Учите матчасть: i2c.Для записи 500MB/s нужно: 8*500^6/400^3=10000 епромок..
Только вот, переполнятся они слишком быстро..

Цитата(zltigo @ Jun 23 2008, 20:25) *
А в "AT89С2051" smile.gif smile.gif
Ну это вааще бред, чего тут обсуждать?.. 07.gif
AlChi
сорри за флуд - не заметил. что речь идет о мегабайтах в секунду.
Goblin_Nick
smile.gif
khach
Цитата(AlexKit @ Mar 30 2008, 21:32) *
http://www.kinor.ru/products/mediatorpc/
Работает, обращайтесь-))

А есть ли нечто подобное, только чтобы на плате стоял не флешь, а 8 или 16 ноутбучных винчестеров?
Через комп и райд пропихивать поток непредлагать- проверенно, неуспевает.
Если же таких плат под винчестеры нет, то может кто посоветовать, как лучше такую штуку делать? Есть ли исходники контроллеров райд- массивов на vhdl в свободном обращении?
DmitryR
Цитата(khach @ Jun 25 2008, 13:45) *
А есть ли нечто подобное, только чтобы на плате стоял не флешь, а 8 или 16 ноутбучных винчестеров?
Через комп и райд пропихивать поток непредлагать- проверенно, неуспевает.
Если же таких плат под винчестеры нет, то может кто посоветовать, как лучше такую штуку делать?

Это надо исследовать - вариантов масса.
1. Подключать по одному или по два винта на канал (винт в общем случае медленнее канала)?
2. Подключать через внешние контроллеры или делать контроллеры на FPGA?
3. Как потом этими данными пользоваться - подключать винты к компу или делать канал из FPGA к компу для чтения?

Вообще на мой взгляд самым прогрессивным решением бы было использовать встроенные в мощные FPGA каналы SATA, как для связи с винтами, так и с компьютером: будет шустро и мало проводов. Однако говорят, что SATA очень сложен в реализации: встроенный в FPGA контроллер сделает только физику, а логику придется ручками, долго и мучительно.

Цитата(khach @ Jun 25 2008, 13:45) *
Есть ли исходники контроллеров райд- массивов на vhdl в свободном обращении?

Тут необходимость RAID неочевидна: если читать через FPGA - то можно писать данные тупо подряд посекторно, и отдавать в комп так же, а разбираться с ними уже в компе, драйвером.
Eugenius
Цитата(Styv @ Mar 28 2008, 12:10) *
Как завести внешний поток 250-500 МB/s в комп и записать его на HDD? Может кто даст направление в котором нада копать? А может есть готовые решения?

АЦП? smile.gif
Мы свой девайс делаем. Плату ввода PCI-E 4x с 16Гб буфером на борту, RAID0 - из 6 HDD.
Скорость потока 400Мб/с.

Сейчас собираем боевую систему. Если будет интересно, могу доложить о результатах.

Цитата(Gate @ Mar 28 2008, 13:41) *
скорость записи винчестера где-то 50 Мб/с.
Примерно от 100 в начале до 50 в конце. Часть диска можно не использовать.
призрак
Может Вам пересмотреть кол-во и формат данных??
Ставите на входе несколько DSP, которые кодируют и прореживают данные на лету, а потом уж ужатое можно писать на диск )))
Styv
Цитата(Eugenius @ Jun 25 2008, 17:10) *
АЦП? smile.gif
Мы свой девайс делаем. Плату ввода PCI-E 4x с 16Гб буфером на борту, RAID0 - из 6 HDD.
Скорость потока 400Мб/с.

Сейчас собираем боевую систему. Если будет интересно, могу доложить о результатах.

Примерно от 100 в начале до 50 в конце. Часть диска можно не использовать.


Результат очень интересен, если не затруднит, то оглавите пожалуйста.
Eugenius
Цитата(Styv @ Jun 30 2008, 11:46) *
Результат очень интересен, если не затруднит, то оглавите пожалуйста.

Сразу не отписался. Но мало ли вдруг ещё интересно.

Итак, поток 400Мб/с через PCI-E 4x успешно записывается на RAID о шести 320Гб HDD 2,5" 7200rpm, реализованный на стандартном ICH9R контроллере. Могу рекомендовать брать винчестеры максимального объёма в линейке - скорость записи у них тоже максимальная. Хорошо, если нет требований по габаритам - у 3,5" скорость, как правило, выше.

Кривая скорости записи на протяжении 1,8Тб (для всего массива уменьшается от 450Гб/с до 390Гб/с. Причём, на протяжении первой половины массива скорость меняется мало. Больше беспокойства доставляет то, что график не равномерный, а пилообразный. В середине массива есть провалы до 320Гб/с. Но за счёт буфера платы ввода (сейчас - 4Гб) эти неравномерности легко сглаживаются. Таким образом, взяв массив вдвое больше требуемого и создав рабочий раздел в первой половине HDD получаем стабильную запись своих 400Мб/с в реальном времени с 10% запасом.

Что ещё. В памяти ПК имеет смысл выделять буфер для DMA большого объёма. Для того, чтобы передавать системе на запись данные мегабайт по 128. При записи меньших блоков, скажем, по 16/32Мб скорость значительно падает.

Чипсет материнской платы: G35 + ICH9R. Скорость передачи данных с платы в память через PCI-E 4x - 780Мб/с (передача 128б блоками).

Вот такой опыт поимели.
guron
Acard делает "жесткие диски" на DDR2 памяти, с пропускной способностью у них все нормально, остается вопрос реализации записи по SATA2, если сделать ее без участия всяческих компов, то 300МБ/с реально, а если по рейду (у "диска" 2 линии SATA2), то и все 600.
Gothard
Цитата(Eugenius @ Oct 15 2008, 17:24) *
Итак, поток 400Мб/с через PCI-E 4x успешно записывается на RAID о шести 320Гб HDD 2,5" 7200rpm, реализованный на стандартном ICH9R контроллере.

Очень интересный опыт smile.gif, т.к. похожая задача у нас встречается. Пока что в реальном времени с такой скоростью не писали, но хотелось бы.
Скажите пожалуйста, у вас плата ввода это отдельная PCI-E 4x плата, а RAID - чисто покупная плата. Или плата ввода и RAID сделаны целиком на вашей плате?
Вопрос возникает потому, что хочется знать - процессом записи на диск "рулит" операционка или железо?
Видимо раз там PCI-E 4x - то плата ввода отдельная (иначе зачем) - т.е. перегон данных в RAID занимает шину PCI, так?

А SSD вместо HDD не рассматривали? Там вроде бы и скорость доступа/записи постоянная и при этом еще и выше чем у HDD. SDD пока дороговато, но зато можно взять меньше дисков (место ограниченно)
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.