цифровой процессор

Классы МПК:G06F15/00 Цифровые компьютеры вообще; оборудование для обработки данных вообще
G06F9/00 Устройства для программного управления, например блоки управления
Патентообладатель(и):Финкель Моисей Зусманович (RU)
Приоритеты:
подача заявки:
2004-09-06
публикация патента:

Изобретение относится к цифровым процессорам, в частности к микропроцессорам с уменьшенным энергопотреблением. Технический результат заключается в снижении энергопотребления. Технический результат достигается за счет того, что в состав процессора введены регистры данных, память, арифметико-логическое устройство, шина данных, устройство управления, задатчик разрядности и коммутаторы. 2 ил. цифровой процессор, патент № 2290686

цифровой процессор, патент № 2290686 цифровой процессор, патент № 2290686

Формула изобретения

Цифровой процессор, содержащий арифметико-логическое устройство, регистры данных и память, включающие регистры, выполненные на МОП- и(или) КМОП-триггерах, шину данных, а также устройство управления, выход которого соединен со входом управляющих сигналов арифметико-логического устройства, а вход - с выходом памяти, отличающийся тем, что в его состав введены коммутаторы и задатчик разрядности, преобразующий содержащиеся в памяти команды-коды, определяющие точность вычислений, в коды управления коммутаторами, причем команды-коды с выхода памяти поступают на вход задатчика разрядности через устройство управления, выводы шины данных процессора соединены с информационными входами триггеров, по меньшей мере, одного из регистров арифметико-логического устройства, памяти и регистров данных через соответствующие коммутаторы, управляющие входы которых соединены с выходом задатчика разрядности, при этом коммутаторы обеспечивают подачу данных в соответствии с кодом управления на определенную соответствующую заданной точности вычислений часть триггеров по меньшей мере одного из регистров арифметико-логического устройства, памяти и регистров данных.

Описание изобретения к патенту

Изобретение относится к цифровым процессорам, таким как микропроцессоры, и особо к процессорам с уменьшенным энергопотреблением, в частности к процессорам мобильных устройств с автономным источником электропитания.

Известны средства, обеспечивающие снижение энергопотребления в цифровых процессорах путем использования соответствующей элементной базы. Такой элементной базой являются МОП- и КМОП-транзисторы [1]. Эти структуры отличаются очень высоким сопротивлением для тока затвора, вследствие чего в статическом состоянии МОП-вентили практически не потребляют тока от управляющих ими схем. Поэтому потребляемая мощность в периоды, когда входные сигналы постоянны, незначительна. Однако во время переключения состояния с "0" на "1" или с "1" на "0" потребляется существенная мощность. Происходит это по двум причинам. Во-первых, между электродами МОП-транзистора имеются емкости. Эти емкости должны всякий раз при переключении вентиля перезаряжаться от управляющего вентиля. Во-вторых, в КМОП-структурах во время изменения входных сигналов и "понижающая" и "повышающая" части структуры в определенной степени открыты. В результате между линией положительного питающего напряжения и землей кратковременно возникает сквозной ток.

На МОП- и КМОП-структурах построены все процессоры фирмы Intel 1-5-го поколений. Упомянутые ограничения в части возможностей по снижению энергопотребления привели к тому, что в процессорах Intel 6-го поколения Р6, которые построены на тех же структурах, введены средства управления энергопотреблением, позволяющие уменьшить потребляемую мощность до 10 раз [2].

В процессорах Р6 уменьшение потребляемой мощности достигается прекращением тактирования большинства узлов процессора, т.е. прекращением работы этих узлов. В результате уменьшение потребляемой мощности приводит одновременно к существенному сокращению функциональных возможностей процессора. Так, в самом щадящем режиме Auto Halt Power Down, т.е. при минимальном снижении энергопотребления отслеживаются только кэш-попадания. В следующем в порядке снижения энергопотребления режиме Stop Grant прекращается исполнение инструкций и обслуживание прерываний.

В процессорах 6-го поколения фирмы Intel Pentium II/III Celeron имеются дополнительные режимы Sleep и Deep Sleep. В режиме Sleep, при котором потребляемый ток становится меньше 1А, не воспринимаются не только прерывания, но и любые циклы слежения. В состоянии "глубокого сна" Deep Sleep процессор не выполняет никаких функций. При этом потребляемый ток снижается до долей А.

