Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Неудобная задача
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
a123-flex
Вот, нашел себе работу - нужно сделать цифровой магнитофон, сливающий большой массив информации на какой нибудь носитель.

Поток - 300 мегабайт в секунду.
Время записи - от 1 с до 1 часа.

Думаю о платформе.

Первоначальная мысль была - комп с рейдом SCSI или SATA (уверяют что такая скорость записи не проблема).
Единственный вопрос - интерфейс ввода данных.
Показалось, что где-то видел рекламу USB3.0 контроллеров - такое решение было бы самым простым, по моему.
Но контроллеров таких не нашел.

Тогда второй претендент - 10 GBASE-T. Но его, насколько я понимаю, как чистое phy задействовать проблематично (в отличие от 1000 GBASE-T), а морочиться с МАК-ом не очень хотелось бы.

В процессе поиска наткнулся на микросхему преобразователь - SATA - USB3.0

Тогда пришла мысль, а может быть, реализовать многоголовый SATA интерфейс и отписать поток прям на харды, может етот путь проще, чем 10 гигабит интерфейс ?

Отцы, посоветуйте че нибудь...
vitan
PCI Express?
VladimirB
Цитата(a123-flex @ Nov 8 2010, 13:34) *
Вот, нашел себе работу - нужно сделать цифровой магнитофон, сливающий большой массив информации на какой нибудь носитель.
Поток - 300 мегабайт в секунду.
Время записи - от 1 с до 1 часа.
...
Отцы, посоветуйте че нибудь...


Если нужна виброустойчивость - то харды отпадают.

Мы делали такой девайз на флешках:
ставишь массив из скажем 125 микросхем NAND-флэш по 8ГБайт каждая и получаешь 1000ГБайт и пишешь на них в параллель.

Контроллер FLASH памяти на ПЛИС мы реализовывали сами - он достаточно простой в реализации.
У нас скорость записи данных с АЦП была 500МБайт/c.
После окончания записи, данные предавались в ПК для обработки по 1G Ethernet.
Methane
Цитата(a123-flex @ Nov 8 2010, 13:34) *
Вот, нашел себе работу - нужно сделать цифровой магнитофон, сливающий большой массив информации на какой нибудь носитель.

Поток - 300 мегабайт в секунду.
Время записи - от 1 с до 1 часа.

Думаю о платформе.

Первоначальная мысль была - комп с рейдом SCSI или SATA (уверяют что такая скорость записи не проблема).
Единственный вопрос - интерфейс ввода данных.
Показалось, что где-то видел рекламу USB3.0 контроллеров - такое решение было бы самым простым, по моему.
Но контроллеров таких не нашел.

Тогда второй претендент - 10 GBASE-T. Но его, насколько я понимаю, как чистое phy задействовать проблематично (в отличие от 1000 GBASE-T), а морочиться с МАК-ом не очень хотелось бы.

В процессе поиска наткнулся на микросхему преобразователь - SATA - USB3.0

Тогда пришла мысль, а может быть, реализовать многоголовый SATA интерфейс и отписать поток прям на харды, может етот путь проще, чем 10 гигабит интерфейс ?

Отцы, посоветуйте че нибудь...


USB - нет спецификаций, дев. бовардов итд. И очень близко к пику не факт что современные мамки будут поддерживать максимальные скорости.
SATA - Тоже не встречал решений. Альтера то пишет что то поддерживает, то вот-вот будет. Плюс есть ощущение, что гимороя с поддержкой разных типов винтов будет ну просто невероятное кол-во.
Ethernet - может быть одно из красивых решений получится. Но решение не сильно от PCIe отличаться будет.

Поскольку я уже надолбался, то я бы PCIe делал. PCIe-1 4х, это уже около 800 мегабайт в сек.
Gothard
Цитата(Methane @ Nov 8 2010, 14:41) *
PCIe-1 4х, это уже около 800 мегабайт в сек.

Да, это вполне реально: http://www.ixbt.com/news/all/index.shtml?13/78/34
Methane
Цитата(Gothard @ Nov 8 2010, 14:47) *
Да, это вполне реально: http://www.ixbt.com/news/all/index.shtml?13/78/34

