реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Сжатие потока в 100 М/Бит
Maksim
сообщение Jan 29 2005, 14:39
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 164
Регистрация: 27-06-04
Пользователь №: 194



Кто-нибудь пробовал делать сжатие данных на скорости от 100 до 1000 Мбит/с? Какие алгоритмы используются? Или ссылки на них. Кроме V.42 bis ничего пока не нарыл sad.gif


--------------------
qwerty
Go to the top of the page
 
+Quote Post
irum4
сообщение Jan 29 2005, 15:35
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 224
Регистрация: 18-06-04
Пользователь №: 54



Цитата(Maksim @ Jan 29 2005, 17:39)
Кто-нибудь пробовал делать сжатие данных на скорости от 100 до 1000 Мбит/с? Какие алгоритмы используются? Или ссылки на них. Кроме V.42 bis ничего пока не нарыл sad.gif
*

А сжимать как? С потерями, без потерь, во сколько раз сжимать?


--------------------
Электроника - наука о контактах.
Go to the top of the page
 
+Quote Post
Maksim
сообщение Jan 29 2005, 16:03
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 164
Регистрация: 27-06-04
Пользователь №: 194



Сжимать без потерь smile.gif . Данные очень разнородные, поэтому не которые пакеты данных надо сжимать, а не которые нет(ну если они получатся больше исходного cool.gif )


--------------------
qwerty
Go to the top of the page
 
+Quote Post
jeka
сообщение Jan 30 2005, 12:45
Сообщение #4


Administrator
***

Группа: Свой
Сообщений: 400
Регистрация: 10-05-04
Пользователь №: 1



Посмотри библиотечку LZO, она как раз для этого предназначена

http://www.oberhumer.com/opensource/lzo
Go to the top of the page
 
+Quote Post
Harbour
сообщение Feb 11 2005, 08:04
Сообщение #5


Местами Гуру
*****

Группа: Validating
Сообщений: 1 103
Регистрация: 5-12-04
Пользователь №: 1 323



gzip тоже должен быть не плох - тут все зависит какой у тебя проц
Go to the top of the page
 
+Quote Post
Maksim
сообщение Feb 12 2005, 09:56
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 164
Регистрация: 27-06-04
Пользователь №: 194



Цитата(Harbour @ Feb 11 2005, 11:04)
gzip тоже должен быть не плох - тут все зависит какой у тебя проц
*

Проц некатит sad.gif Нужно чтобы это потом запичать в ПЛИС cranky.gif


--------------------
qwerty
Go to the top of the page
 
+Quote Post
Harbour
сообщение Feb 12 2005, 11:08
Сообщение #7


Местами Гуру
*****

Группа: Validating
Сообщений: 1 103
Регистрация: 5-12-04
Пользователь №: 1 323



А че за трабла - у меня altera ep1c6 с CPU nios - gzip реализует на ура, проблема только в том что nios тормоз по жизни и такой поток не потянет. А 1000Mbit это типа 1ГГц выходит - FPGA должна быть довольно быстрой а алгоритм простым - иначе можешь не успеть.
Go to the top of the page
 
+Quote Post
Maksim
сообщение Feb 12 2005, 19:16
Сообщение #8


Частый гость
**

Группа: Свой
Сообщений: 164
Регистрация: 27-06-04
Пользователь №: 194



Цитата(Harbour @ Feb 12 2005, 14:08)
А че за трабла - у меня altera ep1c6 с CPU nios - gzip реализует на ура, проблема только в том что nios тормоз по жизни и такой поток не потянет.  А 1000Mbit это типа 1ГГц выходит - FPGA должна быть довольно быстрой а алгоритм простым - иначе можешь не успеть.
*

Ну пока хочу 100 Mbit wink.gif , а там просто смотрю в перспективу smile.gif
А алгоритм на gzip не подкинешь? smile.gif Как он в плане аппаратного воплощения?


--------------------
qwerty
Go to the top of the page
 
+Quote Post
khach
сообщение Feb 12 2005, 19:29
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 3 439
Регистрация: 29-12-04
Пользователь №: 1 741



Если сжимать в ПЛИС, то вопрос поставлен некорректно. Сколько есть ОЗУ для словаря и как долго можно собирать статистику для словаря? Если словарь можно сделать один раз при разработке, на этом можно очень выиграть. Нужно ли (имеет ли смысл) изменять словарь динамически?
Описание сжимаемых данных в студию. Тогда рекомендации будут более существенными.
Go to the top of the page
 
+Quote Post
Maksim
сообщение Feb 12 2005, 21:18
Сообщение #10


Частый гость
**

Группа: Свой
Сообщений: 164
Регистрация: 27-06-04
Пользователь №: 194



Цитата(khach @ Feb 12 2005, 22:29)
Если сжимать в ПЛИС, то вопрос поставлен некорректно. Сколько есть ОЗУ для словаря и как долго можно собирать статистику для словаря? Если словарь можно сделать один раз при разработке, на этом можно очень выиграть.  Нужно ли (имеет ли смысл) изменять словарь динамически?
Описание сжимаемых данных в студию. Тогда рекомендации будут более существенными.
*

