Q2:シリアルEEPROMのデータフォーマットについて Q. 技術資料の中でシリアルEEPROMのデータフォーマットが記載されていますが よく判りません。 ユーザー側が、個々に設定しておく(書き込んでおく)場所は、どことどこなのか アプリケーション例などありませんか? Ans.基本的には、すべての設定が必要です。   未使用の項目についてもDisable設定としておく必要があります。   シリアルEEPROMのデータフォーマットについて、   Offset「00h」−「09h High Byte」までが、PCI Configuration Register空間に関する設 定です。   Offset「09h Low Byte」−「23h」までが、APIC21内部Registerのイニシャライズデータ となります。Bitイメージおよび機能は、各Register説明で記載されている 内容と同じです。      つぎに、弊社製パラレルボードの実例をあげて説明します。      aPCI-8131は入力32点/出力32点絶縁型PIOボードです。    ボードが占有するI/O空間は、16バイトです。 ローカル側で使用しているPinは、 IOCS0-7#、TD0-7、IRQ0-3#、TRESET#、を使用しています。 EEPROM Data Register Description Offset Address 0h  136C VendorID デバイスのメーカ−を識別するのに使用。 136Cは株式会社シーピーアイテクノロジーズのベンダID。 1h  8131 DeviceID ボードの種類識別に使用。 2h  0000 Programming Interface Code/RevisionID 上位 00h 下位 00h:リビジョンレベル。 3h  0680 Base Class Code/Sub Class Code 上位 06h:PCI Bridge Deviceを示す。 下位 80h:Otherを示す。 (詳細についてはPCI仕様書を参照) 4h  00f1 Base Address Register1 Bit 0: I/O空間を要求中。 Bit 1: 予約。0を返さなければいけない。 Bit31-2:このデバイスに割り当てられたI/O空間領域の 先頭アドレス 5h  0000 Base Address Register2 6h  136C Subsystem VendorID ボードメーカのベンダID。 7h  3231 SubsystemID ボードメーカが割り当てる識別番号。 弊社では、ボード上のPCIデバイスがAPIC21(3231)であるか、 APIC22(3232)であるかの識別に使用。 8h  0000 ExpansionROM Base Address 9h  0139 Interrupt Pin/Adapter Control Register 上位 01h:割り込みINTA#を使用。 下位 39h: Bit 0 PCI Read Mode 1 : RDサイクル受付時直ちにRetryを発行し、プリフェッ チ・データをRD FIFOに格納し、PCI側からの再 アクセスを待つ Bit 1 PCI Read No Write Mode 0 : ライト要求を受付 Bit 2 PCI Write Mode 0: レーテンシ要求範囲内でFIFOの空きを待つ Bit 3 PCI WR Completion Mode 1: WRデータに対するアプリケーション側との同期をとる 時に使用バースト転送時は、最初のデータフェーズWR 後、Disconnectを発行。WRされたデータが アプリケーション側に引き取られるまで、その後の PCIアクセスの受付禁止(Retry) Bit 4 Application Write No Prefetch RD 1: PCI側よりWRデータが転送された場合、現在 起動中のMemoryプリフェッチRDサイクルを終了させ、 WRサイクルを優先させる Bit 5 PCI Initial Latency Enable 1: PCI Initial Latency Rule (16 clock) Enable Bit 6 Data Parity Mode 0: Parity Errorの有無に関係なくデータアクセ スを実施 Bit 7 Adapter Software Reset 0: Reset Disable ah  0000 Local Control Register Low Byte  Bit 0,1 :ローカルバス幅                                    0,0:8ビット幅 Bit 2 :メモリープリフェッチ                   0:未使用              Bit 3,4,5 :プリフェッチカウント                  0,0,0:未使用              Bit 6 :ダイレクトI/Oリード                    0:未使用              Bit 7 :ダイレクトI/Oレジスタサイズ                    0:未使用  bh  0000 Local Control Register High Byte              Bit 15,14,13,12,11,10,9,8 :I/Oアドレスレジスタ                                  0000,0000:未使用              Bit 16 :メモリーリードアドレスウェイト                     0:未使用              Bit 18,17 :メモリーリードデータウェイト                    0,0:未使用              Bit 19 :メモリーライトアドレスウェイト                     0:未使用              Bit 21,20 :メモリーライトデータウェイト                    0,0:未使用              Bit 22 :メモリーアドレスホールドタイム             0:未使用              Bit 23 :タイマークロックコントロール                     0:クロック入力              Bit 24 :I/Oアドレシングモード                     0:固定              Bit 25 :I/Oリードアドレスウェイト                     0:0WAIT Bit 27,26 :I/Oリードデータウェイト                     0,0:0WAIT Bit 28 :I/Oライトアドレスウェイト 0:0WAIT Bit 30,29 :I/Oライトデータウェイト 0:0WAIT Bit 31 :I/Oアドレスホールドタイム                     0:0クロック ch  0000 Initialize Control/Internal Interrupt Control 初期設定ではマスク。 dh  0000 External Interrupt Control 初期設定ではマスク。 eh  AA55 IOCS Enable Timing Low Byte IOCS0-7#の設定 Bit 1:0 IOCS0# 00 : CS Disable 01 : IOR# Timing 10 : IOW# Timing 11 : Address Timing Bit 3:2 IOCS1# 以下、同じようにIOCS15#まで続く。 ここでは、IOCS0-3#をIOR#、IOCS4-7#をIOW#としてい る。 fh  0001 IOCS Enable Timing High Byte IOCS8-15#の設定 0h  0F00 IOCS0 Address Decode 上位 0f h: xx00 h−xx0f h でAddress Decode 範囲を設定。 下位 00 h: アドレス照合に使用されるビット。 R/W設定は、Offset Address ehで行なう。 11h  0F01 IOCS1 Address Decode 上位 0f h: xx00 h−xx0f h でAddress Decode 範囲を設定。 下位 01 h: アドレス照合に使用されるビット。 R/W設定は、Offset Address ehで行なう。 12h  0F02 IOCS2 Address Decode 上位 0f h: xx00 h−xx0f h でAddress Decode 範囲を設定。 下位 02 h: アドレス照合に使用されるビット。 R/W設定は、Offset Address ehで行なう。 13h  0F03 IOCS3 Address Decode 上位 0f h: xx00 h−xx0f h でAddress Decode 範囲を設定。 下位 03 h: アドレス照合に使用されるビット。 R/W設定は、Offset Address ehで行なう。 14h  0F00 IOCS4 Address Decode 上位 0f h: xx00 h−xx0f h でAddress Decode 範囲を設定。 下位 00 h: アドレス照合に使用されるビット。 R/W設定は、Offset Address ehで行なう。 15h  0F01 IOCS5 Address Decode 上位 0f h: xx00 h−xx0f h でAddress Decode 範囲を設定。 下位 01 h: アドレス照合に使用されるビット。 R/W設定は、Offset Address ehで行なう。 16h  0F02 IOCS6 Address Decode 上位 0f h: xx00 h−xx0f h でAddress Decode 範囲を設定。 下位 02 h: アドレス照合に使用されるビット。 R/W設定は、Offset Address ehで行なう。 17h  0F03 IOCS7 Address Decode 上位 0f h: xx00 h−xx0f h でAddress Decode 範囲を設定。 下位 03 h: アドレス照合に使用されるビット。 R/W設定は、Offset Address ehで行なう。 18h  0F0F IOCS8 Address Decode 上位 0f h: xx00 h−xx0f h でAddress Decode 範囲を設定。 下位 0f h: アドレス照合に使用されるビット。 R/W設定は、Offset Address ehで行なう。 19h  0000 IOCS9 Address Decode R/W設定は、Offset Address ehで行なう。 1ah  0000 IOCS10 Address Decode R/W設定は、Offset Address ehで行なう。 1bh  0000 IOCS11 Address Decode R/W設定は、Offset Address ehで行なう。 1ch  0000 IOCS12 Address Decode R/W設定は、Offset Address ehで行なう。 1dh  0000 IOCS13 Address Decode R/W設定は、Offset Address ehで行なう。 1eh  0000 IOCS14 Address Decode R/W設定は、Offset Address ehで行なう。 1fh  0000 IOCS15 Address Decode R/W設定は、Offset Address ehで行なう。 20h  00FF Multiplex Control アドレス / IOチップセレクト信号(TA9-16 / IOCS8-15 #)の選択 Bit 0 TA9 / IOCS8# 0 : TA9 Select 1 : IOCS8# Select Bit 1 TA9 / IOCS8# 0 : TA10 Select 1 : IOCS9# Select 以下、同じようにBit7 TA16 / IOCS15#まで続く。 ここでは、IOCS8-15#を選択している。 上位 00hは、予約。 21h  0000 RD FIFO Space Control 22h  0000 Timer Count Register Low Byte 23h  0000 Timer Count Register High Byte -------------------------------------------------------------------- 「シリアルEEPROMのデータフォーマットについて」  終わり -------------------------------------------------------------------- ブラウザの {戻る}ボタンで戻ってください