Технологии для управления использованием энергии питания



Технологии для управления использованием энергии питания
Технологии для управления использованием энергии питания
Технологии для управления использованием энергии питания
Технологии для управления использованием энергии питания
Технологии для управления использованием энергии питания
Технологии для управления использованием энергии питания
Технологии для управления использованием энергии питания

 


Владельцы патента RU 2481615:

ИНТЕЛ КОРПОРЕЙШН (US)

Изобретение относится к технологиям управления энергии питания. Техническим результатом является снижение использования энергии питания. Способ управления запросами на представление рисунков, воплощенный в компьютере, состоит из этапов: принимают запрос на представление рисунка, определяют, не включает ли в себя запрос на представление рисунка запрос на представление рисунка, который может быть отображен. Далее избирательно модифицируют запрос на представление рисунка в ответ на определение, что запрос на представление рисунка не включает в себя запрос на представление рисунка, который может быть отображен, а также выводят запрос на представление рисунка. 3 н. и 19 з.п. ф-лы, 7 ил.

 

Область техники, к которой относится изобретение

Предмет изобретения, раскрытый здесь, в общем, относится к снижению потребляемой энергии питания, в случае, когда требуется отображать графические изображения.

Уровень техники

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

Краткое описание чертежей

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

На фиг.1 показана архитектура системы в соответствии с различными вариантами осуществления.

На фиг.2 представлено взаимодействие между драйвером графических устройств, приложением и модулем управления энергией питания.

На фиг.3 представлен процесс, в котором драйвер обеспечивает то, что размер целевой области составляет ноль пикселей, когда поступает запрос на рисунок, который не будет отображен.

На фиг.4 представлен процесс, в котором драйвер графических устройств определяет, основано ли приложение, которое запрашивает рисунок, также на ранее предоставленном содержании.

На фиг.5 представлен примерный процесс, который можно использовать для различения между приложениями, в которых используется графическое аппаратное средство и в которых не используется графическое аппаратное средство, и которое обрабатывает подачу питания в аппаратные средства и инструкции для аппаратных средств, соответственно.

На фиг.6 представлена система, в которой модуль управления питанием (РМ) и приложения участвуют в обмене данными, относящимися к состояниям снижения потребления энергии питания аппаратных средств платформы.

На фиг.7 представлена система в соответствии с вариантом осуществления.

Подробное описание изобретения

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

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

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

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

В различных вариантах осуществления драйвер распознает приложения, запросы которых могут быть выполнены, без включения питания аппаратных средств и приложения, запросы которых выполняют с использованием аппаратных средств ускорения. Для запросов, которые могут быть выполнены, без использования аппаратных средств ускорения, драйвер графических устройств отслеживает изменения состояния, но не обеспечивает подачу питания в аппаратные средства ускорения. Центральное процессорное устройство (CPU) может использоваться вместо аппаратных средств ускорения для представления изображения с низкой сложностью. В некоторых случаях использование аппаратных средств ускорения или CPU зависит от свойств системы, а также от выполняемой рабочей нагрузки. В некоторых случаях между 3D-кадрами существует очень малое значение дельта рабочей нагрузки. Основываясь на таком предположении, один подход состоит в том, чтобы угадать величину "следующей" рабочей нагрузки на основе предыдущей рабочей нагрузки. Механизм аппаратных средств может использоваться, когда ожидаемая рабочая нагрузка достаточно велика.

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

В некоторых случаях, когда экранная заставка работает на дисплее, аппаратные средства ускорения отключают. Однако в некоторых случаях трехмерная экранная заставка, например, может потреблять меньше энергии питания, если она использует аппаратные средства ускорения, чем в случае использования программных средств, выполняемых CPU. В соответствии с этим, если используется трехмерная экранная заставка, тогда используются аппаратные средства ускорения.

