jump and link 「31番」レジスタ($ra = リターンアドレス)に「PC+4」を格納しつつ、即値で与えられたアドレスにPCを切り替える。という命令 SCPの場合 http://meseec.ce.rit.edu/eecc550-winter2005/550-chapter5-exercises.pdf 上記のように、 RegDst と …
いま使用しているDE−10 Liteは残念ながらSRAMを装備しておらず [方法1]Qsys & System Consoleを使う Qsys > SDRAM Controller bit幅を16にする 「wire」を右クリックして「Exported」にする メニューの Generate > Show Instantiation Templateの結果をコ…
UART (8250, RS-232規格を満たしていればよい) 説明 https://en.wikibooks.org/wiki/Serial_Programming/8250_UART_Programming 実装例 https://github.com/varmil/uart-verilog https://www.nandland.com/vhdl/modules/module-uart-serial-port-rs232.html …
CPU受付完了時にassertするIACKピンの実装 We also want to have to ability to service external interrupts. This is useful if a device external to the processor needs attention. To do this, we'll add 2 pins to the processor. The first pin, cal…
0x7c00 はx86のBIOSがMBRを読み取って、物理メモリに展開するときの位置(仕様) 0x10000 はプログラム側でディスク読み取って、物理メモリに展開する際のdstアドレス。これはリンカスクリプトの設定と一致させればよい。 つまり、自作する際はリセットベク…
リンカスクリプトの OUTPUT_FORMAT("elf32-tradlittlemips", "elf32-tradlittlemips", "elf32-tradlittlemips") OUTPUT_ARCH(mips) ENTRY(_start) この _start はentry.Sに定義されている。 # By convention, the _start symbol specifies the ELF entry poi…
プロセッサ側とポートを合わせなきゃいけないものと、kernel(ソフト側)で好き勝手に決めればいいものの境界線を探っている。xv6-mipsで定義している mips.h static int io_port_base = 0xb4000000; これはなぜこのアドレスなのかわからない。inb outb で u…
memide.o Fake IDE disk; stores blocks in memory. Useful for running kernel without scratch disk. とあるとおり、Makefileでkernelをビルドする際にこいつを差し替えてる感じ。GAIAのをみるとわかるように実機で動かす場合はちょっと面倒な処理が必要か…
KSEG0, 1におけるマッピングはハードとkernelがどう連携しているのか調査した。結論としては、ハード側でTLBにVirtualAddressを渡す前にチェック 例1) pc(virtual address)の上位2 or 3bitが 100 : KSEG0 (2.0G - 2.5G) 101 : KSEG1 (2.5G - 3.0G) 11 : K…
SRAM GAIAで使ってる基盤は4MB(222)のSRAMを積んでる。 rom.vhd は実際には sram.vhd をラップしてるに過ぎず、いわゆるDRAMは一切使用していない。(BlockRamというのもSRAMの一種らしい?) sram.vhdの中では、入ってきたアドレスの上位10bitは見ておらず…
xv6_translate/chapter1.md at master · msyksphinz/xv6_translate · GitHub original UNIX v6 ROMに保存されているブートストラップローダプログラムが、ルートディスクのブロック番号0にあるブートストラッププログラムをメモリのアドレス0に読み込んで…
そもそもどのタイミングでプログラムがロードされるのか(xv6カーネルから) そして、Data MemoryとProgram Memoryをどうやって区別しているのか(See Mips Run) See MIPS Run - Dominic Sweetman - Google ブックス D-Cacheにまずプログラムが読み込まれて…
QEMUで実行できる形に最適化されているので、実機(FPGA)で動作させる場合はコードの手直しが必要かもしれない。 xv6.img, fs.img QEMUで実行する際に qemu-nox: fs.img xv6.img $(QEMU) -nographic $(QEMUOPTS) となるが、これは下記のようなコマンドとし…
JTAG-UARTってDE10-Lite+MIPS+xv6で使えるのか。使えなかったらシリアルポート付きFPGAを購入する必要あり? http://blog.goo.ne.jp/sim00/e/236d685cc29873571051270075449cac Nios II/eでHello, world! (Quartus IIとQsys) - FPGAがさっぱり分からない…
inb, outb ◆入出力の方法 CPU が持つ入出力命令を使うもの。 どのデバイスをアクセスするかは、ポート番号で指定する。 通常のメモリアクセスの命令を使うもの(memory mapped I/O)。 どのデバイスをアクセスするかは、番地で指定する。 x86ではポートマップ…
MIPS/LinuxがDE-10 Liteで動くかという問題 出力: VGA, 2*20GPIO(SerialPortがないけど大丈夫?...MIPS/Linuxって標準でどこへ出力すんの?) メモリ: 1,638 Kbit M9K Memory 5,888 Kbits user flash memory(こっちにブートローダとかカーネルイメージ…
とりあえず、既存のMIPS CPUリポジトリを使ってFPGA実機でLinux動作させようと思ったが... Q. そもそも、LinuxカーネルイメージをFPGA(上のMIPS CPU)に転送しても、どうやって起動(or インストール)するのだろう? A1. ブートローダが鍵になるっぽい。 x…
stackoverflow.com
blog.ginbear.com
プログラミング言語を作る/yaccとlex 言語処理系とは http://www.hpcs.cs.tsukuba.ac.jp/~msato/lecture-note/comp2002/1/lecture1.pdf Bison - Wikipedia
scikit-learnを使って勉強中 github.com
answers.unity3d.com FBXの設定でGenerate Lightmap UVsにチェックを入れよう
developers.cyberagent.co.jp
ブルーム、SSAO、被写界深度を持ったコーネルボックス 描画領域を720pにしてぎりぎり30fps出るかどうか。
speakerdeck.com
画像ソートとかに使える github.com github.com 検索クエリ javascript drag and drop sort
github.com なるものがあるが、内部で RecordRTC というライブラリに依存しており、それがsafariをサポートしていない。ChromeとFireFoxのみのサポートだ。 Video Not working in safari · Issue #56 · muaz-khan/RecordRTC · GitHub ブラウザ内で動画撮影さ…
github.com github.com github.com HLS Http Live Streaming。つまり、くそでかい動画ファイルをちょっとずつクライアントに垂れ流すストリーミング配信がHTTPプロトコルで実現できる技術。必要に応じて使ったほうがいいかも。 dev.classmethod.jp
developers.facebook.com ウェブ上のアクセストークンの寿命は、多くの場合、約2時間ですが、必要に応じて自動的に更新されます。特にサーバー側でより長期的なウェブアプリ用のアクセストークンを使用する必要がある場合、長期トークンを生成する必要があり…
mysqldump Export ↓ レコード削除 ↓ Alterテーブルでカラム追加する ↓ Import エラーなくImportできた。 # Export docker exec -i docker_mariadb_1 mysqldump -uroot <DB Name> > ./01221441.sql # Import docker exec -i docker_mariadb_1 mysql -uroot <DB Name> < ./012214</db></db>…