Между прочим, можно и набить NAND памятью памятью плату, SSD сделать на терабайт.

300E6*60*60/2^30*8/128
ans = 62.864 мелкосхемы.

Еще понадобится Atmega8, MAX232, и молодильные яблоки, для слива информации в PC.
a123-flex
Цитата(Methane @ Nov 8 2010, 14:56) *
Между прочим, можно и набить NAND памятью памятью плату, SSD сделать на терабайт.

300E6*60*60/2^30*8/128
ans = 62.864 мелкосхемы.

Еще понадобится Atmega8, MAX232, и молодильные яблоки, для слива информации в PC.



Ссылка http://www.ixbt.com/news/all/index.shtml?13/78/34 не открывается.

Молодильные яблоки по любому.

Вопрос с виброустойчивостью интересный. Может и можно без нее обойтись. Кстате мои (правда бучные переносные) винты на ходу бились неоднократно и до сих пор не сдохли))) уже полгода после битья последнего. Никто не запрещает в sata raid такие ставить.
И кстати SSD в райде никто не запрещал. Intel на X18 гарантирует на записи 70 МБ/c, т.е. 4 диска - 280 МБ/с - почти 300.

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

PCI Express - круто, но в него ведь еще поток ввести надо от исследуемой системы, и типа хотелось бы развязки гальванической итп. Конечно никто не запрещал 3 шнурка по гигабит запихать в него - но трудоемкость разработки - 1000 G + PCI Express.

Кажется все сходится к 10 GBASE-T.

Кто нибудь делал на нем чего нибудь ? Пробовали поток мерить ? ОТЦЫ ?
VladimirB
Цитата(a123-flex @ Nov 8 2010, 18:15) *
Ссылка http://www.ixbt.com/news/all/index.shtml?13/78/34 не открывается.

Молодильные яблоки по любому.

Вопрос с виброустойчивостью интересный. Может и можно без нее обойтись. Кстате мои (правда бучные переносные) винты на ходу бились неоднократно и до сих пор не сдохли))) уже полгода после битья последнего. Никто не запрещает в sata raid такие ставить.
И кстати SSD в райде никто не запрещал. Intel на X18 гарантирует на записи 70 МБ/c, т.е. 4 диска - 280 МБ/с - почти 300.
...
Кажется все сходится к 10 GBASE-T.
Кто нибудь делал на нем чего нибудь ? Пробовали поток мерить ? ОТЦЫ ?


Про виброустойчивость жёстких дисков мне заказчики рассказывали, что они тестировали в RAID на крутых серверных дисках - так вот при небольшой тряске скорость падает охренительно и поток 500МБайт/c уже не пролезает.
А SSD - оно на таких же флешках и делается, а цены на них на бирже определяются. Так что по цене SDD и флешки в слотах примерно одинаково выйдут. Всё зависит от того что вам проще написать контроллер флеш-памяти или бодаться с интерфейсами 10G или PCI-E, а потом с ещё и софтом для ПК.

P.S. Флешки все стандартные - (стандарт ONFI) и корпуса у них стандартные - чтобы на бирже удобнее торговать, поэтому бояться снятия пиндосами кристалла с производства явно не стоит.
a123-flex
Цитата(VladimirB @ Nov 8 2010, 23:12) *
Про виброустойчивость жёстких дисков мне заказчики рассказывали, что они тестировали в RAID на крутых серверных дисках - так вот при небольшой тряске скорость падает охренительно и поток 500МБайт/c уже не пролезает.
А SSD - оно на таких же флешках и делается, а цены на них на бирже определяются. Так что по цене SDD и флешки в слотах примерно одинаково выйдут. Всё зависит от того что вам проще написать контроллер флеш-памяти или бодаться с интерфейсами 10G или PCI-E, а потом с ещё и софтом для ПК.

