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

 
 
> Поделитесь, пожалуйста, USB ISP1761 коркой без ниоса, вдруг кто знает или направит
iiv
сообщение May 3 2011, 18:59
Сообщение #1


вопрошающий
*****

Группа: Свой
Сообщений: 1 726
Регистрация: 24-01-11
Пользователь №: 62 436



Всем привет,

имеется у меня на плисоборде USB ISP1761, его даташит я к этому топику приаттачил.

Хочу через него качать в одну сторону, с плиски на линукс компьютер данные. Через ниос, как пишут на Альтера-форуме, большую скорость, больше 50МБит/с, развить не удается - типа ниос тормозит. Сама железка вроде 480МБит/с должна показывать. Как сделать - читал даташиты, не смог сам разобраться. Вдруг кто-то имел дело с таким зверьком, посоветуйте, пожалуйста, простое решение!


В плиске сам этот девайс виден так:

Код
output       [17:1]             OTG_A;
output                          OTG_CS_n;
inout        [31:0]             OTG_D;
output                          OTG_DC_DACK;
input                           OTG_DC_DREQ;
input                           OTG_DC_IRQ;
output                          OTG_HC_DACK;
input                           OTG_HC_DREQ;
input                           OTG_HC_IRQ;
output                          OTG_OE_n;
output                          OTG_RESET_n;
output                          OTG_WE_n;



Спасибо

ИИВ
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Stewart Little
сообщение May 4 2011, 07:47
Сообщение #2


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(iiv @ May 3 2011, 22:59) *
Через ниос, как пишут на Альтера-форуме, большую скорость, больше 50МБит/с, развить не удается - типа ниос тормозит.

Ссылку в студию!


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
iiv
сообщение May 14 2011, 16:01
Сообщение #3


вопрошающий
*****

Группа: Свой
Сообщений: 1 726
Регистрация: 24-01-11
Пользователь №: 62 436



Цитата(Stewart Little @ May 4 2011, 13:47) *
Ссылку в студию!

Одно из последних холиваров там, который тянется с 2009 года такой

http://www.alteraforum.com/forum/showthread.php?t=18934

в основном конечно народ пишет про етернет, а не про усб, но про усб я тоже такое же там видел, да и пример, приложенный к борде, где у меня эта ISP1761 тоже совсем не мегабайты пиковой производительности показывает, вот по этому, вопрошаю. Если вдруг кто-то на ниосе с ISP1761 может хотя бы >350 МБитс показать, поделитесь, пожалуйста, сокровенными знаниями как это получается, хотя думаю, что как раз без ниоса надо.

Спасибо

ИИВ
Go to the top of the page
 
+Quote Post
alexPec
сообщение May 14 2011, 16:27
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968



Цитата(iiv @ May 14 2011, 20:01) *
Одно из последних холиваров там, который тянется с 2009 года такой

http://www.alteraforum.com/forum/showthread.php?t=18934

в основном конечно народ пишет про етернет, а не про усб, но про усб я тоже такое же там видел, да и пример, приложенный к борде, где у меня эта ISP1761 тоже совсем не мегабайты пиковой производительности показывает, вот по этому, вопрошаю. Если вдруг кто-то на ниосе с ISP1761 может хотя бы >350 МБитс показать, поделитесь, пожалуйста, сокровенными знаниями как это получается, хотя думаю, что как раз без ниоса надо.

Спасибо

ИИВ


При таких скоростях программно гонять поток по-моему не вариант. В Вашем случае по-моему надо ДМА ставить, тогда легко получится, главное чтоб данные успели сформироваться. Так, на вскидку, у усб-камня 32 бита, sg-dma на чипе цыклон3 -8 на 80 МГц в легкую идет, ну допустим, 50% шины (вполне реально) на этой частоте при работе проца останется на дма, получаем производительность 80*32*0,5 = 1280 мбит. Т.е. ниос должен только указывать откуда данные для дма брать, тогда все ок. У меня сейчас шина ниоса (16 бит внешняя память) на 80 МГц со всеми дма реально гоняет где-то 1-1,1 Гбит.
По-моему при таких скоростях надо подумать как успеть сформировать данные и потом принять их, да еще и обработать. Если не секрет, куда такие потоки? Пробовал примитивно (без прерываний, не kernel-драйвером), считывать с усб постоянный поток - проц грузится на 100%, скорость - порядка 300 кбайт/с, т.е. около 3 мбит, при этом ограничивается компом. С кернелом и прерываниями конечно выдавливается нормально. Комп Pentium4 2,4ГГц.
Go to the top of the page
 
