2019.3.23
前へ
次へ
ホームページトップへ戻る

[新連載]CPLD入門!
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
いつか使うことになるだろうと思ってはいたのですが。
何を今頃になって、というようなものですが。
ようやく本気で、CPLDと四つに取り組みます。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜



[第25回]


●Eの悲劇(解決編)

今回のトラブルをおさらいしてみますと。
最初に小手調べということで、EPM7032SLC44を使って、PICUSBIF回路をCPLD化しました。
これはうまくいきましたので、次はいよいよ本格的にということで、EPM7032SLC44の4倍のMacroCellを内蔵しているEPM7128ELC84を海外から取り寄せました。
10個取り寄せたのですが、なんとその10個全部がQUARTUSUで全く認識してくれません。
さては不良品をつかまされたかと思って、今度は秋葉原の老舗W通商に同じものがあるのをみつけて、1個購入しました。
ところが信じられないことにこれもQUARTUSUで認識してくれませんでした。
さすがにこれはおかしい、と思ってあらためてMAX7000のData Sheetを読み直してみたところ、愚かにも、早合点というか、実にお恥ずかしい思い違いをしていたことに気が付きました。

そうでした。
もう少し落ち着いてData Sheetを読んでさえいれば、こんな愚かな間違いはしなかったでありましょう。
MAX7000のData Sheetは前回お見せしましたが、以下に再掲いたします。
まずは最初のページです。
本当はもうここで気が付かなければならなかったのです。

Features...の2項目で、
5.0−V in−system programmability(ISP) through the built−in IEEE Std.1149.1 Joint Test Action Group(JTAG) interface available in MAX7000S devices.(赤字は筆者)
と書いてあります。
JTAGについては[第4回]でUSB Blasterという製品名で紹介しました。
最初に使ったEPM7032SはMAX7000Sシリーズだったので、USB Blaster(つまりJTAGケーブル)で接続ができたのでした。

下がMAX7000Sについての紹介です。
最初にEPM7032Sがあります。
それではEPM7128ELC(EPM7128E)はどこにあるかというとここにはEPM7128SはありますがEPM7128Eはありません。
それは上のMAX7000シリーズの中にあります。
そういうことだったのでした。
ELC、SLCの後ろのLCはPLCCパッケージを示す記号でそこのところが同じなので、”E”と”S”はただのバージョンの違い程度だと早合点してしまってそれ以上はData Sheetをしっかり読まなかったのでした。


次のページでもUSBケーブルを使ったプログラミングについて書かれています(上から10行目から下の部分)。
ここでも最後に MAX7000S devices と書かれています。
その前項のMAX7000とは区別して書かれているように読めます。


そして次のページでははっきりとMAX7000EとMAX700Sを区別して扱っています。
うーん。
せめてここはしっかりと読むべきでありました。

一番上の ISP via JTAG interface のところは、MAX7000Sにはチェックがついていますが、MAX7000Eにはチェックがありません。
そうだったのでした。
MAX7000EにはJTAGインターフェースが搭載されていなかったのでした。
JTAGケーブルを使って接続しても認識されなかったのは当たり前だったのでした。
しからばMAX7000Eはどうやってプログラムを書き込むのか?
そこではたと気が付きました。
おそらくMAX7000EはUSBが普及する以前のデバイスだったのでしょう。
USB以前ということでしたら、多分パラレルポート(プリンタポート)経由でプログラミングをしていたのだろうと思います。

CPLD入門![第25回]
2019.3.23upload

前へ
次へ
ホームページトップへ戻る