Xenia 35 19 октября, 2020 Опубликовано 19 октября, 2020 · Жалоба 1 час назад, jcxz сказал: А лучше - как у современных интелей throttling работает: пропуск части тактов CPU в зависимости от температуры. А эту FLASH_ACR_LATENCY можно на лету менять? А то в регистре FLASH_ACR для нее 4 бита выделено, вплоть до FLASH_ACR_LATENCY_15WS. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 19 октября, 2020 Опубликовано 19 октября, 2020 · Жалоба Можно, только смысл? DVFS прикрутить? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 34 19 октября, 2020 Опубликовано 19 октября, 2020 (изменено) · Жалоба 13 минут назад, aaarrr сказал: DVFS прикрутить? А какой смысл в нем? Чтоб грелся поменьше? В кортексах А серии это я понимаю, сам в свою прогу прикрутил, а здесь? Хотя, если греется, как утюг, то может и есть смысл... Изменено 19 октября, 2020 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 19 октября, 2020 Опубликовано 19 октября, 2020 · Жалоба 3 minutes ago, mantech said: А какой смысл в нем? Да мало ли там - батареек сэкономить, например. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 184 19 октября, 2020 Опубликовано 19 октября, 2020 · Жалоба 1 час назад, Xenia сказал: А эту FLASH_ACR_LATENCY можно на лету менять? Зачем? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Xenia 35 19 октября, 2020 Опубликовано 19 октября, 2020 · Жалоба 3 минуты назад, jcxz сказал: Зачем? Чтобы бороться с перегреванием, когда оно происходит. А зачем же еще? У меня, когда мотор у мясорубки перегревается, перехожу со скорости II на скорость I :). А здесь скорость менять нельзя (ибо все таймеры на эту скорость повязаны), а "интерлив" изменять не страшно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 184 19 октября, 2020 Опубликовано 19 октября, 2020 · Жалоба Только что, Xenia сказал: Чтобы бороться с перегреванием, когда оно происходит. А зачем же еще? А как это поможет? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Xenia 35 19 октября, 2020 Опубликовано 19 октября, 2020 · Жалоба Только что, jcxz сказал: А как это поможет? Реже станет инструкции выполнять - программа с меньшей скоростью станет выполняться. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 131 19 октября, 2020 Опубликовано 19 октября, 2020 · Жалоба 1 минуту назад, Xenia сказал: Реже станет инструкции выполнять - программа с меньшей скоростью станет выполняться. С учетом кэша инструкций и данных, а также буфера предвыборки - не станет... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Xenia 35 19 октября, 2020 Опубликовано 19 октября, 2020 · Жалоба 3 минуты назад, Arlleex сказал: С учетом кэша инструкций и данных, а также буфера предвыборки - не станет... А мы кэш тоже отключим - SCB_DisableICache(). Раз уж решено при перегреве тормозить, то используем все средства. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 184 19 октября, 2020 Опубликовано 19 октября, 2020 · Жалоба 2 минуты назад, Xenia сказал: А мы кэш тоже отключим. Раз уж решено при перегреве тормозить, то используем все средства. Ну это как-то через одно место. Извините мой французкий. Проще просто остановить на время (до остывания) все тяжёлые задачи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Xenia 35 19 октября, 2020 Опубликовано 19 октября, 2020 · Жалоба 2 минуты назад, jcxz сказал: Проще просто остановить на время (до остывания) все тяжёлые задачи. А как остановить на время? На HALT встать? Но тогда не узнаем, когда температура до нормы понизилась. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 131 19 октября, 2020 Опубликовано 19 октября, 2020 · Жалоба 2 минуты назад, Xenia сказал: А мы кэш тоже отключим. Раз уж решено при перегреве тормозить, то используем все средства. Думаю, достаточно будет снизить частоту CPU, не трогая частоты трактов периферии. Судя по схеме тактирования STM32H7, вроде, такое возможно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 19 октября, 2020 Опубликовано 19 октября, 2020 · Жалоба Just now, Xenia said: А мы кэш тоже отключим. Раз уж решено при перегреве тормозить, то используем все средства. Вообще, странный способ. Если процессору есть чем заняться, и он перегревается - надо решать вопрос с теплоотводом. Если ему нечем заняться - WFI. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 184 19 октября, 2020 Опубликовано 19 октября, 2020 · Жалоба 4 минуты назад, Xenia сказал: А как остановить на время? На HALT встать? Но тогда не узнаем, когда температура до нормы понизилась. В каком-нить ISR контролировать её (температуру) и когда стало припекать - дать Suspend() для тяжёлой задачи(задач). Когда остыли - Resume(). Гистерезис добавить по вкусу. PS: Хотя (если серьёзно), если МК типа Cortex-M перегревается, то тут надо смотреть в сторону разводки платы и конструктива корпуса. Имхо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться