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

 
 
6 страниц V  < 1 2 3 4 5 > »   
Reply to this topicStart new topic
> Правильное использование locked у PLL
SM
сообщение Feb 2 2015, 16:45
Сообщение #31


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(Jackov @ Feb 2 2015, 19:27) *
Проблематично, слишком много таких триггеров.

А Вам зачем об этом думать? Синтезатор что ли что-то куда-то впихнуть не может?

Если их много, их можно в цикле "for generate" расставить... например...
Go to the top of the page
 
+Quote Post
Jackov
сообщение Feb 2 2015, 18:21
Сообщение #32


Местный
***

Группа: Участник
Сообщений: 294
Регистрация: 25-09-13
Из: Н.Новгород
Пользователь №: 78 485



Цитата(SM @ Feb 2 2015, 19:45) *
А Вам зачем об этом думать? Синтезатор что ли что-то куда-то впихнуть не может?

Если их много, их можно в цикле "for generate" расставить... например...

Видимо я чего-то недопонимаю.
Стоит задача заблокировать работу схемы в момент когда ПЛЛ выдаёт нестабильную частоту. Для этого вывод lock у ПЛЛ заводим на вход СЕ триггерам, притом всем (можно не всем, а только критичным) триггерам в схеме, ибо все триггеры должны быть заблокированы. И вот не совсем понято как это написать. Приходит на ум способ описания асинхронного сброса
Код
always @(posedge CLK or posedge aReset)
begin
    if(aReset)
    begin    Q = 1'd0; end
        else begin Q = D; end
end

Только вместо aReset должен быть этот самый СЕ, но как я разумею в Верилоге такого нет.
А как через generate организовать, чёт не соображу.
Go to the top of the page
 
+Quote Post
SM
сообщение Feb 2 2015, 18:35
Сообщение #33


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Извращение какое. Зачем его разводить по всей схеме? Пустите весь клок через него, используя элемент навроде DCS у Lattice ( стр. 19-20 в документе ), если уж так приспичит. Хотя, самое правильное, пускать его именно на асинхронный резет вместе с общим резетом, так как, при сбое, lock может пропасть уже после того, как сам клок сбойнет. Детектор lock-а не умеет предугадывать сбои. Хотя я за все время ни разу не видел такое вживую, чтобы лок пропадал при стабильном входном клоке.
Go to the top of the page
 
+Quote Post
Krys
сообщение Feb 3 2015, 03:36
Сообщение #34


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



Цитата(Opex @ Feb 2 2015, 18:28) *
Вы прочитали невнимательно.
очень внимательно. Написано: не используйте гейтед клок. Но если всё же надо, то используйте глобальный буфер с разрешением. Глобальный буфер с разрешением - не совсем гейтед клок.


Цитата(Jackov @ Feb 3 2015, 00:21) *
Только вместо aReset должен быть этот самый СЕ, но как я разумею в Верилоге такого нет.
Откройте тот самый документ от Opex: http://www.xilinx.com/support/documentatio...inx14_7/sim.pdf Стр. 62, там один в один Ваш код. Ну и что, что название сброс, а не разрешение? Для машины нет разницы, как Вы его назвали.


--------------------
Зная себе цену, нужно ещё и пользоваться спросом...
Go to the top of the page
 
+Quote Post
Opex
сообщение Feb 3 2015, 08:57
Сообщение #35


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

Группа: Свой
Сообщений: 75
Регистрация: 13-03-11
Из: Екатеринбург
Пользователь №: 63 574



Цитата(Krys @ Feb 3 2015, 08:36) *
очень внимательно. Написано: не используйте гейтед клок. Но если всё же надо, то используйте глобальный буфер с разрешением. Глобальный буфер с разрешением - не совсем гейтед клок.


The BUFGCE primitive creates an enabled clock buffer using the BUFGMUX select mechanism.
BUFGCE is a global clock buffer with a single gated input.

...most FPGA devices now have a clock enabled global buffer resource called BUFGCE.
Тот самый глобальный буфер с разрешением. А дальше
However, a clock enable is still the preferred method to reduce or stop the clock to portions of the design.
Противопоставление СЕ этому буферу.

Go to the top of the page
 
+Quote Post
Krys
сообщение Feb 3 2015, 09:41
Сообщение #36


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



Это всё понятно. Однако просто гейтед клок в их понимании - это когда тактовая стробируется прямо на обычных лутах. Это страшно, и чтобы было не так страшно они советуют ставить глобальный буфер с разрешением.
Ну а фраза
Цитата
a clock enable is still the preferred method
- тут есть слово предпочтительный, но не значит же, что mandatory. Т.е. кто разобраться сам не может - ему подсказывают, что раз не можете, тогда не парьтесь, а поверьте нам. Но кто может разобраться - тот уж сам выберет, что ему надо. preferred - это не категорично.


