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

 
 
9 страниц V  « < 3 4 5 6 7 > »   
Reply to this topicStart new topic
> USB Осциллограф-анализатор, кто 'юзал'?
AndyBig
сообщение Apr 28 2006, 11:05
Сообщение #61


Иногдящий
****

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



10 разрядов АЦП хватит. На частоту выборок больше 100-120 МГц расчитывать не стоит - во-первых сами АЦП на такие частоты достаточно дороги, во-вторых ПЛИС с таким грейдом также недешевы. Как вариант (о чем я уже писал) - поставить два АЦП по 50-60 MSPS, к каждому из них по своему чипу SRAM на 128 КБ. Так можно сделать два канала по 50 MSPS или один канал на 100 MSPS. Опять же, этот вариант даст масштабируемость - можно впаивать оба АЦП, можно только один, ограничиваясь при этом только одним каналом на 50 MSPS. При этом заливать соответствующую прошивку ПЛИС.
Отладка коммуникационных протоколов может вестись в режиме самописца, ограничиваясь скоростью работы контроллера и пропускной способностью канала. Все равно, как правило, частоты там не превышают одного-двух мегагерц (я не беру в расчет высокоскоростные протоколы, то отдельная песня, выходящая за пределы обсуждаемого девайса). Ну а в отдельных случаях придется смириться с ограниченным объемом буферной памяти - 128 или 256 КБ, этого в большинстве случаев должно хватать.
Go to the top of the page
 
+Quote Post
nicom
сообщение Apr 28 2006, 11:26
Сообщение #62


Знающий
****

Группа: Свой
Сообщений: 544
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 870



