Миландр

Ключевым подразделением нашей компании является Центр Проектирования интегральных микросхем
Текущее время: 2017-авг-20 14:51

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 561 ]  На страницу Пред.  1 ... 34, 35, 36, 37, 38  След.
Автор Сообщение
 Заголовок сообщения: Re: Манчестер на 1986ВЕ1
СообщениеДобавлено: 2016-мар-25 10:14 
Не в сети

Зарегистрирован: 2014-мар-17 18:18
Сообщения: 38
Здравствуйте.

Вопрос такой: почему может возникать Ошибка непрерывности сообщения?

Есть две платы с одинаковой прошивкой, с одной платой все хорошо, а у второй возникает ошибка.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Манчестер на 1986ВЕ1
СообщениеДобавлено: 2016-мар-31 15:59 
Не в сети

Зарегистрирован: 2012-окт-26 20:29
Сообщения: 7
prostoRoman писал(а):
Такое дело... С основного канала на резервный наводился сигнал в случае отсутствия на нём согласующего резистора (терминатора).

На "нём" это - на резервном?
Это не было одного из двух терминаторов или сразу обоих терминаторов на канале?
Или это на обоих каналах не было терминаторов вообще (двух на одном и двух на другом)?

Вообще, по п.5.5.1 ГОСТ Р 52071-2003 уровень наводок в системе с одного канала на другой должен быть быть ослаблен на 65 дБ при наличии штатных обоих терминаторов в каждом канале. Это, так сказать, конструктивное обеспечение работоспособности канала на объекте.

Кроме того, требование ко всем самим устройствам на канале, на выходе на эквивалент нагрузки уровень наводок должен ослабляться на 45 дБ между каналами (п.8.1 основного ГОСТ Р 52070-2003).

В случае отказа одного терминатора с одной стороны одного из каналов, второй терминатор пострадавшего канала, оставшийся с другой стороны, всё-таки в какой-то мере обеспечивает подавление наводок. Возможно, что при выполнении требований из двух предыдущих абзацев для канала и всех его устройств, одного оставшегося терминатора в пострадавшем канале должно быть достаточно для обеспечения работы всей системы с уровнем наводок меньше уровня порога приёмника.

Но если уровень наводок становится таков, что приёмник ОУ на резервном канале видит достоверное КС со своим адресом в наводке, то о каком-то алгоритме определения и обхода ситуации в ОУ уже бесполезно говорить, такая ситуация в стандарте не предусмотрена. Вообще же, наводка КС в сообщении на резервную линию ОУ более редка, чем наводка своего ОС (в связи с большим уровнем сигнала своего ОС на своих разъёмах).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Манчестер на 1986ВЕ1
СообщениеДобавлено: 2016-мар-31 16:12 
Не в сети

Зарегистрирован: 2012-окт-26 20:29
Сообщения: 7
Омар писал(а):
Вопрос такой: почему может возникать Ошибка непрерывности сообщения?

Есть две платы с одинаковой прошивкой, с одной платой все хорошо, а у второй возникает ошибка.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Манчестер на 1986ВЕ1
СообщениеДобавлено: 2016-июн-03 11:35 
Не в сети

Зарегистрирован: 2014-апр-14 15:08
Сообщения: 28
Откуда: Москва
Всем, здравствуйте!
Снова не большая проблема, связанная с работой контроллера 1553 в случае, когда установлен бит «Абонент занят».
Почти год назад, в июле прошлого года (на форуме стр. 28), я подробно описал одну очевидную проблему, которая связана с битом «Абонент занят». Проблема была решена. Мой код в целом работал нормально, но иногда (очень редко) возникали сбои. Как выяснилось, они возникали из-за того, что иногда транзакции содержащие ОС с установленным битом «Абонент занят», все же завершаются прерыванием VALMESS.
Прикрепленный файл повторяет то, что было изложено год назад, с добавлением (см. п.3) подробного описания этой новой проблемы.
Обойти найденный сбой легко, ниже новый код обработчика прерывания VALMESS. Доработка кода состоит из п. 7).