P.S. Флешки все стандартные - (стандарт ONFI) и корпуса у них стандартные - чтобы на бирже удобнее торговать, поэтому бояться снятия пиндосами кристалла с производства явно не стоит.


Почти убедили)).

Вопщем к решению с 10G тянет заманчивая перспектива отъюзать затем работу повторно - у нас есть необходимость в широких каналах. В принципе путь с флэшками и 1000G на первый взгляд действительно проще.

Полистал стандарт - красотища - готовые димы флешовые! я провидец кажется)))
А какого максимального размера модули доступны ? И кстати, интересно, как у димов с вибростойкостью ?
tAmega
Как часто будет использоваться магнитофон для записи?
Gothard
Цитата(tAmega @ Nov 9 2010, 08:21) *
Как часто будет использоваться магнитофон для записи?

Боитесь, что флэшки убьются?
a123-flex
Думаю, 100000 циклов вполне
SFx
10GE трансиверы ух какие дорогие...
tAmega
100000 циклов это для SLC флешек, а они стоят в 4 раза больше чем MLC(те которыми мы все пользуемся).
1000Гбайт и 100К циклов записи это 64 чипа по 16Гбайт по $28 для SLC = 1792$
dm.pogrebnoy
Цитата(tAmega @ Nov 9 2010, 16:01) *
1000Гбайт и 100К циклов записи это 64 чипа по 16Гбайт по $28 для SLC = 1792$


Это где такие цены???? blink.gif Есть подозрение что стоимость недооценена на десятичный порядок. Либо вы имели ввиду емкость все-таки 16 Гбит, а не байт. Но это всего 2 Гбайта, *64=128Гбайт, но и в этом случае цена раза в два больше должна быть...
tAmega
Точно, вечно путаю биты и байты когда дело касается NAND. Цифру умножить на 8. Наверное дешевле простой винт в жидкой среде подвесить от перегрузокsmile.gif
А как далеко перемещается объект вместе с магнитофоном в течение этого самого часа накопления данных.
Возможно, имеет смысл использовать радиоканал для слива данных, на другой объект который не будет прошибать стену, а тихо стоять рядом.
_pv
Цитата(a123-flex @ Nov 8 2010, 17:34) *
Тогда второй претендент - 10 GBASE-T. Но его, насколько я понимаю, как чистое phy задействовать проблематично (в отличие от 1000 GBASE-T), а морочиться с МАК-ом не очень хотелось бы.
Тогда пришла мысль, а может быть, реализовать многоголовый SATA интерфейс и отписать поток прям на харды, может етот путь проще, чем 10 гигабит интерфейс ?

может тогда сдедать три гигабитных езеренета?
Methane
Цитата(_pv @ Nov 13 2010, 12:04) *
может тогда сдедать три гигабитных езеренета?

МОжет подумать об удобстве всего этого? И вообще, откуда эти гигабайты беруться? Может из запаковать можно?
Oldring
Цитата(a123-flex @ Nov 8 2010, 13:34) *
Тогда пришла мысль, а может быть, реализовать многоголовый SATA интерфейс и отписать поток прям на харды, может етот путь проще, чем 10 гигабит интерфейс ?


Наверняка. То, что мест потенциального затыка меньше - так точно.
a123-flex
Цитата(Oldring @ Nov 13 2010, 17:01) *
Наверняка. То, что мест потенциального затыка меньше - так точно.


Всем спасибо, вопрос решен.
des333
Цитата(a123-flex @ Nov 8 2010, 13:34) *
Тогда второй претендент - 10 GBASE-T. Но его, насколько я понимаю, как чистое phy задействовать проблематично (в отличие от 1000 GBASE-T), а морочиться с МАК-ом не очень хотелось бы.

Можно не морочиться. Можно взять готовый с того же OpenCores.  smile.gif
a123-flex
Цитата(des333 @ Nov 14 2010, 15:57) *
Можно не морочиться. Можно взять готовый с того же OpenCores.  smile.gif


С OpenCores ? cranky.gif Вы его пробовали ?
des333
Цитата(a123-flex @ Nov 14 2010, 17:17) *
С OpenCores ? cranky.gif Вы его пробовали ?

