MT7620 Overclocking 620MHz
2021年6月20日(日) 00:25 JST
閲覧数 1,357
MT7620AのOverclockingについて、
今更感もあるのですが、自分のメモ程度に
実機で試した結果、確かに620MHzまでOverclockingできました。
Linux上でも認識できています。(クロックの指定自体は、u-bootで行います。)
勿論、発熱等に影響は出ているはずなので、あくまで遊び前提ですが。
MT7620AのOverclockingといえば、解りやすい情報がありました。
https://www.right.com.cn/forum/thread-213360-1-1.html
確かに、昔700MHzで動かしたとかいう謎情報を見た記憶があります。
しかし、やはり700MHzは物理クロックを変えるとかしないと実現されない気がします。
MT7620 PROGRAMMING GUIDE はネットで検索すると簡単に見つかるので情報には困らない。
英語のpdfが見つかるので、そっちを見たほうが解りやすい気もします。
見る箇所は、
CPLL_CFG0: CPU PLL Configuration 0 (offset: 0x0054) のPLL_MULT_RATIO (24 ~ 31) と PLL_DIV_RATIO (2, 3, 4, 8) です。
PLL_MULT_RATIO でそれぞれ対応する周波数は、960~1240MHzに対応する形になり、
ここから、PLL_DIV_RATIO で割る事になるので、PLL_DIV_RATIO の一番小さい 2 の時が1番高いクロックを得られる訳で、620MHzが最高クロックとなる。(通常580MHzなので、6%程度は性能向上が期待できるかもしれない。
BogoMIPS値的には、合っている。
Fvco: 40MHz * (24 ~ 31) = 960MHz/1000MHz/1040MHz/1080MHz/1120MHz/1160MHz/1200MHz/1240MHz
Fout: Fvco / 2 = 480MHz/500MHz/520MHz/540MHz/560MHz/580MHz/600MHz/620MHz
PLL_MULT_RATIO の 31 はドキュメント上は Testing になっているので、機能するか危惧したが、まったく簡単に動作した。
Overclockingして使う事はあまり無い気はするが、それぞれのBogoMIPS値のメモを残しておく。
Underclockingも出来るはずなので、MT7688 (LinkIt 7688) とかなら、クロック下げて利用するのもありなのかもしれない。
とか考えなくもないけど、今更ここまでMT7620やMT7688に手間を掛けるのもなぁ感は存在する。
手元に遊べるデバイスがあるので、僕自身にはメリットはあるのだけれど、世の人達にメリットのあるものでは既にないよなぁ。。。
今更感もあるのですが、自分のメモ程度に
実機で試した結果、確かに620MHzまでOverclockingできました。
Linux上でも認識できています。(クロックの指定自体は、u-bootで行います。)
[ 0.000000] CPU Clock: 620MHz [ 0.000000] systick: running - mult: 214748, shift: 32 [ 0.010000] Calibrating delay loop... 412.87 BogoMIPS (lpj=2064384)通常の580MHzでは、385.84 BogoMIPSだったので、効果は出ている様です。
勿論、発熱等に影響は出ているはずなので、あくまで遊び前提ですが。
MT7620AのOverclockingといえば、解りやすい情報がありました。
https://www.right.com.cn/forum/thread-213360-1-1.html
確かに、昔700MHzで動かしたとかいう謎情報を見た記憶があります。
しかし、やはり700MHzは物理クロックを変えるとかしないと実現されない気がします。
MT7620 PROGRAMMING GUIDE はネットで検索すると簡単に見つかるので情報には困らない。
英語のpdfが見つかるので、そっちを見たほうが解りやすい気もします。
見る箇所は、
CPLL_CFG0: CPU PLL Configuration 0 (offset: 0x0054) のPLL_MULT_RATIO (24 ~ 31) と PLL_DIV_RATIO (2, 3, 4, 8) です。
PLL_MULT_RATIO でそれぞれ対応する周波数は、960~1240MHzに対応する形になり、
ここから、PLL_DIV_RATIO で割る事になるので、PLL_DIV_RATIO の一番小さい 2 の時が1番高いクロックを得られる訳で、620MHzが最高クロックとなる。(通常580MHzなので、6%程度は性能向上が期待できるかもしれない。
BogoMIPS値的には、合っている。
Fvco: 40MHz * (24 ~ 31) = 960MHz/1000MHz/1040MHz/1080MHz/1120MHz/1160MHz/1200MHz/1240MHz
Fout: Fvco / 2 = 480MHz/500MHz/520MHz/540MHz/560MHz/580MHz/600MHz/620MHz
PLL_MULT_RATIO の 31 はドキュメント上は Testing になっているので、機能するか危惧したが、まったく簡単に動作した。
Overclockingして使う事はあまり無い気はするが、それぞれのBogoMIPS値のメモを残しておく。
[ 0.000000] CPU Clock: 580MHz [ 0.000000] systick: running - mult: 214748, shift: 32 [ 0.010000] Calibrating delay loop... 385.84 BogoMIPS (lpj=1929216)
[ 0.000000] CPU Clock: 600MHz [ 0.000000] systick: running - mult: 214748, shift: 32 [ 0.010000] Calibrating delay loop... 398.13 BogoMIPS (lpj=1990656)
[ 0.000000] CPU Clock: 620MHz [ 0.000000] systick: running - mult: 214748, shift: 32 [ 0.010000] Calibrating delay loop... 412.87 BogoMIPS (lpj=2064384)
Underclockingも出来るはずなので、MT7688 (LinkIt 7688) とかなら、クロック下げて利用するのもありなのかもしれない。
とか考えなくもないけど、今更ここまでMT7620やMT7688に手間を掛けるのもなぁ感は存在する。
手元に遊べるデバイスがあるので、僕自身にはメリットはあるのだけれど、世の人達にメリットのあるものでは既にないよなぁ。。。