091009

|



やっといいプラグキャップみつけた。30700-KM9-163。ちょっと部番の変更はあ
るけれど、89,90RS125Rのプラグキャップ。このパッケージということは現行だ。



PTELのビットについてまとめておこう。

----------------------------------------------------------------------
 SH4
	 PPN    V  SZ  PR  SZ C  D  SH WT
	[28:10][8][7][6:5][4][3][2][1][0]ハードウェアビット
    [31]				 ソフトウェアビット(NetBSD)
  sw-wired
----------------------------------------------------------------------
 SH4 PCMCIA
 	 PPN    V  SZ  PR  SZ C  D  SH WT
 	[28:10] [8][7][6:5][4][3][2][1][0]ハードウェアビット
    [31]   [11:9]			  ソフトウェアビット(NetBSD)
  sw-wired sw-pcmcia
----------------------------------------------------------------------
 SH4A 32ビットアドレス拡張モード, TLB互換モード。
 	 PPN   UB  V  SZ  PR  SZ C  D  SH WT
	[31:10][9][8][7][6:5][4][3][2][1][0]
UBビットは29ビットアドレスモードではPASCR[6:0]で指定されていたものが
ページ毎の設定となる。
----------------------------------------------------------------------
 SH4A 32ビットアドレス拡張モード、TLB拡張モード
 	 PPN   UB  V  C  D  SH WT
	[31:10][9][8][3][2][1][0]	ページサイズ、保護はPTEAで設定。

 SH4A 32ビットアドレス拡張モード, TLB互換モードにすると、リザーブのビッ
トは一切ない。

オリジナルのsh3のpmapの実装ではソフトウェアビットは全てvm_page扱いにし
てたのだけど...。大体こんな感じでいずれ破綻するので基本的にはリザーブの
ビットは使わない方がいいんだ。

色々考えてみよう。OSのデフォルトページャは固定したページサイズでいいだ
ろう。そのページャの扱うページは全て同じサイズを強制することで見通しが
よくなる。

それ以外のサイズのページが欲しい時がある。例えばフレームバッファをアド
レス変換して登録したいとか。この時、KB単位のページでマップしていたらキ
リがない。そして、画面表示のためだけにTLBが埋めつくされてしまう。

こういう時はワイヤードエントリで直接TLBに登録して、ページャの管轄外にし
よう。デバイスのページならば共通ページでいいし、ワイヤードであるのも好
ましい。しかしユーザ空間へのマップは無理だ。これは仕方ない。

キャッシュについても、ページャ管轄のページはキャッシュするか、しないか
の二択で、ページごとにライトスルーかライトバックを指定することもない。

となると、ページサイズとライトスルーの設定のビットは、ページャ管轄のペー
ジに限っては固定になる。

乗り気はしないけれど、押し込むことは可能か。個人的にはページテーブルエ
ントリはptel用とptea用をそれぞれ別にとって計64bitにするのがいいと思うけれど。

ちゅっと寝て、岡山に出発です。豊田Jct.で伊勢湾岸道。四日市Jct.で亀山の 方に。亀山Jct.で新名神だな。カーナビはないので、きっちり覚えておかないと。