JAJZ036A December   2024  – July 2025 AM2752-Q1 , AM2754-Q1

 

  1.   1
  2.   概要
  3. 1使用上の注意およびアドバイザリ マトリックス
    1. 1.1 サポート対象デバイス
  4. 2シリコン リビジョンの使用上の注意とアドバイザリ
    1. 2.1 シリコンの使用上の注意
      1.      i2284
      2.      i2351
      3.      i2424
    2. 2.2 シリコンのアドバイザリ
      1.      i2049
      2.      i2062
      3.      i2120
      4.      i2137
      5.      i2189
      6.      i2196
      7.      i2199
      8.      i2249
      9.      i2253
      10.      i2278
      11.      i2279
      12.      i2310
      13.      i2311
      14.      i2312
      15.      i2377
      16.      i2383
      17.      i2401
      18.      i2427
      19.      i2431
      20.      i2435
      21.      i2436
      22.      i2438
      23.      i2449
      24.      i2455
  5. 3商標
  6. 4改訂履歴

i2196

IA:IA でデッドロック シナリオが発生する可能性があります

詳細:

割り込みアグリゲータ (IA) には、イベント トランスポート レーン (ETL) バスに到着したイベントを割り込みステータス ビットに変換するというメイン機能が 1 つあります。これは、レベル割り込みの生成に使用されます。IA バージョン 1.0 でこの関数を実行したブロックはステータス イベント ブロックと呼ばれていました。

ステータス イベント ブロックに加えて、マルチキャスト イベント ブロックとカウント イベント ブロックという 2 つの主要な処理ブロックがあります。マルチキャスト ブロックは、実際にはイベント スプリッタとして機能します。イベントが発生するたびに、2 つの出力イベントを生成できます。カウント イベント ブロックは、高周波イベントを読み取り可能なカウントに変換するために使用されます。入力イベントをカウントし、0 以外のカウント値との間のカウント遷移時に出力イベントを生成します。ステータス イベント ブロックとは異なり、マルチキャストおよびカウント イベント ブロックは出力 ETL イベントを生成し、他の処理ブロックにマッピングします。

設計後に、IA のデッドロックを引き起こす可能性のある問題が発見されました。この問題は、これら 3 つの処理ブロック間でイベント「ループ」が発生した場合に発生します。パスがブロックされているために処理ブロックがイベントを出力できず、イベントを出力できないために、新しい入力イベントを取得できない状況が発生する場合があります。この入力イベントを受信できないため、出力パスがアンワインドできなくなり、両方のパスがブロックされたままになります。

回避方法:

図 2-1 に、IA 1.0 の概念ブロック図を示します。潜在的なループは、カウント イベント ブロックがマルチキャスト ブロックにイベントを送信しないようにするポリシーを採用することで回避できます。最初にイベントを分割してから、他の場所に送信する間に 1 を数えるのが一般的であるために、この方法が選択されました。このパスが慣例によってブロックされている場合、1 つのイベントが複数回ブロックにアクセスすることはできず、出力がブロックされない限り、パスがブロックされることはありません。

AM275 割り込みアグリゲータ バージョン 1.0図 2-1 割り込みアグリゲータ バージョン 1.0

ここに概説されているルールに従うと、システムは、デッドロック シナリオを発生させる可能性のあるループ危険性を回避して安全に動作できます。