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

Разница симуляции и реального железа

Здравствуйте. Разрабатываю модуль, принимающий некоторые измерения, и записывающий их в стандартную мегафункцию ОЗУ Альтеры. Описал последовательность выполнения действий, но на выходе не оказалось разрешающего запись сигнала. Начал тестировать пошагово вход в каждую часть последовательности. Смотрю РТЛ симуляцию:

post-91962-1465900840_thumb.png

Отмеченные красным квадратом сигналы - и есть Write Enable сигналы. Вывожу тестовый пин, выдающий иголку при входе в нужный шаг последовательности:

post-91962-1465901001_thumb.png

Отчётливо вижу, что в нужную часть кода я исправно попадаю. Вывожу наружу сигнал записи:

post-91962-1465901086_thumb.png

Тишина... Перестал понимать как это чудо работает. Подскажите, пожалуйста, где копать, чтобы докопаться до истины

 

upd. Полный листинг вот тут:

http://pastebin.com/MJpN8NRS

Изменено пользователем Wayne Shepard

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


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

Тишина... Перестал понимать как это чудо работает. Подскажите, пожалуйста, где копать, чтобы докопаться до истины

35 строка, 56 символ справа - ошибка.

 

ЗЫ. А если серьезно, то телепаты в отпуске. Хотя бы код выложите.

 

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


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

35 строка, 56 символ справа - ошибка.

 

ЗЫ. А если серьезно, то телепаты в отпуске. Хотя бы код выложите.

Не сочтите за дерзость.

Всё, что связано с исследуемыми сигналами - на осциллограммах...

Но, вот, полный код:

http://pastebin.com/MJpN8NRS

(или выложить текстом прям здесь?)

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


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

Всё, что связано с исследуемыми сигналами - на осциллограммах...

В пропадании сигналов, софт на 99.99999% никогда не виноват. Что по вашему, можно сказать по картинкам, кроме того что что-то не так?

 

Судя по коду, сделан аналог 2D буфера и вся работа идет в модуле M8. Сам этот модуль есть? ресурсы занимаемые им ожидаемы? Память в проекте в списке ресурсов присутствует? Ее "случайно" не сократило ?

 

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


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

В пропадании сигналов, софт на 99.99999% никогда не виноват. Что по вашему, можно сказать по картинкам, кроме того что что-то не так?

 

Судя по коду, сделан аналог 2D буфера и вся работа идет в модуле M8. Сам этот модуль есть? ресурсы занимаемые им ожидаемы? Память в проекте в списке ресурсов присутствует? Ее "случайно" не сократило ?

 

Используемые ресурсы проекта ожидаемы, как ЛЭ, так и память. Synthesized away блоков нет. Модуль м8 забирает(уже записанные) данные из буфера (в который на данный момент не идёт запись, что управляется сигналом grp_Buf_Switch). На СтэкОвэфлоу посоветовали увеличить задержки между сигналами, из-за возможно бОльших задержек в железе, чем в симуляции. WriteEnable появились, но нет гарантии, что я передаю верные данные, поскольку доверие к симуляции теперь отсутствует...

 

Думаю, на данном этапе, конкретно этот вопрос решён (надеюсь). Спасибо за отклик.

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


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

Используемые ресурсы проекта ожидаемы, как ЛЭ, так и память. Synthesized away блоков нет. Модуль м8 забирает(уже записанные) данные из буфера (в который на данный момент не идёт запись, что управляется сигналом grp_Buf_Switch). На СтэкОвэфлоу посоветовали увеличить задержки между сигналами, из-за возможно бОльших задержек в железе, чем в симуляции. WriteEnable появились, но нет гарантии, что я передаю верные данные, поскольку доверие к симуляции теперь отсутствует...

 

Думаю, на данном этапе, конкретно этот вопрос решён (надеюсь). Спасибо за отклик.

сигналтаб должен помочь...

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


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

Используемые ресурсы проекта ожидаемы, как ЛЭ, так и память. Synthesized away блоков нет. Модуль м8 забирает(уже записанные) данные из буфера (в который на данный момент не идёт запись, что управляется сигналом grp_Buf_Switch). На СтэкОвэфлоу посоветовали увеличить задержки между сигналами, из-за возможно бОльших задержек в железе, чем в симуляции. WriteEnable появились, но нет гарантии, что я передаю верные данные, поскольку доверие к симуляции теперь отсутствует...

Это как так? Вы STA не используете? И, уточнение, вы смотрите импульсы в 2 такта частоты 80МГц, случайно не на осциллографе с полосой 10МГц, щупом без делителя с емкостью 100пф?

 

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


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

Это как так? Вы STA не используете? И, уточнение, вы смотрите импульсы в 2 такта частоты 80МГц, случайно не на осциллографе с полосой 10МГц, щупом без делителя с емкостью 100пф?

 

Да, STA я действительно не использую, лицензия, говорит, не подходящая у меня. Радость, что моделсим под 9-й квартус нашёлся...

Осциллограф 200М, щупы с делителем, простите, закрыл информацию об уровнях своими глупыми вставками кода.

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


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

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

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

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

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

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

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

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

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

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