Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс. e-mail:jobsmp@pochta.ru |
reg [7:0] counter;
reg comparator;always @(posedge clock)
comparator <= (counter == mod);always @(posedge clock)
if (comparator)
counter <= 7'h00;
else
counter <= counter + 1'b1;
Только вот за счет небольшой конвейеризации счетчик будет сбрасываться на такт позже, чем в нем будет достигнуто нужное значение.
Можно пойти еще дальше - зная что у циклона LE содержат 4-х входовый LUT, и, следовательно, на одном LE можно организовать сравнение двух двухбитных чисел, сделать конвейер из двух этапов. Первый регистр четырехбитный защелкивает результат сравнения 4 пар бит результата и модуля, следующий этап конвейера защелкивает операцию "И" от четырех тех выходов. Но это лишее, так как тайминг-анализ показывает, что достатоно одного уровня конвейера для достижения максимальной частоты.