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

 
 
> программная реализация MIL-STD-1553
AnDrum
сообщение Aug 1 2006, 20:35
Сообщение #1





Группа: Новичок
Сообщений: 3
Регистрация: 1-08-06
Пользователь №: 19 253



ПОдскажите, может быть, у кого есть опыт реализации алгоритма обработки сообщений по этому протоколу (отечественный аналог - ГОСТ 26765.52-87). Нужна часть, отвечающая за обработку командных слов, формирование ответного слова.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Stas
сообщение May 7 2009, 12:18
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 464
Регистрация: 1-10-04
Из: Челябинск
Пользователь №: 751



Входной сигнал ресинхронизируется на 12МГц, схемой подстройки частоты выделяется середина четного и нечетного отсчета в битовом интервале, по этому сигналу (2Мгц) и происходит запись в сдвиговый регистр. Выбирать надо все (четные и нечетные) отсчеты, для контроля достоверности данных в системе кодирования "манчестер". Удобней синхронизовать на 16 МГц, точность определения середины отсчетов лучше.
Go to the top of the page
 
+Quote Post
DmitryR
сообщение May 8 2009, 06:30
Сообщение #3


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Еще поанализировал код и вроде понял. Входной поток хлопается на сколь угодно высокой частоте, и от того момента, где получился любой перепад отсчитывается 250 ns (половина полубита) и хлопается "полубит", а если перепада не было то через 500 ns "полубит" захлопывается все равно.
Go to the top of the page
 
+Quote Post
stells
сообщение May 8 2009, 07:31
Сообщение #4


внештатный сотрудник
******

Группа: Участник
Сообщений: 2 458
Регистрация: 10-05-08
Из: МО, Медвежьи озера
Пользователь №: 37 401



Цитата(DmitryR @ May 8 2009, 10:30) *
Еще поанализировал код и вроде понял. Входной поток хлопается на сколь угодно высокой частоте, и от того момента, где получился любой перепад отсчитывается 250 ns (половина полубита) и хлопается "полубит", а если перепада не было то через 500 ns "полубит" захлопывается все равно.

я бы наверное примерно так и сделал, только не непрерывно канал сканировал, а по прерыванию. т.е. по перепаду переход на подпрограмму приема, если через 250нс стартовый уровень подтверждается, то начало отсчетов по 500нс

Цитата(Stas @ Jan 15 2009, 18:39) *
Подстройка частоты приема производится по каждому фронту на обоих входных линиях.

хотя так оно может быть и правильнее, все-таки Манчестер - синхронный интерфейс. т.е. по первому прерыванию делаем первый отсчет 250нс, а последующие по 500нс, но если приходит прерывание, то перезапускаем отсчет. в результате получается так:
1.по первому прерыванию делаем три отсчета (250-500-500нс) для приема первой половины синхроимпульса;
2.по второму прерыванию делаем три отсчета (250-500-500нс) для приема второй половины синхроимпульса;
3.по последующим прерываниям делаем по одному отсчету (250нс) для приема полубита.

честно говоря 20 лет назад писал диплом по теме "кодек Манчестерского кода на полузаказной БИС" (Зеленоградская разработка была), но хоть убей не помню уже как у них аппаратно это было реализовано
Go to the top of the page
 
+Quote Post
MrYuran
сообщение May 8 2009, 07:59
Сообщение #5


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(stells @ May 8 2009, 11:31) *
честно говоря 20 лет назад писал диплом по теме "кодек Манчестерского кода на полузаказной БИС" (Зеленоградская разработка была), но хоть убей не помню уже как у них аппаратно это было реализовано

У меня дома в макулатуре схема кодека M-II на рассыпухе валяется с прошлой работы biggrin.gif
10 Мгц, однако. Можно и больше, но удвоенная - 20МГц на 1533 с трудом уже идёт.
Там задержка 3/4 периода на цепочке из 3-х катушек была реализована.
MIL STD 1553 (или наш мультиплексный канал) - всего 1МГц. Вообще без проблем, если на железе. Например, на маленькой ПЛИСке.
Есть и советский однокристальный кодек, не помню как называется. На тактовой 12МГц как раз для этих целей заточен.
Ностальгия... Всю жизнь только манчестером и занимался.