+Quote Post
iiv
сообщение May 14 2011, 17:12
Сообщение #5


вопрошающий
*****

Группа: Свой
Сообщений: 1 726
Регистрация: 24-01-11
Пользователь №: 62 436



Цитата(alexPec @ May 14 2011, 22:27) *
При таких скоростях программно гонять поток по-моему не вариант.


Спасибо, АлексПек, Вам за ответ,

действительно я и про USB, и про что-то другое думаю. Данные у меня легко на плиске формируются, блоками примерно по 1.5-2кбайта. Скорость создания - примерно 1 такой блок в микросекунду. Задача - радиохимическое исследование распадов некоторых изотопов. Данные со спец сенсоров.

Я пока эти блоки просто усредняю или выбрасываю все, кроме некоторых. Пока то, что сам смог получать, примерно один блок в две милисекунды по SPI интерфейсу. Когда данные придут, там компьютер хороший, с данными справится sm.gif

Основной затык - именно тащить данные с плисины на комп. На плиске есть этот пресловутый USB ISP1761 и около 24 (не помню точно) свободных 2.5В GPIO ног, каждая из которых может дрыгатся примерно с частотой около 60МГц из-за конструкционных особенностей борды.

Так как я совсем не паяльник, а софтверник, я хочу туда что-то воткнуть или поюзать USB интерфейс, чтобы хоть как-то протащить, так как реально если я сильно постораюсь, я эти блоки примерно в 2-3 раза смогу сжать, но алгоритм сжатия у меня еще на плиске не запрограммирован (не успел еще, мне не до этого пока было).

Вот такая незадачка.

Альтернатива развести руководство еще на одну плисоборду с правильным коннектором и гигабитным етернетом, изпопрошайничать здесь на форуме корку на UDP 1GB/s для RGMII, но, если я таки руководство на эту борду разведу, а у меня все это не заработает, руководство меня за разбазаривание, не то слово, как отругает.

ИИВ

Цитата(AlphaMil @ May 14 2011, 22:43) *
Гляньте на opencores.org, возможно там кто-то делал.

спасибо Вам за ответ, но, к сожалению, я там не видел, поэтому сюда вопрос запостил. И на Альтера форуме не находится.
Go to the top of the page
 
+Quote Post
alexPec
сообщение May 14 2011, 18:26
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968



Цитата(iiv @ May 14 2011, 21:12) *
Спасибо, АлексПек, Вам за ответ,

действительно я и про USB, и про что-то другое думаю. Данные у меня легко на плиске формируются, блоками примерно по 1.5-2кбайта. Скорость создания - примерно 1 такой блок в микросекунду. Задача - радиохимическое исследование распадов некоторых изотопов. Данные со спец сенсоров.

Я пока эти блоки просто усредняю или выбрасываю все, кроме некоторых. Пока то, что сам смог получать, примерно один блок в две милисекунды по SPI интерфейсу. Когда данные придут, там компьютер хороший, с данными справится sm.gif

Основной затык - именно тащить данные с плисины на комп. На плиске есть этот пресловутый USB ISP1761 и около 24 (не помню точно) свободных 2.5В GPIO ног, каждая из которых может дрыгатся примерно с частотой около 60МГц из-за конструкционных особенностей борды.

Так как я совсем не паяльник, а софтверник, я хочу туда что-то воткнуть или поюзать USB интерфейс, чтобы хоть как-то протащить, так как реально если я сильно постораюсь, я эти блоки примерно в 2-3 раза смогу сжать, но алгоритм сжатия у меня еще на плиске не запрограммирован (не успел еще, мне не до этого пока было).

Вот такая незадачка.