Код:
void MKO_Handler_VALMESS ( void )
{
    // 1) Дожидаемся установки бита IDLE в лог.1.   
    while( BIT_CLEAR == MKO->REG_STATUS.bit. IDLE);
   
     // 2) Устанавливаем в ОС бит "Абонент занят"
    MKO->REG_StatusWord1 = ((U32)ADDRESS_MKO_1<<11) | (1u<<ABONENT_BUSY);

    // 3) Формируем в памяти контроллера 1553 следующий пакет для отправки.
    .............................................

    // 4) Дожидаемся установки бита IDLE в лог.1.   
    while( BIT_CLEAR == MKO->REG_STATUS.bit. IDLE);
      
    // 5) Сбрасываем в ОС флаг "Абонент занят" (вернее сбрасываем все биты чтобы  отвечать "Все хорошо").
    MKO->REG_StatusWord1  = ((U32)ADDRESS_MKO_1 << 11);

    // 6) Дожидаемся сброса бита VALMESS, чтобы не входить в обработчик несколько раз, если он короткий.
    while( BIT_SET == MKO->REG_STATUS.bit.VALMESS );
   
    // 7) Сбрасываем состояние ожидания обслуживания прерывания от 1553.
    NVIC_ClearPendingPeripheralIRQ( M1553B1_IRQn );
}


Этот обработчик я использую и для осуществления транзакций формата 2 и для транзакций формата 1.
Если у кого-то есть другие варианты построения ПО – делитесь!
Но помните нужны ЖЕЛЕЗНЫЕ варианты!

Раздача завершена


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Манчестер на 1986ВЕ1
СообщениеДобавлено: 2017-мар-02 13:24 
Не в сети

Зарегистрирован: 2013-апр-15 13:01
Сообщения: 61
Здравствуйте!
Нужен совет и помощь в следующей ситуации.
На плате установлены два микроконтроллера, один 1986ВЕ1Т ревизии 1629, а другой
1986ВЕ3Т ревизии 1548. В контроллере 1986ВЕ1Т используется основной канал А МКИО, резервный канал B не используется и не подключен. В контроллере 1986ВЕ3Т используются два основных канала А и С МКИО, резервные каналы B и D не используются и не подключены. Используем приемопередатчики МКИО 5559ИН13У2.

Первый вопрос: нужно ли вывода приемников резервного канала (PRMB+, PRMB-, PRMD+, PRMD-) подтягивать внешними резисторами к земле, чтобы наводки по неиспользуемому резервному каналу не сбивали контроллер МКИО, работающий в режиме ОУ или внутри микроконтроллера (МК) на входе декодера/кодера манчестера уже есть подтяжка к земле выводов RXA+,RXA- и RXB+,RXB- ?

Оба микроконтроллера связали друг с другом по МКИО: 1986ВЕ1Т основной канал А,
1986ВЕ3Т основной канал А, 1986ВЕ3Т основной канал С. МК тактируются от своего внешнего генератора ГК108 16МГц. МК 1986ВЕ1Т настраивается на частоту 128МГц, контроллер МКИО на 16МГц, манчестер на 1МГц. МК 1986ВЕ3Т настраивается на частоту 80МГц, контроллер МКИО на 80МГц, манчестер на 1МГц. Выставляем один контроллер МКИО на 1986ВЕ3Т КК, другой контроллер МКИО на нём же - ОУ и контроллер МКИО на 1986ВЕ1Т - ОУ. Проверяем обмен КК 1986ВЕ3Т-> ОУ 1986ВЕ1Т.
Несмотря на нехорошие импульсы на PRMA+ обмен по формату 1 (чтение СД с КК ) проходит успешно и видно ОС от ОУ. Осциллограммы прилагаю ниже.
Вложение:
scope_9.bmp
scope_9.bmp [ 394.02 КБ | Просмотров: 1289 ]

