Avalon® インターフェイスの仕様書

ID 683091
日付 9/26/2022
Public
ドキュメント目次

6.2.3. クレジットの返送

Avalon® Streaming クレジットプロトコルは、return_credit 信号をサポートします。この信号は、ソースでクレジットをシンクに戻すために使用されます。この信号がアサートされているサイクルはそれぞれ、ソースが 1 つのクレジットを返していることを示します。ソースが複数のクレジットを返す場合は、この信号を複数サイクルアサートする必要があります。例えば、ソースから 10 個の未処理のクレジットを返す場合、ソースは return_credit 信号を 10 サイクルアサートします。シンクでは、内部のクレジット管理カウンターで返されたクレジットを記録する必要があります。クレジットは、ソースのクレジットが 0 よりも大きい場合はいつでも返すことができます。

次の図は、ソースがクレジットを返している例を示しています。図で示すとおり、outstanding_credit はソースの内部カウンターです。ソースがクレジットを返すと、このカウンターはデクリメントされます。

図 35. ソースにおけるクレジットの返送
注: 上の図は、valid がデアサートされている際のクレジットの返送を示していますが、return_credit は、valid がアサートされている際にアサートすることもできます。この場合、ソースは実質的に 2 つのクレジット (1 つは valid、もう 1 つは return_credit に対して) を使用します。