IP-XACT XML Schema - Icmc-Usp

26
Vanderlei Bonato Sep 2008 IP-XACT XML Schema

Transcript of IP-XACT XML Schema - Icmc-Usp

Vanderlei Bonato

Sep 2008

IP-XACT XML Schema

2

Outline

XMLSchema

The seven top-level IP-XACT schema definitionsIP-XACT Docs

3

What is XML?

XML stands for EXtensible MarkupLanguage XML is a markup language much like HTML XML was designed to carry data, not to display data XML tags are not predefined. You must define your own tagsXML is designed to be self-descriptiveXML is a W3C Recommendation

4

XML documents form a tree structure that starts at "the root" and branches to "the leaves"

<bookstore> <book category="COOKING">

<title lang="en">Everyday Italian</title> <author>Giada De Laurentiis</author> <year>2005</year> <price>30.00</price> </book>

<book category="CHILDREN"> <title lang="en">Harry Potter</title> <author>J K. Rowling</author> <year>2005</year><price>29.99</price> </bookstore>

</bookstore>

5

XML Schema

XML schema provide a means for defining the structure, content and semantics of XML documentsIt expresses shared vocabularies and allow machines to carry out rules made by peopleIt is an XML-based alternative to DTDs(Document Type Definition) It is also referred to as XML Schema Definition (XSD)It became a W3C Recommendation in May 2001

6

XML Schemas are the Successors of DTDs

XML Schemas are extensible to future additions XML Schemas are richer and more powerful than DTDsXML Schemas are written in XML XML Schemas support data types XML Schemas support namespaces

7

What does XML Schema define?

defines elements that can appear in a document defines attributes that can appear in a document defines which elements are child elements defines the order of child elements defines the number of child elements defines whether an element is empty or can include text defines data types for elements and attributes defines default and fixed values for elements and attributes

8

Well Formed and Valid XML

XML with correct syntax is "Well Formed" XML.XML validated against a DTD is "Valid" XML.

9

IP-XACT XML Schema

IP-XACT is a well-defined XML schema for meta-data that documents the characteristics of IP required for the automation of the configuration and integration of IP blocks

10

The IP-XACT schema defined by seven top-level schema definitions

11

Bus and Abstraction Definition descriptions

These two descriptions are referenced by components or abstractors in their bus or abstractor interfacesThey describe a group of ports that together perform some functionThe abstraction definition description contains the high-level attributes of the interface, including items such as the connection method and indication of addressingThe bus definition contains the low-level attributes of the interface, including items such as the name, direction, and width of the ports

12

Component description

An IP-XACT component is the central placeholder for the objects meta-dataComponents are used to:

describe cores (processors, co-processors, DSPs, etc.) peripherals (memories, DMA controllers, timers, UART, etc.)and buses (simple buses, multi-layer buses, cross bars, network on chip, etc.)

13

Component description

An IP-XACT component can be of two kinds: static or configurable. A DE cannot change a static component. A configurable (or parameterized) component has configurable elements (such as parameters) that can be configured by the DE and these elements may also configure the RTL or TLM model.

14

Component description

An IP-XACT component can be a hierarchical object or a leaf objectLeaf components do not contain other IP-XACT components, while hierarchical components contain other IP-XACT sub-componentsThis can be recursive by having hierarchical components that contain hierarchical components, etc

15

Component description: interfaces

Each IP component normally identifies one or more bus interfacesBus interfaces are groups of ports that belong to an identified bus type and an abstraction type The purpose of the bus interface is to map the physical ports of the component to the logical ports of the abstraction definitionThere are seven possible modes for a bus interface:

master, slave, system interface, and may be direct or mirroredthe seventh interface mode is the monitor mode

A monitor interface can be used to connect IP into the design for verification

16

Design descriptions

An IP-XACT design is the central placeholder for the assembly of component objects meta-dataA design describes a list of components referenced by this description, their configuration, and their interconnections to each otherThe interconnections may be between interfaces or between ports on a componentA design description is analogous to a schematic of components

17

Design descriptions

While a design description, with referenced components and interconnections, describes most of the information for a design, some information is missing, such as the exact port names used by a bus interfaceTo resolve this a component description (referred to as a hierarchical component) is used, which contains a view with a reference to the design description Together, the component and referenced design description form a complete single-level hierarchical description

18

Abstractor descriptions

Designs that incorporate IP models using different interface modeling styles (e.g., TLM and RTL modeling styles) may contain interconnections between such component interfaces using different abstractions of the same bus typeAn IP-XACT description may describe how such interconnections are to be made using a special-purpose object called an abstractor

19

Abstractor descriptions

An abstractor is used to connect between two different abstractions of the same bus type (e.g., an APB_RTL and an APB_TLM)An abstractor shall only contain two interfaces, which shall be of the same bus definition and different abstraction definitionsUnlike a component, an abstractor is not referenced from a design description, but instead is referenced from a design configuration description

20

Generator chain descriptions

In IP-XACT, a design flow can be represented as a generator chainA generator chain is an ordered sequence of named tasks Each named task can be represented as a single generator or as another generator chainThis way, design flow hierarchies can be constructed and executed from within a given DE The DE itself is responsible for understanding the semantics of the specified chain described in the generator chain description

21

Design configuration descriptions

An IP-XACT design configuration is a placeholder for additional configuration information of a design or generator chain description Design configuration information is useful when transporting designs between design environments and automating generator chain execution for a design, by storing information that would otherwise have to be re-entered by the designer

22

Design configuration descriptions

The design configuration description contains the following configuration information:

configurable information for parameters defined in generators within generator chains; this information is not referenced via the design descriptionthe active view or current view selected for instances in the design descriptionthe configuration information for interconnections between the same bus types with differing abstraction types (i.e., abstractor reference, parameter configuration, and view selection).

A design configuration applies to a single design, but a design may have multiple design configuration descriptions

23

IP-XACT schemaDOC

../IP-XACT-1.4-release/schemaDOC/index.html

25

References

XML tutorialhttp://www.w3schools.com/xml/xml_elements.asp

XML Schemahttp://www.w3schools.com/schema/default.asp

IP-XACT-1.4-specification.pdf (from Spirit Consortium)

26

Thanks!