Цитата(khach @ Apr 28 2006, 13:57) *
Давайте не сводить тему к пропускной способности USB, а то тоже будет 100 страниц в теме, как на ИХБТ. :-(
Считаем полосу пропускания- два канала по 8 бит с частотой семплирования 105 МГц (АЦП-AD9218). Получаем 210 Мегабайт в секунду. Если ставить новые АЦП от Linear Technology (LTC2251), то и 250 мег в секунду может потребоватся. Разрядность считывания с АЦП -10 -12 бит (12 бит- для продвинутых в шумодавлении гуру). В FPGA выборки масштабируются до 8 бит в соответствии с выбранным пределом измерения. Теперь выбор памяти- 1 вариант: внутренняя память ПЛИС- быстрая (до 250 мег, произвольной разрядности (1-36 бит) но короткая (10-20 кбайт). 2 вариант: SDRAM- огромный размер, нужно мало внешних ножек ПЛИС, но низкая частота (66-100 мгц) и прерывистость записи при смене страниц - в ПЛИС нужен навороченный ФИФО для выравнивания потока приходящего с АЦП и уходящего в контроллер SDRAM. 3 вариант - синхронная статическая (ZBR). Скорости до 200 Мгц, обьемы до полумега, но дорогая и требует много ножек ПЛИС. 4- обычная статика. Все тоже самое что ZBR но разогнать выше 100 МГЦ сомнительно.
Интерфейс с компом- любой. На современном этапе наверно лучше какой-то младший АРМ с USB (обычным 12 МГцовым). Желающие всегда смогут перенести софт на старший АРМ ( с эзернетом, VGA и прочими прелестями).
Размер памяти. Обычно достаточно пары экранов ( 4-8 киловыборок). Но если надо отлаживать коммуникационные протоколы, то и 128 к маловато будет. Поэтому использование только внутренней памяти ПЛИС врядли оправдано. Разрядность шины - 16 бит.
Выбор ПЛИС. Альтера или Зайлинкс - практически без разницы. Только корпус нужен TQFP208, иначе ножек на два канала нехватит. С очень большим трудом можно упихнутся в 144 ногий корпус, но это ценой уменьшения разрядности памяти до 8 бит и соответственным уменьшением частоты выборок до 30-40 Мгц.


...В общем то почти все верно..., только такие приборы уже есть и производятся серийно, например,
достаточно неплохой вариант:
http://www.rudshel.ru/production/data_acqu...s/la-n4usb.html
но, ЦЕНА? - а попробуйте сами сделать... будет не сильно дешевле...

Разговор о том, что бы сделать НЕДОРОГОЙ осциллограф (приставку) с полосой под 10-20МГц...

...ну, и до кучи... USB1.1, например, нам удавалось передавать в среднем темпе до 0.9МБайт/сек реально, таким образом при выкачивании буфера 128к у Вас задержка чуть меньше 0.2сек,- наплевать и забыть.

По поводу объема памяти - не мелочитесь, по опыту скажу - 128к - это мало.

АЦП 12 бит, и более резко поднимают планку стоимости, пока самый оптимум - ADC08100 от NSC.

Память - статика 10нс справляется с потоком 100МБайт/сек при аккуратной разводке. цена в КТЦ K6R4008V1D-TI10 порядка 3-х уё, но это 512к на 8.

Контроллер - только CPLD. типа XC9636ХL...
синхронизация - может быть дешевле цифровая, но аналоговая более функционально, тем более, её можно сделать не только внутренней, но и внешней... стоимость вопроса 1-2уе

Вопрос с входной части - примерно - С1-114 +доработки... Не забывайте, хорошие реле стоят прилично... согласен, можно Г, но и в итоге получится ... то же Г.

Анекдот - об увеличении Г.: если к 1кг. повидла добавить 1 кг. Г., то в итоге у Вас получится 2кг. Г. smile.gif

корпус, блок питания (преобразователь), наклейки и пр...
По общим прикидкам - можно влезть в 4-5тыс.руб с некоторой нормой прибыли (такой проект у нас обсуждался, но)...
Go to the top of the page
 
+Quote Post
AlexanderX
сообщение Apr 28 2006, 12:20
Сообщение #63


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

Группа: Свой
Сообщений: 107
Регистрация: 21-07-05
Из: Киев
Пользователь №: 6 977



У нас возникала идея создания подобного устройства. Однако дальше идеи дело не пошло по следующим причинам:

1. Устройство должно быть дешевым до 300-400$ иначе оно будет не нужно.

2. Желательно с открытым исходным кодом для улучшения продвижения его на рынке. Но при этом иметь защиту от копирования (деньги надо-же как-то зарабатывать)

3. Оно должно быть модульным. Модули могут быть съемными. Типичный набор модулей: осциллограф, цифровой анализатор, функциональный генератор цифровой и аналоговый.

4. Устройству необходимы хорошие пробники

Планировалось делать устройство на USB 2.0 с внутренней буферной памятью типа SDRAM в объеме от 16 до 64MB. Планировалась продажа только железа, а софт постепенно будет дописываться и выкладываться в Internet.

У нас есть группа разработчиков состоящая из четырех человек: электронщик FPGA-разарботчик и программист МК, FPGA-разработчик и писатель драйверов(системный программист), разводчик плат любой сложности, программист для написания интерфейсов. Почти весь проект мы можем поднять собственными силами кроме входной и выходной аналоговой части.

Мы все еще носимся с этой идеей, так что если кому-то интересно можем скооперироваться. Но до сих пор не ясно стоит-ли овчинка выделки. Делать эту вещь только для личного пользования не интересно, проще купить готовое. А если делать как коммерческий продукт, то какое количество можно продать - не ясно. ninja.gif
Go to the top of the page
 
+Quote Post
AndyBig
сообщение Apr 28 2006, 12:33
Сообщение #64


Иногдящий
****

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



Цитата
но, ЦЕНА? - а попробуйте сами сделать... будет не сильно дешевле

Ну, не знаю... http://www.rudshel.ru/production/data_acqu.../la-n10usb.html - 100 МГц за 600 с лишним долларов... Не думаю, что там делают наценку всего на 20-30% smile.gif.
Цитата
таким образом при выкачивании буфера 128к у Вас задержка чуть меньше 0.2сек

А в режиме осциллографа передавать потребуется всего по 4-8 КБ на кадр smile.gif.
Цитата
По поводу объема памяти - не мелочитесь, по опыту скажу - 128к - это мало

Смотря для чего. Для осциллографа - достаточно, для анализатора - маловато, но для начала нужно определиться с предполагаемой функциональностью и параметрами, которых потом и нужно будет жестко придерживаться smile.gif. И всяческие предложения типа "а давайте еще сделаем..." отвергать с ходу smile.gif.
Цитата
синхронизация - может быть дешевле цифровая, но аналоговая более функционально, тем более, её можно сделать не только внутренней, но и внешней... стоимость вопроса 1-2уе

Вопрос с входной части - примерно - С1-114 +доработки... Не забывайте, хорошие реле стоят прилично... согласен, можно Г, но и в итоге получится ... то же Г.

Тут слово тем, кто разбирается smile.gif.
Цитата
корпус, блок питания (преобразователь), наклейки и пр...

Нафиг smile.gif. Корпус каждый подберет по своему вкусу/разумению, то же самое с блоком питания.
Go to the top of the page
 
+Quote Post
AndyBig
сообщение Apr 28 2006, 12:50
Сообщение #65


Иногдящий
****

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



Цитата
Делать эту вещь только для личного пользования не интересно, проще купить готовое.

Я, например, могу потратить максимум 5000 руб. Где можно купить за 5000 руб. цифровой осциллограф с частотой дискретизации хотя бы 20 МГц?
Go to the top of the page
 
+Quote Post
khach
сообщение Apr 28 2006, 12:50
Сообщение #66


Гуру
******

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



Цитата(AlexanderX @ Apr 28 2006, 14:20) *
У нас возникала идея создания подобного устройства. Однако дальше идеи дело не пошло по следующим причинам:

Можете предложить свое виденье цифровой части? И продемонстрировать максимальную скорость заливки длинного блока данных в ОЗУ с двух имитаторов АЦП? Потому что с SDRAMom у нас получался бурст длиной в одну страницу, а потом задержка на переключение страниц. Есть ли возможность сделать скоростной контроллер памяти типа чтение-модификация-запись?

Есть идеи по поводу аппаратной реализации DPO (digital phosphore), но с доступными IP cores контроллеров памяти оно работает неудовлетворительно медленно. Если получится больше 100мегасемплов в секунду, то с аналоговой частью поможем. Входной усилок до 150 Мгц есть, есть триггер и схема ВАП (ТДС). Цифровую часть ТДС прийдется аккуратно разводить в ПЛИСе (вылизывать задержки).

Пока есть проблемы с коммутацией каналов - было желание сделать возможность одноканальной работы с удвоенной частотой семплирования двумя АЦП в интерливе. Это работает, но наблюдается кроссталк между каналами.
Go to the top of the page
 
+Quote Post
nicom
сообщение Apr 28 2006, 12:58
Сообщение #67


Знающий
****

Группа: Свой
Сообщений: 544
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 870



Цитата(AndyBig @ Apr 28 2006, 16:33) *
Цитата
но, ЦЕНА? - а попробуйте сами сделать... будет не сильно дешевле

Ну, не знаю... http://www.rudshel.ru/production/data_acqu.../la-n10usb.html - 100 МГц за 600 с лишним долларов... Не думаю, что там делают наценку всего на 20-30% smile.gif.
Цитата
таким образом при выкачивании буфера 128к у Вас задержка чуть меньше 0.2сек

А в режиме осциллографа передавать потребуется всего по 4-8 КБ на кадр smile.gif.
Цитата
По поводу объема памяти - не мелочитесь, по опыту скажу - 128к - это мало

Смотря для чего. Для осциллографа - достаточно, для анализатора - маловато, но для начала нужно определиться с предполагаемой функциональностью и параметрами, которых потом и нужно будет жестко придерживаться smile.gif. И всяческие предложения типа "а давайте еще сделаем..." отвергать с ходу smile.gif.
Цитата
синхронизация - может быть дешевле цифровая, но аналоговая более функционально, тем более, её можно сделать не только внутренней, но и внешней... стоимость вопроса 1-2уе

Вопрос с входной части - примерно - С1-114 +доработки... Не забывайте, хорошие реле стоят прилично... согласен, можно Г, но и в итоге получится ... то же Г.

Тут слово тем, кто разбирается smile.gif.
Цитата
корпус, блок питания (преобразователь), наклейки и пр...

Нафиг smile.gif. Корпус каждый подберет по своему вкусу/разумению, то же самое с блоком питания.


Пойдем, как из стека, командами POP AX smile.gif (извините, за каламбур, с зада на перед)

...еще раз - делаем схему+прошивки+открытый код драйверов... или все таки устройство...

4-8к и 128к - разница в цене вопроса практически=0., зато ..., я предлагаю 512к... и убить всех зайцев, и осциллограф, и анализатор спектра...

...а отвергать можно только на этапе после "совместно утвержденного ТЗ", но здравый смысл должен быть всегда, на любом этапе. smile.gif

...каналов дешевого осциллографа предлагаю только 1 (один) + синхронизация, при чем, в полосе частот выше основного канала (у хороших приборов, обычно так и есть)

...Ну, господа, начнем составлять ТЗ???
Go to the top of the page
 
+Quote Post
_artem_
сообщение Apr 28 2006, 13:03
Сообщение #68


учащийся
*****

Группа: Свой
Сообщений: 1 065
Регистрация: 29-10-05
Из: города контрастов
Пользователь №: 10 249



Можно сделать два банка памяти и поочередно записывать то в один то в другой . Тогда физически можно будет считывать из одного когда идет запись в другой .

Можно организовать память в 32 бита и уменьшить скорость записи за чет записи за один цикл двух или трех измерений.

Еше , как насчет дуал порт рам ?


--------------------
Зачем лаять на караван , когда на него можно плюнуть?

Go to the top of the page
 
+Quote Post
khach
сообщение Apr 28 2006, 13:11
Сообщение #69


Гуру
******

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



Цитата(_artem_ @ Apr 28 2006, 15:03) *
Можно сделать два банка памяти и поочередно записывать то в один то в другой . Тогда физически можно будет считывать из одного когда идет запись в другой .

Можно организовать память в 32 бита и уменьшить скорость записи за чет записи за один цикл двух или трех измерений.

Еше , как насчет дуал порт рам ?

Ног ПЛИС нехватит на две микросхемы памяти. Или хотите связыватся с ПЛИС в BGA корпусах?
Дуал порт требует двойного расхода линий адреса и данных- неинтересно, тем более, что читать память во время сбора данных необязательно (в простейшей версии обработки данных).
Go to the top of the page
 
+Quote Post
AlexanderX
сообщение Apr 28 2006, 13:28
Сообщение #70


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

Группа: Свой
Сообщений: 107
Регистрация: 21-07-05
Из: Киев
Пользователь №: 6 977



Цитата
Можете предложить свое виденье цифровой части?


Цифровая часть выглядит до смешного просто. Имеем ПЛИС которая принимает данные с двух или более каналов и сливает их побитно на частоте работы АЦП во внутреннее FIFO. Это FIFO - хранит данные для записи во внешнюю SDRAM. Далее стоит контроллер памяти со специальным блоком управления который умеет записывать эти данные во внешнюю SDRAM, а также вычитывать данные из памяти для отправки их в USB. Специальность управления контроллера памяти заключается в организации циклического буфера (такое себе внешнее FIFO) с указателем записи и указателем чтения.

Цитата
И продемонстрировать максимальную скорость заливки длинного блока данных в ОЗУ с двух имитаторов АЦП? Потому что с SDRAMom у нас получался бурст длиной в одну страницу, а потом задержка на переключение страниц. Есть ли возможность сделать скоростной контроллер памяти типа чтение-модификация-запись?


Такой контроллер памяти мы уже сделали для другого проекта. Мы постарались его написать максимально производительным и при проверке получили около 97% КПД. Он умеет перекрывать запись/чтение данных и открытие/закрытие активных страниц. Поэтому даже небольшое FIFO на одном модуле внутренней памяти может выровнять скорость со входа и скорость записи/чтения во внешнюю SDRAM. При ширине шины памяти 32разряда и частотой ~133MHz пропускная способность памяти составляет ~515MB/s. Если учесть, что вычитка в USB более 45MB/s не потребуется, то для записи может использоваться 470MB/s. И таким образом мы можем получить два канала АЦП по 235MHz, при условии что выход канала - 8 бит. Если колиство бит больше - либо снижать скорость АЦП, либо увеличивать разрадность шины данных SDRAM.

Цитата
Есть идеи по поводу аппаратной реализации DPO (digital phosphore)

Подробнее пожалуйста.

Цитата
Цифровую часть ТДС прийдется аккуратно разводить в ПЛИСе (вылизывать задержки).

За это можете не переживать, опыт работы на высоких частотах как внутри ПЛИС так и снаружи у нас имеются.

Цитата
Пока есть проблемы с коммутацией каналов - было желание сделать возможность одноканальной работы с удвоенной частотой семплирования двумя АЦП в интерливе. Это работает, но наблюдается кроссталк между каналами.

Вероятнее всего кроссталк из-за аналоговой части. С точки зрения цифры принять данные что с одного входного канала, что с двух - одинаково. Нужно только плату хорошо развести.
Go to the top of the page
 
+Quote Post
AlexanderX
сообщение Apr 28 2006, 13:50
Сообщение #71


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

Группа: Свой
Сообщений: 107
Регистрация: 21-07-05
Из: Киев
Пользователь №: 6 977



Цитата
Ног ПЛИС нехватит на две микросхемы памяти. Или хотите связыватся с ПЛИС в BGA корпусах?

Можно BGA - это нас не пугает. А можно поставить DDR или DDR-2, тогда ног потребуется меньше. Правда контроллер для DDR еще мы не написали. blink.gif
Go to the top of the page
 
+Quote Post
khach
сообщение Apr 28 2006, 14:21
Сообщение #72


Гуру
******

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



Цитата(AlexanderX @ Apr 28 2006, 15:28) *
Цифровая часть выглядит до смешного просто.

Теорию то все знают, главное, чтобы оно работало в железе.

Цитата
Такой контроллер памяти мы уже сделали для другого проекта. Мы постарались его написать максимально производительным и при проверке получили около 97% КПД. Он умеет перекрывать

А что такое КПД в данном случае, можно расшифровать?
Какая микросхема памяти используется и сколько ног это отъедает? Какой степпинг кристалла ПЛИС?
Раз у вас есть опыт в разработке цифры, давайте утрясем эту часть проекта. И сколько такая платка будет стоить?

Цитата
>Есть идеи по поводу аппаратной реализации DPO (digital phosphore)
Подробнее пожалуйста.

Рассчет картинки производится аппаратно. В памяти выделяется двумерный массив по размеру экрана. Напрмер 512 на 256. Один элемент- 4 бита (16 градаций). При сборе данных ( очередной запуск развертки) собирается короткий скан (512 точек). Для каждой точки известна амплитуда и временное положение (считанная с ВАПа задержка между запуском развертки и клоком АЦП). Для каждой точки рассчитывается двумерная координата на экране, вычитывается содержимое соответствующей ячейки памяти по этому адресу и инкрементируется (если значение меньше 15). Раз в 10-20 миллисекунд содержимое памяти вычитывается процессором и отправляется на хост. При этом содержимое всех ненулевых ячеек декрементируется. Получаем цифровой фильтр с "послесвечением" в десятки миллисекунд, как у аналогового скопа. Как это показывать (техническим цветом или яркостью)- можно решить потом.

Давайте прикинем цену такой платы, а то отладка аналога остановилась в связи с отсутствием цифры.
Кроме памяти и процессора (желателен LPC2148) и входа от двух АЦП на плате должна быть прецизионный (с малым джиттером) VCO (например MAX2606), четырехканальный ЦАП (установка смещения каналов и порогов триггеров). Его можно сделать на ЦАПе АРМа и аналоговом ключе с аналоговыми запоминающими элементами (цена вопроса 1 бакс), ВАП (схему подкину позднее- два транзистора, генератор тока на операционнике и один из каналов АЦП LPC2148 или аналоговый компаратор и подсчет импульсов внутри ПЛИС). Два входа от триггеров. Триггера с полностью дифференциальным входом и дифференциальным смещением. Незнаю, как их лучше сделать- по компаратору на каждый канал и коммутировать в цифре или внешний мультиплексор и один компаратор. Еще есть желание поставить в качестве дополнительного триггера СВЧ прескалер (например mc12034), чтобы было легко синхронизироваться с сигналами выше максимальных частот ПЛИС, тем более, что АЦП от linear тянут чуть ли не до гига.
Еще надо разобраться с питанием - очень высоки требования к шуму источников питания и отсутствия наводок с ПЛИС на выходы АЦП (резисторы и, иногда, буфера низкой степени интеграции между АЦП и ПЛИС).
В каком месте лучше разделить платы на аналоговую и цифровую ( до или после АЦП) пока неясно.
Go to the top of the page
 
+Quote Post
Dainis
сообщение Apr 28 2006, 14:31
Сообщение #73


Местный
***

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



http://www.fpga4fun.com/digitalscope.html
http://www.fpga4fun.com/board_flashy.html
Go to the top of the page
 
+Quote Post
AlexanderX
сообщение Apr 28 2006, 15:04
Сообщение #74


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

Группа: Свой
Сообщений: 107
Регистрация: 21-07-05
Из: Киев
Пользователь №: 6 977



Цитата
Рассчет картинки производится аппаратно. В памяти выделяется двумерный массив по размеру экрана. Напрмер 512 на 256. Один элемент- 4 бита (16 градаций). При сборе данных ( очередной запуск развертки) собирается короткий скан (512 точек). Для каждой точки известна ...

Для такой обработки нужна статическая память. Динамическая память может рассматриваться хотя бы для небольших последовательных доступов. Можно построить запись в память каждого отсчета отдельно, а при передаче его на компьютер уже вычитывать все интересующие выборки и суммировать на внутренней памяти ПЛИС. В этом случае мы имеем последовательный доступ к памяти SDRAM и получаем DPO.
Цитата
А что такое КПД в данном случае, можно расшифровать?

При произвольных обращениях к памяти с размером bulk 4 слова пропускная способность памяти используется полностью кроме времени refresh'a.
Цитата
Какая микросхема памяти используется и сколько ног это отъедает?

Если ставить Micron MT48LC8M32B2 то объем 32MB ширина шины данных - 32 шина адреса - 12 и самая необходимая шина управления - 6. Итого получаем - 50 пинов.
Цитата
Какой степпинг кристалла ПЛИС?

Можно использовать например Altera EP2C5F256C8
Цитата
Раз у вас есть опыт в разработке цифры, давайте утрясем эту часть проекта. И сколько такая платка будет стоить?

Пишите в личку. Отвечу, правда, не ранее среды 03.05.06.
Go to the top of the page
 
+Quote Post
AlexanderX
сообщение Apr 28 2006, 15:17
Сообщение #75


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

Группа: Свой
Сообщений: 107
Регистрация: 21-07-05
Из: Киев
Пользователь №: 6 977



Цитата
В каком месте лучше разделить платы на аналоговую и цифровую ( до или после АЦП) пока неясно.
АЦП относятся к аналоговой части платы wink.gif
Go to the top of the page
 
+Quote Post

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

 


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


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