|
Выбор связки АЦП - ПЛИС - ЦАП самое быстрое, Чтобы время обработки сигнала было минимальное (наносекунды) |
|
|
|
Oct 25 2010, 11:18
|

я только учусь...
     
Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839

|
Цитата(syoma @ Oct 25 2010, 14:05)  Добрый день всем. Возможно не в правильном форуме задаю вопрос, но интересует мнение Гуру, так как я занимаюсь в основном программированием FPGA, но совсем не в курсе последних веяний. Просто хотел поинтересоваться - на современном уровне развития цифровой техники можно ли решить данную задачу в цифре или нужно делать в аналоге. Или это вообще бред? Задача управления. Входной сигнал(не периодический) должен измеряться АЦП(хотя-бы 8-бит). Далее с помощью ПЛИС (FPGA или CPLD не знаю) данный сигнал должет сравниваться с изменяемой уставкой(которая будет приходить по оптике). Возможно пара операций сложения и может умножение. Результат всего этого будет выдаваться на ЦАП и далее на буфер для исполнения. Если деньги не принимать в расчет, то возможно ли получение времени задержки всей этой цепочки на уровне 10нс? Или не реально. Какое минимальное время можно получить? Задача стоит разработать интеллектуальный драйвер для очень мощных IGBT. Если реально - то на чем и в каком ките это может быть? Спасибо за ответы. скорость АЦП? Например это и вот это. Все в одном корпусе! Отладочные платы выбираем здесь.
--------------------
If it doesn't work in simulation, it won't work on the board.
"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
|
|
|
|
|
Oct 25 2010, 12:59
|
Профессионал
    
Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368

|
Цитата(Maverick @ Oct 25 2010, 13:18)  скорость АЦП? Чем меньше, тем лучше. Может 3нс или меньше быть? Единственное, это время от начала измерения до появления данных на выходе. Меня не устраивают т.н. конвейерные АЦП, в которых скорость сэмплирования достигает 600Msps, но результат появляется на выходе через несколько тактов, что в лучшем случае дает задержку в 15-20нс. Цитата Например это и вот это. Все в одном корпусе! Это ж игрушки с 600kSps. Такими разве что токи мерять.
|
|
|
|
|
Oct 25 2010, 13:12
|

Универсальный солдатик
     
Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362

|
Цитата(syoma @ Oct 25 2010, 15:59)  Чем меньше, тем лучше. Может 3нс или меньше быть? Единственное, это время от начала измерения до появления данных на выходе. Меня не устраивают т.н. конвейерные АЦП, в которых скорость сэмплирования достигает 600Msps, но результат появляется на выходе через несколько тактов, что в лучшем случае дает задержку в 15-20нс. Тогда вам нужны АЦП, созданные по flash технологии (не путать с flash памятью), сильно жрущие, дорогие. Может быть, лучше сделать "интеллектуальный драйвер" аналоговый?
|
|
|
|
|
Oct 25 2010, 13:27
|

я только учусь...
     
Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839

|
Цитата(ViKo @ Oct 25 2010, 16:12)  Тогда вам нужны АЦП, созданные по flash технологии (не путать с flash памятью), сильно жрущие, дорогие. Может быть, лучше сделать "интеллектуальный драйвер" аналоговый? добавлю описание архитектуры АЦП, созданных по flash технологии PS Я не знал до сегодняшнего дня про такую архитектуру/технологию АЦП  Просветился!!!
--------------------
If it doesn't work in simulation, it won't work on the board.
"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
|
|
|
|
|
Oct 26 2010, 06:59
|
Профессионал
    
Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368

