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

 
 
> 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
Ответов
oval
сообщение Jan 10 2008, 17:31
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 265
Регистрация: 15-03-05
Из: Москва
Пользователь №: 3 367



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


Обычно со стороны PCI PLL не используется, сама спецификация PCI допускает, если я не ошибаюсь, достаточно "плохой" клок. Разводка и т.п. не причем.

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


Здесь важны только специальные буфера, PLL лишь может скомпенсировать фазу тактирования, то есть увеличить в некоторой степени запас по временам, но для частот PCI это не существенно.

Цитата
Не совсем понял.
С PLL есть сигнал LOCK - имеете ввиду, что надо его отслеживать и обрабатывать ?
Согласен.
Но это уже во втором приближение, пока все это хочу просто поднять.


Лучше продумать этот вопрос сразу же, ибо в худшем случае устройство просто не запустится правильно. Да, кроме сброса отдельных доменов устройства, нужно еще и сброс самих PLL продумать.

Цитата(_Vladimir_ @ Jan 10 2008, 19:09) *
Спасибо, учту.
Пока оставлю PCI c PLL, но в случае проблем - есть вариант где копать.
По неопытности упущение - подвел PCI клок не на пин, который может быть подключен прямо к дереву клоков, а на простой пин.


Вот этот момент, конечно, не удачный... Можно долго провозиться. Причем PLL тут не особо поможет, можно конечно "играть" с фазой, но это не есть правильное решение. Если есть возможность, лучше сразу завести PCI клок на глобальный вход.

Цитата
PAR это пропускает, но "осуждает".
Исходя из этого, в конечном итоге так может быть все-таки лучше.


См. выше. PLL в данном случае проблему не решает.

Вообще, лучше сразу делать продуманно и правильно, ибо если не повезет, то больше времени потратите на выявление причин. Но может и повести smile.gif
Go to the top of the page
 
+Quote Post
_Vladimir_
сообщение Jan 10 2008, 21:43
Сообщение #3


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

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



Цитата(oval @ Jan 10 2008, 21:31) *
Обычно со стороны PCI PLL не используется, сама спецификация PCI допускает, если я не ошибаюсь, достаточно "плохой" клок. Разводка и т.п. не причем.
Здесь важны только специальные буфера, PLL лишь может скомпенсировать фазу тактирования, то есть увеличить в некоторой степени запас по временам, но для частот PCI это не существенно.
Лучше продумать этот вопрос сразу же, ибо в худшем случае устройство просто не запустится правильно. Да, кроме сброса отдельных доменов устройства, нужно еще и сброс самих PLL продумать.
Вот этот момент, конечно, не удачный... Можно долго провозиться. Причем PLL тут не особо поможет, можно конечно "играть" с фазой, но это не есть правильное решение. Если есть возможность, лучше сразу завести PCI клок на глобальный вход.
См. выше. PLL в данном случае проблему не решает.

С PCI понятно.
Тем более, на уровне тестов, в железе работает.
Logic Analyzer в прошивке показывает правильную запись.
Да и на другой строне вижу в терминале результат циклического запись-чтение.

Цитата(oval @ Jan 10 2008, 21:31) *
Вообще, лучше сразу делать продуманно и правильно, ибо если не повезет, то больше времени потратите на выявление причин. Но может и повести smile.gif

Интересно, есть ли другие мнения на этот счет? :-)
Go to the top of the page
 
+Quote Post



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

 


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


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