Альтернатива развести руководство еще на одну плисоборду с правильным коннектором и гигабитным етернетом, изпопрошайничать здесь на форуме корку на UDP 1GB/s для RGMII, но, если я таки руководство на эту борду разведу, а у меня все это не заработает, руководство меня за разбазаривание, не то слово, как отругает.

ИИВ


спасибо Вам за ответ, но, к сожалению, я там не видел, поэтому сюда вопрос запостил. И на Альтера форуме не находится.


Так тут даже не мегабиты. 2кбайт за мкс это 2000 мбайт в сек = примерно 20 Гбит. Даже если сжимаем в 3 раза 20/3 = 6,... Гбит - не лезет даже в Гбит эзернет (это притом что гигабит в эзернете по-моему со всей служебной инфой, типа заголовков пакетов, CRC и т.д.). Да и комп такое точно не примет в реалтайм (если не суперкомпьютер sm.gif ) По-моему буферизировать на борде надо, ставить DDR какую-нибудь, на 2-4 Гбайт (смотря какое время записи нужно). Но при таких скоростях с разводкой попотеть надо будет, без опыта точно с первого раза не будет работать. А потом уже стравливать тихонько на комп...

Цитата
Задача - радиохимическое исследование распадов некоторых изотопов.


Чем только люди не занимаются... sm.gif
Go to the top of the page
 
+Quote Post
iiv
сообщение May 14 2011, 19:04
Сообщение #7


вопрошающий
*****

Группа: Свой
Сообщений: 1 726
Регистрация: 24-01-11
Пользователь №: 62 436



Вы правы, в идеале мне нужен гигабайт в секунду sm.gif И шкаф с 24 графическими картами, которые должны обработать этот поток эмоций, мое начальство купит тут же, так как уверено в моих способностях обработать эти данные.

Реалии таковы, что я ни разу в жизни ничего не разводил, к своему стыду, и могу только программировать. Именно изходя из этого факта я готов понапрягаться, чуток повыбрасывать данные (в ущерб времени эксперимента), но, таки насобирать свои положенные десять терабайт данных. Просто если я его по SPI тащить буду, то ждать придется около месяца, и за это время все изотопы распадутся. А если я хоть в 30 раз подниму свой поток в 15МБит (SPI), то эксперимент займет всего-то один день и есть надежда, что я соберу то, что мне надо.
Go to the top of the page
 
+Quote Post
alexPec
сообщение May 14 2011, 20:37
Сообщение #8


Профессионал
*****

Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968



Цитата(iiv @ May 14 2011, 23:04) *
Вы правы, в идеале мне нужен гигабайт в секунду sm.gif И шкаф с 24 графическими картами, которые должны обработать этот поток эмоций, мое начальство купит тут же, так как уверено в моих способностях обработать эти данные.

Реалии таковы, что я ни разу в жизни ничего не разводил, к своему стыду, и могу только программировать. Именно изходя из этого факта я готов понапрягаться, чуток повыбрасывать данные (в ущерб времени эксперимента), но, таки насобирать свои положенные десять терабайт данных. Просто если я его по SPI тащить буду, то ждать придется около месяца, и за это время все изотопы распадутся. А если я хоть в 30 раз подниму свой поток в 15МБит (SPI), то эксперимент займет всего-то один день и есть надежда, что я соберу то, что мне надо.


Ну если вопрос стоит "чем больше, тем лучше", а не "мне нужен гигабайт в секунду и не меньше", то запустите ниос на своей борде, дма на камень усб, и даже если все это запустить на 40 мгц - получите поток порядка 40*32*0,5 = 640 мбит, т.е. будете ограничены возможностями усб камня и компьютером который это принимает. Избыток скорости со стороны ниоса съест как раз обработчик прерываний по окончанию передачи блока данных, и выжмете максимум из своей борды, ну а если уж не хватит - тогда разводка новой платы, но подозреваю что Вам надо будет не один гигабит эзернет. Кстати, если плата недалеко от компа, то может есть смысл посмотреть в сторону SATA? Драйвер свой и скорость то поболе чем усб 2.0 будет. 10 терабайт своих быстро забьете sm.gif
Go to the top of the page
 
