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

 
 
 
Reply to this topicStart new topic
> не всегда запускается полностью программа на ПЛИС, в чем может быть завязка?
Valentin-k
сообщение Apr 4 2015, 11:28
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 31
Регистрация: 27-01-12
Пользователь №: 69 923



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

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


в чем может быть проблема? может ли как-то влиять расположение программы в самой плис? просто получается что на 46 выводе данные идут раз в 8-15 включений, но клоки идут стабильно(когда я их туда ставлю), на 1-ом пине(где клоки на цап идут штатно) - данные тоже идут раз в 8-15 включений, а на 142 пине, если я задаю его выходом для данных - они идут стабильно при каждом включении.
при этом все варнинги при компиляции относятся исключительно к модулю работающему с ацп и цап. аппаратную часть платы перепроверил - все питания есть, запитка портов есть, при этом на второй плисине не этой плате - программа стабильно идет на штатных пинах...
может кто подскажет хотя бы в каком направлении копать?
Go to the top of the page
 
+Quote Post
des00
сообщение Apr 4 2015, 12:22
Сообщение #2


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

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



Цитата(Valentin-k @ Apr 4 2015, 19:28) *
может кто подскажет хотя бы в каком направлении копать?

ИМХО где то виснет конечный автомат из-за асинхронных входов 96%. ищется элементарно чипскопом.


--------------------
Go to the top of the page
 
+Quote Post
Valentin-k
сообщение Apr 4 2015, 12:27
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 31
Регистрация: 27-01-12
Пользователь №: 69 923



Цитата(des00 @ Apr 4 2015, 15:22) *
ИМХО где то виснет конечный автомат из-за асинхронных входов 96%. ищется элементарно чипскопом.


спасибо, попробую.
Go to the top of the page
 
+Quote Post
AndreiUS
сообщение Apr 4 2015, 16:04
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 293
Регистрация: 23-12-08
Из: Тверь
Пользователь №: 42 694



Цитата
ИМХО где то виснет конечный автомат из-за асинхронных входов 96%. ищется элементарно чипскопом.

Либо нет первоначальной корректной инициализации регистров, была похожая проблема.
Go to the top of the page
 
+Quote Post
Valentin-k
сообщение Apr 8 2015, 17:39
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 31
Регистрация: 27-01-12
Пользователь №: 69 923



Цитата(des00 @ Apr 4 2015, 15:22) *
ИМХО где то виснет конечный автомат из-за асинхронных входов 96%. ищется элементарно чипскопом.


еще раз спасибо за наводку на чипскоп, до этого никогда как то не пользовался, даже не задумывался об этом инструменте...
косяк в программе нашел.
но возник вопрос по самому чипскопу - а по какому принципу он выводит список контактов для установки тригеров? почему то в этом списке присутствуют не все связи между блоками и модулями...некоторых сигналов я не нашел, хотя было интересно посмотреть
Go to the top of the page
 
+Quote Post
dm.pogrebnoy
сообщение Apr 8 2015, 18:11
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 747
Регистрация: 11-04-07
Пользователь №: 26 933



Цитата(Valentin-k @ Apr 8 2015, 20:39) *
еще раз спасибо за наводку на чипскоп, до этого никогда как то не пользовался, даже не задумывался об этом инструменте...
косяк в программе нашел.
но возник вопрос по самому чипскопу - а по какому принципу он выводит список контактов для установки тригеров? почему то в этом списке присутствуют не все связи между блоками и модулями...некоторых сигналов я не нашел, хотя было интересно посмотреть


Синтезатор оптимизируем схему, многих сигналов вы после синтеза можете не найти. Выход - вставить ChipScope (ICON + ILA) как модуль непосредственно в код, предварительно сгенерив его в Сoregen. Другой вариант - сохранение структуры при помощи constraints, но он менее предпочтителен.


--------------------
Go to the top of the page
 
+Quote Post

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

 


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


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