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

Вопрос начинающего (VHDL)

3 минуты назад, MrGalaxy сказал:

Ещё один чайницкий вопрос: правильно я понимаю, что инициализация переменных/сигналов происходит сразу же после конфигурирования ПЛИС до старта всех процессов?

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

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


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

18 минут назад, Flip-fl0p сказал:

Типа того... Очень грубо говоря: при инициализации ПЛИС, после её конфигурации происходит глобальный сброс, который как раз и инициализирует регистры. 

А инициализация по умолчанию без явного указания подразумевает обнуление?

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

Описания нормального нет. Я применил 5576ХС1, а она, скажем так, очень условный аналог Флекс10.

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


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

Цитата

А инициализация по умолчанию без явного указания подразумевает обнуление?

Вот этого не скажу. У меня в проекте почти всегда есть PLL. PLL генерирует сигнал locked. Соответственно пока у меня не завелась PLL все в сбросе. А сбрасываю только то, что должно быть сброшено. 

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


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

8 hours ago, MrGalaxy said:

А инициализация по умолчанию без явного указания подразумевает обнуление?

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

Начальное состояние не гарантировано, тем более если синтезатор использует умный синтез и инвертирует регистры самостоятельно. Для надежных применений лучше сбрасывать принудительно или делать самосинхронные схемы. Полезная статья, пусть и от другого производителя ПЛИС.

Xilinx WP272 Get Smart About Reset

 

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


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

В 13.10.2019 в 20:23, MrGalaxy сказал:

А инициализация по умолчанию без явного указания подразумевает обнуление?

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

Описания нормального нет. Я применил 5576ХС1, а она, скажем так, очень условный аналог Флекс10.

без явного указания после сброса не может быть неопределенки. будет либо 0 либо 1. а вот какое конкретно значение из этих двух - неизвестно. и если у вас схема критична к начальному состоянию, то могут возникнуть сбои в логике работы. например где то в схеме используется признак "счетчик достиг порога". по которому запускается какой то процесс. если при начальной инициализации этот сигнал "признака" выставится в начальное состояние равное 1, то у вас схема сразу отработает там, где не должна была. "собьет" какие то данные, заставит лишний раз сработать какой то другой счетчик, итд итп.  при отладке это не сложно отловить, но на это будет тратиться время. поэтому все критичные сигналы лучше сразу при объявлении явно инициализировать нужным значением.

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


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

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

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

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

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

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

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

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

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