新千葉 ガーベージ・コレクション

FPGA マガジンやインターフェースで書けなかったこと等をちょぼちょぼ書いてます。@ryos36

2016-02-01から1ヶ月間の記事一覧

USB と EHCI

EHCI の日本語資料が少ない。Intel の資料を見れば英語だけどだいたいわかるか。出版されている本ではなかなかそもそも USB の概略がわからない。一番良い資料は インタフェースの 2014 年の 12 月号の「USB 探偵団」なるものがわかりやすい。世の中で EHCI …

lua, pforth, gforth の VM を読む

よむったってすぐには読めません。 lua の場合 4.0 までがスタック型で 5.0 以降はレジスタ型の VM になった模様(未確認)。で初期のコードがやっぱり読みやすい。lua-1.0 あるいは lua-1.1 のソースを読むとわかりやすい。lua.stx (おそらくシンタックス) を…

スタック型のVM

コンパイラの結果をスタックマシン型の VM に落とすことを考える。JVM などでは iload なるものがある。きっと istore もある(あーあったあった)だから、スタックと"変数"への出し入れは自由なわけだ。a = b + cを考えると iload b iload c + istore aとか…

おれおれ tiny scheme もついに VM コード生成まで来た

この2か月の成果。なんとか fib をコンパイルして VM のコードに落とすことに成功。 (:JUMP |:MAIN|) MAIN (:LABEL |:MAIN|) EXIT (:LABEL |:EXIT|) |:EXIT| (:HALT :R0) |:MAIN| (:LABEL |:MAIN|) (:JUMP |:label0|) (:LIVE-REG 0 (1 1 1 1 1 0 0 0 0 0)) …

FORTH で SHA512 の動作確認

sha256> gforth Gforth 0.7.3, Copyright (C) 1995-2008 Free Software Foundation, Inc. Gforth comes with ABSOLUTELY NO WARRANTY; for details type `license' Type `bye' to exit s" SHA-384_512xxx.F" ok included Selection Menu: For SHA-384 enter …

vmgen とかスレッデッドコードとか

qiita に投稿した。vmgen で簡単なレジスタベースの VM を作る(2/2) - Qiitaqiita あれば blog いらねーんじゃないだろうか? つくった vm もダウンロードできるようにした。http://www.sinby.com/download/Hvala/hvm.tar.gzqiita にも書いたけど、64bit だ…

vmgen で VM つくる

CPS も大詰めだ。最後は VM をつくることになるわけだ。gcc までいくなら cgen というのがあって、特定の CPU の gcc をつくるのをサポートしてくれるようだ。まぁいまなら LLVM の方がいいのかもしれない。MeP や Epiphany の記述があって興味深い、、、が…