« 2009年1月 | トップページ | 2009年3月 »

2009.02.24

いろんなパソコンで動くようになった

特電PCI Express 互換コアで、Completionの返し方を修正したら、DELL Dimension C521やDELL Presision390など、いろんなパソコンで認識されるようになりました。とりあえず、私の自宅や会社にあるパソコンではすべてOKになりました。

Linuxが動いている自作PC(マザーボードはI945G-M7)でもちゃんと動いていて、lspciコマンドを実行すると、コンフィギュレーション空間を表示してくれます。


xxxxxx@xxxxxx:~$ sudo lspci -s 01:0.0 -vv -xxx
Password:
01:00.0 DPIO module: Unknown device 5678:1234 (rev 01)
Subsystem: Unknown device 5678:1234
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- SERR- Interrupt: pin A routed to IRQ 7
Region 0: Memory at fdaff000 (32-bit, non-prefetchable) [size=4K]
Region 1: Memory at fdafe000 (32-bit, non-prefetchable) [size=1K]
Region 2: Memory at fdafd000 (32-bit, non-prefetchable) [size=256]
Capabilities: [60] Message Signalled Interrupts: Mask- 64bit- Queue=0/0 Enable-
Address: 00000000 Data: 0000
Capabilities: [70] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [80] Express Endpoint IRQ 0
Device: Supported: MaxPayload 256 bytes, PhantFunc 0, ExtTag-
Device: Latency L0s <64ns, L1 <1us
Device: AtnBtn- AtnInd- PwrInd-
Device: Errors: Correctable- Non-Fatal- Fatal- Unsupported-
Device: RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
Device: MaxPayload 128 bytes, MaxReadReq 128 bytes
Link: Supported Speed 2.5Gb/s, Width x1, ASPM L0s, Port 1
Link: Latency L0s <64ns, L1 <1us
Link: ASPM Disabled RCB 64 bytes CommClk+ ExtSynch-
Link: Speed 2.5Gb/s, Width x1
Capabilities: [100] Unknown (22136)
00: 78 56 34 12 03 00 10 00 01 00 00 11 00 00 00 00
10: 00 f0 af fd 00 e0 af fd 00 d0 af fd 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 78 56 34 12
30: 00 00 00 00 60 00 00 00 00 00 00 00 07 01 00 00
40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
60: 05 70 00 00 00 00 00 00 00 00 00 00 00 00 00 00
70: 01 80 03 00 00 00 00 00 00 00 00 00 00 00 00 00
80: 10 00 01 00 01 00 00 00 00 00 00 00 11 04 00 01
90: 40 00 11 10 00 00 00 00 00 00 00 00 00 00 00 00
a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

ベンダIDは適当な値を使っています。
クラスコードは110000なので、DPIOモジュールとして認識されています。
汎用の入出力装置としてぴったりのクラスコードです。


本日、サポートページのほうも更新しました。
このコアはだいぶん安定してきましたが、まだ完全ではない部分が多々ありますので、一般向けの販売開始はもうしばらく先かと思います。急ぎでご必要な方はお問い合わせください。

どうぞよろしくお願いします。

| | コメント (0)

2009.02.23

DimensionC521で動かない理由を解明

特電PCI Express互換IPコアが、DELL Dimension C521で動かない原因がわかりました。

会社からC521を持ち帰って、土曜日の夜、あの手この手で徹底的にデバッグしました。
昔作った自作のPCI Expressバスアナライザを組み込んでみたところ、C521で非常に不可解な動きをしている部分が発見されました。



TLP ROOT=>EP Time=397.912780672 SEQ=4 Type="CfgWr0 3DW"
Req.ID=(0,1,0) Cpl.ID=(1,0,0)
CfgWr Addr=0 Tag=fd800001 data=0x00000000 mask(f)
TLP EP=>ROOT Time=397.912780848 SEQ=3 Type="Cpl 3DW"
Req.ID=(1,0,0) Cpl.ID=(0,1,0)
Cpl Addr=0 Tag=0x0

パソコンの起動時に、BIOSがコンフィグ空間の0番地に0xfd800001なんていう値を書き込んできています。普通の感覚ならありえません。しかも、その後いろいろコンフィグ空間を読み書きしてきていますが、BARを設定する気配が一向にありません。

