エンベデッド・ペリフェラルIPユーザーガイド

ID 683130
日付 9/21/2020
Public
ドキュメント目次
1. 概要 2. Avalon® -ST Multi-Channel Shared Memory FIFOコア 3. Avalon® -STシングルクロックFIFOコアおよびデュアルクロックFIFOコア 4. Avalon® -STシリアル・ペリフェラル・インターフェイス・コア 5. SPIコア 6. SPI Slave to Avalon® Master Bridgeコア/JTAG to Avalon® Master Bridgeコア 7. インテル eSPIスレーブコア 8. eSPI to LPCブリッジコア 9. イーサネットMDIOコア 10. インテルFPGA 16550互換UARTコア 11. UARTコア 12. JTAG UARTコア 13. インテル FPGA Avalon® Mailboxコア 14. インテル FPGA Avalon® ミューテックス・コア 15. インテル FPGA Avalon® I2C (Master) コア 16. インテル FPGA I2C Slave to Avalon® -MM Master Bridgeコア 17. インテルFPGA Avalon® コンパクト・フラッシュ・コア 18. EPCS/EPCQAシリアル・フラッシュ・コントローラー・コア 19. インテルFPGAシリアル・フラッシュ・コントローラー・コア 20. インテルFPGAシリアル・フラッシュ・コントローラーIIコア 21. インテルFPGA汎用クアッドSPIコントローラー・コア 22. インテルFPGA汎用クアッドSPIコントローラーIIコア 23. インターバル・タイマー・コア 24. インテルFPGA Avalon FIFOメモリーコア 25. オンチップメモリー (RAMおよびROM) コア 26. Optrex 16207 LCDコントローラー・コア 27. PIOコア 28. PLLコア 29. DMAコントローラー・コア 30. Modular Scatter-Gather DMAコア 31. Scatter-Gather DMAコントローラー・コア 32. SDRAMコントローラー・コア 33. トライステートSDRAMコア 34. Video Sync GeneratorコアとPixel Converterコア 35. インテル FPGA Interrupt Latency Counterコア 36. パフォーマンス・カウンター・ユニット・コア 37. ベクトル割り込みコントローラー・コア 38. Avalon® -STデータ・パターン・ジェネレーター・コアとデータ・パターン・チェッカー・コア 39. Avalon® -STテスト・パターン・ジェネレーター・コアとテスト・パターン・チェッカー・コア 40. システムIDペリフェラル・コア 41. Avalon® Packets to Transactions Converterコア 42. Avalon® -STマルチプレクサー・コアとデマルチプレクサー・コア 43. Avalon® -ST Bytes to Packets ConverterコアとPackets to Bytes Converterコア 44. Avalon® -ST Delayコア 45. Avalon® -STラウンド・ロビン・スケジューラー・コア 46. Avalon® -ST Splitterコア 47. Avalon® -MM DDR Memory Half Rate Bridgeコア 48. インテル FPGA GMII to RGMIIコンバーター・コア 49. インテル FPGA MII to RMIIコンバーター・コア 50. インテルFPGA HPS GMII to TSE 1000BASE-X/SGMII PCSブリッジコア 51. インテル FPGA HPS EMAC to Multi-rate PHY GMIIアダプターコア 52. インテル FPGA MSI to GICジェネレーター・コア

12.4.5. 割り込み動作

JTAG UARTコアは、それぞれの割り込み条件のいずれかが保留中で有効になっている場合に割り込みを生成します。

割り込み動作は、デバイスドライバーのプログラマーがホスト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が適切なデフォルトです。