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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Работа с Double Data Rate
DuHast
сообщение Feb 18 2009, 17:21
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 314
Регистрация: 13-07-06
Из: Москва
Пользователь №: 18 797



Привет всем!!!
На Cyclon подаются данные по десятиразрядной шине и тактовый сигнал. Данные изменяют своё значение по каждому фронту тактового сигнала (как положительному, так и отрицательному). Я умножаю тактовый сигнал во встроеном PLL на два, и использую его для защёлкивания данных во входных регистрах и их дальнейшей обработки.
Вопросы:
1. корректна ли такая схема?
2 можно ли обработать эти данные без использования PLL?

Почти уверен, что ответы 1-Да, 2-Нет, но хочется подстраховаться.
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 18 2009, 17:34
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(DuHast @ Feb 18 2009, 19:21) *
Привет всем!!!
На Cyclon подаются данные по десятиразрядной шине и тактовый сигнал. Данные изменяют своё значение по каждому фронту тактового сигнала (как положительному, так и отрицательному). Я умножаю тактовый сигнал во встроеном PLL на два, и использую его для защёлкивания данных во входных регистрах и их дальнейшей обработки.
Вопросы:
1. корректна ли такая схема?
2 можно ли обработать эти данные без использования PLL?

Почти уверен, что ответы 1-Да, 2-Нет, но хочется подстраховаться.

1. Мне почему-то кажется что нет. Нужно документацию на PLL смотреть. Я ее не помню.
2. Посмотреть документацию, как DDR делать.
Go to the top of the page
 
+Quote Post
DuHast
сообщение Feb 18 2009, 18:13
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 314
Регистрация: 13-07-06
Из: Москва
Пользователь №: 18 797



Цитата(Methane @ Feb 18 2009, 20:34) *
2. Посмотреть документацию, как DDR делать.

Может подскажите где?
Go to the top of the page
 
+Quote Post
sazh
сообщение Feb 18 2009, 18:44
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(DuHast @ Feb 18 2009, 21:13) *
Может подскажите где?


У Альтеры есть открытый проект link port
http://www.altera.com/support/refdesigns/s...amp;WT.oss=link
Но принцип обратный - на понижение частоты и соответственно расширение разрядности принимаемых данных
Go to the top of the page
 
+Quote Post
DuHast
сообщение Feb 18 2009, 19:50
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 314
Регистрация: 13-07-06
Из: Москва
Пользователь №: 18 797



Цитата(sazh @ Feb 18 2009, 21:44) *
принцип обратный - на понижение частоты и соответственно расширение разрядности принимаемых данных

При реализации этого подхода не полечится защёлкнуть входные данные в FastInputReg, а это чревато нехорошими последствиями.
Go to the top of the page
 
+Quote Post
sazh
сообщение Feb 18 2009, 20:06
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(DuHast @ Feb 18 2009, 22:50) *
При реализации этого подхода не полечится защёлкнуть входные данные в FastInputReg, а это чревато нехорошими последствиями.


Вы не озвучили частоты, с которыми работаете. Но если умножаете на pll, значит невысокие.
А здесь все наоборот. Процессорный link port. Причем все просто и прозрачно. И клок не нужен непрерывный. Правда разрядность поменьше. А базируется именно на том, что клок сопровождения - локальный.
И все это добро потом легко ложится на пониженную системную. практически любую. одноклоковая синхронизация.
Все пляшет и поет. Конечно есть констрейны.
Проект рабочий.
Go to the top of the page
 
+Quote Post
DuHast
сообщение Feb 18 2009, 20:29
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 314
Регистрация: 13-07-06
Из: Москва
Пользователь №: 18 797



Цитата(sazh @ Feb 18 2009, 23:06) *
Вы не озвучили частоты.

62,5Мгц *2 = 125 Мгц.
Цитата(sazh @ Feb 18 2009, 23:06) *
И клок не нужен непрерывный.

Это конечно здорово. Боюсь что в схеме с PLL будут проблемы из-за нестабильности клока.
Цитата(sazh @ Feb 18 2009, 23:06) *
.. Правда разрядность поменьше.
.. клок сопровождения - локальный.
.. Конечно есть констрейны.

