реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Детская проблема, синхронная запись данных
undi
сообщение Nov 9 2005, 08:07
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 54
Регистрация: 8-07-04
Из: Пермь
Пользователь №: 300



Который день бьемся, результат - ноль. Наверное от незнания каких нибудь особенностей или просто тупит.

Простейший проект - бегущая строка. Altera EPM3256 144 ноги, плата двухсторонняя, но везде земляной полигон.
Входы: 8 бит данных; строб; начало строки.
Начало строки сбрасывает счетчик столбца на начало.
Стробируемые данные записываются синхронно, каждое в свой последующий столбец.
Выходы для каскадирования те же, только строб на выходе появляется когда полностью заполнена предыдущая строка.

В качестве экперимента, попробовали гнать данные с ARM AT91RM9200 - 66мгц на шине, вся строка сразу заработала без калих либо косяков, вне зависимости от наличия тактов задержки на успокоение силналов. Да хоть в пошаговом режиме.

Стоило перенести передачу данных на ATtiny2313 и правильной работы больше добиться не удается.
Сначала думали, что альтера плохо понимает сигналы с пятивольтовым размахом - снизили питание Тини до 3.3в. Подтягивающие резисторы на входе альтеры перепробовали и в землю и в 3.3. Пробовали диоды поставить на входе в землю и 3.3. Пробовали резисторы последовательно с шиной. Емкости фильтрующие. Какие то действия небольшое влияние оказывают, но необходимого результата даже близко на дают.
Пробовали активные уровнии сигналов менять - мало помогает. Такты задержки ставили разные...
В пошаговом режиме замечено, что при одной активной смене фронта строба, альтера умудряется записать 2-3 байта данных. Фронт какой-то не такой? Электрически вытянуть его не получается.

Может для кого-нибудь причина наглядно ясна?
Go to the top of the page
 
+Quote Post
dinam
сообщение Nov 9 2005, 08:32
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 415
Регистрация: 10-06-05
Из: Наукоград Кольцово(Новосибирск)
Пользователь №: 5 898



Может у ATtiny2313 фронты намного длинее, чем необходимо для Alterы?
Go to the top of the page
 
+Quote Post
des00
сообщение Nov 9 2005, 09:14
Сообщение #3


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(undi @ Nov 9 2005, 03:07) *
Который день бьемся, результат - ноль. Наверное от незнания каких нибудь особенностей или просто тупит.

Простейший проект - бегущая строка. Altera EPM3256 144 ноги, плата двухсторонняя, но везде земляной полигон.
Входы: 8 бит данных; строб; начало строки.
Начало строки сбрасывает счетчик столбца на начало.
Стробируемые данные записываются синхронно, каждое в свой последующий столбец.
Выходы для каскадирования те же, только строб на выходе появляется когда полностью заполнена предыдущая строка.

В качестве экперимента, попробовали гнать данные с ARM AT91RM9200 - 66мгц на шине, вся строка сразу заработала без калих либо косяков, вне зависимости от наличия тактов задержки на успокоение силналов. Да хоть в пошаговом режиме.

Стоило перенести передачу данных на ATtiny2313 и правильной работы больше добиться не удается.
Сначала думали, что альтера плохо понимает сигналы с пятивольтовым размахом - снизили питание Тини до 3.3в. Подтягивающие резисторы на входе альтеры перепробовали и в землю и в 3.3. Пробовали диоды поставить на входе в землю и 3.3. Пробовали резисторы последовательно с шиной. Емкости фильтрующие. Какие то действия небольшое влияние оказывают, но необходимого результата даже близко на дают.
Пробовали активные уровнии сигналов менять - мало помогает. Такты задержки ставили разные...
В пошаговом режиме замечено, что при одной активной смене фронта строба, альтера умудряется записать 2-3 байта данных. Фронт какой-то не такой? Электрически вытянуть его не получается.

Может для кого-нибудь причина наглядно ясна?


Хммм непонятно следующее
вы гнали данные напрямую с МК в ФПГА ??
фпга и МК как синхронизированы ? клок фпга ?


--------------------
Go to the top of the page
 
+Quote Post
sazh
сообщение Nov 9 2005, 09:34
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



//В пошаговом режиме замечено, что при одной активной смене фронта строба, альтера умудряется записать 2-3 байта данных. Фронт какой-то не такой? Электрически вытянуть его не получается.//
Может так оно и есть. логическим анализатором посмотреть на этот пошаговый режим.
Во всяком случае проект один, а контроллеров два.
Go to the top of the page
 
+Quote Post
makc
сообщение Nov 9 2005, 10:50
Сообщение #5


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



У меня нечто подобное было с LPC2106: временами в ПЛИС записывалось два-три слова вместо одного. Запись стробировалась с GPIO контакта LPC.

Выяснилось, что иногда на выходе наблюдается "дребезг", который не связан с параметрами проводника, а является нехорошим свойством GPIO контакта LPC. После этого я добавил в проект ПЛИС схемку подавления дребезга (усложнил схему обнаружения фронта) и все стало на свои места.


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post
k0t
сообщение Nov 10 2005, 07:14
Сообщение #6


