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

 
 
> Multi Clock design, нужен совет опытных
_Vladimir_
сообщение Jan 10 2008, 13:26
Сообщение #1


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

Группа: Свой
Сообщений: 114
Регистрация: 10-05-05
Пользователь №: 4 893



Весьма упрощенная схема системы в прицепе.

Это мой первый проект на FPGA.
Но , к сожалению, без такой "кучерявости" по клокам никак...
Отдельные блоки написаны, симулированы.
PCI target уже проверен в железе.
В девайсе два независимых канала DDR266,
т. е. предусматривается вариант - один пишется, второй читается на PCI.

Вопрос такой.
Как правильней поступить с клоками?
Что будет лучше:
- Запитать PLL 2 от выхода PLL3 (установлено у меня сейчас так).
- Запитать PLL 2 от выхода PLL1.
- Запитать PLL 2 тоже от осциллятора (внешний кварц) .
- Какой-то другой вариант...
- Или все едино будет плохо, трудно будет добиться чтобы все это вместе работало :-).
- "я дую на воду" :-)
Входной поток - 660 мегабайт/сек

Нужный функционал девайса на этом этапе:
режим 1 (фоновый) - запись в память и чтение на PCI, rating определяется от PCI.
допустимы пропуски во входном потоке данных.
режим 2. запись до заполнения в оба канала DDR последовательно, стоп и
затем чтение через PCI.
Работа устройства начинается с инициализации регистров по PCI,
затем и управляется (в основном) посредством записи команд в регистры через PCI.
т. е. без PCI - "нет устройства".
Может взять исходный для PLL 2-3 клок от PLL 1?
Наверное это не есть хорошо, не знаю когда поднимается PCI clock (от Linux машины)- нет осцилографа под рукой.

FPGA - Lattice EC33, 672 pin
Прикрепленные файлы
Прикрепленный файл  DEVICE_sheet.pdf ( 7.38 килобайт ) Кол-во скачиваний: 64
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
DmitryR
сообщение Jan 10 2008, 14:30
Сообщение #2


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Что-то не понял, зачем PLL3, если 66MHz уже есть на PLL1? Почему прямо его нельзя подать на Data Flow Control? Соответственно его же подать на PLL2.
Go to the top of the page
 
+Quote Post
_Vladimir_
сообщение Jan 10 2008, 15:14
Сообщение #3


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

Группа: Свой
Сообщений: 114
Регистрация: 10-05-05
Пользователь №: 4 893



Цитата(DmitryR @ Jan 10 2008, 18:30) *
Что-то не понял, зачем PLL3, если 66MHz уже есть на PLL1? Почему прямо его нельзя подать на Data Flow Control? Соответственно его же подать на PLL2.

Все равно надо PLL3.
Нагрузка на него большая, и feedback подается так что нельзя уже снять сдвинутый клок.
Пэтому на PLL3 реализуется 66 + 66 со сдвигом на 90.


Цитата(oval @ Jan 10 2008, 18:37) *
PLL1 вообще исключить, ибо далеко не всегда тактовый сигнал шины PCI является достаточно "качественным" для стабильной работы блока PLL. Не хочу сказать, что это обязательно будет так, но были случаи нестабильной работы.

А если исходный нестабильный (скорее всего это или разводка была такая или мастер-чип такой)
то напрямую разве будет лучше?
По моему разумению (это взято по примерам корок) PLL работает как развязка + повышение нагрузочгной способности + оптимальное использование специальных клоковых линий.

Цитата(oval @ Jan 10 2008, 18:37) *
PLL2 и PLL3 тактировать внешним генератором, можно одним и тем же.

ОК.
Цитата(oval @ Jan 10 2008, 18:37) *
Ну и не забыть разумеется про правильный сброс устройства с учетом сигналов захвата фазы от всех PLL.

Не совсем понял.
С PLL есть сигнал LOCK - имеете ввиду, что надо его отслеживать и обрабатывать ?
Согласен.
Но это уже во втором приближение, пока все это хочу просто поднять.
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Jan 10 2008, 15:42
Сообщение #4


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Цитата(_Vladimir_ @ Jan 10 2008, 18:14) *
Все равно надо PLL3.
Нагрузка на него большая, и feedback подается так что нельзя уже снять сдвинутый клок.
Пэтому на PLL3 реализуется 66 + 66 со сдвигом на 90.

Ничего непонятно, можно поподробнее? Нагрузка без разницы, можно от одной PLL питать весь дизайн.

Цитата(_Vladimir_ @ Jan 10 2008, 18:14) *
А если исходный нестабильный (скорее всего это или разводка была такая или мастер-чип такой)
то напрямую разве будет лучше?
По моему разумению (это взято по примерам корок) PLL работает как развязка + повышение нагрузочгной способности + оптимальное использование специальных клоковых линий.

Напрямую будет лучше, если у входной частоты большое дрожание - PLL будет слетать, а без нее будет работать. А повышение нагрузочной способности и использования клоковых линий дает буфер, а не PLL. Поэтому если с частотой не надо манипулировать - то пропускать ее черел PLL один к одному в большинстве случаев бессмысленно: у нее дрожание как минимум 300ps p-p, хороший внешний генератор может дать на порядок-другой меньше. Хоть это и важно только при очень высоких частотах.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 22nd June 2025 - 06:26
Рейтинг@Mail.ru


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