« 2005年2月 | トップページ | 2005年4月 »

2005/03/21

PSoCマイコン

本の紹介を入れてみた。アフィリエイトとかいうリンクの仕掛けもやってみた。
@niftyの標準では@niftybookというのがあってもし売上があると3%のニフティポイントが還元されるそうだ。 すでにニフティ会員には新たな個人情報登録も不要で気楽な制度ですな。

まあ、書いてみたついでなのでPSoCというものについて雑感を書いてみたい。
使いこなしているというレベルではなく評価キットで色々と試している段階であるのでその辺はご容赦願いたい。

以下、かなり専門的になるので興味のない方は読むのはやめてもらったほうが良い。

いわゆるワンチップマイコンでメジャーどころといえばPICマイコンであろうか。
続いてH8とかAVRとかが秋葉原は秋月電子で容易に手に入ることもあり使われる数も多い。

そんな中でPSoCマイコンというのが最近の私の注目株である。

Cypressという会社が作ったチップでここはUSBチップでも有名である。

特徴はなんといっても付加ブロックを自分で構成できることにある。 ADCやDAC,UART,I2C(Masterも可)やアンプやカウンター、乱数、 BPF(BandPassFilter)まで内蔵できてしまい、それらをリソースの許す限り自由に構成することができる。 アナログ/デジタルFPGAといったら言い過ぎでそこまでの自由度はないのだがソフトの変更のみで同一チップでありながらソフト次第で色々な構成や内部配線をとることができる。

これを実現しているスイッチドキャパシタという技術は正直よくわからないのだが、 ソフトのパラメータ設定によってハードウェアを構成することを可能としているらしい。

もう少し具体的に言うと、他に漏れずフラッシュにソフトウェアを書き込み、動作をするもの。
マイコンが初期化プログラムを走らせることで、レジスタにパラメータを書き込む。するとハードウェアが構成される、ということらしい。
さらに進めるとソフトによって複数のハードウェア構成を時分割的に変更して動作させることも可能ということであり、 これをダイナミックコンフィグレーションと呼んでいる。
この辺はPSoCデザイナーというGUIツールによってサポートされている。
このツールは上記サイトからダウンロードでき無償で試してみることができる。

ひとつなにかモジュールを定義するとフラッシュメモリの何バイト(ADCで200バイトぐらい)かとRAMの何バイトかが消費される、 という形になる。この辺もツールをいじってみると理解でき、どの程度リソースをとるかを視覚的に知ることができる。

肝心のマイコンであるがM8Cというアーキテクチャで正直非力なところもある。
開発ツールではC言語も使えるがライセンスは有料である。
アセンブラは只なのでアセンブラでの開発を、と薦めるものでもないが、マシンアーキテクチャを垣間見るのも一興なのでちょっと解説してみる。
いわゆるRISCではなくCISCの部類になる。
アドレッシングはかなり強力で特定メモリ間のmovさえ可能で、RAM(メモリ)の値を直接INCしたりADDすることも可能である。 固定値とXレジスタとの加算でのアドレッシングもできる。
反面、レジスタがAとXしかなく双方とも8ビットである。つまり256バイトのアドレッシングしかできない。 そもそもRAMは基本は256バイトしかなく上位のチップで2Kバイトしかないので妥当なのかもしれないが、 例えば256バイトを超えるメモリテーブルを扱うとなると少々厄介である。
これにはROMX命令というAとXで上位下位アドレスとしてそこのデータを読むという命令があるのだが少々まわりくどい。 またポインタとしてINC/DECするのが面倒であるのは否めない。
また、APIはすべてレジスタ(といってもAとXしかないわけだが)が破壊されるのが前提である。よってレジスタはあまり使わず、 RAM上に変数を取ってそれに対する操作が中心となろうし、十分に可能である。

なお、レジスタもRAMと同様の自由度のアドレッシングができるため非常に使い勝手が良い。

さて、紹介している本に戻ると、ラストに超音波距離計のアプリケーションがある。 パルス上の超音波を出力しそれを受信するまでの時間を計測するわけだが温度補正も含めて外付け回路が非常に少なく構成できておりなかなかに凄い。 PSoCの凄さを示している好例といえる。

とまぁ、なかなか面白いマイコンではあるのだが、開発ツールが気軽に買えないこと、IC自体も同様。 秋葉原で手軽に買えるPIC/H8とは敷居の違いを感じることになる。つまりアマチュアには少々敷居が高いように感じてしまう。
この本を書いた桑野氏の会社パステルマジックが色々扱っているようなのでこの辺からあたるしかないのだろうか、 というところ。
ドキュメントがほとんど英語なのがなによりきつい。アプリケーションノートも豊富ではあるがみな英語。 日本サイプレスさんにはデータシートやテクニカルリファレンスなどの日本語化を手始めにどんどんやって欲しいと思うのだが。
そんな状況もあり、解説サイトも少ない。ユーザーも少ないのだから当然といえば当然。
にちゃんねるでさえも過疎スレとなっている。
私も評価キットを手に入れられたのでぼちぼちと何か書いていきたいと思うのだが。