正常に動作するパソコンで見てみると、ちゃんとBAR空間に設定してくれているので、何かが間違っているのは確実なのですが、これだけではどうもよくわかりません。

それなら、ちゃんと動くPCI Expressの製品ならC521でどういう動きをするかを確かめようと、市販の製品のパケットを自作アナライザで解析しようとしたところ、スクランブルがかかっていてあえなく挫折!
PCI Expressのスクランブルは暗号ではないのですが、解除するためのロジックを今から作るのは面倒なので、ひとまずあきらめることに。

八方ふさがりになったので、藁にもすがる思いで規格書を読んでみると、意外なことが書いてありました。

・Byte Count [11:0]
 ◆For all other types of Completions, the Byte Count fileld must be 4.

・Lower Address [6:0]
 ◆The field is set to all 0's for all types of Completion other than Memory Read Completions.

PCI Expressでは、メモリリードやコンフィグリードなどの要求に対して、Completionというパケットで応答しますが、そのパケットに埋め込まれる2つのフィールドの作り方についてのルールが記されているものです。

上の英文にあるその他のタイプのCompletionというのは、メモリリード以外のものを指すので、おそらくコンフィグリードも含まれるのでしょう。つまり、コンフィグリードでは、どこを読んでも何バイト読んでも、常にByteCount=4、LowerAddress=0で返せということです。

このルールを発見したとこには、これだ!と思いました。私がPCI Expressコアを作るのに参考にしてきたMIND SHARE INCの分厚い解説書には書かれていなかったので、このルールは実装していませんでした。やっぱり、規格書はちゃんと読まなければいけませんね。

日曜の夜、このルールを実装してみるとちゃんとDELLのC521でもばっちり認識されました。起動時の不可解なパケットもなくなりました。
他にも、規格書にはかかれているけど解説書にはかかれていない重要なルールがあるかもしれませんので、再び、規格書を読んでみることにします。

サポートページにアップロードしているコアは、近いうちにアップデートします。
どうぞご期待ください。

動作するPCでの起動時のパケット
C521の起動時のパケット(NG)
C521の起動時のパケット(OK)


| | コメント (0)

2009.02.21

特電PCI Expressボードの出荷を開始しました

今週の水曜日に、特電PCI Expressボードの最初の1台の出荷を開始しました。
本日、オンラインショップでもご注文いただけるようにしましたが、やっぱりやめます。以下の理由により当面はメールかFAXでのみ注文を承ります。

本製品はIPやソフト面の開発が十分ではなかったため販売開始をずるずると延期していたのですが、当初のリリース予定日に先に振込みしていただいてしまった以上、あるお客様に1枚、先行してハードウェアだけ送付させていただきましたという感じです。実は、昨晩そのお客様に「後日、交換用の基板とCD-ROMを送らせていただきます」と電話したくらいですから、発売即リコールな状況です。

本基板は、PCI Expressのスロットに挿す方法(アドインカード)と、ケーブル接続(External Cabling)を選ぶことができます。その選択はチップ抵抗とチップコンデンサの取り外しによって行いますが、出荷時にご指定いただければ、チップ部品を取り外した状態で出荷させていただきます。
本製品は、基板本体のまわりに捨て板のついた、大きな四角い基板の状態で出荷しています。

Pcie_shukka_2

パソコンのマザーボードに挿す場合は捨て板を外さなければなりませんが、その加工を施した状態での出荷も承ります。ご注文の際に備考欄にお書き添えください。

また、特電PCI Expressボードサポートページを開設しました。
http://www.tokudenkairo.co.jp/pcie/

さて、評価ボードというハードウェアは出来たのですが、中身のIPコアで問題が発生!
パソコンによって動いたり動かなかったりするのです。ためしに、当社のボードに、他社のIPコアを入れてみると、ちゃんと動きます。どうやら特電PCI Expressコアに問題があるのは確かなようです。

