2014-11-05 2 views
0

Код У меня возникли проблемы с переплетом управляющего слова на несколько частей, чтобы они могли использоваться по их соответствующим схемам.Ошибка 10500, направленная на объявление псевдонима

При попытке скомпилировать этот код, я получаю два 10500 ошибки для каждого псевдонима линии: «Рядом с текстом„псевдоним“, ожидающие„конца“, или„(“или идентификатор, или с одновременным утверждением» " Рядом с текстом «является», ожидая «;», или «общий»

Я попытался добавления. «конец», и «конец псевдонима» после заявлений псевдонимов, но он все еще вернулись те же ошибки

. Я также попытался добавить «сигнал» в различные части декларации, но это также по-прежнему приводило к той же ошибке.

Orig Я преобразовал std_logic_vector в бит_вектор перед блоком, а выход псевдонима был битным типом вместо std_logic, но я изменил его на std_logic, считая, что преобразование типа было проблемой.

--Splits control word into specific sections. 
    Architecture split of t11214 is 
      Begin 
       Alias enable_input: std_logic is instruction(1); 
       Alias enable_output: std_logic is instruction(2); 
       Alias select_accumulator: std_logic is instruction(3); 
       Alias select_operand: std_logic_vector(1 to 2) is instruction(4 to 5); 
       Alias select_prcmp: std_logic_vector(1 to 2) is instruction(6 to 7); 
       Alias select_prenot: std_logic_vector(1 to 2) is instruction(8 to 9); 
       Alias select_function: std_logic_vector(1 to 2) is instruction(10 to 11); 
       Alias select_rng: std_logic is instruction(12); 
       Alias shift: std_logic_vector(1 to 4) is instruction(13 to 16); 
    End architecture split; 

ответ

1

Alias является частью деклараций, поэтому он должен быть перед темBegin, таким образом, как:

Architecture split of t11214 is 
    ... 
    Alias enable_input: std_logic is instruction(1); 
    ... 
Begin 
    ... 
End architecture split; 
+1

Спасибо. Я часами борюсь с этим кодом, не могу поверить, что ошибка была такой простой. –

Смежные вопросы