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

 
 
> Построение упаковщика данных
Александр77
сообщение May 28 2014, 15:29
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 608
Регистрация: 10-07-09
Из: Дубна, Московская область
Пользователь №: 51 111



Доброго времени суток!
Коротко о насущном.
Имеется плата с установленными 8-ю АЦП, формирующие синхронный "срез" группы сигналов. Управление производится ПЛИСиной (минимальный циклон2/3).
Предполагается трансляция данных на обработку в DSP.
Есть пожелание передавать данные блоками "максимальной длины" (для программиста это значение в десятки кБ, я ограничен ресурсами ПЛИС и максимум смог бы согласиться на 8кБ). В реалии договорились на блок из 256 Б (попробуем, а дальше примем решение - потянем или нет).
В протоколе управления, заложена возможность ввода "используемых АЦП". Из беседы (пока краткой) понял что в ПЛИС передается один байт, в котором каждый бит указывает будут ли включаться данные с АЦП в протокол или нет.
В качестве исходного проекта решил сделать так:
1) детектор старта;
2) узел запуска АЦП и записи в данных в буферные регистры;
3) мультиплексор для опроса регистров и выдачи данных в двухпортовое ОЗУ. Получается 3 линии выбора номера АЦП;
4) некий блок/узел показывающий записывать данные или нет;
5) счетчик адреса записываемого отсчета АЦП;
6) двухпортовое ОЗУ.
Возникли сомнения в реализации "некоего блока" из п 4.
Если рассматривать ситуацию, когда выбраны все АЦП, то этот блок как бы и не нужен, достаточно соединить младшие биты счетчика с входом управления мультиплексора и все пишется как надо в ОЗУ.
Например, А1/А2/А3/А4/А5/А6/А7/А8/А1/А2/..../А6/А7/А8/
Обратная ситуация, когда не выбран ни один АЦП не имеет смысла - ибо зачем формировать протокол в котором нет никаких данных.
Гораздо запутаннее получаются режимы с частью непередаваемых данных.
Например исключили АЦП 5, А1/А2/А3/А4/А6/А7/А8/А1/А2/А3/А4/А6/А7/А8/А1/....
Если исходить из того, что пакет должен быть фиксированной длины (256 Б), то напрашивается достаточно хитроумный формирователь адреса для мультиплексора. Количество состояний по моей оценке, чуть меньше 2^16.
Делать такой case на 65 килострок - явный путь в психушку. (даже если набирать строку за полминуты уйдет примерно дней 70).
Выполнить ПЗУ с 3-хбитным выходом на 65 килострок - тоже долго и нудно.
Что еще можно предпринять для того, что бы сформировать этот "хитрый выбор" АЦП?
ПыСы. Данные будут чуть длиннее, т.к. предполагается их обрамить признаком начала передачи и проверочным "хвостом"(контрольная сумма или CRC).
Go to the top of the page
 
+Quote Post



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

 


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


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