北宋单州成武(今属山东)人,字醇之。大中祥符进士。明道间,累迁殿中侍御史,建议博采公论,用人勿悉出执政。西夏攻宋,数任边帅。知延州(今陕西延安)时,筑城修砦,募民耕种,积蓄军粮,严肃军令。宋夏媾和后,被召还任枢密副使,历参知政事、枢密使用,并官属、裁冗兵、节开支。皇右三年(1051)为相,为主专任狄青击侬智高。五年,以受贿嫌罢相。