(M)のドタバタ編集記 2005年5月号(?)


●5月1日
 ゴールデンウィーク真っ只中、皆様いかがお過ごしでしょうか?(笑) こちらは地道に宿題を片付けているところです(^^;)

 今日も昨日の続きを… 今日は、その某レガシーインターフェースに接続するもう片方のデバイスのための制御プログラム。基本形である2/3ボタンと、ホイール付き、ホイール&5ボタンの3パターンの識別方法はわかってるので、とりあえずそのまま実装。よしよし、動いてるぞ… ぢゃこっちを繋いで動作テスト… よしよし、こっちもOK… あれ? ホイール回してるのになんで値がゼロ?? 内部のステータスをダンプすると… げげ。ホイールを認識してないぞ!? デバイス種別判定ルーチンがちゃんと動いてないってことだな…
 …ん… だめだ! 割り込みルーチンぢゃprintfデバッグできない!(^^;) ってことで、そこだけ切り出してmainルーチンで実行。サンプリングレートを100、200、80… 次が同じくサンプリングレートを200、200、80… あ、あ、あ… ID読み出しコマンド発行してるのに、ACKだけ受け取ってその次に返ってくるIDコード保存してないぢゃん そらホイールフラグ立つわけないわな。…ん?? しかし… そうか… このコマンド発行アルゴリズムぢゃダメだな。ID読み出しコマンドの時だけもう1バイト余計に受信するようにしないと… ん〜 やっぱ美しくねぇ〜な(笑)
 さて、最近は“チルト付き”ってヤツもあるんで、そいつの識別方法も調べてみんとな… とはいえ、手元にそれ対応のがないので、連休中に買ってこないと&コマンド解析のための治具も作らんと…(汗)

●5月2日
 昨日、増刊の筆者さんから緊急通信メールが。原稿執筆中にちと問題が発生したそうで… 連休明けには原稿をいただかないとまずいので、今日は急遽そちらの筆者さんの事務所におじゃまして、増刊原稿緊急対策会議。さて、どうしましょうか…(^^;)
 対策会議が長引き、会社に戻ったらもう夕方6時前だし… すいません。まだ戻してない本誌初校を戻して、残った再校読みまくり。

 ついに、新生IBMLenovo始動ですか。カタカナで“レノボ”って書かれると、一瞬どこかと思ってしまいますが、ま、今に慣れるんでしょう… うちのノートもThinkPadで、以前故障したときに迅速に修理から戻ってきたけど、“レノボ”になってもその体制は維持されるのかしらん??

●5月3日
 今日は昨日から会社にこもって雑用処理。宿題Aを片付けるには、雑用Bが済んでいて問題Cが解決している状態でなければはじめられない。しかし、問題Cを解決するには宿題Dを片付ける過程でその答えがわかるので、宿題Dに手をつけるも、宿題Dを片付けるには機材E治具Fが必要。ってことで、ごそごそと治具Fをはんだ付け… で、機材Eと組み合わせて動作確認をしたところ、なんと機材E用のサンプルプログラムGがハングアップ! ん〜 この問題を解決するにはアナライザHが必要だが、今日はアナライザHは自宅においてきたので手元になし。もしかしてサンプルプログラムGのバージョンが古くて機材Eの仕様に合ってない!? ってことで、ファイルサーバやメールBOXを検索しまくったりしたもののソレらしいファイルは見つからず。仕方ないので雑用Bを片付ける(ややこしい…)
 雑用B終了。次、宿題Aを片付けるためではなく、純粋に宿題Dを片付ける作業。機材Eが動かないんで、ホストモードの動作確認はできないので、ターゲットモードのほうだけ作業。先日筆者から届いた評価ボードI(ホストモード用)とJ(ターゲットモード)のうち、評価ボードJを使ってテスト。しかし問題発生!そういえば、この評価ボードの仕様(I/OアドレスとIRQ)を聞いてなかった… 評価ボードJをよく見ると、IRQはボード上にジャンパがあるので、たぶんその番号を使っているのだろう。しかしI/Oアドレスに類する設定は見えない… しかたないので、VGAカード以外の拡張カード類をすべて外して、評価ボードJをバスに差し込んで電源ぶちこんでI/O空間をダンプすると… PC/ATアーキテクチャでは使われていないはずのアドレスでなにやらデータが読み出せているので、きっとそこが使われているのだろうということで、評価ボードJ用のサンプルプログラムKを、ソース中のI/Oアドレス定義部分を書き換えて再コンパイルして実行。うむ、なんとか動いている模様…
 ん〜っと、明日はどの宿題を片付けるために、自宅からナニをもってきてドレをすればいいんだ? 複数の案件がパラって少しずつしか進んでないもの大変だな。タスク切り替え時のコンテキスト切り替えに時間がとられて、マンパワーが有効利用できていないぞ!?(笑)

●5月4日
 今日も昼前に出社してごそごそ仕事… っの前に、いつものようにspam削除メールチェック… さすが連休だけあって、仕事メールは少ない(無くないところがナニですが^^;) っと1通のメールが…
 Subject:PCI エクスプレスによる??のパフォーマンスIO?続