На фиг.1 показана архитектура системы в соответствии с различными вариантами осуществления. Приложения 102 представляют собой программные средства, которые подают запросы на вычерчивание графиков для 2D, 3D-изображений и видеоизображений. Приложения 102 могут не иметь информации о том, что дисплей отключен, или запрашиваемое изображение, предназначенное для отображения, не будет отображено. Приложения 102 также могут не иметь информации о том, отключены ли аппаратные средства в системе или находятся в состояниях пониженного потребления энергии питания.

Блок 104 рабочего времени графических изображений (GFX) принимает команды высокого уровня и преобразует эти команды в команды низкого уровня для драйвера 106 GFX. Блок 104 рабочего времени GFX предоставляет API, которые приложения используют для формирования рисунков. Блок 104 рабочего времени GFX уменьшает количество попыток соединения, требуемых для работы приложения между множеством OS. Блок 104 рабочего времени графических изображений может работать с Windows, Linux и другими операционными системами. Например, блок 104 рабочего времени может быть воплощен как логический блок, совместимый с DirectX или OpenGL.

Блок драйвера 106 GFX представляет собой программный уровень, который составляет интерфейс между приложениями 102, блоком 104 рабочего времени графических изображений, модулем 108 управления питанием и устройствами аппаратного (HW) ускорения. Приложения представляют запросы на выполнение графических операций в блок 106 драйвера GFX. В некоторых случаях приложения не имеют информации о том, что аппаратные средства отключены или имеют информацию о том, что запрашиваемые рисунки не будут видимы, например, в случаях, когда рисунок закрыт другим объектом, или работает программа заставки экрана. Блок 106 драйвера GFX управляет представлением изображений и видеоизображений так же, как и аппаратные средства, которые управляют отображением изображений и видеоизображений. Блок 106 драйвера GFX преобразует запросы на рабочее время приложений в аппаратные программы. В некоторых случаях блок 106 драйвера GFX включает аппаратные средства для выполнения запроса. В некоторых случаях блок 106 драйвера GFX взаимодействует с РМ 108 для управления аппаратными средствами платформы с переключением их в состояние низкого потребления энергии питания. Например, ниже представлен пример состояния использования энергии питания:

Специфичные для устройства состояния низкого потребления энергии питания для любых из GFX HW или Видео HW, или HW дисплея:

D1: питание подсистемы полностью отключено.

D0: подсистема находится в полном рабочем режиме (включена).

D0i1: подсистема включена со стробированием тактовой частоты.

D0i3: подсистема включена с управлением подачей питания.

Состояния бездействия на уровне системы (Sx или S0ix) и включают в себя все подсистемы платформы:

S0: Платформа включена, и все подсистемы находятся в состоянии полной подачи питания.

S0i1: Дежурный режим с постоянным включением/с постоянным подключением (АОАС); используемый во время коротких периодов простоя (интерактивные действия пользователя при использовании устройства).

S0i2: Активный дежурный режим; используется во время протяженных периодов ожидания (пользователь пассивно использует устройство).

S0i3: Бездействие; пользователь не использует устройство.

S3: Состояние ожидания.

S4: Работа остановлена.

S5: Полностью отключенное питание.

Блок 108 управления энергией питания (РМ) управляет потреблением питания аппаратных средств в платформе. Например, если период времени, прошедший после того, как дисплей не используется или отсутствует взаимодействие с пользователем, блок 108 РМ отключает одно или больше из аппаратных средств 110 дисплея, аппаратных средств 112 видеоизображения и аппаратных средств 114 графических изображений (GFX). Кроме того, блок 108 РМ может снижать потребление питания дисплеем или запросить отображение экранной заставки. Снижение потребления энергии питания может охватывать снижение потребляемой энергии питания аппаратными средствами в соответствии с состояниями Dx, D0x, Sx или SiOx, описанными выше.

