« March 2007 | Main | May 2007 »

2007.04.27

GWの予定

VeritakでVPIを使っていろいろやる予定だったのが、Platform SDKのインストールがAirHではきつくて断念。どっかのCDについていないのだろうか・・

組み込みUNIXは先が長そうなのでぼちぼちと準備をしよう。CQ出版の本を見ても、cshが動くまで3ヶ月かかっと書いてあるから素人には厳しいが、手を動かさないことには前には進まない。

本命として、なんかGUIで簡単なアプリを作りたいんけどプラットフォームに悩む。見た目とか、機能的な所はこだわりが無いので適当に選んでみた。

・GTK
・QT
・Tcl/Tkとか、Perl/Tkとか
・Java

VB使ったら負けだと思っている。Windows環境で良ければ、C++Builderを買ってあるんだが(今ならTurboC++か)。MFCはちょっと無理。せっかくC++勉強したんだから、QTが良いんだけど、わけあってGTKも勉強しておきたい。

| | Comments (3) | TrackBack (0)

2007.04.25

今日のlisp

The Seasoned Schemer勉強中。

継続を使って、一気に処理を終える処理を自力で書けたとき、少し感動した。なんか、リストの先頭から検索していって、見つけたときに残り(cdr部)を返す関数らしい。仕事で久しぶりにC言語を使ったら、
printf("xxxx%d\n" a)とか、(exit)
とか普通に書いていてへこむ。,とか;が遠い世界に感じた。

Schemeプログラマのレベル10によるとレベル2~3のようだ。

そんなことより、ここ
http://perl.plover.com/classes/parsing/samples/slide041.html
これを見つけて、Higher-Order Perlを注文。Perlのぐだぐだ加減と、Lispの何でもありがMIXすれば、すごくぐだぐだななんでもありになることは間違いない。yaccとかlexとか、Javaccとか使うのは、既に何度も挫折しているのだが、こんどこそ上手くいくだろうか・・・。


| | Comments (0) | TrackBack (0)

2007.04.22

今日の夢

夢の中で、蘇我ちんが、「おで、ようやく理科大卒業したよ」って、満面の笑みでみんなに報告していた。もう、みんなとっくに30超えているけどな。

ちょっと、なごんだ。ありがとう。

| | Comments (0) | TrackBack (0)

今日のスルー力

どうにも、こうにも、上手く行かない。
全力でcomfortable zoneから出ようとしているけど、結局自分の世界で閉じている気がする。大事なところは全然違うところにあって、目を見開いて立ち向かわないと行けない。仕事のとらえ方を変えないといけないのに、変えられずにあせる自分がいる。

・「自分のために働く」が、「他の人のためにも働く」になった
・全力で仕事に向かっても、驚きや発見が少なくなっている
・今までは全てにおいて速度が最優先だったのが、今はもっといろんな事がもとめられている。
・上手く行っていない時に、周りがフォローしてくれるのが余計につらい。怒られて、泣きながら仕事したほうが楽だ。
・自分の夢ってなんだったんだろう。

スローキャリアと、スーパーエンジニアへの道にヒントがあった気がする。もう一度ちゃんと読もう。

大事なのは前向きな気持ち。逃げちゃ駄目だ、自分が変わらないといけない。

| | Comments (0) | TrackBack (0)

The little schemer

The little schemer


あ…ありのまま 今 起こった事を話すぜ!

『おれはテーブルの検索をしていたと思ったら
いつのまにかScheme処理系ができていた』

な… 何を言ってるのか わからねーと思うが
おれも何をされたのかわからなかった…

頭がどうにかなりそうだった…

というわけで、The little schemer 
================== 終了 ==========================

次はThe Seasoned Schemer
もうLXでは無理。
リナザウほすぃ。

| | Comments (0) | TrackBack (0)

2007.04.20

The Little Schemer

9章まで来た。Y combinationがさっぱりわからない。
目的も、コードの動きも、数学的な意味も。

そして電車の中でLXに打ち込むのも限界。難しすぎる。

| | Comments (0) | TrackBack (0)

2007.04.18

今日の読書

分かったつもり
読みました。
面白かったです。エンジニアの場合は、分かったつもりか、分かっているのか、手を動かして判断できるから状況はやや楽な気がします。SystemCにしても、C++にしても、もっと手を動かさなくては。

学者のウソ
こちらも面白かったです。
2chで取り上げられているような話をしっかりとまとめてあります。批判だけでなく提案もあり好感が持てます。


