Monthly Archives: September 2009

FTDI 245

 CNC の改良を検討している。今までのは FX2 の非力な CPU にソフトを載せて、タイマを叩いていた。それなりにファームとかの設計やデバッグで手間取ったのは事実。ステッピングモータをそれなりに廻すのは、高い周波数をぶち込む必要がある。高い周波数を生成するにあたって、CPLD とかの外部回路の力を使おうかと考えていたけど、50KHz くらいのパルスのパターンが出力出来れば問題なさそう。
 と言うことで、FTDI 245 で試してみる予定。これで問題無ければ、これを使う。とりあえず、波形を出して周波数の測定だな。

デジタル回路設計とコンピュータアーキテクチャ


 少し前に mixi の組み込み関連のコミュだったと思うが、どんな本を学生時代に読めば良いか?と言うスレがたった。俺は「パタヘネ」を推薦し、その旨を書き込んだ。一部に難色を示す人がいたが、概ね賛同されたように思う。
 本書はその「パタヘネ」を下敷きに新しく発行された本である。デジタル回路を学ぶ方法を今風の方法で書かれた本である。と言うのも、電子回路を学ぶ場合は自分で実際にハンダゴテを振るって、回路を組み立ててその動作を観察する方法があるが、昨今では HDL を駆使して回路を PC 上でくみ上げ、それをシミュレータに通してタイムチャートを観察するのが一般的になってきたからだ。
 もちろん、最初の方では「ドモルガンの法則」や「カルノー図」なども実用性はともかく解説されている。特に「カルノー図」では本書自体がその実用性について疑問を呈しているが、基礎は知っておいた方が良いだろう。と言うことで丁寧に解説されている。
 雑感はこれくらいにして、中身を俯瞰してみよう。
 第一章 ゼロからイチへ
  2進数、16進数の説明から、基本的なゲートの解説を行っている。
 第二章 組み合わせ論理回路設計
  ブール代数、カルノー図などの論理設計の初歩
 第三章 順序回路設計
  フリップフロップやラッチなどのタイミングが重要となる論理回路の解説
 第四章 ハードウェア記述言語
  この四章からが本書の特徴だと思う。HDL についての基礎的な解説がはじまる。
 第五章 ディジタルビルディングブロック
  ディジタル回路を構成するための基本要件を HDL での記述例を示し、動作確認を行う。
 第六章 アーキテクチャ
  アセンブラとそのアドレッシングモードなどの解説をおこない CPU がどのように命令を実行していくかを示している。
 第七章 マイクロアーキテクチャ
  CPU を実装するための方法や必要な構成要素をハードウェア側から解説している。実際にその要素を HDL で記述している例もある。
 第八章 メモリシステム
  キャッシュや仮想メモリの解説
 例題A ディジタルシステムの実装法
  デジタル回路のシステムを実装する上での、現実的なアプローチの解説。ロジックIC の解説から、伝送線路の特性、データシートの読み方などを解説している
 例題B MIPS命令
  MIPS のインストラクションセット
 パタヘネ由来のアーキテクチャ解説本だが、6章、7章が非常に面白い。Webマスターに力と時間があれば、ぜひマイクロアーキテクチャを PC ソフトで記述してエミュレータなどを作ってみたい。こう考えると、エミュ作者なんかも楽しめるかもしれない。
 今の学生はここから勉強出来るのかと考えるとうらやましくなる。
 良書である。

gmail のプッシュ

 出来るようになった。ただ、MMS みたいに着信したことが、すぐわかるようにはなっていないのでこの辺りがネックだな。これが解決すれば、本格的に docomo にも移行出来るかもしれない。

入門 Objective-C 2.0

 
 iPhone の発売に伴いハロー効果だろうか? Mac の実行環境や開発環境に注目が集まっている。iPhone の開発は基本的にMacでなければ行えないからだ。特に Coocoa や Xcode は必須の学習項目だが、それらを使う上で Objective-C の理解が欠かせない。Objective-C そのものの関連書籍は長いこと萩原先生が書かれた文献しかなかった。こちらの本は初学者にはきつく少なくとも、Windows, Linux など他のシステムでそれなりにプログラミングの経験がある人でないと読みこなせない内容だった。(逆に言えばそれをクリア出来れば、必要最低限のコストで理解出来ることになる。)
 今回の「入門 Objective-C 2.0」はMacで初めて本格的なプログラミングを始める人向けである。この本はワークショップ形式に実際にプログラムを打ち込みながら読み進めていけるので初学者に向いている。特に NSLog を使ってコンソールに結果を表示させる方法は非常に有用である。このテクニックは今後の GUI 開発でも使えるからだ。
 また、KVC などの独特のシステムのとっかかりとしても有用であるので、ある程度 Cocoa(touch)-Objective-C で開発したことがある経験者でも頭を整理するのにも有用である。
 ただ、GUI での開発に関しての解説は少ないので実際にプログラムを書く場合は、iPhone ? Mac ? などの対象に応じてそれぞれの GUI によるソフト開発本を併せて読むことをお勧めする。それが終わった後は、先に述べた「萩原本」を繙くと良いだろう。
 良書である。