|
Цитата PS Я не знал до сегодняшнего дня про такую архитектуру/технологию АЦП Просветился!!! А я еще в институте такое выучил. Только называются они в отечественной электронике просто параллельные АЦП. Даже помню задачка была на практике - разработать логическую схему дешифратора на такой 3-х битный АЦП - то есть выход с 8-и компараторов переделать в двоичный код. В принципе я с самого начала понял, что с ними придется работать - просто думал - может кто имеет опыт и может подсказать конкретно какие линейки есть. А то никто не пишет сразу, что это FLASH АЦП, а приходится вчитываться в даташиты, чтобы обнаружить, что там какие-то задержки есть и т.д. А насчет задачи - требуется активно контролировать включение и отключение IGBT, то есть напряжение и ток в ключе в моменты переключения. Это можно делать со стороны затвора, контролируя ток в нем, по определенным законам (таблице) плюс надо иметь обратную связь по напряжению и по току в ключе. ОС по напряжению делается простым резистивным делителем, а по току надо интегрировать падение напряжение на паразитной индуктивности эмиттера. Время переключения мощных IGBT составляет где-то 1мкс в среднем от начала до конца. По литературе для нормального регулирувания требуется время реакции системы на более 10-20нс. Иначе по динамике система может быть не стабильной. Так что потоков у меня нет. С АЦП буду копать дальше, а что можете сказать по ПЛИС + ЦАП. Вроде ЦАПы с резисторными цепочками достаточно быстрые, или нет? Для ПЛИС мне большая емкость не нужна и встроенные процессоры тоже - главное, чтобы по быстрее была и ХЗ, какие-то, наверное быстрые интерфейсы для связи с АЦП нужни?
|
|
|
|
|
Oct 26 2010, 07:06
|

Местный
  
Группа: Участник
Сообщений: 374
Регистрация: 7-11-07
Из: Moscow
Пользователь №: 32 131

|
Цитата(SFx @ Oct 26 2010, 10:36)  1. куда вам такой поток ? 2. где его вы будете обрабатывать? 3. где его будете хранить во время обработки? По-видимому, хотят встроить свой девайс в разрыв какой-то цепи уже существующей системы и при этом не нарушить ее работу. Скорей всего, отсюда и возникли требования ко времени распространения с обработкой сигнала со входа на выход порядка 10нс. На FPGA я бы за такую работу не взялся.
|
|
|
|
|
Oct 26 2010, 08:11
|
Частый гость
 
Группа: Свой
Сообщений: 127
Регистрация: 16-02-07
Из: Долгопрудный
Пользователь №: 25 406

|
Цитата(syoma @ Oct 25 2010, 15:05)  Входной сигнал(не периодический) должен измеряться АЦП(хотя-бы 8-бит). Далее с помощью ПЛИС (FPGA или CPLD не знаю) данный сигнал должет сравниваться с изменяемой уставкой(которая будет приходить по оптике). Возможно пара операций сложения и может умножение. Результат всего этого будет выдаваться на ЦАП и далее на буфер для исполнения. Возможно глупый вопрос: а без "цифры" тут никак?
|
|
|
|
|
Oct 26 2010, 09:07
|
Профессионал
    
Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368

|
Цитата Возможно глупый вопрос: а без "цифры" тут никак? Как. В аналоге тоже можно решить, но получается очень не гибко и пара очень интересных функция не реализуема. Цитата По-видимому, хотят встроить свой девайс в разрыв какой-то цепи уже существующей системы и при этом не нарушить ее работу. Да, система существует - это физический объект системы управления - IGBT. У него есть вход и выход, зависящий от входа и кучи других факторов, которые должна компенсировать система управления. В система управления должна реализовать что-то типа ПИ контроллера + уставки + таблица. Цитата Еще раз предлагаю вам посмотреть задержки буферов ввода/вывода плис. Если я правильно понял - это в районе 3-4нс х 2 раза для Spartan - 3AN. Но я не знаю - это вообще предел, или есть более быстрые ПЛИСы?
|
|
|
|
|
Oct 26 2010, 09:34
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(syoma @ Oct 26 2010, 03:07)  Если я правильно понял - это в районе 3-4нс х 2 раза для Spartan - 3AN. Но я не знаю - это вообще предел, или есть более быстрые ПЛИСы? вот именно, у вас только 8нс уйдут на то что бы просто заташить и выташить сигнал из ПЛИС. это не считая задержки обработки внутри. Искать АЦП/ЦАП уже бессмысленно. Ищите хорошего аналоговика или снижайте требования. Цитата(Kuzmi4 @ Oct 26 2010, 03:18)  .. так что в принципе думаю реально, но намучаетесь сильно  ?? сильно сомневаюсь что за 10 нс он успеет оцифровать, затащить в плис, сделать обработку, вытащить из плиса, перевести в аналог. Даже если будет ну очень сильно мучатся.
--------------------
|
|
|
|
|
Oct 26 2010, 09:38
|
Профессионал
    
Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368