Вложение:
scope_10.bmp
scope_10.bmp [ 394.02 КБ | Просмотров: 1289 ]

В итоге, между МК обмен тестировался в разных направлениях посылки пакета слов данных и обмен между ними по МКИО проходил безошибочно. Пришли к выводу ,что 1986ВЕ1Т и 1986ВЕ3Т в данной ситуации (не очень хорошие сигналы с выходов приемника МКИО) отлично понимают друг друга. Плохое качество сигналов PRM+/- связано с доработкой платы свитыми проводами длиной около 5-10 см.

Когда связываем МК 1986ВЕ1Т или 1986ВЕ3Т с ТА1-USB ф. Элкус в режиме ТА1-USB-КК, 1986ВЕ1Т и 1986ВЕ3Т –ОУ. Проверяем обмен КК ТА1-USB-> ОУ 1986ВЕ1Т.
Обмен по формату 1 (чтение СД с КК ) нестабилен, в большинстве случаев даже отсутствует ОС от ОУ. Осциллограммы прилагаю ниже. При ошибке ОУ выдает ошибку CONERR-передача сообщения не непрерывная.
Вложение:
scope_12.bmp
scope_12.bmp [ 394.02 КБ | Просмотров: 1289 ]

Вложение:
scope_13.bmp
scope_13.bmp [ 394.02 КБ | Просмотров: 1289 ]

В итоге между МК (1986ВЕ1Т, 1986ВЕ3Т) и ТА1-USB обмен тестировался в разных направлениях. Изменение частоты работы контроллера МКИО от 64МГц до 16Мгц ни к чему кардинальному не приводило, обмен то немного улучшался то ухудшался. Пришли к выводу ,что 1986ВЕ1Т и 1986ВЕ3Т в данной ситуации не стабильно воспринимают данные от ТА1-USB, а вот ТА1-USB отлично понимает оба контроллера.

После всего этого пришли к выводу что нестабильно работает PLL, причем на обоих микроконтроллерах. Отключили PLL на обоих МК, использовали частоту от внешнего генератора ГК108 16МГц. Провели описанные выше опыты при следующих частотах: 1986ВЕ1Т-16 МГц, контроллер МКИО-16МГц, манчестер - 1МГц;
1986ВЕ3Т-16 МГц, контроллер МКИО-16МГц, манчестер - 1МГц.
Пришли к выводу, что 1986ВЕ1Т и 1986ВЕ3Т отлично понимают ТА1-USB, но только при отключенной PLL обоих МК. Осциллограммы прилагаю ниже.
Вложение:
scope_7.bmp
scope_7.bmp [ 394.02 КБ | Просмотров: 1289 ]

Вложение:
scope_8.bmp
scope_8.bmp [ 394.02 КБ | Просмотров: 1289 ]

Пробовали фильтровать питание PLL (запитали плату от лабораторного источника питания +5В, по +3,3В PLL повесили конденсатор 100мкФ, пульсации малые), но ничего не помогло.

Может посоветуете, что делать дальше, в какую сторону копать?
- Как влияют выбросы на выводах PRM+/- на работу приемника манчестера, ведь контролеры друг друга понимают при включенной и отключенной PLL, а плату ТА1-USB - только при отключенной PLL. Выбросы по времени длятся где-то 20-40нс, а минимальная длина импульса 500нс.
- Можно узнать частоту стробирования входных данных приемника МКИО в зависимости от частоты работы контроллера МКИО.
- Так ли важно качество сигнала PRM+/- на фронтах.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Манчестер на 1986ВЕ1
СообщениеДобавлено: 2017-мар-02 15:07 
Не в сети