HW блок 112 видеоданных может включать в себя аппаратные механизмы видеокодирования и видеодекодирования в соответствии с применяемыми стандартами сжатия и расширения видеоданных. Например, HW блок 112 видеоданных может обеспечивать сжатие и расширение в соответствии с любым из стандартов MPEG-2, MPEG-4, Н.263, Н.264, и появляющимся стандартом Н.265. Блок 114 GFX HW может представлять собой аппаратные средства ускорения 2D или 3D графических изображений. Например, блок 114 GFX HW может представлять собой аппаратные средства ускорения 2D или 3D графических изображений для графических конвейеров DirectX или OpenGL. Блок 110 аппаратных средств (HW) дисплея принимает содержание, генерируемое блоком 112 HW видеоданных или блоком 114 HW GFX, и форматирует содержание для отображения на панели. Каждый из блоков 110-114 выполнен с возможностью входа в режим уменьшенного или сниженного питания.

На фиг.2 представлено взаимодействие между драйвером GFX, приложением и РМ. После того, как будет детектирован достаточный период отсутствия активности пользователя, РМ переводит один или больше из дисплея, аппаратных средств обработки видеоданных и аппаратных средств GFX в состояние низкого потребления энергии питания, вырабатывая запросы на приостановление работы. РМ вырабатывает запрос на приостановление работы в драйвер GFX для снижения потребляемой энергии питания для каждого не используемого острова. Состояние пониженного потребления энергии питания может представлять собой любое из состояний Dx, D0x, Sx и SiOx, описанных ранее. Например, детектируемое отсутствие активности пользователя не может включать в себя отсутствие интеракционных взаимодействий пользователя с системой в течение определенного периода времени, с такими ее элементами, как сенсорный экран системы, кнопочная панель, мышь или устройство прокрутки.

Драйвер GFX отвечает на запрос на приостановление работы путем определения, следует ли отключить неиспользуемое GFX, устройство обработки видеоданных или аппаратные средства дисплея. Драйвер GFX возвращает индикатор ЗАНЯТО в РМ для конкретного аппаратного устройства (то есть, "острова"), для которого было запрошено приостановление работы, но это аппаратное устройство находилось в использовании. Если РМ принимает индикатор ЗАНЯТО, то РМ повторно пытается остановить работу конкретного аппаратного устройства в более позднее время. Если конкретное аппаратное устройство не находится в использовании при приеме запроса на приостановление работы, РМ отключает питание этого острова, переводя его с состояние использования с более низким потреблением питания. В некоторых случаях, по меньшей мере, драйвер GFX снижает питание острова дисплея, даже если другие акселераторы заняты, для уменьшения потребления энергии питания.

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

На фиг.3 представлен процесс, в котором драйвер обеспечивает то, что целевая область будет составлять ноль пикселей по размеру, когда запрос на вычерчивание изображения не будет отображен. В позиции 302 приложение запрашивает вычерчивание пикселей на дисплее. Команда вызова вычерчивания может представлять собой DrawRectangle, DrawWindow и т.д. Блок рабочего времени графических изображений может преобразовывать вызов изображения в треугольники с соответствующей вершиной. В позиции 304 блок рабочего времени графических изображений генерирует команды для аппаратных средств, для выполнения запроса из приложения. В позиции 306 драйвер графических устройств определяет, возможно ли отображение запрашиваемого изображения. Например, дисплей может находиться в режиме пониженного потребления энергии питания, или изображение может быть закрыто экранной заставкой или другим изображением, или видеоизображением. Дисплей может быть выключен блоком управления питанием или другим логическим блоком. Запрос на вычерчивание может быть неотображаемым, если он может быть полностью закрыт другим изображением. Если запрашиваемое изображение является неотображаемым, тогда в блоке 308 драйвер GFX определяет, выключено ли аппаратное средство, которое должно представить запрашиваемое изображение, или оно находится в режиме пониженного потребления энергии питания.