メールアドレスには心当たりは無い(ドメインは.COM)。文字化けしているあたりに怪しいものを感じつつ開いてみると、中身は本文がなく、Subjectと同じ名前のWORDファイルが添付されている!! …怪しい、とっても怪しい(笑) が、開くに開けんぞ(^^;)
 ん〜 儲話やら出会い系spamならすぐに見分けが付くけど、さすがにこういう内容だとすぐに消すわけにもいかんなぁ…(投稿とかリリースを送ってきてる場合もあるんで)。後でスタンドアロンのテストマシンにDOCファイルも持っていって開いてみるか?(あ、テストマシンにWORD入ってないな)

●5月5日
 ふと思うところがあって、連休初日に用意した某サンプル・プログラムとドライバを自宅でテスト中なんですが… ん〜 やっぱりハングアップする…(実は「そういえば、あの処理ってヤバくないか?」と思い出し…(涙)) 受信バッファの管理がまずいらしい。要所要所に埋め込んだprintfデバッグ(汗)表示によると… やはり、受信バッファのポインタがバッファの最後のほうになっている状態で次のパケットを受信した直後で飛んでる…
 っということで、今日は夕方近くに出社してバグフィックス版を用意して、連休初日に送信した各筆者のところに、修正版を送付。
 まぁ〜このバグの件は置いといても、実のところこのサンプルが通用するのか若干不安ですが(を) NE2000と同様のPIO転送のNICならいざしらず、バスマスタ転送のNICは直接制御したことないので、このサンプルプログラムの構造が通用するか、ちょっと心配…??

●5月6日
 連休合間の出社日…って、ココのところずっと出社してますが何か?(^^;)
 まずは増刊号の原稿、1章分を送稿します。この章は新規の章なので、よろしくぅ〜 でもって、今日は本誌の再校戻しの2日目なので、校正を読みまくります!!
 そうそう、連休中に片付ける宿題案件そのX(^^;)のため、コレの付属基板で、試作基板が何枚かあったはずなので、担当のN2さんに“くっださいな”メール(笑) ってことで、試作基板1台と量産基板1台の計2台を入手。ふっふっふ… これでアレを作って…(妖しい(爆))

●5月7日
 さっそく昨日入手したコレの付属基板の加工開始。外付け回路は抵抗数本入れるだけなんですが、スタンドアロンで動かすためにシリアルROMソケットつけたり、抵抗回路やコネクタ取り付け部を基板の下側にサブ基板として取り付けて2階建て構造にしたり… コネクタはこのあたりかな? ん〜同じ色だとチャネルの区別ができないんで、他の色のICクリップを何個か買ってこないとな… 次は基板の加工…って、ありゃ!? ハンドドリルの刃が無い! だれかもってっちゃった? トラ技の道具箱にもないし… ったくぅ〜
 で、ボヤボヤしてたらもう3時! 他にもろもろ足りないものをリストアップして、買うものをメモにまとめて秋葉へGo 連休最後の週末ということもあるのか、人が多いっす(人が多いのはいつも?) あまり時間もないので、とにかく確実に売ってるところへ行って部品を買い集める…

 とりあえず必要な部品を購入したので、会社に戻る。まずは、買ってきたPC周辺部品がちゃんと動くか動作確認。実は某社から評価用で某PCI Express評価ボードを借りてるんですが、それを動かすために915チップセットのマザーボードを立ち上げなきゃならんのです。が、Pen4対応でかつ24ピンATX電源が手元に無くて、ためにPen4対応だけど20ピンATX電源を繋いでみたのですが動かんので(^^;)、今日298で24ピン+Pen4対応安物ATX電源を買ってきたのですが… よっしゃ!ちゃんと電源入ったで!!(笑)。…しかし、PC画面は表示されず、ピーピーと警告音が響いております… このマザーボード、オンボードにVGAは載ってないんで、VGAカードが必要なんですが、手元にPCI ExpressなVGAカードがないので、PCIスロットにふるぅ〜いVGAカードを差し込んだんですが… やっぱりダメですかそうですか… 次はとにかく、やっすぅ〜いPCI ExpressなVGAカードを入手せねば…(T_T)
 次、買ってきたドリルの刃で基板加工。穴あけ位置の精度なんて、鉛筆で適当につけた印に大雑把に穴あけ(笑) よし、こんなところかな。とりあえずはんだ付けや日曜大工的加工が必要な部分だけやっつけて、あとは続きは明日、自宅で…

