« September 2007 | Main | November 2007 »

2007.10.31

Higher-Order Perlは面白い!

Higher-Order Perl、Chapter2に入りました。

VERBOSITY 8
CHDIR /usr/local/app

のように文字列が並んでいる設定ファイルを読み込む話。一行ずつ読み込んで、splitしてまでは同じ。
普通にif elsifを並べるのではなく、

$dispatch_table =
{ CHDIR => \&change_dir,
  LOG_FILE => \&open_log_file,
  VERBOSITY => \&set_verbosity
}
というような、コマンドと飛び先のテーブルを作ると良いという話。関数のポインター並べて、テーブルジャンプは組み込みプログラマなら良くやる処理。割り込みベクタとか、テーブルジャンプそのものだし。

同じ事をPerlでやると俄然面白くなる。テーブルは変数なので、DEFINEが出てきたら以降の文字列を置き換える、といった処理も追加可能。新しい命令を作る命令なんかを定義しても、テーブルに追加するだけ。これはすごい。テーブルでジャンプと、ジャンプ先の書き換えくらいは思いつくが、テーブルを拡張するという発想は無かった。Cプログラマから見て凄いと思うのが、設定ファイルの中に処理系が理解できるコードを書くと、文字列として受け取ってそのままeval出来ること。もちろん、加工してevalもできる。設定ファイルが簡易処理系になるんだ。こうやって、でぃえすえるって奴ができるのか。

SICPでも同じようなことやっているんだけど、SICPはどうしても処理系引きこもりになりがちだったのに対し、この本は操作の対象がディレクトリ、HTML、設定ファイルと実践的なのが良い。SICPで学んだ事をどう使うかって事が書いてある。

最初の50ページを読んで、絶賛ベタ褒め中。

| | Comments (2) | TrackBack (0)

今日の日記

・Boost
boost/filesystemは、ディレクトリのサイズを求めようとするとcore dumpする(cygwin環境)。意図しないでcoreをはく言語も少数派の気がしてきた。バイナリだけ入れないで、配布ファイル一式ゲットして、自分でコンパイルした方が良い。1.33、1.34、TR2で微妙に違っていたりするので、GoogleやBoost本で当たりをつけた後は、配布ファイルに含まれるドキュメントを調べた方が良い。

・SystemC → Verilog変換ツール
Claude of SweetCafeを発見。応援中。

・LL
Perlってのは関数の引数が一つのリストになって渡される。これは素直に受け入れた方が良いと思う。ハッシュのリファレンスとか組み合わせて、データ構造を作れるけどどうも無理している感があるし、自分で書いてもよく分からない。何でもかんでも、フラットなリストでデータをやりとりすることを前提にして、プログラムを組んだ方が素直に書けると思った。リファレンスはピンポイントで。
そんなことはさておき、Pythonだ。これをハードの人に勧めるのは難しい気がする。Perlのfor(;;)の構文は、Cしか知らない人間には凄く分かりやすい。

・itojunさん
僕にとっては雲の上の人なんだけど、少年(?)は荒野を目指すは何回も読みました。
僕がFreeBSDにさわったときに、すでに当たり前のような存在感がありましたが、意外に年齢が近かったのだなと驚きました。

| | Comments (0) | TrackBack (0)

2007.10.30

C++でdirectory walking

Higher-Order-Perlから

ディレクトリを再帰的に降りていき、コールバック関数を呼び出す。
Boost::filesystemとboost::functionの合わせ技でOK。

#include <iostream>
#include <functional>
#include <algorithm>

#include <boost/function.hpp>
#include <boost/filesystem/operations.hpp>

using namespace boost;
using namespace boost::filesystem;

void dir_walk(const path& top, function<void (const path& )> f) {
 directory_iterator end;
 
for(directory_iterator it(top);it != end;++it) {
  path p = *it;
  f(p);  
//call back functionの呼び出し(表示)
  if(is_directory (p)) {  //dirctoryなら再帰呼び出し
   dir_walk(p, f);
  }
 }
}

void print_dir(const path& p) {
 std::cout << p.string() << std::endl;
}

void print_size(const path& p) {
 
if(!is_directory(p)) {
  std::cout << file_size(p) << 
"  ";
 } 
 std::cout << p.string() << std::endl;
}

int main(void)
{

 function<void (const path& path)> f;
 
// f = &print_dir;  
 f = &print_size;

 path dir(".");
 dir_walk(dir, f);

 return 0;
}

rambdaとかbindとかも挑戦したけど駄目だった。for文は、for_eachにしたいんだけどなぁ。出来る人はできるんだろう。

とりあえず、Perlでも、Pythonでも出来た。ていうか、一冊の本を3つの言語でやっていくのは効率が悪い気がした。

| | Comments (0) | TrackBack (0)

今日の日記

Blogメモに貯まり続けるネタを放置しながら、日記ばっかり。

・Pythonの本買ってきた
 オライリーの初めてのPythonと、Pythonチュートリアルの2冊。
 変数の扱いがLispっぽい。ライブラリのバランスが良い。
 (ネタとしての)「永久凍土」が好き。

 まともなoutputが出せない言語オタク一直線だな。

・ラノベ買ってきた
 とある魔術の禁書目録 SS、タバサの冒険2、とらドラスピンオフ

・もっとkwsk!
にわか鍵ヲタだった昔


・オブジェクト指向
 Pythonの本を読んでいて気がついたこと。
 オブジェクト指向って無理して使わなくても良い。Pythonのオブジェクト指向の為の機能を見ていて、アクセス制限とか無い事に驚く。こんなルーズで良いのか?僕は昨日までオブジェクト指向について構えすぎていたと思う。あんまんの人に言われたことが、少し分かった今日この頃。

| | Comments (0) | TrackBack (0)

C++でcallback

Higher-Order Perlにでてきたハノイの塔をC++で書いてみた。

#include <iostream>
#include <string>
#include <functional>
#include <boost/bind.hpp>
#include <boost/function.hpp>

using namespace boost;

class peg {
public:
  
explicit peg(const std::string& name) : name(name){  }
  
const std::string name;
};


void print_move(int disk, const peg& start, const peg& end);
void hanoi(int n, const peg& start, const peg& end, const peg& extra, function<void (intconst peg&, const peg&)> f);

int main(void)
{
  
//call back function
  function<void (intconst peg&, const peg&)> f;
  f = &print_move;

  hanoi(3, peg("A"), peg("C"), peg("B"), f);

  return 0;
}

void print_move(int disk, const peg& start, const peg& end){
  std::cout << 
"Move disk #" << disk << " from " << start.name << " to " << end.name << std::endl;
}

void hanoi(int n, const peg& start, const peg& end, const peg& extra, function<void (intconst peg&, const peg&)> f)
{
  
if(n==1) {
    f(n , start, end);
  } 
else {
    hanoi(n-1, start, extra, end, f);
    f(n, start, end);
    hanoi(n-1, extra, end, start, f);
  }
}

動かしてみる。

YUKI.N>./kati.pl
g++ -c -I/usr/include/boost-1_33_1 -g -W -Wall -ansi -pedantic hanoi.cpp
g++ -o hanoi hanoi.o -I/usr/include/boost-1_33_1 -g -W -Wall -ansi -pedantic
YUKI.N>./hanoi.exe
Move disk #1 from A to C
Move disk #2 from A to B
Move disk #1 from C to B
Move disk #3 from A to C
Move disk #1 from B to A
Move disk #2 from B to C
Move disk #1 from A to C


C++でcallbackは出来るようになった。

| | Comments (1) | TrackBack (0)

2007.10.29

自分に教わる

gcc使っていて、multiple types in one declaration のエラーが出てはまる。
こんな時こそ、googleだと思って検索したトップ。

全然、成長していない。orz

| | Comments (2) | TrackBack (0)

2007.10.27

今日の危機一髪

C++とかPerlの便利なところは、配列/文字列の大きさを意識しなくて良くて、+とかで簡単に連結できること。Perlは、typedefとプロトタイプの組み合わせが無いと不安になるのと、よく似た仕組みじゃなくて構造体が欲しかったり。mapとか無理して使わなくてもいけるよな。Cだったら簡単に構造体書いて済むところが、C++だとクラスになって、コンストラクタとか書かないといけないきがして、いっつも嫌になる。結局あれだ。今の僕にとってC++でvectorとstringだけ使うというのが一番生産性が高い気がする。でも、満足したらそこで終わり。

なんてことを真剣に考えながらトイレに行く。ズボンを下ろす。しゃがむ。なんか違う。
パンツ下ろしてない!

あぶなかった。

| | Comments (2) | TrackBack (0)

今日の日記

・R.O.D 10巻、ゼロの使い魔12巻:これはひどい

ウィキノミクス
参考になったような、ならんかったような。結局オープンソースで得をするのは消耗戦に持ち込んでも戦える大企業のみという気がした。炭坑の例は、自暴自棄感が強いし。使うだけじゃなくて、自らオープソース化を選んで大企業を打ち負かすなんて無理だ。成功しても、大企業に吸収されるだけ。政府の代わりにのオープンソースの力を使うのは面白かった。今までのボランティアベースはそのままで、手法だけ変えると凄い効果があるということ。高校くらいまでなら、数学、物理の問題って、生徒毎に自動生成、自動採点出来そうな気がした。一人一人問題が違えば、答え丸写しのカンニングは使えないし、全部じゃなくてもテストの半分だけでも自動化すれば、教員の負担が減る気がする。

・ときどきの雑記帖 リターンズ さんから
> MC60xxx と PowerPCは、全くの別物です。
これ、当時来栖川電工の井倉さんにも言われた。「(俺)さん、間違っているよ。PPCと一緒にしちゃ駄目だよ」って。