Зарегистрирован: 2010-сен-21 12:57
Сообщения: 613
Откуда: г. Санкт-Петербург
1. У Вас МК 4- й ревизии. В этой ревизии длительность 500 нс и 1500 нс импульсов передатчика отличается от номинальной на +- 1 такт синхронизации контроллера МКПД. Поэтому уменьшение частоты тактирования до 16 Мгц
приведет к искажению длительностей на +- 62,5 нс, что не соответствует ГОСТ(д.б. не более 25 нс).
2. С другой стороны при увеличении частоты ухудшается помехоустойчивость приемника. Миландр требует тактировать МКПД частотой не ниже 24 Мгц.
3. При повышении стабильности работы PLL желательно убедиться в эффективности.
Например замерить джиттер PLL. Это можно сделать, если поделенную на 4 частоту ядра вывести на выход таймера в режиме 50% ШИМ. У на были похожие проблемы с джиттером (при MANCLK 32МГц). Почистили питание, джиттер уменьшился и сбои по обмену прекратились.
4. Для надежности обмена лучше тактировать МК внешним генератором от 24МГц и выше.
5. Самое эффективное поменять МК на 6-ю ревизию + п.4. В новой ревизии все(или почти все) замечания к МКПД устранены.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Манчестер на 1986ВЕ1
СообщениеДобавлено: 2017-мар-02 16:10 
Не в сети

Зарегистрирован: 2013-апр-15 13:01
Сообщения: 61
Тогда возникает вопрос, если у контроллера МКИО 4-ой ревизии минимальная частота функционирования 24МГц, то как система работает в нашем случае, когда частота 16МГц от внешнего генератора без PLL. При этом только на 16МГц нас понимает сертифицированная плата Элкуса ТА1-USB. Походу все находится на грани +-пара тактов МКИО или временные рамки встроенного контроллера МКИО более жесткие, чем у Элкуса и поэтому он не понимает сообщения от ТА1-USB?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Манчестер на 1986ВЕ1
СообщениеДобавлено: 2017-мар-02 16:29 
Не в сети

Зарегистрирован: 2010-сен-21 12:57
Сообщения: 613
Откуда: г. Санкт-Петербург
afair писал(а):
... При этом только на 16МГц нас понимает сертифицированная плата Элкуса ТА1-USB...

Насколько я понял, Вы не проверяли работу на более высоких частотах без PLL.
Очень вероятно, что в случае тактирования от внешнего генератора на частотах 24, 32, 40, 48 и т.д. Элкус тоже будет Вас понимать. В любом случае 16 Мгц на МКПД - это нарушение условий эксплуатации МК.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Манчестер на 1986ВЕ1
СообщениеДобавлено: 2017-мар-02 17:28 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 968
Откуда: Тула
Ткните носом пожалуйста где в ТУ (на худой конец в их сп) это написано.
Или они Вам письмо официальное присылали?

_________________
сочувствующий…


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Манчестер на 1986ВЕ1
СообщениеДобавлено: 2017-мар-02 19:51 
Не в сети

Зарегистрирован: 2010-сен-21 12:57
Сообщения: 613
Откуда: г. Санкт-Петербург
Спецификация версия 2.17.0 от 01.02.2017 на официальном сайте Миландра - стр.194 поля DIV6-DIV0 регистра CONTROL.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Манчестер на 1986ВЕ1
СообщениеДобавлено: 2017-мар-03 08:48 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 968
Откуда: Тула
vasili писал(а):
Спецификация версия 2.17.0 от 01.02.2017 на официальном сайте Миландра - стр.194 поля DIV6-DIV0 регистра CONTROL.

Спасибо, теперь вижу. Ещё в 2.14.0 этого не было.
Любопытно, раз уж поправили это, то чего же не потёрли
Цитата:
Если MAN_CLK не кратна 8, то DIV[6:3]=(MAN_CLK/8)+1, DIV[2:0]=0, но
стабильность приёма не гарантируется.

_________________
сочувствующий…


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Манчестер на 1986ВЕ1
СообщениеДобавлено: 2017-мар-09 09:48 
Не в сети

Зарегистрирован: 2013-апр-15 13:01
Сообщения: 61
vasili писал(а):
afair писал(а):
... При этом только на 16МГц нас понимает сертифицированная плата Элкуса ТА1-USB...

