architecture beh of pwm is
begin
type lutable is array (1 to 64) of integer range 0 to 4000;
-----------------------------------------------tables for FULL STEPPING.
constant full_pwm1_1: lutable := ( 3900,0,0,3900, 3900,0,0,3900, 3900,0,0,3900, 3900,0,0,3900,
3900,0,0,3900, 3900,0,0,3900, 3900,0,0,3900, 3900,0,0,3900,
3900,0,0,3900, 3900,0,0,3900, 3900,0,0,3900, 3900,0,0,3900,
3900,0,0,3900, 3900,0,0,3900, 3900,0,0,3900, 3900,0,0,3900);
variable ds1_1: integer range 0 to 4000; --Duty Cycle Variables for PWM1_1
variable c_full,c_half,c_quat,c_eigh,c_sixt: integer range 1 to 64;
process(gclk)
begin
case selectline is
when "001" => --------------------FULL STEPPING
if dir='1' then--------------------direction selection
ds1_1 := full_pwm1_1(c_full);
私が言及していない他のすべての変数は、適切な範囲で整数として定義されており、すべて構文的に定義されています。
しかし、それらすべてに「未定義のシンボル」エラーが発生し、full_pwm1_1 定数も発生します。誰かが私を助けて、配列の宣言とインスタンス化が正しいかどうかを確認してください。