Всё это компенсирует отсутствие FastInputReg?
Go to the top of the page
 
+Quote Post
sazh
сообщение Feb 18 2009, 20:35
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(DuHast @ Feb 18 2009, 23:29) *
Всё это компенсирует отсутствие FastInputReg?


А почему он должен отсутствовать. Что мешает в буфере ввода вывода расположить регистр.
Хозяин барин. Я на ночь глядя анализировать не буду.
Считайте метод альтернативным.
///////////////
Ну вот и вляпался. (Один регистр по переднему фронту. второй по заднему).
Значит и без Fast InputReg можно обойтись.
Go to the top of the page
 
+Quote Post
DuHast
сообщение Feb 18 2009, 20:45
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 314
Регистрация: 13-07-06
Из: Москва
Пользователь №: 18 797



Цитата(sazh @ Feb 18 2009, 23:35) *
А почему он должен отсутствовать. Что мешает в буфере ввода вывода расположить регистр.
Хозяин барин. Я на ночь глядя анализировать не буду.
Считайте метод альтернативным.

В Вашей схеме каждый разряд шины данных идёт на два тригера, один защёлкивается положительным фронтом, другой отрицательным. В Cyclon'e во входной ноге только один входной регистр. Вот в Strarix'е два , причём защёлкиваются они разными фронтами, похоже именно для подключения DDR.
Спасибо за помощь, попробую завтра предложеный Вами метод.
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 18 2009, 21:07
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(DuHast @ Feb 18 2009, 22:29) *
62,5Мгц *2 = 125 Мгц.

А чего не в лоб?
Код
reg[4:0] clkreg;
always @(posedge clk200MHz)
begin
  clkreg[4:0] <= {clkreg[3:0],clkDataIn};
  if(clkreg[4:0] == 4'b1100) fifo_out <= data_in_neg_edge;
  if(clkreg[4:0] == 4'b0011) fifo_out <= data_in_pos_edge;
end


PS: ногами не бить, писал на верилоге давно.
Go to the top of the page
 
+Quote Post
DuHast
сообщение Feb 19 2009, 04:43
Сообщение #11


Местный
***

Группа: Свой
Сообщений: 314
Регистрация: 13-07-06
Из: Москва
Пользователь №: 18 797



Цитата(Methane @ Feb 19 2009, 00:07) *
А чего не в лоб?
...

И что мы получим на выходе? fifo_out - данные и clk200MHz- синхронный им клок? А где тогда EnableFifo_out ? Или я Вас не так понял?
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 19 2009, 07:46
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(DuHast @ Feb 19 2009, 06:43) *
И что мы получим на выходе? fifo_out - данные и clk200MHz- синхронный им клок? А где тогда EnableFifo_out ? Или я Вас не так понял?

Мне провести сеанс телепатии, узнать ТЗ, и написать все?
Go to the top of the page
 
+Quote Post
sazh
сообщение Feb 19 2009, 07:52
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(Methane @ Feb 19 2009, 10:46) *
Мне провести сеанс телепатии, узнать ТЗ, и написать все?

clk200MHz - маловато будет.
Тут еще с метастабильностью любят бороться. Так что clk500MHz пожалуй в самый раз.
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 19 2009, 08:00
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(sazh @ Feb 19 2009, 09:52) *
clk200MHz - маловато будет.
Тут еще с метастабильностью любят бороться. Так что clk500MHz пожалуй в самый раз.

В два раза быстрее частоты измерения входого сигнала, будет достаточно.
Go to the top of the page
 
+Quote Post
DuHast
сообщение Feb 19 2009, 17:05
Сообщение #15


Местный
***

Группа: Свой
Сообщений: 314
Регистрация: 13-07-06
Из: Москва
Пользователь №: 18 797



Цитата(Methane @ Feb 19 2009, 10:46) *
Мне провести сеанс телепатии, узнать ТЗ, и написать все?

Причём тут телепатия. Вы предложили схему на входе которой данные , тактируемые каждым фронтом клока 62,5МГц, а на выходе те же данные тактируемые положительным фронтом клоко 200МГц. В этой схеме не хватает выходного сигнала EnableDataOut, как его формироватьВы не указали.
Go to the top of the page
 
+Quote Post

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

 


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


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