2011-12

計算機科学

プログラミング言語におけるマクロ

C言語の弱い部分はプリプロセッサである。#if しかないが、せめて FOR文 ぐらい書けてくれ。他にも FOPENして FSCAN して、ファイルの中身を配列初期値にしたり、三角関数や指数関数でループを回りながらテーブル初期値を算出したりし...
FPGA

組み込み屋の為のVerilog入門 その4

前のブログで、RTL用のOS-APIを含んだ言語(という本物の意味でのシリコンOS)の構想を書いてみたが、その前に既存言語の難しさ(課題)、を整理しておくのはVerilog入門としても有意義そうなので書いておく。ソフト屋がVerilogをや...
HOS(RealTime-OS)

本物のシリコンOS

HOSの続編として本物のシリコンOSを考え中である。大雑把にコンセプトだけ書いておく。 あくまでイメージのデフォルメだが、ITRON-APIのようなものを用いてモジュール間同期する、ハードウェア記述言語を考えている。ブログにあまり壮大な例を...
FPGA

FPGAの得手不得手な計算

演算性能の観点であたらためてFPGAの向き不向きを考察しておこうと思う。まず、弱い部分の比較。CPUやGPUがもっとも基本的に得意とする浮動小数点でのFLOPS観点で比較してみる。現在、数万円程度のGPGPUのチップで1TFLOPSが買える...
FPGA

ISEの日本語フォント設定

知り合いに教えてもらった方法なのだが、とても有意義だったのでここにさらしておく。XILINXのISEは日本語フォントを設定しても覚えてくれない(再起動すると戻ってしまう)。別に日本語はどうでもいいのだが、固定長でないプロポーショナルフォント...
FPGA

組み込み屋の為のVerilog入門 その3

しつこくも その3である。入門というか、私がやり始めたころの嵌りネタ特集と化している。VerilogはC言語と文法が近く、C言語からの転向組みにはまあやさしいといえばやさしい。で、CにあってVerilogで弱いもの。キャストである。32bi...
計算機科学

プロセッサはこの先どう進化するのか?

多少の鈍りはあるものの、半導体業界でのムーアの法則は未だに健在である。 しかしながらプロセッサの進化速度はポラックの法則その他に縛られいろいろとあらぬ方向に舵を切っている。 近年目立つ変化といえば、プロセッサ単体での性能進化が急激に鈍り、マ...
FPGA

FPGAはチューリングマシンか?

前のブログで、「Verilogはチューリング完全な言語だ」と述べた。言語としてはまさしくそのとおりである。ではFPGAはチューリングマシンか?昨今のFPGAは一番小さいものであってもCPUぐらい簡単に焼きこめるサイズがある。そういう意味でで...
FPGA

組み込み屋の為のVerilog入門 その2

組み込み屋は必要とあれば、もともとGPIOなどポート制御でなんでもやってしまう。そういった意味で、クロック単位で自在に入出力を制御するコードをかけてしまうFPGAのRTL設計は非常に強力なツールだ。そもそもVerilogなどの言語もチューリ...
FPGA

組み込み屋の為のVerilog入門

従来、マンコンを載せたボードを作って云々といった、いわゆる組み込み屋にとって、FPGAがマイコンの領域をどんどん置き換えてきているのは、肌身に感じている人は多いのではないだろうか? 今後まだまだこの流れが続くであろうし、その根拠となるトレン...