2012-08-01から1ヶ月間の記事一覧

memory class

C++

シミュレーションをするためのクラスを再度作成。address, data の幅を可変にするためにテンプレートを使用する。その他外部との配線の prefix をかえたり、 protected メンバにする。 template <typename datarange, typename addressrange> class SimROM : public sc_module { protected: datarange *c</typename>…

SystemC のビルド

SystemC はハードウェアを C++ で実装したもので、ソフトウェアロジックとの高い親和性が期待できるものと解釈している。SystemC 自体はライブラリでスタティックライブラリとユーザーが書いた C++ のコードをビルドして、実行バイナリからシミュレーション…

Verilator のビルド

http://www.veripool.org/wiki/verilator/Installingダウンロード, 伸張, cd verilator-3.840; ./configure から。 /bin/flex -d -oV3Lexer_pregen.yy.cpp ../verilog.l /bin/perl ../flexfix V3Lexer V3Lexer.yy.cpp g++ -I/usr/local/include -MMD -I. -I.…

古いからの Mingw / Msys のアップデート

以前やりかけた Verilator のインストールをきっちりやりなおす準備。 Mingw 自体は2年に1回ぐらい取り替えているので問題ないのだが、 msys 自体はアップデートした記憶が無くファイルの日付をみたら 2004 年になっていた。一応 mingw の古いやつも部分的に…

68000 series hardware memo その2

BGACK 関連 BR->BG->BGACK を使う3線方式と、 BR->BG を使う2線方式が初代68000から使用可能。単純に3線方式利用不可能となっただけだった。 Bus Request と HALT 共にバスが止められるので DMA コントローラを動かすことが出来る。バスが止まったときに HiZ…

68000 series hardware memo

データシートから読み取れたものを書いておく。68008 系は使わないので省く。正式な仕様は Freescale 社から提供されるデータシートを見ること。負論理表記は面倒なので省略した。(昨夜書いた分はオートベクタとユーザーベクタを間違えていました。恥ずかし…

MAXII CPLD memo

100pin TQFP の EPM240,EPM570 を共用する場合、 37,90pin に GND を接続する。このため未使用ピンは内部プルアップ付き入力端子にすべきである。 # EPM240 EPM570 - 37 IO GNDINT 90 IO GNDINT digikey では EPM240T100 の単価が 522円, EPM570T100 の単価…