DELLのVostroや自作PC(マザーボードはIntelのDQ35JO)では動くのですが、DELLのDimensionC521やPrecisionでは動かないといった状況です。
あと、Linuxマシン(マザーボード未調査)でもちゃんと動いて、lspciとかのコマンドでコンフィグ空間が読めるので、本質的な問題はないとは思うのですが、やはり気になります。

特電PCI Expressコアは、PCI Expressのいろんな必須機能を省いているので、それが原因かもしれません。とにかく全力で原因を究明しています。

原因の候補としてはいろいろ考えたのですが、
・エラーが起きてリカバリーステートに入っているのでは?
 →L0ステート時に、パソコンからTS1が送られてこないから、リカバリーではない
・Config WriteのときにCompletionを返していなかった
 →返すようにしたけど変化なし

どうやら動かないDimension C521では、パソコンの起動が遅くなります。Windows起動時の黒い画面で、何やらTLPがいっぱい送られてきて、64回くらいであきらめるようなのですが、何かを繰り返しリトライしているような雰囲気でした。
PCI Expressの6種類あるフローコントロールで全てInfinite Creditを使用するように申告しているのですが、マザーボードによってはそれに対応していないのかもしれません。

というわけで、コアにはまだ問題はありますが、とりあえず基板のみ出荷を開始しました。今はDDR2メモリの付いたFPGAの評価ボード程度とお考え下さい。

上記の互換性の問題があるのでご注意ください。ご希望の場合は互換性確認のためデモ機の貸し出しも承ります。正直なところ、ご注文はいましばらくお待ちください

付録のCD-ROMはまだ出来ていませんが、中身を上記のサポートページからダウンロードできるようにしておきました。
MITOUJTAG Proの特別版は、3月にリリース予定です。

どうぞよろしくお願いします。

| | コメント (2)

2009.02.20

SH-2用JTAGデバッガ ダウンロード開始

CQ出版のInterface誌に付録されていたSH-2基板用のJTAGデバッガの記事が、TECH I Vol.41 SH-2マイコンで学ぶ組み込み開発入門に掲載されました。
当社ホームページより、記事に掲載されているJTAGデバッガをダウンロードできるようにいたしましたので、どうぞご利用ください。
http://www.tokudenkairo.co.jp/jtag/cq7144a.html

SH-2は大変素晴らしいCPUですが、この基板は設計ミスが多いのが残念でなりません。H-UDIコネクタのピン配置の間違いとか、DBGMD端子はプルダウンすべきだとか、電源が発振するとか。いろいろありました。
また、基板設計の初歩レベルの問題なのですが、他人に提供する評価基板には、
どこがVCCかGNDかくらいは、シルクで表示してもらいたいものでした。

ちなみに、この基板、無改造のままだとDBGMD端子はプルアップされています。もう昔のことなのでだいぶん忘れてしまいましたが、SH7144FではDBGMD端子をプルアップしていると、起動時になんらかの拍子にデバッグモードに入ってしまい、起動が不安定になったと記憶しています。

電源ONして起動せずに止まってしまった場合は、JTAGデバッガからの通信待ち状態になっていたのではなかったか思います。したがって、起動に失敗して止まった基板でも、JTAGデバッガをつなげば、その状態から起動を再開できたような気がします。

とはいっても、いつもJTAGデバッガがつながっているわけではないですから、DBGMDはやっぱりGNDにジャンパしましょう。

| | コメント (1)

2009.02.16

特電PCI Expressボード量産完了!

PCI Express評価ボードの初回量産ロットが上がってきました。
最初のロットは10台です。メモリが増量されていて、512Mbit品が乗っています。

PCI Expressボードが10台完成!

今日は、ハードウェアマニュアル(暫定版)と、出荷用の箱と、内容物を作りました。
●ハードウェアマニュアル(暫定版)のダウンロードはこちら

いよいよ、明日から、出荷開始しようと思います。

IPコアとデバイスドライバとサンプルアプリケーションなど、ソフト面がまだ全然完璧とはいえない状態なのですが、出来上がり次第、Webサイトからアップデート版をどんどんダウンロードできるようにしようと思います。

皆様、どうぞよろしくお願いします。

| | コメント (2)

2009.02.15

ピン配置が違う

