xPDK PurposeA variety of software exists for different tasks in the design phase, covering simulation, mask layout, verification and so on. Providing (optimally tuned) design kits for each of these software is costly and likely to lead to inconsistencies between them, due to some being updated later then others and so on.
Typically a designer needs to use a few of these packages together, so being able to transfer (part of) designs between them saves lot of design time and errors. This requires that the inconsistenties in basic definitions like building block / pcell names, parameters, ports are not there.
The xPDK setup is intended to allow a foundry or library provider an easy way of creating a few input files that the software vendors can use to create their design kits fast and accurate and with rich content
The basic idea is as in following picture.
The PDK server can be a server from a broker as well as any other sharing mechanism like source control repositories, ftp servers and so on.
DocumentationThe XSD files contain documentation on the many fields and that information is the reference. This allows XSD-based editors like XML Copy Editor to show this information while editting an XML file.
The web pages show full examples with a bit more information, where helpful.
XSD → websiteIn many places there is a block that looks like:
Details on "name". This section is extracted from the XSD to give more detail on the short info / examples.