Насколько я понял, Вы не проверяли работу на более высоких частотах без PLL.
Очень вероятно, что в случае тактирования от внешнего генератора на частотах 24, 32, 40, 48 и т.д. Элкус тоже будет Вас понимать. В любом случае 16 Мгц на МКПД - это нарушение условий эксплуатации МК.


Спасибо за совет. Завели внешний генератор 48МГц в обход PLL и контроллер МКИО заработал на частоте 48МГц без ошибок.
Но возник еще один вопрос. Вы писали, что в своем проекте отфильтровали питание и модуль PLL завелся нормально, джиттер снизился до допустимого уровня и у вас завелся МКИО. У нас по 3.3В на входе питания PLL пульсации +-50-60мВ, джиттера заметного на осциллографе увидеть не удалось. При этом на 1986ВЕ3Т ARINC429, SPI(2 МГЦ), контроллер дисплея работают без нареканий, а МКИО сбоит при принятии данных с ТA1-USB Элкуса. Что посоветуете, хочется все ж сделать проект с нормально работающем модулем PLL ? Заранее спасибо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Манчестер на 1986ВЕ1
СообщениеДобавлено: 2017-мар-09 10:34 
Не в сети

Зарегистрирован: 2010-сен-21 12:57
Сообщения: 613
Откуда: г. Санкт-Петербург
afair писал(а):
...
При ошибке ОУ выдает ошибку CONERR

Скорее всего МК не может определить наличие синхроимпульса данных.
afair писал(а):
... Что посоветуете, хочется все ж сделать проект с нормально работающем модулем PLL ? Заранее спасибо.

1. Проверьте разницу в джиттере НСLK при работе от внешнего генератора и PLL.
2. Проверьте корректность настроек для LDO регулятора(регистр BKP_REG0E).
3. Попробуйте запитать МК(PLL) отдельным стабилизированным источником 3,3 В.
4. Поиграйтесь с битами 20, 21 регистра CONTROL МКИО.
5. Есть ли связь между интенсивностью сбоев и длиной и частотой сообщений?
6. Снимите осциллограммы сигналов на входах приемника МК (синхроимпульс данных), и внутренней HCLK/4 на выходе таймера в момент возникновения ошибки (в момент возникновения прерывания по ошибке приема сформируйте импульс синхронизации)
7. Внешний генератор - незначительная плата за стабильность обмена по МКИО.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Манчестер на 1986ВЕ1
СообщениеДобавлено: 2017-июн-20 11:10 
Не в сети

Зарегистрирован: 2015-сен-22 15:32
Сообщения: 12
Возникла проблема с манчестером при переходе с ревизии 3 на ревизию 6 1986ВЕ1Т. В 0.1% случаев то ли прерывание по манчестеру не срабатывает, то ли неправильно воспринимается слово данных (пока не можем проверить и точно сказать). Подскажите, пожалуйста, с чем это может быть связано? Как можно устранить эту проблему?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Манчестер на 1986ВЕ1
СообщениеДобавлено: 2017-июн-26 12:54 
Не в сети

Зарегистрирован: 2017-май-31 15:10
Сообщения: 6
EvgenyK писал(а):
Возникла проблема с манчестером при переходе с ревизии 3 на ревизию 6 1986ВЕ1Т. В 0.1% случаев то ли прерывание по манчестеру не срабатывает, то ли неправильно воспринимается слово данных (пока не можем проверить и точно сказать). Подскажите, пожалуйста, с чем это может быть связано? Как можно устранить эту проблему?

В запросе в службу технической поддержки Вы указали, что переход осуществлялся с ревизии 4 (схемы 2015 года все соответствуют 4 ревизии) на ревизию 6. Удалось ли решить Вашу проблему, после ответов, полученных с тех. поддержки? Если нет, опишите, пожалуйста, её подробнее.
_________________
Отдел технической поддержки support@milandr.ru


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 561 ]  На страницу Пред.  1 ... 34, 35, 36, 37, 38  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB