реклама на сайте
подробности

 
 
> Детектор наличия частоты., Гугл молчит. Не строить же велосипед.
MegaVolt
сообщение Jun 8 2015, 09:29
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 779
Регистрация: 3-01-05
Из: Минск
Пользователь №: 1 783



Нужно детектировать наличие частоты. Опорная частота присутствует.

Классика предлагает ставить счётчик и смотреть периодически что он насчитал. Так вот ищу решение для однобитного счётчика. Т.е. самый быстрый детектор.

Что то не могу правильно у гугла спросить. Неужели нет стандартного правильного решения для случая не кратных частот?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
XVR
сообщение Jun 9 2015, 09:45
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Код
module FreqDetector #(parameter BITS=3)
(
input clk,
input freq_pulse,
output freq_detected
)

reg [BITS-1:0] dly_line;

always @(posedge clk)
dly_line <= (dly_line<<1) |  freq_pulse;

assign freq_detect = | dly_line;

endmodule

На freq_pulse должны быть единичные импульсы (в клоковом домене clk). Если детектируемый сигнал может застрять в состоянии 1, то нужно добавить выделение фронтов.

Ну и всякие цепи сброса тоже не помешают sm.gif
Go to the top of the page
 
+Quote Post
MegaVolt
сообщение Jun 9 2015, 10:16
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 779
Регистрация: 3-01-05
Из: Минск
Пользователь №: 1 783



Цитата(XVR @ Jun 9 2015, 12:45) *
На freq_pulse должны быть единичные импульсы (в клоковом домене clk).

С частотой следования не меньше Fclk/4. Если реже детектор будет детектировать паузы между импульсами.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 04:05
Рейтинг@Mail.ru


Страница сгенерированна за 0.01425 секунд с 7
ELECTRONIX ©2004-2016