ERROR:HDLCompiler:410 - ".vhd" Line xx: Expression has x elements; expected y"
libraryieee;
use ieee.std_logic_1164.all;
useieee.numeric_std.all;
...
constant K : integer := 128;
...
variable r : signed(31 downto 0);
variable d : signed(31 downto 0);
...
r := resize(r + (K * d), 32)
برای کارهای کنترلی از Std_logic_arith و برای کارهای پردازشی (محاسباتی) از Numeric_std استفاده کنید...
هرگز از هر دوی این پکیج ها در یک فایل استفاده نکنید! (ERROR:HDLCompiler:607)! قبلاًها! روی FPGAهای قدیمی تر امکانش بود! اما اصلا کار درستی نبود! از ما گفتن بود!
استفاده از Numeric_std، شما را مجبور می کند!!! تا نوع داده را از نظر علامت دار یا بی علامت مشخص کنید... تا خروجی مناسب با نتایج Matlab برای شما حاصل شود...