end process;
APL_FEE_SEND_IN <= cts_start_readout_rising;
- APL_FEE_READ_IN <= FEE_READ_IN or (APL_FEE_TYP_OUT /= TYPE_DAT);
+ APL_FEE_READ_IN <= '1' when FEE_READ_IN = '1' or (APL_FEE_TYP_OUT /= TYPE_DAT) else '0';
FEE_DATAREADY_OUT <= APL_FEE_DATAREADY_OUT when APL_FEE_TYP_OUT = TYPE_DAT else '0';
FEE_DATA_OUT <= APL_FEE_DATA_OUT;
else
if update_buffer_length = '1' then
buf_IPU_LENGTH_IN <= IPU_LENGTH_IN;
- elsif buf_IPU_READ = '1' and IPU_DATAREADY_IN = '1' then
+ elsif buf_IPU_READ = '1' and IPU_DATAREADY_IN = '1' and first_ipu_read = '0' then
buf_IPU_LENGTH_IN <= buf_IPU_LENGTH_IN - 1;
end if;
if update_buffer_error = '1' then