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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> PLL и CycloneII, есть некотрое несоотвествие..
Kuzmi4
сообщение Sep 4 2008, 10:45
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



Здравствуйте.

Есть устройство такого плана:
NIOSII(с периферией которая требует завода клока 60MHz) + SDRAM (в будущем планируется DRR) + внешний модуль на который нужно заводить те же 60 MHz что и на периферию в ниосе(отдельная от FPGA железка).
Почитал я литературу по этому вопросу и посмотрел в схематик моего девкита:
В сехатике я нашёл что клок на SDRAM с PLL1_OUTp
Прикрепленное изображение
Я собсно так делал до этого момента:
Выводил на PLL-е клок на SDRAM(с0) и клок на NIOSII (с1) - клок на ниос был внутренний, а SDRAM я выводил на U4 который есть PLL1_OUTp..
Недавно меня заинтересовал такой вопрос - помимо SDRAM, которой я вывожу клок, мне нужно есчё в периферию клок (в NIOSII) и этот же клок наружу с FPGA в железку.
Почитав литературу наткнулся на то, что выводить то можно наружу и в Global Clock Network только с c2 выхода PLL-а
Прикрепленное изображение

Обратился в альтеровский саппорт - обрисовал им ситуацию - они мне сказали, что можно выводить наружу клоки и с c0 и с c1 - в принципе это не противоречит тому как я делал раньше, однако немного не стыкуется с тем что я вычитал..
Чувствую что сдесь могут возникнуть подводные камни.. 1111493779.gif
Может кто нибудь доходчиво объяснить, а то не хочется наступить на грабли twak.gif
help.gif
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Sep 4 2008, 11:58
Сообщение #2


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

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



Если вывести с c2 на PLL_CLKOUT, вы получите оптимальный сигнал (минимальное дрожание и прогнозируемую задержку), если с c0 - то нет. В принципе, при выводе с c0 должен появиться warning, об этом повествующий.
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Sep 4 2008, 12:15
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 DmitryR - я так приблизительно и догадывался..
Вопрос только в том - если у меня есть 1 PLL - я с него беру клок на SDRAM, на ниос2 и на периферию - SDRAM на 50МГц я так понял вытерпит, ниос - внутри, а вот как быть с выходом этим - у меня есть выход на коннектор PLL2_OUT, как сказать квартусу , чтоб под эту мегафункцию ( PLL которая ) он взял иименно 2-й PLL - ну чтоб лапку наружу правильно вывести ??

Кстати - варнинга про лапу не было...
Go to the top of the page
 
+Quote Post
Postoroniy_V
сообщение Sep 4 2008, 12:36
Сообщение #4


МедвеД Инженер I
****

Группа: Свой
Сообщений: 816
Регистрация: 21-10-04
Пользователь №: 951



Цитата(Kuzmi4 @ Sep 4 2008, 21:15) *
2 DmitryR - я так приблизительно и догадывался..
Вопрос только в том - если у меня есть 1 PLL - я с него беру клок на SDRAM, на ниос2 и на периферию - SDRAM на 50МГц я так понял вытерпит, ниос - внутри, а вот как быть с выходом этим - у меня есть выход на коннектор PLL2_OUT, как сказать квартусу , чтоб под эту мегафункцию ( PLL которая ) он взял иименно 2-й PLL - ну чтоб лапку наружу правильно вывести ??

Кстати - варнинга про лапу не было...

поставить второй плл и вывести с с2 на плл2_оут, это если нужен минимальный clock skew.
если не нужен то можно и с с0 с1 выводить и грамотно констрейны написать.
а варнинг быть должен, при использовании с0 или с1, там что то типа "bla bla output jitter"


--------------------
Cogito ergo sum
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Sep 4 2008, 12:41
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 Postoroniy_V - сегодня пригляжусь внимательнее - но вроде не было...

Та а всё же - как обойтись 1-м PLL - где квартусу это сказать ? ( Я так понял он берёт PLL-и начиная с первого и далее по порядку ??)