SH-4の基板を作ったところ、ピン配置のミスがありました。
まず、SH-4のコア電源用の1.5Vを作るためにTI製のドロッパレギュレータを使ったのですが、ここで問題発生!

せっかく、P板の「スーパークイック3日コース」で作った4層基板なのに、ジャンパが飛ぶ事態に!
Tps73615

なぜこんなことになったかというと、LDOの便利なレギュレータはTIのがいろいろあってよいのですが、SOT-223パッケージで1.5Vを出してくれるものはDigikeyで探したところ、
・TPS72515DCQR 1A
・TPS72615DCQR 1A
・TPS73215DCQR 250mA
・TPS73615DCQR 400mA
と似たような型番で4つもあります。

3.3Vならば
・TPS78633DCQR 1.5A
・TPS79633DCQR 1A
・TPS79533DCQR 500mA
・TPS79433DCQR 250mA
・TPS73233DCQR 250mA
・TPS73633DCQR 400mA
・TPS73733DCQR 1A
と、7つもあります。

3.3Vは大きな電流を取れるTPS78633にしたのですが、TPS78615という型番のはありません。そこで、TPS73615を選んだのですが、1.5V用の回路を作る際に3.3V用のをコピペして、失敗しました。

TPS7xxxxのレギュレータには、ピン配置が2種類あったのです。

TPS725xxDCQR・・1-EN 2-IN 3-GND 4-OUT 5-#RESET
TPS726xxDCQR・・1-EN 2-IN 3-GND 4-OUT 5-#RESET/FB
TPS732xxDCQR・・1-IN 2-OUT 3-GND 4-NR/FB 5-EN
TPS736xxDCQR・・1-IN 2-OUT 3-GND 4-NR/FB 5-EN
TPS786xxDCQR・・1-EN 2-IN 3-GND 4-OUT 5-FB
TPS796xxDCQR・・1-EN 2-IN 3-GND 4-OUT 5-FB
TPS795xxDCQR・・1-EN 2-IN 3-GND 4-OUT 5-FB
TPS794xxDCQR・・1-EN 2-IN 3-GND 4-OUT 5-FB
TPS737xxDCQR・・1-IN 2-OUT 3-GND 4-NR/FB 5-EN

Pin_tps73615
Pin_tps72515

ややこしい。

しらべてみると、TPS736xx、TPS732xx、TPS737xxは、レギュレータ内部のNMOSのゲート用に、チャージポンプを内蔵しているとのこと。そのタイプはINとOUTが隣り合っている、と覚えればよいのでしょうか。とにかく、いままで何も考えずに使ってきたTIのレギュレータですが、ガクブルものです。これからはピン配置要チェックです。

今回はTPS73615のかわりにTPS72515を入手したので、ジャンパは回避できましたが、似たような型番でピン配置が違う部品。おそろしいですね。

| | コメント (0)

2009.02.09

シリアルフラッシュメモリのマイナー機能

ATMELのAT45DB161Dという、SPIインタフェースのシリアルフラッシュメモリがあります。小さなパッケージサイズで16Mbitの大容量、しかも実装しやすいSOPパッケージで、Spartan3E以降ではコンフィギュレーション用メモリとしても使えるので、私は重宝しています。
At45db161d

このICには、単なるデータストレージ以外の様々なマイナーな機能があります。
今回はそういった機能を試してみることにします。

AT45DB161Dは、FPGAのコンフィギュレーションメモリとして使うので、FPGAの端子に接続します。いろいろなマイナー機能を試してみたくても、わざわざHDLを書いて操作しなければならないのは、とても面倒です。

そこで、MITOUJTAGのアドバンスド・JTAG・ファンクションジェネレータを使ってみます。

まず、IDCODEの読み出しを行いましょう。
ピン定義ファイル(default.pin)に、次のように記述します。


MOSI 1:N5
MISO 1:M9
CS 1:P3
CLK 1:R14

最初は、手始めに、デバイスのIDCODEを読み出してみることにします。
デバイスのIDCODEというのは、AT45DB161Dのマニュアルに記載されている次の図のものです。
At45db161d_1

データシートどおりなら、1F 26 00 00 xx xxが読み出されるはずです。
実際にやってみるため、スクリプトファイル(noname.cpp)を作ります。


