Родился в 1946 году в деревне Шуткино Каргапольского района Курганской области. В 1965—1968 проходил службу в армии.
В 1972 окончил Свердловский юридический институт. 1972—1976 работал в Первоуральском городском народном суде. В 1976—1989 — судья, затем заместитель председателя Свердловского областного суда. В 1989—1999 — член Верховного Суда России.
С 18 мая 1999 — судья Конституционного Суда Российской Федерации.
Заслуженный юрист Российской Федерации (1998). Доктор юридических наук, профессор. 27 октября 2011 года награждён Орденом Почёта.