春休み 3/20 18:52
みなさまいかがお過ごしでしょうか
しばらく休み、疲れも癒えたことと思います。
今後レイトレ完全動作のために必要なこと、
など、考えていることを記します。
ハードウェア係はとにかくCPUを書く、
そしてデバッグするということに尽きると思います。
そこでソフトウェア側からのサポートとして、
ソフトウェアによるデバッグ環境の整備、
コンパイラ、アセンブラ、シミュレータの使用方法の伝達が必要と考えています。
つきましては、明日の午後、地下にてそれらの作業を行いたいと思います。
↓の変更を受けて、命令セットにlws,sws命令追加
lw,sw命令においてベースレジスタがsp(r16)の場合は、lws,sws命令とする。即値の減算でアドレス計算をする。こうすることにより、lw,lws,sw,sws命令のいずれにおいても、即値部は必ず正の数となる。
FPU命令の追加
fabs(111010) $rd,$rs |
rd = abs(rs) |
fiszero $rd, $rs(111001) |
if rs = 0 then $rd = 1(0x1) else $rd = 0(0x0) |
fispos $rd, $rs(111000) |
if rs >= 0 then $rd = 1(0x1) else $rd = 0(0x0) |
fisneg $rd, $rs(111011) |
if rs < 0 then $rd = 1(0x1) else $rd = 0(0x0) |
fless $rd, $rs, $rt(111100) |
if rs < rt then $rd = 1(0x1) else $rd = 0(0x0) |
setl $rd(31-26), label(25-0) (000011) |
$rd = label |
ライブラリ完成 3/10 17:57
sqrtの実装が完了
print_int,print_char,read_int,read_floatに関しては、
PPM(画像データ)の出力をバイナリで行うことでprint_byte,read_word以外は不要になりました。
out命令の変更 3/05 1:40
out命令をByte出力用のoutb、4Byte(Word)出力用のoutwに分けました。
命令セット一部変更 2/27 22:26
ジャンプ命令において、
ジャンプ先がラベルである場合と、レジスタの内容である場合があるので、
今まで j, jal 命令であったものを、
j rs |
pc = rs |
jl label |
pc = label |
jal rs |
pc = rs |
jall label |
pc = label |
の4命令に分割しました。
またjr命令の引数を無しとしました。
では
とりあえずソースとかをアップするための
UPLOADERとしてでも使ってください。
うぷろだ
全員分のページを用意しときました。
こんなことやったよ~とか、
いついるよ~とか書いたらいいかな~と思いまして。
なので、適当に書き換えといてください。
wikiについての要望は森口に伝えてくれれば何とかします。
今後の予定
関数呼出規約の制定
SRAM,USBを月曜までにできるといいな。
発表資料作成
SPIM MIPS simulator
最終更新:2007年03月20日 18:54