add I2C testbench
fix bugs in i2c_controller