add registers to meet timing
channel size independent pt 1: works as long as wordsize <= c_pci_data_width
channel size independent pt 2 : all combinations work!