Пятница, 26.04.2024, 02:44
Вы вошли как Гость | Группа "Гости"Приветствую Вас Гость | RSS
Главная | Модуль цифрового осцилографа - Страница 14 - Форум | Мой профиль | Регистрация | Выход | Вход
Обитель RC-инженера
Форма входа
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Модератор форума: ВитГо  
Форум » Разработка электронных устройств » Разрабатываю ! » Модуль цифрового осцилографа (Пробуем свои силы в построении цифрового осциллографа)
Модуль цифрового осцилографа
ВитГоДата: Четверг, 04.10.2012, 09:09 | Сообщение # 196
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
ну мне легче.. я на верилоге стараюсь сделать смену значения адреса в момент когда ram_wr=1
(инкремент делаю в другой фазе тактового сигнала)

посмотри по поиску "конвейеризация счетчиков"


Виталий (аka ВитГо)
 
ВитГоДата: Четверг, 04.10.2012, 14:59 | Сообщение # 197
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
Sergi, я тут читал про STM32 и у меня возник вопрос: а когда ты пробовал сделать на STM32 захват данных с АЦП - ты использовал DMA ?

ведь на STM32 не обязательно вручную читать состояние порта.. можно и через DMA считывать шину и записывать ее состояние в память..

причем тактировать АЦП можно втроенным ШИМ с частотой мегагерц эдак на 25-50.. и при помощи DMA записывать в память состояние с шины..

и тогда тебе ПЛИС будет нафиг не нужна.. (и возможно мне тоже :-)))

добавлено позже
даже не DMA нужно а DCMI ! - скорость захвата до 54 msps !! и все это на одном корпусе STM32 !


Виталий (аka ВитГо)
 
SergiДата: Четверг, 04.10.2012, 18:21 | Сообщение # 198
Подполковник
Группа: Проверенные
Сообщений: 540
Репутация: 55
Статус: Offline
DMA работает за 7 тактов. Отсюда макс частота 17 Мгц. DCMI рабртает кадрами и ее скорость нельзя плавно менять (/2,/5,/10....). Что бы запустить дма нужно еще управляющие сигналы на счерчик или плис подавать при каждом доступе. Проще ручками ноги дергать.
У меня два входа тактирования - от PLL 120,60МГц и от таймера (как ты говоришь ШИМ)30,12...


Сообщение отредактировал Sergi - Четверг, 04.10.2012, 20:06
 
ВитГоДата: Четверг, 04.10.2012, 20:22 | Сообщение # 199
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
DCMI может работать в режиме jpeg - тогда там нет кадров..

ну а со скоростью да.. плавно менять нельзя..
но имхо со скоростью можно будет что нить придумать (тот же множитель pll менять :-)
зато плис не нужна.. и память по fsmс подключить - там до 256 кб помоему dma может перекидывать... и 14 бит шириной (вот тебе 6 бит логического анализатора или усеченный второй канал)

в общем прикольная идея. странно что для осциллографа ее никто не использовал еще.. 50 msps не слабая цифра (вон всякие dso nano имеют всего 1-2 msps)


Виталий (аka ВитГо)
 
SergiДата: Четверг, 04.10.2012, 21:23 | Сообщение # 200
Подполковник
Группа: Проверенные
Сообщений: 540
Репутация: 55
Статус: Offline
При работе с внешней памятью не используется конвейер. Поэтому она медленнее раза в 3. Плюс тайминги соблюсти. А на порте больше 40 MSPS (в F405 - 56) не получить. Я сначала так и хотел без плис. Пока не опробую и не проверю не поверю biggrin . Получится еще как с дискаверью sad ,хотел на ней 12 вытянуть, получилось 6 .
Мой малыш и то 4 MSPS - вдвое быстрее нано.

Вот новый проект. Как изменить время анализа (до 1,2мС) чтоб посмотреть полный цикл записи?
Прикрепления: OsA2_0.rar (322.6 Kb)


Сообщение отредактировал Sergi - Четверг, 04.10.2012, 21:23
 
ВитГоДата: Четверг, 04.10.2012, 21:29 | Сообщение # 201
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
Quote (Sergi)
При работе с внешней памятью не используется конвейер.


фиг его знает..
память подключают через fsmc и захватывают видео кадр... так что думаю что 48 msps там все таки есть (даже с внешней)
мне идея понравилась - вот она - идея с аппаратной генерацией адреса, и записью данных.. и все в одном корпусе// меньше разводить пришлось бы.. тем более если использовать более жирную f207 с SRAM на борту по максимуму (не нужно память внешнюю разводить - это еще около 40 ног минус из мучений) - конено 48 msps это не 60 - но блин насколько проще бы все было....!
Quote (Sergi)
Как изменить время анализа (до 1,2мС) чтоб посмотреть полный цикл записи?


я это тоже так и не смог сделать.. нужно еще посмотреть !


Виталий (аka ВитГо)
 
SergiДата: Четверг, 04.10.2012, 21:36 | Сообщение # 202
Подполковник
Группа: Проверенные
Сообщений: 540
Репутация: 55
Статус: Offline
Я же говорю - хотел 40 (максимум для F2xx). Только дисплей и ацп прикрутить. Вот в итерливе 80 получится должно. И ацпшки дешевле biggrin .
Думал OsA2 сделать в 10 раз быстрее первого smile . Нужно теперь заказать цифровую часть и попробовать скорость.
 
ВитГоДата: Четверг, 04.10.2012, 21:49 | Сообщение # 203
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
у меня готова прошивка под ПЛИС - тоже нужно пробовать.. там пока 1 канал на 100 мгц

либо
если отказаться от чтения через плис и соответственно от 100 msps на одном канале - то можно сделать управление 2мя каналами по 50 msps на одной плис - и соответственно 100 msps при их (каналах) параллельном подключении.

но в этом случае контроллер должен считывать данные напрямую с SRAM, а не через ПЛИС... - то есть нужно потратить 16 линий на ШД SRAM

плюс остаются 11 линий для управления плис (адреса, режима синхронизации, предделителем)


Виталий (аka ВитГо)
 
ВитГоДата: Четверг, 04.10.2012, 21:50 | Сообщение # 204
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
Quote (Sergi)
Я же говорю - хотел 40 (максимум для F2xx). Только дисплей и ацп прикрутить. Вот в итерливе 80 получится должно. И ацпшки дешевле biggrin .


согласись интересная схема должна быть!

сколько там максимум памяти SRAM на f207 которые есть в продаже ?


Виталий (аka ВитГо)
 
SergiДата: Пятница, 05.10.2012, 10:33 | Сообщение # 205
Подполковник
Группа: Проверенные
Сообщений: 540
Репутация: 55
Статус: Offline
Схема очень простая!
В F2xx максимум 128к 8битных. Flash 1M , 10$ цена.
За такие деньги лучше взять F407 512 flash 192 ram 168 МГц 9$

Добавлено (05.10.2012, 10:33)
---------------------------------------------
Пересмотрел схему со счетчиками.
Решил попробовать 12бит без интерлива, с предзаписью 15байт.
Скорость 80 Мгц. Длина записи 3840 16битных слов в каждом из 16 банков.
Используется 11 ног управления (clk, rd_clk, rd, ready, prestart, start, 4 бита адреса банка) и 16 шина данных.
На все идет 5 корпусов. 3 счетчика 74ac161, 1- 74ac74, 1- 74ac00. Тайминги памяти выдерживаются.
Куплю f4discovery (26$). Там уже 100ногий МК с выводами наружу. К нему подвесить эти счетчики, рам, ацп и буфер для анализатора. Всего 9 корпусов.
Потом после отладки можно перенести на одну плату.

Сообщение отредактировал Sergi - Четверг, 04.10.2012, 23:11
 
ВитГоДата: Пятница, 05.10.2012, 12:15 | Сообщение # 206
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
Quote (Sergi)
Схема очень простая!
В F2xx максимум 128к 8битных. Flash 1M , 10$ цена.
За такие деньги лучше взять F407 512 flash 192 ram 168 МГц 9$


а у тебя есть что нить по DCMI ?
я только нашел описание стандартной библиотеки..
а вот про подключение самого устройства чтото ничего не нашел. (вообще с инфой по этому вопросу большой напряг)
например интересно кто генерит такт -внешнее устройство или сама stm ?

у меня есть отладочная плата STM32F4 Discovery c stm32f407vgt6


Виталий (аka ВитГо)
 
SergiДата: Пятница, 05.10.2012, 14:37 | Сообщение # 207
Подполковник
Группа: Проверенные
Сообщений: 540
Репутация: 55
Статус: Offline
Есть плата! Класс!
Сможешь проверить скорость чтения из порта?
 
ВитГоДата: Пятница, 05.10.2012, 16:33 | Сообщение # 208
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
гм.. ну наверное.. нужна программа только..
или хотя бы знать что проверять :-)

p.s. я на stm32 не писал.. так немного баловался на асме.. (си не люблю)... хотя конечно нужно переходить на Си


Виталий (аka ВитГо)
 
ВитГоДата: Суббота, 06.10.2012, 17:35 | Сообщение # 209
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
Sergi, а ты смотрел память FIFO ?

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

синхронизацию можно сделать на EPM3032 в корпусе PLC (под них и панельки есть, и 32 ноги паять легко)

я сейчас написал простейшую функцию: синхронизацию - управляется 10 линиями (8- значение, 1- направление, 1- сброс синхронизации), по 8 линиям подключаемся к ШД (параллельно FIFO), 1 линия тактирования (CLK), и 1 линия на выход - генерируется "1" когда синхронизация достигнута - для разрешения записи в FIFO

всего у меня получилось 24 линии - разводка простая !

можно туда же засунуть делитель частоты..

кстати, ты в DipTrace работал когда нить ? мне нужно создать компонент генератора для схемы... чтото не врублюсь как.. :-(


Виталий (аka ВитГо)
 
SergiДата: Суббота, 06.10.2012, 19:04 | Сообщение # 210
Подполковник
Группа: Проверенные
Сообщений: 540
Репутация: 55
Статус: Offline
Нет, не смотрел. Пока колдую над печаткой.
Вобще загнать данные в МК не проблема. На любой скорости (торопиться не надо). По даташиту максимальный клок внешней памяти для F4xx 60 МГц (реально наверное 56- 3 такта при 168). Я софтово заберу за 8 тактов последовательно или за 9 с произвольным шагом всю запись за 216 мкс максимум.
 
Форум » Разработка электронных устройств » Разрабатываю ! » Модуль цифрового осцилографа (Пробуем свои силы в построении цифрового осциллографа)
Поиск:


Copyright MyCorp © 2024
Сделать бесплатный сайт с uCoz