1万円の世界地図
さらっと流し読み。
いろんな統計について、情報源を明確にしながら考察をしている。最初の方だけでおなかいっぱいになり、途中からは流し読みになりました。とはいえ、値段分以上の情報はあります。

The Little Schemer
ちょっと読んでみました。なんかすごい。
こういう技術書もありなんだ、という発見がある。
持ち運べる薄さなのと、これの例題であればHP200LXでも十分なのでしばらく専念しよう。

| | Comments (0) | TrackBack (0)

個人で楽しむ組み込みUnix

個人で楽しむ組み込みUnix

なんか、組み込みの方に行きたいんだが・・

ボードをどれにするか悩む。

・随分前にかった初代Armadillo ARM7の奴。
・XPORT
・OAKS16/32 Peggy Proを作っている会社。2つボードがある。詳細不明
・Digiでかったらしいボード 買ったはずなのだがどこかにいってしまった。
・謎のH8基板

一歩下がって、Nios評価ボードと、SP3 starter kitか。


ここからFPGAボードに信号を飛ばしたいので、GBA、PSION、Jornadaとかは却下。

本当は、V2PROでPPCとかをやりたいんだが、EDKのライセンスがないのと、PPC搭載ボードで回路図まで公開されている安めのボードが無いので残念。(職場にV2PROボードいくらでも転がっているんだけどね・・・)

ARM7にこだわるよりは、NetBSDの実績があるARM9のArmadillo買おうかな。

| | Comments (0) | TrackBack (0)

組み込みUnixの本

今日、本屋で買ってきた本
始める組み込みLinux:すげー、H8でuClinux動かしているんだ。
組み込みLinux入門―開発環境/デバイスドライバ/ミドルウェア/他OSからの移行:CQの本
組み込みLINUXシステム構築:2chで勧められていたので

手持ちの本が、これくらい。
Linux Device Drivers、Embedded Freebsd CookbookFreeBSDのブートプロセスをみる

The Design And Implementation Of The Freebsd Operating Systemは実家に送ってしまった。
実家に帰って、Embedded UNIXも取りに帰らないと。

最終的には、自力でUnixっぽいOSを動かして、FPGAとつなげたいんだが、どうするのが近道だろう。

| | Comments (0) | TrackBack (0)

今日のAVM

逆に考えてみた。
TLMにAVMが取り込まれているという事は、TLM1.0+AVM2.0で勉強しておけば、
TLM2.0+AVM3.0?にも、すぐに対応できると思う。

まずは、TLM1.0+AVM2.0で行こう。

# 次の例題はSCVがいるのか・・・

| | Comments (1) | TrackBack (0)

2007.04.15

今日の読書

・パパのための幸せな家族の作り方
ちょっとレッテル張られている気がした。
そんな単純な話じゃないでしょ

・Schemeの本
ようやく3冊届いた。
とりあえず、Little schemerから始めようと思うが
本当にこれで勉強して大丈夫なのか不安になる。


・ウェブユーザビリティの法則 改訂第2版
これはおもしろい。
Webデザイナでなくても、読んでみると得る物は多い。
Webデザインという物が、どうあるべきかについて実例を
もとにわかりやすく書かれている。

たとえば、goolgeから直接ジャンプしてきたユーザーに対して
迷わせないためにはどうしたらよいか等、Web固有のデザイン
について、ジョークも交えながらわかりやすく説明してある。

| | Comments (0) | TrackBack (0)

2007.04.10

今日のゆうゆ日記

ゆうゆを聞きながら、このサイトをチェック。
♪ポニーテールの他の娘ばっかり、気にして悪い癖だわ☆

http://d.hatena.ne.jp/kohtani/20070403/p1
FPGAを使ったボードの開発も、同じような感じはする。ただし、実績のあるソースコードがほぼ無料でごろごろ転がっているOSと違って、ハードの世界は情報が少ない。世の中にあるハードの情報なんて、プログラマから見たハードの制御方法がほとんどだ。ハードの情報ももっとオープンにして、「人類の英知に触れる喜び」を共有したい。

| | Comments (2) | TrackBack (0)

AVM TLM でエラー

