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

 
 
> Ваделение клока из данных., Кто знает как выделить частоту из приходящих данных.
shamray
сообщение Nov 14 2005, 14:24
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 114
Регистрация: 31-08-05
Из: Украина, Одесса
Пользователь №: 8 105



Дано: данные идут со скоростью 2МБит. Необходимо выделить клок из этого потока данных. Есть задающий генератор на 16МГц. Вижу что надо строить цифровой ПЛЛ но вот как - незнаю. Надоумте пожалусто.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
lutik
сообщение Nov 15 2005, 08:50
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 128
Регистрация: 30-06-04
Из: Odessa
Пользователь №: 216



вот так делали и все работало при соотношении скорости передачи к частоте клока 1/4

entity receiver is
generic
(
FRAME_RATE : natural
;BIT_PER_FRAME : natural
;PACKET_COUNT : natural
);
...
...
...

signal RXs : std_logic;
signal LatchBit : std_logic;


IN_RX: dff port map(clk,RX,Res,'0',RXs);

NET_SYNC:
block
--------------
subtype TNetClkDiv is integer range 0 to ceil(real(CLK_FREQ/FRAME_RATE/BIT_PER_FRAME))-1; signal NetClkDiv : TNetClkDiv;
signal RXp : std_logic;
signal NewBit: std_logic;
--------------
begin
IN_P: Front port map(RXs,clk,RXp,open,open);
--**************************************************
NET_CLOCK:
process(clk) begin
if clk='1' and clk'event then
if Res = '1' then
NetClkDiv <= TNetClkDiv'high; --|
NewBit <= '0';
elsif RXp = '1' then
NetClkDiv <= TNetClkDiv'high-1;
NewBit <= '1';
elsif NetClkDiv = 0 then
NetClkDiv <= TNetClkDiv'high-1;
NewBit <= not NewBit;
else
NetClkDiv <= NetClkDiv - '1';
end if;
end if;
end process;
LP1: Front port map(NewBit,clk,LatchBit,open,open);
--**************************************************
end block;

компонент Front вида

entity front is
port (data,clk : in std_logic;
pQ,mQ,dQ : out std_logic);
end;
architecture arc of Front is
signal s : std_logic ;
begin
process(clk) begin
if clk='1' and clk'event then
s <= not data;
end if ;
end process ;
pQ <= data and s ;
mQ <= not(data or s);
dQ <= not data xor s ;
end;

смысл в том, что в отсутствии пакета на NewBit будет идти интересующий вас клок, но не синхронизированый с клоком передатчика.
при поступлении стартового бита (у меня перепад 0 -> 1) генератор подстроится под входные данные, и будет подстраиватся на каждом таком перепаде.

полученный клок Вы, конечно не сможите использовать в качестве глобального, но LatchBit с успехом может подаваться на вход разрешения записи триггеров приемника.

а если хотите именно клок выделить - слушайте one_man_show, и скорее всего альтернативы не найдете


--------------------
однако..
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- shamray   Ваделение клока из данных.   Nov 14 2005, 14:24
- - one_man_show   Вы про данные подробнее дайте описание. Какой форм...   Nov 14 2005, 14:43
- - shamray   С данными я ничего сделать не могу. Кодировка - NR...   Nov 14 2005, 15:38
|- - MosAic   Цитата(shamray @ Nov 14 2005, 18:38) С да...   Jan 13 2006, 07:08
- - maksya   Такая штука вроде носит название CDR - Clock Data ...   Nov 14 2005, 18:35
- - line   Можно для начала посмотреть Сухман и др. "Син...   Nov 15 2005, 03:09
- - Builder   Бросается в глаза: 8 бит данных на 248 бит нулевых...   Nov 15 2005, 11:32
- - DSIoffe   ЦитатаЕсли кому-то надо, могу выложить на местный ...   Nov 15 2005, 11:56
|- - Jools   Цитата(DSIoffe @ Nov 15 2005, 14:56) Цита...   Nov 15 2005, 12:28
- - shamray   Цитата(Builder @ Nov 15 2005, 15:32) Брос...   Nov 15 2005, 14:40
- - sazh   //Как я и говорил, с данными я не могу ничего сдел...   Nov 15 2005, 19:53
|- - des00   ЦитатаЕсли использовать принцип приема данных как ...   Nov 16 2005, 07:24
- - sazh   Хммм а может байт стафинг и на вход коррелятор ?? ...   Nov 16 2005, 09:16
|- - des00   Цитата(sazh @ Nov 16 2005, 04:16) К сожал...   Nov 18 2005, 05:59
|- - woodman2   Цитата(des00 @ Nov 18 2005, 08:59) Цитата...   Jan 13 2006, 02:47
|- - des00   Я имел в виду немного другое, а именно в любом бит...   Jan 13 2006, 05:38
- - Magnum   Для начала всёже хлтелось бы узнать поподробнее о ...   Nov 18 2005, 05:13
- - Builder   Цитата(shamray @ Nov 15 2005, 18:40) Цита...   Nov 18 2005, 08:16
- - handy   А такое не подойдет: Устройство для вычитания пер...   Nov 21 2005, 13:41
- - woodman2   des00: ///Я имел в виду немного другое, а именно ...   Jan 13 2006, 07:35
- - sazh   Подстройка фазы этого окна в цикле. А как это сдел...   Jan 13 2006, 08:20
|- - woodman   Цитата(sazh @ Jan 13 2006, 11:20) Подстро...   Jan 14 2006, 15:54
- - MosAic   Вандер - это baseline wander - эффект плавания сре...   Jan 13 2006, 11:19
|- - woodman   Цитата(MosAic @ Jan 13 2006, 14:19) Ванде...   Jan 14 2006, 16:17
- - MosAic   ЦитатаСпасибо за вандер, не попадался такой термин...   Jan 14 2006, 17:33
- - woodman2   [/quote] В условиях нет ни слова о синхроимпульсах...   Jan 16 2006, 00:53


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

 


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


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