There are lots of ways to shift logic levels. But for versatility in a small footprint, it's hard to beat Fairchild's FXL2TD245 dual-supply bi-directional translator, with its configurability for both uni-directional and independent bi-directional voltage translation between two logic levels.
The chip permits translation between levels from 3.6 V down to 1.1 V (see the figure). A control pin sets the data flow direction, and each side's VCC pin sets the levels. The translator saves a few days of engineering time while squeezing a complete solution into a small package. In fact, the IC is 0.55 by 1.6 by 2.1 mm—much smaller than the usual SOICs. Yet the 10terminal MicroPak has more pad-contact area than other leadless packages.
It costs $0.85 in 1000-piece lots. Fairchild Semiconductor