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

 
 
 
Reply to this topicStart new topic
> Деление частоты
mcaffee
сообщение Apr 19 2013, 13:20
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 46
Регистрация: 9-10-12
Пользователь №: 73 873



Столкнулся с задачей:есть меандр одной частоты,необходимо получить меандр с частотой в 3 раза меньше!
Сделал вот так:
ARCHITECTURE beh OF Devider IS

signal cout: std_logic;

signal pos_cnt :std_logic_vector (1 downto 0);
signal neg_cnt :std_logic_vector (1 downto 0);
begin

process (takt, clr) begin
if (clr = '1') then
pos_cnt <= (others=>'0');
elsif (rising_edge(takt)) then

if conv_integer(pos_cnt)=2 then
pos_cnt<=conv_std_logic_vector (0,2);
else pos_cnt <= pos_cnt + 1;
end if;
end if;
end process;

process (takt, clr) begin
if (clr = '1') then
neg_cnt <= (others=>'0');
elsif (falling_edge(takt)) then
if conv_integer(neg_cnt)=2 then
neg_cnt<=conv_std_logic_vector (0,2);
else neg_cnt <= neg_cnt + 1;

end if;
end if;
end process;

cout <= '1' when ((pos_cnt /= 2) and (neg_cnt /= 2)) else
'0';
end architecture;


-не работает;(
Может посоветуете еще способы?wink.gif
Go to the top of the page
 
+Quote Post
Iptash
сообщение Apr 19 2013, 13:47
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 613
Регистрация: 2-09-08
Из: г.Набережные Челны
Пользователь №: 39 936



Цитата(mcaffee @ Apr 19 2013, 17:20) *
...
-не работает;(
Может посоветуете еще способы?wink.gif

Тоже не рабочие? wink.gif
А деленный на 3, должен быть меандр, или без разницы?
Go to the top of the page
 
+Quote Post
mcaffee
сообщение Apr 19 2013, 13:53
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 46
Регистрация: 9-10-12
Пользователь №: 73 873



Цитата(Iptash @ Apr 19 2013, 17:47) *
Тоже не рабочие? wink.gif
А деленный на 3, должен быть меандр, или без разницы?

Тоже должен быть меандром!
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Apr 19 2013, 14:52
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 mcaffee
PLL ??
Go to the top of the page
 
+Quote Post
mcaffee
сообщение Apr 19 2013, 17:37
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 46
Регистрация: 9-10-12
Пользователь №: 73 873



Цитата(Kuzmi4 @ Apr 19 2013, 18:52) *
2 mcaffee
PLL ??

Как?)
Go to the top of the page
 
+Quote Post
vadimp61
сообщение Apr 19 2013, 18:59
Сообщение #6


Знающий
****

Группа: Участник
Сообщений: 599
Регистрация: 28-08-08
Из: Ростов папа
Пользователь №: 39 872



Цитата(mcaffee @ Apr 19 2013, 21:37) *
Как?)

Например из 3Мгц получаем 1Мгц

3*10 далее делим по модулю 15 и берем со счетчика выход переноса счета (cout) и делим на 2 Т- триггером для получения меандра 1 Мгц.
Go to the top of the page
 
+Quote Post
MaverickDSP
сообщение Apr 19 2013, 20:38
Сообщение #7





Группа: Новичок
Сообщений: 2
Регистрация: 10-01-13
Из: В. Новгород
Пользователь №: 75 139



Вариант 1: когда pos_cnt равен, допустим, 2- формируется положительный импульс. Его скважность будет 3. Задерживаем его на пол такта (по заднему фронту takt) и складываем по "или" задержанный и не задержанный импульсы. Понятно,что асинхронщина, но работать должно...
Вариант 2: на pll умножаем частоту в 2 раза, формируем строб скважностью 3 (аналогично pos_cnt=2), умноженную частоту на такты, строб на разрешение тактов Т-триггера.
Go to the top of the page
 
+Quote Post
mcaffee
сообщение Apr 19 2013, 20:47
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 46
Регистрация: 9-10-12
Пользователь №: 73 873



Нужно из 15 МГц тактовой частоты получить 5 МГц!)
Go to the top of the page
 
+Quote Post
vadimp61
сообщение Apr 20 2013, 04:35
Сообщение #9


Знающий
****

Группа: Участник
Сообщений: 599
Регистрация: 28-08-08
Из: Ростов папа
Пользователь №: 39 872



Цитата(mcaffee @ Apr 20 2013, 00:47) *
Нужно из 15 МГц тактовой частоты получить 5 МГц!)

Ну так умножьте на 2 с помощью PLL получите 30, потом делим по модулю 3, получаем 10 и Т триггер на два, получаем 5 Мгц
Какой у вас чип?
Go to the top of the page
 
+Quote Post
mcaffee
сообщение Apr 20 2013, 08:17
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 46
Регистрация: 9-10-12
Пользователь №: 73 873



Цитата(vadimp61 @ Apr 20 2013, 08:35) *
Какой у вас чип?

Actel APA 300. Никогда не приходилось заниматься умножением частоты,как это делается?)
Go to the top of the page
 
+Quote Post

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

 


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


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