TLMを組み込んでAVMの第6章を動かし始める。で、このエラーが発生。
/home/natu/systemc/TLM-2006-11-29/tlm/tlm_annotated/tlm_annotated_channels/tlm_peq.h:12: error: `analysis' has not been declared

ソースを追いかけてもさっぱりわからない。tlm_peq.hで、analysis.hをincludeしているから、namespace analysisは宣言されているように思う。

しょうがないので、gcc -E オプションでプリプロセッサの出力を見る。tlm_peq.hが読み込まれてから、なぜか、analysis.hが読み込まれている。逆でないとおかしい。でも、当たりがついたのでソースを追いかける。

avm_analysis.h の先頭にこんな記述が!
#ifndef ANALYSIS_HEADER
#define ANALYSIS_HEADER

当然tlmのanalysis.hにも同じ記述が!
#ifndef ANALYSIS_HEADER
#define ANALYSIS_HEADER

かぶってるよ。ごらぁ!

しかし、ここを直してもいっぱいエラーがでる。ていうか、他にも名前がかぶっているのいっぱいある。Mentorクラスの会社が見逃すようなレベルではない。

可能性は2つ

・Questa環境だと、コンパイル済みヘッダーとかで上手く回避されている。
・TLM 2.0には対応していない。

後者の可能性が高いので1.0をダウンロードして、ちょっと試してみる。OK、兄者。とりあえずコンパイルは通った。

さて、困った。AVMを使うとき、TLM1.0と2.0では、びっくりするくらいソースレベルの互換性が無いことがわかった。このまま、TLM1.0で勉強を進めるか、それとも2.0に突入して、2.0でなんとかAVMのサンプルを動かすか、どうしようかなぁ。


| | Comments (7) | TrackBack (0)

ktrace と kdump

Binary Hacksにあったstraceですが、FreeBSDでは、ktarceと、kdumpの
組み合わせで使うようです。

さっそく、AVMのサンプルで試してみましょう。

ktrace ./a.out
kdump > ktrace.log


この辺りが、起動部分。
631 ktrace RET ktrace 0
631 ktrace CALL execve(0xbfbfeda7,0xbfbfecc0,0xbfbfecc8)
631 ktrace NAMI "./a.out"
631 ktrace NAMI "/libexec/ld-elf.so.1"
631 a.out RET execve 0
631 a.out CALL mmap(0,0xf50,0x3,0x1000,0xffffffff,0,0,0)
631 a.out RET mmap 671961088/0x280d5000
631 a.out CALL munmap(0x280d5000,0xf50)
631 a.out RET munmap 0
631 a.out CALL __sysctl(0xbfbfea78,0x2,0x280d1c58,0xbfbfea74,0,0)
631 a.out RET __sysctl 0


しばらくして、Copyrightの表示。
631 a.out RET write 1
631 a.out CALL write(0x2,0x80acbc0,0x34)
631 a.out GIO fd 2 wrote 52 bytes
" SystemC 2.1.v1 --- Feb 25 2007 08:54:25"
631 a.out RET write 52/0x34
631 a.out CALL write(0x2,0x2828ea13,0x1)
631 a.out GIO fd 2 wrote 1 byte
"
"
631 a.out RET write 1
631 a.out CALL write(0x2,0x80acb60,0x5b)
631 a.out GIO fd 2 wrote 91 bytes
" Copyright (c) 1996-2005 by all Contributors
ALL RIGHTS RESERVED"


この辺りで、ユーザー回路のログを出しているから、もう回路は動いている。
631 a.out RET write 68/0x44
631 a.out CALL write(0x1,0x816e000,0x50)
631 a.out GIO fd 1 wrote 80 bytes
"loop slave : top.ms1: sending : response: addr=00f3 data=ffff op=read \
status=OK
"
631 a.out RET write 80/0x50
631 a.out CALL write(0x1,0x816e000,0x4e)
631 a.out GIO fd 1 wrote 78 bytes
"loop master:top.ms1: receive: response: addr=00f3 data=ffff op=read st\
atus=OK
"
631 a.out RET write 78/0x4e
631 a.out CALL write(0x1,0x816e000,0x41)
631 a.out GIO fd 1 wrote 65 bytes
"loop master: top.ms1: send request : addr=0023 data=ffff op=read
"
631 a.out RET write 65/0x41
631 a.out CALL write(0x1,0x816e000,0x47)
631 a.out GIO fd 1 wrote 71 bytes
"mem slave : top.ms3: receiving: request : addr=0212 data=0f0d op=write
"

そしてわかったこと。

いったんシミュレーションが開始されれば、スケジューリングの段階でシステムコールは呼ばれていない。pthreadオプションをつけても同じかは微妙だけど、少なくともデフォでは呼ばれていない。仮に、systemcシミュレータのみを動かすのであれば、OSのオーバーヘッドってのはほとんど無視できる。(もちろんテストベンチで、メモリの確保と解放を繰り返したり、ファイル読み込んだりしたら別だよ)

SystemCの現状ってのは、こういうネタに使えるサンプル回路が少ないと思う。
そういう意味で、AVMは貴重な一冊です。

| | Comments (0) | TrackBack (0)

2007.04.09

今日の日記

さくっと。
Sony製品に使われているGPLなコードの入手先
http://www.sony.net/Products/Linux/Download/search.html

おおっソースが更新されている!期待age!
http://fridge-shell.blogspot.com/2007/04/systemc-base-free-behavior-synthesizer.html
日付が日付だけに、今日までスルーしていました。

| | Comments (2) | TrackBack (0)

2007.04.07

IDEコントローラ Shallot

まとめ終了。
http://homepage3.nifty.com/~Natsutan/ide/shallot.html

動機の所だけ抜粋。
============================================================================
動機
最後にIDEコントローラを作ろうと思った動機を。
Joelのエッセイに何回かでてくるのですが、

At the other extreme, are the brilliant superstars who write lisp compilers for fun, in a weekend, in Assembler for the Palm Pilot.

「週末に趣味でPalmで動くLispコンパイラをアセンブラで書くようなスーパースター」にあこがれたのが発端。自分自身が週末という限られた時間で何ができるのかに挑戦したかった。だから今回は「週末」に必要以上にこだわってみました。
もし、Joelの面接を受けることができたら「週末にLispのコンパイラは作れないけど、Compact Flashの読み出し回路なら作って動かしたよ」と言おう。
そして、「週末で」と時間を区切った方が良い結果が出ることもわかった。もし、時間を区切らなければFATの所を実装しようとして、結局完成まで持って行けなかったと思う。

Happy Hacking!

| | Comments (4) | TrackBack (0)

Googleとヘネシー先生

Sonyの本があまり盛り上がらないので、買っておいたgoogleを読む。いきなり、Hennessyという名前に引っかかる。スタンフォードでHennessyって言えば、パタヘネヘネパタの人か?と思って調べてみたら、ビンゴ
この人もWintel以外の所では影響力でかいな。

Sergeyの「The more you stumble around, the more likely you are to stumble across something valuable」にちょっと感動。もっともっといろいろがんばろう。

| | Comments (0) | TrackBack (0)

今日の本屋

久しぶりにリアル書店で本を購入
・パパのための幸せな家族の作り方
・ゲームシナリオライターの仕事
・プログラマは芸術家であり職人だ
・ひきこもりのすすめ
・密閉教室
・Lightweight Language
・刀語 1

重かった。

| | Comments (0) | TrackBack (0)

2007.04.05

Scheme

電車の中で動くちゃんとしたScheme環境を模索中。
ジャンクと化したFIVA103、2台を夜中にいろいろしてみるもやっぱり動かない。
嫁に新しいコンピュータ買って良いか?って聞いたら即座に駄目といわれた。
LXのSchemeは、動きがおかしい。(Schemeを終了させるとAドライブにアクセス出来なくなる)

とりあえず、Palmで動くLispMeで頑張ってみようと思う。存在は前から知っていたが、Tungstenのキーボードじゃ打ち込みが無理とあきらめていた。嫁を説得するより、キーボードになれた方が前向きだ。

50歳でSchemeを勉強はじめた人がいる。ちょっと痺れた。
私も頑張らなくては。
http://www.ksky.ne.jp/~sakae/sicp/

| | Comments (0) | TrackBack (0)

今日の日記

今、会社では空前のラジコンヘリブーム
そんな中、こんな記事が。
http://www.cypress.com/portal/server.pt?space=CommunityPage&control=SetCommunity&CommunityID=208&PageID=218&DirectoryID=859883
ラジコンヘリにサイプレスのPSoCが乗っているらしい。

モバイル板での禁句は「HP200LX」をLX200と呼んでしまうこと。これだけで、一発で相手にされなくなる。なんて思っていたら、最近Virtex4の影響で、自然にLX200といってしまう僕がいる。Xilinxに魂を売ってしまったようだ。

そんななか、こんな記事。
http://internet.watch.impress.co.jp/cda/news/2007/03/30/15253.html
賛同します。( ゚д゚)<ニョガーン

| | Comments (0) | TrackBack (0)

« March 2007 | Main | May 2007 »