Fifo_v_1_2 : updated - transmit and recieve algorithm added