Federer held two match points in the second set tiebreak but they both went begging as Berdych won a thrilling match 3-6 7-6 6-4 against the five-time champion.
It set up a final with Serbian No.1 Novak Djokovic, who beat Juan Martin del Potro of Argentina, 6-3 7-6 in the earlier last four clash.
It stretched Australian Open champion Djokovic's unbeaten run to 17 games and he will start warm favorite for Saturday's final, particularly after the exit of World No.2 Federer.
"Pity to lose that one, but Tomas did well to hang in there," said the Swiss maestro.