http://opencores.org/project,xge_mac


Пробовал. 
vitan
Цитата(des333 @ Nov 14 2010, 21:38) *
Пробовал. 

Неужели работает? Стабильно и хорошо, или, как обычно, через пень-колоду?
des333
Цитата(vitan @ Nov 14 2010, 21:45) *
Неужели работает? Стабильно и хорошо, или, как обычно, через пень-колоду?

Работает. Достаточно хорошо.  smile.gif
a123-flex
Цитата(des333 @ Nov 14 2010, 23:51) *
Работает. Достаточно хорошо.  smile.gif


а может можно чуть поконкретней)) на каком железе, пробовали ли на скорость, какие затыки ?

ыыыыы. а чувачок то в идентифае моем любимом свое 10G отлаживал. не зря я его так люблю))
des333
Цитата(a123-flex @ Nov 17 2010, 00:09) *
а может можно чуть поконкретней)) на каком железе, пробовали ли на скорость, какие затыки ?


Можно.  smile.gif

Arria GX, 100% нагрузку тянет. Косяков, вроде, никаких не помню. Если и были, то по мелочи.
Кнкн
Цитата(des333 @ Nov 14 2010, 23:51) *
Работает. Достаточно хорошо.  smile.gif


Если возможно, расскажите, пожалуйста, как был организован физический уровень.
agate
Я использую Lattice xaui + хge - собирается без проблем, 10GЕ недорогое решение. Могу поделиться/обменяться.
iosifk
Цитата(a123-flex @ Nov 9 2010, 16:42) *
Думаю, 100000 циклов вполне

У меня на сайте лежит статья о микроконтроллерах НЕК и об имитации EEPROM во флэшь (кажется так).
И там приведена ссылка на аппликуху от Атмела, где говорится, что 10 блоков по 10 тыс.циклов = 100 тыс...
Так что 100 тыс - это маркетинговый ход Атмела... А на самом деле, если переписывать всю флэшку, то только 10 тыс...
:-)
Любопытно, что получилось за 2 года? Какой вариант был реализован?
dxp
Я, может, чего-то не уловил, но к чему эта городьба с флешками и морока с 10G, если 1) сами данные хранить на устройстве нужно только для передачи их на хост; 2) собственно передача в реальном времени жёстко не требуется - главное, чтобы все данные были без потерь сграблены и переданы. Т.е. по сути нужен просто быстрый буфер достаточного объёма. Для этого отлично подходит SDRAM - ни со скоростью, ни с объёмом никаких проблем нет. Если есть опасность, что во время передачи пропадёт питание и данные будут потеряны, сделать схемку с резервным питанием от батарейки/аккумулятора (SDRAM в слипе жрёт весьма мало). Таким образом, можно реализовать буфер очень недорого и несложно и передавать данные почти любым доступным способом. Чем такой путь плох?
blackfin
Цитата(a123-flex @ Nov 8 2010, 14:34) *
Поток - 300 мегабайт в секунду.
Время записи - от 1 с до 1 часа.

Цитата(dxp @ Oct 23 2012, 05:09) *
Я, может, чего-то не уловил, но к чему эта городьба с флешками и морока с 10G, если..
..
Т.е. по сути нужен просто быстрый буфер достаточного объёма. Для этого отлично подходит SDRAM - ни со скоростью, ни с объёмом никаких проблем нет.

Проблемы с объёмом: 300 МБайт/сек * 3600 сек = 1 ТБайт. Потребуется ~1000 м/схем SDRAM с емкостью 1 ГБайт каждая и куча проводов для того, чтобы ими управлять.
dxp
QUOTE (blackfin @ Oct 23 2012, 08:43) *
Проблемы с объёмом: 300 МБайт/сек * 3600 сек = 1 ТБайт. Потребуется ~1000 м/схем SDRAM с емкостью 1 ГБайт каждая и куча проводов для того, чтобы ими управлять.

Да, вы правы, я криво посчитал, терабайт рамы - это действительно дорого.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.