ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
21 декабря
1445565 Топик полностью
BigRed (28.06.2024 12:35, просмотров: 119) ответил Mty1 на Интересно, а можно так же как параметр длины импульса parameter PULSE_WIDTH передавать параметр "ширины" регистра reg [4:0] или еще круче - из PULSE_WIDTH получить размерность регистра?
Примерно так можно 
`define CLOG2(x) \
   (x <= 2) ? 1 : \
   (x <= 4) ? 2 : \
   (x <= 8) ? 3 : \
   (x <= 16) ? 4 : \
   (x <= 32) ? 5 : \
   (x <= 64) ? 6 : \
   ..
   (x <= 4294967296) ? 32 : \
   -1

parameter MAX_VALUE = 42;
parameter WIDTH = `CLOG2(FOO_MAX_VALUE);