Перейти к содержанию
    

Непредсказуемые результаты синтеза?

Доводилось работать с платой, где тактовые приходили куда попало.

Ничего, работало вроде...

 

На мой взгляд, гораздо критичнее, чтобы все выходные сигналы DCM (с которых собственно работает схема) были подключены через BUFG.

Если так не сделать, то глюки возможны, даже если конкретный тактовый "питает" относительно немного логики.

И констрейны здесь не очень помогают (по крайней мере, констрейны на период клока).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проблема из той же оперы:

не работает конечный автомат.

Начинаю искать причину: подключаю

к выходам автомата schipscope.

Автомат начинает работать!

Удаляю из проекта schipscope -

автомат не работает!

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Начинаю искать причину: подключаю

к выходам автомата schipscope.

Автомат начинает работать!

Удаляю из проекта schipscope -

автомат не работает!

асинхра на входах управления?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Асинхра есть, но ее я протактировал через триггер.

а надо было через два минимум

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Имеется проект для ПЛИС Virtex4 на базе встроенного процессора PowerPC.

По мере роста проекта и обвешивания процессора различной периферией

результаты синтеза(по-моему предположению) стали непредсказуемыми.

 

Проявляется это в том, что после внесения каких-либо изменений в проект

(или даже без внесения изменений) и перекомпиляции проекта, он перестает

работать. Т.е. к процессору нельзя подключиться с помощью отладчика,

нет сигналов на соответствующих выходах. Иногда происходит так, что проект

работает частично(процессор не работает, часть логики работает).

 

Констрейнты указаны на тактовый сигнал, на шины памяти, результаты синтеза удовлетворительные.

Процессорная система является подмодулем в ISE.

Еще возникает вопрос, нужно ли указывать констрейнты в самом EDK?

 

Как можно найти причину и решить эту проблему?

Это не простая задача, к томуже мало информации:

какая частота на входе?

сколько частот используется для синхронизации проекта и их значения?

сколько DСM и синхронизируется ли их запуск?

сколько модулей на шине и сколько из них с своим интерфейсом?

сколько модулей с возможностью их чтения и не используются ли при этом BUFT?

есть ли модули с выработкой сигналов прерывания и сколько?

используется ли DMA?

память внешняя или BRAM, если внешняя какого типа?

используется ли FPU и CACHE?

есть ли констрейнты на все тактовые сигналы или только на один и при этом на входной?

 

В зависимости от ответов потребуется дальнейшая конкретизация.

Как получилось что системный клок не глобальный и нельзя использовать отладчик?

Такой проект как мне кажется лучше похоронить иначе или рак мозга будет или станеш

супер специалистом.

В любом случае если нет возможности залезть внутрь, необходимо тщательно и по возможности

полно задать ограничения на все критичные элементы проекта с учётом приоритетов (имеются в виду приоритеты

выполнения операторов в .ucf).

Тогда вы получите максимум информции в Timing Constraints и хотя бы так сможете оценить

критичные задержки и найти решение. Т.к. исходя из "По мере роста проекта и обвешивания процессора различной периферией результаты синтеза(по-моему предположению) стали непредсказуемыми." это

оновная причина.

Хотя как мне кажется ещё могут быть версии.

Люди подскажут.

 

По поводу констрейнов в EDK:

Если проект ISE, в версиях до 9-ой было без разницы использовался только ISE-овый .ucf

с 9-ой я не работал, а вот начиная с 10 - ой ISE стал цеплять EDK-й .ucf и информацию прописанную

в нём переносить в ISE в файл <имя файла>.ncf и использовать в проекте.

Но как мне показалось исходя из Timing Constraints приоритет остаётся за ISE .ucf.

Возможно кто-то подробнее сможет осветить данный вопрос.

 

 

 

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это не простая задача, к томуже мало информации:

какая частота на входе?

сколько частот используется для синхронизации проекта и их значения?

сколько DСM и синхронизируется ли их запуск?

