インテルのみ表示可能 — GUID: iga1401317117895
Ixiasoft
インテルのみ表示可能 — GUID: iga1401317117895
Ixiasoft
12.4.5. 割り込み動作
割り込み動作は、デバイスドライバーのプログラマーがホストPCへの帯域幅のパフォーマンスを懸念している場合に重要です。 Nios® IIエンベデッド・デザイン・スイート (EDS) で提供されるデザイン例とJTAGターミナルプログラムは、最適な割り込み動作で事前にコンフィグレーションされています。
JTAG UARTコアには、書き込み割り込みと読み出し割り込みの2種類の割り込みがあります。controlレジスターのWEビットとREビットは、割り込みを有効/無効にします。
コアでは、書き込みFIFOが空に近い状態になると、書き込み割り込みをアサートすることができます。空に近い状態を示すしきい値のwrite_thresholdは、システム生成時に指定され、組み込みソフトウェアで変更することはできません。書き込み割り込み条件は、書き込みFIFOの文字がwrite_threshold以下になると設定されます。割り込みは、書き込みFIFOに文字を書き込み、書き込みFIFOがwrite_thresholdを上回るとクリアされます。組み込みソフトウェアでは、書き込みFIFOを満たした後にのみ書き込み割り込みを有効にする必要があります。送信する文字が残っていない場合は、組み込みソフトウェアで書き込み割り込みを無効にする必要があります。
コアでは、読み出しFIFOがフルに近い状態になると、読み出し割り込みをアサートすることができます。フルに近い状態を示すしきい値のread_thresholdは、システム生成時に指定され、組み込みソフトウェアで変更することはできません。読み出し割り込み条件は、読み出しFIFOのスペースがread_threshold以下になると設定されます。また、読み出し割り込み条件は、読み出しFIFOに少なくとも1文字があり、それ以上の文字が予期されない場合にも設定されます。読み出し割り込みは、読み出しFIFOから文字を読み出すことによってクリアされます。
最適なパフォーマンスを実現するには、割り込みのしきい値が組み込みソフトウェアの割り込み応答時間に一致している必要があります。例えば、10MHzのJTAGクロックでは、新しい文字はホストPCによって1µsごとに提供 (または消費) されます。しきい値が8の場合、割り込み応答時間は8µs未満である必要があります。割り込み応答時間が長すぎると、パフォーマンスが低下します。短すぎると、割り込みが頻繁に発生します。
Nios® IIプロセッサー・システムでは、読み出しと書き込みのしきい値の8が適切なデフォルトです。