| | コメント (0) | トラックバック (0)

2005/03/19

懐かしのPC三昧の昔の日々

[江島健太郎 / Kenn's Clairvoyance]懐かしのPC-6001

http://blog.japan.cnet.com/kenn/archives/002028.html

なんか懐かしい話題が。
パソコンサンデー、懐かしいですねぇ。宮永先生は今どうしてらっしゃるのでしょうか。
シャープの市谷支社でX68000の紹介フェアみたいのがされたときにおみかけしたのを今でもはっきり覚えています。 山下さんもこられていたはずですが印象が薄い(笑)。

当時は市販ゲームなぞは皆無であり、 パソコンでゲームで遊ぶということは雑誌から打ち込んで動かして改造するということが遊ぶということの意味だったように思います。
BASICで徐々に処理速度に限界を感じるようになり、すこしずつマシン語を覚え高速化を行っていく。
私の場合では確かテストプログラム以外で最初にマシン語で書いたのは画面をスクロールさせるものでした。どんどんはまっていき、 Z80は隠し命令の解析研究やアセンブラなしでマシン語コードである程度なら書けるようにまでなってましたが。
Z80マシン語入門は私も持っていました。サンプルも使えるものが多く勉強になりました。

そういえば市販ゲームを買って動かしているだけのやつを「ロードランナー」と卑下していた時代もありましたねえ。(判らない人に註: プログラムを「ロード」して「ラン」(動かす)だけの人だから)

ナイコン時代が中学、2年間ぐらいですか。お店で色々いじらせてはもらえました。
あのころはお店も展示のみならずいじらせてくれていたんですよね。感謝。
で雑誌を持ち込んで打ち込んだり改造したり、移植したり。
MZ80K2/MZ2000/2200,PC6001/6601,PC8001/8801,FM-8/7,BM3,,このあたりが触っていたマシンですか。 とりあいみたいなもんで人気のあるPCとかFMが先にとられちゃうんですよねえ。
だからいろんなパソコンをいじることになる。
移植っても必要にせまられてなんですよね。該当機種があいてないから(笑)
それもまた一興。

高校にあがるときにMZ731を買ってもらいました。当時、親もお金がないのに迷惑をかけてしまったと思います。 考えればパソコンって贅沢な趣味でしたね。
ただし本体だけでした。 テレビで使えるのでなんとかなるのですがプログラミングにはきつく家に一台しかないテレビか壊れかけのテレビしかありませんでした。 無論モニターは買ってもらえずで、こづかいとおとし玉で一年後くらいになんとか特価ででたグリーンモニターを買えました。
でも三年間みっちりとプログラミングで遊べたので安い買い物だったと親も思ってくれていたようです。 よくわからないけど難しそうなことをやっているので勉強のひとつだと思っていたらしいです。まぁ、実際今でも仕事に役立っているわけですが。

そんな感じだったので音楽とかビジュアルなのはX68000の時代からですか。大学入ってからバイトしまくって金を溜め込んでいて、 でてから予約をかけてまで速攻で買いました。本当は学費を4年間分さっさとためるのが目的だったんですが、 それはとりあえず後回しにして(笑)
これを買ってもプログラミングで遊んでいました。アセンブラは付いているし、Cも当時としては三万程度と安い。 しかも大量の技術資料がついてくる。そのうちUNIX系のソフトが流れ込んでくる。 GNUの世界も入ってきてμEmacsやGNU-C/C++などにも大きな衝撃を受けました。
まあ、ゲーム好きなのでゲームもやりまくってましたが。
飽きることなくDOS/V時代がはじまるまではどっぷりでした。

古代祐三さんはゲーム音楽業界では珍しく個人で名前が売れている人なんですね。考えてみると。普通は会社の後ろに隠れてしまう。
印象に強いのはアクトレイザー(SFC)の曲、ボスコニアン(X68k)のオリジナルBGMですか。
またX68k版のスペースハリアーのオリジナルステージHAYAO!が確か氏のオリジナルだったはず。 高橋名人の冒険島もCDを買ったけどいまいちだったなぁ。

ネタは尽きませんが、そんなところで。

| | コメント (0) | トラックバック (0)

2005/03/06

Dell 2405FPWを買いました。

Dellの2405FPWというのを買いました。レビューというか感想を書いてみます。
http://jpstore.dell.com/store/newstore/dhs/snp/proddetails_overview.asp?pid=11077

一番のポイントはWUXGA(1920x1200)という画面の広さでしょうか。予想通り圧倒的な広さです。
24インチということで大きいことを予想していましたが狭額縁ということもあって意外と大きさを感じません。
UXGAは20インチ程度ですがそれが横に広がっているという感覚ですね。(会社ではUXGAモニターを使わせてもらっています)
PCのVGAはRADEON9600PROですが、DVI-Dで繋ぐだけでOKで非常に良好です。
画素欠陥もなく、グレースケールを表示させても擬似輪郭が発生せず破綻したところもないようです。
PCモニターとしては十分合格点をあげられます。

それまではモニター兼用でシャープの液晶HDTVである30BV3を使っていました。 それと比較してみると発色においては流石に落ちますが値段も違いすぎるので仕方のないことでしょう。
(ちなみに今回このモニターを買ったのはこれでのプログラミング等の実作業をするとかなりきついからです。 ムービーなどを観るのには確かに好適なのですが、文字を追うような作業では画面が大きすぎると視点移動が大きいため疲れます。 )
ありがちなのですが赤はやや薄目で緑もやや黄色方向という感じです。その結果、肌色の色が黄色みがかったり茶色になったりしてしまいます。
繰り返しになりますが、これは値段差を考えれば十分なレベルです。
いわゆるマルチメディアモニタということのようでビデオ入力やS端子入力、コンポーネント端子入力がありますが、 やはり人物の顔などで色のバランスの悪さがどうしても目立ってしまいます。
この辺は絵作りという話にもなりますが、パネルの差もありますが全くやっていないという感じです。

まあ、それはさておいても、これらの入力時には重大な問題があります。
1:1とFullとAspectというモードがあるのですが、 1:1にすると画面の中心に小さく表示されます(480ラインを伸ばさずに表示ということ)。
Fullだと縦横一杯に伸ばしとなります。 これは16:9伸ばしにして欲しいのですが1920x1200で縦横一杯にされると16:9にならないのです。。 (1920x1080に表示、つまり上下に黒帯がでないとおかしい)

最も困るのはAspectです。 4:3映像をその比率を保ちながら画面縦方向に伸ばすものだと思っていたのですがやや横伸び方向に歪んでいます。
測ってみると縦横比が15:17ぐらいです。普通に観ていても顔が太めになっています。これは困った物です。
技術的困難とかコストの問題ではありえないのですが。。。。どうしたことでしょうか。
いくら開発に金をかけないといってもこれはなんとかならなかったのですかねぇ。。
なお、コンポーネントで1080i/720Pでの確認はしていません。信号がないものですから。

まあ、この点を見てもいかにもPCモニタレベルでTVモニタとしては基本からなっていないことが判ります。
これにオーバースキャンもでてくるのですが面倒なのでみていませんし、これでは画質や色味など評価しても仕方ないので割愛します。

PinPや2画面表示(PBP)は便利だと思います。WUXGAの画面を圧縮しての画質の劣化具合は悪くありません。
私はフォントを大きめに設定しているのもありますが十分識別はできるレベルです。
PinPで小さいほうの画面にしても、使い慣れているアプリなら作業は十分できるでしょう。

動画性能ですが液晶の反応速度も十分ではないかと思います。(カタログスペックでは中間階調で12ms)
ビデオ入力での動画性能はプログレッシブ変換が失格レベルで汚いのでその点は注意が要ります。
そのためと思われる残像感があります。

明るさは明るすぎるくらいで、もっとも暗くしてもまだ夜中などには眩しいくらいでもっと暗くしたいところです。 黒は十分沈んでいるは判りますし、コントラスト比もかなり良好です。黒やグレーでの面内ムラもあまりありません。

総論としては15万という値段からすれば、 UXGAの良いPCモニタが10万をまだ切っていないことを鑑みれば余裕で合格点をあげられます。満足度は高いです。 DELLの長期品質は判らないのですが三年保証もありますし、基本的には良いモニターといえます。 高解像度ハイエンドモニターを欲しい人にはお勧めできますね。ただし、ビデオ系はあくまでおまけと割り切るべきでしょう。

追加:
縦回転ができるのも面白いですが、普通の作業距離でこの大きさで回転されると上を見上げるような感覚になります。 結構引かないとつらいですね。
縦モードでアクロバットリーダーで一画面でかく表示すると非常に綺麗です。

端子の接続はかなりやりにくく、縦回転はこの接続のためにあるのではないか、と思われるぐらいです。 端子が画面の下に並んでいるためです。前から見て見えないように配慮したために引っ込んでいるせいもあり作業性はかなり悪いです。まあ、 つけはずしするものではないですが。

WUXGAの広さは圧倒的です。UXGAであればアクロバットリーダーで2ページ分を余裕で見れる(スクロール不要)のですが、 WUXGAとなると横が広い分で、さらにサムネイル表示や目次表示等も可能です。これは素晴らしい。

モニタについたUSB端子は便利です。B端子でパソコンとつなぎ、モニタの下から2つ、左横から2つとれます。 下にはキーボード(マウスはキーボードに接続)とUSBスピーカー、横にはUSBのCDROMとを繋いでいます。
その結果、USBとモニタケーブルを伸ばすだけで騒音を発するデスクトップから遠いところで作業ができます。 メモリカードリーダーはモニターについているために新たにつける必要がありません。
スリムなDVDROMドライブが欲しくなりました。パイオニアのがいいかな。

| | コメント (0) | トラックバック (0)

« 2005年2月 | トップページ | 2005年4月 »