人に会う

 稼働日だけど、連休にしてみた。今まで会いたくても会えなかった人たちに会ってきた。
 1. CNC の基板の設計屋さん
 現在、新しい CNC の設計を始めている。そのシステム構成を軽くレビューしてもらった。旧型ではあるが、ステッピングモータのコントロール基板も譲ってもらった。体験談は貴重である。
 2. 会社のお疲れさま会
 ~省略~
 3. グラフィックLSI 屋さん
 すごい久々の飲み。彼も転職して時間が経ったので、だいぶ環境に慣れてきたみたいで、色々と興味深い話を聞くことが出来た。NC のシステムの一部を見てもらえるみたい。大助かりだ。やっぱ、頼りになる。
 最近、ヒッキーが多かったけどやっぱり人と話をすると刺激がもらえる。もう少し、会う機会を増やそうと思う。

Mac での年賀状作成

 実家のMacのサポートをしている。「年賀状作成がしたいので、対応してくれ。」と頼まれたので、「宛名職人」を購入、インストールした。でも、スノレパになってバージョンアップが遅れている。世間一般ではどのようにしているか、サーチしてみた。
 葉書AB
  このソフト、すごく便利。使い方が簡単。たまに使うのはこういうミニマムが出来れば充分だ。
 はがきデザインキット
  これは「日本郵便」が出しているソフト。Adobe AIR で作成されているので、マルチプラットフォームが可能。
 上記の2つを組み合わせて、作成します。

Ergotron

 やっと到着した。国内に入ってから配送で若干トラブったけどなんとか到着。早速、開梱して取り付けてみた。かなりしっかりしている。似たような製品はけっこう売られている。今回は個人輸入したから、\17,000- 弱ですんだ。それでも国内の製品に比べると倍くらいの価格はするわけだ。
 スーパーエレクタを使っている。ここに据え付けようと色々と試してみたけどバイスを使っての固定は辞めた方が良さそうだ。当て木をかまして固定することも出来るが、それだとスマートさが失われそう。なので少し飛び出させているポールにカラーを使って固定するのが良さそうだ。カラーとは竹輪みたいな部品で径の調整をするための部品だ。軽くネットサーフィンしてもちょうど良さそうなのは見つからなかったので、特注しなければいけないかもしれない。
 最初はフランジ付きにしたかったけど、同梱品をよく見ると流用してフランジっぽく使えそうなのでこれを活用する。
 作る前からいきなり、VA 。これでだいぶ安くなりそうだ。

Verilog

 ちと、感ずるところがあって MAXII の RTL を書き始めた。なんせ初めてだけど、人の作ったコードを眺めているとなんとなくわかってくる。寄る年波だろうか?学習曲線は極めてなだらかだ…。
 もう少しで臨界点に来そうだ。こっちからも行くことにしよう。

VirtualBox(仮想環境)下におけるUSB

 MacBookPro 2.66GHz で Windows7RC を VirtualBox で利用している。TeamKNOx の芸風はデバイスプログラミングだ。現在は主環境をマックに移したわけであるが、時々 Windows でなければ開発できない案件も出てくる。最近では MAXII などの CPLD の開発だ。通常こういった開発にはメーカが提供しているツールを使う。残念ながらこういったツールはマック用にはほとんど存在しない。Windows。たまに Linux である。
 Alteraの開発ツールは問題なく、動作した。でもこのツールでサポートしているのはシミュレーションまでだ。実機に落とし込んでの作業は、USB のハンドリングが必要になってくる。今回は Optimize の カメレオンFX2を使っている。Optimize で提供している環境も Windows だけである。そこで USB が仮想環境で動作するかどうかがキモになってくる。
 結論から先に言うと、動作するとしない場合がある。
 動作したのは cusbwr2.exe
 動作しなかったのは spd_chk.exe
 である。
 とりあえず、cusbwr2.exe があれば開発したロジックを実機に展開することができるので良しとしよう。
 ちょっとずつ、進めていきます。

Note PC ARM

 とりあえず、こんなのにしてみた。この手のはピンキリだけど安いのを買うと必ず後悔するのでこれにしてみた。例によって海外通販。送料が結構高いけど、それでも国内で買うよりだいぶ安いので試しに買ってみることにした。ちなみに購入先はここ
 いつもは ebay を使うけど、ebay より安くて海外対応していたと言う事で。