Участник
*

Группа: Свой
Сообщений: 53
Регистрация: 11-01-05
Пользователь №: 1 889



Скорее всего дребезг фронтов. Помочь может согласование линии клока (по выходу - 33 Ом последовательно линии, у входа альтеры - 200 Ом к земле). Можно еще триггером шмидта (74xx14) проложится по клоку. Ну, и о чем уже говорилось, можно простробировать входной клок более высокой частотой (если она есть) и принимать решение о том что был фронт по нескольким отсчетам.
Go to the top of the page
 
+Quote Post
undi
сообщение Nov 10 2005, 13:35
Сообщение #7


Участник
*

Группа: Свой
Сообщений: 54
Регистрация: 8-07-04
Из: Пермь
Пользователь №: 300



Всем спасибо. Вроде проблема решилась интеграцией антидребезговой схемы на строб. Все заработало. Только на это ушло все оставшееся место и теперь нет возможности ноги расставить так как надо.
Может сущуествуют методы борьбы?
Go to the top of the page
 
+Quote Post
sazh
сообщение Nov 10 2005, 13:45
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



А схему можно посмотреть?
Go to the top of the page
 
+Quote Post
k0t
сообщение Nov 10 2005, 14:09
Сообщение #9


Участник
*

Группа: Свой
Сообщений: 53
Регистрация: 11-01-05
Пользователь №: 1 889



Еще раз: согласование (в первую очередь) + триггер шмидта (74HC14) по входу альтеры.
Go to the top of the page
 
+Quote Post
undi
сообщение Nov 10 2005, 14:11
Сообщение #10


Участник
*

Группа: Свой
Сообщений: 54
Регистрация: 8-07-04
Из: Пермь
Пользователь №: 300



Я имею в виду, что все в Альтеру запихнули, снаружи ничего не изменилось. Если интересует подробнее, могу человека, который этим непосредственно занимался написать подробнее.
Go to the top of the page
 
+Quote Post
k0t
сообщение Nov 10 2005, 14:53
Сообщение #11


Участник
*

Группа: Свой
Сообщений: 53
Регистрация: 11-01-05
Пользователь №: 1 889



Это я понял smile.gif Но имхо правильнее было бы эту проблему решить снаружи.
Go to the top of the page
 
+Quote Post
PGG
сообщение Nov 11 2005, 00:27
Сообщение #12


Участник
*

Группа: Новичок
Сообщений: 17
Регистрация: 16-09-05
Пользователь №: 8 642



а самый простой, пусть и не совсем корректный способ, поставить не большой конденсатор на клок на землю, не пробывали?, может еще 30 Ом последовательно до него, глядиш и заработает smile.gif
Go to the top of the page
 
+Quote Post
des00
сообщение Nov 11 2005, 05:31
Сообщение #13


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(PGG @ Nov 10 2005, 19:27) *
а самый простой, пусть и не совсем корректный способ, поставить не большой конденсатор на клок на землю, не пробывали?, может еще 30 Ом последовательно до него, глядиш и заработает smile.gif

Это все танцы с бубуном,
афтору а что 3 тригера + 2люта так сильно лишили вас запаса по русурсу ?? smile.gif


--------------------
Go to the top of the page
 
+Quote Post
makc
сообщение Nov 11 2005, 06:23
Сообщение #14


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



Цитата(des00 @ Nov 11 2005, 08:31) *
Цитата(PGG @ Nov 10 2005, 19:27) *

а самый простой, пусть и не совсем корректный способ, поставить не большой конденсатор на клок на землю, не пробывали?, может еще 30 Ом последовательно до него, глядиш и заработает smile.gif

Это все танцы с бубуном,
афтору а что 3 тригера + 2люта так сильно лишили вас запаса по русурсу ?? smile.gif


Мне кажется, что тут все-таки не все так просто. Размер схемы подавления дребезга зависит от частоты ее тактирования. Так что при высокой частоте тактирования и большом периоде импульсов "дребезга" 3 триггера и 2 люта будет явно маловато.


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post
undi
сообщение Nov 11 2005, 08:16
Сообщение #15


Участник
*

Группа: Свой
Сообщений: 54
Регистрация: 8-07-04
Из: Пермь
Пользователь №: 300



Цитата(des00 @ Nov 11 2005, 08:31) *
Цитата(PGG @ Nov 10 2005, 19:27) *

а самый простой, пусть и не совсем корректный способ, поставить не большой конденсатор на клок на землю, не пробывали?, может еще 30 Ом последовательно до него, глядиш и заработает smile.gif

Это все танцы с бубуном,
афтору а что 3 тригера + 2люта так сильно лишили вас запаса по русурсу ?? smile.gif


На счет бубна согласен.
По поводу всего остального, не знаю точно, скоро человек ,который это непосредвтвенно делал притопает, напрягу здесь описать.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 22:50
Рейтинг@Mail.ru


Страница сгенерированна за 0.01483 секунд с 7
ELECTRONIX ©2004-2016