cancel
Showing results for 
Search instead for 
Did you mean: 

Knowledge Base Articles

FX2LP™のアイソクロナス転送のスループット - KBA87932 - Community Translated (JA)

Employee

FX2LP™のアイソクロナス転送のスループット - KBA87932 - Community Translated (JA)

Community Translated by NoTa_4591161 Expert          Version: *A

Translation - English: Throughput for Isochronous Transfers for FX2LP™ - KBA87932

質問:

FX2LPを使用したアイソクロナス転送のスループットは、バッファ長、MaxPktSize、およびwMaxPacketSizeの関係を示していますか?

回答:

ISO転送の場合、バッファ長とエンドポイントの転送サイズは、エンドポイントのMaxPktSize8倍の倍数です。

例えば:

wMaxPktSize0x1400(バイナリ= 0001 0100 0000 0000)の場合

MaxPktSize = [バイナリ100 0000 0000] * [バイナリ10 + 1] = 1024 * 3 = 3072

FX2LPで使用できるFIFOバッファスペースは最大4096バイトです。したがって、1つのエンドポイントを使用している場合は、4Kを割り当てることができます。

EP2FIFOCFGレジスタでクワッドバッファリング用に構成されたエンドポイント2を使用する必要があります。

EP2 FIFOは最大4096バイト、EP6 FIFOは最大2048バイト、EP4およびEP8 FIFOは最大1024バイトの長さにできることに注意してください。

したがって、4KBのエンドポイントRAMしか使用できない場合、アイソクロナス転送では、アイソクロナスパケットごとに1024バイトしか転送できません。

最大帯域幅を実現するために、USB 2.0仕様では、単一のデバイスがマイクロフレームごとに最大3つのアイソクロナスパケットをリクエストできるようになっています。これにより、マイクロフレームの最大帯域幅は3072バイトになります。マイクロフレームは125マイクロ秒であり、スループットは24 Mバイト/秒です。

マイクロフレームあたりの転送数は、エンドポイントディスクリプタのwMaxPacketSizeフィールドで定義されます。このフィールドのビット12とビット11は、マイクロフレームごとの追加トランザクションの数を指定し、次のように設定できます。

00 =なし(マイクロフレームごとに1回の転送、たとえば1024バイト)。
01 = 1追加(マイクロフレームあたり2回の転送、たとえば、マイクロフレームあたり2048バイト)。
10 = 2追加(マイクロフレームあたり3回の転送、たとえば、マイクロフレームあたり3072バイト)。
11 =予約済み

0 Likes
Version history
Revision #:
1 of 1
Last update:
‎Aug 26, 2020 04:09 AM
Updated by:
 
Contributors