А на счёт
Цитата
..грамотно констрейны написать...

Это вы TimeQuest имеете ввиду ( это когда TCL и с нетами разбираться надо ??) ??
И на счёт грамотно - это как ? Примерчик можно ?? smile.gif
Go to the top of the page
 
+Quote Post
Postoroniy_V
сообщение Sep 4 2008, 12:52
Сообщение #6


МедвеД Инженер I
****

Группа: Свой
Сообщений: 816
Регистрация: 21-10-04
Пользователь №: 951



Цитата(Kuzmi4 @ Sep 4 2008, 21:41) *
2 Postoroniy_V - сегодня пригляжусь внимательнее - но вроде не было...

Та а всё же - как обойтись 1-м PLL - где квартусу это сказать ? ( Я так понял он берёт PLL-и начиная с первого и далее по порядку ??)

А на счёт

Это вы TimeQuest имеете ввиду ( это когда TCL и с нетами разбираться надо ??) ??
И на счёт грамотно - это как ? Примерчик можно ?? smile.gif

сколько инстанций плл столько ква будет "пытаться" реализовать в железе smile.gif
кроме одного НО. Это когда скажем пара идентичных(идентичный означает одикановые плл, как вы можете знать плл бываеют разные - fast pll, enhanced pll) плл имеет теже настройки - тогда ква может сказать что то типа "pll merged in one".
про констрейны
The quick answer is the QuartusII handbook, volume 3 - Verification, section II - timing analysis.
http://www.altera.com/literature/lit-qts.jsp

The whole handbook is 31 MB and has plenty of detail. Keep in mind the synthesis, place and route engines have plenty of discussion about meeting timing, because much of that is timing driven. Timing Analysis is separate. Also be mindfull that there are two paths to go down for timing analysis, classic and TimeQuest. Choose up front which way to go. If you only want some basics, like global clock domains, clock-to-out's, and Tsu's, Classic is fast and easy. If you want more in depth, TimeQuest has the power.

отсюда
http://www.alteraforum.com/forum/showthread.php?t=435


--------------------
Cogito ergo sum
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Sep 4 2008, 13:00
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 Postoroniy_V - Литературу почитаемс.

Варнинги сегодня посмотрю.

Ну а всё же - как быть с назначением PLL (можно и 2 взять, но всё же хочется узнать как назначать конкретный PLL за определённой реализацией в графике там или в VHDL) smile3046.gif При работе с мегавизардом вроде бы некак нельзя это задать...
Чисто интуитивно догадываюсь, что если для сдрам выделить с2 и назначить её на U4 а для 2-го PLL выход с c2 вывести на PLL2_OUT - то он их так и расположит - первый и второй..
Ну а если вдруг надо будет 1-й и 3-й PLL взять - квартус по назначении с2 выхода будет ориентироваться что ли ??
07.gif
Go to the top of the page
 
+Quote Post
Postoroniy_V
сообщение Sep 4 2008, 13:26
Сообщение #8


МедвеД Инженер I
****

Группа: Свой
Сообщений: 816
Регистрация: 21-10-04
Пользователь №: 951



Цитата(Kuzmi4 @ Sep 4 2008, 22:00) *
2 Postoroniy_V - Литературу почитаемс.

Варнинги сегодня посмотрю.

Ну а всё же - как быть с назначением PLL (можно и 2 взять, но всё же хочется узнать как назначать конкретный PLL за определённой реализацией в графике там или в VHDL) smile3046.gif При работе с мегавизардом вроде бы некак нельзя это задать...
Чисто интуитивно догадываюсь, что если для сдрам выделить с2 и назначить её на U4 а для 2-го PLL выход с c2 вывести на PLL2_OUT - то он их так и расположит - первый и второй..
Ну а если вдруг надо будет 1-й и 3-й PLL взять - квартус по назначении с2 выхода будет ориентироваться что ли ??
07.gif

не понимаю ваших трудностей 07.gif
ноги задаются
1) pin planner
2) assignment editor
3) в исходнике можно через атрибуты
ква по ногам будет ориентироваться, ну а как ещё то?

