Что такое PVTM? Или почему ваш процессор Rockchip RK3588 может не достигать частоты 2,4 ГГц

Хотя заявлено, что процессор Rockchip RK3588 достигает 2,4 ГГц, не все чипы RK3588 могут достигать этой частоты. Ключевое слово — PVTM (Process-Voltage-Temperature Monitor), и мы попытаемся объяснить, почему это происходит и почему некоторые процессоры RK3588 могут работать только на частоте около 2,3 ГГц, а другие нормально работают на частоте 2,4 ГГц.

Все началось с Rock 5B SBC, где мы заметили, что наши платы не достигают одинаковой частоты. Вилли Тарро отметил, что значение «pvtm» у наших плат различалось:

  • Плата Вилли: (кластер 1 Cortex-A76 с частотой 2304 МГц, кластер 2 с частотой 2352 МГц)
  • Плата CNXSoft (кластер 1 Cortex-A76 с частотой 2304 МГц, кластер 2 с частотой 2304 МГц):
  • Плата Томаса Кайзера (tkaiser): (кластер 1 Cortex-A76 с частотой 2400 МГц, кластер 2 с частотой 2400 МГц)

Для справки: ЦП с 0 по 3 — это ядра Cortex-A55, ЦП 4-5 — два ядра Cortex-A76 (кластер 1), а ЦП 6-7 — два ядра Cortex-A76 (кластер 2). Частоты, указанные выше, представляют собой операционную точку производительности (OPP), сообщаемую ядром, но фактическая измеренная частота в сценарии SBC-Bench.sh может отличаться:

  • Плата CNXSoft:
  • Плата Томаса

Что действительно странно, так это то, что у нас разные частоты OPP. У Томаса, ядра Cortex-A76 настроены на 2400 МГц, но при измерении достигли только на 2348 МГц. Это все же лучше, чем 2304 и 2298 МГц, измеренные в нашей системе.

Посмотрим, сможем ли мы найти более подробную информацию о pvtm в Rockchip RK3588 TRM (и SDK). И, действительно, эту информацию можно найти в главе 17, озаглавленной «Монитор технологического напряжения и температуры (PVTM)» TRM Part 2.

Блок-схема PVTM с интерфейсом подчиненного устройства apb_slv APB с шириной шины 32 бита и механизмом PVTM

Как описано в техническом справочном руководстве:

Монитор технологического напряжения и температуры (PVM) используется для контроля отклонений производительности чипа, вызванных технологическим процессом, напряжением и температурой чипа.
PVTM поддерживает следующие функции:

  • Кольцо тактовых колебаний интегрировано и используется для генерации сигнала, подобного тактовому, частота этого тактового сигнала определяется значением задержки ячейки схемы кольца тактовых колебаний.
  • Логика вычисления используется для измерения частоты кольца тактовых колебаний.
  • Поддерживаются следующие блоки PVTM:
    • BIGCORE0_PVTM, используется рядом с A76_0/1
    • BIGCORE1_PVTM, используется рядом с A76_2/3
    • LITCORE_PVTM, используется рядом с DSU и A55_0/1/2/3
    • NPU_PVTM, используется рядом с NPU
    • GPU_PVTM, используется рядом с GPU
    • PMU_PVTM, используется рядом с PMU

Таким образом, это означает, что PVTM влияет не только на частоты трех кластеров ЦП (1x Cortex-A55 и 2x Cortex-A76), но также на частоты GPU и NPU, в то время как для PMU он, по-видимому, используется для режимов с низким энергопотреблением в качестве альтернативы источнику тактовой частоты 32 кГц. В документации также поясняется, что существует два метода расчета (ручной и автоматический):

Тактовый сигнал генерируется кольцом колебаний, а тактовый сигнал с фиксированной частотой clk_pwm используется для вычисления циклов тактового сигнала. Предположим, что период времени равен 1 с, тогда тактовый период тактового сигнала кольца колебаний равен T= 1/clock_counter(s), значение задержки ячейки равно T/2.
В ручном режиме пользователь может получить только один результат вычисления частоты.
Для автоматического режима пользователь может установить время вычисления и получить максимальную, минимальную и среднюю частоту во время вычисления. Он также поддерживает генерацию прерывания, когда минимальная или средняя частота ниже порогового значения. Пороговое значение может быть настроено.

Каждый чип будет немного отличаться во время производства, и некоторые из них могут достигать 2,4 ГГц, а другие нет. Температура в помещении также может влиять на производительность. Мы живем на севере Таиланда, и наша комнатная температура обычно составляет около 28° C, поэтому не исключено, что наша плата может достигать 2, 4 ГГц зимой (около 20 ° C утром), но ограничена примерно 2, 3. ГГц до конца года…

PVTM, вероятно, используется в сочетании с PVTPLL (глава 18), который «используется для контроля отклонений производительности микросхемы, вызванных технологическим процессом, напряжением и температурой, и генерирует набор опорных сигналов для регулировки напряжения микросхемы.

Нам также хотелось бы проверить RK3588 Linux SDK на Gitlab, но мы только на днях запросили доступ у Rockchip, так что нам придется подождать. PVTM — не новинка, и нам удалось найти патч, представленный в mainline Linux в 2018 году для процессора RK3288, что мы только сейчас заметили. В документации драйвера Rockchip для Linux CPUFreq также упоминается PVTM и то, как он присваивает значения OPP:

Драйвер Rockchip CPUFreq пытается прочитать значение утечки из eFuse и получить подсчет частоты из pvtm, а затем предоставляет платформе OPP информацию «prop», которая используется для определения свойства opp-microvolt-<имя> OPPS при его анализе инфраструктурой OPP. Это основано на операционных точках-v2, но драйвер также может создать «cpufreq-dt» platform_device для совместимости с рабочими точками.

Компании иногда создают новые номера деталей для чипов с той же функциональностью, но с разными частотами, и Rockchip сделала это для RK3399K с частотой 2,0 ГГц, RK3399 с частотой 1,8 ГГц и RK3399-T с частотой 1,5 ГГц, но небольшие различия, которые мы наблюдаем между процессорами Rockchip RK3588, вероятно, не оправдывали именования новой части, или оно может появиться позже.

Выражаем свою благодарность источнику из которого взята и переведена статья, сайту cnx-software.com.

Оригинал статьи вы можете прочитать здесь.

0 0 vote
Article Rating
Подписаться
Уведомление о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

0 Комментарий
Inline Feedbacks
View all comments