|
Цитата Вы для начала определитесь где вы будете покупать такие АЦП и ЦАПы - они попадают под ограничения экспорта (в США), и просто так их вам не продадут Мне для начала нужно определиться, какие АЦП и ЦАПы мне нужны. А потом я их куплю, не беспокойтесь. Цитата вот именно, у вас только 8нс уйдут на то что бы просто заташить и выташить сигнал из ПЛИС. это не считая задержки обработки внутри. Искать АЦП/ЦАП уже бессмысленно. Ищите хорошего аналоговика или снижайте требования. Хорошо, давайте снижать. 20-30нс достаточно? Или в какое время можно уложиться и с чем?
|
|
|
|
|
Oct 26 2010, 09:42
|
Знающий
   
Группа: Свой
Сообщений: 845
Регистрация: 18-10-04
Из: Pereslavl-Zalessky, Russian Federation
Пользователь №: 905

|
Из любопытства провел эксперимент - 8-ми со входа умножается на 8-ми битовый регистр и старшие 8 бит результата асинхронно выдаются наружу. Задержки констрейнил от ножки до ножки. На счет альтеры не уверен - редко quartus беру в руки, но в цифры ожидаемые. CODE 7.039 nS EP3SL50F484C2 7.656 nS xc6vlx75t-3ff784 7.799 nS EP3C55U484C6 7.863 nS xc5vlx30-3ff676 8.400 nS EP4E230F29C2 9.628 nS xc4vlx15-12ff676 11.574 nS xc3sd1800a use dsp block = yes 11.616 nS xc3s50an-5tqg144 12.207 nS xc3sd1800a use dsp block = no 13.070 nS xc6slx4-3cpg196 Для окончательного решения нужно знать функцию, поработать над её оптимизацией исходя из архитектуры тех или иных частей конкретных микросхем. На первый взгляд аппаратные умножители вещь полезная, но от входных ножек до них довольно далеко - в разы больше, чем задержка на входах-выходах. Если функцию возможно реализовать на LUT-ах совсем рядом с ножками, да еще ножки аккуратно разместить, то можно мечтать о 5nS. О синхронной схеме на частоте ~400MHz тоже можно думать, но задержка возрастет. А так придется использовать коды грея или аналогичные приемы, что может сделать невыгодным применение DSP-блоков. Все же мне представляется синхронной только часть, которая принимает уставки.
|
|
|
|
|
Oct 26 2010, 10:03
|
Профессионал
    
Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368

|
Цитата(des00 @ Oct 26 2010, 11:46)  угу, а функция это какая нить фильтрация + пороговые схемы + петлевые фильтры %) Нет. Пока такое планирую - один канал - сложение входного сигнала с уставкой + умножение на константу. второй канал - сложение входного сигнала с уставкой + интегрирование + умножение. В конце 2 канала складываются и подаются на выход. Только к этим вещам предъявляются такие требования. Остальное намного медленнее будет. Уставка будет генерироваться в ПЛИС из таблицы, которая будет расчитана до того. Цитата Все же мне представляется синхронной только часть, которая принимает уставки. Я тоже так думал. Но гонки будут..
|
|
|
|
|
Oct 26 2010, 10:38
|
Знающий
   