●5月8日
 今日は自宅で昨日の続き。物理的加工は終わったので、今日はコレの中身の設計。以前からあたためていたアイデアによる某治具作り。“Z”状態を検出できるようにする点がポインツ! まぁ〜一部強引な手法で判定するんで、ちょっとデンジャラスなんですが(笑) よし。あとはダンピング抵抗の抵抗値を考察する必要が… これは今後の課題ってことで。
 次の課題。前々から作らねば作らねばと思っていた案件。先日各筆者に配ったNE2000互換LANカード用のサンプルプログラムですが、動作確認のために使ったのはISAバスとPCIバスカード。でもう一つ、NE2000互換なPCカードという選択肢もあるため、それを汎用的に使えるようにするための、CardBusブリッジの初期化のためのプログラム…まぁ〜いわゆるCardBus&16ビットPCカード対応汎用PCカードイネーブラだな。
 このプログラムのベースは、すでにコイツでも紹介してるんですが、このときは単にタプルを解析して表示するところまでだったんで、その次の段階として、汎用PCカードイネーブラ化を狙ってるわけで… いや、途中まで手をつけてる作りかけのソースがあるんで、まずはそのソースの解析から(作ったのは自分だけど、1週間以上経過したら他人なので(^^;))
 PCカードイネーブラのナニが大変って、そのシステムで未使用のリソースを判別して、そこにPCカードのリソースを割り当てていかないとならないわけで… っつ〜ことで、使用済みリソース情報の生成は、コレのCD-ROMにも収録されているツールPnP.COMでリソース使用状況を表示させ、そのログテキストを解析してリソース情報を定型フォーマットに変換するツールを作ることで対処。
 で、そのPCカードイネーブラ。16ビットPCカードだけでなく、CardBusにも対応させるので、PCI-PCIブリッジ周りの初期化も必要。ってことで、PCI-PCIブリッジのコンフィグレーションレジスタを見てるんだけど… PCI-PCIブリッジって、I/Oウィンドウが一つしかないんだよな… メモリ空間も基本的には一つか…もう片方はプリフェッチ空間用だから、メモリマップドI/Oとしてメモリ空間を使ってるかもしれないPCIカードだとまずいしな… PCカードはできればI/Oウィンドウを2本使えるようにしないと、リソースを割り当てられないカードが出てくるので問題(まぁ〜ほとんどのカードは1本で間に合うんだけどネ)。
 こんなこともあろうかと、こういうイカモノを入手しているので、さっそくPCIバス番号0のスロットにこのPCI-PCIブリッジを差し込んで、その先のバス番号2のPCIスロット(このマシンにはAGPがあるのでバス番号1はAGPに割り当てられてる)にCardBusブリッジを差し込んでWindowsを立ち上げてみると… あらら… 普通のPCI-PCIブリッジの先にCardBusぶらさげても“?”マークが付いて使えないんじゃん!! やはりそういうものか…
 しかし、同じバス番号2のスロットでも、845チップセットなどのハブアーキテクチャでPCI拡張スロットがバス番号2になってるマシンのスロットにCardBusブリッジを差し込んだ場合は… 問題なく使えるんですねぇ〜 以上のことから考察するに、つまりハブアーキテクチャのPCIブリッジは、いわゆる“サブトラクティブデコードなPCI-PCIブリッジ”なので、ブリッジのウィンドウレジスタでウィンドウサイズが指定されていても、実はそれ以外の空間でも他にDEVSEL応答がない場合はそのブリッジが応答して、下位のバスにトランザクションを伝播させるってことなんでしょうな…
 ん〜 の割りに、PCIのコンフィグレーションレジスタにあるクラスコードは、通常のPCI-PCIブリッジと同じ 06 04 00 なんだよな。まぁ〜ここにプログラムI/Fだけ 01(サブトラクティブデコード対応)にしちゃうと『なんか知らないブリッジがいる』と思ってしまうソフトがいると困るってか? いやぁ〜それはそのソフトがタコなだけだよ(^^;)
 いやぁ〜 それにしても、PCI-PCIブリッジのコンフィグレーションレジスタマップって、美しくねぇ〜よな…誰だよこのマップ決めたの。インテルの担当者でこい!(汗) それに比べて、CardBusブリッジの美しいこと!(笑) PCMCIA/JEIDAの担当者偉い!(爆)

●5月9日
 さて、連休が明けて、今日から本格始動?!(何が?←もろもろが^^;)
 さっそく、次の特集の暫定版原稿がメールで怒涛のごとく到着。さっそく目を通しておかねば…
 で、午前中の会議がなくなってしまったので(汗)、お昼すぎに打ち合わせ予定の筆者さんと、お昼から打ち合わせすることに… っということで、こんなボードを考えていまして、こいつで某CPUを動かす予定なんですが、そのコンパイラがですね… っということで、御協力をいただけませんか。よろしくお願いいたします!!
 あぁ〜 増刊やんないといかんのですが… 追加分の締切りが連休明けだったんですが、まだ届いていない筆者さんが… 原稿催促メール出しまくり(^^;)

 玄人志向から発売の キットが登場… USBポートの内と外の構成を自分ではんだ付けして決められるって点がポイントか。パッケージの外からの写真しか写ってないんで、どこまでの部品をはんだ付けする必要があるのか若干不明(記事では「コンデンサとコネクタ」とあるけど)… まさか、QFPまではんだ付けさせる!? 話のネタに買ってくるか… USBコントローラがVIAのチップってのも、動作確認用ボードとして有用だし(VIAのFS/LSコントローラはUHCI。UHCI+EHCI構成のUSBコントローラはIntelのもあるけど、Intelはチップセットに入ってるから単体増設用PCIカードとしては存在し得ないので)。

●5月10日
 先週の土曜日に買ってきた部品で、さっそく某インターフェースのための子基板を製作。このL字型にユニバーサル基板を切り出す作業って、これで何回目か?! この形状で専用にユニバーサル基板作るろうかな(笑) 繋ぐデバイスはハーフピッチなので、ピッチ変換基板の上に実装して、さらに切り出したL字型ユニバーサル基板に実装。それと、タイプBのコネクタはいつも使ってるピンヘッダ/ソケットによるスタック接続時より高さがあるんで、ちょっと細工しないと綺麗に固定できないんだよねぇ ってことで、コネクタスペース分をヤスリで削って、基板1枚分上に重ねてはめこみ。よっしゃ。これで高さはバッチリ、スペーサでちゃんと水平を保ちつつ固定できるぞ。とりあえず物理的加工だけして、続きは後で…
 おっとそうだ。某筆者に動作確認用でPCIのLANカードを発送せねば… サンプル・プログラムの開発、よろしく頼みまっせ!(笑)
 さて、増刊関連の作業。CD-ROM付属号なんで、当然サンプル・プログラムを収録せにゃならんのですが… 諸般の事情でCコンパイラを変えないとならない… となると、それまでのサンプルがコンパイルできないかもしれない…ということで、無理を知りつつ筆者に動作確認のダメだし。申し訳ありませんが、確認作業よろしくお願いしますぅ〜

 MMCで1Gバイトですか… がんばるな(^^;) ってか、なんでSDでやらないんだろ。厚さがあるのが嫌い??

