そのため、アルゴリズムを使用して、リンク ( http://ars.els-cdn.com/content/image/1-s2.0-S0140366499000031-gr1.gif ) のような構造を作成しています。そこで、次にジャンプする場所を決定する関数を作成しました。私の VHDL スイッチ アーキテクチャでは、generate ステートメントを使用してノードを定義し、それらのポートを適切にマップしようとしていますが、合成すると「「banyan」はこの式では使用できません」と表示されます (banyan はライブラリ内の関数です)。以下にコード例を示します。
INPUT: IF ( l = 1 ) GENERATE
NODE_Element : BN PORT MAP(
clk, reset,
Input((2*n)-1),
Input((2*n)),
SyncIn,
con(l+1,Banyan(l,n),BanyanPort(l,n)),
con(l+1,Banyan(l,n),BanyanPort(l,n)),
sync(l+1,n)
); --GENERIC MAP(...)
END GENERATE INPUT;
これを解決する方法を知っている人はいますか...基本的なようですが、解決策を見つけることができました。