Если аппаратные средства выключены или находятся в режиме пониженного потребления энергии питания, тогда аппаратные средства включают (блок 310), но выполнение целевой функции аппаратного средства устанавливают как ноль пикселей (блок 312) таким образом, что пиксели не выводят из аппаратных средств в аппаратный дисплей (блок 314). Включение аппаратных средств, даже притом, что изображение невозможно отобразить, помогает получать обновленное изображение и информацию состояния, которую требуется поддерживать на текущем уровне, когда дисплей вновь включают. Это позволяет экономить использование энергии питания островом, поскольку остров не выполняет большое количество работы, даже притом, что остров получает питание. В некоторых случаях команда выполнения целевой функции с нулем пикселей может быть выработана программным средством, выполняемым центральным процессорным устройством, для поддержания правильного управления состоянием графической подсистемы для приложения-клиента.

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

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

Если рисунок может отображаться, или запрашиваемые аппаратные средства включены, тогда команды подают в аппаратные средства (блок 314).

В некоторых случаях пользователь может перезаписать установки драйвера GFX в определенном приложении. В некоторых приложениях процесс, показанный на фиг.3, не применяют и вместо этого используют процесс, показанный на фиг.2.

Некоторые приложения не могут работать с нулем пикселей, как в процессе, показанном на фиг.3. Например, некоторые приложения считывают обратно предоставленное содержание и выполняют действия с использованием ранее воспроизведенного содержания, в случаях, когда поступил запрос на воспроизведение содержания тем же приложением или другим приложением. Например, некоторые приложения генерируют содержание на основе ранее представленного содержания. На фиг.4 показан процесс, который представляет собой вариацию процесса по фиг.3. В процессе на фиг.4, в блоке 402, драйвер графических устройств определяет, основано ли также приложение, которое запрашивает данный рисунок, на ранее предоставленном содержании. В более общем случае выполняют определение, считывает ли приложение ранее представленное содержание. Ранее представленное содержание может включать в себя содержание, не представленное на экране, или содержание, которое не отображалось, поскольку было закрыто другим отображаемым содержанием. Например, идентификатор процесса приложения идентифицирует приложение, которое считывает ранее представленное содержание. Например, если приложение использует функцию glReadPixels, тогда приложение пытается считывать ранее представленное содержание. В некоторых случаях драйвер проверяет, обращалось ли приложение или шейдер пикселя к представляемому содержанию в предыдущем кадре, для определения, обращается ли приложение к ранее представленному содержанию.

Если приложение считывает ранее представленное содержание, тогда в блоке 404 драйвер GFX разрешает изменение состояния, запрашиваемое приложением в структурах данных драйвера GFX. Например, изменения состояния могут включать в себя подсветку кадра, подсветку текстуры, следующую команду или следующее исполнение для аппаратных средств, и другие состояния. Кроме того, в блоке 406 драйвер GFX разрешает приложению передать содержание, не отображаемое на экране, в буфер. Например, в буфере могут быть помещены 0-N кадров, где N представляет собой целое число ≥1. Приложение может считывать ранее воспроизведенное содержание из буфера.

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

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

Если приложение не считывает ранее представленное содержание, драйвер GFX позволяет включить питание для аппаратных средств (или подать полное питание) в блоке 410. Если запрашиваемый рисунок может быть отображен, драйвер GFX разрешает аппаратному средству выполнить запрашиваемые действия. Если запрашиваемый рисунок не может быть отображен, драйвер GFX вырабатывает целевую функцию с нулем пикселей для включенных аппаратных средств, как и при обработке на фиг.3. В некоторых случаях, хотя это и не представлено, если запрашиваемый рисунок не может быть отображен, драйвер GFX вырабатывает целевую функцию с нулем пикселей, которая должна быть выработана с использованием CPU, без включения аппаратных средств.

В некоторых случаях пользователь может переписать установку драйвера GFX для определенного приложения. Для некоторых приложений процесс, показанный на фиг.4, не применяется и вместо этого используется процесс по фиг.2.

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