#include "default.h"
unsigned char spi_txrx(unsigned char send) {
unsigned char recv = 0;
MISO <= "Z";
for(int i=0;i<8;i++) {
MOSI = (send & 0x80) ? "1" : "0"; CLK <= "0";
CLK <= "1";
send = send << 1;
recv = (recv << 1) | ((int)MISO ? 1 : 0);
}
return recv;
}
 
JEXPORT int jmain() {
unsigned char rdata[6];
 
j_bypass();
j_extest(); // JTAGデバイスをEXTESTモードにする
 
CS = "1";CLK = "0";MOSI = "0";MISO <= "Z"; // ピン値初期設定
CS <= "0"; // SPIのコマンド開始
spi_txrx(0x9f);
for(int i=0;i<6;i++) rdata[i] = spi_txrx(0);
CS <= "1"; // SPIのコマンド終了
 
printf("Device ID is %02x %02x %02x %02x %02x %02x\n"
,rdata[0],rdata[1],rdata[2],rdata[3],rdata[4],rdata[5]);
 
return 0;
}

このスクリプトを実行してみたときの波形を、JTAGロジックアナライザで観察すると、
At45db161d_2

と、望みどおりの波形となりました。
メッセージウィンドウにも、ちゃんと
At45db161d_3
と、読み出したデータがそのまま表示されました。
デバイスIDは、データストレージ以外からの読み出しですが、これはまだメジャーなほうだといえるでしょう。

AT45DB161Dには、セクタをプロテクトしたり、書き換え不能(LockDown)にしたりといった機能や、セキュリティレジスタといった機能があります。今度はこれらの機能を試してみます。
セキュリティレジスタというのは、1回しか書き込みできない小容量のメモリ領域で、ユーザが書き込みできる64バイトと、メーカーが工場出荷時に書き込みした64バイトのあわせて128バイトの領域です。
これを読んでみます。

Read Security RegisterのOpcodeは、77H + 00H + 00H + 00Hです。これを読み出すスクリプトは次のようになります。


unsigned char rdata[128];
 
j_bypass();
j_extest(); // JTAGデバイスをEXTESTモードにする
 
CS = "1";CLK = "0";MOSI = "0";MISO <= "Z"; // ピン値初期設定
CS <= "0"; // SPIのコマンド開始
spi_txrx(0x77);spi_txrx(0);spi_txrx(0);spi_txrx(0);
for(int i=0;i<128;i++) rdata[i] = spi_txrx(0);
CS <= "1"; // SPIのコマンド終了
 
for(int i=0;i<128;i++) printf("%02X%c",rdata[i],((i & 7) == 7) ? '\n' : ' ');
printf("\n");

実行してみると、64バイト目あたりから何やらデータがでてきています。
読み出したデータは、


00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
07 07 07 0D 39 25 1F 26
00 00 20 10 FF FF 76 FF
FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF

となっているので、これがきっとチップごとにユニークなIDなのでしょう。

従来は、FPGAの端子につないだICを操作するにはHDLを書かねばならずとても面倒でしたが、ソフトウェア感覚で操作できると、いろんなマイナー機能を気軽に試してみることができます。
いつもよく使っているICには、あまり使われていないマイナーな機能がいっぱい潜んでいるはずです。そういった機能が気軽に楽しめるといいですね。


| | コメント (0)

2009.02.07

MITOUJTAGアップデート リリース

MITOUJTAG BASICならびにProのアップデートをリリースしました。

MITOUJTAG BASICは、Ver1.5.0 SP6に、
MITOUJTAG Proは、Ver2.0.4eになります。体験版もアップデートできます。

主な更新点は、
・Lattice XP2シリーズの書き込み対応
・FPGA/CPLDの書き込みの際に、デザインファイルが更新するまで待機するオプションの実装
です。
他にもいくつかのバグフィックスや、機能強化が行われています。
MITOUJTAG BASICでは、プロジェクトを保存した際に、Pocket JTAG CableのTCK速度の設定なども保存されるようにしました。
MITOUJTAG Proでは、前回のバージョンアップ(204d)パッチで提供した機能に問題があって、起動時にハングアップしてしまうことがありましたが、今回のバージョンアップで修正しました。

