Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Запись сигнала в файл
Форум разработчиков электроники ELECTRONIX.ru > Аналоговая и цифровая техника, прикладная электроника > Цифровые схемы, высокоскоростные ЦС
Gennadyi
нужно записать в файл сигнал, поступающий по параллельной шине 2-6 разрядов, тактовый сигнал 2822.4 кГц, меандр.
записывать нужно состояние всех разрядов шины ("1" или "0") по переднему фронту тактового сигнала.
те 1-й байт - это первый фронт тактового импульса, 2-й - 2-й итд
время записи около 100 минут
кто, что может посоветовать, как схемотехнически, так и программно ?
VCO
Цитата(Gennadyi @ Feb 15 2010, 19:14) *
нужно записать в файл сигнал, поступающий по параллельной шине 2-6 разрядов, тактовый сигнал 2822.4 кГц, меандр.
записывать нужно состояние всех разрядов шины ("1" или "0") по переднему фронту тактового сигнала.
те 1-й байт - это первый фронт тактового импульса, 2-й - 2-й итд
время записи около 100 минут
кто, что может посоветовать, как схемотехнически, так и программно ?

Хотя задача недостаточно рассоплежёвана, рискну пофантазировать:
На FPGA, например SPARTAN-II, лепим автомат, интерфейс которого выходит на PCI, а на входе которого, организован конвейер, защёлкивающий байт в регистр по переднему фронту, а затем транклюкирующий его в организованное унутре FIFO, с выхода которого всё это также выбрасывается на шину PCI. А там уже на верхнем уровне только и останется собирать урожай.
А пока я это писал, ещё пару вариантов родил, но это потом, обдумайте и покритикуйте пока это… Просто сейчас сам программирую ПЛИСы, решил потренироваться и на других задачах, уж не обессудте, если что прощёлкал! laughing.gif
jam
Цитата(Gennadyi @ Feb 15 2010, 19:14) *
нужно записать в файл сигнал, поступающий по параллельной шине 2-6 разрядов, тактовый сигнал 2822.4 кГц, меандр.
записывать нужно состояние всех разрядов шины ("1" или "0") по переднему фронту тактового сигнала.
те 1-й байт - это первый фронт тактового импульса, 2-й - 2-й итд
время записи около 100 минут
кто, что может посоветовать, как схемотехнически, так и программно ?

Возьмите готовый USB модуль с Кипарисом (013), например от Digilent
VCO
Цитата(jam @ Feb 15 2010, 21:18) *
Возьмите готовый USB модуль с Кипарисом (013), например от Digilent

Готовых решений можно предложить много, те же логические анализаторы и самописцы, USB-демоборды для ПЛИС и микроконтроллеров, иное дело - софт для этих готовых решений состряпать иногда довольно сложно, железо часто под замком или с ограничениями, да и USB программировать посложнее, чем PCI.
Тут не хватает исходных данных по себестоимости (или цене при штучных решениях) и конструкции устройства (цифровой щуп, кабель, внешний или внутренний модуль PC, автономное устройство и т.д., и т.п.). Аватар (афтар) - ку-ку! 1111493779.gif Может поясните, или Вы - очередной заблудший в эту глушь... 07.gif
sevstels
Делается чтение 8и разрядов на чипе FT232R в режиме BIT BANG MODE.
Лично проверял, работает без проблем. Правда у меня несколько поменьше скорость, вероятно и на вашей будет работать при соответствующих настройках счётчиков.
VCO
Цитата(sevstels @ Feb 17 2010, 04:18) *
Правда у меня несколько поменьше скорость, вероятно и на вашей будет работать при соответствующих настройках счётчиков.

Не будет, скорость (до 1 Мбод) и протокол RS232 не позволят. Здесь и USB не всегда преемлема - посчитайте объём информации файла, около 16 ГБайт. PCI здесь самое место. Платы высокоскоростного сбора данных именно так и делают: http://www.eliks.ru/product/vi/sbor.htm или http://www.rudshel.ru/.
Кстати, вот ещё одно готовое решение, правда очень дорогое! wink.gif
sevstels
Цитата
протокол RS232

Там протоколом RS232 и не пахет.
Прямое считывание байта с пинов и отправка их по USB в PC на скорости 921600. Если поставить 2 чипа в тандем - должно хоть и "криво" но получиться. Или снизить скорость в 2 раза. smile.gif

Зато дёшево и сердито - 5 баксов цена такой читалки.
Gennadyi
изделие нужно скорее разовое, но если сделать аппаратно-программную часть для обратного действия - вывода 2-6 разрядов по параллельной шине с такой-же тактовой частотой, то может стать и относительно массовым

было предложено решение для снижений скорости ввода:
парные сдвиговые регистры и счетчик для кажого разряда.
пока один регистр заполняется, содержимое другого пишется в файл.
заполнение регистра считает счетчик и вырабатывает прерывание при заполнении
источник сигнала TTL, длина соединит. линии до приемника не более 60 см

интересен вот такой вариант http://www.rudshel.ru/show.php?dev=24
но все это надо пробовать
Думаю, что готовые решения тоже уже есть, осталось только найти
sevstels
1 МБ/сек - а у Вас тактовый выше
не подойдёт
o-henry
Цитата(Gennadyi @ Feb 15 2010, 18:14) *
кто, что может посоветовать, как схемотехнически, так и программно ?

N лет назад у меня была похожая задача. Чтобы не заморачиваться купил готовую PCI плату ввода-вывода.
Называлась она PCI7300А вот сайт производителя. Через кого покупал тогда уже не помню, но вот вроде здесь есть в наличии
http://ipc2u.ru/catalog/I/IP/
Для такой платы схемотехнически нужно только разъем подпаять.
А можно и не паять - как опцию заказать кабель, у которого на одном конце разъем для платы,
а на другом конце - контакты, к которым отверткой прикручиваются провода.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.