cache flush support
add write data FIFO
add correctness test at the end
control debug verbosity