●5月11日
 さてと、今日は徹夜で、昨日作った某子基板のバス配線はんだ付け。アドレスバスは1本だしデータバスは8本、それにチップセレクトやリード/ライト、割り込みとリセットで十数本の配線。さっさと終わらせてしまいましょぉ〜
 …で、はんだ付け終わり! で、とりあえずFPGA内にコレで紹介してる8ビット汎用バスブリッジを入れて、拡張コネクタのところの配線をあわせて… ピン配置はこれでOKかな? 論理合成して配置配線してダウンロードして… さて、デバイスの内部レジスタにアクセスできるかな?? …おぉ〜なんとなくリビジョンIDが読み出せてる感じ! ロジアナで見る限りはCPUバスの各信号のタイミングも問題なさげだし。とりあえずハードウェアは接続完了!?!?
 さて、仕事仕事(爆) まずは今日の午前は、久々の(を!)編集部内会議。その後はお昼を食べながら某筆者と打ち合わせ。そうなんですよ、ずいぶん前からお願いしていた某CPUボードの解説原稿の件。今度こそよろしくお願いいたします(^^;)。
 そして増刊編集作業に復帰… 追加分の原稿が来たのはこの章とこの章で、訂正があるのは…

 お!ついに完成ですか。このN社さんには何度も打ち合わせに行ってますんで… そうだったな。南棟ができて直後に行ったこともあって、そのときはずいぶんと敷地に余裕があるなと思ってたんですが、その次に行った時は北棟を立てているまっ最中でした。ってことは、今行くときは北棟は稼動状態なわけで、行くたびに状況が変わってるってことだな(^^;)
 今のところ、こちらにうかがう予定はないけど、この近く某氏の秘密基地(笑)には、近々行くことになるかももも!?!?

●5月12日
 今週末、社内で一部部署の引越しがあるんで、社内は荷造りで混乱しております。Interfaceは引越しはないのですが、混乱の余波をうけております(^^;)
 今日も通称村上実験室ですったもんだやっております。筆者からのサンプルプログラムがうちの環境だとうまく動かなくって(汗) この問題を解決せにぁ〜増刊号に掲載するわけにもいかんでしょう… どこに問題があるのか考え中…考え中…

 S社もWチューナ機を出してきましたか。ハイビジョン対応のRDZ-D5のほうは置いといて(^^;)、注目はRDR-HX92W。2層DVD+R対応でしかもGRT付き。アナログ波オンリーな機器に注力されるのは、あと2、3年?? それ以降の主力は地上デジタル対応機になるんでしょうな…

●5月13日
 今日は創立記念日で弊社は休み… なんですが、仕事が山積みなので今日も出社… ってか、昨日からいるんですが(涙)
 完成した某子基板を実際に実装して動作確認… オリジナルの設計はプラットホーム環境がまったく違うんで、Cのソースコードの移植も大変。幸いなことに、とりあえず今回のはデータバスが8ビットだったんで、int型の違いなどに悩まされることはあまりないのですが… 一部エンディアンの違いを意識しなければならない部分もあるんですが、とりあえずメモリ上は全部char型で処理して、ワードでいじらないとまずいところのみ気をつけてバッファ操作… さて、これでコンパイラも通ったが… ホントに動くのか!?(汗) …緊張の一瞬(ケーブル接続!) …ダメだ…“不明なデバイス”と認識されてまったく動いてる気配がない…(涙) さて、どこから手をつけますかね…
 おっと、こっちばっかりやってられません… 増刊編集作業も進めないと… 今日も増刊号1章分送稿。今日送るのは新規の章なので、よろしくお願いしますぅ〜

