Worldmaster 0 March 29, 2024 Posted March 29, 2024 · Report post Здравствуйте. Кто подскажет можно ли в коде использовать атрибуты типа 'last_value ? Синтезируется это в схему или это опять сахарок для тестбенча. У меня вот такой код есть: if rising_edge(FFT_OE_N) then case cmd_state is when idle => if FFT_OE_N = '1' and FFT_OE_N'last_value = '0' then ... Есть сомнение что эта конструкция работать не будет. А как сделать так чтобы ловить установку сигнала? Изначально идея в том что когда процесс отработал он должен ждать именно событие установки сигнала чтобы начать повторный цикл. Может есть какие нибудь классические простые решения? Quote Share this post Link to post Share on other sites More sharing options...
makc 385 March 29, 2024 Posted March 29, 2024 · Report post 13 минут назад, Worldmaster сказал: Есть сомнение что эта конструкция работать не будет. А как сделать так чтобы ловить установку сигнала? Добавьте триггер-защёлку (FFT_OE_N_D) для сигнала FFT_OE_N и напишите: if rising_edge(FFT_OE_N) then case cmd_state is when idle => if FFT_OE_N = '1' and FFT_OE_N_D = '0' then ... По сути, как я понимаю, вам нужен детектор фронта сигнала FFT_OE_N, т.е. что-то вроде https://vhdlguide.com/2016/07/23/edge-detector/ Quote Share this post Link to post Share on other sites More sharing options...
Worldmaster 0 March 29, 2024 Posted March 29, 2024 · Report post В 29.03.2024 в 11:00, makc сказал: вам нужен детектор фронта сигнала FFT_OE_N, т.е. что-то вроде https://vhdlguide.com/2016/07/23/edge-detector/ Ну да. Вроде бы то что надо. спасибо )) Quote Share this post Link to post Share on other sites More sharing options...