В моем приложении есть входящий синусоидальный сигнал, и мне нужно найти его частоту и амплитуду с помощью VHDL-кодирования. Это невозможно синтезировать, поскольку мы не реализуем его на ПЛИС.
До сих пор я использовал функцию "MAXIMUM" VHDL для нахождения амплитуды. В тестовом стенде я успешно генерирую синусоидальную волну, и поэтому в своем исходном коде я использую функцию максимума. Но проблема в том, что я получаю не одно значение, а несколько.
Вот пример моего кода:
--in the entity
(input_sine : real;
Amp_out : real;
frq_out : real);
end entity;
--in the architecture,
signal S_amp : real := 0.0;
process
begin
Amp_out <= MAXIMUM(input_sine, S_amp);
wait for 1 us;
end process;
Я ожидаю, что на выходе будет только одно значение, то есть максимальная амплитудазначение входной синусоидальной волны. А также найти его частоту. Я не уверен, как поступить, и я не с этой максимальной функцией. Итак, кто-то, пожалуйста, помогите мне с этим.
Заранее спасибо.