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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> переключение тактовых на PLL сыклон 3, о пользе чтения даташитов.
des00
сообщение Aug 23 2011, 12:16
Сообщение #1


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Потребовалось мне на входе ПЛЛ тактовую переключать. Каюсь грешен, не полез в даташит, а поверил заверениям мегавизарда
The clkswitch input will behave as an input clock selection control input. Мой перевод : clkswitch будет вести себя как вход сигнала выбора входной частоты.

Но проект нормально не заработал, путем копания в сигнал тапе были интересные симптомы, как будто клок не переключается обратно. Полез в даташит, а там:
Цитата
Manual Clock Switchover
PLLs of Cyclone III family devices support manual switchover, in which the clkswitch signal controls whether inclk0 or inclk1 is the input clock to the PLL. The characteristics of a manual switchover is similar to the manual override feature in an automatic clock switchover, in which the switchover circuit is edge-sensitive. When the clkswitch signal goes high, the switchover sequence starts. The falling edge of the clkswitch signal does not cause the circuit to switch back to the previous input clock.


Выведя сигнал activeclock в сигнал тап убедился в этом, переключения тактовой происходят на положительных фронтах сигнала clkswitch, о чем мегавизард меня не предупредил %( Мораль : на заборе тоже много что написано, а даташиты никто не отменял %)
Эскизы прикрепленных изображений
Прикрепленное изображение
 


--------------------
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Aug 23 2011, 13:11
Сообщение #2


Гуру
******

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



2 des00
Поковырялся я тут в сорцах (терзало что то смутное), по ходу такое переключение клока было и на 2м циклоне (ногодрыг там похожий как раз на то что вы описали)laughing.gif так что каГбэ всё новое это хорошо забытое старое..

П.С.
там хитрый С2/3 код и пляски с altpll
Go to the top of the page
 
+Quote Post
des00
сообщение Aug 24 2011, 07:44
Сообщение #3


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Kuzmi4 @ Aug 23 2011, 08:11) *
П.С.
там хитрый С2/3 код и пляски с altpll

я выкрутился так
Код
  logic [7 : 0] tx_delay;

  always_ff @(posedge itx_clk) begin
    if (~tx_delay[7] & (iloopforward ^ tx_activeclock))  // clk switch
      tx_delay <= 8'hFF;
    else
      tx_delay <= (tx_delay << 1);
  end

  assign tx_clkswitch = tx_delay[7];


--------------------
Go to the top of the page
 
+Quote Post
Hoodwin
сообщение Aug 24 2011, 09:28
Сообщение #4


Знающий
****

Группа: Участник
Сообщений: 881
Регистрация: 21-03-10
Из: _// \\_
Пользователь №: 56 107



des00
А что надо вначале делать, переключать входной клок или перегружать конфигурацию PLL?
Мне вот предстоит в перспективе делать настройку pixel clock для video dac, и для разных видеорежимов поставлены два разных опорных генератора. Для конечной частоты нужно сочетать настройку параметров со сменой входной частоты.
Go to the top of the page
 
+Quote Post
des00
сообщение Aug 24 2011, 09:49
Сообщение #5


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Hoodwin @ Aug 24 2011, 04:28) *
des00
А что надо вначале делать, переключать входной клок или перегружать конфигурацию PLL?
Мне вот предстоит в перспективе делать настройку pixel clock для video dac, и для разных видеорежимов поставлены два разных опорных генератора. Для конечной частоты нужно сочетать настройку параметров со сменой входной частоты.

судя по даташиту без разницы, думаю что это должно определятся условиями на клок с этой PLL. В любом случае будет время на ресинхронизацию PLL. Я бы сделал так : сменил клок, сменил конфигурацию, дождался захвата PLL.


--------------------
Go to the top of the page
 
+Quote Post
Hoodwin
сообщение Aug 24 2011, 10:03
Сообщение #6


Знающий
****

Группа: Участник
Сообщений: 881
Регистрация: 21-03-10
Из: _// \\_
Пользователь №: 56 107



Ну вот меня терзают смутные опасения, что при смене клока с меньшей частотой на клок с бОльшей частотой, но с сохранением старых настроек коэффициентов умножения можно временно вылететь за пределы внутренней максимальной частоты PLL. Это может чем-нибудь грозить необратимым? Или просто оно никогда не защелкнет фазу в таком виде, пока не появятся вменяемые настройки коэффициентов? Сами то частоты у меня невысокие, до 200 МГц, но иногда у них довольно дурацкие дробные части, так что приходится их получать делением больших частот, которые получаются за счет больших коэффициентов умножения. Например, частота для развертки 1920x1080 равна 182.5 МГц. За основу удобно брать 10МГц, так как из нее можно получить и кучу частот других режимов. Так вот, 10 МГц входных нужно умножить на 73/4, чтобы получить 182.5. Если второй кварц будет, скажем, 27 МГц, то при умножении 27 на 73 возникнет внутренняя частота 1971 МГц, что больше максимальной частоты в 1300 МГц, указанной в даташите.

Может, переключение, равно как и перезагрузку параметров можно делать, пока сама PLL выведена в сброс?
Go to the top of the page
 
+Quote Post
des00
сообщение Aug 24 2011, 11:10
Сообщение #7


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Hoodwin @ Aug 24 2011, 04:03) *
Может, переключение, равно как и перезагрузку параметров можно делать, пока сама PLL выведена в сброс?

