|
Помогите победить ADG3308, Преобразование 5В уровней для Cyclone FPGA |
|
|
|
Nov 9 2010, 11:22
|
Частый гость
 
Группа: Свой
Сообщений: 182
Регистрация: 26-11-07
Из: Москва, Зеленоград
Пользователь №: 32 692

|
Послушался знакомого и воспользовался преобразователем уровня без контроля за направлением. Вроде - удобная штука. Но... Значит так - имеем Cyclone 3 (EP3C25), который должен формировать системную шину 5-вольтовую. Частота шины - 5 МГц. Длина - около 50 см (проводники на кросс-плате). В качестве преобразователей уровня стоят ADG3308. Проблема в том, что как-то странно ведут себя преобразователи. По цепям, по которым FPGA должна выдавать фиксированные уровни, идет какая-то хрень, напоминающая возбуждение (частота порядка 50МГц). Выходные цепи FPGA программировали и как LVTTL и как LVCMOS - результат одинаковый. На выходе тупо (в проекте) заводим лог 1 на выход. Фактически - на ногах преобразователя со стороны ПЛИС - частота. Со стороны шины - шум, близкий к частоте. Показательной является цепь сброса (кнопка с заземленной средней точкой и заведенными на лпату оставшимися двумя контактами. На плате - на входе преобразователя - стоят подтягивающие резисторы (1К) к 5В и конденсаторы(0.15мкФ). При нажатии на кнопку - уровень на выходе преобразователя падает в 0. При отпускании - уровень поднимается до 2.5, какое-то время шумит там (10-30сек) и дальше поднимается до 5В. Чудеса какие-то. Кто знает, как надо правильно себя вести с этими ADG3308 и возможно ли вообще их победить? Поиск ничего не дал.. Только замечания, что проблема есть и народ уходит на другие преобразователи.. К сожалению, сейчас переход не светит - тока-тока принесли новенькую плату - и очень хочется ее оживить.. А вешать преобразователи другой фирмы на 12-слойную плату - как-то не видеться возможным
|
|
|
|
|
Nov 9 2010, 13:27
|
Частый гость
 
Группа: Свой
Сообщений: 182
Регистрация: 26-11-07
Из: Москва, Зеленоград
Пользователь №: 32 692

|
Цитата(DmitryR @ Nov 9 2010, 14:51)  Скорее всего у вас шина звенит, а преобразователь этот звон усиливает. Поставьте в буферах ПЛИС минимальный ток для начала. Попробовал - тот же эффект. Да, в принципе, и не понятно, как состояние внутренней шины может влиять на состояние внешней. Ведь на линии выдаются константы (пока). Проводил эксперимент - на провод BusEnable заводил частоту (что-то около 100 Гц) - возбуждения не наблюдалось. А вот при постоянном разрешении внешняя шина (по отношению к шиннику) начинает шуметь и переключать шинник туда-сюда. И что с этим делать?  Цитата(ViKo @ Nov 9 2010, 16:00)  Спасибо - прочитал.. Ну - во-первых, с резистором почти понятно, хотя звон при переключении все равно необъясним. А во-вторых - на счет типа нагрузки - у меня в качестве потребителей используются как TTL, так и CMOS устройства. И как быть в этом случае? Менять на MAX? Опять же - работа на длинную линию.. Может - в этом дело? И спасет ли MAX от этого? Ведь статический уровень со стороны FPGA все равно вырождается в звон.
|
|
|
|
|
Nov 9 2010, 13:51
|

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

|
Нужно, чтобы нагрузка, подключенная к выходам преобразователя, была небольшой (высокоомной). Если из-за делителя (из резистора в преобразователе и нагрузки) выходное напряжение после преобразователя упадет ниже Vcc - 0.3V, преобразователь не будет понимать эти уровни по входу, как 1. То же происходит и с уровнем 0. В-общем, на ТТЛ может и не заработает. А на кнопке - попробуйте подтягивающие резисторы по 100 Ом, например. А конденсаторы отпаяйте. P.S. все, что пишу - только теоретические рассуждения, практически - не сталкивался.
|
|
|
|
|
Nov 9 2010, 14:07
|
Частый гость
 
Группа: Свой
Сообщений: 182
Регистрация: 26-11-07
Из: Москва, Зеленоград
Пользователь №: 32 692

|
Хех.. Не поможет мне макс.. У меня же 3308.. А не 3304..  Цитата(ViKo @ Nov 9 2010, 16:51)  Нужно, чтобы нагрузка, подключенная к выходам преобразователя, была небольшой (высокоомной). Если из-за делителя (из резистора в преобразователе и нагрузки) выходное напряжение после преобразователя упадет ниже Vcc - 0.3V, преобразователь не будет понимать эти уровни по входу, как 1. То же происходит и с уровнем 0. Можно тут по-подробнее? Скажем - нагрузка типа 1533АП6. Входной ток '0' - не более 100мкА, входной ток '1' - не более 20 мкА. Плюс - индуктивность и емкость шины. И все это дело мы подключаем на выход 3308. На вход 3308 подан статический лог 1 в стандарте LVCMOS с низким выходным током (с FPGA Cyclone). В итоге - получается на обоих ногах 3308 ( с обоих сторон) присутствует генерация с частотой около 50 МГц. Т.е. и на выходной ноге FPGA с этой же частотой происходит сталкивание уровня 0 с 3308 и высокого собственного уровня. 3308 оказывается сильнее...
|
|
|
|
|
Nov 9 2010, 14:43
|

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

|
Подаем с ПЛИС лог. ноль на АП6. C АП6 течет входной ток 0.1 mA, на 6 kOhm внутри ADG падает 0.6 V. Таким образом, на входе ADG, подключенном к ПЛИС АП, уже не 0 V, а, как минимум, 0.6 V. Добавьте выходное напряжение нуля ПЛИС. Этот уровень уже не должен восприниматься ADG, как нуль. upd. Зачеркнутое - лишнее, оно здесь никак не участвует. Увлекся
|
|
|
|
|
Nov 9 2010, 20:00
|

Участник

Группа: Свой
Сообщений: 61
Регистрация: 31-07-07
Из: Москва
Пользователь №: 29 490

|
Цитата(Вовка_Бызов @ Nov 9 2010, 14:22)  Значит так - имеем Cyclone 3 (EP3C25), который должен формировать системную шину 5-вольтовую. Частота шины - 5 МГц. Длина - около 50 см (проводники на кросс-плате). В качестве преобразователей уровня стоят ADG3308. А какое напряжение со стороны Cyclone 3 (EP3C25). И нет ли возможности его изменить. При работе с МАХ3002 мы сталкивались с некорректной работой этих преобразователей и выяснили, что у них есть "любимые" уровни для преобразования. Наши эксперементы описаны в http://electronix.ru/forum/index.php?showtopic=59698
--------------------
Обойденные грабли - недополученный опыт!
|
|
|
|
|
Nov 10 2010, 12:57
|
Частый гость
 
Группа: Свой
Сообщений: 182
Регистрация: 26-11-07
Из: Москва, Зеленоград
Пользователь №: 32 692

|
Цитата(ViKo @ Nov 10 2010, 12:48)  Помеха как пришла, так и уйдет. Я думаю, главная и единственная проблема - иметь высокоомные входы устройств, подключенных к выводам транслятора уровней. думаю - не только в этом дело.. Ведь тот сигнал, который я пытался удержать в лог "1", не был нагружен вообще ни на что.. Т.е. в шкафу кроме главного проца не было потребителей (это была одна из попыток решить вопрос с возбуждением). Т.е. нагрузкой шинника являлась только длинная линия. Но - без резисторов в конце. А помеха.. Если в процессе работы вдруг перевернется канал шинника, управляющий, скажем, записью и вместо чтения что-то сотрется - это не такая уж безобидная штука.. Так что - ИМХО, вывод в том, что мастер должен быть мастером во всех отношениях.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|