....добавил по поводу варнинга..
был не прав
если наружу выводите с0, или с1 или с2, тоесть ТОЛЬКО 1 пин и именно его указываете как zero delay buffer то не будет варнинга
если выводите скажем с1 и с2 и указываете что с2 zero delay buffer то получаете варнинг
Warning: PLL "pll:inst2|altpll:altpll_component|pll" output port clk[1] feeds output pin "c1" via non-dedicated routing -- jitter performance depends on switching rate of other design elements. Use PLL dedicated clock outputs to ensure jitter performance

а конкретный плл можно назначить через chip editor, я правда не понимаю нафига она надо.


--------------------
Cogito ergo sum
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Sep 4 2008, 13:31
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 Postoroniy_V - трудности как раз были в том, как квартус будет ориентироваться какой PLL куда положить..
Теперь в принципе уже ясно что по ногам, просто думал что есть есчё какой либо метод, потому как по ногам показался мне немного странным..
Go to the top of the page
 
+Quote Post
Postoroniy_V
сообщение Sep 4 2008, 13:45
Сообщение #10


МедвеД Инженер I
****

Группа: Свой
Сообщений: 816
Регистрация: 21-10-04
Пользователь №: 951



Цитата(Kuzmi4 @ Sep 4 2008, 22:31) *
2 Postoroniy_V - трудности как раз были в том, как квартус будет ориентироваться какой PLL куда положить..
Теперь в принципе уже ясно что по ногам, просто думал что есть есчё какой либо метод, потому как по ногам показался мне немного странным..

следуйте рекомендациям и даташитам smile.gif и не будет трудностей
для плл обычно рекомендуется в качестве входной ноги юзать dedicated clk пины, или же ноги с ближайшего банка. в качестве выходной ноги есть dedicated pll_outx пины, привязанные к конкретному плл. и соотвественно имеющие минимальный clock skew
вот и всё...

вообщем читайте мануалы smile.gif


--------------------
Cogito ergo sum
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Sep 4 2008, 13:48
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 Postoroniy_V - читаю, но есть вопросы ( потому как иногда делаю не как по ДШ но вроде работает) вот потому и спрашиваю..
..килограма 2 у меня уже этих мануалов в весовом эквиваленте....
Go to the top of the page
 
+Quote Post
Postoroniy_V
сообщение Sep 4 2008, 13:53
Сообщение #12


МедвеД Инженер I
****

Группа: Свой
Сообщений: 816
Регистрация: 21-10-04
Пользователь №: 951



Цитата(Kuzmi4 @ Sep 4 2008, 22:48) *
2 Postoroniy_V - читаю, но есть вопросы ( потому как иногда делаю не как по ДШ но вроде работает) вот потому и спрашиваю..
..килограма 2 у меня уже этих мануалов в весовом эквиваленте....

обычно вопросы возникают когда не работает smile.gif
немного удивился что вы после того как получили ответ у альтеровского саппорта тут решили спросить
у меня даташиты весят намного меньше всего пара тройка гигов biggrin.gif


--------------------
Cogito ergo sum
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Sep 4 2008, 14:12
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 Postoroniy_V - там какой то Viking отвечал что и удивило 07.gif - при чём как то размазанно...
Теперь всё стало на свои места..
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Sep 5 2008, 11:50
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



Проверил - варнинга на счёт назначения не на ту ногу нету (выход с1 на лапу U4) 07.gif
Вот оно как....

Может настройки какие надо выставить ??
Go to the top of the page
 
+Quote Post
slog
сообщение Sep 5 2008, 12:10
Сообщение #15


Знающий
****

Группа: Свой
Сообщений: 961
Регистрация: 28-11-05
Пользователь №: 11 489



А ты попробуй в Zero delay buffer или In sousrce sinchronous compensation mode PLL установить. Мне кажется будет работать только с C2 и разные варнинги появятся.


--------------------
В действительности всё не так, как на самом деле.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 13:09
Рейтинг@Mail.ru


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