А система в манчестере очень простая. От любого фронта отсчитываем 3/4 периода и защёлкиваем информацию.
Далее ждём следующий фронт.
Только вначале должна быть синхра из длинных импульсов (чередование 1 и 0), чтобы быстро синхронизироваться.
В MIL STD 1553 по-моему хитрее, там стартовый интервал равен 1,5 битовых (если ничего не путаю).
Вообще програмно можно это дело реализовать даже на контроллере.

Готовые модули на любой вкус и цвет брали у питерского элкуса.


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
stells
сообщение May 8 2009, 08:22
Сообщение #6


внештатный сотрудник
******

Группа: Участник
Сообщений: 2 458
Регистрация: 10-05-08
Из: МО, Медвежьи озера
Пользователь №: 37 401



Цитата(MrYuran @ May 8 2009, 11:59) *
Есть и советский однокристальный кодек, не помню как называется. На тактовой 12МГц как раз для этих целей заточен.

насколько я помню в конце 80-х у Ангстрема несколько кодеков на полузаказных БИС было сделано, тактовая действительно была 12МГц, делилась на 2 и вот по этим интервалам в шестую часть периода и шла синхронизация. но точно не помню

Цитата(MrYuran @ May 8 2009, 11:59) *
А система в манчестере очень простая. От любого фронта отсчитываем 3/4 периода и защёлкиваем информацию.
Далее ждём следующий фронт.
Только вначале должна быть синхра из длинных импульсов (чередование 1 и 0), чтобы быстро синхронизироваться.
В MIL STD 1553 по-моему хитрее, там стартовый интервал равен 1,5 битовых (если ничего не путаю).
Вообще програмно можно это дело реализовать даже на контроллере.

Готовые модули на любой вкус и цвет брали у питерского элкуса.

а почему именно 3/4?
а у Элкуса модули для ГОСТовского Манчестера. изначально же автора этой темы интересовал свой Манчестер для нефтяников - там скорости ниже, максимум 64кбит можно на кабеле получить. а поскольку скорость низкая, то и программная реализация напрашивается
Go to the top of the page
 
+Quote Post
sazh
сообщение May 8 2009, 10:39
Сообщение #7


Гуру
******

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



Цитата(stells @ May 8 2009, 12:22) *
насколько я помню в конце 80-х у Ангстрема несколько кодеков на полузаказных БИС было сделано, тактовая действительно была 12МГц, делилась на 2 и вот по этим интервалам в шестую часть периода и шла синхронизация. но точно не помню


Делилось на 6. (580ВГ3). Чтобы на 2 мГц работать.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- AnDrum   программная реализация MIL-STD-1553   Aug 1 2006, 20:35
- - ВВА   Цитата(AnDrum @ Aug 2 2006, 00:35) А чт...   Aug 4 2006, 07:42
|- - AnDrum   Цитата(ВВА @ Aug 4 2006, 11:42) А что Вы ...   Aug 5 2006, 21:15
|- - ВВА   Ну сразу. что будет плохо. 1. Этот стандарт весьма...   Aug 7 2006, 05:39
|- - AnDrum   Цитата(ВВА @ Aug 7 2006, 09:39) Ну сразу....   Aug 7 2006, 19:41
|- - ВВА   _________________________ 1. Все реализуют... . ...   Aug 8 2006, 09:48
- - Andrew_   Цитата(AnDrum @ Aug 2 2006, 00:35) ПОдска...   Aug 19 2006, 13:58
|- - EE-1313   Здравствуйте, тоже озадачен вопросом реализации, о...   Jan 15 2009, 11:48
- - Stas   Я всё слово принимаю в 40 бит сдвиговый регистр на...   Jan 15 2009, 14:39
|- - DmitryR   А вот объясните мне пожалуйста. Если фаза этой удв...   May 7 2009, 05:39
||- - MrYuran   Цитата(stells @ May 8 2009, 12:22) а поче...   May 8 2009, 09:22
|||- - stells   Цитата(MrYuran @ May 8 2009, 13:22) Коряв...   May 8 2009, 09:26
|- - sazh   Цитата(DmitryR @ May 8 2009, 10:30) Еще п...   May 8 2009, 07:33
- - Stas   Вот вроде самая продвинутая из старья. http://www....   May 8 2009, 11:16
- - dkogna   А есть ли тут люди, кто тестировал 1553 платы спе...   Jun 27 2009, 12:51


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

 


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


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