RU2290686C2 - Цифровой процессор - Google Patents

Цифровой процессор Download PDF

Info

Publication number
RU2290686C2
RU2290686C2 RU2004126840/09A RU2004126840A RU2290686C2 RU 2290686 C2 RU2290686 C2 RU 2290686C2 RU 2004126840/09 A RU2004126840/09 A RU 2004126840/09A RU 2004126840 A RU2004126840 A RU 2004126840A RU 2290686 C2 RU2290686 C2 RU 2290686C2
Authority
RU
Russia
Prior art keywords
memory
registers
processor
data
triggers
Prior art date
Application number
RU2004126840/09A
Other languages
English (en)
Other versions
RU2004126840A (ru
Inventor
Моисей Зусманович Финкель (RU)
Моисей Зусманович Финкель
Original Assignee
Моисей Зусманович Финкель
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Моисей Зусманович Финкель filed Critical Моисей Зусманович Финкель
Priority to RU2004126840/09A priority Critical patent/RU2290686C2/ru
Publication of RU2004126840A publication Critical patent/RU2004126840A/ru
Application granted granted Critical
Publication of RU2290686C2 publication Critical patent/RU2290686C2/ru

Links

Images

Landscapes

  • Microcomputers (AREA)
  • Complex Calculations (AREA)

Abstract

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

Description

Изобретение относится к цифровым процессорам, таким как микропроцессоры, и особо к процессорам с уменьшенным энергопотреблением, в частности к процессорам мобильных устройств с автономным источником электропитания.
Известны средства, обеспечивающие снижение энергопотребления в цифровых процессорах путем использования соответствующей элементной базы. Такой элементной базой являются МОП- и КМОП-транзисторы [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-разрядном процессоре программы, которая должна обеспечивать точность вычислений, соответствующую заданному отстоянию δ единицы от ближайшего дробного числа, предваряющая программу соответствующая значению 0 команда-код поступает из памяти 3 в устройство управления 4. Эта команда-код предписывает пересылку в дешифратор задатчика разрядности 9 одного из чисел в диапазоне от 1 до N, хранящихся в выделенных для задатчика разрядности 9 регистрах памяти 3. Например, если δ=2-10, а N=32, то таким число будет N′=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.

Claims (1)

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

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2004126840/09A RU2290686C2 (ru) 2004-09-06 2004-09-06 Цифровой процессор

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2004126840/09A RU2290686C2 (ru) 2004-09-06 2004-09-06 Цифровой процессор

Publications (2)

Publication Number Publication Date
RU2004126840A RU2004126840A (ru) 2006-02-20
RU2290686C2 true RU2290686C2 (ru) 2006-12-27

Family

ID=36050570

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2004126840/09A RU2290686C2 (ru) 2004-09-06 2004-09-06 Цифровой процессор

Country Status (1)

Country Link
RU (1) RU2290686C2 (ru)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2559745C2 (ru) * 2012-02-01 2015-08-10 Кэнон Кабусики Кайся Устройство обработки данных

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2559745C2 (ru) * 2012-02-01 2015-08-10 Кэнон Кабусики Кайся Устройство обработки данных
US9164569B2 (en) 2012-02-01 2015-10-20 Canon Kabushiki Kaisha Data processing apparatus, information processing method, and storage medium

Also Published As

Publication number Publication date
RU2004126840A (ru) 2006-02-20

Similar Documents

Publication Publication Date Title
US9507396B2 (en) Power control device for processor
US11467740B2 (en) Method, apparatus, and system for energy efficiency and energy conservation including autonomous hardware-based deep power down in devices
US20180129266A1 (en) Performing Local Power Gating In A Processor
CN101694613B (zh) 不对准存储器存取预测
JP2016076268A (ja) 利用可能な並列性の量に従って1命令当たりのエネルギーを変化させるための方法及び装置
US10592207B2 (en) Dynamic variable precision computation
US20090235099A1 (en) Protocol for Transitioning In and Out of Zero-Power State
US20100268968A1 (en) Managing processor power-performance states
US8195973B2 (en) Method to implement a monotonic counter with reduced flash part wear
KR20060131543A (ko) 멀티-코어 프로세서의 프로세서 모드 제어장치 및 방법
US9996127B2 (en) Method and apparatus for proactive throttling for improved power transitions in a processor core
US5603037A (en) Clock disable circuit for translation buffer
US20060156062A1 (en) Method for effecting the controlled shutdown of data processing units
RU2290686C2 (ru) Цифровой процессор
RU2290685C2 (ru) Цифровой процессор
JPH10301659A (ja) マイクロプロセッサ
US20110302391A1 (en) Digital signal processor
Culbert Low power hardware for a high performance PDA
JP4370109B2 (ja) プロセッサの電力制御方法
EP3770727A1 (en) Technology for managing per-core performance states
US20160170466A1 (en) Power saving multi-width processor core
Zhang et al. Novel hybrid computing architecture with memristor-based processing-in-memory for data-intensive applications
EP4202664A1 (en) System, apparatus and method for throttling fusion of micro-operations in a processor
KR100486252B1 (ko) 캐쉬 장치 및 이에 적합한 캐쉬 제어 방법
Di Paolo Emilio et al. Microcontroller Design

Legal Events

Date Code Title Description
QA4A Patent open for licensing

Effective date: 20131105

MM4A The patent is invalid due to non-payment of fees

Effective date: 20140907