さて、まず、Lattice XP2の書き込みについて紹介します。
Lattice XP2はコンフィギュレーション用のフラッシュROMを内蔵しています。MITOUJTAGの今回の新バージョンでは、このフラッシュROMに対して書き込みを行うことができます。

LatticeのFPGAのJTAG端子(TCK,TDI,TMS,TDO)にJTAGケーブルを接続し、MITOUJTAGを起動したら、ツールバーの「BSDLファイルを読み込んでJTAGデバイスを追加」ボタンを押します。

Mj20090207_1

ダイアログが開いたらLattice XP2のBSDLファイルを選択します。BSDLファイルはLatticeのWebサイトからあらかじめダウンロードしておきます。今回使用している評価ボードは、LFXP2-17E 5QN208C」という、208ピンのFPGAが乗っているので、lfxp2_17e_pqfp208.bsdを選択しました。

Mj20090207_2

この「BSDLを用いて追加」という作業は、最初の1回だけ行えばOKです。2度目以降はFPGAのIDCODEがデータベースに登録されるので、自動認識できます。

画面にLFXP2の絵が表示されると、バウンダリスキャンによって各端子の現在の状態が調べられ、画面に(赤がHi、水色がLo、塗りつぶしは出力、網掛けは入力で)表示されます。

Mj20090207_3

LFXP2に書き込みを行うには、次のボタンを押します。

Mj20090207_4

このボタンを押すと、JTAG ISPコントロールパネルというのが開きます。

「書き込みデータファイル」と書かれた欄の右のボタンをクリックします。

Mj20090207_5

ファイル選択ダイアログが開くので、LatticeのispVMで論理合成して生成したJEDECファイルを選択します。

Mj20090207_6

前の画面に戻ったら、「開始」ボタンを押すと、消去・書き込み・ベリファイのプロセスが開始します。

Mj20090207_7

書き込みが開始したら、25秒程度で完了します。
なお、XP2への書き込みを行うときには、Pocket JTAG Cableのプロパティ画面を開いて、TCKを8MHz以上、高速化オプションを有効にしておくようにしてください。そうしないと、書き込みに長い時間を要するようになってしまいます。
Mj20090207_8

以上で示したように、Lattice XP2への書き込みがとても簡単にできます。

次に、「FPGA/CPLDの書き込みの際に、デザインファイルが更新するまで待機するオプション」という機能を紹介します。

最近のFPGAは、論理合成に数分~数十分かかってしまうため、その間にメールを書いたりネットサーフィンしていると、論理合成が完了したのに書き込むのを忘れてしまって、時間が無駄になるというケースが多くみられます。
そこで、書き込みの際にまず待機して、ファイル(.bit、.mcs、.psf、.jedなど)が更新されるのをずっと監視し、更新されたら書き込みを開始するというオプションを実装しました。

ファイルには、ネットワーク上の別マシンのファイルを使うことも可能です。MITOUJTAGをつないで操作するマシンと、論理合成するための高性能マシンを分けて使う場合にも便利です。

Mj20090207_10

このオプションを使えば、ネットサーフィンしていても、論理合成が完了すれば自動で書き込みを開始してくれて、完了すると、画面中央に次のような表示が出ます。
Mj20090207_10_2

これで時間を無駄にすることなく、他の作業が行えます。

最新版パッチは、下記のURLからダウンロードできます。
http://www.tokudenkairo.co.jp/jtag/sp.html

まだまだ進化していくMITOUJTAGをよろしくお願いします。

| | コメント (0)

2009.02.05

PCI Express基板の改版が上がってきました

特電PCI Express評価ボードは、試作の段階でいくつか問題が見つかったため、改版を行いました。
昨日、改版した基板の実装が上がってきたので、動作チェックをしました。

Np1025a_1

まず、大きな四角い基板の中から、ミシン目で分離されたPCI Expressの基板を取り外します。
今回の改版でミシン目の割る方向を工夫したので、とても簡単に分離することができるようになりました。