--------------------
Зная себе цену, нужно ещё и пользоваться спросом...
Go to the top of the page
 
+Quote Post
Opex
сообщение Feb 3 2015, 15:02
Сообщение #37


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

Группа: Свой
Сообщений: 75
Регистрация: 13-03-11
Из: Екатеринбург
Пользователь №: 63 574



Советуем использовать одно, но лучше используйте другое?
Я, наверное, еще не очень понимаю их хитрую индийскую логику laugh.gif
Go to the top of the page
 
+Quote Post
Jackov
сообщение Feb 3 2015, 17:41
Сообщение #38


Местный
***

Группа: Участник
Сообщений: 294
Регистрация: 25-09-13
Из: Н.Новгород
Пользователь №: 78 485



Цитата(Krys @ Feb 3 2015, 06:36) *
там один в один Ваш код.
Не совсем, у меня в always-е два сигнала фигурируют, там один. Попробую завтра так сделать, отпишусь что получилось.
Go to the top of the page
 
+Quote Post
Krys
сообщение Feb 4 2015, 03:09
Сообщение #39


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



Цитата(Opex @ Feb 3 2015, 21:02) *
Советуем использовать одно, но лучше используйте другое?
Я, наверное, еще не очень понимаю их хитрую индийскую логику :laugh:
Вам что, надо выкрутиться любой ценой? Или в каком-то информационном состязании победить, закрыв глаза на всё?

Я освежу историю, с чего всё началось.

Был совет использовать глобальный буфер с разрешением.
Вы сказали, что так делать не рекомендуется, приведя фрагмент текста на английском, где сказано, что не рекомендуется гейтед клок, а вместо этого лучше глобальный буфер с разрешением.
Я возразил, что наоборот рекомендуется.
И тут Вы начали выкручиваться.

Моё понимание того фрагмента на английском: "гейтед клок не рекомендуется, лучше вместо него глобальный буфер с разрешением (не являющийся в чистом виде тем, что они понимают под гейтед клок). Но предпочтительным остаётся использование CE в каждом триггере".
И ещё раз: "предпочтительно CE, но и глобальный буфер вполне пойдёт вместо чистого гейтед клока. Вот гейтед клок - тут уж точно лучше не использовать". Что значит "предпочтительно"? Это может значить, например, что с весовым коэффициентом 51% предпочтительно CE, но во многих случаях (например 49%) удобнее глобальный буфер с разрешением. Так что тут разработчик должен оценить все обстоятельства и принять решение, одно из двух, оба не возбраняются. Если он не в состоянии принять решение - то тогда ему говорят предпочтительно CE.

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

Цитата(Jackov @ Feb 3 2015, 23:41) *
Не совсем, у меня в always-е два сигнала фигурируют, там один
Ну да, у Вас асинхронный сброс, не вчитался. Просто сотрите его из олвейза ))) Будет сброс синхронный, а засинтезируется он как клок енэйбл. И наверняка (потом покажете кусок схемы) он ляжет как дополнительный вход LUTа, стоящего перед входом данных триггера. По опыту, не хочет синтезатор подключать сигналы типа CE к соответствующим входам триггера, лучше ему через LUT. Ну на то есть причины конечно (хотя это касается Xilinx, в Альтере может и захочет).


--------------------
Зная себе цену, нужно ещё и пользоваться спросом...
Go to the top of the page
 
+Quote Post
Opex
сообщение Feb 4 2015, 16:02
Сообщение #40


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

Группа: Свой
Сообщений: 75
Регистрация: 13-03-11
Из: Екатеринбург
Пользователь №: 63 574



Цитата(Krys @ Feb 4 2015, 08:09) *
Вам что, надо выкрутиться любой ценой? Или в каком-то информационном состязании победить, закрыв глаза на всё?

Откуда выкрутиться? Я куда-то попал?
Во все глаза искал совет использовать BUFGCE, видел только CE. Ткните уже носом, куда смотреть.
Я вот вижу:
Xilinx® recommends that you use the CLB clock enable pin instead of gated clocks.
If you want to use a gated clock for power reduction, most FPGA devices now have a
clock enabled global buffer resource called BUFGCE. However, a clock enable is still the
preferred method to reduce or stop the clock to portions of the design.

Перевод такой:
Xilinx рекомендует использовать CLB CE вместо gated clocks.
В ПЛИСах теперь есть BUFGCE, однако лучше использовать CE.

Неправильно перевожу? Или есть другой источник сведений?

Цитата(Krys @ Feb 4 2015, 08:09) *
Моё понимание того фрагмента на английском: "гейтед клок не рекомендуется, лучше вместо него глобальный буфер с разрешением

Понял, у меня с английским проблемы.

Приоритет по предпочтительности использования:

1) BUFGCE.
2) CLB CE.
3) Gated clock.

Так получается?
Go to the top of the page
 
+Quote Post
SM
сообщение Feb 4 2015, 17:55
Сообщение #41


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(Opex @ Feb 4 2015, 19:02) *
1) BUFGCE.
2) CLB CE.
3) Gated clock.

Так получается?

Нет. Не так.

1) CLB CE.
2) BUFGCE.
3) Gated clock.

Но, в данном, конкретном случае, явно BUFGCE просится, ввиду особенности задачи.
Go to the top of the page
 
+Quote Post
ViKo
сообщение Feb 4 2015, 18:23
Сообщение #42


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Топикстартеру надо пересмотреть свою позицию:
Цитата
Это до каждого триггера пойдёт линия сброса - усложняет трассировку, а если сброс делать синхронным то ещё и логику. Конечно, можно не каждый триггер сбрасывать, а только нужный, но это надо думать какие нужно, какие нет, а думать над этим желания нет, т.к. у меня в проекте сброс вообще не предусмотрен, ПЛИСка в устройстве одна и сбрасывать её попросту некому, да и ненужно это - запустилась и работает.
Go to the top of the page
 
+Quote Post
Krys
сообщение Feb 5 2015, 02:27
Сообщение #43


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



Цитата(ViKo @ Feb 5 2015, 00:23) *
Топикстартеру надо пересмотреть свою позицию:
В чём конкретно?


Цитата(SM @ Feb 4 2015, 23:55) *
1) CLB CE.
2) BUFGCE.
3) Gated clock.
Но, в данном, конкретном случае, явно BUFGCE просится, ввиду особенности задачи.
Поддерживаю. Да и задача то вполне распространённая. Поэтому я и говорю "предпочтительно" - это может означать например 51% против 49% случаев, так что грань в решении весьма неоднозначная, нужно учитывать свои особенности.
А приоритеты я бы даже так расставил:
1) CLB CE.
2) BUFGCE.
100) Gated clock
, показывая, что BUFGCE довольно близко к CLB CE и лишь немного уступает последнему для общего случая (для конкретного может не уступать).

Цитата(Opex @ Feb 4 2015, 22:02) *
Откуда выкрутиться? Я куда-то попал?
Вам возразили. Для многих это недопустимо, и надо с этим не соглашаться до последнего во что бы то ни стало.


Цитата(Opex @ Feb 4 2015, 22:02) *
Xilinx® recommends that you use the CLB clock enable pin instead of gated clocks.
If you want to use a gated clock for power reduction, most FPGA devices now have a
clock enabled global buffer resource called BUFGCE. However, a clock enable is still the
preferred method to reduce or stop the clock to portions of the design.

Перевод такой:
Xilinx рекомендует использовать CLB CE вместо gated clocks.
В ПЛИСах теперь есть BUFGCE, однако лучше использовать CE.

Неправильно перевожу? Или есть другой источник сведений?
Нет, другого источника нет, кроме, пожалуй, опыта и сухого остатка от прочтения других доков возможно и от других плис. Переводите наверное правильно. Но вот воспринимаете не совсем (ИМХО). Я бы перевёл так:
1. Xilinx рекомендует использовать CLB CE вместо gated clocks.
2. Но если всё же gated clocks нужен, то В ПЛИСах теперь есть BUFGCE,
3. Однако лучше предпочтительнее использовать CE. При том даже не так. Дословный перевод данного пункта более мягкий: "тем не менее, CE всё ещё является предпочтительным методом...". Т.е. так написано, чтобы показать отсутствие категоричности в использовании CE вместо BUFGCE.



--------------------
Зная себе цену, нужно ещё и пользоваться спросом...
Go to the top of the page
 
+Quote Post
ViKo
сообщение Feb 5 2015, 06:08
Сообщение #44


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Krys, перечитайте тему с начала, что не задавать неотвечаемое.

Диву даюсь - обсуждаются способы манипуляции тактовой частотой, которая еще не установилась.
Go to the top of the page
 
+Quote Post
Krys
сообщение Feb 5 2015, 07:07
Сообщение #45


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



Цитата(ViKo @ Feb 5 2015, 12:08) *
Krys, перечитайте тему с начала, что не задавать неотвечаемое.
Почему же неотвечаемое? Перефразирую вопрос: что в процитированном Вами фрагменте Вам не понравилось?


--------------------
Зная себе цену, нужно ещё и пользоваться спросом...
Go to the top of the page
 
+Quote Post

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

 


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


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