The 27-year-old Welsh international, who has won five test caps and toured North America, Argentina and Australia with Wales, has previously played for Bath, the Ospreys and, more recently, Newport Gwent Dragons.
Speaking today, he said, “I am really looking forward to playing some Premiership rugby with Cardiff. It is obviously an exciting time at the club and I have heard a lot of good things about the coaching set-up with Phil Davies there, so I can’t wait to get started and back to full match fitness.”
Cardiff, who are unbeaten in six league and cup matches in the last two months, play Llandovery at the Arms Park on Saturday (kick-off 2.30pm).
Meanwhile, their home fixture against Aberavon next month has been moved to Friday 13 February (7pm) and they will play Cross Keys at Pandy Park on Tuesday 17 March.