UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

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 Created 08/26/2002
Last Updated 07/18/2007
Status Archive
Type General Article