This article includes a list of general references, but it remains largely unverified because it lacks sufficient corresponding inline citations. (January 2019) (Learn how and when to remove this template message)
IP-XACT is an XML format that defines and describes individual, re-usable electronic circuit designs (individual pieces of intellectual property, or IPs) to facilitate their use in creating integrated circuits (i.e. microchips). IP-XACT was created by the SPIRIT Consortium as a standard to enable automated configuration and integration through tools.
The goals of the standard are
- to ensure delivery of compatible component descriptions from multiple component vendors,
- to enable exchanging complex component libraries between electronic design automation (EDA) tools for SoC design (design environments),
- to describe configurable components using metadata, and
- to enable the provision of EDA vendor-neutral scripts for component creation and configuration (generators, configurators).
All documents will have the following basic titular attributes spirit:vendor, spirit:library, spirit:name, spirit:version.
A document typically represents one of:
- bus specification, giving its signals and protocol etc.;
- leaf IP block data sheet;
- or a hierarchic component wiring diagram that describes a sub-system by connecting up or abstracting other components made up of spirit:componentInstance and spirit:interconnection elements.
For each port of a component there will be a spirit:busInterface element in the document. This may have a spirit:signalMap that gives the mapping of the formal net names in the interface to the names used in a corresponding formal specification of the port. A simple wiring tool will use the signal map to know which net on one interface to connect to which net on another instance of the same formal port on another component.
There may be various versions of a component referenced in the document, each as a spirit:view element, relating to different versions of a design: typical levels are gate-level, RTL and TLM. Each view typically contains a list of filenames as a spirit:fileSet that implement the design at that level of abstraction in appropriate language, like Verilog, C++ or PSL.
Non-functional data present includes the programmer's view with a list of spirit:register declarations inside a spirit:memoryMap or spirit:addressBlock.
Supporting companies and software
- Agnisys 
- Magillem 
- Semifore, Inc 
- Synopsys, Inc 
- Cadence - JasperGold  and Interconnect Workbench (IWB) 
- 1685-2014 – IEEE Standard for IP-XACT, Standard Structure for Packaging, Integrating, and Reusing IP within Tool Flows. 2014. doi:10.1109/IEEESTD.2014.6898803. ISBN 978-0-7381-9226-0.
- 1685-2009 – IEEE Standard for IP-XACT, Standard Structure for Packaging, Integrating, and Reusing IP within Tools Flows. 2010. doi:10.1109/IEEESTD.2010.5417309. ISBN 978-0-7381-6160-0.
- SPIRIT IP-XACT Controlled ESL Design Tool Applied to a Network-on-Chip Platform
- Berman, V. (April 2006). "Standards: The P1685 IP-XACT IP Metadata Standard". IEEE Design & Test of Computers. 23 (4): 316–317. doi:10.1109/MDT.2006.104.
- Kruijtzer, W.; Vaumorin, E.; Van Der Wolf, P.; De Kock, E.; Stuyt, J.; Ecker, W.; Mayer, A.; Hustin, S.; Amerijckx, C.; De Paoli, S. (2008). Industrial IP integration flows based on IP-XACT™ standards. DATE'08. Proceedings of the conference on Design, automation and test in Europe. pp. 32–37. doi:10.1145/1403375.1403386. ISBN 978-3-9810801-3-1.