adding 16 bit wide i/o optimization