В мобильных процессорах семейства Р6 введен новый режим Quick Start, при котором не отслеживаются транзакции других процессоров, а слежение ведется только за приоритетными агентами шины.

Таким образом, в микропроцессорах 6-го поколения остается нерешенным техническое противоречие, состоящее в том, что за снижение энергопотребления в цифровых процессорах приходится платить сокращением функциональных возможностей процессора, причем сокращение возможностей происходит на качественном уровне, а не на количественном, т.е. возможности не ухудшаются на какую-то величину, а просто исчезают. Это значит, что могут возникнуть ситуации, в которых процессор не сможет выполнить предложенную ему в данный момент задачу.

Этого недостатка лишено техническое решение согласно [3], в котором снижение энергопотребления достигается за счет предварительного определения и последующей активации только той страницы памяти, к которой относится адресуемая в данной момент ячейка. Однако это техническое решение обеспечивает снижение энергопотребления только в одной из четырех основных составных частей процессора, а именно в памяти, и не снижает энергопотребление в других частях арифметико-логического устройства, регистрах данных и устройстве управления.

В связи с этим в самое последнее время (2002-2003 гг.) фирмой Intel был создан процессор Pentium-M, использующий новую технологию Centrino [4]. Эта технология позволяет уменьшить энергопотребление без сокращения функциональных возможностей процессора. Технология Centrino предусматривает:

- возможность адаптированного к загрузке процессора выбора рабочей точки в координатах "тактовая частота-напряжение питания";

- осуществляемое автоматически включение усилителей считывания данных только непосредственно при приеме данных;

- параллельное декодирование микроопераций в блоке обработки арифметических команд и в блоке управления памятью;

- замену управления стеком на уровне команд аппаратным управлением.

- активацию только того квадранта кэш-памяти, с которым предстоит обмен данных;

- повышение скорости конвейерной работы блоков процессора благодаря более точному прогнозированию программного кода, подлежащего передаче из памяти в процессор.

Согласно результатам испытаний, представленным в [4], вычислительный запас, т.е. произведение производительности на время, в течение которого эта производительность демонстрировалась, у процессора Pentium-М примерно в 2 раза больше, чем у его ближайших предшественников. В то же время, как показывают упомянутые результаты по крайней мере в ряде режимов (например, решение целочисленных задач), энергопотребление остается слишком высоким, чтобы обеспечить желательное для пользователя время непрерывной работы мобильного процессора с автономным питанием (5-6 часов). Правда, некоторые из указанных выше технических решений (выбор рабочей точки, прогнозирование кода) имеют технически неограниченные возможности наращивания с тем, чтобы уменьшить энергопотребление в известных блоках процессора. Однако технические средства, реализующие эти решения, при своей работе сами потребляют определенную электрическую мощность. При этом с каждым наращиванием упомянутых возможностей приращение выигрыша в снижении энергопотребления известными способами уменьшается, а приращение собственного потребления в новых блоках остается постоянным. Это приводит к техническому противоречию, состоящему в том, что снижение энергопотребления в известных блоках по мере наращивания возможностей новых блоков в лучшем случае не превосходит, а в худшем становится меньше, чем увеличение энергопотребления в новых блоках.

Наиболее близким по технической сущности к предлагаемому устройству является цифровой процессор ЭВМ, построенный по общеизвестной схеме [5], т.е. содержащий выполненные на МОП- и (или) КМОП-триггерах арифметико-логическое устройство, регистры данных и память, а также шину данных и устройство управления, вход которого соединен с выходом памяти.

Техническим результатом изобретения является снижение энергопотребления в цифровых процессорах сверх предела, обусловленного ростом энергозатрат при аппаратном наращивании известных средств, используемых для снижения потребляемой мощности. Указанный технический результат достигается тем, что в цифровой процессор, построенный на МОП -и (или) КМОП-структурах, введены задатчик разрядности и коммутаторы. При этом шина данных соединяется с информационными входами триггеров регистров данных, регистров, образующих память и арифметико-логическое устройство, через коммутаторы, управляющие входы которых соединяются с выходом задатчика разрядности, а вход задатчика разрядности соединяется с выходом устройства управления.

