[an error occurred while processing this directive]
|
1 клок системный(clk). По другому dclk приходят данные. Есть еще Pll_Clk который в 2 раза быстрее clk. Необходимо конечным автоматов работающего от clk считывать и анализировать данные. clk примерно в
2 раза быстрее dclk.
первый вариант:
в некотором состоянии автомата по clk анализирую _уровень_ dclk и таким образом определяю фронт (c погрешностью) и
считываю данные. Но, иногда фронт clk не проходит через высокий уровень dclk и таким образом теряю данные.
второй вариант:
вместо clk взял Pll_Clk и семплирование теперь идет на ура и данные
не пропускаются. Но, мне такой способ показался не красивым и хочется
работать от clk
поэтому, необходимо как то засинхронизировать примем данных, т.е.
clk и dclk. Решил попробовать с помощью счетчиков. счетчик A инкрементируется по dclk, в i-состоянии автомата по clk анлизировать
счетчик A с внутренним счетчиком B и если != был фронт dclk после чего
прием данных и B<=A; громоздкий способ, но должОн вроде бы работать?
хочется спросить какими способами это еще можно сделать (или
работа по pll_clk вполне нормальная или теми же счетчиками). Вобщем
как грамотные люди делают?
E-mail: info@telesys.ru