xPDK_HeaderHeader with some typical information for most xPDK files.
Most is optional and extension capability is the idea.
StructureThe attributes and elements are shown below, in a sorted per type fashion.
In case a list is printed after an element, it indicates that you can have many, otherwise it should be a single element. With a optional it tells the element is not required.
<xPDK_Header pdk_name="..." ... > ...
<attribute> ... </attribute> list
<doc> ... </doc> optional
<global> ... </global> list
<license> ... </license> optional
<mpw_run> ... </mpw_run> list
<provider> ... </provider> optional
<tex> ... </tex> optional
<version> ... </version> optional
XSD The schema file can be downloaded or viewed at xPDK_Base.
attributeType pdaAttributeType documentation: Attributes are key/value pairs to annotate building blocks and views with information that is likely to be software specific. So it is more a 'flag' then a value. The value is just a string and not something with an expression in it.
docType pdaDocumentation documentation: Document anything relevant for the topic you want to define.
This field allows some (short, few lines) documentation to be written. It can be a long string, but the idea is not to replace a design manual.
This fields is like
texwhich allows documentation in LaTex format;
docis restricted to plain text.
globalType pdaNamedValue documentation: Create a named value with expression / type support.
licenseDefine the license condition for this file. Type pdaLicense documentation: Define license information.
State the basic conditions of using the file and typically refer to legal documents.
License information should be compact enough to be clear as reference. The reference is expected to be to signed documents like Non Disclose Agreements (NDA) or service contracts and so on.
mpw_runDefine a list of tape-outs for which a design kit or other data file can be applied. Type pdaMPWrun documentation: Multi-Project Wafer (MPW) run that will support the given PDK library.
pdk_nameLibrary / process name; a foundry can supply many PDKs under the same provider name.
pdk_nameat the start (just below the
xsi:noNamespaceSchemaLocationdefines the design kit name and is intended as a relatively short name. It should be unique enough to avoid confusion by designers. Type pdaPDKname documentation: Defines a valid name for a PDK - this is slightly more general then the pdaIdentifier.
In text this is a letter or number, followed by letters, numbers, underscore or dot or dash or dollar. The check is regular expression: [A-Za-z0-9]([A-Za-z0-9_#$])*
providerDefine the provider of this document.
Type pdaProvider documentation: This field can be used for a full name of the design kit provider, so a full company or institute name for example, instead of the smaller pdk_name.
texType pdaTexDocumentation documentation: As
texcan be a long text in LaTex format to document the layer in more detail if needed.
You can document anything relevant for the topic you want to define.
Multiple paragraphs is fine. Format is Latex, so more complex content is possible.
versionDefine the version of the design kit / data.
Using version numbers helps to keep track of which files to use. Type pdaVersion documentation: