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

 
 
> Синхронизатор, Две тактовые, единичные импульсы
AlphaMil
сообщение Apr 7 2011, 13:19
Сообщение #1


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

Группа: Участник
Сообщений: 135
Регистрация: 1-01-10
Из: Минск, Беларусь
Пользователь №: 54 588



Гуру, подскажите, как правильно сделать:
есть одиночный импульс синхронный 100МГц, он должен породить одиночный импульс на 50МГц.
Весь проект нет смысла переводить на повышенную частоту.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
AlphaMil
сообщение Apr 10 2011, 17:17
Сообщение #2


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

Группа: Участник
Сообщений: 135
Регистрация: 1-01-10
Из: Минск, Беларусь
Пользователь №: 54 588



Да, частоты зависимы и генерируются от одного клока. Сейчас использую S3 и ISE 12.4. Среда понимает соотношение частот. Так может все было зря?
Go to the top of the page
 
+Quote Post
sazh
сообщение Apr 10 2011, 18:07
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(AlphaMil @ Apr 10 2011, 20:17) *
Да, частоты зависимы и генерируются от одного клока.


Тицце и Шенк на этот счет

Код
module in_out_flag
(
input  in_flag,
input  out_clk,
output ena_out_flag
);

reg          dff_a = 1'b0;
reg [1:0] shift_rg = 2'b00;

always @(posedge out_clk or posedge in_flag)
begin
if(in_flag)            dff_a <= 1'b1;
else                dff_a <= 1'b0;
end

always @(posedge out_clk)
begin
shift_rg <= {shift_rg[0], dff_a};
end

assign ena_out_flag = ~shift_rg[1] && shift_rg[0];

endmodule

Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 10 2011, 18:54
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(sazh @ Apr 10 2011, 22:07) *
Код
if(in_flag)            dff_a <= 1'b1;
else                dff_a <= 1'b0;
end


В Верилоге нельзя написать проще?

Код
dff_a <= in_flag;


Кстати, не стоит бездумно доверять даже Т-Ш.
Его схема расширения импульсов с двумя триггерами хороша, но первый триггер тем не менее может порождать переход dff_a с нарушением сетапа выходного триггера, соответственно второй триггер может попасть в метастабильность, о чем Т-Ш забыли упомянуть. Соответственно, чтобы избежать риска метастабильности ena_out_flag, вам нужно добавить в сдвиговый регистр на вход еще один триггер, реализовав нормальный синхронизатор.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
sazh
сообщение Apr 10 2011, 19:17
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(Oldring @ Apr 10 2011, 21:54) *
Код
dff_a <= in_flag;


always @(posedge out_clk or posedge in_flag)


Это описание d триггера с асинхронной установкой в единицу.
Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 10 2011, 19:28
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(sazh @ Apr 10 2011, 23:17) *
always @(posedge out_clk or posedge in_flag)


Это описание d триггера с асинхронной установкой в единицу.


Я понял. И что, это описание приводит к необходимости писать if?


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
sazh
сообщение Apr 10 2011, 19:41
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(Oldring @ Apr 10 2011, 22:28) *
Я понял. И что, это описание приводит к необходимости писать if?


Да, в верилоге есть некая неистественность при описании асинхронной установки.
Но VHDL еще более неистественнен
process (C, CLR)
begin
if (CLR = ’1’)then
Q <= ’0’;
elsif (C’event and C=’0’)then
Q <= D;
end if;

Тот же if при описании асинхронной установки.
И еще круче if при описании фронта клока, да еще с закрытием end if
Фронт клока - это фронт клока, а не приоритетность в описании
Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 10 2011, 19:47
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(sazh @ Apr 10 2011, 23:41) *
Да, в верилоге есть некая неистественность при описании асинхронной установки.
Но VHDL еще более неистественнен
process (C, CLR)
begin
if (CLR = ’1’)then
Q <= ’0’;
elsif (C’event and C=’0’)then
Q <= D;
end if;

Тот же if при описании асинхронной установки.
И еще круче if при описании фронта клока, да еще с закрытием end if
Фронт клока - это фронт клока, а не приоритетность в описании


Еще раз спрощу. в вашем коде if просто копирует один сигнал в другой. Неужели он необходим чтобы синтезатор синтезировал триггер с асинхронным сбросом?

в VHDL есть стандартные функции rising_edge, falling_edge, для приведения описания к "более естественному" if falling_edge( C ) then ... end if;
Необходимость писать end if - это хорошо.

Вы не упустили моё дополнение про ошибку в вашем коде?


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
sazh
сообщение Apr 10 2011, 19:50
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(Oldring @ Apr 10 2011, 22:47) *
в вашем коде просто копирует один сигнал в другой.


Я реализовал схему из учебника. Эта схема отрабатывает импульс любой длительности в импульс длительностью нужного периода. Что и хотел иметь вопрошающий.
Все.
Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 10 2011, 20:01
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(sazh @ Apr 10 2011, 23:50) *
Я реализовал схему из учебника. Эта схема отрабатывает импульс любой длительности в импульс длительность нужного периода.
Все.


С риском метастабильности на выходе. Да, посмотрел еще раз в Т-Ш, и так как эта потенциально метастабильная схема растяжения импульса из двух триггеров описана у них в пункте "синхронизация импульсов" как усовершенствование обычного двухтриггерного синхронизатора, можно прийти к выводу, что Т-Ш не "забыли упомянуть про риск метастабильности", а на самом деле его не заметили.

В общем, еще раз повторю. Не стоит бездумно доверять учебникам.

Цитата(sazh @ Apr 10 2011, 23:57) *
Я подумал, что это наезд на верилог со стороны ярого сторонника VHDL.
А это он меня оказывается в ошибке уличил.
Смешно.


И в ошибке тоже уличил laughing.gif
А наезд был несерьезным. Понятно, что можно написать там и без if, и синтезатор наверняка поймет правильно.
Хотелось узнать причину использования вами такой конструкции.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
Ethereal
сообщение Apr 10 2011, 20:17
Сообщение #11


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

Группа: Свой
Сообщений: 114
Регистрация: 7-05-08
Из: РФ, Москва
Пользователь №: 37 354



Цитата(Oldring @ Apr 11 2011, 00:01) *
Понятно, что можно написать там и без if, и синтезатор наверняка поймет правильно.
Хотелось узнать причину использования вами такой конструкции.

Не поймет. Квартусовский, например, на такие конструкции ругается.

Прикрепленное изображение

Сообщение отредактировал Ethereal - Apr 10 2011, 20:23


--------------------
SystemVerilog - язык, заточенный Альтерой под свои кристаллы теми же приемами использования примитивов, что и AHDL. ©
Go to the top of the page
 
+Quote Post
ViKo
сообщение Apr 11 2011, 07:05
Сообщение #12


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

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



Цитата(Ethereal @ Apr 10 2011, 23:17) *
Не поймет. Квартусовский, например, на такие конструкции ругается.

А на такие (код от Oldring) - нет.
Кто из нас неправ?
Прикрепленное изображение

Надеюсь, честь Quartus'а спасена? sm.gif
Go to the top of the page
 
+Quote Post
Мур
сообщение Apr 11 2011, 09:55
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(ViKo @ Apr 11 2011, 11:05) *
..Кто из нас неправ?

Прямо буря в стакане воды!
Вот что требовалось ...по рис 8!
Код, предложенный мной в начале, описывает два выходных регистра. Первый триггер - делитель. Схема достаточно универсальна для любых частот...

Сообщение отредактировал Мур - Apr 11 2011, 09:56
Прикрепленные файлы
Прикрепленный файл  sch_imp.bmp ( 189.62 килобайт ) Кол-во скачиваний: 31
 
Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 11 2011, 10:04
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Мур @ Apr 11 2011, 13:55) *
Схема достаточно универсальна для любых частот...


Для любых связанных частот без асинхронщины между ними.
Мне toggle тоже больше нравится, но обсуждалась в стакане воды именно схема из Т-Ш, растягивающая и синхронизирующая асинхронные импульсы произвольной длины, то есть без входного клока.

Цитата(sazh @ Apr 11 2011, 13:58) *
Я бы сказал, золотая середина. Ведь на выходе - качественный продукт, понятный каждому.


До тех пор, пока указанные вами условия не начинают вступать в противоречие друг с другом, вы, безусловно, правы. Поэтому схематики более понятны для "золотой середины", чем любой HDL.

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


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
Мур
сообщение Apr 11 2011, 10:15
Сообщение #15


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(Oldring @ Apr 11 2011, 14:04) *
Для любых связанных частот без асинхронщины между ними.
Мне toggle тоже больше нравится, но обсуждалась в стакане воды именно схема из Т-Ш, растягивающая и синхронизирующая асинхронные импульсы произвольной длины, то есть без входного клока.

До тех пор, пока указанные вами условия не начинают вступать в противоречие друг с другом, вы, безусловно, правы. Поэтому схематики более понятны для "золотой середины", чем любой HDL.

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

И асинхронных тоже!(его основная функция по статье применяется для переходов между доменами и синхронизациями).
На HDL три триггера описываются легко.
Я в своих проектах разделяю эту схему на два фрагмента. Один я уже привёл(выходной), а второй, в большинстве своём, прячется в моих автоматах. События у меня- просто смена состоояния на противоположный!
Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 11 2011, 10:17
Сообщение #16


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Мур @ Apr 11 2011, 14:15) *
И асинхронных тоже!(его основная функция по статье применяется для переходов между доменами и синхронизациями).


Для асинхронных клоков ваша схема подвержена риску сбоев из-за метастабильности второго триггера.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
Мур
сообщение Apr 11 2011, 10:26
Сообщение #17


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(Oldring @ Apr 11 2011, 14:17) *
Для асинхронных клоков ваша схема подвержена риску сбоев из-за метастабильности второго триггера.

В наших силах держать эту пару рядом друг с другом biggrin.gif , чтобы уйти от проблемы метастабильности.

Мне важен факт события, а не момент...

Сообщение отредактировал Мур - Apr 11 2011, 10:29
Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 11 2011, 10:32
Сообщение #18


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Мур @ Apr 11 2011, 14:26) *
В наших силах держать эту пару рядом друг с другом biggrin.gif , чтобы уйти от проблемы метастабильности.


Эта метастабильность выходит через логику на выход этой схемы.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
Мур
сообщение Apr 11 2011, 10:36
Сообщение #19


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(Oldring @ Apr 11 2011, 14:32) *
Эта метастабильность выходит через логику на выход этой схемы.

Может я чего не понимаю... Можете сформулировать вариант, когда на один входной импульс на выходе не появиться отклик вообще , или их вдруг появится пара?

Сообщение отредактировал Мур - Apr 11 2011, 10:37
Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 11 2011, 10:41
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Мур @ Apr 11 2011, 14:36) *
Может я чего не понимаю... Можете сформулировать вариант, когда на один входной импульс на выходе не появиться отклик вообще , или их вдруг появится пара?



А вы не видите сами условие, когда на выходе вашей схемы появится метастабильность, которая может привести к неправильной работе логики в последующих схемах, если не хватит времени на её разрешение? А времени там может не хватить, потому что неизвестно сколько логики подключено к вашей схеме, и каковы задержки в самой этой подключенной логике. Да, можно в принципе попытаться обконстрейнить время распространения сигнала с выхода, если очень хочется, с огромной вероятностью не вписаться в тайминги вблизи максимальной частоты кристалла.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
sazh
сообщение Apr 11 2011, 10:55
Сообщение #21


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(Oldring @ Apr 11 2011, 13:41) *
может привести к неправильной работе логики в последующих схемах


Если метастабильность - неопределенное состояние на выходе триггера, то ведь конкретно для этой схемы
это состояние или будет отработано последующим триггером как переход из например 0 в 1 или нет.
Что на выходе будет давать формирование импульса или в одном такте или в последующем, что для флага не так уж и важно.
Важно что событие на входе будет отработано однозначно. Нет?
Go to the top of the page
 
+Quote Post
Мур
сообщение Apr 11 2011, 11:02
Сообщение #22


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(sazh @ Apr 11 2011, 14:55) *
Если метастабильность - неопределенное состояние на выходе триггера, то ведь конкретно для этой схемы
это состояние или будет отработано последующим триггером как переход из например 0 в 1 или нет.
Что на выходе будет давать формирование импульса или в одном такте или в последующем, что для флага не так уж и важно.
Важно что событие на входе будет отработано однозначно. Нет?

Вот и я о том!
Страшно, когда на один входной импульс на выходе не появиться отклик вообще , или их вдруг появится пара! Вот это есть ошибка! Возможно тут такое?

Go to the top of the page
 
+Quote Post
ViKo
сообщение Apr 11 2011, 12:28
Сообщение #23


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

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



Цитата(Мур @ Apr 11 2011, 14:02) *
Страшно, когда на один входной импульс на выходе не появиться отклик вообще , или их вдруг появится пара! Вот это есть ошибка! Возможно тут такое?

Про эту картинку речь идет? Пусть висит.
Если на входе Data будет импульс в 3 такта Clock1, на Output появится 2 импульса длительностью Clock2. И без всякой метастабильности.
В метастабильном состоянии триггер может висеть "между небом и землей" сколь угодно долго, в идеальном случае. До следующего такта. А если в следующем такте вход неопределен, то все продолжится.
Если вдруг почему-то Clock1 отстанет от Data, доберется до "желтого" триггера чуть позже, триггер влетит в метастабильное состояние.
Это я не к тому, что схема плохая или неправильная, а к тому, что идеального в мире ничего нет. Нужно смотреть внимательно.
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Мур
сообщение Apr 11 2011, 16:22
Сообщение #24


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(ViKo @ Apr 11 2011, 16:28) *
Про эту картинку речь идет? Пусть висит.
Если на входе Data будет импульс в 3 такта Clock1, на Output появится 2 импульса длительностью Clock2. И без всякой метастабильности.
В метастабильном состоянии триггер может висеть "между небом и землей" сколь угодно долго, в идеальном случае.

Спасибо за науку! Для меня это новость. Серый уровень на выходе триггера возможен оказывается...

тогда схема ошибочна............ wacko.gif А я поверил авторитету.

Цитата(Oldring @ Apr 11 2011, 17:38) *
Мур совсем недавно опубликовал схему от себя. В общем, журнальная схема Иосифа - правильная, схема Мур потенциально ошибочна.


Это из-за дополнительного триггера на выходе?
Go to the top of the page
 
+Quote Post
ViKo
сообщение Apr 11 2011, 18:30
Сообщение #25


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

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



Цитата(Мур @ Apr 11 2011, 19:22) *
Серый уровень на выходе триггера возможен оказывается...

Да, возможен. И именно в триггере. В обычной логике такое невозможно. В момент фронта тактового сигнала, если изменяется сигнал на входе данных, триггер "не знает", что ему защелкивать. И думает до-о-о-о-о-о-лго... если сигнал на входе попадает точно на порог переключения. Если не точно, то думает недо-о-олго...
Go to the top of the page
 
+Quote Post
Мур
сообщение Apr 12 2011, 05:47
Сообщение #26


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(ViKo @ Apr 11 2011, 22:30) *
Да, возможен. И именно в триггере. В обычной логике такое невозможно. В момент фронта тактового сигнала, если изменяется сигнал на входе данных, триггер "не знает", что ему защелкивать. И думает до-о-о-о-о-о-лго... если сигнал на входе попадает точно на порог переключения. Если не точно, то думает недо-о-олго...

ОК! Я считал, что проблема для триггера на входе, а не на выходе. В моём представлении триггер не может быть в сером уровне по определению.

Тогда в =моём случае= действительно возможна ситуация отсутствия или удвоенного импульса на выходе. Всё будет зависеть от трактовки серости либо элементом искл-или либо выходным триггером. А дополнительный триггер по Oldring-у, если так случится при асинхронщине, может пребывать в неопределённом состоянии серости(а не чёрно-белом!) до следующего такта.
Вот почему я его =за ненабностью= удалил!....(по сравнению с рис.8)-считал лишним. А он по грехам работает!
Всем огромное спасибо! Усвоил качественно! tort.gif

Сообщение отредактировал Мур - Apr 12 2011, 05:55
Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 12 2011, 05:56
Сообщение #27


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Мур @ Apr 12 2011, 09:47) *
А дополнительный триггер по Oldring-у, если так случится при асинхронщине, может пребывать в неопределённом состоянии серости(а не чёрно-белом!) до следующего такта.


Нет, не до следующего.
Выход из метастабильного состояния - это вероятностный процесс. Вероятность остаться в метастабильном состоянии понижается экспоненциально с увеличением премени. Поэтому достаточно несколько десятков постоянных времени выхода из метастабильности, чтобы эта вероятность стала практически нулевой. Но тонкость в том, что если после метастабильного триггера подключен на небольшом расстоянии следующий триггер, то разница между периодом клока и временем распространения сигнала превышает эти несколько постоянных времени, по крайней мере, для триггеров в FPGA. А если там еще несколько слоёв логики, то эти разница может оказаться близка а нулю, и хоть и первый триггер вывалится из метастабильного состояния к следующему фронту клока, сигнал на входах следующих триггеров, после этих слоёв логики, еще останется нелогическим или, скорее, нестабильным, с заметно отличной от нуля вероятностью.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
Мур
сообщение Apr 12 2011, 06:12
Сообщение #28


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(Oldring @ Apr 12 2011, 09:56) *
Нет, не до следующего.
Выход из метастабильного состояния - это вероятностный процесс. Вероятность остаться в метастабильном состоянии понижается экспоненциально с увеличением премени. Поэтому достаточно несколько десятков постоянных времени выхода из метастабильности, чтобы эта вероятность стала практически нулевой. Но тонкость в том, что если после метастабильного триггера подключен на небольшом расстоянии следующий триггер, то разница между периодом клока и временем распространения сигнала превышает эти несколько постоянных времени, по крайней мере, для триггеров в FPGA. А если там еще несколько слоёв логики, то эти разница может оказаться близка а нулю, и хоть и первый триггер вывалится из метастабильного состояния к следующему фронту клока, сигнал на входах следующих триггеров, после этих слоёв логики, еще останется нелогическим или, скорее, нестабильным, с заметно отличной от нуля вероятностью.

Интересно! И что, долбёжка по входу, при серости на выходе, не решает неопределённости?
...Базовый синхронизатор(в синем цвете)- это пара триггеров. По первому мы определились! А второй, получается, нужен для вероятностного вываливания первого из неопределённости?

Призрак триггера Шмидта стоит передо мной! rolleyes.gif
Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 12 2011, 06:27
Сообщение #29


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Мур @ Apr 12 2011, 10:12) *
Интересно! И что, долбёжка по входу, при серости на выходе, не решает неопределённости?
...Базовый синхронизатор(в синем цвете)- это пара триггеров. По первому мы определились! А второй, получается, нужен для вероятностного вываливания первого из неопределённости?

Призрак триггера Шмидта стоит передо мной! rolleyes.gif


Нет, долбежка по входу не поможет - это же триггеры, они переключаются по фронту клока.
Второй нужен только для того, чтобы оттянуть логику с выхода первого, дав ему времени на размышления о смысле его бытия. Поэтому, кстати, без отключения ретайминга через него, он бесполезен.
Триггер Шмидта тут ничем помочь не может. Метастабильность принципиально неизбежна при перехода асинхронного сигнала в синхронный домен.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
Мур
сообщение Apr 12 2011, 06:59
Сообщение #30


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(Oldring @ Apr 12 2011, 10:27) *
Нет, долбежка по входу не поможет - это же триггеры, они переключаются по фронту клока.

Я и имел ввиду фронт клока! Понятие =неопределённо долго= я утрировал на события нескольких фронтов клока...
Цитата(Oldring @ Apr 12 2011, 10:27) *
Второй нужен только для того, чтобы оттянуть логику с выхода первого, дав ему времени на размышления о смысле его бытия. Поэтому, кстати, без отключения ретайминга через него, он бесполезен.
Триггер Шмидта тут ничем помочь не может. Метастабильность принципиально неизбежна при перехода асинхронного сигнала в синхронный домен.

А гистерезис? Уж он-то должен решать неопределённость выхода. Положительная обратная связь всё-таки!...

Цитата(Мур @ Apr 12 2011, 10:12) *
А второй, получается, нужен для вероятностного вываливания первого из неопределённости?

Можно считать второй триггер триггером Шмидта? Образно!
1.За ним последнее слово в оценке(в наихудшем истечении событий) состояния первого триггера.

2.Второй вариант- к следующему фронту клока первый триггер уже будет в норме гарантировано. И это повторит второй! Это черезвычайно важно для одноклоковых сигналов разрешения в синхронных проектах. Там всё строго и вариации длительности недопустимы

Сообщение отредактировал Мур - Apr 12 2011, 07:20
Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 12 2011, 07:03
Сообщение #31


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Мур @ Apr 12 2011, 10:59) *
А гистерезис? Уж он-то должен решать неопределённость выхода. Положительная обратная связь всё-таки!...


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


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
Мур
сообщение Apr 12 2011, 07:15
Сообщение #32


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(Oldring @ Apr 12 2011, 10:03) *
Нет. Метастабильность и есть неустойчивое равновесие при наличии положительной обратной связи. Гистерезис тоже бесполезен, так как тут важно поведение линеаризованной системы вблизи точки неустойчивого равновесия при малом сигнале.

Прошу не раздражаться на мои импровизации. Я это делаю умышленно, чтобы была полная ясность не только для меня, сомневающегося...