Данные которые надо сжимать могут быть любыми - это локальная сеть и что пользователь будет передавать мне неизвестно (видео, текст, звук и т.д.) sad.gif
Ресур по ПЛИС пока ничем неограничен w00t.gif
Я только начал этим заниматься - вот и возник вопрос -> есть у кого какой-нибудь готовый алгоритм (без кучи начальной математики biggrin.gif - что-то типа: A+B 10 десять раз, найти i-ый бит и т.д. - чтобы можно было оценить в какую ПЛИС ен-то всё влезет). Но данные к сожалению - РАЗНАРОДНЫ wacko.gif


--------------------
qwerty
Go to the top of the page
 
+Quote Post
vovic
сообщение Feb 14 2005, 09:40
Сообщение #11


Участник
*

Группа: Свой
Сообщений: 46
Регистрация: 7-08-04
Пользователь №: 464



Цитата
Но данные к сожалению - РАЗНАРОДНЫ


Абсолютно случайные данные особенно не сожмешь - теоретически - надо будет определять содержимое пакета данных, и для разных данных - разные упаковщики. Когда пакет относительно однороден - хорошо работает RLE - алгоритм простой.
Go to the top of the page
 
+Quote Post
jeka
сообщение Feb 15 2005, 20:46
Сообщение #12


Administrator
***

Группа: Свой
Сообщений: 400
Регистрация: 10-05-04
Пользователь №: 1



если сжимать пакеты tcp/ip по отдельности, то много не выиграешь из-за их размера. здесь возникает проблема сжатия отдельно заголовков, отдельно содержимого пакетов. причем наилучшее сжатие будет достигаться если каждое ip соединение будет сжиматься как поток со своим динамическим словарем. вообщем, это задача не из легких. Большинство провайдеров предпочитают поставить более производительные трансиверы на оптику, увеличив пропускную способность на порядок, чем заниматься сжатием со средней эффективностью в районе 1.5:1.
и гораздо проще оборудовать под эти цели например персоналку с юниксами, чем изобретать новое изделие.
Go to the top of the page
 
+Quote Post
acex2
сообщение Feb 16 2005, 20:45
Сообщение #13


Адепт
****

Группа: Свой
Сообщений: 520
Регистрация: 15-02-05
Пользователь №: 2 656



Если содержание сжимаемых данных (т.е. мультимедиа, текст, bin и т.д.) неизвестно, то основной проблемой будет выбор алгоритма сжатия.

Из более-менее универсальных алгоритмов для высокоскоростного сжатия на аппаратном уровне больше всего подходят LZW и LZ77. Однако на одной FPGA здесь не "выехать". Так как основой и того и другого алгоритма служит быстрый поиск в динамическом словаре или в скользящем пост-окне, то лучше всего для этого задействовать внешнюю CAM (Content-Addressable Memory), благо их сейчас выпускают многие фирмы, например Cypress, ISSI, SyberLogic и др. CAM используется для поиска соответствий IP<->MAC в быстрых роутеров и обычно называются NSE (Network-Search Engine) - по этому ключевому слову их и стоит искать. Мне приходилось заниматься такими разработками и скорость сжатия можно получить вплоть до нескольких Гбит/сек для LZW и немного меньше для LZ77. Стоимость производства одной PCI платы пару лет назад получалась в пределах 150-200$. Сейчас скорее всего еще меньше, так как из-за конкуренции цены на CAM и быстрые FPGA постоянно падают.
Go to the top of the page
 
+Quote Post
Wilde
сообщение Mar 18 2005, 19:27
Сообщение #14





Группа: Участник
Сообщений: 11
Регистрация: 18-03-05
Пользователь №: 3 477



>>это типа 1ГГц выходит - FPGA должна быть довольно быстрой а алгоритм >>простым - иначе можешь не успеть.
Плис на таких внутренних частотах пока не работают, а вот внешние каналы связи, например у VIRTEX4 запросто. Все уже будет зависить от алгоритма. И внутренние частоты порядка сотни МГЦ тебя вполне устроят.
Go to the top of the page
 
+Quote Post
Fast
сообщение Mar 31 2005, 22:01
Сообщение #15


Местный
***

Группа: Свой
Сообщений: 216
Регистрация: 31-03-05
Из: Зеленоград
Пользователь №: 3 839



acex2 дело говорит
модемное сжатие, сжатие на уровне PPP (Ван Якобсон, LZS, BSD LZW...) - все разновидности LZW. Внешняя CAM бы легла, наверное. LZ77 словарный двухпроходный - отпадает.
Я вот что подумал, может V44 попробуешь адаптировать? Я ее софтово делал - (правда декодер только) неплохая комбинация LZW и RLE, если 2-мя словами. Эффективно сжимает повторяющиеся подстроки и цепочки одинаковых символов (можно забабахать цепочки бит).
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 08:57
Рейтинг@Mail.ru


Страница сгенерированна за 0.01536 секунд с 7
ELECTRONIX ©2004-2016