+Quote Post
iiv
сообщение May 14 2011, 21:40
Сообщение #9


вопрошающий
*****

Группа: Свой
Сообщений: 1 726
Регистрация: 24-01-11
Пользователь №: 62 436



Цитата(alexPec @ May 15 2011, 01:37) *
Ну если вопрос стоит "чем больше, тем лучше", а не "мне нужен гигабайт в секунду и не меньше", то запустите ниос на своей борде, дма на камень усб, и даже если все это запустить на 40 мгц - получите поток порядка 40*32*0,5 = 640 мбит, т.е. будете ограничены возможностями усб камня и компьютером который это принимает. Избыток скорости со стороны ниоса съест как раз обработчик прерываний по окончанию передачи блока данных, и выжмете максимум из своей борды, ну а если уж не хватит - тогда разводка новой платы, но подозреваю что Вам надо будет не один гигабит эзернет. Кстати, если плата недалеко от компа, то может есть смысл посмотреть в сторону SATA? Драйвер свой и скорость то поболе чем усб 2.0 будет. 10 терабайт своих быстро забьете sm.gif

Уважаемый alexPec,

конечно же мне хватит и 480МБитов, а не 640МБит, как Вы советуете sm.gif и про эти 480МБит я собственно затеял этот топик.

Вот только с ниосом у меня совсем плохо получается, стандартный пример, который прилагается к борде, отожрал половину блочной памяти (я так не могу, мне самому она нужна), и показывает далеко даже не мегабит, и, как мне кажется, тормозит именно из-за того, что ниос не успевает положить в дма усб камня свои 4 байта даже за несколько тактов. Поэтому-то я и ищу простую корку, по возможности без ниоса, которая бы мне это и делала бы!
Go to the top of the page
 
+Quote Post
alexPec
сообщение May 14 2011, 22:40
Сообщение #10


Профессионал
*****

Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968



Цитата(iiv @ May 15 2011, 01:40) *
Уважаемый alexPec,

конечно же мне хватит и 480МБитов, а не 640МБит, как Вы советуете sm.gif и про эти 480МБит я собственно затеял этот топик.

Вот только с ниосом у меня совсем плохо получается, стандартный пример, который прилагается к борде, отожрал половину блочной памяти (я так не могу, мне самому она нужна), и показывает далеко даже не мегабит, и, как мне кажется, тормозит именно из-за того, что ниос не успевает положить в дма усб камня свои 4 байта даже за несколько тактов. Поэтому-то я и ищу простую корку, по возможности без ниоса, которая бы мне это и делала бы!

Что-то не то по-моему. Какой чип? На какой частоте ниос и на какой дма? Какой проц? (/s /f) Память снаружи еще какая-нибудь есть? И все-таки, Вы программно ложите байты в усб-камень? Тогда конечно не прокатит. В ниосе надо добавить компонент sg-dma.
Вообще я год как с ниосом работаю, но система готовая уже есть (даже 2). Так вот в этой системе внешняя память, 16 бит. Проц работает на 80 МГц. В системе 2 дма, один вытаскивает данные со скоростью 5МГц х 16 бит, другой 20 МГц х 16 бит, плюс сам ниос (программа и данные расположены в той же внешней памяти). Поток приличный получается. Если бы выделить отдельную память под программу, отдельную под данные дма, то еще больше получится. И это все реально работает, почему у Вас то не должно? Тоже будет. Повторюсь, ниос не должен каждый байт заталкивать в усб, это должен делать дма ниоса, ниос только должен указать откуда и сколько байт переслать.
А с коркой вряд ли кто поможет, ведь она должна быть адаптирована больше под Вашу систему. Если используете камень, усб в нем уже сделано, наруже от него только паралельный интерфейс, корка под паралельный интерфейс - это больше корка для того откуда данные будут браться.
А с памятью - можно поэксперементировать, оптимизировать. Я когда первый ниос делал, он работал с 2 кбайтами ончип памяти и все. Завтра еще повнимательнее гляну на доку для усб камня.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 12:31
Рейтинг@Mail.ru


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