Т.е. если провести аналогию с перевёрнутым маятником. Метастабильность порождается ситуацией попадания маятника в вертикальное положение, откуда он может свалиться в любую сторону и в случайный момент времени. Приход следующего фронта ускорит развязку, а может быть и раньше.... и без него... smile3046.gif
Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 12 2011, 09:22
Сообщение #33


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Мур @ Apr 12 2011, 11:15) *
Т.е. если провести аналогию с перевёрнутым маятником. Метастабильность порождается ситуацией попадания маятника в вертикальное положение, откуда он может свалиться в любую сторону и в случайный момент времени. Приход следующего фронта ускорит развязку, а может быть и раньше.... и без него... smile3046.gif


Почти.

У механического маятника бывает трение покоя, приводящее к появлению на самом верху глобального максимума энергии небольшого локального минимума, приводящего к появлению там немного устойчивого состояния. Поэтому механический маятник может в принципе там находиться бесконечно долго, тем более, если его ось со временем заржавеет. В случае электронных триггеров всё обычно проще.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
Мур
сообщение Apr 12 2011, 09:39
Сообщение #34


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(Oldring @ Apr 12 2011, 12:22) *
Почти....У механического маятника бывает трение покоя, приводящее к появлению на самом верху глобального максимума энергии небольшого локального минимума, приводящего к появлению там немного устойчивого состояния. Поэтому механический маятник может в принципе там находиться бесконечно долго, тем более, если его ось со временем заржавеет. В случае электронных триггеров всё обычно проще.

Спасибо! Мне понравилось -> =появления там немного устойчивого состояния=
В электронных триггерах =ось не ржавеет=, и активная зона, вроде массы механического маятника, способна балансировать случайным образом, пока какой-либо фактор не преобладает.
...Помнится, в таком сотоянии возрастает потребление элементов(нет отсечки или насыщения). Это я к тому, что за метастабильные состояния наказывают повышением потребления. Хоть и не значительным. В былые времена дефектные триггеры выгорали от сквозного тока...

Сообщение отредактировал Мур - Apr 12 2011, 10:09
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- AlphaMil   Синхронизатор   Apr 7 2011, 13:19
- - Мур   Цитата(AlphaMil @ Apr 7 2011, 17:19) Гуру...   Apr 7 2011, 13:33
|- - Мур   Цитата(Мур @ Apr 7 2011, 16:33) CODE libr...   Apr 12 2011, 07:44
- - Kuzmi4   2 AlphaMil поищите по форуму - тут SM выкладывал к...   Apr 7 2011, 14:25
|- - Мур   Цитата(Kuzmi4 @ Apr 7 2011, 18:25) 2 Alph...   Apr 7 2011, 16:25
- - AndrewS6   http://www.fpga4fun.com/CrossClockDomain2.html   Apr 7 2011, 14:35
- - AlphaMil   2 AndrewS6 и всем остальным спасибо очень интересн...   Apr 7 2011, 14:41
- - Kuzmi4   2 Мур Если взглянуть внимательнее ваш HDL модуль в...   Apr 7 2011, 17:02
|- - Мур   Цитата(Kuzmi4 @ Apr 7 2011, 21:02) 2 Мур ...   Apr 7 2011, 17:36
- - Kuzmi4   2 Мур посмотрел статейку и рисунок - слямзено с ED...   Apr 9 2011, 10:44
|- - Ethereal   Цитата(Kuzmi4 @ Apr 9 2011, 14:44) 2 Мур ...   Apr 9 2011, 11:23
|- - Kuzmi4   Цитата(Ethereal @ Apr 9 2011, 14:23) .......   Apr 9 2011, 11:32
|- - Ethereal   Цитата(Kuzmi4 @ Apr 9 2011, 15:32) Вот во...   Apr 9 2011, 11:39
- - Kuzmi4   2 Ethereal я собственно это к чему, случался дизай...   Apr 9 2011, 11:50
|- - Ethereal   Цитата(Kuzmi4 @ Apr 9 2011, 15:50) 2 Ethe...   Apr 9 2011, 12:44
|- - sazh   Цитата(Kuzmi4 @ Apr 9 2011, 14:50) В таки...   Apr 9 2011, 13:13
- - Boris_TS   Тут как-то совсем не прозвучало в исходном задании...   Apr 10 2011, 11:46
|- - Boris_TS   Цитата(AlphaMil @ Apr 10 2011, 20:17) Да,...   Apr 10 2011, 17:28
||- - Boris_TS   Цитата(Boris_TS @ Apr 10 2011, 21:28) Цит...   Apr 12 2011, 17:18
||- - sazh   Цитата(Oldring @ Apr 10 2011, 22:58) С ри...   Apr 10 2011, 20:02
|||- - Oldring   Цитата(sazh @ Apr 11 2011, 00:02) Да твор...   Apr 10 2011, 20:08
|||- - sazh   Цитата(Oldring @ Apr 10 2011, 23:08) Я уж...   Apr 10 2011, 20:16
||- - Oldring   Цитата(Ethereal @ Apr 11 2011, 00:17) Не ...   Apr 10 2011, 20:21
|||- - sazh   Цитата(Oldring @ Apr 10 2011, 23:21) Знач...   Apr 10 2011, 20:25
|||- - Oldring   Цитата(sazh @ Apr 11 2011, 00:25) Приведи...   Apr 10 2011, 20:49
|||- - sazh   Цитата(Oldring @ Apr 10 2011, 23:49) Вот ...   Apr 11 2011, 08:43
|||- - ViKo   Цитата(sazh @ Apr 11 2011, 11:43) Чтобы п...   Apr 11 2011, 08:47
|||- - sazh   Цитата(ViKo @ Apr 11 2011, 11:47) Вот и я...   Apr 11 2011, 08:47
|||- - Oldring   Цитата(sazh @ Apr 11 2011, 12:47) Картинк...   Apr 11 2011, 09:06
|||- - sazh   Цитата(Oldring @ Apr 11 2011, 12:06) Да, ...   Apr 11 2011, 09:58
||- - Ethereal   Цитата(ViKo @ Apr 11 2011, 11:05) А на та...   Apr 11 2011, 07:53
|||- - ViKo   Цитата(Ethereal @ Apr 11 2011, 10:53) Как...   Apr 11 2011, 08:51
|||- - sazh   Цитата(ViKo @ Apr 11 2011, 11:51) Создал ...   Apr 11 2011, 09:54
|||- - Мур   Цитата(Oldring @ Apr 11 2011, 14:41) А вы...   Apr 11 2011, 10:53
||||- - Oldring   Цитата(ViKo @ Apr 11 2011, 16:28) В метас...   Apr 11 2011, 12:54
|||||- - ViKo   Цитата(Oldring @ Apr 11 2011, 15:54) Веро...   Apr 11 2011, 13:27
|||||- - Oldring   Цитата(ViKo @ Apr 11 2011, 17:27) Это рис...   Apr 11 2011, 13:38
||||- - Oldring   Цитата(Мур @ Apr 11 2011, 20:22) Это из-з...   Apr 11 2011, 16:27
|||||- - Мур   Цитата(Oldring @ Apr 11 2011, 20:27) Из-з...   Apr 11 2011, 17:15
|||||- - Oldring   Цитата(Мур @ Apr 11 2011, 21:15) Я понял...   Apr 11 2011, 17:44
|||- - Oldring   Цитата(sazh @ Apr 11 2011, 14:55) Если ме...   Apr 11 2011, 11:02
||- - Ethereal   Цитата(Мур @ Apr 11 2011, 14:36) Может я ...   Apr 11 2011, 10:44
|- - Victor®   Цитата(sazh @ Apr 10 2011, 22:41) Да, в в...   Apr 10 2011, 19:51
|- - sazh   Цитата(Victor® @ Apr 10 2011, 22:51) Все ...   Apr 10 2011, 19:57
- - ViKo   Долбежка тактами поможет. Ведь защелкиваться будет...   Apr 12 2011, 07:35
|- - Oldring   Цитата(ViKo @ Apr 12 2011, 11:35) Долбежк...   Apr 12 2011, 08:08
- - ViKo   Хочу вернуться к рис.8 (см. сообщение №58). Возник...   Apr 18 2011, 13:07
|- - Ethereal   Цитата(ViKo @ Apr 18 2011, 17:07) Что дел...   Apr 18 2011, 14:25
|- - ViKo   Цитата(Ethereal @ Apr 18 2011, 17:25) А е...   Apr 18 2011, 14:42
- - ViKo   Присмотрелся внимательнее к рисунку. Да, есть в не...   Apr 19 2011, 14:18


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

 


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


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