A fault-tolerant routing method that can tolerate solid faults using only two virtual channels is presented. The proposed routing algorithm, called FT-Ecube, not only uses a fewer number of virtual channels but also tolerates f-chains in the meshes. Furthermore, the proposed scheme misroutes messages both clockwise and counter clockwise directions to reduce channel contention on f-rings. It is shown that the proposed algorithm is deadlock-free and livelock-free in meshes when it has nonoverlapping multiple f-regions. Further, we conducted flit-level simulations to evaluate the performance of the proposed routing algorithm. As our simulation results show, FT-Ecube tolerates multiple faulty blocks using only two virtual channels per physical channel, and has good performance in terms of average latency.