mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-09-02 04:13:54 -04:00
Add PPC405 port in V10.1 format.
This commit is contained in:
parent
c2a6dc193e
commit
bc7068a690
68 changed files with 22832 additions and 0 deletions
Binary file not shown.
After Width: | Height: | Size: 636 B |
Binary file not shown.
After Width: | Height: | Size: 865 B |
Binary file not shown.
After Width: | Height: | Size: 868 B |
|
@ -0,0 +1,119 @@
|
|||
text.busintlabel {
|
||||
fill: #810017;
|
||||
stroke: none;
|
||||
font-size: 7pt;
|
||||
font-style: italic;
|
||||
font-weight: 900;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.buslabel {
|
||||
fill: #CC3333;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-style: italic;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.iplabel {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 7pt;
|
||||
font-style: italic;
|
||||
font-weight: 900;
|
||||
text-anchor: middle;
|
||||
font-family: Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.iptype {
|
||||
fill: #AA0017;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-style: italic;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.portlabel {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-style: normal;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.mmMHeader {
|
||||
fill: #FFFFFF;
|
||||
stroke: none;
|
||||
font-size: 10pt;
|
||||
font-style: normal;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.mmSHeader {
|
||||
fill: #810017;
|
||||
stroke: none;
|
||||
font-size: 10pt;
|
||||
font-style: normal;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.proclabel {
|
||||
fill: #810017;
|
||||
stroke: none;
|
||||
font-size: 14pt;
|
||||
font-style: normal;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.opblabel {
|
||||
fill: #339900;
|
||||
stroke: none;
|
||||
font-size: 11pt;
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
text-anchor: middle;
|
||||
font-family: Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.lmblabel {
|
||||
fill: #9999FF;
|
||||
stroke: none;
|
||||
font-size: 11pt;
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
text-anchor: middle;
|
||||
font-family: Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.dbglabel {
|
||||
fill: #555555;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
text-anchor: middle;
|
||||
font-family: Times Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.iopnumb {
|
||||
fill: #555555;
|
||||
stroke: none;
|
||||
font-size: 10pt;
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,611 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<xsl:stylesheet version="1.0"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:exsl="http://exslt.org/common"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
|
||||
<xsl:output method="html"/>
|
||||
|
||||
<!--
|
||||
<xsl:param name="DS_COL_OPB" select="'#339900'"/>
|
||||
<xsl:param name="DS_COL_WHITE" select="'#FFFFFF'"/>
|
||||
<xsl:param name="DS_COL_INFO" select="'#2233FF'"/>
|
||||
<xsl:param name="DS_COL_BLACK" select="'#000000'"/>
|
||||
<xsl:param name="DS_COL_GREY" select="'#CCCCCC'"/>
|
||||
<xsl:param name="DS_COL_XPRP" select="'#810017'"/>
|
||||
<xsl:param name="DS_COL_DOCLNK" select="'#FF9900'"/>
|
||||
-->
|
||||
|
||||
<!-- ======================= MAIN PERIPHERAL SECTION =============================== -->
|
||||
<xsl:template name="Layout_IPSection">
|
||||
|
||||
<TABLE BGCOLOR="{$DS_COL_WHITE}" WIDTH="{$DS_WIDTH}" COLS="4" cellspacing="0" cellpadding="0" border="0">
|
||||
|
||||
<TD COLSPAN="4" width="5%" align="LEFT" valign="BOTTOM">
|
||||
<A name="_{@INSTANCE}"/>
|
||||
<xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if>
|
||||
<SPAN style="color:{$DS_COL_XPRP}; font: bold italic 14px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@INSTANCE"/></SPAN>
|
||||
<xsl:if test="DESCRIPTION[(@TYPE = 'SHORT')]">
|
||||
<SPAN style="color:{$DS_COL_XPRP}; font: normal italic 12px Verdana,Arial,Helvetica,sans-serif">
|
||||
  <xsl:value-of select="DESCRIPTION[(@TYPE = 'SHORT')]"/>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
<BR></BR>
|
||||
<xsl:if test="DESCRIPTION[(@TYPE = 'LONG')]">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: normal italic 12px Verdana,Arial,Helvetica,sans-serif">
|
||||
<xsl:value-of select="DESCRIPTION[(@TYPE = 'LONG')]" disable-output-escaping="yes"/>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
<BR></BR>
|
||||
<BR></BR>
|
||||
<BR></BR>
|
||||
</TD>
|
||||
|
||||
<TR></TR>
|
||||
|
||||
<!-- Layout the Module information table-->
|
||||
<TD COLSPAN="2" width="40%" align="LEFT" valign="TOP">
|
||||
<IMG SRC="imgs/{@INSTANCE}.jpg" alt="{@INSTANCE} IP Image" border="0" vspace="0" hspace="0"/>
|
||||
</TD>
|
||||
<TD COLSPAN="2" width="60%" align="MIDDLE" valign="TOP">
|
||||
<xsl:call-template name="Peri_PortListTable"/>
|
||||
<BR></BR>
|
||||
<BR></BR>
|
||||
</TD>
|
||||
|
||||
<TR></TR>
|
||||
|
||||
<TD COLSPAN="4" width="100%" align="LEFT" valign="BOTTOM">
|
||||
<xsl:call-template name="Peri_InfoTable"/>
|
||||
</TD>
|
||||
|
||||
<!--
|
||||
<TD COLSPAN="1" width="5%" align="LEFT" valign="BOTTOM">
|
||||
<SPAN style="color:{$DS_COL_XPRP}; font: bold normal 16px Verdana,Arial,Helvetica,sans-serif">⌊</SPAN>
|
||||
</TD>
|
||||
<TD COLSPAN="2" width="90%" align="MIDDLE" valign="BOTTOM">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold 12px Verdana,Arial,Helvetica,sans-serif"> </SPAN>
|
||||
</TD>
|
||||
<TD COLSPAN="1" width="5%" align="RIGHT" valign="BOTTOM">
|
||||
<SPAN style="color:{$DS_COL_XPRP}; font: bold normal 16px Verdana,Arial,Helvetica,sans-serif">⌋</SPAN>
|
||||
</TD>
|
||||
-->
|
||||
</TABLE>
|
||||
|
||||
<BR></BR>
|
||||
<BR></BR>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- ======================= PERIHERAL TABLE PARTS =============================== -->
|
||||
<!-- Layout the Module's Information table -->
|
||||
<xsl:template name="Peri_InfoTable">
|
||||
|
||||
<xsl:variable name="mhsParamCNT_" select="count(PARAMETER)"/>
|
||||
|
||||
<xsl:variable name="table_is_split_">
|
||||
<xsl:if test="$mhsParamCNT_ > 10">1</xsl:if>
|
||||
<xsl:if test="not($mhsParamCNT_ > 10)">0</xsl:if>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="table_width_">
|
||||
<xsl:if test="$mhsParamCNT_ > 10"><xsl:value-of select="$DS_WIDTH"/></xsl:if>
|
||||
<xsl:if test="$mhsParamCNT_ <= 10"><xsl:value-of select="ceiling($DS_WIDTH div 2)"/></xsl:if>
|
||||
</xsl:variable>
|
||||
|
||||
|
||||
<xsl:variable name="left_extra_">
|
||||
<xsl:if test="($mhsParamCNT_ mod 2) = 1">1</xsl:if>
|
||||
<xsl:if test="not(($mhsParamCNT_ mod 2) = 1)">0</xsl:if>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="num_left_" select="floor($mhsParamCNT_ div 2) + $left_extra_"/>
|
||||
<xsl:variable name="num_rhgt_" select="floor($mhsParamCNT_ div 2)"/>
|
||||
|
||||
<xsl:variable name="mdr_main_col_">
|
||||
<xsl:if test="$mhsParamCNT_ > 10">4</xsl:if>
|
||||
<xsl:if test="$mhsParamCNT_ <= 10">2</xsl:if>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="mdr_othr_col_">
|
||||
<xsl:if test="$mhsParamCNT_ > 10">2</xsl:if>
|
||||
<xsl:if test="$mhsParamCNT_ <= 10">1</xsl:if>
|
||||
</xsl:variable>
|
||||
|
||||
<TABLE BGCOLOR="{$DS_COL_BLACK}" WIDTH="{$table_width_}" COLS="5" cellspacing="1" cellpadding="1" border="1">
|
||||
<TD COLSPAN="5" WIDTH="100%" align="middle" bgcolor="{$DS_COL_XPRP}"><SPAN style="color:{$DS_COL_WHITE}; font: bold 12px Verdana,Arial,Helvetica,sans-serif">General</SPAN></TD>
|
||||
<TR></TR>
|
||||
<TD COLSPAN="2" WIDTH="40%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">IP Core</SPAN></TD>
|
||||
<TD COLSPAN="3" WIDTH="60%" align="middle" bgcolor="{$DS_COL_WHITE}">
|
||||
<xsl:if test="@DOC_IP">
|
||||
<SPAN style="color:{$DS_COL_XPRP}; font: bold italic 10px Verdana,Arial,Helvetica,sans-serif">
|
||||
<A HREF="{@DOC_IP}" style="text-decoration:none; color:{$DS_COL_XPRP}"><xsl:value-of select="@MODTYPE"/></A>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(@DOC_IP)">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">
|
||||
<xsl:value-of select="@MODTYPE"/>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
</TD>
|
||||
|
||||
<TR></TR>
|
||||
|
||||
<TD COLSPAN="2" WIDTH="40%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Version</SPAN></TD>
|
||||
<TD COLSPAN="3" WIDTH="60%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@HWVERSION"/></SPAN></TD>
|
||||
|
||||
<xsl:if test="@DOC_DRIVER">
|
||||
<TR></TR>
|
||||
<TD COLSPAN="2" WIDTH="40%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Driver</SPAN></TD>
|
||||
<TD COLSPAN="3" WIDTH="60%" align="middle" bgcolor="{$DS_COL_WHITE}">
|
||||
<SPAN style="color:{$DS_COL_XPRP}; font: bold italic 10px Verdana,Arial,Helvetica,sans-serif">
|
||||
<A HREF="{@DOC_DRIVER}" style="text-decoration:none; color:{$DS_COL_XPRP}">API</A>
|
||||
</SPAN>
|
||||
</TD>
|
||||
</xsl:if>
|
||||
|
||||
<TR></TR>
|
||||
|
||||
<xsl:if test="LICENSEINFO">
|
||||
<TD COLSPAN="5" WIDTH="100%" align="middle" bgcolor="{$DS_COL_XPRP}"><SPAN style="color:{$DS_COL_WHITE}; font: bold 12px Verdana,Arial,Helvetica,sans-serif">License</SPAN></TD>
|
||||
|
||||
<TR></TR>
|
||||
<TD COLSPAN="2" WIDTH="40%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">TYPE</SPAN></TD>
|
||||
<TD COLSPAN="3" WIDTH="60%" align="middle" bgcolor="{$DS_COL_WHITE}">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="LICENSEINFO/@TYPE"/></SPAN>
|
||||
</TD>
|
||||
<!--
|
||||
<TR></TR>
|
||||
<TD COLSPAN="2" WIDTH="40%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">CURRENT STATUS</SPAN></TD>
|
||||
<TD COLSPAN="3" WIDTH="60%" align="middle" bgcolor="{$DS_COL_WHITE}">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="LICENSEINFO/@STATE"/></SPAN>
|
||||
</TD>
|
||||
-->
|
||||
<xsl:if test="LICENSEINFO/@EXPIRESON">
|
||||
<TR></TR>
|
||||
<TD COLSPAN="2" WIDTH="40%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">EXPIRES ON</SPAN></TD>
|
||||
<TD COLSPAN="3" WIDTH="60%" align="middle" bgcolor="{$DS_COL_WHITE}">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="LICENSEINFO/@EXPIRESON"/></SPAN>
|
||||
</TD>
|
||||
</xsl:if>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="$mhsParamCNT_ > 0">
|
||||
<TR></TR>
|
||||
<TD COLSPAN="5" WIDTH="100%" align="middle" bgcolor="{$DS_COL_XPRP}"><SPAN style="color:{$DS_COL_WHITE}; font: bold 12px Verdana,Arial,Helvetica,sans-serif">Parameters</SPAN></TD>
|
||||
<TR></TR>
|
||||
<TD COLSPAN="5" width="100%" align="left" bgcolor="{$DS_COL_WHITE}">
|
||||
<SPAN style="color:{$DS_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">
|
||||
These are parameters set for this module.
|
||||
<xsl:if test="@DOC_IP">
|
||||
Refer to the IP <A HREF="{@DOC_IP}" style="text-decoration:none; color:{$DS_COL_XPRP}"><SPAN style="color:{$DS_COL_XPRP}; font: bold italic 9px Verdana,Arial,Helvetica,sans-serif"> documentation </SPAN></A>for complete information about module parameters.
|
||||
</xsl:if>
|
||||
</SPAN>
|
||||
<BR></BR>
|
||||
<SPAN style="color:{$DS_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">
|
||||
Parameters marked with
|
||||
</SPAN>
|
||||
<SPAN style="color:#FFBB00; font: bold 9px Verdana,Arial,Helvetica,sans-serif">yellow</SPAN>
|
||||
<SPAN style="color:{$DS_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">
|
||||
indicate parameters set by the user.
|
||||
</SPAN>
|
||||
<BR></BR>
|
||||
<SPAN style="color:{$DS_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">
|
||||
Parameters marked with
|
||||
</SPAN>
|
||||
<SPAN style="color:{$DS_COL_MODSYSNW}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">blue</SPAN>
|
||||
<SPAN style="color:{$DS_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">
|
||||
indicate parameters set by the system.
|
||||
</SPAN>
|
||||
</TD>
|
||||
|
||||
<xsl:if test="$mhsParamCNT_ <= 10">
|
||||
<TR></TR>
|
||||
<TD COLSPAN="2" WIDTH="40%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Name</SPAN></TD>
|
||||
<TD COLSPAN="3" WIDTH="60%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Value</SPAN></TD>
|
||||
|
||||
<xsl:for-each select="PARAMETER">
|
||||
<xsl:sort select="@INDEX" data-type="number"/>
|
||||
<xsl:variable name="name_bg_col_">
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="@CHANGEDBY='USER'">
|
||||
<xsl:value-of select="$DS_COL_MODUSR"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:when test="@CHANGEDBY='SYSTEM'">
|
||||
<xsl:value-of select="$DS_COL_MODSYS"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:when test="((position() - 1) mod 2) = 0">
|
||||
<xsl:value-of select="$DS_COL_ASH1"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="$DS_COL_WHITE"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="value_bg_col_">
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="@CHANGEDBY='USER'">
|
||||
<xsl:value-of select="$DS_COL_MODUSR"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:when test="@CHANGEDBY='SYSTEM'">
|
||||
<xsl:value-of select="$DS_COL_MODSYS"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:when test="((position() - 1) mod 2) = 0">
|
||||
<xsl:value-of select="$DS_COL_ASH1"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="$DS_COL_WHITE"/>
|
||||
</xsl:otherwise>
|
||||
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<TR></TR>
|
||||
<TD COLSPAN="2" WIDTH="40%" align="left" bgcolor="{$name_bg_col_}">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif">
|
||||
<xsl:value-of select="@NAME"/>
|
||||
</SPAN>
|
||||
<xsl:if test="DESCRIPTION">
|
||||
<BR/>
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold italic 9px Verdana,Arial,Helvetica,sans-serif">
|
||||
<xsl:value-of select="DESCRIPTION"/>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
</TD>
|
||||
<TD COLSPAN="3" WIDTH="60%" align="middle" bgcolor="{$value_bg_col_}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@VALUE"/></SPAN></TD>
|
||||
</xsl:for-each>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="$mhsParamCNT_ > 10">
|
||||
<TR></TR>
|
||||
<TD COLSPAN="5" WIDTH="100%">
|
||||
<TABLE BGCOLOR="{$DS_COL_GREY}" WIDTH="100%" COLS="5" cellspacing="0" cellpadding="0" border="0">
|
||||
|
||||
<TD COLSPAN="2" WIDTH="49%">
|
||||
<TABLE BGCOLOR="{$DS_COL_BLACK}" WIDTH="100%" COLS="2" cellspacing="1" cellpadding="0" border="0">
|
||||
<TD COLSPAN="1" WIDTH="50%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Name</SPAN></TD>
|
||||
<TD COLSPAN="1" WIDTH="50%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Value</SPAN></TD>
|
||||
|
||||
<xsl:for-each select="PARAMETER">
|
||||
<xsl:sort select="@INDEX" data-type="number"/>
|
||||
<xsl:if test="position() <= $num_left_">
|
||||
|
||||
<xsl:variable name="name_bg_col_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="@CHANGEDBY='USER'">
|
||||
<xsl:value-of select="$DS_COL_MODUSR"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:when test="@CHANGEDBY='SYSTEM'">
|
||||
<xsl:value-of select="$DS_COL_MODSYS"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:when test="((position() - 1) mod 2) = 0">
|
||||
<xsl:value-of select="$DS_COL_ASH1"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="$DS_COL_WHITE"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="value_bg_col_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="@CHANGEDBY='USER'">
|
||||
<xsl:value-of select="$DS_COL_MODUSR"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:when test="@CHANGEDBY='SYSTEM'">
|
||||
<xsl:value-of select="$DS_COL_MODSYS"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:when test="((position() - 1) mod 2) = 0">
|
||||
<xsl:value-of select="$DS_COL_ASH1"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="$DS_COL_WHITE"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<TR></TR>
|
||||
<TD COLSPAN="1" WIDTH="50%" align="left" bgcolor="{$name_bg_col_}">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif">
|
||||
<xsl:value-of select="@NAME"/>
|
||||
</SPAN>
|
||||
<xsl:if test="DESCRIPTION">
|
||||
<BR/>
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold italic 9px Verdana,Arial,Helvetica,sans-serif">
|
||||
<xsl:value-of select="DESCRIPTION"/>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
</TD>
|
||||
<TD COLSPAN="1" WIDTH="50%" align="middle" bgcolor="{$value_bg_col_}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@VALUE"/></SPAN></TD>
|
||||
</xsl:if>
|
||||
</xsl:for-each>
|
||||
</TABLE>
|
||||
</TD>
|
||||
|
||||
<TD COLSPAN="1" WIDTH="2%">
|
||||
<TABLE BGCOLOR="{$DS_COL_GREY}" WIDTH="100%" COLS="1" cellspacing="0" cellpadding="0" border="0">
|
||||
<TD COLSPAN="1" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> </SPAN></TD>
|
||||
</TABLE>
|
||||
</TD>
|
||||
|
||||
<TD COLSPAN="2" WIDTH="49%">
|
||||
<TABLE BGCOLOR="{$DS_COL_BLACK}" WIDTH="100%" COLS="2" cellspacing="1" cellpadding="0" border="0">
|
||||
<TD COLSPAN="1" WIDTH="50%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Name</SPAN></TD>
|
||||
<TD COLSPAN="1" WIDTH="50%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Value</SPAN></TD>
|
||||
<xsl:for-each select="PARAMETER">
|
||||
<xsl:sort select="@INDEX" data-type="number"/>
|
||||
<xsl:if test="position() > $num_left_">
|
||||
|
||||
<xsl:variable name="name_bg_col_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="@CHANGEDBY='USER'">
|
||||
<xsl:value-of select="$DS_COL_MODUSR"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:when test="@CHANGEDBY='SYSTEM'">
|
||||
<xsl:value-of select="$DS_COL_MODSYS"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:when test="((position() - $num_left_ - 1) mod 2) = 0">
|
||||
<xsl:value-of select="$DS_COL_ASH1"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="$DS_COL_WHITE"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="value_bg_col_">
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="@CHANGEDBY='USER'">
|
||||
<xsl:value-of select="$DS_COL_MODUSR"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:when test="@CHANGEDBY='SYSTEM'">
|
||||
<xsl:value-of select="$DS_COL_MODSYS"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:when test="((position() - $num_left_ - 1) mod 2) = 0">
|
||||
<xsl:value-of select="$DS_COL_ASH1"/>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="$DS_COL_WHITE"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
<TR></TR>
|
||||
<TD COLSPAN="1" WIDTH="50%" align="left" bgcolor="{$name_bg_col_}">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif">
|
||||
<xsl:value-of select="@NAME"/>
|
||||
</SPAN>
|
||||
<xsl:if test="DESCRIPTION">
|
||||
<BR/>
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold italic 9px Verdana,Arial,Helvetica,sans-serif">
|
||||
<xsl:value-of select="DESCRIPTION"/>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
</TD>
|
||||
<TD COLSPAN="1" WIDTH="50%" align="middle" bgcolor="{$value_bg_col_}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@VALUE"/></SPAN></TD>
|
||||
|
||||
</xsl:if>
|
||||
</xsl:for-each>
|
||||
|
||||
<xsl:if test="$left_extra_ > 0">
|
||||
<TR></TR>
|
||||
<TD COLSPAN="2" WIDTH="100%" align="left" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_WHITE}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> </SPAN></TD>
|
||||
</xsl:if>
|
||||
|
||||
</TABLE>
|
||||
</TD>
|
||||
|
||||
</TABLE>
|
||||
</TD>
|
||||
</xsl:if>
|
||||
</xsl:if>
|
||||
</TABLE>
|
||||
<!--
|
||||
<BR></BR>
|
||||
-->
|
||||
<xsl:if test="(@MODCLASS = 'PROCESSOR') and MEMORYMAP">
|
||||
<!--
|
||||
<xsl:message>Found a memory map</xsl:message>
|
||||
-->
|
||||
<xsl:call-template name="Layout_MemoryMap">
|
||||
<xsl:with-param name="table_width" select="$table_width_"/>
|
||||
</xsl:call-template>
|
||||
</xsl:if>
|
||||
<!--
|
||||
<BR></BR>
|
||||
-->
|
||||
<TABLE BGCOLOR="{$DS_COL_BLACK}" WIDTH="{$table_width_}" COLS="5" cellspacing="1" cellpadding="1" border="0">
|
||||
<TD width="100%" COLSPAN="5" align="middle" bgcolor="{$DS_COL_XPRP}"><SPAN style="color:{$DS_COL_WHITE}; font: bold 12px Verdana,Arial,Helvetica,sans-serif">Post Synthesis Device Utilization</SPAN></TD>
|
||||
<xsl:choose>
|
||||
<xsl:when test="not(RESOURCES)">
|
||||
<TR></TR>
|
||||
<TD width="100%" COLSPAN="5" align="middle" bgcolor="{$DS_COL_WHITE}">
|
||||
<SPAN style="color:{$DS_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">
|
||||
Device utilization information is not available for this IP. Run platgen to generate synthesis information.
|
||||
</SPAN>
|
||||
</TD>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<TR></TR>
|
||||
<TD COLSPAN="2" width="55%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Resource Type</SPAN></TD>
|
||||
<TD COLSPAN="1" width="15%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Used</SPAN></TD>
|
||||
<TD COLSPAN="1" width="15%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Available</SPAN></TD>
|
||||
<TD COLSPAN="1" width="15%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Percent</SPAN></TD>
|
||||
|
||||
<xsl:for-each select="RESOURCES/RESOURCE">
|
||||
<TR></TR>
|
||||
<TD COLSPAN="2" width="55%" align="left" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@TYPE"/></SPAN></TD>
|
||||
<TD COLSPAN="1" width="15%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@USED"/></SPAN></TD>
|
||||
<TD COLSPAN="1" width="15%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@TOTAL"/></SPAN></TD>
|
||||
<TD COLSPAN="1" width="15%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@PERCENT"/></SPAN></TD>
|
||||
</xsl:for-each>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<!--
|
||||
<BR></BR>
|
||||
<TD COLSPAN="5" width="100%" align="middle" bgcolor="{$DS_COL_XPRP}"><SPAN style="color:{$DS_COL_WHITE}; font: bold 12px Verdana,Arial,Helvetica,sans-serif"></SPAN></TD>
|
||||
-->
|
||||
</TABLE>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Layout the Module's Port list table -->
|
||||
<xsl:template name="Peri_PortListTable">
|
||||
|
||||
|
||||
<TABLE BGCOLOR="{$DS_COL_BLACK}" WIDTH="{ceiling($DS_WIDTH div 2)}" COLS="7" cellspacing="1" cellpadding="1" border="0">
|
||||
<TH COLSPAN="7" width="100%" align="middle" bgcolor="{$DS_COL_XPRP}"><SPAN style="color:{$DS_COL_WHITE}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">PORT LIST</SPAN></TH>
|
||||
<TR></TR>
|
||||
<TH COLSPAN="7" width="100%" align="left" bgcolor="{$DS_COL_WHITE}">
|
||||
<SPAN style="color:{$DS_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">
|
||||
The ports listed here are only those connected in the MHS file.
|
||||
<xsl:if test="@DOC_IP">
|
||||
Refer to the IP <A HREF="{@DOC_IP}" style="text-decoration:none; color:{$DS_COL_XPRP}"> <SPAN style="color:{$DS_COL_XPRP}; font: bold italic 9px Verdana,Arial,Helvetica,sans-serif"> documentation </SPAN> </A>for complete information about module ports.
|
||||
</xsl:if>
|
||||
</SPAN>
|
||||
</TH>
|
||||
<TR></TR>
|
||||
<TH COLSPAN="1" width="5%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">#</SPAN></TH>
|
||||
<TH COLSPAN="2" width="25%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">NAME</SPAN></TH>
|
||||
<TH COLSPAN="1" width="10%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">DIR</SPAN></TH>
|
||||
<TH COLSPAN="1" width="10%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">[LSB:MSB]</SPAN></TH>
|
||||
<TH COLSPAN="2" width="50%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">SIGNAL</SPAN></TH>
|
||||
<xsl:for-each select="PORT[(not(@SIGNAME = '__NOC__') and not(@SIGNAME = '__DEF__') and (@INMHS))]">
|
||||
<xsl:sort data-type="number" select="@INDEX" order="ascending"/>
|
||||
<TR></TR>
|
||||
<TD COLSPAN="1" width="5%" align="left" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@INDEX"/></SPAN></TD>
|
||||
<TD COLSPAN="2" width="25%" align="left" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@NAME"/></SPAN></TD>
|
||||
<TD COLSPAN="1" width="10%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@DIR"/></SPAN></TD>
|
||||
|
||||
<xsl:if test="@MSB and @LSB">
|
||||
<TD COLSPAN="1" width="10%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@LSB"/>:<xsl:value-of select="@MSB"/></SPAN></TD>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(@MSB and @LSB)">
|
||||
<TD COLSPAN="1" width="10%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">1</SPAN></TD>
|
||||
</xsl:if>
|
||||
|
||||
<TD COLSPAN="2" width="50%" align="left" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@SIGNAME"/></SPAN></TD>
|
||||
</xsl:for-each>
|
||||
|
||||
<xsl:if test="BUSINTERFACE">
|
||||
<xsl:variable name="instance_"><xsl:value-of select="@INSTANCE"/></xsl:variable>
|
||||
<TR></TR>
|
||||
<TH COLSPAN="7" width="100%" align="middle" bgcolor="{$DS_COL_XPRP}">
|
||||
<SPAN style="color:{$DS_COL_WHITE}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">Bus Interfaces</SPAN>
|
||||
</TH>
|
||||
<TR></TR>
|
||||
|
||||
<TH COLSPAN="1" width="15%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">MASTERSHIP</SPAN></TH>
|
||||
<TH COLSPAN="1" width="10%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">NAME</SPAN></TH>
|
||||
<TH COLSPAN="1" width="25%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">STD</SPAN></TH>
|
||||
<TH COLSPAN="3" width="25%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">BUS</SPAN></TH>
|
||||
<TH COLSPAN="1" width="25%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">P2P</SPAN></TH>
|
||||
<xsl:for-each select="BUSINTERFACE[(not(@BUSNAME = '__NOC__') and not(@BUSNAME = '__DEF__'))]">
|
||||
<xsl:sort select="@BIFRANK"/>
|
||||
|
||||
<xsl:variable name="busname_"><xsl:value-of select="@BUSNAME"/></xsl:variable>
|
||||
|
||||
<xsl:variable name="p2pname_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="(@BUSSTD and not((@BUSSTD='PLB') or (@BUSSTD='OPB')) or (@BIFRANK='TRANSPARENT'))">
|
||||
<xsl:value-of select="../../MODULE[not(@INSTANCE = $instance_) and BUSINTERFACE[(@BUSNAME = $busname_)]]/@INSTANCE"/>
|
||||
</xsl:when>
|
||||
<xsl:when test="not(@BUSSTD) or (@BUSSTD='OPB') or (@BUSSTD='PLB') or (@BIFRANK='TRANSPARENT')">NA</xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="bus_std_">
|
||||
<xsl:if test="@BUSSTD">
|
||||
<xsl:value-of select="@BUSSTD"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(@BUSSTD)">NA</xsl:if>
|
||||
</xsl:variable>
|
||||
|
||||
|
||||
<TR></TR>
|
||||
<TH COLSPAN="1" width="15%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@BIFRANK"/></SPAN></TH>
|
||||
<TH COLSPAN="1" width="10%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@NAME"/></SPAN></TH>
|
||||
<TH COLSPAN="1" width="25%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="$bus_std_"/></SPAN></TH>
|
||||
<xsl:if test="$bus_std_ = 'NA'">
|
||||
<TH COLSPAN="3" width="25%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@BUSNAME"/></SPAN></TH>
|
||||
</xsl:if>
|
||||
<xsl:if test="not($bus_std_ = 'NA')">
|
||||
<TH COLSPAN="3" width="25%" align="middle" bgcolor="{$DS_COL_WHITE}"><A HREF="#_{@BUSNAME}" style="text-decoration:none"><SPAN style="color:{$DS_COL_XPRP}; font: italic 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@BUSNAME"/></SPAN></A></TH>
|
||||
</xsl:if>
|
||||
<xsl:if test="$p2pname_ = 'NA'">
|
||||
<TH COLSPAN="1" width="25%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="$p2pname_"/></SPAN></TH>
|
||||
</xsl:if>
|
||||
<xsl:if test="not($p2pname_ = 'NA')">
|
||||
<TH COLSPAN="1" width="25%" align="middle" bgcolor="{$DS_COL_WHITE}"><A HREF="#_{$p2pname_}" style="text-decoration:none"><SPAN style="color:{$DS_COL_XPRP}; font: italic 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="$p2pname_"/></SPAN></A></TH>
|
||||
</xsl:if>
|
||||
</xsl:for-each>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="@MODCLASS='BUS'">
|
||||
<xsl:variable name="instance_"><xsl:value-of select="@INSTANCE"/></xsl:variable>
|
||||
<TR></TR>
|
||||
<TH COLSPAN="7" width="100%" align="middle" bgcolor="{$DS_COL_XPRP}"><SPAN style="color:{$DS_COL_WHITE}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">Bus Connections</SPAN></TH>
|
||||
<TR></TR>
|
||||
<TH COLSPAN="1" width="25%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">TYPE</SPAN></TH>
|
||||
<TH COLSPAN="5" width="50%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">NAME</SPAN></TH>
|
||||
<TH COLSPAN="1" width="25%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">BIF</SPAN></TH>
|
||||
<xsl:for-each select="../MODULE/BUSINTERFACE[(@BUSNAME = $instance_)]">
|
||||
<xsl:sort select="@BIFRANK"/>
|
||||
<xsl:variable name="buscName_"><xsl:value-of select="../@INSTANCE"/></xsl:variable>
|
||||
<TR></TR>
|
||||
<TD COLSPAN="1" width="25%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@BIFRANK"/></SPAN></TD>
|
||||
<TD COLSPAN="5" width="50%" align="middle" bgcolor="{$DS_COL_WHITE}"><A HREF="#_{$buscName_}" style="text-decoration:none"><SPAN style="color:{$DS_COL_XPRP}; font: italic 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="$buscName_"/></SPAN></A></TD>
|
||||
<TD COLSPAN="1" width="25%" align="left" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@NAME"/></SPAN></TD>
|
||||
</xsl:for-each>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="INTERRUPTSRCS">
|
||||
<TR></TR>
|
||||
<TH COLSPAN="7" width="100%" align="middle" bgcolor="{$DS_COL_XPRP}">
|
||||
<SPAN style="color:{$DS_COL_WHITE}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">Interrupt Priorities</SPAN>
|
||||
<TR></TR>
|
||||
<TH COLSPAN="1" width="10%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Priority</SPAN></TH>
|
||||
<TH COLSPAN="3" width="55%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">SIG</SPAN></TH>
|
||||
<TH COLSPAN="3" width="35%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">MODULE</SPAN></TH>
|
||||
<TR></TR>
|
||||
<xsl:for-each select="INTERRUPTSRCS/INTRSRC">
|
||||
<xsl:sort data-type="number" select="@PRIORITY" order="ascending"/>
|
||||
|
||||
<xsl:variable name="intrsrc_"><xsl:value-of select="@SIGNAME"/></xsl:variable>
|
||||
<xsl:variable name="intrpri_"><xsl:value-of select="@PRIORITY"/></xsl:variable>
|
||||
|
||||
<xsl:for-each select="../../../MODULE[PORT[((@DIR='O') and (@SIGNAME = $intrsrc_))]]">
|
||||
<TR></TR>
|
||||
<TH COLSPAN="1" width="10%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="$intrpri_"/></SPAN></TH>
|
||||
<TH COLSPAN="3" width="55%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="$intrsrc_"/></SPAN></TH>
|
||||
<TH COLSPAN="3" width="35%" align="middle" bgcolor="{$DS_COL_WHITE}"><A HREF="#_{@INSTANCE}" style="text-decoration:none"><SPAN style="color:{$DS_COL_XPRP}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@INSTANCE"/></SPAN></A></TH>
|
||||
</xsl:for-each>
|
||||
</xsl:for-each>
|
||||
</TH>
|
||||
</xsl:if>
|
||||
|
||||
</TABLE>
|
||||
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
|
@ -0,0 +1,86 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
|
||||
<!DOCTYPE stylesheet [
|
||||
<!ENTITY HEXUPPER "ABCDEFxx0123456789">
|
||||
<!ENTITY HEXLOWER "abcdefxX0123456789">
|
||||
<!ENTITY HEXU2L " '&HEXLOWER;' , '&HEXUPPER;' ">
|
||||
]>
|
||||
<!--
|
||||
-->
|
||||
|
||||
<xsl:stylesheet version="1.0"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:exsl="http://exslt.org/common"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
|
||||
<xsl:output method="html"/>
|
||||
|
||||
<!-- ======================= MAIN MEMORY MAP SECTION =============================== -->
|
||||
<xsl:template name="Layout_MemoryMap">
|
||||
<xsl:param name="table_width" select="600"/>
|
||||
|
||||
<xsl:variable name="procName" select="@INSTANCE"/>
|
||||
<!--
|
||||
<BR></BR>
|
||||
<BR></BR>
|
||||
-->
|
||||
<xsl:if test="MEMORYMAP/MEMRANGE[(@INSTANCE)]">
|
||||
|
||||
<TABLE BGCOLOR="{$DS_COL_BLACK}" WIDTH="{$table_width}" COLS="5" cellspacing="1" cellpadding="2" border="0">
|
||||
<TR></TR>
|
||||
<TD COLSPAN="5" width="100%" align="middle" bgcolor="{$DS_COL_XPRP}">
|
||||
<A name="_{@INSTANCE}_MemoryMap"/>
|
||||
<SPAN style="color:{$DS_COL_WHITE}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">MEMORY MAP</SPAN>
|
||||
</TD>
|
||||
<TR></TR>
|
||||
<TD COLSPAN="5" width="100%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_INFO}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">D=DATA ADDRESSABLE    I=INSTRUCTION ADDRESSABLE</SPAN></TD>
|
||||
<TR></TR>
|
||||
<TD COLSPAN="1" width="5%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 12px Verdana,Arial,Helvetica,sans-serif">D</SPAN></TD>
|
||||
<TD COLSPAN="1" width="5%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 12px Verdana,Arial,Helvetica,sans-serif">I</SPAN></TD>
|
||||
<TD COLSPAN="1" width="20%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">BASE</SPAN></TD>
|
||||
<TD COLSPAN="1" width="20%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">HIGH</SPAN></TD>
|
||||
<TD COLSPAN="1" width="50%" align="middle" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">MODULE</SPAN></TD>
|
||||
<TR></TR>
|
||||
|
||||
<xsl:for-each select="MEMORYMAP/MEMRANGE[(@INSTANCE)]">
|
||||
<xsl:sort data-type="number" select="@BASEVALUE" order="ascending"/>
|
||||
<TR></TR>
|
||||
<xsl:variable name="isdata">
|
||||
<xsl:if test="@IS_DATA='TRUE'">■</xsl:if>
|
||||
<xsl:if test="not(@IS_DATA='TRUE')"> </xsl:if>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="isinst">
|
||||
<xsl:if test="@IS_INSTRUCTION='TRUE'">
|
||||
■
|
||||
</xsl:if>
|
||||
<xsl:if test="not(@IS_INSTRUCTION='TRUE')">
|
||||
 
|
||||
</xsl:if>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="bupper" select ="@BASE"/>
|
||||
<xsl:variable name="hupper" select ="@HIGH"/>
|
||||
<xsl:variable name="iname" select ="@INSTANCE"/>
|
||||
<TD COLSPAN="1" width="5%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 14px Verdana,Arial,sans-serif"><xsl:value-of select="$isdata"/></SPAN></TD>
|
||||
<TD COLSPAN="1" width="5%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 14px Verdana,Arial,sans-serif"><xsl:value-of select="$isinst"/></SPAN></TD>
|
||||
<TD COLSPAN="1" width="20%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="translate($bupper,&HEXU2L;)"/></SPAN></TD>
|
||||
<TD COLSPAN="1" width="20%" align="middle" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="translate($hupper,&HEXU2L;)"/></SPAN></TD>
|
||||
<TD COLSPAN="1" width="50%" align="right" bgcolor="{$DS_COL_WHITE}">
|
||||
<A HREF="#_{$iname}" style="text-decoration:none">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; vertical-align:sub; font: normal 8px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@BASENAME"/>:<xsl:value-of select="@HIGHNAME"/></SPAN><SPAN style="color:{$DS_COL_XPRP}; font: bold 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@INSTANCE"/></SPAN>
|
||||
</A>
|
||||
</TD>
|
||||
</xsl:for-each>
|
||||
</TABLE>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="FindCorrectLocation">
|
||||
<xsl:param name="ranges"/>
|
||||
<xsl:param name="location"/>
|
||||
<xsl:param name="instname"/>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
|
@ -0,0 +1,141 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<xsl:stylesheet version="1.0"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:exsl="http://exslt.org/common"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
|
||||
<xsl:output method="html"/>
|
||||
|
||||
<xsl:param name="PERI_COL_OPB" select="'#339900'"/>
|
||||
<xsl:param name="PERI_COL_WHIT" select="'#FFFFFF'"/>
|
||||
<xsl:param name="PERI_COL_INFO" select="'#2233FF'"/>
|
||||
<xsl:param name="PERI_COL_BLCK" select="'#000000'"/>
|
||||
<xsl:param name="PERI_COL_GREY" select="'#CCCCCC'"/>
|
||||
<xsl:param name="PERI_COL_XPRP" select="'#810017'"/>
|
||||
<xsl:param name="PERI_COL_DOCLNK" select="'#FF9900'"/>
|
||||
|
||||
<!-- ======================= MAIN PERIPHERAL SECTION =============================== -->
|
||||
<xsl:template name="Layout_Peripherals">
|
||||
<BR></BR>
|
||||
<BR></BR>
|
||||
<BR></BR>
|
||||
<BR></BR>
|
||||
<A name="_{@INSTANCE}"/>
|
||||
<SPAN style="color:{$DS_COL_BLCK}; font: bold italic 12px Verdana,Arial,Helvetica,sans-serif">
|
||||
<xsl:value-of select="@INSTANCE"/>
|
||||
<BR></BR>
|
||||
________________________________________________
|
||||
</SPAN>
|
||||
<BR></BR>
|
||||
<BR></BR>
|
||||
<TABLE BGCOLOR="{$PERI_COL_WHIT}" WIDTH="800" COLS="2" cellspacing="0" cellpadding="0" border="0">
|
||||
<!-- Layout the Module information table-->
|
||||
<TD COLSPAN="1" width="50%" align="LEFT" valign="TOP">
|
||||
<TABLE BGCOLOR="{$PERI_COL_WHIT}" WIDTH="400" COLS="2" cellspacing="0" cellpadding="0" border="0">
|
||||
<TD COLSPAN="1" width="50%" align="MIDDLE" valign="TOP">
|
||||
<IMG SRC="imgs/{@INSTANCE}.jpg" alt="{@INSTANCE} IP Image" border="0" vspace="10" hspace="0"/>
|
||||
</TD>
|
||||
<TR></TR>
|
||||
<TD COLSPAN="1" width="50%" align="LEFT" valign="TOP">
|
||||
<xsl:call-template name="Peri_PinoutTable"/>
|
||||
</TD>
|
||||
</TABLE>
|
||||
</TD>
|
||||
|
||||
<TD COLSPAN="1" width="50%" align="RIGHT" valign="BOTTOM">
|
||||
<xsl:call-template name="Peri_InfoTable"/>
|
||||
</TD>
|
||||
</TABLE>
|
||||
</xsl:template>
|
||||
|
||||
<!-- ======================= PERIHERAL TABLE PARTS =============================== -->
|
||||
<!-- Layout the Module's Information table -->
|
||||
<xsl:template name="Peri_InfoTable">
|
||||
<TABLE BGCOLOR="{$PERI_COL_BLCK}" WIDTH="410" COLS="5" cellspacing="1" cellpadding="2" border="0">
|
||||
<TH COLSPAN="5" width="100%" align="middle" bgcolor="{$PERI_COL_XPRP}"><SPAN style="color:{$PERI_COL_WHIT}; font: bold 12px Verdana,Arial,Helvetica,sans-serif">General</SPAN></TH>
|
||||
<TR></TR>
|
||||
<TH COLSPAN="3" width="60%" align="middle" bgcolor="{$PERI_COL_GREY}"><SPAN style="color:{$PERI_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Type</SPAN></TH>
|
||||
<TH COLSPAN="2" width="40%" align="middle" bgcolor="{$PERI_COL_WHIT}"><SPAN style="color:{$PERI_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><A HREF="docs/{@MODTYPE}.pdf" style="text-decoration:none; color:{$PERI_COL_XPRP}"><xsl:value-of select="@MODTYPE"/></A></SPAN></TH>
|
||||
<TR></TR>
|
||||
<TH COLSPAN="3" width="60%" align="middle" bgcolor="{$PERI_COL_GREY}"><SPAN style="color:{$PERI_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Version</SPAN></TH>
|
||||
<TH COLSPAN="2" width="40%" align="middle" bgcolor="{$PERI_COL_WHIT}"><SPAN style="color:{$PERI_COL_BLCK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@HWVERSION"/></SPAN></TH>
|
||||
<TR></TR>
|
||||
<TH COLSPAN="5" width="100%" align="middle" bgcolor="{$PERI_COL_XPRP}"><SPAN style="color:{$PERI_COL_WHIT}; font: bold 12px Verdana,Arial,Helvetica,sans-serif">Parameters</SPAN></TH>
|
||||
|
||||
<TR></TR>
|
||||
<TH COLSPAN="5" width="100%" align="left" bgcolor="{$PERI_COL_WHIT}">
|
||||
<SPAN style="color:{$PERI_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">
|
||||
The paramaters listed here are only those set in the MHS file. Refer to the IP
|
||||
<A HREF="docs/{@MODTYPE}.pdf" style="text-decoration:none; color:{$PERI_COL_XPRP}"> documentation </A>for complete information about module parameters.
|
||||
</SPAN>
|
||||
</TH>
|
||||
<TR></TR>
|
||||
<TH COLSPAN="3" width="60%" align="middle" bgcolor="{$PERI_COL_GREY}"><SPAN style="color:{$PERI_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Name</SPAN></TH>
|
||||
<TH COLSPAN="2" width="40%" align="middle" bgcolor="{$PERI_COL_GREY}"><SPAN style="color:{$PERI_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Value</SPAN></TH>
|
||||
<xsl:for-each select="PARAMETER">
|
||||
<TR></TR>
|
||||
<TH COLSPAN="3" width="60%" align="left" bgcolor="{$PERI_COL_WHIT}"><SPAN style="color:{$PERI_COL_BLCK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@NAME"/></SPAN></TH>
|
||||
<TH COLSPAN="2" width="40%" align="left" bgcolor="{$PERI_COL_WHIT}"><SPAN style="color:{$PERI_COL_BLCK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@VALUE"/></SPAN></TH>
|
||||
</xsl:for-each>
|
||||
<TR></TR>
|
||||
<TH COLSPAN="5" width="100%" align="middle" bgcolor="{$PERI_COL_XPRP}"><SPAN style="color:{$PERI_COL_WHIT}; font: bold 12px Verdana,Arial,Helvetica,sans-serif">Device Utilization</SPAN></TH>
|
||||
<TR></TR>
|
||||
<xsl:choose>
|
||||
<xsl:when test="not(RESOURCES)">
|
||||
<TH COLSPAN="5" width="100%" align="middle" bgcolor="{$PERI_COL_WHIT}">
|
||||
<SPAN style="color:{$PERI_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">
|
||||
Device utilization information is not available for this IP.
|
||||
</SPAN>
|
||||
</TH>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<TH COLSPAN="2" width="55%" align="middle" bgcolor="{$PERI_COL_GREY}"><SPAN style="color:{$PERI_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Resource Type</SPAN></TH>
|
||||
<TH COLSPAN="1" width="15%" align="middle" bgcolor="{$PERI_COL_GREY}"><SPAN style="color:{$PERI_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Used</SPAN></TH>
|
||||
<TH COLSPAN="1" width="15%" align="middle" bgcolor="{$PERI_COL_GREY}"><SPAN style="color:{$PERI_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Available</SPAN></TH>
|
||||
<TH COLSPAN="1" width="15%" align="middle" bgcolor="{$PERI_COL_GREY}"><SPAN style="color:{$PERI_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Percent</SPAN></TH>
|
||||
|
||||
<xsl:for-each select="RESOURCES/RESOURCE">
|
||||
<TR></TR>
|
||||
<TH COLSPAN="2" width="55%" align="left" bgcolor="{$PERI_COL_WHIT}"><SPAN style="color:{$PERI_COL_BLCK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@TYPE"/></SPAN></TH>
|
||||
<TH COLSPAN="1" width="15%" align="middle" bgcolor="{$PERI_COL_WHIT}"><SPAN style="color:{$PERI_COL_BLCK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@USED"/></SPAN></TH>
|
||||
<TH COLSPAN="1" width="15%" align="middle" bgcolor="{$PERI_COL_WHIT}"><SPAN style="color:{$PERI_COL_BLCK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@TOTAL"/></SPAN></TH>
|
||||
<TH COLSPAN="1" width="15%" align="middle" bgcolor="{$PERI_COL_WHIT}"><SPAN style="color:{$PERI_COL_BLCK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@PERCENT"/></SPAN></TH>
|
||||
</xsl:for-each>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
|
||||
<TR></TR>
|
||||
<TH COLSPAN="5" width="100%" align="middle" bgcolor="{$PERI_COL_XPRP}"><SPAN style="color:{$PERI_COL_WHIT}; font: bold 12px Verdana,Arial,Helvetica,sans-serif"></SPAN></TH>
|
||||
</TABLE>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- Layout the Module's pinout table -->
|
||||
<xsl:template name="Peri_PinoutTable">
|
||||
|
||||
<TABLE BGCOLOR="{$PERI_COL_BLCK}" WIDTH="310" COLS="6" cellspacing="1" cellpadding="2" border="0">
|
||||
<TH COLSPAN="6" width="100%" align="middle" bgcolor="{$PERI_COL_XPRP}"><SPAN style="color:{$PERI_COL_WHIT}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">PINOUT</SPAN></TH>
|
||||
<TR></TR>
|
||||
<TH COLSPAN="6" width="100%" align="left" bgcolor="{$PERI_COL_WHIT}">
|
||||
<SPAN style="color:{$PERI_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">
|
||||
The ports listed here are only those connected in the MHS file. Refer to the IP
|
||||
<A HREF="docs/{@MODTYPE}.pdf" style="text-decoration:none; color:{$PERI_COL_XPRP}"> documentation </A>for complete information about module ports.
|
||||
</SPAN>
|
||||
</TH>
|
||||
<TR></TR>
|
||||
<TH COLSPAN="1" width="5%" align="left" bgcolor="{$PERI_COL_GREY}"><SPAN style="color:{$PERI_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">#</SPAN></TH>
|
||||
<TH COLSPAN="2" width="25%" align="left" bgcolor="{$PERI_COL_GREY}"><SPAN style="color:{$PERI_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">NAME</SPAN></TH>
|
||||
<TH COLSPAN="1" width="10%" align="left" bgcolor="{$PERI_COL_GREY}"><SPAN style="color:{$PERI_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">DIR</SPAN></TH>
|
||||
<TH COLSPAN="2" width="60%" align="left" bgcolor="{$PERI_COL_GREY}"><SPAN style="color:{$PERI_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">SIGNAL</SPAN></TH>
|
||||
<xsl:for-each select="PORT[(not(@SIGNAME = '__DEF__') and not(@SIGNAME = '__NOC__'))]">
|
||||
<xsl:sort data-type="number" select="@INDEX" order="ascending"/>
|
||||
<TR></TR>
|
||||
<TH COLSPAN="1" width="5%" align="left" bgcolor="{$PERI_COL_WHIT}"><SPAN style="color:{$PERI_COL_BLCK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@INDEX"/></SPAN></TH>
|
||||
<TH COLSPAN="2" width="25%" align="left" bgcolor="{$PERI_COL_WHIT}"><SPAN style="color:{$PERI_COL_BLCK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@NAME"/></SPAN></TH>
|
||||
<TH COLSPAN="1" width="10%" align="left" bgcolor="{$PERI_COL_WHIT}"><SPAN style="color:{$PERI_COL_BLCK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@DIR"/></SPAN></TH>
|
||||
<TH COLSPAN="2" width="60%" align="left" bgcolor="{$PERI_COL_WHIT}"><SPAN style="color:{$PERI_COL_BLCK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@SIGNAME"/></SPAN></TH>
|
||||
</xsl:for-each>
|
||||
</TABLE>
|
||||
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
|
@ -0,0 +1,235 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<xsl:stylesheet version="1.0"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:exsl="http://exslt.org/common"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
|
||||
<xsl:template name="Write_TOCTree">
|
||||
<HTML>
|
||||
<HEAD>
|
||||
<TITLE>Table of Contents</TITLE>
|
||||
|
||||
<BASE target="{$DS_FRAME_MAIN}"></BASE>
|
||||
|
||||
<!--specify a css for the TOC -->
|
||||
<link rel="stylesheet" href="ds_Report.css" type="text/css"></link>
|
||||
|
||||
<!--specify the javascript for the TOC-->
|
||||
<script src="ds_Report.js" type="text/javascript"></script>
|
||||
</HEAD>
|
||||
|
||||
<!--Layout Table of contents -->
|
||||
<BODY class="main_body">
|
||||
<xsl:call-template name="Layout_TOCTree"/>
|
||||
</BODY>
|
||||
|
||||
</HTML>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<!-- ======================= LAYOUT TABLE OF CONTENTS ====================================== -->
|
||||
<xsl:template name="Layout_TOCTree">
|
||||
|
||||
<xsl:variable name="toc_col_">
|
||||
<xsl:if test="$DS_TYPE='NOFRAMES'">
|
||||
<xsl:value-of select="$DS_COL_LGRY"/>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="$DS_TYPE='FRAMES'">
|
||||
<xsl:value-of select="$DS_COL_WHITE"/>
|
||||
</xsl:if>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="toc_width_">
|
||||
<xsl:if test="$DS_TYPE='NOFRAMES'">
|
||||
<xsl:value-of select="$DS_WIDTH"/>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="$DS_TYPE='FRAMES'">
|
||||
<xsl:value-of select="$DS_TOC_WIDTH"/>
|
||||
</xsl:if>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="toc_target_">
|
||||
<xsl:if test="$DS_TYPE='NOFRAMES'">
|
||||
<xsl:value-of select="$DS_FRAME_SELF"/>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="$DS_TYPE='FRAMES'">
|
||||
<xsl:value-of select="$DS_FRAME_MAIN"/>
|
||||
</xsl:if>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="trg_html_">
|
||||
<xsl:if test="$DS_TYPE='NOFRAMES'">
|
||||
<xsl:value-of select="''"/>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="$DS_TYPE='FRAMES'">
|
||||
<xsl:value-of select="$DS_HTML_MAIN"/>
|
||||
</xsl:if>
|
||||
</xsl:variable>
|
||||
|
||||
|
||||
<A name="_TOC"/>
|
||||
<TABLE BGCOLOR="{$toc_col_}" WIDTH="{$toc_width_}" COLS="2" cellspacing="0" cellpadding="3" border="0">
|
||||
|
||||
<xsl:if test="$DS_TYPE='NOFRAMES'">
|
||||
<TH COLSPAN="2" width="100%" align="middle"><SPAN style="color:{$DS_COL_XPRP}; font: bold 20px Arial,Helvetica,sans-serif">TABLE OF CONTENTS</SPAN></TH>
|
||||
</xsl:if>
|
||||
|
||||
<TR></TR>
|
||||
<TD COLSPAN="1" width="40%" align="left">
|
||||
<BR></BR>
|
||||
<A HREF="{$trg_html_}#_Overview" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Overview</SPAN></A>
|
||||
|
||||
<BR></BR>
|
||||
<A HREF="{$trg_html_}#_BlockDiagram" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Block Diagram</SPAN></A>
|
||||
|
||||
<BR></BR>
|
||||
<A HREF="{$trg_html_}#_ExternalPorts" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">External Ports</SPAN></A>
|
||||
|
||||
<BR></BR>
|
||||
<xsl:variable name="proc_CNT" select="count(MODULES/MODULE[(@MODCLASS = 'PROCESSOR')])"/>
|
||||
|
||||
<xsl:if test="MODULES/MODULE[(@MODCLASS='PROCESSOR')]">
|
||||
<DIV class="trigger" onClick="showBranch('Processors'); swapBranchImg('BranchImg_Processors');">
|
||||
<xsl:if test="$proc_CNT > 1">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Processors </SPAN>
|
||||
</xsl:if>
|
||||
<xsl:if test="not($proc_CNT > 1)">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Processor </SPAN>
|
||||
</xsl:if>
|
||||
<IMG src="imgs/IMG_openBranch.gif" border="0" id="BranchImg_Processors"></IMG>
|
||||
</DIV>
|
||||
|
||||
<SPAN class="branch" id="Processors">
|
||||
<xsl:for-each select="MODULES/MODULE[(@MODCLASS='PROCESSOR')]">
|
||||
<xsl:sort select="@INSTANCE"/>
|
||||
<A HREF="{$trg_html_}#_{@INSTANCE}" style="text-decoration:none"><SPAN style="color:{$DS_COL_XPRP}; font: italic 14px Verdana Arial,Helvetica,sans-serif">   <xsl:value-of select="@INSTANCE"/></SPAN></A><BR></BR>
|
||||
<xsl:if test="MEMORYMAP/MEMRANGE[(@INSTANCE)]">
|
||||
<A HREF="{$trg_html_}#_{@INSTANCE}_MemoryMap" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: italic 14px Verdana Arial,Helvetica,sans-serif">          memory map</SPAN></A><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if><BR></BR>
|
||||
</xsl:if>
|
||||
</xsl:for-each>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="MODULES/MODULE[(@MODCLASS='DEBUG')]">
|
||||
<DIV class="trigger" onClick="showBranch('Debuggers'); swapBranchImg('BranchImg_Debugger');">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Debuggers </SPAN>
|
||||
<IMG src="imgs/IMG_openBranch.gif" border="0" id="BranchImg_Debugger"></IMG>
|
||||
</DIV>
|
||||
|
||||
<SPAN class="branch" id="Debuggers">
|
||||
<xsl:for-each select="MODULES/MODULE[(@MODCLASS='DEBUG')]">
|
||||
<xsl:sort select="@INSTANCE"/>
|
||||
<A HREF="{$trg_html_}#_{@INSTANCE}" style="text-decoration:none"><SPAN style="color:{$DS_COL_XPRP}; font: italic 14px Verdana Arial,Helvetica,sans-serif">   <xsl:value-of select="@INSTANCE"/></SPAN></A><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if><BR></BR>
|
||||
</xsl:for-each>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
|
||||
|
||||
<xsl:if test="MODULES/MODULE[(@MODCLASS='INTERRUPT_CNTLR')]">
|
||||
<DIV class="trigger" onClick="showBranch('Interrupts'); swapBranchImg('BranchImg_Interrupts');">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Interrupt Controllers </SPAN>
|
||||
<IMG src="imgs/IMG_openBranch.gif" border="0" id="BranchImg_Interrupts"></IMG>
|
||||
</DIV>
|
||||
|
||||
<SPAN class="branch" id="Interrupts">
|
||||
<xsl:for-each select="MODULES/MODULE[(@MODCLASS='INTERRUPT_CNTLR')]">
|
||||
<xsl:sort select="@INSTANCE"/>
|
||||
<A HREF="{$trg_html_}#_{@INSTANCE}" style="text-decoration:none"><SPAN style="color:{$DS_COL_XPRP}; font: italic 14px Verdana Arial,Helvetica,sans-serif">   <xsl:value-of select="@INSTANCE"/></SPAN></A><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if><BR></BR>
|
||||
</xsl:for-each>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="MODULES/MODULE[@MODCLASS='BUS' or @MODCLASS='BUS_ARBITER']">
|
||||
<DIV class="trigger" onClick="showBranch('Busses'); swapBranchImg('BranchImg_Busses');">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Busses </SPAN>
|
||||
<IMG src="imgs/IMG_openBranch.gif" border="0" id="BranchImg_Busses"></IMG>
|
||||
</DIV>
|
||||
|
||||
<SPAN class="branch" id="Busses">
|
||||
<xsl:for-each select="MODULES/MODULE[@MODCLASS='BUS' or @MODCLASS='BUS_ARBITER']">
|
||||
<xsl:sort select="@INSTANCE"/>
|
||||
<A HREF="{$trg_html_}#_{@INSTANCE}" style="text-decoration:none"><SPAN style="color:{$DS_COL_XPRP}; font: italic 14px Verdana Arial,Helvetica,sans-serif">   <xsl:value-of select="@INSTANCE"/></SPAN></A><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if><BR></BR>
|
||||
</xsl:for-each>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="MODULES/MODULE[@MODCLASS='BUS_BRIDGE']">
|
||||
<DIV class="trigger" onClick="showBranch('Bridges'); swapBranchImg('BranchImg_Bridges');">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Bridges </SPAN>
|
||||
<IMG src="imgs/IMG_openBranch.gif" border="0" id="BranchImg_Bridges"></IMG>
|
||||
</DIV>
|
||||
<SPAN class="branch" id="Bridges">
|
||||
<xsl:for-each select="MODULES/MODULE[@MODCLASS='BUS_BRIDGE']">
|
||||
<xsl:sort select="@INSTANCE"/>
|
||||
<A HREF="{$trg_html_}#_{@INSTANCE}" style="text-decoration:none"><SPAN style="color:{$DS_COL_XPRP}; font: italic 14px Verdana Arial,Helvetica,sans-serif">   <xsl:value-of select="@INSTANCE"/></SPAN></A><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if><BR></BR>
|
||||
</xsl:for-each>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="MODULES/MODULE[@MODCLASS='MEMORY']">
|
||||
<DIV class="trigger" onClick="showBranch('Memory'); swapBranchImg('BranchImg_Memory');">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Memory </SPAN>
|
||||
<IMG src="imgs/IMG_openBranch.gif" border="0" id="BranchImg_Memory"></IMG>
|
||||
</DIV>
|
||||
<SPAN class="branch" id="Memory">
|
||||
<xsl:for-each select="MODULES/MODULE[@MODCLASS='MEMORY']">
|
||||
<xsl:sort select="@INSTANCE"/>
|
||||
<A HREF="{$trg_html_}#_{@INSTANCE}" style="text-decoration:none"><SPAN style="color:{$DS_COL_XPRP}; font: italic 14px Verdana Arial,Helvetica,sans-serif">   <xsl:value-of select="@INSTANCE"/></SPAN></A><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if><BR></BR>
|
||||
</xsl:for-each>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="MODULES/MODULE[@MODCLASS='MEMORY_CNTLR']">
|
||||
<DIV class="trigger" onClick="showBranch('MemoryCntlr'); swapBranchImg('BranchImg_MemoryCntlr');">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Memory Controllers </SPAN>
|
||||
<IMG src="imgs/IMG_openBranch.gif" border="0" id="BranchImg_MemoryCntlr"></IMG>
|
||||
</DIV>
|
||||
<SPAN class="branch" id="MemoryCntlr">
|
||||
<xsl:for-each select="MODULES/MODULE[@MODCLASS='MEMORY_CNTLR']">
|
||||
<xsl:sort select="@INSTANCE"/>
|
||||
<A HREF="{$trg_html_}#_{@INSTANCE}" style="text-decoration:none"><SPAN style="color:{$DS_COL_XPRP}; font: italic 14px Verdana Arial,Helvetica,sans-serif">   <xsl:value-of select="@INSTANCE"/></SPAN></A><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if><BR></BR>
|
||||
</xsl:for-each>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="MODULES/MODULE[@MODCLASS='PERIPHERAL']">
|
||||
<DIV class="trigger" onClick="showBranch('Peripheral'); swapBranchImg('BranchImg_Peripheral');">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Peripherals </SPAN>
|
||||
<IMG src="imgs/IMG_openBranch.gif" border="0" id="BranchImg_Peripheral"></IMG>
|
||||
</DIV>
|
||||
<SPAN class="branch" id="Peripheral">
|
||||
<xsl:for-each select="MODULES/MODULE[@MODCLASS='PERIPHERAL']">
|
||||
<xsl:sort select="@INSTANCE"/>
|
||||
<A HREF="{$trg_html_}#_{@INSTANCE}" style="text-decoration:none"><SPAN style="color:{$DS_COL_XPRP}; font: italic 14px Courier Verdana Arial,Helvetica,sans-serif">   <xsl:value-of select="@INSTANCE"/></SPAN></A><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if><BR></BR>
|
||||
</xsl:for-each>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="MODULES/MODULE[@MODCLASS='IP']">
|
||||
<DIV class="trigger" onClick="showBranch('IP'); swapBranchImg('BranchImg_IP');">
|
||||
<SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">IP </SPAN>
|
||||
<IMG src="imgs/IMG_openBranch.gif" border="0" id="BranchImg_IP"></IMG>
|
||||
</DIV>
|
||||
<SPAN class="branch" id="IP">
|
||||
<xsl:for-each select="MODULES/MODULE[@MODCLASS='IP']">
|
||||
<xsl:sort select="@INSTANCE"/>
|
||||
<A HREF="{$trg_html_}#_{@INSTANCE}" style="text-decoration:none"><SPAN style="color:{$DS_COL_XPRP}; font: italic 14px Courier Verdana Arial,Helvetica,sans-serif">   <xsl:value-of select="@INSTANCE"/></SPAN></A><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if><BR></BR>
|
||||
</xsl:for-each>
|
||||
</SPAN>
|
||||
</xsl:if>
|
||||
|
||||
<A HREF="{$trg_html_}#_TimingInfo" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Timing Information</SPAN></A><BR></BR>
|
||||
<!--
|
||||
-->
|
||||
|
||||
</TD>
|
||||
|
||||
</TABLE>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
<!-- ======================= END LAYOUT TABLE OF CONTENT TREE =================================== -->
|
|
@ -0,0 +1,211 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<xsl:stylesheet version="1.0"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:exsl="http://exslt.org/common"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
|
||||
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"
|
||||
doctype-public="-//W3C//DTD SVG 1.0//EN"
|
||||
doctype-system="http://www.w3.org/TR/SVG/DTD/svg10.dtd"/>
|
||||
|
||||
<!-- ======================= DEF BLOCK =================================== -->
|
||||
|
||||
<xsl:template name="Define_BifTypes">
|
||||
|
||||
<xsl:for-each select="exsl:node-set($COL_BUSSTDS)/BUSCOLOR">
|
||||
|
||||
<xsl:call-template name="Define_BifType">
|
||||
<xsl:with-param name="bus_type" select="@BUSSTD"/>
|
||||
</xsl:call-template>
|
||||
|
||||
<xsl:call-template name="Define_BifBusConnectors">
|
||||
<xsl:with-param name="bus_type" select="@BUSSTD"/>
|
||||
</xsl:call-template>
|
||||
|
||||
</xsl:for-each>
|
||||
|
||||
<!--
|
||||
<xsl:message>The color of bus <xsl:value-of select="@BUSSTD"/> is <xsl:value-of select="@RGB"/></xsl:message>
|
||||
<xsl:message>The OPB Bus color is <xsl:value-of select="exsl:node-set($COL_BUSSTDS)/BUSCOLOR[@BUSSTD = 'OPB']/@RGB"/> </xsl:message>
|
||||
-->
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="Define_BifType">
|
||||
|
||||
<xsl:param name="bus_type" select="'OPB'"/>
|
||||
|
||||
<xsl:variable name="bus_col_">
|
||||
<xsl:call-template name="BusType2Color">
|
||||
<xsl:with-param name="busType" select="$bus_type"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<symbol id="{$bus_type}_Bif">
|
||||
<rect x="0"
|
||||
y="0"
|
||||
rx="3"
|
||||
ry="3"
|
||||
width= "{$BIF_W}"
|
||||
height="{$BIF_H}"
|
||||
style="fill:{$bus_col_}; stroke:black; stroke-width:1"/>
|
||||
</symbol>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="Define_BifBusConnectors">
|
||||
|
||||
<xsl:param name="bus_type" select="'OPB'"/>
|
||||
|
||||
<xsl:variable name="bus_col_">
|
||||
<xsl:call-template name="BusType2Color">
|
||||
<xsl:with-param name="busType" select="$bus_type"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="bus_col_lt_">
|
||||
<xsl:call-template name="BusType2LightColor">
|
||||
<xsl:with-param name="busType" select="$bus_type"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="bifc_wi_" select="ceiling($BIFC_W div 3)"/>
|
||||
<xsl:variable name="bifc_hi_" select="ceiling($BIFC_H div 3)"/>
|
||||
|
||||
<symbol id="{$bus_type}_busconn_MASTER">
|
||||
<rect x="0"
|
||||
y="0"
|
||||
width= "{$BIFC_W}"
|
||||
height="{$BIFC_H}"
|
||||
style="fill:{$bus_col_lt_}; stroke:{$bus_col_}; stroke-width:1"/>
|
||||
|
||||
<rect x="{$BIFC_dx + 0.5}"
|
||||
y="{$BIFC_dy}"
|
||||
width= "{$BIFC_Wi}"
|
||||
height="{$BIFC_Hi}"
|
||||
style="fill:{$bus_col_}; stroke:none;"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="{$bus_type}_busconn_INITIATOR">
|
||||
<rect x="0"
|
||||
y="0"
|
||||
width= "{$BIFC_W}"
|
||||
height="{$BIFC_H}"
|
||||
style="fill:{$bus_col_lt_}; stroke:{$bus_col_}; stroke-width:1"/>
|
||||
|
||||
<rect x="{$BIFC_dx + 0.5}"
|
||||
y="{$BIFC_dy}"
|
||||
width= "{$BIFC_Wi}"
|
||||
height="{$BIFC_Hi}"
|
||||
style="fill:{$bus_col_}; stroke:none;"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="{$bus_type}_busconn_SLAVE">
|
||||
<circle
|
||||
cx="{ceiling($BIFC_W div 2)}"
|
||||
cy="{ceiling($BIFC_H div 2)}"
|
||||
r="{ceiling($BIFC_W div 2)}"
|
||||
style="fill:{$bus_col_lt_}; stroke:{$bus_col_}; stroke-width:1"/>
|
||||
|
||||
<circle
|
||||
cx="{ceiling($BIFC_W div 2) + 0.5}"
|
||||
cy="{ceiling($BIFC_H div 2)}"
|
||||
r="{ceiling($BIFC_Wi div 2)}"
|
||||
style="fill:{$bus_col_}; stroke:none;"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="{$bus_type}_busconn_TARGET">
|
||||
<circle
|
||||
cx="{ceiling($BIFC_W div 2)}"
|
||||
cy="{ceiling($BIFC_H div 2)}"
|
||||
r="{ceiling($BIFC_W div 2)}"
|
||||
style="fill:{$bus_col_lt_}; stroke:{$bus_col_}; stroke-width:1"/>
|
||||
|
||||
<circle
|
||||
cx="{ceiling($BIFC_W div 2) + 0.5}"
|
||||
cy="{ceiling($BIFC_H div 2)}"
|
||||
r="{ceiling($BIFC_Wi div 2)}"
|
||||
style="fill:{$bus_col_}; stroke:none;"/>
|
||||
</symbol>
|
||||
|
||||
|
||||
<symbol id="{$bus_type}_busconn_MASTER_SLAVE">
|
||||
<circle
|
||||
cx="{ceiling($BIFC_W div 2)}"
|
||||
cy="{ceiling($BIFC_H div 2)}"
|
||||
r="{ceiling($BIFC_W div 2)}"
|
||||
style="fill:{$bus_col_lt_}; stroke:{$bus_col_}; stroke-width:1"/>
|
||||
|
||||
<circle
|
||||
cx="{ceiling($BIFC_W div 2) + 0.5}"
|
||||
cy="{ceiling($BIFC_H div 2)}"
|
||||
r="{ceiling($BIFC_Wi div 2)}"
|
||||
style="fill:{$bus_col_}; stroke:none;"/>
|
||||
|
||||
<rect x="0"
|
||||
y="{ceiling($BIFC_H div 2)}"
|
||||
width= "{$BIFC_W}"
|
||||
height="{ceiling($BIFC_H div 2)}"
|
||||
style="fill:{$bus_col_lt_}; stroke:{$bus_col_}; stroke-width:1"/>
|
||||
|
||||
<rect x="{$BIFC_dx + 0.5}"
|
||||
y="{ceiling($BIFC_H div 2)}"
|
||||
width= "{$BIFC_Wi}"
|
||||
height="{ceiling($BIFC_Hi div 2)}"
|
||||
style="fill:{$bus_col_}; stroke:none;"/>
|
||||
|
||||
</symbol>
|
||||
|
||||
<symbol id="{$bus_type}_busconn_MONITOR">
|
||||
|
||||
<rect x="0"
|
||||
y="0.5"
|
||||
width= "{$BIFC_W}"
|
||||
height="{ceiling($BIFC_Hi div 2)}"
|
||||
style="fill:{$bus_col_}; stroke:none;"/>
|
||||
|
||||
<rect x="0"
|
||||
y="{ceiling($BIFC_H div 2) + 4}"
|
||||
width= "{$BIFC_W}"
|
||||
height="{ceiling($BIFC_Hi div 2)}"
|
||||
style="fill:{$bus_col_}; stroke:none;"/>
|
||||
|
||||
</symbol>
|
||||
|
||||
<symbol id="{$bus_type}_busconn_TRANSPARENT">
|
||||
|
||||
<circle
|
||||
cx="{ceiling($BIFC_W div 2)}"
|
||||
cy="{ceiling($BIFC_H div 2)}"
|
||||
r="{ceiling($BIFC_W div 2)}"
|
||||
style="fill:{$bus_col_lt_}; stroke:{$bus_col_}; stroke-width:1"/>
|
||||
|
||||
<circle
|
||||
cx="{ceiling($BIFC_W div 2) + 0.5}"
|
||||
cy="{ceiling($BIFC_H div 2)}"
|
||||
r="{ceiling($BIFC_Wi div 2)}"
|
||||
style="fill:{$bus_col_}; stroke:none;"/>
|
||||
|
||||
</symbol>
|
||||
|
||||
<symbol id="{$bus_type}_busconn_">
|
||||
|
||||
<circle
|
||||
cx="{ceiling($BIFC_W div 2)}"
|
||||
cy="{ceiling($BIFC_H div 2)}"
|
||||
r="{ceiling($BIFC_W div 2)}"
|
||||
style="fill:{$COL_WHITE}; stroke:{$bus_col_}; stroke-width:1"/>
|
||||
|
||||
<circle
|
||||
cx="{ceiling($BIFC_W div 2) + 0.5}"
|
||||
cy="{ceiling($BIFC_H div 2)}"
|
||||
r="{ceiling($BIFC_Wi div 2)}"
|
||||
style="fill:{$COL_WHITE}; stroke:none;"/>
|
||||
|
||||
</symbol>
|
||||
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,138 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<xsl:stylesheet version="1.0"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:exsl="http://exslt.org/common"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
|
||||
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"
|
||||
doctype-public="-//W3C//DTD SVG 1.0//EN"
|
||||
doctype-system="http://www.w3.org/TR/SVG/DTD/svg10.dtd"/>
|
||||
|
||||
<!--
|
||||
======================================================
|
||||
BUS INTERFACE DIMENSIONS
|
||||
======================================================
|
||||
-->
|
||||
|
||||
<xsl:param name="BIF_H" select="16"/>
|
||||
<xsl:param name="BIF_W" select="32"/>
|
||||
|
||||
<xsl:param name="BIFC_H" select="24"/>
|
||||
<xsl:param name="BIFC_W" select="24"/>
|
||||
|
||||
<xsl:param name="BIFC_dx" select="ceiling($BIFC_W div 5)"/>
|
||||
<xsl:param name="BIFC_dy" select="ceiling($BIFC_H div 5)"/>
|
||||
<xsl:param name="BIFC_Hi" select="($BIFC_H - ($BIFC_dy * 2))"/>
|
||||
<xsl:param name="BIFC_Wi" select="($BIFC_W - ($BIFC_dx * 2))"/>
|
||||
|
||||
<xsl:param name="BIF_TYPE_ONEWAY" select="'OneWay'"/>
|
||||
|
||||
<!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
||||
|
||||
|
||||
<!--
|
||||
======================================================
|
||||
BUS DIMENSIONS
|
||||
======================================================
|
||||
-->
|
||||
|
||||
<xsl:variable name="BUS_ARROW_W" select="ceiling($BIFC_W div 3)"/>
|
||||
<xsl:variable name="BUS_ARROW_H" select="ceiling($BIFC_H div 2)"/>
|
||||
<xsl:variable name="BUS_ARROW_G" select="ceiling($BIFC_W div 12)"/>
|
||||
|
||||
<!--
|
||||
<xsl:variable name="BUS_LANE_W" select="(ceiling($BIF_W div 2) + $BUS_ARROW_W)"/>
|
||||
<xsl:variable name="BUS_LANE_W" select="($BIFC_W + ceiling($BIFC_W div 2))"/>
|
||||
-->
|
||||
<xsl:variable name="BUS_LANE_W" select="($BIF_W + ($MOD_BIF_GAP_H * 2))"/>
|
||||
<xsl:variable name="SBS_LANE_H" select="($periMOD_H + ($BIF_H * 2))"/>
|
||||
|
||||
<xsl:variable name="P2P_BUS_W" select="($BUS_ARROW_H - ($BUS_ARROW_G * 2))"/>
|
||||
|
||||
<!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
||||
|
||||
<!--
|
||||
======================================================
|
||||
IO PORT DIMENSIONS
|
||||
======================================================
|
||||
-->
|
||||
|
||||
<xsl:param name="IOP_H" select="16"/>
|
||||
<xsl:param name="IOP_W" select="16"/>
|
||||
<xsl:param name="IOP_SPC" select="12"/>
|
||||
|
||||
<xsl:param name="MOD_IO_GAP" select="8"/>
|
||||
<!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
||||
|
||||
<!--
|
||||
======================================================
|
||||
INTERRUPT NOTATION DIMENSIONS
|
||||
======================================================
|
||||
-->
|
||||
|
||||
<xsl:variable name="INTR_W" select="18"/>
|
||||
<xsl:variable name="INTR_H" select="18"/>
|
||||
|
||||
<!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
||||
|
||||
|
||||
<!--
|
||||
======================================================
|
||||
MODULE DIMENSIONS
|
||||
======================================================
|
||||
-->
|
||||
|
||||
<xsl:variable name="MOD_LABEL_W" select="(($BIF_W * 2) + $MOD_BIF_GAP_H)"/>
|
||||
<xsl:variable name="MOD_LABEL_H" select="(($BIF_H * 2) + ceiling($BIF_H div 3))"/>
|
||||
|
||||
<xsl:variable name="MOD_LANE_W" select="ceiling($BIF_W div 3)"/>
|
||||
<xsl:variable name="MOD_LANE_H" select="ceiling($BIF_H div 4)"/>
|
||||
<xsl:variable name="MOD_EDGE_W" select="ceiling($MOD_LANE_W div 2)"/>
|
||||
<xsl:variable name="MOD_SHAPES_G" select="($BIF_W + $BIF_W)"/>
|
||||
<xsl:variable name="MOD_BKTLANE_H" select="$BIF_H"/>
|
||||
<xsl:variable name="MOD_BKTLANE_W" select="$BIF_H"/>
|
||||
<xsl:variable name="MOD_BUCKET_G" select="ceiling($BIF_W div 2)"/>
|
||||
|
||||
<xsl:variable name="MOD_BIF_GAP_H" select="ceiling($BIF_H div 4)"/>
|
||||
<xsl:variable name="MOD_BIF_GAP_V" select="ceiling($BIFC_H div 2)"/>
|
||||
<!--
|
||||
<xsl:variable name="MOD_BIF_GAP_V" select="ceiling($BIF_H div 4)"/>
|
||||
-->
|
||||
|
||||
<xsl:variable name="periMOD_W" select="( ($BIF_W * 2) + ($MOD_BIF_GAP_H * 1) + ($MOD_LANE_W * 2))"/>
|
||||
<xsl:variable name="periMOD_H" select="($MOD_LABEL_H + ($BIF_H * 1) + ($MOD_BIF_GAP_V * 1) + ($MOD_LANE_H * 2))"/>
|
||||
|
||||
|
||||
<!--
|
||||
======================================================
|
||||
GLOBAL DIAGRAM DIMENSIONS
|
||||
======================================================
|
||||
-->
|
||||
<xsl:variable name="BLKD_IORCHAN_H" select="$BIF_H"/>
|
||||
<xsl:variable name="BLKD_IORCHAN_W" select="$BIF_H"/>
|
||||
<xsl:variable name="BLKD_PRTCHAN_H" select="($BIF_H * 2) + ceiling($BIF_H div 2)"/>
|
||||
<xsl:variable name="BLKD_PRTCHAN_W" select="($BIF_H * 2) + ceiling($BIF_H div 2) + 8"/>
|
||||
<xsl:variable name="BLKD_DRAWAREA_MIN" select="(($MOD_BKTLANE_W * 2) + (($periMOD_W * 3) + ($MOD_BUCKET_G * 2)))"/>
|
||||
|
||||
<xsl:variable name="BLKD_KEY_W" select="($BLKD_DRAWAREA_MIN + ceiling($BLKD_DRAWAREA_MIN div 2.5))"/>
|
||||
<xsl:variable name="BLKD_KEY_H" select="250"/>
|
||||
|
||||
<xsl:variable name="BLKD_SPECS_W" select="300"/>
|
||||
<xsl:variable name="BLKD_SPECS_H" select="100"/>
|
||||
|
||||
<xsl:variable name="SBS2IP_GAP" select="$periMOD_H"/>
|
||||
<xsl:variable name="BKT_MODS_PER_ROW" select="3"/>
|
||||
|
||||
<xsl:variable name="IP2UNK_GAP" select="$periMOD_H"/>
|
||||
<xsl:variable name="PROC2SBS_GAP" select="($BIF_H * 2)"/>
|
||||
<xsl:variable name="IOR2PROC_GAP" select="$BIF_W"/>
|
||||
<xsl:variable name="SPECS2KEY_GAP" select="$BIF_W"/>
|
||||
<xsl:variable name="BLKD2KEY_GAP" select="ceiling($BIF_W div 3)"/>
|
||||
<xsl:variable name="BRIDGE_GAP" select="($BUS_LANE_W * 4)"/>
|
||||
|
||||
<xsl:variable name="BLKD_INNER_GAP" select="ceiling($periMOD_W div 2)"/>
|
||||
<xsl:variable name="BLKD_INNER_X" select="($BLKD_PRTCHAN_W + $BLKD_IORCHAN_W + $BLKD_INNER_GAP)"/>
|
||||
<xsl:variable name="BLKD_INNER_Y" select="($BLKD_PRTCHAN_H + $BLKD_IORCHAN_H + $BLKD_INNER_GAP)"/>
|
||||
|
||||
</xsl:stylesheet>
|
|
@ -0,0 +1,29 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<xsl:stylesheet version="1.0"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:exsl="http://exslt.org/common"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
|
||||
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"
|
||||
doctype-public="-//W3C//DTD SVG 1.0//EN"
|
||||
doctype-system="http://www.w3.org/TR/SVG/DTD/svg10.dtd"/>
|
||||
|
||||
|
||||
<xsl:template name="Print_BlkdModuleDefs">
|
||||
<xsl:message>MOD_LABEL_W : <xsl:value-of select="$MOD_LABEL_W"/></xsl:message>
|
||||
<xsl:message>MOD_LABEL_H : <xsl:value-of select="$MOD_LABEL_H"/></xsl:message>
|
||||
|
||||
<xsl:message>MOD_LANE_W : <xsl:value-of select="$MOD_LANE_W"/></xsl:message>
|
||||
<xsl:message>MOD_LANE_H : <xsl:value-of select="$MOD_LANE_H"/></xsl:message>
|
||||
|
||||
<xsl:message>MOD_EDGE_W : <xsl:value-of select="$MOD_EDGE_W"/></xsl:message>
|
||||
<xsl:message>MOD_SHAPES_G : <xsl:value-of select="$MOD_SHAPES_G"/></xsl:message>
|
||||
|
||||
<xsl:message>MOD_BKTLANE_W : <xsl:value-of select="$MOD_BKTLANE_W"/></xsl:message>
|
||||
<xsl:message>MOD_BKTLANE_H : <xsl:value-of select="$MOD_BKTLANE_H"/></xsl:message>
|
||||
<xsl:message>MOD_BUCKET_G : <xsl:value-of select="$MOD_BUCKET_G"/></xsl:message>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,546 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<xsl:stylesheet version="1.0"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:exsl="http://exslt.org/common"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
|
||||
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"
|
||||
doctype-public="-//W3C//DTD SVG 1.0//EN"
|
||||
doctype-system="http://www.w3.org/TR/SVG/DTD/svg10.dtd"/>
|
||||
|
||||
|
||||
|
||||
<xsl:template name="Define_Busses">
|
||||
<xsl:param name="drawarea_w" select="500"/>
|
||||
<xsl:param name="drawarea_h" select="500"/>
|
||||
|
||||
<xsl:for-each select="exsl:node-set($COL_BUSSTDS)/BUSCOLOR">
|
||||
|
||||
<xsl:call-template name="Define_BusArrowsEastWest">
|
||||
<xsl:with-param name="bus_type" select="@BUSSTD"/>
|
||||
</xsl:call-template>
|
||||
|
||||
<xsl:call-template name="Define_BusArrowsNorthSouth">
|
||||
<xsl:with-param name="bus_type" select="@BUSSTD"/>
|
||||
</xsl:call-template>
|
||||
|
||||
<xsl:call-template name="Define_SplitBusses">
|
||||
<xsl:with-param name="bus_type" select="@BUSSTD"/>
|
||||
</xsl:call-template>
|
||||
|
||||
</xsl:for-each>
|
||||
|
||||
<xsl:call-template name="Define_SharedBus">
|
||||
<xsl:with-param name="bus_type" select="'PLB'"/>
|
||||
<xsl:with-param name="drawarea_w" select="$drawarea_w"/>
|
||||
</xsl:call-template>
|
||||
|
||||
<xsl:call-template name="Define_SharedBus">
|
||||
<xsl:with-param name="bus_type" select="'PLBV46'"/>
|
||||
<xsl:with-param name="drawarea_w" select="$drawarea_w"/>
|
||||
</xsl:call-template>
|
||||
|
||||
<xsl:call-template name="Define_SharedBus">
|
||||
<xsl:with-param name="bus_type" select="'OPB'"/>
|
||||
<xsl:with-param name="drawarea_w" select="$drawarea_w"/>
|
||||
</xsl:call-template>
|
||||
|
||||
<xsl:call-template name="Define_SharedBus_Group"/>
|
||||
|
||||
<!--
|
||||
<xsl:call-template name="Define_SharedBus">
|
||||
<xsl:with-param name="bus_type" select="'PLB'"/>
|
||||
<xsl:with-param name="drawarea_w" select="$drawarea_w"/>
|
||||
</xsl:call-template>
|
||||
-->
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="Define_BusArrowsEastWest">
|
||||
<xsl:param name="bus_type" select="'OPB'"/>
|
||||
|
||||
<xsl:variable name="bus_col_">
|
||||
<xsl:call-template name="BusType2Color">
|
||||
<xsl:with-param name="busType" select="$bus_type"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="bus_col_lt_">
|
||||
<xsl:call-template name="BusType2LightColor">
|
||||
<xsl:with-param name="busType" select="$bus_type"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<symbol id="{$bus_type}_BusArrowEast">
|
||||
<path class="bus"
|
||||
d="M 0,0
|
||||
L {$BUS_ARROW_W}, {ceiling($BUS_ARROW_H div 2)}
|
||||
L 0,{$BUS_ARROW_H},
|
||||
Z" style="stroke:none; fill:{$bus_col_}"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="{$bus_type}_BusArrowWest">
|
||||
<use x="0" y="0" xlink:href="#{$bus_type}_BusArrowEast" transform="scale(-1,1) translate({$BUS_ARROW_W * -1},0)"/>
|
||||
</symbol>
|
||||
|
||||
<!--
|
||||
<symbol id="{$bus_type}_BusArrowHInitiator">
|
||||
<rect x="0"
|
||||
y="{$BUS_ARROW_G}"
|
||||
width= "{$BUS_ARROW_W}"
|
||||
height="{$BUS_ARROW_W - ($BUS_ARROW_G * 2)}"
|
||||
style="stroke:none; fill:{$bus_col_}"/>
|
||||
</symbol>
|
||||
-->
|
||||
<symbol id="{$bus_type}_BusArrowHInitiator">
|
||||
<rect x="0"
|
||||
y="{$BUS_ARROW_G}"
|
||||
width= "{$BUS_ARROW_W}"
|
||||
height="{$P2P_BUS_W}"
|
||||
style="stroke:none; fill:{$bus_col_}"/>
|
||||
</symbol>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!--
|
||||
<xsl:param name="bus_col" select="'OPB'"/>
|
||||
-->
|
||||
|
||||
<xsl:template name="Define_BusArrowsNorthSouth">
|
||||
<xsl:param name="bus_type" select="'OPB'"/>
|
||||
|
||||
<xsl:variable name="bus_col_">
|
||||
<xsl:call-template name="BusType2Color">
|
||||
<xsl:with-param name="busType" select="$bus_type"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="bus_col_lt_">
|
||||
<xsl:call-template name="BusType2LightColor">
|
||||
<xsl:with-param name="busType" select="$bus_type"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<symbol id="{$bus_type}_BusArrowSouth">
|
||||
<path class="bus"
|
||||
d="M 0,0
|
||||
L {$BUS_ARROW_W},0
|
||||
L {ceiling($BUS_ARROW_W div 2)}, {$BUS_ARROW_H}
|
||||
Z" style="stroke:none; fill:{$bus_col_}"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="{$bus_type}_BusArrowNorth">
|
||||
<use x="0" y="0" xlink:href="#{$bus_type}_BusArrowSouth" transform="scale(1,-1) translate(0,{$BUS_ARROW_H * -1})"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="{$bus_type}_BusArrowInitiator">
|
||||
<rect x="{$BUS_ARROW_G}"
|
||||
y="0"
|
||||
width= "{$BUS_ARROW_W - ($BUS_ARROW_G * 2)}"
|
||||
height="{$BUS_ARROW_H}"
|
||||
style="stroke:none; fill:{$bus_col_}"/>
|
||||
</symbol>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="Draw_P2PBus">
|
||||
|
||||
<xsl:param name="busX" select="0"/>
|
||||
<xsl:param name="busTop" select="0"/>
|
||||
<xsl:param name="busBot" select="0"/>
|
||||
<xsl:param name="botRnk" select="'_unk_'"/>
|
||||
<xsl:param name="topRnk" select="'_unk_'"/>
|
||||
<xsl:param name="busStd" select="'_bstd_'"/>
|
||||
<xsl:param name="busName" select="'_p2pbus_'"/>
|
||||
|
||||
<xsl:variable name="busCol_">
|
||||
<xsl:choose>
|
||||
|
||||
<xsl:when test="@BUSSTD">
|
||||
<xsl:call-template name="BusType2Color">
|
||||
<xsl:with-param name="busType" select="@BUSSTD"/>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:when test="not($busStd = '_bstd_')">
|
||||
<xsl:call-template name="BusType2Color">
|
||||
<xsl:with-param name="busType" select="$busStd"/>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="$COL_OPBBUS"/>
|
||||
</xsl:otherwise>
|
||||
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="p2pH_" select="($busBot - $busTop) - ($BUS_ARROW_H * 2)"/>
|
||||
|
||||
<xsl:variable name="botArrow_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="((($botRnk = 'INITIATOR') or ($botRnk = 'MASTER')) and ($busStd = 'FSL'))">BusArrowInitiator</xsl:when>
|
||||
<xsl:otherwise>BusArrowSouth</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="topArrow_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="((($topRnk = 'INITIATOR') or ($topRnk = 'MASTER')) and ($busStd = 'FSL'))">BusArrowInitiator</xsl:when>
|
||||
<xsl:otherwise>BusArrowNorth</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:if test="@BUSSTD">
|
||||
<use x="{($busX + ceiling($BIFC_W div 2)) - ceiling($BUS_ARROW_W div 2)}"
|
||||
y="{$busTop + ($BIFC_H - $BUS_ARROW_H) + $BUS_ARROW_H}"
|
||||
xlink:href="#{@BUSSTD}_{$topArrow_}"/>
|
||||
|
||||
<use x="{($busX + ceiling($BIFC_W div 2)) - ceiling($BUS_ARROW_W div 2)}"
|
||||
y="{$busBot - $BUS_ARROW_H}"
|
||||
xlink:href="#{@BUSSTD}_{$botArrow_}"/>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="(not(@BUSSTD) and not($busStd = '_bstd_'))">
|
||||
<use x="{($busX + ceiling($BIFC_W div 2)) - ceiling($BUS_ARROW_W div 2)}"
|
||||
y="{$busTop + ($BIFC_H - $BUS_ARROW_H) + $BUS_ARROW_H}"
|
||||
xlink:href="#{$busStd}_{$topArrow_}"/>
|
||||
|
||||
<use x="{($busX + ceiling($BIFC_W div 2)) - ceiling($BUS_ARROW_W div 2)}"
|
||||
y="{$busBot - $BUS_ARROW_H}"
|
||||
xlink:href="#{$busStd}_{$botArrow_}"/>
|
||||
</xsl:if>
|
||||
|
||||
|
||||
<rect x="{($busX + ceiling($BIFC_W div 2)) - ceiling($BUS_ARROW_W div 2) + $BUS_ARROW_G}"
|
||||
y="{$busTop + $BIFC_H + $BUS_ARROW_H}"
|
||||
height= "{$p2pH_ - ($BUS_ARROW_H * 2)}"
|
||||
width="{$BUS_ARROW_W - ($BUS_ARROW_G * 2)}"
|
||||
style="stroke:none; fill:{$busCol_}"/>
|
||||
|
||||
<text class="p2pbuslabel"
|
||||
x="{$busX + $BUS_ARROW_W + ceiling($BUS_ARROW_W div 2) + ceiling($BUS_ARROW_W div 4) + 4}"
|
||||
y="{$busTop + ($BUS_ARROW_H * 3)}">
|
||||
<xsl:value-of select="$busName"/>
|
||||
</text>
|
||||
|
||||
<xsl:if test="/EDKSYSTEM/MODULES/MODULE[(@INSTANCE = $busName)]/@GROUP">
|
||||
|
||||
<text class="ioplblgrp"
|
||||
x="{$busX + $BUS_ARROW_W + ceiling($BUS_ARROW_W div 2) + ceiling($BUS_ARROW_W div 4) + 6}"
|
||||
y="{$busTop + ($BUS_ARROW_H * 10)}">
|
||||
<xsl:value-of select="/EDKSYSTEM/MODULES/MODULE[(@INSTANCE=$busName)]/@GROUP"/>
|
||||
</text>
|
||||
|
||||
</xsl:if>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="Draw_Proc2ProcBus">
|
||||
|
||||
<xsl:param name="bc_Y" select="0"/>
|
||||
<xsl:param name="bcLeft_X" select="0"/>
|
||||
<xsl:param name="bcRght_X" select="0"/>
|
||||
|
||||
<xsl:param name="leftRnk" select="'_unk_'"/>
|
||||
<xsl:param name="rghtRnk" select="'_unk_'"/>
|
||||
|
||||
<xsl:param name="busStd" select="'_bstd_'"/>
|
||||
<xsl:param name="busName" select="'_p2pbus_'"/>
|
||||
|
||||
<xsl:variable name="busCol_">
|
||||
<xsl:call-template name="BusType2Color">
|
||||
<xsl:with-param name="busType" select="$busStd"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="pr2pr_W_" select="($bcRght_X - $bcLeft_X)"/>
|
||||
|
||||
<xsl:variable name="leftArrow_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="((($leftRnk = 'INITIATOR') or ($leftRnk = 'MASTER')) and ($busStd = 'FSL'))">BusArrowHInitiator</xsl:when>
|
||||
<xsl:otherwise>BusArrowWest</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="rghtArrow_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="((($rghtRnk = 'INITIATOR') or ($rghtRnk = 'MASTER')) and ($busStd = 'FSL'))">BusArrowHInitiator</xsl:when>
|
||||
<xsl:otherwise>BusArrowEast</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
|
||||
<xsl:variable name="bus_Y_" select="($bc_Y + ceiling($BIFC_H div 2) - ceiling($BUS_ARROW_H div 2))"/>
|
||||
|
||||
<use x="{$bcLeft_X}" y="{$bus_Y_}" xlink:href="#{$busStd}_{$leftArrow_}"/>
|
||||
<use x="{$bcRght_X - $BUS_ARROW_W}" y="{$bus_Y_}" xlink:href="#{$busStd}_{$rghtArrow_}"/>
|
||||
|
||||
<rect x="{$bcLeft_X + $BUS_ARROW_W}"
|
||||
y="{$bus_Y_ + $BUS_ARROW_G}"
|
||||
width= "{$pr2pr_W_ - (2 * $BUS_ARROW_W)}"
|
||||
height="{$BUS_ARROW_H - (2 * $BUS_ARROW_G)}" style="stroke:none; fill:{$busCol_}"/>
|
||||
|
||||
<text class="horizp2pbuslabel"
|
||||
x="{$bcLeft_X + $BUS_ARROW_W + ceiling($BUS_ARROW_W div 2) + ceiling($BUS_ARROW_W div 4) + 4}"
|
||||
y="{($bus_Y_)}">
|
||||
<xsl:value-of select="$busName"/>
|
||||
</text>
|
||||
|
||||
<text class="horizp2pbuslabel"
|
||||
x="{$bcRght_X - (string-length($busName) * 8)}"
|
||||
y="{($bus_Y_)}">
|
||||
<xsl:value-of select="$busName"/>
|
||||
</text>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="Draw_SplitConnBus">
|
||||
|
||||
<xsl:param name="bc_X" select="0"/>
|
||||
<xsl:param name="bc_Y" select="0"/>
|
||||
<xsl:param name="bc_Rnk" select="'_unk_'"/>
|
||||
<xsl:param name="bc_Side" select="'_unk_'"/>
|
||||
|
||||
<xsl:param name="busStd" select="'_bstd_'"/>
|
||||
<xsl:param name="busName" select="'_p2pbus_'"/>
|
||||
|
||||
<xsl:variable name="busCol_">
|
||||
<xsl:call-template name="BusType2Color">
|
||||
<xsl:with-param name="busType" select="$busStd"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="connArrow_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="((($bc_Rnk = 'INITIATOR') or ($bc_Rnk = 'MASTER')) and ($busStd = 'FSL'))">BusArrowHInitiator</xsl:when>
|
||||
<xsl:otherwise>BusArrowEast</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="arrow_Y_" select="($bc_Y + ceiling($BIFC_H div 2) - ceiling($BUS_ARROW_H div 2))"/>
|
||||
|
||||
<xsl:variable name="bus_X_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$bc_Side = '0'"><xsl:value-of select="($bc_X - ($BUS_ARROW_W * 2))"/></xsl:when>
|
||||
<xsl:when test="$bc_Side = '1'"><xsl:value-of select="($bc_X + $BIFC_W + $BUS_ARROW_W)"/></xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<!--
|
||||
<use x="{$bus_X_}" y="{$arrow_Y_}" xlink:href="#{$busStd}_BusArrowHInitiator"/>
|
||||
-->
|
||||
|
||||
<xsl:variable name="arrow_X_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$bc_Side = '0'"><xsl:value-of select="($bc_X - $BUS_ARROW_W)"/></xsl:when>
|
||||
<xsl:when test="$bc_Side = '1'"><xsl:value-of select="($bc_X + $BIFC_W)"/></xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<!--
|
||||
<xsl:message>The bus name is <xsl:value-of select="$busName"/></xsl:message>
|
||||
<xsl:message>The bif side is <xsl:value-of select="$bc_Side"/></xsl:message>
|
||||
<xsl:message>The bif rank is <xsl:value-of select="$bc_Rnk"/></xsl:message>
|
||||
-->
|
||||
<xsl:choose>
|
||||
<xsl:when test="(($busStd = 'FSL') and (($bc_Rnk = 'MASTER') or ($bc_Rnk = 'INITIATOR')))">
|
||||
<use x="{$arrow_X_}" y="{$arrow_Y_}" xlink:href="#{$busStd}_{$connArrow_}"/>
|
||||
<use x="{$bus_X_}" y="{$arrow_Y_}" xlink:href="#{$busStd}_BusArrowHInitiator"/>
|
||||
</xsl:when>
|
||||
<xsl:when test="(($bc_Side = '1') and not(@busStd = 'FSL') and (($bc_Rnk = 'MASTER') or ($bc_Rnk = 'INITIATOR')))">
|
||||
<use x="{$arrow_X_ - $BIFC_W}" y="{$arrow_Y_}" xlink:href="#{$busStd}_SplitBus_WEST"/>
|
||||
</xsl:when>
|
||||
<xsl:when test="(($bc_Side = '1') and (($bc_Rnk = 'SLAVE') or ($bc_Rnk = 'TARGET') or ($bc_Rnk = 'TRANSPARENT')))">
|
||||
<use x="{$arrow_X_}" y="{$arrow_Y_}" xlink:href="#{$busStd}_SplitBus_EAST"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<use x="{$arrow_X_}" y="{$arrow_Y_}" xlink:href="#{$busStd}_{$connArrow_}"/>
|
||||
<use x="{$bus_X_}" y="{$arrow_Y_}" xlink:href="#{$busStd}_BusArrowHInitiator"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
|
||||
<xsl:variable name="text_X_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$bc_Side = '0'"><xsl:value-of select="($bus_X_ - $BUS_ARROW_W - (string-length($busName) * 5))"/></xsl:when>
|
||||
<xsl:when test="$bc_Side = '1'"><xsl:value-of select="($bus_X_ + $BUS_ARROW_W)"/></xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
|
||||
<text class="horizp2pbuslabel"
|
||||
x="{$text_X_}"
|
||||
y="{($arrow_Y_)}">
|
||||
<xsl:value-of select="$busName"/>
|
||||
</text>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="Define_SharedBus">
|
||||
|
||||
<xsl:param name="bus_type" select="'OPB'"/>
|
||||
<xsl:param name="drawarea_w" select="500"/>
|
||||
|
||||
<xsl:variable name="sharedbus_w_" select="($drawarea_w - ($BLKD_INNER_GAP * 2))"/>
|
||||
|
||||
<xsl:variable name="bus_col_">
|
||||
<xsl:call-template name="BusType2Color">
|
||||
<xsl:with-param name="busType" select="$bus_type"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="bus_col_lt_">
|
||||
<xsl:call-template name="BusType2LightColor">
|
||||
<xsl:with-param name="busType" select="$bus_type"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<symbol id="{$bus_type}_SharedBus">
|
||||
<use x="0" y="0" xlink:href="#{$bus_type}_BusArrowWest"/>
|
||||
<use x="{$sharedbus_w_ - $BUS_ARROW_W}" y="0" xlink:href="#{$bus_type}_BusArrowEast"/>
|
||||
|
||||
<rect x="{$BUS_ARROW_W}"
|
||||
y="{$BUS_ARROW_G}"
|
||||
width= "{$sharedbus_w_ - ($BUS_ARROW_W * 2)}"
|
||||
height="{$BUS_ARROW_H - (2 * $BUS_ARROW_G)}" style="stroke:none; fill:{$bus_col_}"/>
|
||||
</symbol>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="Define_SplitBusses">
|
||||
|
||||
<xsl:param name="bus_type" sselect="'FSL'"/>
|
||||
|
||||
<xsl:variable name="bus_col_">
|
||||
<xsl:call-template name="BusType2Color">
|
||||
<xsl:with-param name="busType" select="$bus_type"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="bifc_r_" select="ceiling($BIFC_W div 3)"/>
|
||||
|
||||
<symbol id="{$bus_type}_SplitBus_EAST">
|
||||
<use x="0" y="0" xlink:href="#{$bus_type}_BusArrowWest"/>
|
||||
|
||||
<rect x="{$BUS_ARROW_W}"
|
||||
y="{$BUS_ARROW_G}"
|
||||
width= "{$BIFC_W}"
|
||||
height="{$BUS_ARROW_H - (2 * $BUS_ARROW_G)}" style="stroke:none; fill:{$bus_col_}"/>
|
||||
|
||||
<!--
|
||||
<rect x="{$BUS_ARROW_W + $BIFC_W}"
|
||||
y="0"
|
||||
width= "{$BIFC_W}"
|
||||
height="{$BUS_ARROW_H}" style="stroke:none; fill:{$bus_col_}"/>
|
||||
-->
|
||||
<!--
|
||||
<circle
|
||||
cx="{$BUS_ARROW_W + $BIFC_W}"
|
||||
cy="{ceiling($BIFC_Wi div 2)}"
|
||||
r="{ceiling($BIFC_Wi div 2)}"
|
||||
style="fill:{$bus_col_}; stroke:none;"/>
|
||||
-->
|
||||
</symbol>
|
||||
|
||||
<xsl:variable name="splbus_w_" select="($BUS_ARROW_W + $BIFC_W + $BIFC_Wi)"/>
|
||||
|
||||
<symbol id="{$bus_type}_SplitBus_WEST">
|
||||
<use x="0" y="0" xlink:href="#{$bus_type}_SplitBus_EAST" transform="scale(-1,1) translate({$splbus_w_ * -1},0)"/>
|
||||
|
||||
</symbol>
|
||||
|
||||
<symbol id="{$bus_type}_SplitBus_OneWay">
|
||||
|
||||
<!--
|
||||
<use x="0" y="0" xlink:href="#{$bus_type}_BusArrowWest"/>
|
||||
-->
|
||||
<rect x="0"
|
||||
y="{$BUS_ARROW_G}"
|
||||
width= "{($BUS_ARROW_W * 2)}"
|
||||
height="{$BUS_ARROW_H - (2 * $BUS_ARROW_G)}" style="stroke:none; fill:{$bus_col_}"/>
|
||||
|
||||
<rect x="{($BUS_ARROW_W * 2)}"
|
||||
y="0"
|
||||
width= "{$BUS_ARROW_H}"
|
||||
height="{$BUS_ARROW_H}" style="stroke:none; fill:{$bus_col_}"/>
|
||||
|
||||
<!--
|
||||
|
||||
<rect x="{$BUS_ARROW_W}"
|
||||
y="{$BUS_ARROW_G}"
|
||||
width= "{$BUS_ARROW_W}"
|
||||
height="{$BUS_ARROW_H}" style="stroke:none; fill:{$bus_col_}"/>
|
||||
<circle
|
||||
cx="{$BUS_ARROW_W + $BIFC_W}"
|
||||
cy="{ceiling($BIFC_Wi div 2)}"
|
||||
r="{ceiling($BIFC_Wi div 2)}"
|
||||
style="fill:{$bus_col_}; stroke:none;"/>
|
||||
-->
|
||||
</symbol>
|
||||
|
||||
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="Define_SharedBus_Group">
|
||||
|
||||
<!-- The Bridges go into the shared bus shape -->
|
||||
<xsl:for-each select="/EDKSYSTEM/BLKDSHAPES/BRIDGESHAPES/MODULE">
|
||||
|
||||
<xsl:variable name="modInst_" select="@INSTANCE"/>
|
||||
<xsl:variable name="modType_" select="/EDKSYSTEM/MODULES/MODULE[(@INSTANCE=$modInst_)]/@MODTYPE"/>
|
||||
|
||||
<xsl:call-template name="Define_Peripheral">
|
||||
<xsl:with-param name="modVori" select="'normal'"/>
|
||||
<xsl:with-param name="modInst" select="$modInst_"/>
|
||||
<xsl:with-param name="modType" select="$modType_"/>
|
||||
</xsl:call-template>
|
||||
|
||||
</xsl:for-each>
|
||||
|
||||
<symbol id="group_sharedBusses">
|
||||
|
||||
<!-- Draw the shared bus shapes first -->
|
||||
<xsl:for-each select="BLKDSHAPES/SBSSHAPES/MODULE">
|
||||
<xsl:variable name="instance_" select="@INSTANCE"/>
|
||||
|
||||
<xsl:variable name="busStd_" select="/EDKSYSTEM/MODULES/MODULE[(@INSTANCE=$instance_)]/@BUSSTD"/>
|
||||
<xsl:variable name="busIndex_" select="/EDKSYSTEM/MODULES/MODULE[(@INSTANCE=$instance_)]/@BUSINDEX"/>
|
||||
|
||||
<xsl:variable name="busY_" select="($busIndex_ * $SBS_LANE_H)"/>
|
||||
|
||||
<use x="0" y="{$busY_}" xlink:href="#{$busStd_}_SharedBus"/>
|
||||
|
||||
<text class="sharedbuslabel"
|
||||
x="8"
|
||||
y="{$busY_ + $BUS_ARROW_H + 10}">
|
||||
<xsl:value-of select="$instance_"/>
|
||||
</text>
|
||||
|
||||
</xsl:for-each>
|
||||
</symbol>
|
||||
|
||||
<symbol id="KEY_SharedBus">
|
||||
<use x="0" y="0" xlink:href="#KEY_BusArrowWest"/>
|
||||
<use x="30" y="0" xlink:href="#KEY_BusArrowEast"/>
|
||||
|
||||
<xsl:variable name="key_col_">
|
||||
<xsl:call-template name="BusType2Color">
|
||||
<xsl:with-param name="busType" select="'KEY'"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<rect x="{$BUS_ARROW_W}"
|
||||
y="{$BUS_ARROW_G}"
|
||||
width= "{30 - $BUS_ARROW_W}"
|
||||
height="{$BUS_ARROW_H - (2 * $BUS_ARROW_G)}" style="stroke:none; fill:{$key_col_}"/>
|
||||
</symbol>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
|
@ -0,0 +1,512 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<xsl:stylesheet version="1.0"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:exsl="http://exslt.org/common"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
|
||||
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"
|
||||
doctype-public="-//W3C//DTD SVG 1.0//EN"
|
||||
doctype-system="http://www.w3.org/TR/SVG/DTD/svg10.dtd"/>
|
||||
|
||||
<xsl:param name="IOP_H" select="16"/>
|
||||
<xsl:param name="IOP_W" select="16"/>
|
||||
<xsl:param name="IOP_SPC" select="12"/>
|
||||
|
||||
<xsl:param name="MOD_IO_GAP" select="8"/>
|
||||
|
||||
<!-- ======================= DEF BLOCK =============================== -->
|
||||
<xsl:template name="Define_IOPorts">
|
||||
|
||||
<xsl:variable name="key_col_">
|
||||
<xsl:call-template name="BusType2Color">
|
||||
<xsl:with-param name="busType" select="'KEY'"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="key_lt_col_">
|
||||
<xsl:call-template name="BusType2LightColor">
|
||||
<xsl:with-param name="busType" select="'KEY'"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<symbol id="G_IOPort">
|
||||
<rect
|
||||
x="0"
|
||||
y="0"
|
||||
width= "{$IOP_W}"
|
||||
height="{$IOP_H}" style="fill:{$COL_IORING_LT}; stroke:{$COL_IORING}; stroke-width:1"/>
|
||||
|
||||
<path class="ioport"
|
||||
d="M 0,0
|
||||
L {$IOP_W},{ceiling($IOP_H div 2)}
|
||||
L 0,{$IOP_H}
|
||||
Z" style="stroke:none; fill:{$COL_SYSPRT}"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="G_BIPort">
|
||||
<rect
|
||||
x="0"
|
||||
y="0"
|
||||
width= "{$IOP_W}"
|
||||
height="{$IOP_H}" style="fill:{$COL_IORING_LT}; stroke:{$COL_IORING}; stroke-width:1"/>
|
||||
|
||||
<path class="btop"
|
||||
d="M 0,{ceiling($IOP_H div 2)}
|
||||
{ceiling($IOP_W div 2)},0
|
||||
{$IOP_W},{ceiling($IOP_H div 2)}
|
||||
Z" style="stroke:none; fill:{$COL_SYSPRT}"/>
|
||||
|
||||
<path class="bbot"
|
||||
d="M 0,{ceiling($IOP_H div 2)}
|
||||
{ceiling($IOP_W div 2)},{$IOP_H}
|
||||
{$IOP_W},{ceiling($IOP_H div 2)}
|
||||
Z" style="stroke:none; fill:{$COL_SYSPRT}"/>
|
||||
|
||||
</symbol>
|
||||
|
||||
<symbol id="KEY_IOPort">
|
||||
<rect
|
||||
x="0"
|
||||
y="0"
|
||||
width= "{$IOP_W}"
|
||||
height="{$IOP_H}" style="fill:{$key_lt_col_}; stroke:none;"/>
|
||||
|
||||
<path class="ioport"
|
||||
d="M 0,0
|
||||
L {$IOP_W},{ceiling($IOP_H div 2)}
|
||||
L 0,{$IOP_H}
|
||||
Z" style="stroke:none; fill:{$key_col_}"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="KEY_BIPort">
|
||||
<rect
|
||||
x="0"
|
||||
y="0"
|
||||
width= "{$IOP_W}"
|
||||
height="{$IOP_H}" style="fill:{$key_lt_col_}; stroke:none;"/>
|
||||
|
||||
<path class="btop"
|
||||
d="M 0,{ceiling($IOP_H div 2)}
|
||||
{ceiling($IOP_W div 2)},0
|
||||
{$IOP_W},{ceiling($IOP_H div 2)}
|
||||
Z" style="stroke:none; fill:{$key_col_}"/>
|
||||
|
||||
<path class="bbot"
|
||||
d="M 0,{ceiling($IOP_H div 2)}
|
||||
{ceiling($IOP_W div 2)},{$IOP_H}
|
||||
{$IOP_W},{ceiling($IOP_H div 2)}
|
||||
Z" style="stroke:none; fill:{$key_col_}"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="KEY_INPort">
|
||||
<use x="0" y="0" xlink:href="#KEY_IOPort"/>
|
||||
<rect
|
||||
x="{$IOP_W}"
|
||||
y="0"
|
||||
width= "{ceiling($IOP_W div 2)}"
|
||||
height="{$IOP_H}" style="fill:{$COL_SYSPRT}; stroke:none;"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="KEY_OUTPort">
|
||||
<use x="0" y="0" xlink:href="#KEY_IOPort" transform="scale(-1,1) translate({$IOP_W * -1},0)"/>
|
||||
<rect
|
||||
x="{$IOP_W}"
|
||||
y="0"
|
||||
width= "{ceiling($IOP_W div 2)}"
|
||||
height="{$IOP_H}" style="fill:{$COL_SYSPRT}; stroke:none;"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="KEY_INOUTPort">
|
||||
<use x="0" y="0" xlink:href="#KEY_BIPort"/>
|
||||
<rect
|
||||
x="{$IOP_W}"
|
||||
y="0"
|
||||
width= "{ceiling($IOP_W div 2)}"
|
||||
height="{$IOP_H}" style="fill:{$COL_SYSPRT}; stroke:none;"/>
|
||||
</symbol>
|
||||
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- ======================= DRAW BLOCK =============================== -->
|
||||
|
||||
<xsl:template name="Draw_IOPorts">
|
||||
<xsl:param name="drawarea_w" select="500"/>
|
||||
<xsl:param name="drawarea_h" select="500"/>
|
||||
|
||||
|
||||
<xsl:variable name="ports_count_" select="count(EXTERNALPORTS/PORT)"/>
|
||||
|
||||
<xsl:if test="($ports_count_ > 30)">
|
||||
<xsl:call-template name="Draw_IOPorts_4Sides">
|
||||
<xsl:with-param name="drawarea_w" select="$drawarea_w"/>
|
||||
<xsl:with-param name="drawarea_h" select="$drawarea_h"/>
|
||||
</xsl:call-template>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="($ports_count_ <= 30)">
|
||||
<xsl:call-template name="Draw_IOPorts_2Sides">
|
||||
<xsl:with-param name="drawarea_w" select="$drawarea_w"/>
|
||||
<xsl:with-param name="drawarea_h" select="$drawarea_h"/>
|
||||
</xsl:call-template>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="Draw_IOPorts_2Sides">
|
||||
|
||||
<xsl:param name="drawarea_h" select="500"/>
|
||||
<xsl:param name="drawarea_w" select="500"/>
|
||||
|
||||
<xsl:variable name="ports_count_" select="count(EXTERNALPORTS/PORT)"/>
|
||||
<xsl:variable name="ports_per_side_" select="ceiling($ports_count_ div 2)"/>
|
||||
|
||||
<xsl:variable name="h_ofs_">
|
||||
<xsl:value-of select="$BLKD_PRTCHAN_W + ceiling(($drawarea_w - (($ports_per_side_ * $IOP_W) + (($ports_per_side_ - 1) * $IOP_SPC))) div 2)"/>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="v_ofs_">
|
||||
<xsl:value-of select="$BLKD_PRTCHAN_H + ceiling(($drawarea_h - (($ports_per_side_ * $IOP_H) + (($ports_per_side_ - 1) * $IOP_SPC))) div 2)"/>
|
||||
</xsl:variable>
|
||||
|
||||
|
||||
<xsl:for-each select="EXTERNALPORTS/PORT">
|
||||
<xsl:sort data-type="number" select="@INDEX" order="ascending"/>
|
||||
|
||||
<xsl:variable name="poffset_" select="0"/>
|
||||
<xsl:variable name="pcount_" select="$poffset_ + (position() -1)"/>
|
||||
|
||||
<xsl:variable name="pdir_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="(@DIR='I' or @DIR='IN' or @DIR='INPUT')">I</xsl:when>
|
||||
<xsl:when test="(@DIR='O' or @DIR='OUT' or @DIR='OUTPUT')">O</xsl:when>
|
||||
<xsl:when test="(@DIR='IO' or @DIR='INOUT')">B</xsl:when>
|
||||
<xsl:otherwise>I</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="pside_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="($pcount_ >= ($ports_per_side_ * 0) and ($pcount_ < ($ports_per_side_ * 1)))">W</xsl:when>
|
||||
<xsl:when test="($pcount_ >= ($ports_per_side_ * 1) and ($pcount_ < ($ports_per_side_ * 2)))">E</xsl:when>
|
||||
<xsl:otherwise>D</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="pdec_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="($pside_ = 'W')"><xsl:value-of select="($ports_per_side_ * 0)"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'E')"><xsl:value-of select="($ports_per_side_ * 1)"/></xsl:when>
|
||||
<xsl:otherwise>0</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="px_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="($pside_ = 'W')"><xsl:value-of select="($BLKD_PRTCHAN_W - $IOP_W)"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'S')"><xsl:value-of select="($h_ofs_ + (((position() - 1) - $pdec_) * ($IOP_SPC + $IOP_W)) - 2)"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'E')"><xsl:value-of select="($BLKD_PRTCHAN_W + ($BLKD_IORCHAN_W * 2) + $drawarea_w)"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'N')"><xsl:value-of select="($h_ofs_ + (((position() - 1) - $pdec_) * ($IOP_SPC + $IOP_W)))"/></xsl:when>
|
||||
<xsl:otherwise>0</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="py_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="($pside_ = 'W')"><xsl:value-of select="($v_ofs_ + (((position() - 1) - $pdec_) * ($IOP_SPC + $IOP_H)))"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'S')"><xsl:value-of select="($BLKD_PRTCHAN_H + ($BLKD_IORCHAN_H * 2) + $drawarea_h)"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'E')"><xsl:value-of select="($v_ofs_ + (((position() - 1) - $pdec_) * ($IOP_SPC + $IOP_H)))"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'N')"><xsl:value-of select="($BLKD_PRTCHAN_H - $IOP_H)"/></xsl:when>
|
||||
<xsl:otherwise>0</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
|
||||
<xsl:variable name="prot_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="(($pside_ = 'W') and ($pdir_ = 'I'))">0</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'S') and ($pdir_ = 'I'))">-90</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'E') and ($pdir_ = 'I'))">180</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'N') and ($pdir_ = 'I'))">90</xsl:when>
|
||||
|
||||
<xsl:when test="(($pside_ = 'W') and ($pdir_ = 'O'))">180</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'S') and ($pdir_ = 'O'))">90</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'E') and ($pdir_ = 'O'))">0</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'N') and ($pdir_ = 'O'))">-90</xsl:when>
|
||||
|
||||
<xsl:when test="(($pside_ = 'W') and ($pdir_ = 'B'))">0</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'S') and ($pdir_ = 'B'))">0</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'E') and ($pdir_ = 'B'))">0</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'N') and ($pdir_ = 'B'))">0</xsl:when>
|
||||
<xsl:otherwise>0</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
|
||||
<xsl:variable name="txo_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="($pside_ = 'W')">-10</xsl:when>
|
||||
<xsl:when test="($pside_ = 'S')">6</xsl:when>
|
||||
<xsl:when test="($pside_ = 'E')"><xsl:value-of select="(($IOP_W * 2) - 4)"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'N')">6</xsl:when>
|
||||
<xsl:otherwise>0</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="tyo_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="($pside_ = 'W')"><xsl:value-of select="ceiling($IOP_H div 2) + 6"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'S')"><xsl:value-of select="($IOP_H * 2) + 4"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'E')"><xsl:value-of select="ceiling($IOP_H div 2) + 6"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'N')">-2</xsl:when>
|
||||
<xsl:otherwise>0</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:if test="$pdir_ = 'B'">
|
||||
<use x="{$px_}"
|
||||
y="{$py_}"
|
||||
id="{@NAME}"
|
||||
xlink:href="#G_BIPort"
|
||||
transform="rotate({$prot_},{$px_ + ceiling($IOP_W div 2)},{$py_ + ceiling($IOP_H div 2)})"/>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="(($pside_ = 'S') and not($pdir_ = 'B'))">
|
||||
<rect
|
||||
x="{$px_}"
|
||||
y="{$py_}"
|
||||
width= "{$IOP_W}"
|
||||
height="{$IOP_H}" style="stroke:{$COL_IORING}; stroke-width:1"/>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="not($pdir_ = 'B')">
|
||||
<use x="{$px_}"
|
||||
y="{$py_}"
|
||||
id="{@NAME}"
|
||||
xlink:href="#G_IOPort"
|
||||
transform="rotate({$prot_},{$px_ + ceiling($IOP_W div 2)},{$py_ + ceiling($IOP_H div 2)})"/>
|
||||
</xsl:if>
|
||||
|
||||
<text class="iopnumb"
|
||||
x="{$px_ + $txo_}"
|
||||
y="{$py_ + $tyo_}">
|
||||
<xsl:value-of select="@INDEX"/><tspan class="iopgrp"><xsl:value-of select="@GROUP"/></tspan>
|
||||
</text>
|
||||
|
||||
</xsl:for-each>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="Draw_IOPorts_4Sides">
|
||||
|
||||
<xsl:param name="drawarea_h" select="500"/>
|
||||
<xsl:param name="drawarea_w" select="500"/>
|
||||
|
||||
<xsl:variable name="ports_count_" select="count(EXTERNALPORTS/PORT)"/>
|
||||
<xsl:variable name="ports_per_side_" select="ceiling($ports_count_ div 4)"/>
|
||||
|
||||
<xsl:variable name="h_ofs_">
|
||||
<xsl:value-of select="$BLKD_PRTCHAN_W + ceiling(($drawarea_w - (($ports_per_side_ * $IOP_W) + (($ports_per_side_ - 1) * $IOP_SPC))) div 2)"/>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="v_ofs_">
|
||||
<xsl:value-of select="$BLKD_PRTCHAN_H + ceiling(($drawarea_h - (($ports_per_side_ * $IOP_H) + (($ports_per_side_ - 1) * $IOP_SPC))) div 2)"/>
|
||||
</xsl:variable>
|
||||
|
||||
|
||||
<xsl:for-each select="EXTERNALPORTS/PORT">
|
||||
<xsl:sort data-type="number" select="@INDEX" order="ascending"/>
|
||||
|
||||
<xsl:variable name="poffset_" select="0"/>
|
||||
<xsl:variable name="pcount_" select="$poffset_ + (position() -1)"/>
|
||||
|
||||
<xsl:variable name="pdir_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="(@DIR='I' or @DIR='IN' or @DIR='INPUT')">I</xsl:when>
|
||||
<xsl:when test="(@DIR='O' or @DIR='OUT' or @DIR='OUTPUT')">O</xsl:when>
|
||||
<xsl:when test="(@DIR='IO' or @DIR='INOUT')">B</xsl:when>
|
||||
<xsl:otherwise>I</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="pside_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="($pcount_ >= ($ports_per_side_ * 0) and ($pcount_ < ($ports_per_side_ * 1)))">W</xsl:when>
|
||||
<xsl:when test="($pcount_ >= ($ports_per_side_ * 1) and ($pcount_ < ($ports_per_side_ * 2)))">S</xsl:when>
|
||||
<xsl:when test="($pcount_ >= ($ports_per_side_ * 2) and ($pcount_ < ($ports_per_side_ * 3)))">E</xsl:when>
|
||||
<xsl:when test="($pcount_ >= ($ports_per_side_ * 3) and ($pcount_ < ($ports_per_side_ * 4)))">N</xsl:when>
|
||||
<xsl:otherwise>D</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="pdec_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="($pside_ = 'W')"><xsl:value-of select="($ports_per_side_ * 0)"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'S')"><xsl:value-of select="($ports_per_side_ * 1)"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'E')"><xsl:value-of select="($ports_per_side_ * 2)"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'N')"><xsl:value-of select="($ports_per_side_ * 3)"/></xsl:when>
|
||||
<xsl:otherwise>0</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="px_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="($pside_ = 'W')"><xsl:value-of select="($BLKD_PRTCHAN_W - $IOP_W)"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'S')"><xsl:value-of select="($h_ofs_ + (((position() - 1) - $pdec_) * ($IOP_SPC + $IOP_W)) - 2)"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'E')"><xsl:value-of select="($BLKD_PRTCHAN_W + ($BLKD_IORCHAN_W * 2) + $drawarea_w)"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'N')"><xsl:value-of select="($h_ofs_ + (((position() - 1) - $pdec_) * ($IOP_SPC + $IOP_W)))"/></xsl:when>
|
||||
<xsl:otherwise>0</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="py_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="($pside_ = 'W')"><xsl:value-of select="($v_ofs_ + (((position() - 1) - $pdec_) * ($IOP_SPC + $IOP_H)))"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'S')"><xsl:value-of select="($BLKD_PRTCHAN_H + ($BLKD_IORCHAN_H * 2) + $drawarea_h)"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'E')"><xsl:value-of select="($v_ofs_ + (((position() - 1) - $pdec_) * ($IOP_SPC + $IOP_H)))"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'N')"><xsl:value-of select="($BLKD_PRTCHAN_H - $IOP_H)"/></xsl:when>
|
||||
<xsl:otherwise>0</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
|
||||
<xsl:variable name="prot_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="(($pside_ = 'W') and ($pdir_ = 'I'))">0</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'S') and ($pdir_ = 'I'))">-90</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'E') and ($pdir_ = 'I'))">180</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'N') and ($pdir_ = 'I'))">90</xsl:when>
|
||||
|
||||
<xsl:when test="(($pside_ = 'W') and ($pdir_ = 'O'))">180</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'S') and ($pdir_ = 'O'))">90</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'E') and ($pdir_ = 'O'))">0</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'N') and ($pdir_ = 'O'))">-90</xsl:when>
|
||||
|
||||
<xsl:when test="(($pside_ = 'W') and ($pdir_ = 'B'))">0</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'S') and ($pdir_ = 'B'))">0</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'E') and ($pdir_ = 'B'))">0</xsl:when>
|
||||
<xsl:when test="(($pside_ = 'N') and ($pdir_ = 'B'))">0</xsl:when>
|
||||
<xsl:otherwise>0</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="txo_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="($pside_ = 'W')">-14</xsl:when>
|
||||
<xsl:when test="($pside_ = 'S')">8</xsl:when>
|
||||
<xsl:when test="($pside_ = 'E')"><xsl:value-of select="(($IOP_W * 2) - 4)"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'N')">8</xsl:when>
|
||||
<xsl:otherwise>0</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="tyo_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="($pside_ = 'W')"><xsl:value-of select="ceiling($IOP_H div 2) + 6"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'S')"><xsl:value-of select="($IOP_H * 2) + 4"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'E')"><xsl:value-of select="ceiling($IOP_H div 2) + 6"/></xsl:when>
|
||||
<xsl:when test="($pside_ = 'N')">-2</xsl:when>
|
||||
<xsl:otherwise>0</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:if test="$pdir_ = 'B'">
|
||||
<use x="{$px_}"
|
||||
y="{$py_}"
|
||||
id="{@NAME}"
|
||||
xlink:href="#G_BIPort"
|
||||
transform="rotate({$prot_},{$px_ + ceiling($IOP_W div 2)},{$py_ + ceiling($IOP_H div 2)})"/>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="(($pside_ = 'S') and not($pdir_ = 'B'))">
|
||||
<rect
|
||||
x="{$px_}"
|
||||
y="{$py_}"
|
||||
width= "{$IOP_W}"
|
||||
height="{$IOP_H}" style="stroke:{$COL_IORING}; stroke-width:1"/>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test="not($pdir_ = 'B')">
|
||||
<use x="{$px_}"
|
||||
y="{$py_}"
|
||||
id="{@NAME}"
|
||||
xlink:href="#G_IOPort"
|
||||
transform="rotate({$prot_},{$px_ + ceiling($IOP_W div 2)},{$py_ + ceiling($IOP_H div 2)})"/>
|
||||
</xsl:if>
|
||||
|
||||
<text class="iopnumb"
|
||||
x="{$px_ + $txo_}"
|
||||
y="{$py_ + $tyo_}"><xsl:value-of select="@INDEX"/><tspan class="iopgrp"><xsl:value-of select="@GROUP"/></tspan>
|
||||
</text>
|
||||
|
||||
</xsl:for-each>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="Define_ExtPortsTable">
|
||||
|
||||
<!--
|
||||
<xsl:if test="$oriented_= 'WEST'"><xsl:value-of select="$proc2procX_ - (string-length(@BUSNAME) * 6)"/></xsl:if>
|
||||
<xsl:variable name="max_name_" select="math:max(string-length(/EDKSYSTEM/EXTERNALPORTS/PORT/@NAME))"/>
|
||||
<xsl:variable name="max_sgnm_" select="math:max(string-length(/EDKSYSTEM/EXTERNALPORTS/PORT/@SIGNAME))"/>
|
||||
|
||||
<xsl:message>MAX NAME <xsl:value-of select="$max_name_"/></xsl:message>
|
||||
<xsl:message>MAX SIG <xsl:value-of select="$max_sgnm_"/></xsl:message>
|
||||
-->
|
||||
|
||||
<xsl:variable name="ext_ports_">
|
||||
<xsl:if test="not(/EDKSYSTEM/EXTERNALPORTS/PORT)">
|
||||
<EXTPORT NAME="__none__" SIGNAME="__none_" NAMELEN="0" SIGLEN="0"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="/EDKSYSTEM/EXTERNALPORTS/PORT">
|
||||
<xsl:for-each select="/EDKSYSTEM/EXTERNALPORTS/PORT">
|
||||
<EXTPORT NAME="{@NAME}" SIGNAME="{@SIGNAME}" NAMELEN="{string-length(@NAME)}" SIGLEN="{string-length(@SIGNAME)}"/>
|
||||
</xsl:for-each>
|
||||
</xsl:if>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="max_name_" select="math:max(exsl:node-set($ext_ports_)/EXTPORT/@NAMELEN)"/>
|
||||
<xsl:variable name="max_sign_" select="math:max(exsl:node-set($ext_ports_)/EXTPORT/@SIGLEN)"/>
|
||||
|
||||
<xsl:variable name="h_font_" select="12"/>
|
||||
<xsl:variable name="w_font_" select="12"/>
|
||||
|
||||
<xsl:variable name="w_num_" select="($w_font_ * 5)"/>
|
||||
<xsl:variable name="w_dir_" select="($w_font_ * 3)"/>
|
||||
<xsl:variable name="w_lsbmsb_" select="($w_font_ * 9)"/>
|
||||
<xsl:variable name="w_attr_" select="($w_font_ * 4)"/>
|
||||
<xsl:variable name="w_name_" select="($w_font_ * $max_name_)"/>
|
||||
<xsl:variable name="w_sign_" select="($w_font_ * $max_sign_)"/>
|
||||
|
||||
<xsl:variable name="w_table_" select="($w_num_ + $w_name_ + $w_dir_ + $w_sign_ + $w_attr_)"/>
|
||||
|
||||
<!--
|
||||
<xsl:message>MAX NAME <xsl:value-of select="$max_name_"/></xsl:message>
|
||||
<xsl:message>MAX SIG <xsl:value-of select="$max_sign_"/></xsl:message>
|
||||
|
||||
<xsl:message>W NUM <xsl:value-of select="$w_num_"/></xsl:message>
|
||||
<xsl:message>W DIR <xsl:value-of select="$w_dir_"/></xsl:message>
|
||||
<xsl:message>W NAM <xsl:value-of select="$w_name_"/></xsl:message>
|
||||
<xsl:message>W SIG <xsl:value-of select="$w_sign_"/></xsl:message>
|
||||
<xsl:message>W ATT <xsl:value-of select="$w_attr_"/></xsl:message>
|
||||
|
||||
<xsl:message>W TABLE <xsl:value-of select="$w_table_"/></xsl:message>
|
||||
-->
|
||||
|
||||
<symbol id="BlkDiagram_ExtPortsTable">
|
||||
<rect
|
||||
x="0"
|
||||
y="0"
|
||||
width= "{$w_table_}"
|
||||
height="{$h_font_}" style="fill:{$COL_RED}; stroke:none; stroke-width:1"/>
|
||||
</symbol>
|
||||
|
||||
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<!-- ======================= END MAIN BLOCK =========================== -->
|
||||
|
||||
</xsl:stylesheet>
|
|
@ -0,0 +1,398 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<xsl:stylesheet version="1.0"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:math="http://exslt.org/math"
|
||||
xmlns:exsl="http://exslt.org/common"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
extension-element-prefixes="math">
|
||||
|
||||
<xsl:output method="xml"
|
||||
version="1.0"
|
||||
encoding="UTF-8"
|
||||
indent="yes"
|
||||
doctype-public="-//W3C//DTD SVG 1.0//EN"
|
||||
doctype-system="http://www.w3.org/TR/SVG/DTD/svg10.dtd"/>
|
||||
|
||||
|
||||
<!-- ======================= DEF BLOCK =================================== -->
|
||||
<xsl:template name="Define_AllStacks">
|
||||
|
||||
<xsl:for-each select="/EDKSYSTEM/BLKDSHAPES/BCLANESPACES/BCLANESPACE[(@EAST < /EDKSYSTEM/BLKDSHAPES/@STACK_HORIZ_WIDTH)]">
|
||||
|
||||
<xsl:call-template name="Define_Stack">
|
||||
<xsl:with-param name="stackIdx" select="@EAST"/>
|
||||
</xsl:call-template>
|
||||
|
||||
</xsl:for-each>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="Define_Stack">
|
||||
<xsl:param name="stackIdx" select="100"/>
|
||||
|
||||
<!-- Define the stack's peripheral shapes-->
|
||||
<xsl:for-each select="/EDKSYSTEM/BLKDSHAPES/CMPLXSHAPES/CMPLXSHAPE[((@STACK_HORIZ_INDEX = $stackIdx) and not(@MODCLASS = 'MEMORY_UNIT'))]">
|
||||
|
||||
<xsl:for-each select="MODULE">
|
||||
<xsl:variable name="modInst_" select="@INSTANCE"/>
|
||||
<xsl:variable name="modType_" select="/EDKSYSTEM/MODULES/MODULE[(@INSTANCE=$modInst_)]/@MODTYPE"/>
|
||||
<xsl:call-template name="Define_Peripheral">
|
||||
<xsl:with-param name="modInst" select="$modInst_"/>
|
||||
<xsl:with-param name="modType" select="$modType_"/>
|
||||
<xsl:with-param name="shapeId" select="../@SHAPE_ID"/>
|
||||
<xsl:with-param name="horizIdx" select="../@STACK_HORIZ_INDEX"/>
|
||||
<xsl:with-param name="vertiIdx" select="../@SHAPE_VERTI_INDEX"/>
|
||||
</xsl:call-template>
|
||||
</xsl:for-each>
|
||||
|
||||
</xsl:for-each>
|
||||
|
||||
<!-- Define the stack's memory shapes-->
|
||||
<xsl:for-each select="/EDKSYSTEM/BLKDSHAPES/CMPLXSHAPES/CMPLXSHAPE[((@STACK_HORIZ_INDEX = $stackIdx) and (@MODCLASS='MEMORY_UNIT'))]">
|
||||
<xsl:call-template name="Define_MemoryUnit">
|
||||
<xsl:with-param name="shapeId" select="@SHAPE_ID"/>
|
||||
</xsl:call-template>
|
||||
</xsl:for-each>
|
||||
|
||||
|
||||
<!-- Define the stack's processors-->
|
||||
<xsl:for-each select="/EDKSYSTEM/BLKDSHAPES/PROCSHAPES/MODULE[@INSTANCE and @BIFS_W and @BIFS_H and (@STACK_HORIZ_INDEX = $stackIdx)]">
|
||||
<xsl:call-template name="Define_Processor"/>
|
||||
</xsl:for-each>
|
||||
|
||||
<!-- Make an inventory of all the things in this processor's stack -->
|
||||
<xsl:variable name="pstackW_">
|
||||
<xsl:call-template name="_calc_Stack_Width">
|
||||
<xsl:with-param name="stackIdx" select="$stackIdx"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="pstackH_">
|
||||
<xsl:call-template name="_calc_Stack_Height">
|
||||
<xsl:with-param name="stackIdx" select="$stackIdx"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="procW_" select="$periMOD_W"/>
|
||||
<xsl:variable name="procX_" select="(ceiling($pstackW_ div 2) - ceiling($procW_ div 2))"/>
|
||||
|
||||
<xsl:variable name="numSBSs_" select="count(/EDKSYSTEM/BLKDSHAPES/SBSSHAPES/MODULE)"/>
|
||||
<xsl:variable name="sbs_H_" select="($numSBSs_ * $SBS_LANE_H)"/>
|
||||
<xsl:variable name="sbsGap_" select="($PROC2SBS_GAP + $sbs_H_)"/>
|
||||
|
||||
<xsl:variable name="stack_name_">
|
||||
<xsl:call-template name="_gen_Stack_Name">
|
||||
<xsl:with-param name="horizIdx" select="$stackIdx"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<!--
|
||||
<xsl:message>Horiz index<xsl:value-of select="$stackIdx"/></xsl:message>
|
||||
<xsl:message>Drawing stack <xsl:value-of select="$stack_name_"/></xsl:message>
|
||||
-->
|
||||
|
||||
<!-- Now use all this stuff to draw the stack-->
|
||||
<symbol id="{$stack_name_}">
|
||||
<rect x="0"
|
||||
y="0"
|
||||
rx="6"
|
||||
ry="6"
|
||||
width = "{$pstackW_}"
|
||||
height= "{$pstackH_}"
|
||||
style="fill:{$COL_BG}; stroke:none;"/>
|
||||
|
||||
|
||||
<!-- First draw the the processor's peripherals-->
|
||||
<xsl:for-each select="/EDKSYSTEM/BLKDSHAPES/CMPLXSHAPES/CMPLXSHAPE[(@STACK_HORIZ_INDEX = $stackIdx)]">
|
||||
<xsl:sort select="@STACK_VERTI_INDEX" data-type="number"/>
|
||||
|
||||
<xsl:variable name="shapeW_" select="(@MODS_W * $periMOD_W)"/>
|
||||
<xsl:variable name="shapeX_" select="(ceiling($pstackW_ div 2) - ceiling($shapeW_ div 2))"/>
|
||||
<xsl:variable name="shapeY_">
|
||||
<xsl:call-template name="_calc_Stack_Shape_Y">
|
||||
<xsl:with-param name="horizIdx" select="@STACK_HORIZ_INDEX"/>
|
||||
<xsl:with-param name="vertiIdx" select="@SHAPE_VERTI_INDEX"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="stack_SymName_">
|
||||
<xsl:call-template name="_gen_Stack_SymbolName">
|
||||
<xsl:with-param name="horizIdx" select="@STACK_HORIZ_INDEX"/>
|
||||
<xsl:with-param name="vertiIdx" select="@SHAPE_VERTI_INDEX"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<!--
|
||||
<xsl:message>Drawing stack peripheral <xsl:value-of select="$stack_SymName_"/> at <xsl:value-of select="$shapeY_"/></xsl:message>
|
||||
-->
|
||||
|
||||
<use x="{$shapeX_}" y="{$shapeY_}" xlink:href="#{$stack_SymName_}"/>
|
||||
|
||||
</xsl:for-each>
|
||||
|
||||
|
||||
<!-- Then draw the slave buckets for the shared busses that this processor is master to -->
|
||||
<xsl:for-each select="/EDKSYSTEM/BLKDSHAPES/SBSBUCKETS/SBSBUCKET[(@STACK_HORIZ_INDEX = $stackIdx)]">
|
||||
<xsl:sort select="@SHAPE_VERTI_INDEX" data-type="number"/>
|
||||
|
||||
<xsl:variable name="bucketW_" select="(($MOD_BKTLANE_W * 2) + (($periMOD_W * @MODS_W) + ($MOD_BUCKET_G * (@MODS_W - 1))))"/>
|
||||
<xsl:variable name="bucketX_" select="(ceiling($pstackW_ div 2) - ceiling($bucketW_ div 2))"/>
|
||||
|
||||
<xsl:variable name="bucketY_">
|
||||
<xsl:call-template name="_calc_Stack_Shape_Y">
|
||||
<xsl:with-param name="horizIdx" select="@STACK_HORIZ_INDEX"/>
|
||||
<xsl:with-param name="vertiIdx" select="@SHAPE_VERTI_INDEX"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<!--
|
||||
<xsl:message>SBS Bucket Y <xsl:value-of select="$bucketY_"/></xsl:message>
|
||||
-->
|
||||
|
||||
<use x="{$bucketX_}" y="{$bucketY_}" xlink:href="#sbsbucket_{@BUSNAME}"/>
|
||||
|
||||
<text class="ipclass"
|
||||
x="{$bucketX_}"
|
||||
y="{$bucketY_ - 4}">SLAVES OF <xsl:value-of select="@BUSNAME"/></text>
|
||||
</xsl:for-each>
|
||||
|
||||
<!-- Then draw the the processor itself -->
|
||||
<xsl:for-each select="/EDKSYSTEM/BLKDSHAPES/PROCSHAPES/MODULE[(@STACK_HORIZ_INDEX = $stackIdx)]">
|
||||
<xsl:sort select="@SHAPE_VERTI_INDEX" data-type="number"/>
|
||||
|
||||
<xsl:variable name="procY_">
|
||||
<xsl:call-template name="_calc_Stack_Shape_Y">
|
||||
<xsl:with-param name="horizIdx" select="@STACK_HORIZ_INDEX"/>
|
||||
<xsl:with-param name="vertiIdx" select="@SHAPE_VERTI_INDEX"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="stack_SymName_">
|
||||
<xsl:call-template name="_gen_Stack_SymbolName">
|
||||
<xsl:with-param name="horizIdx" select="@STACK_HORIZ_INDEX"/>
|
||||
<xsl:with-param name="vertiIdx" select="@SHAPE_VERTI_INDEX"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<use x="{$procX_}" y="{$procY_}" xlink:href="#{$stack_SymName_}"/>
|
||||
<!--
|
||||
-->
|
||||
|
||||
<xsl:if test = "not(@IS_LIKEPROC)">
|
||||
<text class="ipclass"
|
||||
x="{$procX_}"
|
||||
y="{$procY_ - 4}">PROCESSOR</text>
|
||||
</xsl:if>
|
||||
|
||||
<xsl:if test = "@IS_LIKEPROC = 'TRUE'">
|
||||
<text class="ipclass"
|
||||
x="{$procX_}"
|
||||
y="{$procY_ - 4}">USER MODULE</text>
|
||||
</xsl:if>
|
||||
|
||||
</xsl:for-each>
|
||||
</symbol>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="Define_Processor">
|
||||
<xsl:param name="procInst" select="@INSTANCE"/>
|
||||
<xsl:param name="modType" select="/EDKSYSTEM/MODULES/MODULE[@INSTANCE=$procInst]/@MODTYPE"/>
|
||||
<!--
|
||||
<xsl:param name="procType" select="/EDKSYSTEM/MODULES/MODULE[@INSTANCE=$procInst]/@PROCTYPE"/>
|
||||
-->
|
||||
|
||||
<xsl:variable name="label_y_">
|
||||
<xsl:value-of select="$MOD_LANE_H"/>
|
||||
</xsl:variable>
|
||||
|
||||
<!--
|
||||
<xsl:message>The proctype is <xsl:value-of select="$procType"/></xsl:message>
|
||||
-->
|
||||
|
||||
<xsl:variable name="procH_" select="(($MOD_LANE_H * 2) + (($BIF_H + $MOD_BIF_GAP_V) * @BIFS_H) + ($MOD_LABEL_H + $MOD_BIF_GAP_V))"/>
|
||||
<xsl:variable name="procW_" select="(($MOD_LANE_W * 2) + (($BIF_W * @BIFS_W) + $MOD_BIF_GAP_H))"/>
|
||||
|
||||
<xsl:variable name="procColor">
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains($modType,'microblaze')"><xsl:value-of select="$COL_PROC_BG_MB"/></xsl:when>
|
||||
<xsl:when test="contains($modType,'ppc')"><xsl:value-of select="$COL_PROC_BG_PP"/></xsl:when>
|
||||
<!--
|
||||
<xsl:when test="$procType = 'MICROBLAZE'"><xsl:value-of select="$COL_PROC_BG_MB"/></xsl:when>
|
||||
<xsl:when test="$procType = 'POWERPC'"><xsl:value-of select="$COL_PROC_BG_PP"/></xsl:when>
|
||||
-->
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="$COL_PROC_BG_USR"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<!--
|
||||
<xsl:message>The proc color is <xsl:value-of select="$procColor"/></xsl:message>
|
||||
-->
|
||||
|
||||
|
||||
<xsl:variable name="procName_">
|
||||
<xsl:call-template name="_gen_Stack_SymbolName">
|
||||
<xsl:with-param name="horizIdx" select="@STACK_HORIZ_INDEX"/>
|
||||
<xsl:with-param name="vertiIdx" select="@SHAPE_VERTI_INDEX"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<!--
|
||||
<xsl:message>The proc name is <xsl:value-of select="$procName_"/></xsl:message>
|
||||
-->
|
||||
|
||||
<symbol id="{$procName_}">
|
||||
|
||||
<rect x="0"
|
||||
y="0"
|
||||
rx="6"
|
||||
ry="6"
|
||||
width = "{$procW_}"
|
||||
height= "{$procH_}"
|
||||
style="fill:{$procColor}; stroke:{$COL_WHITE}; stroke-width:2"/>
|
||||
|
||||
|
||||
<rect x="{ceiling($procW_ div 2) - ceiling($MOD_LABEL_W div 2)}"
|
||||
y="{$MOD_LANE_H}"
|
||||
rx="3"
|
||||
ry="3"
|
||||
width= "{$MOD_LABEL_W}"
|
||||
height="{$MOD_LABEL_H}"
|
||||
style="fill:{$COL_WHITE}; stroke:none;"/>
|
||||
|
||||
<text class="bciptype"
|
||||
x="{ceiling($procW_ div 2)}"
|
||||
y="{$MOD_LANE_H + 8}">
|
||||
<xsl:value-of select="$modType"/>
|
||||
</text>
|
||||
|
||||
<text class="bciplabel"
|
||||
x="{ceiling($procW_ div 2)}"
|
||||
y="{$MOD_LANE_H + 16}">
|
||||
<xsl:value-of select="$procInst"/>
|
||||
</text>
|
||||
|
||||
|
||||
<xsl:if test="/EDKSYSTEM/MODULES/MODULE[@INSTANCE=$procInst]/@GROUP">
|
||||
|
||||
<rect x="{ceiling($periMOD_W div 2) - ceiling($MOD_LABEL_W div 2)}"
|
||||
y="{$MOD_LANE_H + $BIF_H + ceiling($BIF_H div 3) - 2}"
|
||||
rx="3"
|
||||
ry="3"
|
||||
width= "{$MOD_LABEL_W}"
|
||||
height="{$BIF_H}"
|
||||
style="fill:{$COL_IORING_LT}; stroke:none;"/>
|
||||
|
||||
|
||||
<text class="ioplblgrp" x="{ceiling($periMOD_W div 2)}" y="{$MOD_LANE_H + $BIF_H + ceiling($BIF_H div 3) + 12}">
|
||||
<xsl:value-of select="/EDKSYSTEM/MODULES/MODULE[@INSTANCE=$procInst]/@GROUP"/>
|
||||
</text>
|
||||
|
||||
</xsl:if>
|
||||
|
||||
|
||||
<xsl:for-each select="/EDKSYSTEM/MODULES/MODULE[(@INSTANCE = $procInst)]/BUSINTERFACE[(@BIF_X and @BIF_Y)]">
|
||||
|
||||
<xsl:variable name="bif_busstd_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="@BUSSTD">
|
||||
<xsl:value-of select="@BUSSTD"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="'TRS'"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="bif_buscol_">
|
||||
<xsl:call-template name="BusType2Color">
|
||||
<xsl:with-param name="busType" select="$bif_busstd_"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
|
||||
<xsl:variable name="bif_name_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="string-length(@NAME) <= 5">
|
||||
<xsl:value-of select="@NAME"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="substring(@NAME,0,5)"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="bif_x_" select="(($BIF_W * @BIF_X) + ($MOD_BIF_GAP_H * @BIF_X) + ($MOD_LANE_W * 1))"/>
|
||||
<xsl:variable name="bif_y_" select="((($BIF_H + $MOD_BIF_GAP_V) * @BIF_Y) + ($MOD_LANE_H + $MOD_LABEL_H + $MOD_BIF_GAP_V))"/>
|
||||
|
||||
<xsl:variable name="horz_line_y_" select="($bif_y_ + ceiling($BIFC_H div 2))"/>
|
||||
|
||||
<xsl:variable name="horz_line_x1_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="@BIF_X = '0'">0</xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="($periMOD_W - $MOD_LANE_W)"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:variable name="horz_line_x2_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="@BIF_X = '0'"><xsl:value-of select="$MOD_LANE_W"/></xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="$periMOD_W + 1"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
|
||||
<line x1="{$horz_line_x1_}"
|
||||
y1="{$horz_line_y_ - 2}"
|
||||
x2="{$horz_line_x2_}"
|
||||
y2="{$horz_line_y_ - 2}"
|
||||
style="stroke:{$bif_buscol_};stroke-width:1"/>
|
||||
|
||||
<use x="{$bif_x_}" y="{$bif_y_}" xlink:href="#{$bif_busstd_}_Bif"/>
|
||||
|
||||
<text class="biflabel"
|
||||
x="{$bif_x_ + ceiling($BIF_W div 2)}"
|
||||
y="{$bif_y_ + ceiling($BIF_H div 2) + 3}">
|
||||
<xsl:value-of select="$bif_name_"/>
|
||||
</text>
|
||||
|
||||
|
||||
|
||||
</xsl:for-each>
|
||||
|
||||
<xsl:variable name="interrupt_cntlr_">
|
||||
<xsl:choose>
|
||||
<xsl:when test="/EDKSYSTEM/MODULES/MODULE[(@INSTANCE=$procInst)]/@INTERRUPT_CNTLR">
|
||||
<xsl:value-of select="/EDKSYSTEM/MODULES/MODULE[(@INSTANCE=$procInst)]/@INTERRUPT_CNTLR"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>"_no_interrupt_cntlr_"</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
|
||||
<!--
|
||||
<xsl:message> The intc index should <xsl:value-of select="$interrupt_cntlr_"/></xsl:message>
|
||||
<xsl:message> The intc index is <xsl:value-of select="/EDKSYSTEM/MODULES/MODULE[(@INSTANCE = $interrupt_cntlr_)]/@INTCINDEX"/></xsl:message>
|
||||
-->
|
||||
<xsl:if test="/EDKSYSTEM/MODULES/MODULE[(@INSTANCE = $interrupt_cntlr_)]/@INTCINDEX">
|
||||
|
||||
<xsl:variable name="intr_col_">
|
||||
<xsl:call-template name="intcIdx2Color">
|
||||
<xsl:with-param name="intcIdx" select="/EDKSYSTEM/MODULES/MODULE[(@INSTANCE = $interrupt_cntlr_)]/@INTCINDEX"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:call-template name="_draw_InterruptedProc">
|
||||
<xsl:with-param name="intr_col" select="$intr_col_"/>
|
||||
<xsl:with-param name="intr_x" select="($periMOD_W - ceiling($INTR_W div 2))"/>
|
||||
<xsl:with-param name="intr_y" select="3"/>
|
||||
<xsl:with-param name="intr_idx" select="/EDKSYSTEM/MODULES/MODULE[(@INSTANCE = $interrupt_cntlr_)]/@INTCINDEX"/>
|
||||
</xsl:call-template>
|
||||
</xsl:if>
|
||||
|
||||
</symbol>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,131 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<xsl:stylesheet version="1.0"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:exsl="http://exslt.org/common"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
|
||||
<xsl:variable name="COL_RED" select="'#AA0000'"/>
|
||||
<xsl:variable name="COL_GRAY" select="'#E1E1E1'"/>
|
||||
<xsl:variable name="COL_BLACK" select="'#000000'"/>
|
||||
<xsl:variable name="COL_WHITE" select="'#FFFFFF'"/>
|
||||
<xsl:variable name="COL_YELLOW" select="'#FFFFDD'"/>
|
||||
<xsl:variable name="COL_YELLOW_LT" select="'#FFFFEE'"/>
|
||||
|
||||
<xsl:variable name="COL_BG" select="'#CCCCCC'"/>
|
||||
<xsl:variable name="COL_BG_LT" select="'#EEEEEE'"/>
|
||||
<xsl:variable name="COL_UNK_BG" select="'#DDDDDD'"/>
|
||||
<xsl:variable name="COL_PROC_BG" select="'#FFCCCC'"/>
|
||||
<xsl:variable name="COL_PROC_BG_MB" select="'#222222'"/>
|
||||
<xsl:variable name="COL_PROC_BG_PP" select="'#90001C'"/>
|
||||
<xsl:variable name="COL_PROC_BG_USR" select="'#666699'"/>
|
||||
|
||||
<xsl:variable name="COL_MOD_BG" select="'#F0F0F0'"/>
|
||||
<xsl:variable name="COL_MOD_SPRT" select="'#888888'"/>
|
||||
<xsl:variable name="COL_MOD_MPRT" select="'#888888'"/>
|
||||
|
||||
<xsl:variable name="COL_INTR_0" select="'#FF9900'"/>
|
||||
<xsl:variable name="COL_INTR_1" select="'#00CCCC'"/>
|
||||
<xsl:variable name="COL_INTR_2" select="'#33FF33'"/>
|
||||
<xsl:variable name="COL_INTR_3" select="'#FF00CC'"/>
|
||||
<xsl:variable name="COL_INTR_4" select="'#99FF33'"/>
|
||||
<xsl:variable name="COL_INTR_5" select="'#0066CC'"/>
|
||||
<xsl:variable name="COL_INTR_6" select="'#9933FF'"/>
|
||||
<xsl:variable name="COL_INTR_7" select="'#3300FF'"/>
|
||||
<xsl:variable name="COL_INTR_8" select="'#00FF33'"/>
|
||||
<xsl:variable name="COL_INTR_9" select="'#FF3333'"/>
|
||||
|
||||
|
||||
<xsl:variable name="COL_IORING" select="'#000088'"/>
|
||||
<xsl:variable name="COL_IORING_LT" select="'#CCCCFF'"/>
|
||||
<xsl:variable name="COL_SYSPRT" select="'#0000BB'"/>
|
||||
|
||||
|
||||
<xsl:variable name="COL_BUSSTDS">
|
||||
|
||||
<BUSCOLOR BUSSTD="XIL" RGB="#990066" RGB_LT="#CC3399"/>
|
||||
<BUSCOLOR BUSSTD="OCM" RGB="#0000DD" RGB_LT="#9999DD"/>
|
||||
<BUSCOLOR BUSSTD="OPB" RGB="#339900" RGB_LT="#CCDDCC"/>
|
||||
<BUSCOLOR BUSSTD="LMB" RGB="#7777FF" RGB_LT="#DDDDFF"/>
|
||||
<BUSCOLOR BUSSTD="FSL" RGB="#CC00CC" RGB_LT="#FFBBFF"/>
|
||||
<BUSCOLOR BUSSTD="DCR" RGB="#6699FF" RGB_LT="#BBDDFF"/>
|
||||
<BUSCOLOR BUSSTD="FCB" RGB="#8C00FF" RGB_LT="#CCCCFF"/>
|
||||
<BUSCOLOR BUSSTD="PLB" RGB="#FF5500" RGB_LT="#FFBB00"/>
|
||||
<BUSCOLOR BUSSTD="PLBV46" RGB="#BB9955" RGB_LT="#FFFFDD"/>
|
||||
<BUSCOLOR BUSSTD="PLBV46_P2P" RGB="#BB9955" RGB_LT="#FFFFDD"/>
|
||||
|
||||
<!--
|
||||
<BUSCOLOR BUSSTD="PLBV46" RGB="#9966FF" RGB_LT="#CCCCFF"/>
|
||||
<BUSCOLOR BUSSTD="PLBV46_P2P" RGB="#9966FF" RGB_LT="#CCCCFF"/>
|
||||
<BUSCOLOR BUSSTD="PLB" RGB="#FFAA33" RGB_LT="#FFEE33"/>
|
||||
<BUSCOLOR BUSSTD="PLBV46" RGB="#FF5500" RGB_LT="#FFBB00"/>
|
||||
<BUSCOLOR BUSSTD="PLBV46_P2P" RGB="#FF5500" RGB_LT="#FFBB00"/>
|
||||
-->
|
||||
|
||||
<BUSCOLOR BUSSTD="TRS" RGB="#009999" RGB_LT="#00CCCC"/>
|
||||
<BUSCOLOR BUSSTD="TRANS" RGB="#009999" RGB_LT="#00CCCC"/>
|
||||
<BUSCOLOR BUSSTD="TRANSPARENT" RGB="#009999" RGB_LT="#00CCCC"/>
|
||||
|
||||
<BUSCOLOR BUSSTD="TARGET" RGB="#009999" RGB_LT="#00CCCC"/>
|
||||
<BUSCOLOR BUSSTD="INITIATOR" RGB="#009999" RGB_LT="#00CCCC"/>
|
||||
|
||||
<BUSCOLOR BUSSTD="KEY" RGB="#444444" RGB_LT="#888888"/>
|
||||
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:template name="BusType2Color">
|
||||
<xsl:param name="busType" select="'OPB'"/>
|
||||
|
||||
<xsl:choose>
|
||||
<xsl:when test="exsl:node-set($COL_BUSSTDS)/BUSCOLOR[(@BUSSTD = $busType)]/@RGB">
|
||||
<xsl:value-of select="exsl:node-set($COL_BUSSTDS)/BUSCOLOR[(@BUSSTD = $busType)]/@RGB"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="exsl:node-set($COL_BUSSTDS)/BUSCOLOR[(@BUSSTD = 'TRS')]/@RGB"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="BusType2LightColor">
|
||||
<xsl:param name="busType" select="'OPB'"/>
|
||||
|
||||
<!--
|
||||
<xsl:message>The color of bus <xsl:value-of select="$busType"/> is <xsl:value-of select="exsl:node-set($COL_BUSSTDS)/BUSCOLOR[(@BUSSTD = $busType)]/@RGB"/>
|
||||
-->
|
||||
|
||||
<xsl:choose>
|
||||
<xsl:when test="exsl:node-set($COL_BUSSTDS)/BUSCOLOR[(@BUSSTD = $busType)]/@RGB_LT">
|
||||
<xsl:value-of select="exsl:node-set($COL_BUSSTDS)/BUSCOLOR[(@BUSSTD = $busType)]/@RGB_LT"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="exsl:node-set($COL_BUSSTDS)/BUSCOLOR[(@BUSSTD = 'TRS')]/@RGB_LT"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="intcIdx2Color">
|
||||
<xsl:param name="intcIdx" select="'0'"/>
|
||||
|
||||
<xsl:variable name="idx_" select="$intcIdx mod 9"/>
|
||||
|
||||
<xsl:choose>
|
||||
<xsl:when test="$idx_ = '0'"><xsl:value-of select="$COL_INTR_0"/></xsl:when>
|
||||
<xsl:when test="$idx_ = '1'"><xsl:value-of select="$COL_INTR_1"/></xsl:when>
|
||||
<xsl:when test="$idx_ = '2'"><xsl:value-of select="$COL_INTR_2"/></xsl:when>
|
||||
<xsl:when test="$idx_ = '3'"><xsl:value-of select="$COL_INTR_3"/></xsl:when>
|
||||
<xsl:when test="$idx_ = '4'"><xsl:value-of select="$COL_INTR_4"/></xsl:when>
|
||||
<xsl:when test="$idx_ = '5'"><xsl:value-of select="$COL_INTR_5"/></xsl:when>
|
||||
<xsl:when test="$idx_ = '6'"><xsl:value-of select="$COL_INTR_6"/></xsl:when>
|
||||
<xsl:when test="$idx_ = '7'"><xsl:value-of select="$COL_INTR_7"/></xsl:when>
|
||||
<xsl:when test="$idx_ = '8'"><xsl:value-of select="$COL_INTR_8"/></xsl:when>
|
||||
<xsl:when test="$idx_ = '9'"><xsl:value-of select="$COL_INTR_9"/></xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="$COL_INTR_0"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
</xsl:stylesheet>
|
|
@ -0,0 +1,312 @@
|
|||
text.busintlabel {
|
||||
fill: #810017;
|
||||
stroke: none;
|
||||
font-size: 7pt;
|
||||
font-style: italic;
|
||||
font-weight: 900;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.buslabel {
|
||||
fill: #CC3333;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-style: italic;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.iplabel {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-style: italic;
|
||||
font-weight: 800;
|
||||
text-anchor: middle;
|
||||
font-family: Courier Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.iptype {
|
||||
fill: #AA0017;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-style: italic;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.ipclass {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 7pt;
|
||||
font-style: normal;
|
||||
font-weight: bold;
|
||||
text-anchor: start;
|
||||
font-family: Times Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.procclass {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 7pt;
|
||||
font-style: normal;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Times Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
|
||||
text.portlabel {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-style: normal;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.ipdbiflbl {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-style: normal;
|
||||
font-weight: bold;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.mmMHeader {
|
||||
fill: #FFFFFF;
|
||||
stroke: none;
|
||||
font-size: 10pt;
|
||||
font-style: normal;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.mmSHeader {
|
||||
fill: #810017;
|
||||
stroke: none;
|
||||
font-size: 10pt;
|
||||
font-style: normal;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
|
||||
|
||||
text.dbglabel {
|
||||
fill: #555555;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
text-anchor: middle;
|
||||
font-family: Times Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.iopnumb {
|
||||
fill: #555555;
|
||||
stroke: none;
|
||||
font-size: 10pt;
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.ioplblgrp {
|
||||
fill: #000088;
|
||||
stroke: none;
|
||||
font-size: 10pt;
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
|
||||
tspan.iopgrp {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
text-anchor: middle;
|
||||
baseline-shift:super;
|
||||
font-family: Arial Courier san-serif;
|
||||
}
|
||||
|
||||
|
||||
text.biflabel {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 6pt;
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
|
||||
}
|
||||
|
||||
text.p2pbuslabel {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 10pt;
|
||||
font-style: italic;
|
||||
font-weight: bold;
|
||||
text-anchor: start;
|
||||
writing-mode: tb;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.mpbuslabel {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 6pt;
|
||||
font-style: italic;
|
||||
font-weight: bold;
|
||||
text-anchor: start;
|
||||
writing-mode: tb;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
|
||||
text.sharedbuslabel {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 10pt;
|
||||
font-style: italic;
|
||||
font-weight: bold;
|
||||
text-anchor: start;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
|
||||
text.bciplabel {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 6pt;
|
||||
font-style: italic;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Courier Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.bciptype {
|
||||
fill: #AA0017;
|
||||
stroke: none;
|
||||
font-size: 6pt;
|
||||
font-style: italic;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.splitbustxt {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 6pt;
|
||||
font-style: normal;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: sans-serif;
|
||||
}
|
||||
|
||||
text.horizp2pbuslabel {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 6pt;
|
||||
font-style: italic;
|
||||
font-weight: bold;
|
||||
text-anchor: start;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
|
||||
|
||||
text.keytitle {
|
||||
fill: #AA0017;
|
||||
stroke: none;
|
||||
font-size: 12pt;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.keyheader {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 10pt;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.keylabel {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-style: italic;
|
||||
font-weight: bold;
|
||||
text-anchor: start;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.keylblul {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-style: italic;
|
||||
font-weight: bold;
|
||||
text-anchor: start;
|
||||
text-decoration: underline;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.specsheader {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 10pt;
|
||||
font-weight: bold;
|
||||
text-anchor: start;
|
||||
font-family: Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.specsvalue {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-style: italic;
|
||||
font-weight: bold;
|
||||
text-anchor: start;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
text.specsvaluemid {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-style: italic;
|
||||
font-weight: bold;
|
||||
text-anchor: middle;
|
||||
font-family: Verdana Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
|
||||
text.intrsymbol {
|
||||
fill: #000000;
|
||||
stroke: none;
|
||||
font-size: 8pt;
|
||||
font-weight: bold;
|
||||
text-anchor: start;
|
||||
font-family: Arial Helvetica sans-serif;
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
.trigger{
|
||||
cursor : hand;
|
||||
cursor : pointer;
|
||||
}
|
||||
|
||||
.branch{
|
||||
display : none;
|
||||
margin-left : 16px;
|
||||
}
|
27
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/.dswkshop/ds_Report.js
Normal file
27
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/.dswkshop/ds_Report.js
Normal file
|
@ -0,0 +1,27 @@
|
|||
|
||||
var openImg = new Image();
|
||||
openImg.src = "imgs/IMG_openBranch.gif";
|
||||
|
||||
var closeImg = new Image();
|
||||
closeImg.src = "imgs/IMG_closeBranch.gif";
|
||||
|
||||
function showBranch(branchId) {
|
||||
|
||||
var branchObj = document.getElementById(branchId).style;
|
||||
|
||||
if(branchObj.display== "block")
|
||||
branchObj.display = "none";
|
||||
else
|
||||
branchObj.display = "block";
|
||||
}
|
||||
|
||||
function swapBranchImg(branchImgId) {
|
||||
|
||||
branchImg = document.getElementById(branchImgId);
|
||||
|
||||
if(branchImg.src.indexOf('IMG_closeBranch.gif') > -1)
|
||||
branchImg.src = openImg.src;
|
||||
else
|
||||
branchImg.src = closeImg.src;
|
||||
}
|
||||
|
1704
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/.dswkshop/svg10.dtd
Normal file
1704
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/.dswkshop/svg10.dtd
Normal file
File diff suppressed because it is too large
Load diff
1
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/bitinit.opt
Normal file
1
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/bitinit.opt
Normal file
|
@ -0,0 +1 @@
|
|||
-pe ppc405_0 $(PPC405_0_BOOTLOOP)
|
1
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/libgen.opt
Normal file
1
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/libgen.opt
Normal file
|
@ -0,0 +1 @@
|
|||
-p virtex4
|
2
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/platgen.opt
Normal file
2
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/platgen.opt
Normal file
|
@ -0,0 +1,2 @@
|
|||
-p xc4vfx12ff668-10 -lang vhdl
|
||||
|
20
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/rtosdemo_compiler.opt
Normal file
20
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/rtosdemo_compiler.opt
Normal file
|
@ -0,0 +1,20 @@
|
|||
ppc405_0
|
||||
RTOSDEMO_SOURCES = RTOSDemo/../../Common/Minimal/BlockQ.c RTOSDemo/../../Common/Minimal/blocktim.c RTOSDemo/../../Common/Minimal/comtest.c RTOSDemo/../../Common/Minimal/countsem.c RTOSDemo/../../Common/Minimal/death.c RTOSDemo/../../Common/Minimal/dynamic.c RTOSDemo/../../Common/Minimal/flash.c RTOSDemo/../../Common/Minimal/flop.c RTOSDemo/../../Common/Minimal/GenQTest.c RTOSDemo/../../Common/Minimal/integer.c RTOSDemo/../../Common/Minimal/QPeek.c RTOSDemo/../../Common/Minimal/recmutex.c RTOSDemo/../../Common/Minimal/semtest.c RTOSDemo/../../../Source/tasks.c RTOSDemo/../../../Source/list.c RTOSDemo/../../../Source/queue.c RTOSDemo/../../../Source/portable/GCC/PPC405_Xilinx/port.c RTOSDemo/main.c RTOSDemo/serial/serial.c RTOSDemo/partest/partest.c RTOSDemo/../../../Source/portable/GCC/PPC405_Xilinx/portasm.S RTOSDemo/../../../Source/portable/MemMang/heap_2.c
|
||||
RTOSDEMO_HEADERS = RTOSDemo/FreeRTOSConfig.h
|
||||
RTOSDEMO_CC = powerpc-eabi-gcc
|
||||
RTOSDEMO_CC_SIZE = powerpc-eabi-size
|
||||
RTOSDEMO_CC_OPT = -O0
|
||||
RTOSDEMO_CFLAGS = -I./ppc405_0/include/ -IRTOSDemo/ -I. -I./RTOSDemo/ -I../Common/include/ -I../../Source/include/ -I./ppc405_0/include/ -I./ppc405_0/include -D GCC_PPC405 -mregnames -Wextra
|
||||
RTOSDEMO_CC_SEARCH = # -B
|
||||
RTOSDEMO_LIBPATH = -L./ppc405_0/lib/ # -L
|
||||
RTOSDEMO_INCLUDES = -I./ppc405_0/include/ -IRTOSDemo/ # -I
|
||||
RTOSDEMO_LFLAGS = # -l
|
||||
RTOSDEMO_LINKER_SCRIPT = RTOSDemo/RTOSDemo_linker_script.ld
|
||||
RTOSDEMO_CC_DEBUG_FLAG = -g
|
||||
RTOSDEMO_CC_PROFILE_FLAG = # -pg
|
||||
RTOSDEMO_CC_GLOBPTR_FLAG= # -msdata=eabi
|
||||
RTOSDEMO_CC_INFERRED_FLAGS=
|
||||
RTOSDEMO_CC_START_ADDR_FLAG= # # -Wl,-defsym -Wl,_START_ADDR=
|
||||
RTOSDEMO_CC_STACK_SIZE_FLAG= # # -Wl,-defsym -Wl,_STACK_SIZE=
|
||||
RTOSDEMO_CC_HEAP_SIZE_FLAG= # # -Wl,-defsym -Wl,_HEAP_SIZE=
|
||||
$(RTOSDEMO_CC_INFERRED_FLAGS) \
|
1
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/simgen.opt
Normal file
1
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/simgen.opt
Normal file
|
@ -0,0 +1 @@
|
|||
-p virtex4 -lang vhdl -pe ppc405_0 $(PPC405_0_BOOTLOOP) -s mti -X C:/E/Dev/FreeRTOS/WorkingCopy2/Demo/PPC405_Xilinx_Virtex4_GCC/ -E C:/E/Dev/FreeRTOS/WorkingCopy2/Demo/PPC405_Xilinx_Virtex4_GCC/
|
101
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/system.gui
Normal file
101
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/system.gui
Normal file
|
@ -0,0 +1,101 @@
|
|||
|
||||
<PRO_GUISETTING VIEWSTATUS="BIFS_TREE">
|
||||
|
||||
<GUISETTING HSCROLL="0" ID="BIFS_TREE" SPSIZE1="106" SPSIZE2="639" VSCROLL="0">
|
||||
|
||||
<COLHDR INDEX="0" NAME="Name" VISIBLE="TRUE" WIDTH="149"/>
|
||||
|
||||
<COLHDR INDEX="4" NAME="Bus Connection" VISIBLE="TRUE" WIDTH="156"/>
|
||||
|
||||
<COLHDR INDEX="6" NAME="Bus Standard" VISIBLE="FALSE" WIDTH="0"/>
|
||||
|
||||
<COLHDR INDEX="1" NAME="IP Type" VISIBLE="TRUE" WIDTH="93"/>
|
||||
|
||||
<COLHDR INDEX="2" NAME="IP Version" VISIBLE="TRUE" WIDTH="104"/>
|
||||
|
||||
<COLHDR INDEX="5" NAME="Mastership" VISIBLE="FALSE" WIDTH="0"/>
|
||||
|
||||
<COLHDR INDEX="3" NAME="IP CLASSIFICATION" VISIBLE="FALSE" WIDTH="0"/>
|
||||
|
||||
<EXPANDED/>
|
||||
|
||||
</GUISETTING>
|
||||
<GUISETTING HSCROLL="0" ID="PORTS_TREE" VSCROLL="0">
|
||||
|
||||
<COLHDR INDEX="0" NAME="Name" VISIBLE="TRUE" WIDTH="200"/>
|
||||
|
||||
<COLHDR INDEX="1" NAME="Net" VISIBLE="TRUE" WIDTH="166"/>
|
||||
|
||||
<COLHDR INDEX="2" NAME="Direction" VISIBLE="TRUE" WIDTH="98"/>
|
||||
|
||||
<COLHDR INDEX="4" NAME="Range" VISIBLE="TRUE" WIDTH="200"/>
|
||||
|
||||
<COLHDR INDEX="3" NAME="Class" VISIBLE="TRUE" WIDTH="81"/>
|
||||
|
||||
<COLHDR INDEX="5" NAME="Frequency" VISIBLE="TRUE" WIDTH="106"/>
|
||||
|
||||
<COLHDR INDEX="6" NAME="Reset Polarity" VISIBLE="TRUE" WIDTH="121"/>
|
||||
|
||||
<COLHDR INDEX="9" NAME="Sensitivity" VISIBLE="TRUE" WIDTH="103"/>
|
||||
|
||||
<COLHDR INDEX="7" NAME="IP Type" VISIBLE="TRUE" WIDTH="93"/>
|
||||
|
||||
<COLHDR INDEX="8" NAME="IP Version" VISIBLE="FALSE" WIDTH="0"/>
|
||||
|
||||
<EXPANDED/>
|
||||
|
||||
</GUISETTING>
|
||||
<GUISETTING HSCROLL="0" ID="ADDRESSES_TREE" VSCROLL="0">
|
||||
|
||||
<COLHDR INDEX="0" NAME="Name" VISIBLE="TRUE" WIDTH="153"/>
|
||||
|
||||
<COLHDR INDEX="3" NAME="Base Address" VISIBLE="TRUE" WIDTH="121"/>
|
||||
|
||||
<COLHDR INDEX="4" NAME="High Address" VISIBLE="TRUE" WIDTH="119"/>
|
||||
|
||||
<COLHDR INDEX="5" NAME="Size" VISIBLE="TRUE" WIDTH="76"/>
|
||||
|
||||
<COLHDR INDEX="7" NAME="Bus Interface(s)" VISIBLE="TRUE" WIDTH="130"/>
|
||||
|
||||
<COLHDR INDEX="10" NAME="Bus Connection" VISIBLE="TRUE" WIDTH="131"/>
|
||||
|
||||
<COLHDR INDEX="6" NAME="Lock" VISIBLE="TRUE" WIDTH="80"/>
|
||||
|
||||
<COLHDR INDEX="9" NAME="ICache" VISIBLE="TRUE" WIDTH="90"/>
|
||||
|
||||
<COLHDR INDEX="8" NAME="DCache" VISIBLE="TRUE" WIDTH="95"/>
|
||||
|
||||
<COLHDR INDEX="1" NAME="IP Type" VISIBLE="TRUE" WIDTH="93"/>
|
||||
|
||||
<COLHDR INDEX="2" NAME="IP Version" VISIBLE="TRUE" WIDTH="104"/>
|
||||
|
||||
<EXPANDED/>
|
||||
|
||||
</GUISETTING>
|
||||
<GUISETTING COLSORT="0" HSCROLL="0" ID="ADDRESSES_FLAT" SORTORE="1" VSCROLL="0">
|
||||
|
||||
<COLHDR INDEX="11" NAME="Instance" VISIBLE="TRUE" WIDTH="97"/>
|
||||
|
||||
<COLHDR INDEX="0" NAME="Name" VISIBLE="TRUE" WIDTH="153"/>
|
||||
|
||||
<COLHDR INDEX="3" NAME="Base Address" VISIBLE="TRUE" WIDTH="121"/>
|
||||
|
||||
<COLHDR INDEX="4" NAME="High Address" VISIBLE="TRUE" WIDTH="119"/>
|
||||
|
||||
<COLHDR INDEX="5" NAME="Size" VISIBLE="TRUE" WIDTH="76"/>
|
||||
|
||||
<COLHDR INDEX="7" NAME="Bus Interface(s)" VISIBLE="TRUE" WIDTH="130"/>
|
||||
|
||||
<COLHDR INDEX="10" NAME="Bus Connection" VISIBLE="TRUE" WIDTH="131"/>
|
||||
|
||||
<COLHDR INDEX="6" NAME="Lock" VISIBLE="TRUE" WIDTH="80"/>
|
||||
|
||||
<COLHDR INDEX="9" NAME="ICache" VISIBLE="TRUE" WIDTH="90"/>
|
||||
|
||||
<COLHDR INDEX="8" NAME="DCache" VISIBLE="TRUE" WIDTH="95"/>
|
||||
|
||||
<COLHDR INDEX="1" NAME="IP Type" VISIBLE="TRUE" WIDTH="93"/>
|
||||
|
||||
<COLHDR INDEX="2" NAME="IP Version" VISIBLE="TRUE" WIDTH="104"/>
|
||||
|
||||
</GUISETTING></PRO_GUISETTING>
|
0
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/system_routed
Normal file
0
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/system_routed
Normal file
|
@ -0,0 +1,20 @@
|
|||
ppc405_0
|
||||
TESTAPP_PERIPHERAL_SOURCES = /cygdrive/c/E/Dev/FreeRTOS/WorkingCopy2/Demo/PPC405_Xilinx_Virtex4_GCC/TestApp_Peripheral/src/TestApp_Peripheral.c /cygdrive/c/E/Dev/FreeRTOS/WorkingCopy2/Demo/PPC405_Xilinx_Virtex4_GCC/TestApp_Peripheral/src/xintc_tapp_example.c /cygdrive/c/E/Dev/FreeRTOS/WorkingCopy2/Demo/PPC405_Xilinx_Virtex4_GCC/TestApp_Peripheral/src/xuartlite_selftest_example.c /cygdrive/c/E/Dev/FreeRTOS/WorkingCopy2/Demo/PPC405_Xilinx_Virtex4_GCC/TestApp_Peripheral/src/xuartlite_intr_tapp_example.c /cygdrive/c/E/Dev/FreeRTOS/WorkingCopy2/Demo/PPC405_Xilinx_Virtex4_GCC/TestApp_Peripheral/src/xgpio_tapp_example.c
|
||||
TESTAPP_PERIPHERAL_HEADERS = /cygdrive/c//E/Dev/FreeRTOS/WorkingCopy2/Demo/PPC405_Xilinx_Virtex4_GCC/TestApp_Peripheral/src/intc_header.h /cygdrive/c//E/Dev/FreeRTOS/WorkingCopy2/Demo/PPC405_Xilinx_Virtex4_GCC/TestApp_Peripheral/src/uartlite_header.h /cygdrive/c//E/Dev/FreeRTOS/WorkingCopy2/Demo/PPC405_Xilinx_Virtex4_GCC/TestApp_Peripheral/src/uartlite_intr_header.h /cygdrive/c//E/Dev/FreeRTOS/WorkingCopy2/Demo/PPC405_Xilinx_Virtex4_GCC/TestApp_Peripheral/src/gpio_header.h
|
||||
TESTAPP_PERIPHERAL_CC = powerpc-eabi-gcc
|
||||
TESTAPP_PERIPHERAL_CC_SIZE = powerpc-eabi-size
|
||||
TESTAPP_PERIPHERAL_CC_OPT = -O2
|
||||
TESTAPP_PERIPHERAL_CFLAGS =
|
||||
TESTAPP_PERIPHERAL_CC_SEARCH = # -B
|
||||
TESTAPP_PERIPHERAL_LIBPATH = -L./ppc405_0/lib/ # -L
|
||||
TESTAPP_PERIPHERAL_INCLUDES = -I./ppc405_0/include/ -ITestApp_Peripheral/src/ # -I
|
||||
TESTAPP_PERIPHERAL_LFLAGS = # -l
|
||||
TESTAPP_PERIPHERAL_LINKER_SCRIPT = /cygdrive/c/E/Dev/FreeRTOS/WorkingCopy2/Demo/PPC405_Xilinx_Virtex4_GCC/TestApp_Peripheral/src/TestApp_Peripheral_LinkScr.ld
|
||||
TESTAPP_PERIPHERAL_CC_DEBUG_FLAG = -g
|
||||
TESTAPP_PERIPHERAL_CC_PROFILE_FLAG = # -pg
|
||||
TESTAPP_PERIPHERAL_CC_GLOBPTR_FLAG= # -msdata=eabi
|
||||
TESTAPP_PERIPHERAL_CC_INFERRED_FLAGS=
|
||||
TESTAPP_PERIPHERAL_CC_START_ADDR_FLAG= # # -Wl,-defsym -Wl,_START_ADDR=
|
||||
TESTAPP_PERIPHERAL_CC_STACK_SIZE_FLAG= # # -Wl,-defsym -Wl,_STACK_SIZE=
|
||||
TESTAPP_PERIPHERAL_CC_HEAP_SIZE_FLAG= # # -Wl,-defsym -Wl,_HEAP_SIZE=
|
||||
$(TESTAPP_PERIPHERAL_CC_INFERRED_FLAGS) \
|
1
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/vpgen.opt
Normal file
1
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/vpgen.opt
Normal file
|
@ -0,0 +1 @@
|
|||
-p xc4vfx12ff668-10
|
1
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/xplorer.opt
Normal file
1
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/xplorer.opt
Normal file
|
@ -0,0 +1 @@
|
|||
-device xc4vfx12ff668-10data/system.ucf7 0
|
1
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/xpsxflow.opt
Normal file
1
Demo/PPC405_Xilinx_Virtex4_GCC/__xps/xpsxflow.opt
Normal file
|
@ -0,0 +1 @@
|
|||
-device xc4vfx12ff668-10data/system.ucf 0
|
Loading…
Add table
Add a link
Reference in a new issue