AR# 15473

|

5.1i XST - "ERROR:HDLParsers:3281 - C:/top.vhd Line ##. arch_name is not an architecture body for ent_name in library work."

Description

Keywords: VHDL, entity, multiple, architecture

Urgency: Standard

General Description:
When I attempt to recursively instantiate a component as follows:

library ieee;
use ieee.std_logic_1164.all;

entity ent_name is
:
:
end entity;

architecture arch_name of ent_name is
begin
:
:
instance_name : entity work.ent_name(arch_name) -- recursive instantiation
:
:

end architecture;

XST issues the following errors:

"ERROR:HDLParsers:3281 - C:/top.vhd Line ##. arch_name is not an architecture body for entity_name in library work."
"ERROR:HDLParsers:900 - C:/top.vhd Line ##. The label instance_name is not declared."

Solution

XST does not currently support recursive instantiation.

The only way to work around this issue is to create and instantiate an entity/architecture that has the same attributes as the top-level entity/architecture.
AR# 15473
Date 07/18/2007
Status Archive
Type General Article
People Also Viewed