2 use ieee.std_logic_1164.
all;
3 use ieee.numeric_std.
all;
4 use ieee.math_real.
all;
6 package pwm_reg_pack
is
8 -------------------------------------------------------------------------
9 -- Data size definitions
10 -------------------------------------------------------------------------
11 constant SYS_CLK
: natural
:= 100_000
; -- System clock in kHz
12 constant PWM_CLK
: natural
:= 500; -- PWM clock in kHz
13 constant DUTY_CYCLE_W
: natural
:= 5; -- PWM resolution in bits
14 constant PERIOD
: natural
:= SYS_CLK
/ (PWM_CLK
* 2**DUTY_CYCLE_W
);
15 constant PERIOD_W
: natural
:= integer(ceil
(log2
(real(PERIOD
+1))));