вот что говорит даташит
Цитата
Use the clkswitch input for user- or system-controlled switch conditions. This is
possible for same-frequency switchover or to switch between inputs of different
frequencies. For example, if inclk0 is 66 MHz and inclk1 is 200 MHz, you must
control the switchover because the automatic clock-sense circuitry cannot monitor
primary and secondary clock frequencies with a frequency difference of more than
20%. This feature is useful when clock sources can originate from multiple cards
on the backplane, requiring a system-controlled switchover between frequencies
of operation. Choose the secondary clock frequency so the VCO operates in the
recommended frequency range. Also, set the M, N, and C counters accordingly to
keep the VCO operating frequency in the recommended range

....
When using manual clock switchover, the difference between inclk0 and
inclk1 can be more than 20%. However, differences between the two clock
sources (frequency, phase, or both) can cause the PLL to lose lock. Resetting the
PLL ensures that the correct phase relationships are maintained between the input
and output clocks.

ждать ресинхронизации ПЛЛ нужно будет в любом случае. так что ИМХО без разницы %) ЗЫ. боюсь что при сбросе ПЛЛ, может потерятся выбор активного клока


--------------------
Go to the top of the page
 
+Quote Post
Reanimator++
сообщение Dec 9 2011, 15:45
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 1-01-06
Из: Волгоград
Пользователь №: 12 763



Меня смущает одна весч в даташите.
Циклон 3 хендбук, стр 5-21:
Both inclk0 and inclk1 must be running when the clkswitch signal goes high to
start the manual clock switchover event. Failing to meet this requirement causes the
clock switchover to malfunction.

Как сие понимать?

У меня задача такая - у дочерней платы есть два разъема, основной и резервный. Ее могут воткнуть либо тем, либо другим, соответственно на одном из входов будет клок, на другом неизвестно что (мб наводки).
Выбор клока хотел сделать с помощью мониторинга какого-нибудь пина питания в разъеме который вставили (оба одновременно невозможно).

По тексту выше непонятно смогу ли я переключиться на активный клок если второго не будет?
Go to the top of the page
 
+Quote Post
des00
сообщение Dec 9 2011, 18:18
Сообщение #9


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Reanimator++ @ Dec 9 2011, 09:45) *
По тексту выше непонятно смогу ли я переключиться на активный клок если второго не будет?

ИМХО нет


--------------------
Go to the top of the page
 
+Quote Post
Reanimator++
сообщение Dec 9 2011, 21:03
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 1-01-06
Из: Волгоград
Пользователь №: 12 763



Тогда вообще какая-то ерунда получается, они рекомендуют эту фичу для организации резервирования клока. Типа есть два одинаковых, один сдох и оно само на второй перекинулось и никто ничего не заметил. И получается что второй раз система не сможет включиться со сдохшим клоком..
Go to the top of the page
 
+Quote Post
mse
сообщение Dec 10 2011, 15:21
Сообщение #11


Знающий
****

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



Ну, типа, предполагается, что клок сдох, плата переключилась на резервный и зажёгся сигнальный ИК светодиод. Чтобы техник побежал и заменил блок.
Go to the top of the page
 
+Quote Post
Reanimator++
сообщение Dec 10 2011, 16:41
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 1-01-06
Из: Волгоград
Пользователь №: 12 763



Подумал еще раз. Написанное возможно означает что для мануального переключения необходимы оба клока, иначе процесс зависнет (что в принципе логично, ибо не на что переключать). А вот автомат должен всегда работать, там про него ничего не сказано.
Где можно подробнее прочитать как работает этот автомат? Интересно сможет ли он отличить сигнал радио Маяк от нормального клока?
Go to the top of the page
 
+Quote Post
des00
сообщение Dec 11 2011, 11:15
Сообщение #13


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Там переключалка сделана безглитчевая, она требует наличия двух тактовых частот, для синхронизации сигнала включения в каждом тактовом домене. Если мне память не изменяет, в автоматическом режиме там тоже самое


--------------------
Go to the top of the page
 
+Quote Post
Reanimator++
сообщение Dec 11 2011, 12:55
Сообщение #14


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 1-01-06
Из: Волгоград
Пользователь №: 12 763



Мда. Меня бы глитчевая коммутация устроила вполне. Благо 1 раз всего надо сделать при включении и клок на выходе плл задействуется только иногда, для всего остального есть свой, набортный..

Завести оба на стандартные I/O скоммутить тупым assign-ом, вывести наружу и завести на клок инпут? ))
Go to the top of the page
 
+Quote Post
des00
сообщение Dec 11 2011, 14:11
Сообщение #15


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Reanimator++ @ Dec 11 2011, 06:55) *
Мда. Меня бы глитчевая коммутация устроила вполне. Благо 1 раз всего надо сделать при включении и клок на выходе плл задействуется только иногда, для всего остального есть свой, набортный..

Завести оба на стандартные I/O скоммутить тупым assign-ом, вывести наружу и завести на клок инпут? ))

предлагаю вам поставить экспиремент

Цитата
When the current reference clock is not present, the clock-sense block automatically switches to the backup clock for PLL reference. The clock switchover circuit also sends out three status signals—clkbad[0], clkbad[1], and activeclock—from the PLL to implement a custom switchover circuit. You can select a clock source at the backup clock by connecting it to the inclk1 port of the PLL in your design.


вроде как должно работать, попробуйте и сообщите общественности


--------------------
Go to the top of the page
 
+Quote Post

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

 


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


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