●5月14日
 今日は業者による引越し作業日らしいので、会社には行かないほうが無難!? ってことで、部屋で仕事仕事… ってことで、CardBusイネーブラの続き。レジスタマップが美しくない!とか言ってもPCI-PCIブリッジが変わるわけではないしな… ってことで、しぶしぶ(??)PCI-PCIブリッジの挙動の理解もかねて、手動操作でウィンドウレジスタを書き換えて、任意のアドレスがセカンダリバスに抜けるかどうかアクセステスト。
 メモリのほうは問題なく、意図したとおりに制御できるようになったものの、どうもI/O空間がおかしい… ん〜?? このアドレスだとI/Oウィンドウを設定したのにマッピングされないぞ!? コマンドレジスタのI/O空間イネーブルビットも立ってるよな… セカンダリバスのリセットは解除してるよな… I/Oウィンドウアドレスのベースとリミットは逆にしてないよな… なのになぜマッピングされない!?
 ためしに、Windowsはどう初期化してくれるのかを観察するために、わざとベースアドレスレジスタ1本あたり最大の256バイトを要求するPCIデバイスをFPGAで作り、PCI-PCIブリッジの先につなげてみると… よよよ! FC00hの下はF800h、その下はF400h…と、000h/400h/800h/C00h単位で使ってる… ああああ!! そうだった!!! ISAバスの10ビットデコードデバイスの存在を考えて、PCIのI/O空間はアドレスバスのビット9/8がゼロになるアドレスしか使わないんだったっけ… そのポリシーはPCI-PCIブリッジにも引き継がれてて、たとえばI/OウィンドウのベースアドレスがE000hでリミットアドレスがEFFFhでも、実際にセカンダリに繋がるのはE000h/E400h/E800h/EC00hの256バイト×4の空間だけなのね…
 …ってことで、ブリッジ関連のリソース割り当てルーチンも、I/Oアドレスに関しては上記制限を考慮したアドレスを割り当てるアルゴリズムに変更… まぁ〜もともとPCI-PCIブリッジの先でのCardBusブリッジの使用は、Windowsでも“?”マークが付いてしまうほどいろいろ制限が多いけど、サブトラクティブデコードなPCI-PCIブリッジだったり、手動操作で広い空間をブリッジ先にマッピングした場合にもツールが動くように…ってことで。
 これで、例の件のためにNE2000互換なPCカード型LANカードが手軽に使えるようになったぞ。いやぁ〜それまでは、プラットホーム依存バリバリでアドレス8000_0000hあたりにウィンドウ空けたりして無理やりイネーブルにして使ってたんで、プラットホームやCardBusブリッジが違うと、コレ見ながら手作業でポチポチと設定して、設定が1ビット違うだけでとんでもないアドレスにマッピングされて、システムがすっ飛んでしまうこともシバシバ(汗)

 発表されたようですね。噂どおりXbox 360の名前で。そこかしこで言われているようですが… DELLの新型筐体シリーズ??(色が白いけど^^;) PowerPCが三つも入ったモンスターマシンってか。

●5月15日
 今日はなぜかMMCカードのサンプル・プログラムをいろいろと… 昨日といい今日といい、某筆者から「連休中に片付けるって言ってたあの件はどうすんの!?」というお叱りのメールが届きそうなんですが… いえいえ、昨日の件も今日の件も、その例の案件にも関連する基礎実験なんですよ。とくに今日はクロック同期シリアル通信の基本動作を確認する意味で、クロック同期シリアル通信の応用例であるMMCカードのアクセス事例を研究して…(こじつけ!?(笑))
 ん〜 やっぱりSCI経由だと、なんかうまくいかんなぁ〜 ってことで、GPIOでソフトウェアでクロックをピコピコ作る方式で、まずはMMCの基本アクセスを徹底理解。実はこのあたり、だいぶ前に途中までやってたのがあるので、とりあえずはリハビリ(^^;) コマンド発行前と発行後、レスポンスの受信とデータの受信で、ダミーコマンド/クロックを入れないと、どうも動かないところがあるんですが、どういうときにそれが必要なのか、今ひとつ確信がもてないのがつらいな… MMC&SDの偉い人に聞いてみるしかないか…
 GPIO版でセクタダンプまで来たので、それを上位層はそのままI/Oアクセス部だけGPIOからSCIに変更してテスト… ん〜 ステップ実行でゆっくり実行すると問題ないのに、ブレークポイントまでGoすると、途中でクロックが数クロック歯抜けになったように、8ビットの倍数と合わないところでデータが切り替わってるんですが… なじぇ!?!?

●5月16日
 さて、今週も始まりました。まずは増刊編集作業から! とりあえず、プログラムのほうがまだ未完成なので、リスト以外の部分のみ手を入れて原稿を送稿。プログラムのバグなんて、どっかちょっとしたところが間違ってるだけなので、処理内容の大筋を書き直すことにはならない…という前提のもと。大幅変更になったら? そのときはその時、制作課に「ごめんなさい、前面差し替えして!」をお願いするだけです(をぃ)

 ついにExpressCard対応カード登場ですか。まずはストレージ用ってことで、CardBusをExpressCardに置き換えた版って感じかな? 帯域を必要とするところでないと、ExpressCardの意味はないわけで、まぁ〜とりあえず順当な用途やろね。次はやっぱり、ExpressCardでギガビットLANカードかな?? カード形状に押し込んで発熱は大丈夫か!?という問題とかはあるかもしれんが…

●5月17日
 ん〜 おかしい… コントローラからの割り込み処理で、何のイベントが発生したかをメモリに記録するようにしてダンプをとると… なにぃ!?バスリセットしか発生してない!? ん〜バスリセットは検出するのに、なんで他のイベントが検出できない??
 時間も時間なので昼飯を食べながら考える… ん? そういえば、子基板作ってからの配線チェックって、電源とCPU側のバスラインしか確認してないな… と思い、昼食から戻り早速USB側の配線をチェックしたら… あぁぁぁぁぁぁ D+とD−を逆に配線してたよぉ〜(←バカ!) そうか… 両方が“L”に落ちるとバスリセットだから、配線逆にしてもバスリセットはかかるんだな…(汗) で、バグの症状としてバスリセットしかイベントが発生してなかったのも頷けるってわけで… トホホ…

 ついに発表ですか。ん〜 LANとかUSBの口がいっぱい付いてますよ… しかも驚いたのが、SDカードスロットをちゃんと装備してるって話。あのS社が…(^^;) あれ?Cellの中にSPEって8個入ってるんぢゃなかったっけ? 1個でも死んでて不良品としちゃうと歩留まり悪すぎるから??(汗) HDMI端子も2個ついてるし、どうするつもりやねん!?!?
 …ってか、映像出力はXbox 360はD4端子のようだけど、PS3はHDMI端子できたか。D端子は先が無さそうなのは予想していた(^^;)ので、やっぱHDMIかな。でも、どこぞの団体がHDMIでもダメだししてる話もあるので、ディジタル・ハイビジョン時代の映像端子はどうなることやら?!

●5月18日
 やばい… 増刊号の編集作業が終わりません… そろそろレッドアラーム全開なので、いよいよ筆者の事務所に乗り込んで(^^;)最終調整…
 …だめだ、やっぱサンプル・プログラムを作り直さないと話になりませんよ…ってことで、急遽デバッグ大会勃発。いやぁ〜しかし、やっぱ仕事でやられている方は違いますね。USBアナライザのようなツールがちゃんと揃ってるし(あたりまへ!) しかし、それを持ってしても解決できないバグがががが… あぁ〜もうこんな時間だ。今日は編集会議があるんですが、申し訳ない。こっちを優先させてください。
 そして2時間後… ま、バグの原因なんて、わかってしまえばどうってことは無いんですよね(汗) なんとか問題もクリアして動き出しました。よっしゃ!
 っということで、夕方は別件で某商社でとある案件の打ち合わせ。そうか、初めてお会いしてからもう1年以上になりますね。すいません。記事という形ではいまだに掲載にいたらず… しかし、着実に周辺を固めて、道具も揃ってきましたので、そろそろいけそうな体制に。そこへ今回の話が入ってきた…という状況でして、渡りに船というか、こちらとして是非にお願いしたいです!!!

 昨日のPS3に引き続き、今日はこれですか… 前者二つに比較すると、ハードウェア性能的には控えめ…みたいやね。ま、こいつはハナっから、マシンスペック競争からは一歩引いてるからね。

●5月19日
 今日は午前中に某ボード屋さんで某プロジェクトの第1回打ち合わせ(^^;) 昼1時過ぎまで長時間の検討会?! うちとしては、現状のままだとちょっとつらいなぁ〜とか思ふ… 今後の展開に期待!
 で、ほんとはその後で、コレに行きたかったんですが、増刊が忙しいからな… ってことで断念。昼飯も食わずに会社にとんぼ返りして、増刊号の編集作業。
 …とりあえず、今回の増刊のもっとも重要なデバイス解説編の原稿はすべて送稿… しかし、予想以上にページが増えてしまったので、さてどうするか… 明日はプロローグの部分について、筆者と作戦会議せねば…

 ほぉ〜 Embedded Processor Forum改めSpring Processor Forumで、M下がUniPhierを発表してるそうな。なんか発表会までしてえらいぶち上げたみたいだけど… ふむふむ… マイコンに毛が生えた程度のもんぢゃないことだけはたしかだな(それしか読み取れないんか!(笑))
 ってかさ、SHとかみたいに普通に使えるCPUぢゃないと、うちぢゃ取り上げづらいんだよねぇ〜…

●5月20日
 今日は昼前に八王子方面で打ち合わせ… げ! 打ち合わせ資料のリストをプリントアウトしてこなかった!! ってことで、いったん会社にでて、印刷してから待ち合わせ場所のいつもの喫茶店に。
 …カクカクジカジカで、いろいろ苦労しました(^^;) で、いくつか質問があるんですが、このルーチンはナニをしているんですか? こっちは?? …と、根掘り葉掘り質問。
 で、昼過ぎには会社にとんぼ返りして、さっそく編集作業… さて、最後に残った難関が第1章だったり… おぉ〜い! 一番最初の章が一番最後ってどぉ〜ゆぅ〜こと?!(汗)

 なんでこの製品紹介記事がAVウォッチの下にあるの?? っと思ったけど、iTunes対応サーバー機能搭載だから?? 秋葉に出回ったら入手しようと思いつつ、出だしが遅れて初期ロット入手できず…というシナリオが…(^^;)
 …っとまぁ〜 それは置いといて。風の噂に聞くところによると、J○○○端子が出てないという話なので、『そ、そんなぁ〜』状態なんですが(T_T) パッケージがQFPならまだパッチも当てられるけど(私はできないですが^^;)、BGAぢゃ手も足も出ないしな… え? BGAにパッチ当ててるあの筆者にお願いすれば?! いやぁ〜 対象ピンが一番外側の列のピンだとか、ビアが出てるとかしてないと、そりゃ無理っすよ…

●5月21日
 髪がだいぶ伸びてきたので昼過ぎに床屋へ。それから出社してごそごそ雑用整理。今日はいま編集中のCD-ROMに収録するコラム記事の用意。某USBコントローラの開発ツールのインストール方法やら簡単な使い方の説明など。なもんで、ツールのキャプチャ画面をバシバシ取る。「ん〜 コレとコレの間にこの設定画面もないとわからないよな…」とかいいながら、PrintScreen押しまくり。で、普通にPrintScreenでキャプチャすると、マウスカーソルが入らないんだよね。ほとんどの画面はそのまんまでいいけど、メニューの選択のようすを示したい場合は、やっぱカーソルが写ってないとイメージが… ってところは、あとからカーソルを付け足したり!? カーソルごとキャプチャするツールをいれりゃいいんだけどね(^^;)

 次… 先日中古で(汗)買ってきたやっすぅ〜いPCI ExpressなVGAカードを使って、例のPCI Expressな915チップセットのマザーボードが起動するかテスト… よっしゃ! 画面が出たぁ!! ん〜 もうPCIバス上にVGAカード挿しても見てくれないのかナ…
 で、さっそくREDPCI.COMでPCIバス環境をちぇぇ〜っく! おおぉ〜 さすがにPCIバスがたくさんありますな。ん〜 なるほど…たしかにPCI Expressはソフトウェア的にはこれまでのPCIと同じに見えるようですな… で、某PCI Express評価ボードも、その先に挿したカードがこっちから見えてるってことは、ちゃぁ〜んとブリッジ動作してるってことですな。
 まぁ〜とりあえず、ここでできるのはマザーボードや評価ボードがちゃんと動くかどうかの動作確認程度なので、今日はここまで。あとで某筆者さんのところに持っていって、最新ディジタルストレージオシロを繋いで波形を見るのです!!!

●5月22日
 今日は昼前にのこのこ出社して雑用処理… この増刊はCD-ROM付属なんで、その中身のファイルも整理しないとね… みなさんREADME.TXT書いてくんないんで(^^;)、とりあえずはこちらで定型のを用意して各フォルダにコピー… あれ? このフォルダからっぽだぞ… ああああ! そうだった!! まだ増刊収録読者頒布用最終完成形プロジェクトファイル一式、まだもらってないんだよ!!! …っということで、筆者に催促メールを出すと… えええ?! まだ完成してなひぃ〜!? あぁぁぁ〜 明日そちらに行きます!!(汗)

 秋葉でも売られ始めたようですね… エビフライは衣がボロボロ落ちそうだし(笑)、たこ焼きはタレがべたつきそうなので(^^;)、ここはひとつシュウマイを…!?!?

●5月23日
 ってことで、今日は筆者のところに突撃! 今月中にはファイルができあがってないと、CD-ROM収録は間に合いませんよ!! ってことで、今週中に必ず仕上げてもらう約束を取り付ける。
(いやほんと、本当に間に合うかちと心配(汗))

 連休からボチボチ作成していたCardBusイネーブラの動作テストもかねて、今日はこんなカードを入手。パッケージ裏を見ると… なにぃ〜VIAのUSBホストに、TIの1394に、カニのLANかい。これだけマルチベンダのチップを採用ということは、HiNTあたりのPCI-PCIブリッジが入ってて、CardBusからブリッジ経由で各デバイスが繋がっている構成だと思っていたのですが…
 さっそく自宅に戻ってCardBusスロットに挿し込んで見ると… いきなり5つものデバイス一覧が出てきて一瞬ドッキっとするも、USB2.0なホストコントローラだからマルチファンクションだと理解(しかもさすがVIAチップ!? UHCI×2とEHCIという構成でした)。 にしても… ない… どこをどうみてもない! PCI-PCIブリッジが存在しない!! 検出された5つのデバイスともに、バス番号もデバイス番号もみんな同じでファンクション番号だけが違う… しかもマルチファンクションなのに、USBと1394とLANでベンダIDが違う!!! こ、こ、こんなマルチファンクションデバイスってありですか!?
 う〜ん、PCカードをばらしてみたい衝動に… もしや中は、禁断の“ワイヤード接続”なのか!?!?(←それって規格的にアリなのか!?) …名前に勝るとも劣らず、本当に“スゴイカード”です(笑)
(↑実際には、個別のPCIデバイスを単純なワイヤード接続するだけでは、デバイス番号が同じでファンクション番号だけ変えることはできないので、コンフィグレーションサイクルの時だけアドレスフェーズの値をゴニョゴニョする何らかの細工が必要なハズ…)

●5月24日
 今日はお昼に東京駅で某筆者と待ち合わせ… 近況とかいろいろ情報交換を…
 午後は会社にもどって、増刊号で最後の最後になってしまったAppendixやらコラムやらを用意。明日で完全に終わらせるぞぉ〜!!(←まだ終わってなかったんかい!という突っ込みが多数^^;)

●5月25日
 あと、増刊で入稿してないページってありましたっけ? CD-ROMの使い方と、奥付と… CD-ROMレーベルも用意しないといけませんね…(まだ細かいのが残ってます^^;) …あ!もう一つ重大な問題が!! 増刊号のタイトル、まだ決めてないんだった(を〜っとぉ!!)

 おっと! ついに決まりましたか!! これでまた、特集ネタがまた一つ…(^^;) いやぁ〜しかし、個人的には電波物は好きくないんだよなぁ〜 電波って目で見えないから(笑)
 …とはいえ、そろそろこの“電波物インターフェース”の分野にも手をつけないとナ… ってことで、まずは無線LANか!?(ってことで、水面下でいろいろ打診中…)

●5月26日
 いつも(?)妖しいサイトのURLを送ってくださる某筆者さん(笑) 先日のは一発芸的でしたね(^^;) まぁ〜 ほとんどがアングラ系とか著作権的にグレーだとかで、ちと誌面掲載には至りませんが(汗)、ひょうたんからコマというか、時々そこから有力筆者さんが見つかったり、技術的にすぐれた情報が得られる場合もあるんで、あながち無視もできません。
 で、今日送られてきたURLも、とっても危険な香りがするんで、自宅帰ってから見ますね(汗)

 最新液晶工場の実体ですか… 「装置の据え置き以降は装置メーカの人間も工場内に立れない」とか「複数の業者に細かく分散して図面を渡す」とかいう徹底ぶり!! ここまでしないと競争には勝てないってか…

●5月27日
 おっと!USB増刊号の表紙の手配も忘れないように… デザイナからラフの表紙案が来てます。部長に転送して、意見を仰ぐ…(私個人的には表紙はCoolなら何でもいいっす(^^;))
 そうそう、日々目の前に積まれた増刊号や本誌の仕事を片付けるので手一杯になりがちですが、それらの仕事が終わってから先のことも考えないとね… ってことで、増刊号や本誌の編集作業が終わる(ハズの^^;)6月上旬のスケジュールに向けて、いまから次や次々の企画について各筆者との打ち合わせのためのアポ取りメールを打ちまくり。場合によっては簡単な企画書も添えてメールを出さないといけない場合もあるんで、とりあえず企画をでっち上げよく練ってから添付メールなど…
 夜は部長とトラ技編集長&副編集長と、今後のトラ技とInterfaceについて語り合う(え?!)

 な、なにぃ〜!!!  あ、でも、6月上旬ったらすぐか…

●5月28日
 USB増刊号の付録CD-ROM作成をせねば!! 実はまだ一部の章のサンプル・プログラムが完成してなくて(をぃをぃ) えぇ、月曜日にごり押ししたプログラムも、なんとか今朝までに筆者から送られてきたので一安心(^^;)
 動作確認も順調順調… さて次はこのUSBコントローラか… このUSBコントローラの場合、外付けされているI2C接続のシリアルROMを引っこ抜いて、シリアルROM無しで起動させてからダウンロードする必要があるのですが… ありゃ! シリアルROMのデータ線をパターンカットした基板、いま手元に無いんだっけ! 手元にあるのはシリアルROMがソケットも使わずに直付けされた基板のみ… これぢゃ作成したプログラムをダウンロードできないな…まずいぞ… 何かよい方法は… あ!そうだ!! どうせI2Cはオープンドレイン駆動だから、データラインをGNDに落としっぱなしにして、シリアル通信ができないようにしたら、シリアルROM無しモードで起動するんじゃ?? ってことで、ICクリップでSDAとGNDを繋いで電源ON… よっしゃ!でデフォルトでベンダのINFを読んだぞ。ちゃんとシリアルROM無しモードで起動してる!!
 …っは!? なんで前回、この方法を思いつかなかったんだろう…(滝汗)
 ちなみに、送られてきた新版ユーザープログラムは問題なく動作しました。

 さて、以上でとりあえず一通りのファイルは揃ったので、あとは本誌のページが足りなくてCD-ROMコラム記事にした分がいくつかあるので、それのテキストファイルおよび図面のHTML化や、各ディレクトリに入れるREADME.TXTの準備。  こういう地道な作業をちゃんとやっておかないとね… これでいいかな。あとは、うちで用意したファイルやディレクトリのタイムスタンプを綺麗にして… ちなみに、筆者からいただいたソースファイルのタイムスタンプはそのまま(たいていはアーカイブファイルで送られてくるので、それを解凍したときのタイムスタンプのまま)に… 23時とか0時とか、みなさん遅くまで作業されてますねぇ…(^^;)

●5月29日
 う〜ん… 仕事しなきゃ… っと思いつつ、午後までZ
 あぁ〜増刊の仕事しなきゃ… っと起きても、手は別のことをしていたり(その画面に開いているVHDLソースは何だぁぁぁぁぁぁーーー!!!) いや、これにわ、ふかぁ〜い訳が…(^^;)

●5月30日
 今日月曜の午前中という約束の原稿がちゃんとメールで届いたので、さっそくダッシュで編集作業!
 で、USB増刊号の初校校正もまだ残ってたりするんで、こっちもダダっと片付ける!!(“ダダっ!”で終わるような量ぢゃないところが悲しいですが…(T_T))

 夜。編集長の机の上にNEがあったので盗み見(笑) え? もう“Cell”の開発物語やるの?? せめてPS3が出てからにしなよ… これから先、コケないとも限りらないし(あわわ…^^;)

●5月31日
 今日はUSB増刊号に収録するファイルの最終確認で、またいつもの筆者さんのところに押しかけ… もしかして、基板の仕様が合ってないですかね? こちらの動作確認では、動かないことは無いんですが、どぉ〜にも安定しないんですよ… そこで、筆者の手元にあるまったく同じ仕様…のハズの基板を使って動作テスト。問題ないな… ってことは使ってる基板が悪い??
 ってことで、筆者の手元の基板と交換して、いったん自宅もどって動作テスト… うごいた!!(っほ) ほどなくして筆者からもメール。交換してきた基板(うまく動かなかった基板)、基板上のチップ部品の実装が間違ってるところがあって、それを交換したらうまく動くようになったそうな… もうぉ〜心臓によくないなぁ〜(^^;)


●2005年 4月に戻るのだ

●2005年 6月を読むのだ


(M)のページにもどる

Interfaceのページへワープする!