High / low voltage Limits

I am interfacing an input IC with atmega328P

output of that IC is 2.9-3.1 (fluctuating).

Can anyone please tell, about voltage limits???

shall this IC's ouput work as HIGH for a digital pin??

yes

The Arduino pins will sense anything above 0.6 Vcc as HIGH, less than 0.3 Vcc as LOW, guaranteed. Anything
between those limits is not guaranteed. For a 5V Arduino that means 1.5V and below is needed for LOW, 3.0V or
above for HIGH. Any particular chip at a particular temperature will have its own specific threshold voltages
per pin somewhere in the middle, but if you want a circuit to always work, stick to these limits. 2.9V is not
guaranteed. its likely to work (or appear to work...), but you can't be certain. Reducing the Arduino's Vcc
to 4.8V would put things back in spec. Adding some component to lift the IC's output above 3.0V would be
a cleaner solution.