PoC.io.TimingCounter
This down-counter can be configured with a TIMING_TABLE (a ROM), from which
the initial counter value is loaded. The table index can be selected by
Slot. Timeout is a registered output. Up to 16 values fit into one ROM
consisting of log2ceilnz(imax(TIMING_TABLE)) + 1 6-input LUTs.
Entity Declaration:
1 port (
2 Clock : in std_logic; -- clock
3 Enable : in std_logic; -- enable counter
4 Load : in std_logic; -- load Timing Value from TIMING_TABLE selected by slot
5 Slot : in natural range 0 to (TIMING_TABLE'length - 1); --
6 Timeout : out std_logic -- timing reached
7 );
8end entity;
9
10
11architecture rtl of io_TimingCounter is
12 function transform(vec : T_NATVEC) return T_INTVEC is