Mastar24 пишет: На счёт ... "Если мозг робота работает на частоте 100Мгц, ...", ... в "рабочем поле" не одна ... Altera, девять (100Мгц в степени 9)... "фрактальный вычислитель" ... плюс ... обвязка из Alter, плюс самопрограммирование, плюс ... три ... старших ... тоже фрактал ..., плюс Windows, плюс Интернет, плюс Человек ... и т.д. ... до "актуальной бесконечности" ...
Очень печально, что такая простая задача вызвала такой поток сознания. Ответ здесь:
1. Счётчик 64 бита, следовательно максиальное число, котооре он может представить равно 18 446 744 073 709 551 616.
2. Тактовая частота 100 Мгц оззначает что каждую секунду счётчик увеличится на 100 000 000.
3. Делим первое число на второе и узнаём через сколько секкнд переполнится счётчик - оно равно 184 467 440 737 секунд и несолько миллисекунд, которые мы проигнорируем.
4. Делим полученное число на 60 секунд, на 60 минут, на 24 часа и получаем количество дней, через которое переполнится счётчик. Счётчик переполнится через 2 135 039,82 дней.
5. Делим полученное число на число дней в астронномическом году ( 365,25 дней ) и получаем количество лет после старта, через которое переполнится 64-х битный счётчик. Счётчик 64-х битный счётчик переполнится через 5 845,42 лет.
Какие проблемы может вызвать переполнение счётчика? Алгоритмы, которые считали временные интервалы как разность показаний счётчика тактов, при переполнении этого счётчика вызовут сбой, который может привести к любым, в т.ч. катастрофическим последствиям.
Можно ли, по аналогии с проблемой 2000 года, назвать проблему переполнения счётчика по имени года? Нет, потому что дата переполнения зависит от даты старта счётчика.
Собственно, вот где-то такой ответ хотелось услышать. Ведь вопрос был элементарным.
Mastar24 пишет: Но это ... будущее, которое мы с Вами можем ... приблизить ... интересует ШИМ
module pulsewidth_modulator(
input wire i_clock,
input wire i_reset,
input wire i_strobe,
input wire [7:0] i_data,
output reg o_ack,
output reg o_device_contro l_data );
Поведение такое - после сброса нв выходе ШИМ сигнал эквивалентный нулю.
В случае передачи другого значения, необходимо установить новое значение на вход i_data и одновременно установить сигнал i_strobe.
Активный сигнал на выходе o_ack означает что значение, переданное со стробом, принято устройством.
При неактивном сигнале строба, на выходе устройства генерируется ШИМ сигнал, установленный ранее.
В принципе, это нечто чернового описания интефейса ШИМ-модулятора. Возможно оно спорное, возможно в нём ошибки, но это как бы база, от которой можно отталкиваться.
Простите, но я поддерживаю мнение пользователя RedGate относительно целесообразности флейма в разделе "Проекты пользователей".