北魏上党长子(今山西长治南)人。师事徐遵明。博涉百家,尤长算历。举孝廉,为校书郎。与张龙祥综九家历而修成《正光历》。孝庄帝时典仪注,为著作佐郎。东魏初掌制邺都地图。天平四年(537)与卢元明等使梁,与梁武帝论答经义。还任散骑常侍、国子祭酒、太原太守。作《甲子元历》、《九宫行蓁历》。后坐事死狱中。