・仕事が調子悪い
帰りの電車で良いハック思いつく
これはBlogネタにまとめよう
普通にコマンドのオプションでできる事に気がつく
これでもBlogネタには十分
結局動かない ← いまここ

今日は5時に帰る。

デフォルトについて考える
Cでdefault:を一番上に持ってくるという話を思い出した。

switch (foo) {
default: assert(0);
  /* fall through */
case XXX: /* 無難な処理 */

  break;

デバッグ時には次の行のassert()で落とし、リリース時にはそのままfall throughして無難な処理をする。見た目は美しくない。

・ボンバーマン
はじめてのにきから
shinhさんには、絶対に勝てないと思う。
アストロロボSASAみたいに、コントローラの上下左右と移動方向が入れ替わっているゲームは普通にあるので、完全に入れ替わるなら慣れで対応できそう(スカイデストロイヤー系のゲームでも、下押して下降するのと上昇するのと2種類ある)。

一定時間で、キーが入れ替わるコントローラを開発するしかないな。

| | Comments (0) | TrackBack (0)

2007.10.24

今日の日記

・kati
shinhさんのMakefile テンプレート作成ツール
boost/test/minimalを使っていると、main関数に相当する物がtest_mainなので、そこだけ換えたらcygwinでも動いた。

kati.plの76行目
elsif (/ (test_)?main\s*\(/) {
systemcのsc_mainもここで対応可能なはず。
これは便利。
細かいことだけど、既存のMakefileと共存できるのがうれしい。


・2歳の娘
http://www.youtube.com/watch?v=r43yCiKlbCo&eurl=http://www.popxpop.com/
うちの長女もこれくらいです。しゃべり方とか、飽きっぽさも同じレベルかと。お父さんの明らかに親バカなしゃべり方も同じ
可愛さはうちの娘の方が上。それだけは譲らない。

・夢
「ピーエッチピーとか、ブイビーとか軟弱な仕事をしているような奴には、うちの娘はやれん」と怒る夢をみた。特に特定の言語に偏見があるわけではなく、娘の結婚相手の仕事が理解できなかったら、父親としてはマイナス評価をつけると思う。PHPがPrologとかErlangでも同じ。「C++バリバリっすよ、OS書けますよ、俺のライブラリBoostに採用されました、ていうかカーニハンは俺の祖父」みたいな男だったら即OK、いっぱい教えてもらおう。
2chに「義父とペアプログラミングしそうです。たすけて」とスレが立つ日も近い。

・■_ redditに訊け! Cプログラマからの質問。高水準言語でワタシの目的を果たしてくれるのはどれ?
ときどきの雑記帖 リターンズさんから
http://programming.reddit.com/info/5ywhh/comments/

> Whatever you do, do NOT go to C++.

> At all costs avoid the temptation to use C++, ironically its probably the worst path to take when moving from C development.

> Over the next 5 years C and C++ are going to drop into same category as ADA, SmallTalk and other niche-specific languages.

C++が散々で泣けてきた。勉強中なのに。

・肩書き
みんなで名刺の肩書きをいろいろと考える。
ファブレス工場長ってどうよ、にワラタ。

| | Comments (0) | TrackBack (0)

2007.10.21

今日の日記

あろはさん所から
いまいち関連検索の基準が分からないです。誰からこのキーワードで検索しまくっているのでしょうか。

あろはさんは一般的な単語だから難しいと思う。とりあえずやっておこう
ぼくもがんばります(> <) これは無理!

・ひげぽんさん退職
同じタイミングで人生の分岐点ですね。僕も頑張ろうと言いながらも、これが気になる。
コミュニティ活動以上に面白い会社にしたい
一緒に仕事しているメンバーが社外にやりがいを見つけたときどうするべきか。自分が今の仕事よりも夢中になれることを見つけたときどうするか。

秀逸 > 2007年10月20日 nagayama ひげぽんの嫁は俺の嫁

そしてひげぽんさんが微妙な所にコメントつけ間違えている気がするが、あえてそのままに。

・NiosII、MicroBlaze、Micro32
暗号化されていないのはMicro32のみ。個人でHackするならMicro32か。

アーティフィシャルインテリジェンスとオナニーホールはコインの裏表である
日本をしょって立つ大学院生と、これから新事業を始めるぜというベンチャー社員が、休みの日にオナホとかエロゲとか書いていて日本という国は大丈夫だろうかと思った。

> 奥さんと娘さんがいる,という免罪符があると,エロゲネタとかを堂々と書いても安心感 (?) が出るのでズルいなぁと思いました.
確かにずるい。ホモネタも安心して書ける。いつだって、大人はずるいのです。

・Cygwinのメッセージ文字化け問題対応
set LC_MESSAGES = C
をする。(tcsh)
ここに書かないと絶対忘れる。http://www.sixnine.net/cygwin/cygwin-doc/japo.html
どうみてもBK。

・Makefileの勉強をしてみた
いや、ターゲットが一つなら書けるんですよ。最悪コマンド並べたら良いんで。
単体テストと組み合わせて、ディレクトリを下りながらmakeができるようになりたくて半日頑張ってみた。

test:test1/unit_test1.exe test2/unit_test2.exe
cd test1 && make test
cd test2 && make test

とりあえずこんな感じでなんとかなった。徐々に綺麗にかけるようにしていこう。おお、ちゃんとtest1ディレクトリでエラーが出たら停止する。
Make & RCS p66で見つけた。
GNU Makeの方はさっぱりわからなかった。

いきなり暗黙のなんちゃらとか、便利な機能を使おうとすると確実にはまる。まずは、べたに書けるようになって、それから一個ずつ機能を使うようにしたほうが良い。大規模になってきたら、Makefile自体も試験必要だな。7年くらい前は、当たり前のようにnmakeを使っていた記憶があるんだが年を取ったらしい。

・単体テスト
テスト駆動開発入門をさくっと読んだ。特別目新しいことは書いてなかったと思う。今のレベルだと、いろんなblogや2chの巡回で十分。テストを作っている人の考え方を書いてあるのは、独学の僕には助かる。本格的に使うようになったらもう一度読もう。

boostのunit_testは、Boost本にlibboost_unit_test_frameworkをリンクして、と書いてあるんだがcygwinでは該当ライブラリが見つからずあきらめた。 boost/test/minimal.hppを使うことにした。
適度にヘタレつつも、ぼちぼち進めていく。

| | Comments (3) | TrackBack (0)

Verilogをはじめよう! その4.1

前回は、Verilogとエロゲについて関係を整理しました。

レジスタ:エロゲのフラグ
クロック:エロゲのクリック
ステートマシーン:エロゲのシナリオ分岐

もう少し、深く考察してみましょう。

まず、レジスタ=エロゲのフラグに関しては、かなり分かりやすいと好評でした。つまり、1つのレジスタは1と0の値を保持し、エロゲで言うところのフラグが立つ、立たないに対応します。

この図を見てください。

今、私が適当に設計したSDRAMコントローラのステートマシーンです。ローカルな回路からのリクエストに対して、リード、ライトを実行する機能を持ちますが、これは理解しなくても大丈夫です。メモリに対して何かエロい事をする回路だと思ってください。
これをエロゲに対応させて説明していきます。

この図では、四角い箱が一つのステート(エロゲの絵)に相当します。まずは、ハードウェアに電源が投入されたときにどうなるかですが、一般的には電源投入時にはこの状態になるという事を設計者が決めます。また、電源投入時の状態に強制的にするためにリセット信号などが使われますが、まずは最初の状態というものがあると思ってください。この図でいうと左上の、powerupが最初の状態です。電源投入は、エロゲで言うとエロゲアイコンをダブルクリックに相当します。エロゲを起動すると、毎回同じような起動画面がでますよね。エロゲ起動するやいなやネタバレバッドエンディングの画面だったりすると目もあてられません。つまり、そういうことです。
①の部分を見てください。左上から始まって、順に下の方にステート(エロゲの絵)が遷移していきます。エロゲでいうオープニングです。ここでは広がる妄想を押さえながら、ただただクリックするしかありません。

今、ちょっと大事なこと言いました。エロゲでは、次の画面へ行くタイミングはクリックです。クリックの度に画面が変わるときもありますが、一般的にはクリックしながらメッセージを進め、最後のメッセージでクリックすると次の画面に行きます。Verilogの場合、クリックに相当する物は初めに書いたとおりクロックです。クロックが立ち上がる度に、次の状態に行ってよいのかを判断し、条件が満たされていれば次のステート(エロゲの絵)に遷移します。クロック=エロゲのクリックです。1MHzのクロックで動くハードウェアは、1秒間に100万回クリックしつづけています。かなりのエロゲ好きです。今日日のCPUは、メガどころかギガのオーダーでクリックしているので、クリック猿を通り越して神の領域です。

①のオープニングを抜けて、②に入るとようやくゲーム開始です。

この図でいうオレンジの③の部分がシナリオ分岐です。このエロゲでは、リードフラグとライトフラグの2種類のフラグがあります。③のシナリオ分岐で、これらのフラグを調べます。もし、リードフラグも、ライトフラグも立たずに一定期間が過ぎた場合、SDRAMコントローラはリフレッシュという作業をしないといけません。この場合赤で書かれた④のルートに入ります。軽くリフレッシュをして、このシナリオは終了。つまりバッドエンドです。エンディングは紫でかかれていますが、エンディングの後は、②に戻ってゲームを続けることができます。オープニングを何回も見なくて良い親切設計になっています。

真ん中はさくっと飛ばして、いよいよエロシーンです。このエロゲでは、リードフラグとライトフラグでルートを管理しています。リードフラグが立っていれば右側のシナリオに進み、ライトフラグが立っていれば左側のシナリオに進みます。ピンクの部分が、実際のデータ転送(エロシーン)です。エロシーンを堪能した後は、エンディングを見て、再び②に戻ります。以下、エンドレスでエロゲをしつづけます。

もし、リードフラグとライトフラグの両方が立っていた場合、どうなるでしょう。これはバグを引き起こします。リードとライトのリクエストが同時に来ないという前提で作られたコントローラに、同時にリクエストをしてしまい、リードしているつもりが無茶苦茶な値しか読み出せないことは、可能性としてはありえます。エロゲのシナリオライターもVerilogプログラマも「ここで、このbit/フラグ立つことは想定していなかった」と日々同じような事を考えて仕事をしています。つまり、Verilogプログラマ=エロゲシナリオライター。

ステートマシーンは、有限状態機械(finite state machine)と呼ばれます。ここまで読まれた方は、ステートマシーンの状態はエロゲの絵だということは理解されていると思います。エロゲにおいて、絵は最初に書かれた枚数しかありません。だから有限という言葉がついています。難しく書いていますが「エロゲにおいて、絵の枚数は有限」とそれだけのことです。

最後に、同じステートマシーンを教科書っぽく書き直してみました。
全く同じですが、少し頭良さそうに見えます。
今後はステートマシーンと言われてもひるまずに、エロゲのシナリオ書いているくらいの気持ちでのぞみましょう。


過去記事
Verilogをはじめよう! その4
Verilogをはじめよう! その3
Verilogをはじめよう! その2
Verilogをはじめよう!


| | Comments (8) | TrackBack (1)

今日のチラ裏

乗り遅れた感があるが、脳内で酒飲みながら責めてみた。車輪とか実用性とかキニシナイ。
http://wiki.monaos.org/index.php?%B5%C4%CF%C0%2FAPI%BA%C6%B9%CD%2F04.API%A4%F2%C1%D8%B9%BD%C2%A4%A4%CB%A4%B9%A4%EB

schemeのフレーム拡張の仕組みを、OSが持っているリソースまで広げてみる。
http://homepage3.nifty.com/~Natsutan/img/coco/mona_sheme0.jpeg
APIのフックとか余裕で、デバッグ用にサービス/ドライバ差し替えとかも簡単。OS動作中にHDDを交換したりできるかも。それなんてMultics。

・Schemeが神
http://homepage3.nifty.com/~Natsutan/img/coco/mona_os.htm
左の階層なんて飾り。

・全てがS式。
プロセステーブルもS式で取り出せて、書き換えて評価するとプロセステーブルが変わってしまうとか。あるいは、そのS式を別のPCに持って行って評価すると、元のPCと同じ状態になって欲しい。メモリの管理テーブルを取り出して、手動でガベコレとか、自力でforkとか、全部S式でできる。

Lispの強さって、なんでもありとS式ひきこもりだと思う。

ここからマジレス
USBを指すだけで立ち上がって、各種scheme、Lispが簡単に動く環境があると欲しいかも。アプリレベルの話になりますが、インストーラ一発でいろんな処理系が入って、SICPもWebからダウンロードしてきて、言語のマニュアルの引き比べができて、汎用の画像ライブラリがそろっていたりするとうれしい。schemeで書いたアプリが、exeファイルのようにダブルクリック即実行、Mona間ならexeファイルだけの配布でOKとか。Javaで言うところの、Write once run any MONA。

あとゲームするなら、エミュレータが持っているステートセーブ、ロードの機能をOSレベルで持って欲しい(プロセスイメージの保存と復元)。セーブ機能が貧弱なDOSのゲームとか、遊ぶの大変なので。

初期のひげぽんさんは、もっと無茶を言っていた気がする。

| | Comments (3) | TrackBack (0)

2007.10.19

ベンチャー志向プログラマ

http://itpro.nikkeibp.co.jp/article/Watcher/20071009/284072/を見ました。

とても楽しそうに話す人だと思った。1回くらい直にあっていろいろと話を聞いてみたいな。
14分頃の「つまるところ」以降が面白い。

・ベンチャー
成功する可能性は低い事は分かってる。成功する自信があったら、会社飛び出さずに上の人間を説得してる。そっちの方が絶対に楽だ。あこがれのマイコンプログラマに戻るって選択肢もあったけど、気がついたら新会社で頑張ることに決めていた。限られた富を奪い合うのではなくて、富を作る側に回りたかった。veritakはシミュレータが数百万の時に、5000円で登場した。僕はそれで会社のリソースを使うことなく、Verilogの動作確認が出来る。素晴らしい。ビデオの中にも出てくるけど、ハッカーと画家の影響は大きくて、僕がいたから何かが変わった、そういうことをしてみたい。見方を変えると、このタイミングで中二病が発動、馬鹿正直に自分の感情を受け入れてみることにした。

・僕が作った
初期のプロダクトはほとんど自分で作った。自分で仕様決めて、自分で回路図書いて、自分でデバッグした。当時は(今も)ハードの仕事が心の底から嫌いで、回路図とにらめっこしながらオシロのプローブを当てていくとか、微妙なタイミングで動かないとか嫌で嫌でたまらなかった。電気的なノイズの為に、何万回に1回"Hello, World!"が動かない世界なんて滅んで欲しかった。これを買った人にはそういう思いをして欲しく無い、その思いだけでこのプロダクトを作った。この事業を始めてから、お客から電源周りがおかしい/怪しいというクレームは一件もない。これが僕の自慢。

最近はこの気持ちを忘れていた。大事な事を思い出せた。今の気持ちも忘れないようにここに書いておく。
新会社で第2ラウンド開始、今度は「僕たち」が作ったプロダクトにする。

・コード書きたい
書きたかったら、書くしかない。新たに車輪を再発明することで、コードを書く機会をゲットする。ネタはあるけどここには書かない。

・スクリプト言語の檻から出たい。
典型的な隣の芝生だけど、僕は檻の中に入りたい。日本語の情報はいっぱいあるし、言語自体に遊び心があるし、みんなで技術的なblogを書きあっている。LLな人は書籍の充実っぷりを関係者にもっと感謝した方がよい。実際には檻かもしれないけど、下から見ると冷暖房完備、TV付きのホテルに見える。だって、ネットにつながるパソコンがあればすぐに始められるし、サンプルコードや、トラブルの情報が山ほどあるんだぜ。

・一歩一歩、成長に飛び道具無し。
若くて優秀な人のBlogは刺激になる。でも焦らずに、一つ一つ目の前の階段を上って行く。
もっともっと勉強しよう。そして、手を動かそう。
子曰 學而時習之 不亦説乎

僕に足りない物が一つ分かった。遊び心と悪知恵!俺スゲー感を忘れず、もっともっとバカになろう。

| | Comments (3) | TrackBack (0)

今日の日記

・はてな駐屯地から
Score-To-Song
> 8年ほど前に、この分野に面白い挑戦がありました。コナミの「ときめきメモリアル2」です。このゲームは前作と同様に女の子にアタックするゲームですが、女の子が感情をこめてプレイヤーの名前を呼ぶという機能が搭載されています。ハードウェアの制限で存分にその機能を使うことは出来なかったようですが、「名前を変更可能にすると、声優の声を当てられない」というこの手のゲームの欠点を克服する試みでした。

試みだけなら、NORIKOもね。僕はこのためにPC-Engine買ったよ。
No・Ri・Ko
> そして、おいらは、完全に前者のヒトなわけで、
でワラタ。

・本屋に行った
某VNIの人が、派遣先でC++の教材があって凄くわかりやすいらしい。メンバーは全員スタックとヒープの区別がついていて、これからファクトリーパターンを勉強するらしい。なんといううらやましい環境。デザインパターンがよく分からないので、本屋にいって調べてみた。どれを読んでもさっぱりわからないので、「3日でわかるデザインパターン」みたいな本を探してみたが、そういうのは無かった。ちょっとヘタレになった自分が嫌い。UMLの本の中にクヌース先生の「文芸的プログラミング」を混ぜた奴は誰だ。シュールすぎる。
まあ、あれだ。デザインパターンを理解するには経験値が足りなすぎる。もっといっぱいコード書いて、いろいろ困って、自分で工夫して、それから戻ってこよう。

というわけでAccelerated C++で分からなかったところをもう一度読み始めた。面白い。

・ソフトCPUが面白そうなので、個人でできないかいろいろ調べてみた。
Niosに関しては、ここの下の方。結構お金がかかる。
MicroBlazeだと、スターターキット+EDKがキャンペーンで安い。

どうするか。

| | Comments (0) | TrackBack (0)

SystemCの書籍 2007年10月

TLM本を読んだので更新

(1)Advanced Verification Techniques: A Systemc Based Approach For Successful Tapeout (終了)
そもそもSystemCに特化した本ではない。感想はこちら

(2)Transaction Level Modeling With SystemC: TLM Concepts And Applications for Embedded Systems (終了)
Tとりあえず、TLMって何よ、って人にお勧め。SystemCのコードは少なめ。感想はこちら


(3)Systemc: from the Ground Up (終了)
邦訳は基礎から学ぶSystemC
感想はこちら

第2版でたよ。

(4)System Design With Systemc (終了)
邦訳はSystemCによるシステム設計。
SystemCに関わる人必読。感想はこちら

(5)SystemC Kernel Extensions for Heterogeneous System Modeling: A Framework for Multi-MoC Modeling & Simulation (終了)
あまりSystemCとは関係無い本。感想はこちら

(6)Advanced Verification Methodology Cookbook
予想以上に参考になります。7章で中断。

(7)よくわかる SystemCによるシステムデザイン入門 (終了)
感想はこちら


(8)C/C++によるVLSI設計―SystemCによるJPEGコーデック設計 (終了)
なかなか良い本でした。私の感想はこちら。noboshemonさんの感想はこちら

(9)Systemc: Methodologies and Applications (終了)
感想はこちら

(10)A SystemC Primer (終了)
入手困難ですが、最初の一冊にお勧め。感想はここ

(11)SystemCを使ったハードウェア設計 (終了)
合成について記述があり参考になる。最初の一冊には向かない。感想はこちら


(12)System Cプログラミング基礎講座 (終了)
いろいろと気になる点があり、お勧めはしません。感想はここ


(13) Performance Evaluation of Parallel Packet-processing Architectures Using SystemC-based Modeling and Refinement(終了)
あまりSystemCの勉強にはなりません。ネットワーク関連のモデリングをしたい人に少しだけお勧め。
感想はここ

(14) ESL Design and Verification: A Prescription for Electronic System-Level Methodology (終了)
ESL全般について書かれた本。SystemCへの期待も大きいです。文法レベルでの解説はありませんが、SystemCでできることについてはいろいろと考えさせられる。
感想はここ

(15) Hardware Verification With C++: A Practioner's Approach
SystemCじゃないけど、AVMのようなC++を使った検証フレームワークの本


| | Comments (0) | TrackBack (1)

Transaction-Level Modeling With SystemC その5

Transaction-Level Modeling With SystemC

読みました。
ちょっと値段が張りますが、勉強になりました。

前半はTLMをやる意義をたんたんと説明。途中から、徐々に手法の話になる。前半はESL D&Vとかぶる所があり、私自身は目新しい発見は無かったですが、TLMって何のためにするの?って人は目を通しておくと良いと思います。

TLMをやる上でプロセッサをどうするかというのは面白いトピックで、いろんな視点で検討してあります。FPGAを使ったCo-SIMも全く同じ課題をかかえていて面白く読めました。ただ、具体的にこうしろ、までは書いていないので、何かしらの答えを求めに行くと空振りになります。ISSに割り込みをかけ、かつISSと非ISSで同期を取るような方法についてはもっと突っ込んで書いて欲しかったです。

後半はいろんな各種ツールの説明があり、私はあまり興味がなかったので普通にそのまま読みました。

とりあえず、TLMって何よ、って人にお勧め。SystemCのコードは少なめ。

| | Comments (0) | TrackBack (0)

一文字言語

ときどきの雑記帖 リターンズさんへショートパス

eがありますよ。
http://techon.nikkeibp.co.jp/article/NEWS/20060406/115813/
IEEEで標準化されています。

あと、け(K)言語も。マルチプラットフォームだし、国内の知名度ではeと良い勝負かと。
http://s03.2log.net/home/programmer/archives/blog47.html

| | Comments (0) | TrackBack (0)

2007.10.17

今日の日記

・駄目人間
昨日、MicroBlazeの資料読んでいたら京都駅で琵琶湖線と湖西線を乗り間違えた。何年滋賀県民やってんだ。今朝もよくわかる現代魔法を読んでいたら、女の子の「あたし・・・・・・CとPerlならわかりますけど」で、オレも出来るよって興奮していたら降りる駅を通り越してしまった。もう駄目だ。

陰気な男でいいですか?からオレは、駄目だ
これ欲しい。

・ULとDL
http://osdevj.g.hatena.ne.jp/osdevj/20071017
ULはUser Landと勝手に解釈していたが、UpperとLowerなのか。Mona Virtual Machneが出来たら、DLは取り替え可能か。

・Cで久しぶりに酷いコードを見た
自主規制。21世紀に書かれた物とは思えない。泣きそうだ。そうだ、2chへ行こう。

・EDKでエラー
上手く合成出来ないときは、ログをよく見る。'\r'がどうのこうのというメッセージが出ていたら合成用tclスクリプトの改行コードがおかしい。そのファイルの改行コードをLFにすればOK。何でこのファイルだけとか、XPSが自動で作ったんだぜとか、ちゃんとエラーで止めろとか、余計なこと考えずに容赦なく書き換えよう!、という夢を見ました。

| | Comments (0) | TrackBack (0)

MicroBlaze Architecture と NiosII Architecture

MicroBlaze Architecture
MicroBlaze Processor Reference Guideを眺めてみた。(pdfです)

・MIPSの血を引く32bit RISCプロセッサ。
・32bit、32個の汎用レジスタ。R0はZeroレジスタ。
・Pilelineのステージ数は、configurable。
エリア優先時は3 stage、エリア優先で無いときは5 stage Pipeline。
5 stageは、Fetch(IF)、Decode(OF)、Execute(EX)、Access Memory(MEM)、WriteBack(WB)の5つ。パタヘネどうぞ。
・Pilelineの制御はstallのみのシンプル構造。
・遅延スロット一つ
・キャッシュはconfigurable。容量だけでなく、TAGの大きさも決められる。write throughのみ。
・HW break pointの数もconfigurable。
・ハーバードアーキテクチャだけど、命令領域もデータ領域にmapしてR/W出来るようにするのが定石

Pilelineはこんな感じ。世の中のCPUもこれくらいシンプルなら良いのに。

NiosII Architecture
せっかくだから比較してみた。
Nios II Processor Reference Handbookから。(pdfです)

・32bit、32個の汎用レジスタ。R0はZeroレジスタ
・pipelineのステージ数は、1、5、6でconfigurable
Fetch(F)、Decode(D)、Execute(E)、Memory(M)、Align(A)、Writeback(W)
5stageの時は、Aが無い。
・Pilelineの制御はstallのみ
・ハーバードアーキテクチャ
・キャッシュはDirect Mapで、サイズがconfigurable。write back。ソフトウェアでbypass可能。
・遅延スロット無し。分岐予測は有り/無しがconfigurable

こっちもMIPSだ。最初のNiosのアーキテクチャは、やはり受け入れられなかったか・・・。

どっちもMIPS採用するなら、いっそのこと共通化してくれたらよかったのになぁ。

| | Comments (1) | TrackBack (0)

娘と新会社

今月はいろいろと生まれる月でした。

(1)次女誕生!
先週、嫁と共に無事退院しました。
名前は、普通に有希ちゃんにして長門君と結婚させようと思ったのですが、嫁に「何それ、ゆうゆが由紀子やし?きもちわるっ。ちょっとオタクは黙っといて。」と罵倒されたので、無かったことになりました。ゆうゆでは無いと言いたかったのですが、だいたい当たっているので何も言えませんでした。もう一つ、長女の名前をひらがなでかいて、何本か棒をたすと全然違う雰囲気の名前の可愛い名前になることを発見しました。嫁は長女からのお下がりの名前問題を解決できるし、ミステリー好きの僕としては姉妹での言葉遊びは面白かったので、それにしようと大枠できまりかけました。ある日突然、二人とも我に返り、生まれてくる子に説明しにくいよね、という事で無しになりました。
結局は普通の名前になりました。やや珍しい字ではありますが、俳句の季語にも使われている歴史のある字だったので、良しとしました。

うちの近くは、産婦人科が供給過剰という珍しい場所なのでいろいろ選べたのですが、結局家の一番近くにしました。長女の時は地元で一番大きい総合病院で、助産婦さんが少数精鋭でスタンバイしていて、私も嫁をはげましたり、ベッドを運んだりいろいろとすることがありました。今回は、生まれてくるときに先生から、助産婦さんから総動員でやってくれたので本当にやることが少なかったです。

先生「もう出ている、頑張って」
先生の奥さん(この人も先生)「力抜いて、息すって」
助産婦さん「前見て、前見て、頑張れ」
僕「頑張・・」
先生「すー、っぱで行きましょう」
先生の奥さん「すーっぱ」
僕「す・・」
助産婦さん「前見て、手に力入れて」

僕にも発言させてください。orz

生まれる前から女の子だとは分かっていたのですが、先生が思いこみの激しい人で
先生「ほら、元気な男の子が生まれた!」
先生の奥さん&助産婦さん「女の子ですよ」

先生「元気な男の子やねー」
先生の奥さん&助産婦さん「女の子です!」

と、漫才みたいな掛け合いをしながら、楽しく産むことができました。小さいところも良いですよ。

(2)冷やし中華  新会社はじめました。
一部の人にはばれていましたが、ようやく正式発表になったので書く。
会社作りましたって程何かしたわけではないし、出資しているから会社変わりますともちょっと違う。ちなみに資本金は1008万円。みんなで資本金を集めた結果、きりの良い数字ではないですが、社長がそっちの方が良いといったので1008万円で始めることになりました。もともと4人で始めた事業が、なんとか大きくなり人も増え、僕自信もパレートの法則でいうところの2:8の2から8に良い具合に転がり落ち、SystemCやらSICPとかだらだらと勉強していたのですが、また2の方に無理矢理戻されそうです。

まあ、無理矢理メリットを書き出すと、今ならプログラミング言語なんでも選べるってこと。主軸はFPGAにあるので、はてなや、Paul Graham、Shiroさんとは全然状況が違うのですが、Common Lispだろうが、BrainF*ckだろうが、結果が出せるなら何を持ってきても良い。本当に残念なのは、SICPを5年前に読まなかったこと。ambでFPGAの分割問題が解けることも知っているし、EDIFを直接読み書きが出来ることも分かっている。もう少し特定の処理系に慣れて、自分でいろいろと作っていれば、このタイミングでCommon Lispというのは十分あり得たと思う。残念ながら今の僕の実力だとLispの出番はない。次に入ってくる若い人たちに期待しよう。もう一回言っておく。SICPは20代で読んでおこう、人生変わるよ。

デメリットの方は、またOrCADとかオシロとかそっちの世界に戻らないといけないことです。人が減ったから、自分でできることは自分でしないといけません。あとは、このブログをどうするかが気がかりです。会社の事考えたら、日記と技術系は分けた方が良い。「むしゃくしゃしたので、デバッグルームのマシンを全部長門プロンプトにしてやった」とか書いた日には、優秀なんだけど朝倉さん好きの人が入社を躊躇することは十分考えられる。困ったものです。

ここ一年くらいはプログラミング言語の勉強もして、充電もできたので、ガンガン仕事しよう。そして、まただらだらできる環境を作り出そう。

最後に
前の会社の人事の人に「やはり、ご自身で作られた製品というのは、自分の子供のようなものですな」と言われて、つい空気を読んで「そうです」と答えてしまった。
今だから言う。

娘の方が100万倍可愛いよ!

| | Comments (6) | TrackBack (0)

2007.10.16

今日の日記

電話かけようと思って、受話器を上げてテンキーを叩いていた。疲れてる。

Perlをちょこちょこ書いていて単体テストのフレームワーク便利とあらためて気がつく。テストファースト便利。C++でも使いたいので、Boostのテストフレームワークを調べる。今は手で単体試験実行しているけど、makeで自動で走るようにしたい。それができるようになったらコードを書こう。

しかし、どの本みてもPerlでプロトタイプ宣言していない。よくプロトタイプ宣言無しで、リファレンス駆使して、大規模アプリ作れるなと思う。もちろん、あんなプロトタイプなら意味がないのもわかる。typedefが欲しい。

くじ雷電から
放尿プレイ
とりあえずリンクして、応援してみる。
これで放置してみて、僕のブログの方が上に来たら作戦失敗。

| | Comments (0) | TrackBack (0)

Transaction-Level Modeling With SystemC その4

HPIOMを知る、がよく分からない。
いろいろ書いてあるけど、後で読むにしておく。

これが欲しい
http://www.springerlink.com/content/e768628163886068/
と思ったら面白ろそうなドキュメントが大量に!
http://www.springerlink.com/content/?k=systemc

そして、Kroening氏を知る。OSCIの偉い人みたい。
http://www.kroening.com/
ここもタイトルだけで鼻血もののドキュメントが!

PROVING THE CORRECTNESS OF PROCESSORS WITH DELAYED BRANCH USING DELAYED PC
遅延プログラムカウンタを使って、遅延分岐と同じ事できるよ。僕たちは証明したよ。
noboshemonさん、どうぞ

C++のKoenig Lookupの人とは別人でした。最初は同じ人かと思って驚いたことは秘密。ひろゆきとゆきひろみたいな感じ。

| | Comments (2) | TrackBack (0)

2007.10.15

今日の日記

Webの巡回から

MONA 議論/議論/API再考/02.トピック洗い出し?


> ひげぽんはもっと思想を語れ。まずはそこから。(by mjt) -- ひげぽん 2007-10-15 (月) 01:09:40 New!
> 例 : 今後MonaOSのユーザーアプリはschemeで書くのを基本とする -- .mjt 2007-10-15 (月) 01:31:25 New!
これ面白そうだ。
デバドラとのI/Fもschemeで。受信バッファにデバイスからのデータが格納されるのではなくて、streamで取り出してくださいとか。
継続対応デバイスは、call/ccでハードウェアも元の状態に戻ったら面白い。使い道わからないけど。

なんていうか、Lisp(scheme)プログラマとして面白そうな機能が前面に出ていた方が良いと思います。2層にわけるのは賛成。

意味のねえ精神論説く暇あるんだったら、技術を身につける場所と、身につけた後のビジョンを説いてくれっての

全体としては激しく同意した上で、
> 上の世代が下の世代に対してできることは、「技術を身につけた結果、どんなことができ、どんな未来があるか」というのを明確に示すことであり、それは上の世代の義務じゃねえかと俺は考えている。
これはむしろ下の世代の方がやることだと思う。僕たち、こうなりたいからこうしますって。そして若者が作りたい未来に対して「今現段階での責任」を取るのが上の世代の義務でしょ。上手に若い人を誘導したり、お金や人を集めたり、お客や他部署との折衝をしたり、上の世代が得意なところは上の世代に任せればよい。単なる役割分担だ。

> そういうの、すげえかっこいいと思ったからそうやっているだけだ。
こんな風に言われたいものだ。かっこよく仕事をしたい。

神様なんて信じない僕らのためにから
それはどこかで聞いたことがあるようなと思い、Large-Scale C++ Software Designをパラパラとめくる。なんと、書いている人Mentorの人だ。題材も回路設計とか基板設計とか身近すぎる。これがAVMにつながるのかと思うと感動。思ったよりも字が大きいし、C++の設計ガイドラインにもなっているから読もう。スタックの上の方へ移動。

ときどきの雑記帖 リターンズから
CTMCPブーム来て欲しい。
とりあえず本とPDFは確保してあるから、ブームが始まって一年後くらいに読もう。


あろはさん
> 重要なのは,それらの言語やプログラムの背景には,何らかの基礎的な原理や理論,設計思想があって,
3つの中では、設計思想が分かった時が一番うれしい。

・あろはさん経由で
http://d.hatena.ne.jp/yuki_neko_nyan/20071011/1192069372#seemore
Little Schemerで分からなくなったら、下の2つがお勧め
もうひとつの Scheme 入門
独習 Scheme 三週間

SICPを視野に入れて勉強するなら、最後の方の処理系部分は飛ばしても良いと思う。今読めば別なのだろうが、当時は何をしているかさっぱり分からなかった

| | Comments (0) | TrackBack (0)

今日の読書

よくわかる現代魔法
なかなか一巻が手に入らず放置していたが、Amazonで購入。対象読者がニッチすぎる。

「そうねえ。素数を遅延評価で求めたりしてるわね」
「へ?」
「整数列[2..]をsieve(n:ns) = n:sieve[m<-ns, m`rem`n/=0]でエラトステネスのふるいに-」
「あ、わかりました。もういいです。はい。いいです」
それ、なんてHaskell。

「で、このプログラムはなにをしている?」
「呪文を唱えています」
「なんだと」
「簡単に言えば、足し算や引き算をエクゼキュートしています」
「プログラムはみなそうだ」
素晴らしい洞察


・ふるめた
某チャットで若者に勧められて、戦うボーイ・ミーツ・ガール―フルメタル・パニック! を読んだ。
絵もそうだけど全体的に古い。10年前かよ!って思ったら、本当にそれくらい前だった。今の基準で見ると、キャラも地味で手堅くまとまってる印象があるな。

大人のための文章教室
面白く読めました。日記系Blogの人は読んでみると良いかも。読みやすく、読者を引き込むための奇をてらわない技術が満載です。ビジネスマナーだけでなく、国語力も自分の弱点だな。

SE・エンジニアの本当にあった怖い転職話
立ち読みですます。きたみさんも半年くらい業界に戻った方が、面白い物書けると思う。

TLM本
Chapter5から突然面白くなった!


| | Comments (0) | TrackBack (0)

RTOSと読書

前の会社でRTOSを使ったときに、タスクの優先順位を上げると処理速度が速くなると思っている上司がいた。トータルで処理しきれないんだったら優先順位をどう入れ替えても駄目なんですよ、と積ん読された本を眺めて思い出した。

| | Comments (0) | TrackBack (0)

2007.10.14

Transaction-Level Modeling With SystemC その3

Chapter 4から
4.3. Approach to OS/Firmwarae Development

割り込みとMMUの話が面白いが、たいしたことは書いていない。

ISSと割り込みって相性悪いと思う。もうちょっと突っ込んで書いて欲しい。MMUも下手にシミュレータ用の環境を作ると、そこで等価性が保てなくなるから難しい。Linuxを使うときは、uClinuxが一番良いらしい。user-modeのAPIだけでなく、kernel moduleをダイナミックにロードする仕組みを提供しているから。最初は、MMU無しの環境で検証して、続いてMMU有りの検証に移っていく。なるほど。

5.3.1. Provision of Realstic Environments
TLM platform は3-in-1のソリューションを提供している。

・Development environment:開発環境のみ、コンパイルエラーの早期発見や、プログラムサイズの見積もりなどに使用
・Execuion environment:TLMの実行環境
・Simulation environments:実際のシミュレーション環境

全然3-in-1じゃ無い気がする。

| | Comments (0) | TrackBack (0)

これは読んどけ

ときどきの雑記帖 リターンズさんから

> これは読んどけ。ですね。
> http://dev2dev.bea.com/blog/simonvc/archive/2007/10/the_bibles_or_w.html

> わたしがわからなかった本の情報をご存知の方がいらっしゃいましたら解説を お願いしますー

On Lispは説明不要。

CTMってConcepts, Techniques, and Models of Computer Programmingかな。
TAPLは別の人にパスを出しておこう。僕もどういう位置づけの本か知りたい。

Code Complete:コードコンプリート
Pragmatic Programmer:達人プログラマ
Programming Pearls:珠玉のプログラミング

Tanenbaum - maybe.
Tanenbaumと言った時は一般的にどの本になるんだろう。僕はMINIX本だど思うけど、他にもいっぱい本があるから。まあmaybeだから、良くも悪くもそれなりなのかな。

Programming Erlangは他に並んでいる本と比べると、評価するにはまだ早い気がする。

パタヘネが抜けてるよ!。

| | Comments (0) | TrackBack (0)

2007.10.11

今日の日記

・More C++ Idioms 後で印刷して読む。
http://en.wikibooks.org/wiki/More_C%2B%2B_Idioms

・続・初めてのPerl
途中から一気読み。面白い。ゆっくり端末の前でいろいろと試してみたい。Lispっぽい機能も多い。Amazon解禁になったらPerlのOOの本を買って読もう。デリファレンスが{}とか->なのは良いんだが、これを省略しようという発想が素晴らしい。しかし、なんでblessなんだろうな。_とか変数の両側を@で囲むとか、もっと頭抱える文法にしてほしかった。途中に「脳細胞を無駄使いしたくないので」という記述があってワラタ。Perlの勉強の半分は、脳細胞の(ry

・ebook
むしろお金をだすから、PDFを気楽に製本して欲しい。紙質、版とかはこちらから指定できて、章ごとに分割とかもOK。1000円くらいから、Amazonの発注の感覚でぽちっと押すと2~3日で届いて欲しい。

・神スレ
http://guideline.livedoor.biz/archives/50977954.html
眼鏡が似合うからケコーンしたのに、コンタクトにした嫁にはもうなんて言って良いのかわからん。そういえば、この前嫁が眼鏡をしていたら一瞬長門に見えておおっと思った。エンジニアらしく最小要素を切り出して言った結果、机の上に嫁の眼鏡をおいても、おおっと思うことが分かった。

・8進数
C言語の最初に0を書いたら8進という仕様はワーニング出して欲しい。配列の桁数を揃えようとして、何回もはまるんだよな。あと、2進16進の変換はプリプロセッサで処理するよりも、目を細めて変換できるように訓練したほうが早いと思う。

・後悔^H^H公開日記:別館
http://d.hatena.ne.jp/monamour555/20070806/1186375909
> エンジニアとして提案型の商売を続けようと思ったら,手持ちのコマにある種の新規性があることを訴求する能力は不可欠です.
これ大事だけど難しい。

・レジスタファイル
いまいち、レジスタファイルがこれ!と説明できない。高速にアクセスできるレジスタ群程度の意味なのかな。最初のNiosだとレジスタがスタックと共有されていてスタックポインタの移動でレジスタファイルを切り替えるみたいな事言っていたけど、SPARCのレジスタウィンドウもレジスタファイルで良いのだろうか。ちなみに今のNiosはどうなっているか全く知らない。

http://ja.wikipedia.org/wiki/レジスタ・ウィンドウで調べてみた。
> バークレーRISCの設計では、全部で64本あるレジスタのうち 8本がプログラムから見えるようになっている。 レジスタ全体のことをレジスタファイルと呼び、8本のレジスタのことをウィンドウと呼ぶ。 このレジスタファイルによれば、最大で8レベルのプロシージャコールがレジスタファイル内で実行可能である。

RTLを使った設計でも、 reg [31:0] greg [127:0]; みたいに書いてレジスタファイル作るって言うよね。

| | Comments (3) | TrackBack (0)

起業するにあたって

モチベーションは楽しさ創造から - 起業する友人へ!これだけは準備しておくべき10個のこと自営するあなたへ!これだけは知っておきたい10個のつっこみを読み比べる。どちらかというと、弾さんの方が今の僕の感覚では近い。
弾さんのBlogには賛否両論あるんだろうが、仕事に関しての姿勢は見習いたい。

http://blog.livedoor.jp/dankogai/archives/50797712.html

http://blog.livedoor.jp/dankogai/archives/50841971.html

http://blog.livedoor.jp/dankogai/archives/50864723.html

何が何でも頑張らないといけないわけではないが、何か変えていく力があるのならそれを使うべきだと思う。同時に忘れてはいけない事は、がむしゃらに進むだけではビジネスって回らない。後ろをならしてくれたり、細かいことをしっかりとやってくれる人が絶対に必要になる。頑張る方向を示してくれる人もいる。そういう人たちに、自分のやり方を強制したらチームが駄目になる。後方支援の人がいるから、安心して全力で問題に取り組めるんですよ。

対人コミュニケーション能力に欠陥のある僕のような人間が、普通に仕事できるのも彼らのおかげ。

| | Comments (3) | TrackBack (0)

2007.10.09

ぎったんばっこん

ときどきの雑記帖 リターンズさんから。

Obscure and Ugly Perlisms in Ruby

#awkは?
が華麗にスルーできず原文を確認してしまったので、ついでに書いてみる。

Exhibit C: The Flip-flop

何がフリップフロップなんだろうと思って良く読んでみた。

(line =~ /^# BEGIN/)..(line =~ /^# END/)とか(i == 5)...(i == 10)が、シーソー(seesaw)に見えるからかな。

ハードの人にとっては、filp-flopというのは、こんな感じの図をイメージする。
wikipediaから

四角が2つあって、左と右でお互いにシーソーのようにぎったんばっこんやるから、レジスタの事をフリップフロップと呼ぶらしい。気になって辞書を引くとFlip-flopにシーソーという意味は無さそう。困ったときのgoogleをしてみる。Flip-Flopにシーソーの意味があるなら、ひとつくらい画像があって良いと思う。無いなぁ。

シーソーじゃないとしたら、このFlip-flopはどういう意味で使われているんだろう。

| | Comments (0) | TrackBack (0)

2007.10.07

後日談

社員大会の帰りに、少しでも人目を避けるように会場から一番遠いエレベータに行ったら、会長(私が就職した時の社長)と2人でエレベータにのるはめに。なんという裏目。動揺して、そそくさとエレベータ入ったら、オペパネが僕の入った方の逆にあって、会長にエレベータボーイさせてしまった。一番下までいったら、当然のようにお迎えの車があって会長は去っていってしまった。

今から思うと、会長に伝えたいことがあったのだが上手く言えなかった。かなり後悔。ここで書いてもしょうがないが、この会社で仕事ができて本当に良かったです。ありがとうございました。この思い届くかな。

| | Comments (0) | TrackBack (0)

動画の力

先週に社員大会なるものがありました。例によって嫌々参加したのですが、とても良い物を見れたのでここで紹介します。

私の仕事と直接は関係ないのですが、私の会社は工場とかクリーンルームを持っています。毎年のようにQC何チャラとかいって、歩留まり向上とか、私から見ると遠い世界での取り組みの発表があるわけです。グラフで1年間の取り組みの成果を見せられても、意味が分からないので私はいつも寝てしまうのです。それが、今年は趣向が変わって成果の発表に素人が取った動画が入りました。

初めて見るクリーンルームでの作業は凄いの一言。みんなインテルのCMに出てきたように白装束に包まれています。それで、この薬品が何だとか、周りの説明の後実際の作業をビデオで見せてくれました。クリーンルームの中の作業と言うのは極秘な訳で具体的に書く訳にはいかないのですが、ひたすらタンポポを乗せるような作業が○○分続きます。見ている方もこれは大変だと凄く伝わる。その後に取り出したのは、そこらへんのお店で売っているような小道具。これを使ってさっきと同じ作業をして、いかに作業が楽になったかを見せてくれた。仕上がりの比較も、手作業と道具付きを比較して、道具を使った方が良い仕上がりになっていることを動画で説明。

これは本当にわかりやすい。

○○という工程でこういうやりかたで5分短縮しましたという字だけの発表が、動画が入るだけでこれだけの説得力を持つものかと驚きました。経営している側からみれば、結果の数字だけが必要なのだろうが、全社員の前で発表するのであれば発表項目を減らしてでも動画の方がよい。特に、作業が楽になりました、というのは定量化しにくいからこれは動画による説得力は大きい。これ以上は実際に作業をやってもらうしかないというくらいの説得力がある。20代の人だけでやっているのか、作業のビデオの下にニコニコっぽい顔文字が流れてくるのですよ。

ひたすら○○するよ。\(^O^)/

正三郎かよ!と突っ込みながらも、作業者の気持ちとか、見ている人の気持ちがよく分かって素晴らしかったです。社員大会というフォーマルな場で、この発表にOKを出した上司はもっと評価されてもよい。私の会社にもこんなに良いところあったんだと驚きました。

| | Comments (0) | TrackBack (0)

SICP exercise 4.5

This page is a followup of this.

form http://paste.lisp.org/display/48776.

Our goal is this.
(define result 1)
(cond ((assoc 'b '((b 2))) => (lambda (x) (+ result (cadr x))))
(else false))
;; evaluates to 3

My evaluator expands the expression to this.
(let ((result (assoc 'b '((b 2))))) (if result ((lambda (x) (+ result (cadr x))) result) false))

When the environment has a variable named result, it encounts a name collision.

I can escape the problem easily like this.
(let ((result_ (assoc 'b '((b 2))))) ; change result to result_
(if result
((lambda (x) (+ result (cadr x))) result_)
false))
It runs correctly only in the situation. However this is not the solution that he want.

The GYNSYM system is a good idea.

My solution is this.
I introduce a reserved word like *COND->IF_RESULT* in my system.


| | Comments (2) | TrackBack (0)

コミュニケーション

一日家事を手伝って、ベッドでぼーっとしていたら娘が真剣な顔でやってきて、

「おーべーかー、おーべーかー」

と一生懸命言っていた。ピコーンとひらめいたので「欧米か!」と突っ込んだら、満面の笑みでうんうんとうなずいた後、向こうに走って行ってしまった。かわいい。

| | Comments (0) | TrackBack (0)

今日のゆうゆ

かわいぃ。
理想の丸顔

| | Comments (0) | TrackBack (0)

2007.10.06

C言語の必要性

Cというのは、ハードウェアのエンジニアとコミュニケーション取るために必要なんですよ。彼らが分かるのはCだけなんだから。

| | Comments (0) | TrackBack (0)

翻訳本

ひさらんとは一冊にかける思いが違うのは自覚しつつも、壁に投げつけたくなるような酷い翻訳本て出会ったこと無い気がする。今までの本ではSICPの日本語が難しかった。翻訳本じゃないけど、MSNの自動翻訳は頭を抱えた。MINIX本はわかりやすくは無かった気がする。アイスウィンドデイル2の翻訳は酷かった。僕はこの一点でライブドアが嫌いだ。SEGAに任せておけば良かったのに。

SystemC関連だと、日本人の書いた本の方がよっぽど酷いので、翻訳で眉をひそめる事はあっても、投げ捨てたくなることはないような。


自分の記事を読み返しみて、gccでstdio.hのincludeがいらないのはlibcがリンクされるからじゃ無い気がしてきた。

YUKI.N>gcc -c hello.c
YUKI.N>nm hello.o
00000000 b .bss
00000000 d .data
00000000 r .rdata
00000000 t .text
U ___main
U __alloca
00000000 T _main
U _printf
YUKI.N>

gcc -vでリンクされているライブラリを見てみよう。

YUKI.N>gcc -v hello.o
/usr/lib/gcc/i686-pc-cygwin/3.4.4/specs から spec を読み込み中
コンフィグオプション: /usr/build/package/orig/test.respin/gcc-3.4.4-3/configure
--verbose --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --libdir=/usr/lib -
-libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-
languages=c,ada,c++,d,f77,pascal,java,objc --enable-nls --without-included-gette
xt --enable-version-specific-runtime-libs --without-x --enable-libgcj --disable-
java-awt --with-system-zlib --enable-interpreter --disable-libgcj-debug --enable
-threads=posix --enable-java-gc=boehm --disable-win32-registry --enable-sjlj-exc
eptions --enable-hash-synchronization --enable-libstdcxx-debug
スレッドモデル: posix
gcc バージョン 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
/usr/lib/gcc/i686-pc-cygwin/3.4.4/collect2.exe -Bdynamic --dll-search-prefix=cy
g /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../crt0.o -L/usr/lib/gcc/i686-pc-cygwi
n/3.4.4 -L/usr/lib/gcc/i686-pc-cygwin/3.4.4 -L/usr/lib/gcc/i686-pc-cygwin/3.4.4/
../../.. hello.o -lgcc -lcygwin -luser32 -lkernel32 -ladvapi32 -lshell32 -lgcc
YUKI.N>

このlgccってのが怪しいな。

YUKI.N>nm libgcc.a | grep printf
_eprintf.o:
00000000 T ___eprintf
U _fprintf

あれ。
こっちか。

YUKI.N>nm libcygwin.a | grep _printf
00000000 I __imp___printf
00000000 T __printf
00000000 I __imp__printf
00000000 T _printf
YUKI.N>

偉そうに書いて僕も間違っている。orz。
gdgdになったので、トラバもリンクも無し。

| | Comments (4) | TrackBack (0)

今日の日記

・福利厚生
http://rikunabi-next.yahoo.co.jp/tech/docs/ct_s03600.jsp?p=001165
うちも、ホテルとかレストランとか安くなるけど、いくひまねーよ。全部図書券でくれ!換金しないでちゃんと技術書に使うから。でも買ったら俺の本な。
『エンジニアが考える「夢の福利厚生像」3つ』を見て泣けてくる。そんなに働きたいのか。僕の希望は、大型書店に仕事中に行きたい。大阪の図○オフィスは良かったな。本屋の上にオフィスあるんだもん。Googleはプログラマ向けに充実しているけど、総合的にはIBMが一番充実しているイメージが高い。いや、でも小さい会社にも良いところあるから、若い人はGoogleやらIBMばっかりに行かないで。

・本屋
訳あって出金を押さえないといけないので、Amazonは使わないようにしてカートに本を貯めっぱなし。ビルゲイツみたいに金持ちなったら、Amazonでコンピュータカテゴリの本全部大人買いするぜ。図書館みたいな所を作ってコンピュータ関連の本と、ラノベを全部保管するのは意味のある事だと思う。最後に買ったのは、プログラミングPerlのVol2、ファイル構造、Boost本。ファイル構造はTAPLとどっち買うか悩んだけど、ファイル構造の方から再版かからないオーラが出ていたので保護することにした。

そうだ、本屋の話だ。AWK本とかいっぱい買いかけたけど、ぐっと我慢して刀語の最新版とシスタン ~システム担当者を雑用係と呼ばないでの2冊にする。シスタンは最後のインタビューが面白かったですよ(しまった、これだと某雑記帖の人と同じだ)。刀語もおもしろかった。ちょうど刀の正体が分かるところで読み込んでしまい、会社に行くの電車で一駅乗り過ごした。せっかく始発の電車で出社しようとしているのに早く起きた意味がない。

英文の山で疲れた僕には良い気分転換になりました。仕事頑張るか。

・C言語
変数を値を入れる箱と表現した時点で、ポインタを理解する難易度が上がると思った。

機械語常有而翻訳機不常有
えっ、開発環境無しでプロセッサブートさせるんですか?

・今日の老害
データシート、アプリケーションノート、ホワイトペーパーが、4時起き+通勤時間で読み切れなかったので勤務時間にガチ読みした。完全に僕の負けだ。勤務時間にデータシートのがぶり読みかっこ悪い。こんな物は当たり前のように頭にたたき込んでから仕事に向かうべきだ。つまりサービス残業の強制。The 老害。
データシートのきついところは長文のくせに落ちが無いこと。

・長門プロンプト
かなり効果有り。集中力が切れかけたときに、もう一がんばりできる。これは良いHack。カタログちゃんと作れば、エラーメッセージも長門化できるね、と思ったけど21世紀になってtcshのカタログかよって気もしなくもない。

こんなに近くで・・・長門ver.が泣ける。

| | Comments (0) | TrackBack (1)

通信カード

そろそろ一番最初のAirHから別の通信手段に乗り換えようかと思った。

http://jp.youtube.com/watch?v=FIzszff-mXc&mode=related&search=
これ見てるとソフトバンクも良いかなって言ったら、それはどうかと某チャットで怒られた。

今、ウィルコムがキャンペーンやっているから
> まとめると、ふつうに今のまま2xで使うか、このキャンペーンにのっかるかの2択だと思う。
らしい。ちなみに、今使っているのはx2じゃなくて普通の32kです。

| | Comments (0) | TrackBack (0)

2007.10.04

はてなに関する記事を探しています

瞬間的にアクセスが上がった今がチャンス。
タイトル通り、はてなに関する記事を探しています。

昔見た記事で、後で書くと思っていたらポインタを失いました。
内容をうろ覚えで書きます。

・はてなでは社外の活動(オープンソース等)で、評価が上がることはない。
エンジニアの気持ちが社外に向くのは、経営者として考えないといけない。
・8:2の法則で、8に入っている人が2を目指すようにしないといけない。

同じ記事かもしれませんし、それぞれ別かも知れません。
立場的に、近藤氏か、伊藤氏だと思います。
時期的には2007年に入ってからだと思います。
blogではなく、インタビューか、講演のまとめ記事だったと思います。

どなたかURL御存知であれば教えてください。

| | Comments (2) | TrackBack (0)

今日の日記

ひげぽんさんの所から
他の所でも読めそうなSubversionについては☆もブクマもつくのに、ここでしか読めないMona開発日記には何もつかないのが不思議。
僕はld --Map のリンクマップに eip が?を見て、DLLってmapファイルに載らないんだって、いまさら気がついてびっくりしたのに。あろはさんのGCCも同じ現象なのか。

二人に星どぞー
つ☆☆

・Okwave
おもしれー。2chとも、人力はてなとも違う微妙な空気がある。これはこのまま棲み分けして欲しい。

プログラマーは1日に何行うつのですか?
> ある会社にプログラムと入社して四年目。
これはどう突っ込んで良いのかわからない。

・Verilogネタ
良質なドキュメント発見
http://www.sunburst-design.com/papers/
腹くくってVerilogプログラマー頑張ろうかな。

・バイフォ
とりあえず、意味がわからんがpdbデータを全部ダウンロードしてみた。

・ゆうゆ
http://www.youtube.com/watch?v=QgIgtKFjkVY

・Lisp Schemeスレから
http://pc11.2ch.net/test/read.cgi/tech/1186922295/327-

> 327 名前:デフォルトの名無しさん[sage] 投稿日:2007/10/04(木) 00:39:35
> その昔スーパー括弧閉じってのがあってですね。

> 328 名前:デフォルトの名無しさん[sage] 投稿日:2007/10/04(木) 00:40:53
> >>327
> パンチカードでは重宝であったw
パンチカード=フォートランのすり込みがあったけど、Lispもパンチカードで入れていた時代があるのか。そりゃあるか。あっても不思議じゃない。


| | Comments (0) | TrackBack (0)

2007.10.03

プログラマと産科医

3つ並べたのは見たことがない気がする。

       刑務所        プログラマ         産科医
-------------------------------------------------------------------------
労働時間  8時間厳守   大体10時間以上   大体15時間以上
----------------------------------------------------------------------
始業時間  7時50分    8時30分~9時      6時~9時
----------------------------------------------------------------------
終業時間  16時30分       未定        21時~翌日
----------------------------------------------------------------------
通勤手段  徒歩数分     満員電車1時間   病院泊り込みで0分
----------------------------------------------------------------------
昼食     食う       食えない日がある   食えない日がある
----------------------------------------------------------------------
夕食     食う       食えない日がある   食えない日がある
----------------------------------------------------------------------
夕食後    テレビや読書など自由 仕事       仕事
----------------------------------------------------------------------
残業     全くない      ない日がない    ない日がない
----------------------------------------------------------------------
残業代    残業がないから無い 残業あっても無い場合がある 残業あっても無い場合がある
----------------------------------------------------------------------
休憩     午前午後それぞれ15分 上司次第  状況しだい
----------------------------------------------------------------------
土日祝    確実に休み  土曜日祝日は仕事、出勤する日曜日もある   出勤
----------------------------------------------------------------------
年数     努力次第       努力次第      2年以上
----------------------------------------------------------------------


収入の欄とやりがいの欄があると3つの帳尻合うんじゃないかな。
合わせてどうするって話もあるが・・

マ板の凄いところは、こんな状況なのにユーモアを忘れないところ。

| | Comments (0) | TrackBack (0)

今日の日記

・EDA Blog
Free EDA on Debian etchを見つけた。

・ごったに日記
あろはさんより
> 日本人は Web 日記もブックマークもブログ記事も全部一緒くたに書くとかいう話に.
一緒くたの方が好きですね。Googleで飛んできた人をげんなりさせるのだ。
ちなみにこのブログの検索ワードの10位はバルサン。1割までいかないけど数%の人はバルサンで飛んできている。ああ、世の中の人はバルサンの情報に飢えているんだ。今バルサンblogを立ち上げれば一躍アルファブロガー。

・The Practice of Programming
○○をさぼって目次を見る。これは良いっ!プログラミングへの姿勢がいろいろと書かれている。スタックの一番上に持って行きたいがどうするか。

・white paper
ここ数日は、電車の中とか、4時起きとかしながら、英文資料読みまくり。せっかくだから、どーでも良いところだけBlogに書く。
読んではずれだった文章一覧。

SEmulation: Turbocharging the FPGA Development Process wp-01021.pdf
Co-simについて書いてある。QuartusでCo-simが標準サポートされたのかと思って読んだら、一企業のプロダクトの宣伝じゃないか。こんなのをwhite paperとして公式資料にしないで欲しい。

FPGA Performance Benchmarking Methodology wpfpgapbm.pdf
Stratix III FPGAs vs. Xilinx Virtex-5 Devices:. Architecture and Performance Comparison wp-01007.pdf
St3とV5の比較。ワクテカして読んだが、たいしたことは書いていない。ベンチに使った回路を全部公表しろ。話はそれからだ。

Designing and Using FPGAs for Double-Precision Floating Point Math wp-01028.pdf
FPGAに500個とかそんな単位で入っている18bit × 18bitの乗算器の話。回路構成とか計算上の注意点とか書いてあるかと思ったのですが、やりました→quartusのレポートがこうなりましたしか書いていない。唯一の収穫は↓のリンクが書いてあったこと。文章名間違っているけどね。
×a paper and pencil evaluation
○a pencil and paper evaluation

・プロセッサと、FPGAの浮動小数点演算の比較
http://www.hpcwire.com/hpc/1195762.html
Opteronに比べて机上でたった数倍の性能差なら勝負にならない。200MHz overで動く真っ当な回路を作るのは大変。プロセッサの命令に相当する物も作り込まないといけないし。メモリやHDDとのアクセスだって作り込まないといけない。コプロ的に使うことで、プロセッサの横でFPGAがガンガン計算することでプロセッサが別のことに集中できるというメリットはある。

・この歳になって、よく分かっていないこと。
white paperと日本語の白書って別物ですよね。白書は政府が出す文章。white paperは報告書くらいの意味合いで良いのかな。

white paper
【1】白い紙;白紙.
【2】
(1)[-]白書:政府発行の公式報告書.
*米国政府は正式名称には用いない.
(2)*しばしば W- P-**英*白書:下院が特定の問題に関する調査の結果やその対策を報告する文書.
【3】[-] (一般に)正式の報告書. cf. BLACK PAPER, BLUE BOOK 4, GREEN PAPER, WHITE BOOK

ランダムハウス英語辞典から

・長門プロンプト
今更ながら、cygwinのプロンプトを長門プロンプトにした。起動時のメッセージ

YUKI.N>みえてる?
YUKI.N>うまく言語化できない。情報の伝達に齟齬が発生するかもしれない。でも、聞いて。
YUKI.N>

やる気が倍になった。
FPGAの情報を求めて来た人は、ここでげんなりして欲しい。

| | Comments (0) | TrackBack (1)

2007.10.02

今日の日記

・アジャイルレトロスペクティブ
http://blog.livedoor.jp/lalha/archives/50184845.html
原書持っているのに翻訳でてしまった。ふりかえり、って訳は好きじゃない。retrospectiveもpostmortemも、普通に反省会で良くね?そんなに反省会って言葉が嫌ですか。

・自作言語
みんな、いろいろ作って凄い。本当に凄い。しかも、途中経過を見られる事が素晴らしい。

・Perl
ディレクトリの扱いとかスゲー楽。こりゃ勉強して良かった。わざわざ、lsとかdirの出力をファイルやpipeで一行ずつ読み込む俺メセッドは今日卒業!
Perlは勉強したところまで役に立つ不思議な言語だ。

・Boost本
自称 京滋最大級の本屋には置いていなかったので、慌ててAmazonで購入。気がつくとHaskellの本がもう置いてない。以前は平積みだったのに流行に敏感すぎる。ここPrologの本も無いんだよな。「最大級」を名乗るんだから、売れなくても各言語/OSについてそれぞれ一冊くらいは常備していて欲しい。MS-DOSも忘れるな。Boost本は斜め読みでも面白すぎ。Boost Filesystem Library 使いたい。オブジェクト指向もよく分からんし、テスト技法も全然無いし、文字列のパースもろくに出来ないし、言語を学ぶには10年っていうけど長いなぁ。

・仕事中に・・・
別件でググっていたら、ときどきの雑記帖 リターンズに迷い込んで読み込んでしまった。1回は全部読んでいるはずなんだけど、何回読んでも新しい発見が。

> 書法→ ソフトウェア作法
> 作法→ プログラム書法
> 今なら 「プログラミング作法」
読もう。

いつだって忘れない、カーニハンは偉い人、で電卓作っていたのは何の本だったっけ?

>> C には qsort ってのがあるけど、現実はともかく規格上は別にどんなアルゴリズムで 実装しようが関係ないはず。
どっかでlibcかなにかのqsortの実装見たことありますが、要素が16個くらいになったら再帰しないでソートしてた気がします。今のCPUならもう少し大きい数でも良いか。

やはり仕事中にこのサイト読むのは禁止にしよう。面白い文章はどこまでも読み続けるから仕事にならない。

・リナザウ欲しい。
リナザウさえあれば、電車の中でも、駅のベンチでもプログラミングできるのに。嫁の許可さえでれば・・・。

・娘
娘が「そんなの関係ない、そんなの関係ない☆」を覚えた。可愛い。

| | Comments (2) | TrackBack (0)

2007.10.01

マシン語の陰謀

UNIXマガジン http://www.ascii.co.jp/books/magazines/unix.shtml
デザインウェーブ http://www.cqpub.co.jp/DWM/Contents/dwm0119i.htm
インターフェイス http://www.cqpub.co.jp/interface/default.asp

とCPU特集が多く、結局全部買ってしまった。

キバヤシ「shi3z氏の発言は、この3誌の売り上げを伸ばすための陰謀だったんだ!」
ΩΩΩ < な、なんだってー!

| | Comments (0) | TrackBack (0)

今日の日記

しばらくはうだうだ日記が続くと思います。

・日本語
やっほ!久しぶりの日本語ブログ!
まっちゃんの外人コントを思い出した。

・メーラー
PGPの関係でメーラーをShurikenからBeckyに変えた。これでネタの種2もメモ専用に。メモはTaskPrizeにするか。Beckyからhowmに本文送れるとうれしいな。

・Emacs Lisp
今までただのコピペだったEmacs Lispを少し書こうとしている自分がいる。そこは危険だ。逃げて!
verilog-modeは諸事情で使っていなくてSICPの勉強は終わったから、実質C/C++/Perlのコーディングにしか使っていない。もうxcalも、mewも使ってないし、mode-lineの色がお気に入りで10年近く使い続けている気がする。これを機にxyzzyへ乗り換えようかと思ったけど、diredが好きなのでこのまま長い物に巻かれておこう。せっかくなのでorg-mode導入。

・Mind PiECE
http://mindp.kantetsu.com/index.html
見つけた。Mind Managerから乗り換えるには高い。乗り換えキャンペーンで半額にしてくれないだろうか。この手の見た目がかっこいいソフトは、つい欲しくなるんだけど自分で書いてみるとそれなりの見た目にしかならない法則。ツールが凄いんじゃなくて、デザインしている中の人が凄い。

・Web2.0
書くならいまのうち。
ここに競合会社の広告がでていて少しへこんだ。コンテンツ書いている人間に、この会社の広告はいやんという権利は無いんだろうか。googleはともかく、はてぶは明らかに特定のコンテンツへのリンクだから、そういう苦情とかありそうな気がする。
ちょっと落ち着いたら、どーでも良くなった。不意打ちを食らって動揺しただけのようだ。むしろ、競合がこのblogにはうちの広告出さないでくれ!て言ってくるくらい有害コンテンツをまき散らそう。

| | Comments (0) | TrackBack (0)

Handbook

土日は育児をしながら、某Handbookを一気読みしていた。勤務時間外に、誰でも入手できる資料を読んでいるんだから、何を書いても問題ないと思うけど一応ぼかしとく。

LUT-Register Modeすげー。これは思いついた人間がすごい。DSPブロックすげー!。こっちは真面目に作りきった人がすごい。

PLLと入力ピンの対応はある。昔ほど厳しくないが、冷静に設計しないとまずい。

Device I/O featureは、もう一回別の人と合わせ読みして、疑問点を代理店に確認しないと駄目だ。複雑すぎる。3.3Vの対応を中途半端と見るべきか、ここまでがんばったと評価するべきか。

後で読む>AN224、AN315、AN437

もっとメモがあるんだけど、生々しいので自主規制。あっさり書いているけど500ページ超えの英文なわけで、かなり疲れました。後は、アプリケーションノートが同じくらいあるんだが、これも全部読まないといけないな。

面白いネタを見つけたらブログに書こうと思って読むと、比較的楽に読める。Handbook読みながら、ARMプロセッサもプログラマ人口の割には、旬なネタのブログが少ないと思った。

| | Comments (0) | TrackBack (0)

« September 2007 | Main | November 2007 »