Если запрашиваемый рисунок не может быть отображен (блок 306) и если аппаратные средства, которые должны обрабатывать запрашиваемый рисунок, выключены (блок 502), тогда определяют, может ли быть обработан запрос с выключенными аппаратными средствами, или находящимися в режиме пониженного потребления энергии питания (блок 504). Боле низкий режим потребления питания может представлять собой любое состояние Dx, D0x, Sx, SiOx из описанных ранее. Например, аппаратные средства могут оставаться выключенными или в режиме с низким потреблением питания для простой операции копирования или обработки графических изображений, выполняемой программным средством. Однако в других случаях аппаратные средства могут быть включены. Например, для выполнения запроса на представление рисунка может быть более эффективным, с точки зрения потребления энергии питания, включить питание аппаратных средств. В некоторых случаях запрос на представление рисунка может использовать аппаратные средства так, что питание аппаратных средств включают.

Если запрос может быть обработан без включения питания аппаратных средств (блок 504), тогда информацию о состоянии драйвера GFX обновляют до информации, которая возникла бы, если бы запрос на представление рисунка был выполнен без включения аппаратных средств (блок 506).

Если запрашиваемые аппаратные средства уже включены (блок 502) или запрос не может быть обработан без включения аппаратных средств (блок 504), тогда цель получения устанавливают с размерами ноль на ноль (0×0) пикселей (блоки 508 и 510). В некоторых случаях целевая функция получения ноль пикселей может быть выработана с помощью программных средств, выполняемых CPU, без включения питания аппаратных средств.

Если рисунок может быть отображен, тогда подают команду в аппаратные средства для представления рисунка (блок 510).

В некоторых случаях пользователь может переписывать установки драйвера GFX для определенного приложения. Для некоторых приложений обработку на фиг.5 не применяют и вместо этого используют обработку по фиг.2.

На фиг.6 показана система, в которой блок управления питанием (РМ) и приложения обмениваются данными в отношении состояния отключения питания аппаратных средств в платформе. РМ уведомляет приложения об изменениях питания платформы, учитывающих состояние питания приложений для их взаимодействия. Когда приложения принимают уведомление из РМ об изменениях питания платформы, приложения могут взаимодействовать путем остановки своих операций представления изображения. Учитывающие состояние питания приложения уведомляют РМ об их неактивности так, что РМ может определять, какие аппаратные средства следует отключить. На основе уведомлений, принятых из приложений, РМ может отображать ускоритель HW, используемый приложением (например, GFX или видео), и соответственно уменьшает питание HW, если никакое другое приложение/объект не использует это HW.

РМ запрашивает снижение питания аппаратных средств ускорения путем взаимодействия с драйвером GFX. В ответ на уведомление о неактивности приложений РМ может переводить состояние аппаратных средств ускорения в состояние низкого потребления энергии питания даже до того, как неактивность пользователя будет детектирована. Блок рабочего времени графических изображений, учитывающий их питание, взаимодействует с РМ и уменьшает запросы аппаратных средств, передаваемые в драйвер. Блок рабочего времени GFX может отклонять все запросы приложений. В некоторых случаях блок рабочего времени GFX отклоняет запросы приложений, отвечая, что платформа не готова обрабатывать запросы. Блок рабочего времени GFX может информировать приложение, чтобы оно не генерировало дальнейшие команды, направленные на аппаратные средства ускорения. Во время включения питания РМ может запрашивать модуль управления окна для выполнения обновления таким образом, что приложения могут выполнять обновление в ожидаемые состояния.

