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

 
 
4 страниц V  « < 2 3 4  
Reply to this topicStart new topic
> CPLD Clock, вопросы по разработке
skkap
сообщение Nov 15 2009, 17:52
Сообщение #46


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 29-10-09
Из: Томск
Пользователь №: 53 297



Цитата(Victor® @ Nov 15 2009, 22:46) *
Имеем тактовую частоту 1 Hz - clk_1hz, подаем ее на счетчик секунд (sec_cnt по модулю 60).
Формируем сигнал munute_ena, равный "1" при значении счетчика 59.
Этот сигнал подаем на вход разрешения счета следующего счетчика (minute_cnt, также по модулю 60).
Тактируется minute_cnt также сигналом clk_1hz.

Делаем сигнал разрешения hour_ena аналогичный minute_ena и подаем его на последний счетчик (hour_cnt - по модулю 24),
который тактируется clk_1hz
Получаем полностью синхронный проект.

Он тактируется "gated clock", как и остальные части в проекте.
Кстати, а индикацию сделали-бы динамическую - сэкономили-бы на пинах (11 против 28)

Очень понятно пояснили, спасибо!
Значит триггер тактируется Gated Clock, если его тактовый вход подключен к пину, отличному от одного из глобальных тактовых сигналов, верно? Значит необходимо каждый блок, содержащий триггеры тактировать исходным тактовым сигналом.

Остались непонятны две вещи:
1. Зачем оно надо вообще? Чем плохо gated clock?
2. Как описанная вами ситуация будет работать? Вот рисунок:

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


Ведь схема счета секунд дает задержку, из-за которой я так понимаю не сработает счет минут? что я не так понял? : /
Go to the top of the page
 
+Quote Post
sazh
сообщение Nov 15 2009, 19:37
Сообщение #47


Гуру
******

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



Цитата(skkap @ Nov 15 2009, 20:52) *
Ведь схема счета секунд дает задержку, из-за которой я так понимаю не сработает счет минут? что я не так понял? : /


У Вас длительность сформированного импульса en нарисована меньше периода рабочего клока. (Сигнал сформированный по глобальному клоку всегда подхватится следующим клоком).
Что касается последующих сформированных сигналов EN, вроде бы их по коньюнкции надо объединять (En_sek && en_minut)
По идее Вашу первоначальную схему можно заставить работать, почитав что такое констрейны.
Одноклоковая синхронизация -самое простое, да и в дальнейшем такой проект легко параметризовать (Меняя например частоту генератора, изменить схемную реализацию одним параметром)
Go to the top of the page
 
+Quote Post
Victor®
сообщение Nov 15 2009, 19:49
Сообщение #48


Lazy
******

Группа: Свой
Сообщений: 2 070
Регистрация: 21-06-04
Из: Ukraine
Пользователь №: 76



Цитата(skkap @ Nov 15 2009, 20:52) *
Очень понятно пояснили, спасибо!
Значит триггер тактируется Gated Clock, если его тактовый вход подключен к пину, отличному от одного из глобальных тактовых сигналов, верно? Значит необходимо каждый блок, содержащий триггеры тактировать исходным тактовым сигналом.

Остались непонятны две вещи:
1. Зачем оно надо вообще? Чем плохо gated clock?
2. Как описанная вами ситуация будет работать? Вот рисунок:

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


Ведь схема счета секунд дает задержку, из-за которой я так понимаю не сработает счет минут? что я не так понял? : /


1) Примите за аксиому, что в CPLD/FPGA все проекты должны быть синхронны (хотя в реале бывают случаи с множеством клоков и надо организовывать перенос данных
между клок-доменами, но это предмет другого разговора.) Ну, а вообще поищите в инете статьи по этому поводу...
Вкратце - вот Ваш случай:
http://www.xilinx.com/itp/xilinx7/books/da.../dev0017_5.html

2) Неправильно нарисовали min_en :-) Его длительность будет равна 1 сек., а Вы нарисовали пол-периода.

P.S.
Кстати, SAZH про конъюнкцию правильно сказал. Думаю - поймете почему ;-)

-- Успехов


--------------------
"Everything should be made as simple as possible, but not simpler." - Albert Einstein
Go to the top of the page
 
+Quote Post
SM
сообщение Nov 15 2009, 20:07
Сообщение #49


Гуру
******

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



Цитата(skkap @ Nov 15 2009, 20:52) *
Значит триггер тактируется Gated Clock, если его тактовый вход подключен к пину, отличному от одного из глобальных тактовых сигналов, верно?

Да. Gated clock это тактовый сигнал, пропущенный через логический элемент, и используемый далее для тактирования. Для ПЛИС это не самое лучшее решение, если используется обратная связь из домена, тактируемого gated clock, в домен, тактируемый любым другим клоком. Ежели обратных связей нет (и зависимостей реакции внешних устройств от синхронности вывода данных на выходы из разных доменов), то не важно, чем что тактируется.

Цитата(skkap @ Nov 15 2009, 20:52) *
Значит необходимо каждый блок, содержащий триггеры тактировать исходным тактовым сигналом.
...
1. Зачем оно надо вообще? Чем плохо gated clock?

С точки зрения ПЛИС плох тем, что для достижения синхронности при использовании нескольких разных путей тактовых сигналов приодится жертвовать ресурсами. В основном для обеспечения выдерживания hold time (времени удержания). Опять же, если есть обратные связи... ну и т.д., см. выше.
Go to the top of the page
 
+Quote Post
dvladim
сообщение Nov 15 2009, 20:30
Сообщение #50


Знающий
****

Группа: Свой
Сообщений: 654
Регистрация: 24-01-07
Из: Воронеж
Пользователь №: 24 737



Цитата(SM @ Nov 16 2009, 00:07) *
Для ПЛИС это не самое лучшее решение, если используется обратная связь из домена, тактируемого gated clock,
...
В основном для обеспечения выдерживания hold time (времени удержания). Опять же, если есть обратные связи... ну и т.д., см. выше.

Проблемы по hold могут быть и если не используется обратная связь.
Go to the top of the page
 
+Quote Post

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

 


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


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