Группа: Свой
Сообщений: 845
Регистрация: 18-10-04
Из: Pereslavl-Zalessky, Russian Federation
Пользователь №: 905

|
QUOTE (des00 @ Oct 26 2010, 13:55)  с точки зрения задержки замкнутой цепи управления должны быть интересны все цепи, а не только те, что определяют текущий отчет. Не согласен. С точки зрения художественного выпиливания напильником по fpga эти цепи влияют только на fanout и ресурсы разводки входных сигналов, чем портят жизнь тем, кто определяет выход текущего отсчета. QUOTE (syoma @ Oct 26 2010, 14:03)  ...В конце 2 канала складываются и подаются на выход.... Потянет тактов на 6-7 на предельной частоте DSP-блоков. Как программист думаю, что сложить, умножить и даже интегрировать можно какими-нибудь операционными усилителями, а параметры на них подавать из FPGA через ЦАП с любой конвейеризацией.
|
|
|
|
|
Oct 26 2010, 11:33
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(Shtirlits @ Oct 26 2010, 04:38)  Не согласен. С точки зрения художественного выпиливания напильником по fpga эти цепи влияют только на fanout и ресурсы разводки входных сигналов, чем портят жизнь тем, кто определяет выход текущего отсчета. оставим сей бесполезный спорт, как не хочется вас к ТАУ посылать. Цитата Как программист думаю, что сложить, умножить и даже интегрировать можно какими-нибудь операционными усилителями, а параметры на них подавать из FPGA через ЦАП с любой конвейеризацией. а на кой тогда тут ПЛИС если решение аналоговое? Цитата(khach @ Oct 26 2010, 05:05)  Аналогово делать. +1
--------------------
|
|
|
|
|
Nov 2 2010, 12:50
|
Знающий
   
Группа: Свой
Сообщений: 621
Регистрация: 25-10-04
Из: Новосибирск
Пользователь №: 971

|
Цитата(ViKo @ Oct 29 2010, 10:04)  Делают. Особенно раньше так делали, когда частота 100 MHz была пределом мечтаний. См. документ из поста №7, а в нем стр. 6 Вы себе противоречите - или за дурачков держите других. Именно про то что нарисовано на стр.6 (рис.5) я и говорил. Там на этом рисунке отчетливо видно: результат измерения N появляется на выходе через 2 такта!! Я с ними (параллельными АЦП) "наигрался" в начале 80-х и пишу про то что знаю и в чем уверен! Могу даже объяснить почему чем выше частота тактирования параллельного АЦП тем неизбежнее наличие конвейейерных регистров.
|
|
|
|
|
Nov 2 2010, 15:56
|

Универсальный солдатик
     
Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362

|
Цитата(Vjacheslav @ Nov 2 2010, 14:50)  Вы себе противоречите - или за дурачков держите других. Именно про то что нарисовано на стр.6 (рис.5) я и говорил. Там на этом рисунке отчетливо видно: результат измерения N появляется на выходе через 2 такта!! Я с ними (параллельными АЦП) "наигрался" в начале 80-х и пишу про то что знаю и в чем уверен! Могу даже объяснить почему чем выше частота тактирования параллельного АЦП тем неизбежнее наличие конвейейерных регистров. Почему-то я на этом рисунке 5 вижу, что данные, соответствующие выборке N, появляются на выходе уже в следующем такте (upd. - а это и есть "за один такт"). Где и кому я противоречил? Я тоже применял когда-то, разные... А про частоту и такты - это ж понятно! Пример - процессор Pentium 4. Если хотите высказать свое мнение - прошу! P.S. Нашел АЦП, который когда-то пробовал применять, AD9002. Скачайте файл с описанием и увидите там точно такую же картинку, как наш рис 5. P.P.S. Вас не смущает, что можно сделать устройство, перемножающее многобитовые числа за один такт? А вот еще "круче" картинка. Правда, таких уже нет. И не надо!
Эскизы прикрепленных изображений
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|