На фиг, 7 показана система в соответствии с вариантом осуществления. Система 700 может включать в себя главную систему 702 и дисплей 722. Компьютерная система 700 может быть воплощена в виде карманного персонального компьютера, мобильного телефона, телевизионной приставки или любого вычислительного устройства. Главная система 702 может включать в себя набор 705 микросхем, процессор 710, главное запоминающее устройство 712, накопитель 714, графическую подсистему 715 и радиомодуль 720. Набор 705 микросхем может обеспечивать взаимный обмен данными между процессором 710, главным запоминающим устройством 712, накопителем 714, графической подсистемой 715 и радиомодулем 720. Например, набор 705 микросхем может включать в себя адаптер накопителя (не показан), который выполнен с возможностью обеспечения взаимного обмена данными с накопителем 714. Например, адаптер накопителя может быть выполнен с возможностью обмена данными с накопителем 714 в соответствии с любым из следующих протоколов: интерфейс малых вычислительных систем (SCSI), оптоволоконный канал (FC), и/или усовершенствованная технология последовательного подключения (S-ATA).

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

Процессор 710 может быть воплощен как процессор со сложным набором команд (CISK) или процессоры с сокращенным набором команд (RISC), многоядерный или любой другой микропроцессор или центральное процессорное устройство.

Главное запоминающее устройство 712 может быть воплощено как энергозависимое запоминающее устройство, такое как, но без ограничений, оперативное запоминающее устройство (RAM), динамическое оперативное запоминающее устройство (DRAM) или статическое ОЗУ (SRAM). Накопитель 714 может быть воплощен как энергонезависимое устройство - накопитель, такое как, но без ограничений, привод магнитного диска, привод оптического диска, ленточный привод, внутреннее устройство - накопитель, прикрепленное устройство - накопитель, запоминающее устройство типа флэш, SDRAM с дополнительной батареей (синхронное DRAM), и/или устройство - накопитель с сетевым доступом.

Графическая подсистема 715 может выполнять обработку таких изображений, как неподвижные или видеоизображения, для отображения. Аналоговый или цифровой интерфейс может использоваться для соединения с возможностью обмена данными графической подсистемы 715 и дисплея 722. Например, интерфейс может представлять собой любой из мультимедийного интерфейса высокой четкости, DisplayPort, беспроводного HDMI и/или с использованием технологии беспроводной передачи данных, совместимых с HD. Графическая подсистема 715 может быть интегрирована в процессор 710 или набор микросхем 705. Графическая подсистема 715 может представлять собой отдельную карту, соединенную с возможностью обмена данными с набором микросхем 705.

Радиомодуль 720 может включать в себя одно или больше радиоустройств, выполненных с возможностью передачи и приема сигналов в соответствии с применяемыми стандартами беспроводной передачи данных, такими как, но без ограничений, любая версия IEEE 802.11 и IEEE 802.16.

Хотя это не показано на чертеже, система 700 может включать в себя доступ к устройствам ввода данных, таким как сенсорный экран, мышь и камера.

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

Варианты осуществления настоящего изобретения могут быть выполнены в любой или комбинации: одной или больше микросхем или интегральных схем, взаимно соединенных с использованием материнской платы, логических схем с постоянными соединениями, программных средств, сохраненных в запоминающем устройстве, и выполняемых микропроцессором, встроенного программного обеспечения, специализированной интегральной микросхемы (ASIC) и/или с помощью программируемой пользователем вентильной матрицы (FPGA). Термин "логический" может включать в себя, в качестве примера, программные или аппаратные средства и/или комбинацию из программных и аппаратных средств.

Варианты осуществления настоящего изобретения могут быть предусмотрены, например, в виде компьютерного программного продукта, который может включать в себя один или больше считываемых устройством носителей информации, на которых сохранены исполняемые компьютером инструкции, которые будучи выполненными одним или больше устройствами, такими как компьютер, вычислительная сеть или другие электронные устройства, могут привести к получению одного или большего количества устройств, выполняющих операции в соответствии с вариантами осуществления настоящего изобретения. Считываемый устройством носитель информации может включать в себя, без ограничений, гибкие дискеты, оптические диски, CD-ROM (постоянное запоминающее устройство на компактных дисках), магнитооптические диски, ROM (постоянное запоминающее устройство), ОЗУ (оперативное запоминающее устройство), EPROM (стираемое программируемое постоянное запоминающее устройство), EEPROM (электрически стираемое программируемое постоянное запоминающее устройство), магнитные или оптические карты, запоминающее устройство типа флэш или другие типы носителей/считываемого устройством носителя информации, пригодного для сохранения исполняемых устройством инструкций.

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

1. Способ управления запросами на представление рисунков, воплощенный в компьютере и содержащий следующие операции:
принимают запрос на представление рисунка;
определяют, не включает ли в себя запрос на представление рисунка запрос на представление рисунка, который может быть отображен;
избирательно модифицируют запрос на представление рисунка в ответ на определение, что запрос на представление рисунка не включает в себя запрос на представление рисунка, который может быть отображен, и выводят запрос на представление рисунка.

2. Способ по п.1, в котором избирательная модификация запроса на представление рисунка содержит избирательное уменьшение множества пикселей запрашиваемого рисунка.

3. Способ по п.2, в котором избирательное уменьшение множества пикселей запрашиваемого рисунка содержит, устанавливают размеры в пикселях, равные ноль на ноль, и дополнительно содержит запрос включения аппаратных средств ускорения для представление рисунка в ответ на запрос.

4. Способ по п.2, в котором избирательное уменьшение множества пикселей запрашиваемого рисунка содержит установку размеров в пикселях, как дробную часть размера в пикселях запрашиваемого рисунка, в котором дробная часть меньше, чем единица.

5. Способ по п.1, в котором избирательная модификация запрашиваемого рисунка содержит следующие операции:
определяют, считывает ли блок, запрашивающий рисунок ранее предоставленные графические изображения;
определяют состояние, получаемое в результате выполнения запроса на представление рисунка; и
в ответ на определение, что запрашивающий блок считывает ранее предоставленные графические изображения, сохраняют определенное состояние без выполнения запроса на представление рисунка и сохраняют полученный запрашиваемый рисунок в буфере.

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

7. Способ по п.1, дополнительно содержащий следующие операции:
определяют, может ли быть запрос на представление рисунка выполнен с использованием аппаратных средств ускорения, ассоциированных с запросом на представление рисунка, остающихся в режиме пониженного потребления энергии питания, и
в ответ на определение, что запрос на представление рисунка может быть выполнен с использованием аппаратных средств ускорения, ассоциированных с запросом на представление рисунка, остающихся в режиме пониженного потребления энергии питания, сохраняют определенное состояние без выполнения запроса на представление рисунка.

8. Способ по п.7, дополнительно содержащий следующее:
в ответ на определение, что запрос на представление рисунка не может быть выполнен с использованием аппаратных средств, ассоциированных с запросом на представление рисунка, остающихся в режиме пониженного потребления энергии питания, запрашивают включение ассоциированных аппаратных средств и передают запрос на представление рисунка во включенные аппаратные средства.

9. Способ по п.1, дополнительно содержащий следующее:
используют приложение, выполняемое центральным процессорным устройством, для выполнения представления рисунков с низкой сложностью в соответствии с запросом на представление рисунка, независимо от включенных аппаратных средств для обработки графических или видеоданных.

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

11. Устройство по п.10, в котором
РМ предназначен для определения, какие аппаратные средства должны запрашивать переход в режим пониженного потребления энергии питания на основе показателей отсутствия активности приложения,
РМ предназначен для уведомления, по меньшей мере, одного приложения о состоянии пониженного потребления энергии питания аппаратными средствами, при этом по меньшей мере одно приложение уменьшает запросы на предоставление рисунка в аппаратные средства в состоянии низкого потребления питания в ответ на то, что запрашиваемый рисунок не может быть отображен.

12. Устройство по п.10, дополнительно содержащее модуль управления окном, при этом РМ уведомляет модуль управления окном о необходимости обновления последнего кадра во время возобновления работы системы.

13. Устройство по п.10, в котором
драйвер графических устройств уведомляет РМ об отсутствии активности аппаратных средств, и
драйвер графических устройств запрашивает использование центрального процессорного устройства для выполнения обработки графических изображений малой сложности в запросе на представление рисунка.

14. Устройство по п.10, в котором
драйвер графических устройств уведомляет РМ об отсутствии активности аппаратных средств и
РМ переводит неактивные аппаратные средства в состояние пониженного потребления энергии питания.

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

16. Устройство по п.10, в котором драйвер графических устройств выполнен с возможностью
определять, считывает ли блок, запрашивающий рисунок, ранее предоставленные
графические изображения;
определять состояние, получаемое в результате выполнения запроса на представление рисунка, и
в ответ на определение, что запрашивающий блок считывает ранее предоставленные графические изображения, сохранять определенное состояние без выполнения запроса на представление рисунка и сохранять полученный запрашиваемый рисунок в буфере.

17. Устройство по п.10, в котором драйвер графических устройств выполнен с возможностью
запрашивать использование приложения, выполняемого центральным процессорным устройством, для выполнения представления рисунка с малой сложностью по запросу на представление рисунка, независимо от включения питания аппаратных средств по обработке графических или видеоданных.

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

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

20. Система по п.18, в которой для избирательной модификации запроса на представление рисунка вычислительная система
определяет, считывает ли блок, запрашивающий рисунок, ранее предоставленные графические изображения;
определяет состояние, получаемое в результате выполнения запроса на представление рисунка; и в ответ на определение, что запрашивающий блок считывает ранее предоставленные графические изображения, сохраняет определенное состояние без выполнения запроса на представление рисунка и сохраняет полученный запрашиваемый рисунок в буфере.

21. Система по п.18, в которой вычислительная система также выполнена с возможностью
определения, может ли запрос на представление рисунка быть выполнен с использованием аппаратных средств в режиме пониженного потребления энергии питания, и в ответ на определение, что запрос на представление рисунка может быть выполнен с помощью аппаратных средств, ассоциированных с запросом на представление рисунка, остающихся в режиме пониженного потребления энергии питания, сохраняет определенное состояние без выполнения запроса на представление рисунка.

22. Система по п.18, в которой вычислительная система также выполнена с возможностью запрашивать использование приложения, выполняемого центральным процессорным устройством, для выполнения представления рисунков с малой сложностью запроса на представление рисунка, независимо от подачи питания в аппаратные средства для обработки графических или видеоданных.



 

Похожие патенты:

Изобретение относится к устройству обработки изображений, которое выполняет процесс определения для отображения плоского изображения или стереоизображения. .

Изобретение относится к пользовательским интерфейсам для устройства цифровой видеозаписи и воспроизведения транслируемого медиа контента. .

Изобретение относится к вычислительной технике. .

Изобретение относится к устройству и способу обработки и отображения изображений. .

Изобретение относится к способам и форматам файлов для представления презентаций в составленной из компонентов прикладной программе презентаций. .

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

Изобретение относится к устройству обработки входных дискретизированных данных изображения для увеличения картинки в горизонтальном направлении. .

Изобретение относится к интерфейсам пользователя для мобильных устройств. .

Изобретение относится к способу замены устройства (1) управления, в частности неисправного и/или устаревшего устройства управления, в бортовой сети транспортного средства.

Изобретение относится к вычислительной технике. .

Изобретение относится к вычислительной технике. .

Изобретение относится к области обмена данными между генератором и потребителем. .

Изобретение относится к вычислительной технике. .

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

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

Изобретение относится к средствам создания распределенного приложения. .

Изобретение относится к области динамической компоновки программы на встроенной платформе. .

Изобретение относится к области загрузки компьютерных программ в доверенные вычислительные платформы

Изобретение относится к области планирования и резервирования системных ресурсов

Изобретение относится к средствам обработки информации
Наверх