Родился в семье лётчика. Окончил в 1962 году Московский государственный университет.
В 1965—1975 гг. — работник Секретариата ЦК, секретарь ЦК.
В октябре 1980 года стал членом ЦК КПСС и 1-м заместителем Председателя Совета Министров СССР Николая Тихонова.
В 1987—1991 годах — кандидат в члены Политбюро.
В августе 1986 года стал 1-м заместителем Генерального секретаря Молдавской ССР и занимал эту должность до 1990 года.
В апреле 1991 года баллотировался на выборах президента РСФСР как кандидат в вице-президенты. Занял 5 место со счетом 3,74 %.
В 1995—1999 годах депутат Государственной Думы 2-го созыва.
С 1993 года — член КПРФ.
Женат, имеет 2 детей.