Быстрее, выше, сильнее или как быстро цифровать аналоговый сигнал
Однажды попался мне заказ оцифровать сигнал. Частота дискретизации сигнала была 50кГц. С этой задачей я быстро справился используя мануал из интернета. Однако вскре заказчик не смог выжать из этой скорсти то что ему хотелось и он решил объявил заказ на частоту 50МГц. В связи с тем что частота изменения сигнала от 0 до 5В была не более 10 МГц то я решил что про скин-эффект не стоит заморачиваться и взялся за заказ.
Данные скорости для меня были в новинку и уделил я недели две времени на изучения материала. Мое любимое правило – не решать задачу только из того что лежит под ногами очень мне помогло.
В связи с тем, что большинство моих работ были связаны с использование stm32F1XX я начал изучать возможность работы именно этого производителя. Первое что я отмел – это stm32f4XX. Дело в том, что даже при одновременной согласованной работе трех быстродействующих ацп частота выборки будет не более 7,2 МГц.
Для начала выбрал АЦП: AD6645. Данная серия может работать с частотой выборки до 120 МГц. Выбрал на 80МГц: AD6645-80. Теперь осталось не решенные две задачи:
— чем тактировать;
— чем принимать сигнал.
Вариант 1. ПЛИС.
Плюсы:
— быстро работает;
— гибко изменяется.
Минусы:
— дорого, то что мне нужно было от 500$ за штуку;
— большие габариты, от 200 ножек и ширина от 30 мм по диганали;
— незнакомая для меня среда и принципы работы.
В связи с тем прибор небольшой то окончательное решение были именно из-за габаритов.
Вариант 2. TTL/HCMOS генератор + FIFO/
Плюсы:
— можно использовать любой конечный приемник, даже 8 битный процессор;
— в сумме дешевле чем ПЛИС.
Минусы:
— больше деталей и следственно больше связей высокочастотных цифровых сигналов.
Взвесив все за и против я начал искать детали. Многии спросят, почему именно сразу поиск. Да потому что много чего работает на таких частотах, либо очень дорого, либо 3-5 месяцев срок поставки, либо партия от 100 шт (цена за одну штуку от 50$).
Итого:
— АЦП AD6645;
— IDT72V06;
— F X O – H C 5 3 6 R;
— STM32F103RET8.
Принцип действия:
1. Процессор включает генератор FXO–HC536R на 1 мс
2. Генератор тактирует работу АЦП AD6645. По переднему фронту от генератора АЦП начинает оцифровку.
3. По окончанию работы АЦП выставляет низкий уровень на ноге DRY.
4. Нога –W FIFO соединена с ногой DRY АЦП. При появление низкого фронта АЦП на ноге DRY FIFO записывает данные во внутреннюю память.
5. Далее процессора забирает данные из FIFO.
Схема соединения проведена на рисунке.
Благодарю за внимание.