この基板にはDDR2メモリが乗っていますが、試作の時点では32MBytes品(256Mbit)だったのですが、同じFootPrintで64MBytes品(512Mbit)があることがわかったため、メモリを増量してみました。そうしたら実装業者から連絡が来て、シルクが違うとのこと。
確かに、FootPrintは同じでもチップの形が違うようで、シルクがはみだしてしまいました。
電気的には問題ないので、初回限定キャンペーンで512Mbytes品を載せようと思います。
Np1025a_4

基板を分離したら、ピンヘッダをつなぎ、JTAGをつなぎます。
Np1025a_2

そして、PCI Express External Cablingとカードエッジを選択しているチップコンデンサ・抵抗を外して、どっちらか一方のインタフェースを選択します。

当然ながら、ちゃんと動きました。External Cablingのほうもばっちりです。
Np1025a_3

External Cablingを使うとパソコンとターゲットボードを離すことができるのですが、Digikeyで売っているケーブルは1mのものしかなかったので、この長さでは実際問題として机の下に置いたデスクトップパソコンからケーブルで延長してくることができません。幸い、Chip1stopに長いケーブル(3m)があったので買ってみました。12000円くらいでした。この長いケーブルでも通信できるかどうかは、明日、試してみることにします。

いよいよ販売用基板の量産に入ろうかと思います。
IPコアやドライバも、使いやすいように整理しなければなりませんね。
販売開始までにやることはまだまだ多いのですが、ようやく基板はOKといえるようになりました。
もし、コアやソフトができていなくても、基板だけでもすぐ欲しいという方がいらっしゃったら、来週後半にはお出しできるかと思いますので、メールをいただければ有り難いです。

| | コメント (0)

2009.02.01

フィッシュ・アンド・チップス

フィッシュ・アンド・チップスといえば、昔イギリス旅行した時たまたま入ったパブでは、巨大な魚を油に放り込んで、ポテトと一緒にどーんと乗せただけで、味付けもなんにもなく、最初の一口二口は美味しいと錯覚するけれども、だんだん食べているのが苦痛になってくる、そんな料理でした。これがイギリス料理か、と分かったような気がしました。

ところが、何日か前のニュースで「不況でも売れるフィッシュ・アンド・チップス」なんて記事が書かれたもんだから、あのときの感動を再び味わいたくなり、無性に食べてみたくなりました。

で、先週は東京の神田近辺でフィッシュ・アンド・チップスが食べられるお店を探して回っていました。
まず、上野駅構内の入谷口のところにある「アイリッシュ・パブ スターシェン」というお店。ここのフィッシュ・アンド・チップスは美味い!イギリスとは違って日本人向けの量。飽きが来ない。ポテトにも薄く味がついていて最高。
となりに座っていた初老のおじさんは「フィッシュ・アンド・チップスなんておつまみだ」とか言っていたけれども、向こうの人には主食なんですよね。
しかし、この店、禁煙席が少なく、煙草の煙が流れてくるのが嫌。近くに喫煙者がいなければよいお店です。

次は、神田駅の東口に見つけました。お店のランチタイムのメニューに載っていないのですが、注文できました。タルタルソースが出てきたり、衣にパン粉が入っていたり。確かに美味いのですが、お店によって少しづつ違いますね・・

もっと食べたくなったので、自分でも作ってみました。
Fish_and_chips

芋を切る、切る、切る。そして揚げる、揚げる、揚げる。

その間に小麦粉を溶いて衣をつくります。
白身の魚をてんぷらみたいに揚げればよさそうなのですが、フィッシュ・アンド・チップスでは衣に少量のビールを混ぜるとのこと。
その効果を確かめるために、通常のてんぷらと、衣にビールを混ぜて揚げたのを一緒に作って比べてみると、たしかに、ビールを混ぜるとサクッとしますね。揚げたときにアルコールの気化で小さな気泡ができるのでしょうか。

あと、白身魚と限定されている理由もわかった気がします。
試しに鮭でフィッシュ・アンド・チップスを作ってみると、味が濃くてくどい。
それ自体に味が無いからこそよいのだと悟りました。

| | コメント (3)

« 2009年1月 | トップページ | 2009年3月 »