сколько модулей на шине и сколько из них с своим интерфейсом?

сколько модулей с возможностью их чтения и не используются ли при этом BUFT?

есть ли модули с выработкой сигналов прерывания и сколько?

используется ли DMA?

память внешняя или BRAM, если внешняя какого типа?

используется ли FPU и CACHE?

есть ли констрейнты на все тактовые сигналы или только на один и при этом на входной?

 

В зависимости от ответов потребуется дальнейшая конкретизация.

Как получилось что системный клок не глобальный и нельзя использовать отладчик?

Такой проект как мне кажется лучше похоронить иначе или рак мозга будет или станеш

супер специалистом.

В любом случае если нет возможности залезть внутрь, необходимо тщательно и по возможности

полно задать ограничения на все критичные элементы проекта с учётом приоритетов (имеются в виду приоритеты

выполнения операторов в .ucf).

Тогда вы получите максимум информции в Timing Constraints и хотя бы так сможете оценить

критичные задержки и найти решение. Т.к. исходя из "По мере роста проекта и обвешивания процессора различной периферией результаты синтеза(по-моему предположению) стали непредсказуемыми." это

оновная причина.

Хотя как мне кажется ещё могут быть версии.

Люди подскажут.

 

По поводу констрейнов в EDK:

Если проект ISE, в версиях до 9-ой было без разницы использовался только ISE-овый .ucf

с 9-ой я не работал, а вот начиная с 10 - ой ISE стал цеплять EDK-й .ucf и информацию прописанную

в нём переносить в ISE в файл <имя файла>.ncf и использовать в проекте.

Но как мне показалось исходя из Timing Constraints приоритет остаётся за ISE .ucf.

Возможно кто-то подробнее сможет осветить данный вопрос.

Извините за словоблудие Alex77 сделал мне замечание но я тут успел

влезть до того как прочитал его замечание.

Постараюсь больше не мусорить.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1)сколько частот используется для синхронизации проекта и их значения?

Два тактовых сигнала заходят в ПЛИС: 50Mhz и 65Mhz.

50 идет на вход EDK-ой системы, где данный сигнал с помощью DCM(который мне вставил сам визард) умножается на 2 и на 4. (100 Mhz на шину PLB, а 200 на CPU). 65Mhz используется в модуле(там задействован еще один DCM), который вне EDK. Но эта же частота является входом в модуль на шине PLB. На этой частоте принимаются данные. С PLB синхронизация выполнена с помощью FIFO.

 

2)сколько DСM и синхронизируется ли их запуск?

И того - DCM в EDK и еще один вне EDK. Запуск никак не синхронизируется.

 

3) сколько модулей на шине и сколько из них с своим интерфейсом?

на шине 11 модулей. из них 3 - custom.

 

4) сколько модулей с возможностью их чтения и не используются ли при этом BUFT?

все с возможностью чтения. BUFT в моих модулях нет, а вот в Xilinx-их скорее всего есть.

 

5) есть ли модули с выработкой сигналов прерывания и сколько?

есть. не думаю, что проблема в этом. проблемы с зависаниями по причине прерываний я успешно не решил,

( до CPU то ведь при этом можно достучаться с отладчиком)

 

6) используется ли DMA?

нет

 

7) память внешняя или BRAM, если внешняя какого типа?

Внешняя DDR 256Mbit, и внутренняя BRAM 64k

 

8)используется ли FPU и CACHE?

Используются

 

9)есть ли констрейнты на все тактовые сигналы или только на один и при этом на входной?

только на входной. Наверное, вот здесь нужно что-то доработать.

 

Как получилось что системный клок не глобальный и нельзя использовать отладчик?

это ошибка. отладчик использовать можно, без него никак, проблема в том, что после перекомпиляции часто невозможно подключиться с CPU.

 

Такой проект как мне кажется лучше похоронить иначе или рак мозга будет или станеш

супер специалистом.

 

Похоронить никак нельзя, остается только последний вариант! :-)

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...