Задатчик разрядности благодаря своей связи по входу с устройством управления позволяет преобразовывать команду-код программы, определяющую необходимую точность вычислений, в управляющие коды. Эти коды благодаря связи задатчика разрядности по выходу с коммутаторами позволяют установить такое состояние коммутаторов, что они, будучи по сигнальному входу соединены с шиной данных, обеспечивают подачу кодов данных либо на все триггеры в регистрах данных, регистрах арифметико-логического устройства и памяти либо (при требуемой точности вычислений меньшей, чем определенная разрядностью процессора) только на часть триггеров старших разрядов этих регистров. В результате изменение состояний и энергозатраты будут происходить только у той части триггеров, которые будут соединены коммутатором с шиной данных. При этом процессор выполняет все предъявленные ему задачи, так как при поступлении задачи с большей необходимой точностью вычислений к шине данных подключается большее число триггеров младших разрядов вплоть до максимального для данного процессора. Обработка команды-кода, задающей точность вычислений, и изменение состояний коммутаторов приводят к дополнительным энергозатратам. Но эти затраты имеют место один раз за все время выполнения программы данной задачи (если задача вообще допускает точность вычислений меньшую, чем определяемая разрядностью процессора, а иначе сама команда-код, задающая точность вычислений, и соответственно дополнительные энергозатраты отсутствуют). Количество же предотвращенных изменений состояний триггеров, определяемое количеством операндов в программе, намного больше, чем число изменений состояний триггеров новых узлов (коммутаторы, задатчик разрядности), которые приводят к дополнительным энергозатратам. Поэтому снижение энергопотребления при задействовании новых средств всегда больше, чем дополнительные энергозатраты на функционирование этих средств. Таким образом, предложение разрешает указанное выше техническое противоречие.

Сущность изобретения поясняется фиг.1, 2, где на фиг.1 приведена функциональная схема цифрового процессора, на фиг.2 - пример состояния коммутатора и одного из регистров памяти для случая 32-разрядного процессора при представлении чисел в формате с плавающей запятой с необходимой точностью, обеспечиваемой 16 разрядами.

Цифровой процессор содержит арифметико-логическое устройство 1, регистры данных 2 и память 3, выполненные на МОП- и (или) КМОП-триггерах, устройство управления 4, шину данных 5, коммутаторы 6, 7, 8 и задатчик разрядности 9. При этом выводы шины данных 5 на информационные входы триггеров регистров данных 2, регистров арифметико-логического устройства 1 и памяти 3 выполнены через коммутаторы 6, 7, 8, управляющие входы которых соединены с выходом задатчика разрядности 9, а устройство управления 4 соединено по входу с выходом памяти 3, а по выходу - со входом задатчика разрядности 9 и с входом управляющих сигналов арифметико-логического устройства 1.

Процессор работает следующим образом. При выполнении на N-разрядном процессоре программы, которая должна обеспечивать точность вычислений, соответствующую заданному отстоянию цифровой процессор, патент № 2290686 единицы от ближайшего дробного числа, предваряющая программу соответствующая значению 0 команда-код поступает из памяти 3 в устройство управления 4. Эта команда-код предписывает пересылку в дешифратор задатчика разрядности 9 одного из чисел в диапазоне от 1 до N, хранящихся в выделенных для задатчика разрядности 9 регистрах памяти 3. Например, если цифровой процессор, патент № 2290686 =2-10, а N=32, то таким число будет Nцифровой процессор, патент № 2290686 =16. Дешифратор задатчика разрядности 9, получив двоичный код этого числа, вырабатывает и посылает соответствующий единичный сигнал на управляющие входы коммутаторов 6, 7, 8, которые переходят в состояние, показанное на фиг.2 штриховыми линиями, т.е. прекращают передачу из шины данных в регистры данных 2, регистры арифметико-логического устройства 1 и памяти 3 содержимого разрядов с 0-го по (N-m-n-2)-й, т.е. в рассматриваемом примере с 0-го по 16-й. Здесь m - количество разрядов, отводимых для представления модуля мантиссы числа - операнда, n - количество разрядов, отводимых для представления модуля порядка этого числа (В рассматриваемом примере m=9; n=5). В результате триггеры этих разрядов до нового изменения состояния коммутаторов 6, 7, 8, т.е. до считывания в памяти 3 новой команды-кода, определяющей необходимость новой точности вычислений, остаются в неизменном состоянии, а именно в том, в каком они оказались после первого здесь рассмотренного изменения состояния коммутаторов 6, 7, 8. Поэтому вышеупомянутые триггеры не переключаются, и электрическая мощность в этих триггерах не потребляется.

В остальном процессор работает обычным образом. Требуемые для выполнения программы данные считываются из памяти 3 и поступают в регистры данных 2. Туда же могут поступать данные из арифметико-логического устройства 1. Арифметико-логическое устройство 1 выполняет с кодами данных, хранящихся в регистрах данных 2, операции, предусмотренные программой и представленные набором управляющих сигналов, передаваемых из устройства управления 4 в арифметико-логическое устройство 1. Коды результатов операций записываются в соответствии с программой в регистре-аккумуляторе из числа регистров данных 2, откуда передаются либо в другие регистры данных 2, либо в память 3.

Построение вновь введенных блоков процессора известно (см., например [6] - коммутаторы, [5] - дешифраторы (стр.27) и память (стр.42), образующие в совокупности задатчик разрядности). Прекращение работы части триггеров младших разрядов в блоках процессора, хранящих или обрабатывающих коды данных, приводит к снижению точности вычислений, но благодаря задатчику разрядности сохраняет точность в необходимых пределах и в то же время снижает среднюю потребляемую мощность процессора.

Источники информации

1. Д.Гивоне, Р.Россер "Микропроцессоры и микрокомпьютеры" М., 1983.

2. М.Гук, В.Юров "Процессоры Pentium 4, Athlon и Duron", СПБ. 2001.

3. Pat US 2003028749 от 2003-02-06, G-06 F 12/00.

4. Кайрат Ахметов Intel Centrino: детальный обзор технологии, подробные тесты производительности и энергосбережения на примере ноутбуков ASUS SIN и Roverbook Nautilius В 570, line/mobilis/24836.

5. Л.Н.Королев "Микропроцессоры, микро- и мини-ЭВМ." М., 1988.

6. С.Хвощ и др. "Микропроцессоры и микро-ЭВМ." Л., 1987 с.163.

Класс G06F15/00 Цифровые компьютеры вообще; оборудование для обработки данных вообще

способ, сервер, компьютерная программа и компьютерный программный продукт для кэширования -  патент 2527736 (10.09.2014)
схема передачи данных с текстовой информацией -  патент 2527733 (10.09.2014)
модифицированный интеллектуальный контроллер -  патент 2527212 (27.08.2014)
визуализация подписок rss на календаре -  патент 2527194 (27.08.2014)
способ построения системы автоматического управления с взаимодействием через сеть ethernet -  патент 2526765 (27.08.2014)
система и способ подбора функций управления мобильными устройствами -  патент 2526754 (27.08.2014)
устройство обработки информации, система обработки информации, способ обработки информации и носитель информации -  патент 2525746 (20.08.2014)
системы и способы для передачи файлов данных, независимо от платформы -  патент 2525743 (20.08.2014)
расширяемость для основывающейся на web визуализации диаграмм -  патент 2524855 (10.08.2014)
слежение за положением головы -  патент 2523961 (27.07.2014)

Класс G06F9/00 Устройства для программного управления, например блоки управления

микропрограммный автомат -  патент 2527190 (27.08.2014)
управление скоростью, с которой обрабатываются запросы на прерывание, формируемые адаптерами -  патент 2526287 (20.08.2014)
способ синхронизации доступа к разделяемым ресурсам вычислительной системы и обнаружения и устранения повисших блокировок с использованием блокировочных файлов -  патент 2526282 (20.08.2014)
обнаружение квантового исключения с плавающей десятичной точкой -  патент 2526004 (20.08.2014)
устройство обработки информации, система обработки информации, способ обработки информации и носитель информации -  патент 2525746 (20.08.2014)
устройство воспроизведения, способ воспроизведения, устройство записи, способ записи, программа и структура данных -  патент 2525482 (20.08.2014)
интегральная микросхема, аппарат для обработки информации, способ управления модулем программного обеспечения, система обработки информации, способ обработки информации и программа -  патент 2524862 (10.08.2014)
расширяемость для основывающейся на web визуализации диаграмм -  патент 2524855 (10.08.2014)
электронный блок управления, имеющий ядро, работающее в реальном масштабе времени и управляющее разбиением на разделы -  патент 2524570 (27.07.2014)
способ межпроцессного взаимодействия между разными приложениями в мобильном терминале и соответствующее устройство -  патент 2523964 (27.07.2014)
Наверх