1 <?xml version="1.0" standalone="no"?>
2 <xsl:stylesheet version="1.0"
3 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
4 xmlns:exsl="http://exslt.org/common"
5 xmlns:xlink="http://www.w3.org/1999/xlink">
7 <xsl:output method="html"/>
9 <xsl:include href="MdtXdsGen_HTMLIPSection.xsl"/>
10 <xsl:include href="MdtXdsGen_HTMLMemoryMap.xsl"/>
11 <xsl:include href="MdtXdsGen_HTMLTOCTree.xsl"/>
13 <xsl:param name="DS_TYPE" select="'NOFRAMES'"/>
14 <xsl:param name="DS_PART" select="'TOC_TREE'"/>
16 <xsl:param name="DS_WIDTH" select="850"/>
17 <xsl:param name="DS_TOC_WIDTH" select="200"/>
19 <xsl:param name="DS_FRAME_TOC" select="'DS_TOC'"/>
20 <xsl:param name="DS_FRAME_SELF" select="'_self'"/>
21 <xsl:param name="DS_FRAME_MAIN" select="'DS_FMAIN'"/>
23 <xsl:param name="DS_HTML_BLKD" select="'ds_Blkd.html'"/>
25 <xsl:param name="DS_HTML_MAIN" select="'ds_Main.html'"/>
26 <xsl:param name="DS_HTML_TOC" select="'ds_TOC.html'"/>
27 <xsl:param name="DS_HTML_TOCTREE" select="'ds_TOCTree.html'"/>
29 <xsl:param name="DS_BLKD_NAME" select="'system_blkd.jpg'"/>
30 <xsl:param name="DS_BLKD_TYPE" select="'svg'"/>
31 <xsl:param name="DS_BLKD_WIDTH" select="800"/>
32 <xsl:param name="DS_BLKD_HEIGHT" select="600"/>
34 <xsl:param name="DS_COL_OPB" select="'#339900'"/>
36 <xsl:param name="DS_COL_INFO" select="'#2233FF'"/>
37 <xsl:param name="DS_COL_ASH" select="'#DEDEDE'"/>
38 <xsl:param name="DS_COL_ASH1" select="'#F0F0F8'"/>
39 <xsl:param name="DS_COL_GREY" select="'#BBBBBB'"/>
40 <xsl:param name="DS_COL_LGRY" select="'#F1F1F1'"/>
41 <xsl:param name="DS_COL_XPRP" select="'#810017'"/>
42 <xsl:param name="DS_COL_RED" select="'#FF1010'"/>
43 <xsl:param name="DS_COL_GREEN" select="'#33CC33'"/>
44 <xsl:param name="DS_COL_BLACK" select="'#000000'"/>
45 <xsl:param name="DS_COL_WHITE" select="'#FFFFFF'"/>
48 <xsl:param name="DS_COL_ATTR_RD" select="'#FF5555'"/>
49 <xsl:param name="DS_COL_ATTR_GREN" select="'#55FF55'"/>
50 <xsl:param name="DS_COL_ATTR_BLE" select="'#5555FF'"/>
53 <xsl:param name="DS_COL_ATTR_BUF" select="'#FF5555'"/>
54 <xsl:param name="DS_COL_ATTR_CLK" select="'#55FF55'"/>
55 <xsl:param name="DS_COL_ATTR_INT" select="'#5555FF'"/>
56 <xsl:param name="DS_COL_ATTR_RST" select="'#FFCC00'"/>
59 <xsl:param name="DS_COL_MODUSR" select="'#FFFFAA'"/>
60 <xsl:param name="DS_COL_MODSYS" select="'#AAAAFF'"/>
61 <xsl:param name="DS_COL_MODSYSNW" select="'#000099'"/>
63 <!-- ======================= MAIN DATASHEET SECTION =============================== -->
64 <xsl:template match="EDKSYSTEM">
65 <xsl:if test="$DS_TYPE='NOFRAMES'">
66 <xsl:call-template name="Write_Main"/>
68 <xsl:if test="$DS_TYPE='FRAMES'">
69 <xsl:call-template name="Write_Frames"/>
73 <xsl:template name="Write_Frames">
75 <xsl:if test="$DS_PART='TOC'">
76 <xsl:call-template name="Write_TOC"/>
80 <xsl:if test="$DS_PART='TOC'">
81 <xsl:call-template name="Write_TOCTree"/>
84 <xsl:if test="$DS_PART='INDEX'">
85 <xsl:call-template name="Write_Index"/>
88 <xsl:if test="$DS_PART='MAIN'">
89 <xsl:call-template name="Write_Main"/>
92 <xsl:if test="$DS_PART='BLKD'">
93 <xsl:call-template name="Write_BLKD"/>
98 <xsl:template name="Write_TOC">
101 <TITLE>Table of Contents</TITLE>
102 <BASE target="{$DS_FRAME_MAIN}"/>
105 <!--Layout Table of contents -->
106 <BODY class="main_body">
107 <xsl:call-template name="Layout_TOC"/>
113 <xsl:template name="Write_Index">
115 <HEAD><TITLE>EDK Project Report</TITLE></HEAD>
116 <FRAMESET COLS="20%,80%" BORDER="0" FRAMESPACING="0">
117 <FRAME SRC="{$DS_HTML_TOC}"
122 NAME="{$DS_FRAME_TOC}"
124 <FRAME SRC="{$DS_HTML_MAIN}"
129 NAME="{$DS_FRAME_MAIN}"
135 <xsl:template name="Write_BLKD">
138 <HEAD><TITLE>Block Diagram</TITLE></HEAD>
141 <xsl:message> Embedded image name <xsl:value-of select="$DS_BLKD_NAME"/></xsl:message>
142 <xsl:message> Embedded image name <xsl:value-of select="$DS_BLKD_NAME"/></xsl:message>
143 <xsl:message> Embedded image type <xsl:value-of select="$DS_BLKD_TYPE"/></xsl:message>
144 <xsl:message> Embedded image width <xsl:value-of select="$DS_BLKD_WIDTH"/></xsl:message>
145 <xsl:message> Embedded image height <xsl:value-of select="$DS_BLKD_HEIGHT"/></xsl:message>
148 <BODY class="main_body">
150 <xsl:if test="$DS_BLKD_TYPE = 'svg'">
151 <EMBED src="{$DS_BLKD_NAME}" width="{$DS_BLKD_WIDTH}" height="{$DS_BLKD_HEIGHT}" type="image/svg+xml"/>
154 <xsl:if test="not($DS_BLKD_TYPE = 'svg')">
155 <IMG SRC="{$DS_BLKD_NAME}" alt="BlockDiagram" width="{$DS_BLKD_WIDTH}" height="{$DS_BLKD_HEIGHT}" border="0" vspace="0" hspace="0"/>
159 <xsl:call-template name="Layout_ExternalPorts"/>
166 <xsl:template name="Write_Main">
170 <title>EDK PROJECT REPORT</title>
172 <!--specify a css for the file -->
173 <meta http-equiv="PRAGMA" content="NO-CACHE"/>
174 <meta http-equiv="content-Type" content="text/html; charset=iso-8859-1"/>
178 <body bgcolor="#FFFFFF">
180 <!--Layout Table of contents -->
181 <xsl:if test="not($DS_TYPE='FRAMES')">
182 <xsl:call-template name="Layout_TOC"/>
185 <TABLE BGCOLOR="{$DS_COL_WHITE}" WIDTH="{$DS_WIDTH}" COLS="1" cellspacing="0" cellpadding="3" border="0">
187 <!-- ==========================Overview Section ============== -->
191 <xsl:if test="$DS_TYPE='FRAMES'">
192 <TD COLSPAN="1" ALIGN="LEFT">
193 <A HREF="ds_MainNF.html" target="_top" style="text-decoration:none"><SPAN style="color:{$DS_COL_GREEN}; font: normal 14px Verdana Arial,Helvetica,sans-serif">Printable Version</SPAN></A>
197 <TD COLSPAN="1" WIDTH="100%">
198 <A name="_Overview"/>
199 <xsl:call-template name="Layout_NavigateHeader">
200 <xsl:with-param name="header_name" select="'Overview'"/>
204 <xsl:call-template name="Layout_Overview"/>
207 <!-- ==========================Block Diagram section ============== -->
209 <xsl:message> Embedded image name <xsl:value-of select="$DS_BLKD_NAME"/></xsl:message>
213 <A name="_BlockDiagram"/>
214 <xsl:call-template name="Layout_NavigateHeader">
215 <xsl:with-param name="header_name" select="'Block Diagram'"/>
219 <IMG SRC="imgs/{$DS_BLKD_NAME}" alt="BlockDiagram" border="0" vspace="0" hspace="0"/>
225 <!-- ========================== External Ports ======================= -->
228 <TD COLSPAN="1" WIDTH="100%">
229 <A name="_ExternalPorts"/>
230 <xsl:call-template name="Layout_NavigateHeader">
231 <xsl:with-param name="header_name" select="'External Ports'"/>
235 <xsl:call-template name="Layout_ExternalPorts"/>
238 <!-- ========================== Memory Map Section ======================= -->
240 <xsl:if test="MODULES/MODULE[@MODCLASS='PROCESSOR']/MEMORYMAP">
243 <A name="_MemoryMap"/>
244 <xsl:call-template name="Layout_NavigateHeader">
245 <xsl:with-param name="header_name" select="'MEMORY MAP'"/>
247 <xsl:for-each select="MODULES/MODULE[@MODCLASS='PROCESSOR']">
248 <xsl:sort select="@INSTANCE"/>
249 <xsl:call-template name="Layout_MemoryMap"/>
255 <!-- ========================== Processor Information Section ================== -->
257 <TD COLSPAN="1" WIDTH="100%">
258 <A name="_Processor"/>
259 <xsl:call-template name="Layout_NavigateHeader">
260 <xsl:with-param name="header_name" select="'Processors'"/>
263 <TABLE align="left" width="{$DS_WIDTH}" cellspacing="0" cellpadding="0" border="0">
264 <xsl:for-each select="MODULES/MODULE[((@MODCLASS='PROCESSOR') and (contains(@MODTYPE,'microblaze')))]">
265 <xsl:sort select="@INSTANCE"/>
267 <TD COLSPAN="1" align="left">
268 <xsl:call-template name="Layout_IPSection"/>
272 <xsl:for-each select="MODULES/MODULE[((@MODCLASS='PROCESSOR') and (contains(@MODTYPE,'ppc')))]">
273 <xsl:sort select="@INSTANCE"/>
275 <TD COLSPAN="1" align="left">
276 <xsl:call-template name="Layout_IPSection"/>
284 <xsl:if test="MODULES/MODULE[@MODCLASS='PROCESSOR_DEBUG']">
286 <xsl:call-template name="Layout_NavigateHeader">
287 <xsl:with-param name="header_name" select="'Debuggers'"/>
291 <xsl:for-each select="MODULES/MODULE[@MODCLASS='PROCESSOR_DEBUG']">
292 <xsl:sort select="@INSTANCE"/>
294 <TD COLSPAN="1" align="left">
295 <xsl:call-template name="Layout_IPSection"/>
302 <xsl:if test="MODULES/MODULE[@MODCLASS='INTERRUPT_CONTROLLER']">
304 <xsl:call-template name="Layout_NavigateHeader">
305 <xsl:with-param name="header_name" select="'Interrupt Controllers'"/>
308 <TABLE align="left" width="{$DS_WIDTH}" cellspacing="0" cellpadding="0" border="0">
309 <xsl:for-each select="MODULES/MODULE[@MODCLASS='INTERRUPT_CONTROLLER']">
310 <xsl:sort select="@INSTANCE"/>
312 <TD COLSPAN="1" align="left">
313 <xsl:call-template name="Layout_IPSection"/>
322 <xsl:for-each select="MODULES/MODULE[@MODCLASS='INTERRUPT_CONTROLLER']">
323 <xsl:sort select="@INSTANCE"/>
325 <TD COLSPAN="1" align="left">
326 <xsl:call-template name="Layout_IPSection"/>
331 <!-- ========================== Debugger Section ================== -->
332 <xsl:if test="MODULES/MODULE[(@MODCLASS='DEBUG')]">
336 <xsl:call-template name="Layout_NavigateHeader">
337 <xsl:with-param name="header_name" select="'Debuggers'"/>
339 <TABLE align="left" width="{$DS_WIDTH}" cellspacing="0" cellpadding="0" border="0">
340 <xsl:for-each select="MODULES/MODULE[(@MODCLASS='DEBUG')]">
341 <xsl:sort select="@INSTANCE"/>
343 <TD COLSPAN="1" align="left">
344 <xsl:call-template name="Layout_IPSection"/>
351 <!-- ========================== Interrupt Controllers Section ================== -->
352 <xsl:if test="MODULES/MODULE[(@MODCLASS='INTERRUPT_CNTLR')]">
356 <xsl:call-template name="Layout_NavigateHeader">
357 <xsl:with-param name="header_name" select="'Interrupt Controllers'"/>
359 <TABLE align="left" width="{$DS_WIDTH}" cellspacing="0" cellpadding="0" border="0">
360 <xsl:for-each select="MODULES/MODULE[(@MODCLASS='INTERRUPT_CNTLR')]">
361 <xsl:sort select="@INSTANCE"/>
363 <TD COLSPAN="1" align="left">
364 <xsl:call-template name="Layout_IPSection"/>
372 <!-- ========================== Bus Information Section ================== -->
375 <A name="_BusModules"/>
376 <xsl:call-template name="Layout_NavigateHeader">
377 <xsl:with-param name="header_name" select="'Busses'"/>
379 <TABLE align="left" width="{$DS_WIDTH}" cellspacing="0" cellpadding="0" border="0">
380 <xsl:for-each select="MODULES/MODULE[((@MODCLASS='BUS') or (@MODCLASS='BUS_ARBITER'))]">
381 <xsl:sort select="@INSTANCE"/>
383 <TD COLSPAN="1" align="left">
384 <xsl:call-template name="Layout_IPSection"/>
390 <!-- ========================== Bridge Information Section ================== -->
391 <xsl:if test="MODULES/MODULE[(@MODCLASS='BUS_BRIDGE')]">
395 <A name="_BridgeModules"/>
396 <xsl:call-template name="Layout_NavigateHeader">
397 <xsl:with-param name="header_name" select="'Bus Bridges'"/>
399 <TABLE align="left" width="{$DS_WIDTH}" cellspacing="0" cellpadding="0" border="0">
400 <xsl:for-each select="MODULES/MODULE[(@MODCLASS='BUS_BRIDGE')]">
401 <xsl:sort select="@INSTANCE"/>
403 <TD COLSPAN="1" align="left">
404 <xsl:call-template name="Layout_IPSection"/>
412 <!-- ========================== Memory Information Section ============== -->
413 <xsl:if test="MODULES/MODULE[(@MODCLASS='MEMORY')]">
416 <A name="_MemoryModules"/>
417 <xsl:call-template name="Layout_NavigateHeader">
418 <xsl:with-param name="header_name" select="'Memory'"/>
421 <TABLE align="left" width="{$DS_WIDTH}" cellspacing="0" cellpadding="0" border="0">
422 <xsl:for-each select="MODULES/MODULE[(@MODCLASS='MEMORY')]">
423 <xsl:sort select="@INSTANCE"/>
425 <TD COLSPAN="1" align="left">
426 <xsl:call-template name="Layout_IPSection"/>
432 <!-- ========================== Memory Controller Information Section ============== -->
433 <xsl:if test="MODULES/MODULE[(@MODCLASS='MEMORY_CNTLR')]">
436 <A name="_MemCntlrModules"/>
437 <xsl:call-template name="Layout_NavigateHeader">
438 <xsl:with-param name="header_name" select="'Memory Controllers'"/>
441 <TABLE align="left" width="{$DS_WIDTH}" cellspacing="0" cellpadding="0" border="0">
442 <xsl:for-each select="MODULES/MODULE[(@MODCLASS='MEMORY_CNTLR')]">
443 <xsl:sort select="@INSTANCE"/>
445 <TD COLSPAN="1" align="left">
446 <xsl:call-template name="Layout_IPSection"/>
453 <!-- ========================== Peripheral Information Section ============== -->
454 <xsl:if test="MODULES/MODULE[(@MODCLASS='PERIPHERAL')]">
456 <TD COLSPAN="1" align="left">
457 <A name="_Peripherals"/>
458 <xsl:call-template name="Layout_NavigateHeader">
459 <xsl:with-param name="header_name" select="'Peripherals'"/>
461 <TABLE align="left" COLS="1" width="{$DS_WIDTH}" cellspacing="0" cellpadding="0" border="0">
462 <xsl:for-each select="MODULES/MODULE[(@MODCLASS='PERIPHERAL')]">
463 <xsl:sort select="@INSTANCE"/>
464 <TD ROWSPAN="2"/><TR/>
465 <TD ROWSPAN="2"/><TR/>
466 <TD COLSPAN="1" align="left">
467 <xsl:call-template name="Layout_IPSection"/>
474 <!-- ========================== IP Information Section ====================== -->
475 <xsl:if test="MODULES/MODULE[(@MODCLASS='IP')]">
477 <TD COLSPAN="1" align="left">
478 <A name="_IPModules"/>
479 <xsl:call-template name="Layout_NavigateHeader">
480 <xsl:with-param name="header_name" select="'IP'"/>
483 <TABLE align="left" COLS="1" width="{$DS_WIDTH}" cellspacing="0" cellpadding="0" border="0">
484 <xsl:for-each select="MODULES/MODULE[(@MODCLASS='IP')]">
485 <xsl:sort select="@INSTANCE"/>
486 <TD ROWSPAN="2"/><TR/>
487 <TD ROWSPAN="2"/><TR/>
488 <TD COLSPAN="1" align="left">
489 <xsl:call-template name="Layout_IPSection"/>
496 <!--Timing Information section -->
499 <A name="_TimingInfo"/>
500 <xsl:call-template name="Layout_NavigateHeader">
501 <xsl:with-param name="header_name" select="'Timing Information'"/>
505 <xsl:call-template name="Layout_TimingInfo"/>
508 <TD COLSPAN="1" align="left">
511 <TABLE BGCOLOR="{$DS_COL_WHITE}" WIDTH="{$DS_WIDTH}" COLS="3" cellspacing="0" cellpadding="0" border="0">
512 <TD COLSPAN="3" width="100%" align="middle" BGCOLOR="{$DS_COL_XPRP}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 5px Verdana,Arial,Helvetica,sans-serif">line</SPAN></TD>
514 <TD COLSPAN="1" width="25%" align="left">
515 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@TIMESTAMP"/></SPAN>
517 <TD COLSPAN="2" width="75%" align="middle">
518 <A HREF="http://www.xilinx.com" style="text-decoration:none"><SPAN style="color:{$DS_COL_INFO}; font: bold 12px Verdana,Arial,Helvetica,sans-serif">www.xilinx.com</SPAN></A>
520 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif">1-800-255-7778</SPAN>
532 <!-- ======================= LAYOUT TABLE OF CONTENTS ====================================== -->
533 <xsl:template name="Layout_TOC">
535 <xsl:variable name="toc_col_">
536 <xsl:if test="$DS_TYPE='NOFRAMES'">
537 <xsl:value-of select="$DS_COL_LGRY"/>
540 <xsl:if test="$DS_TYPE='FRAMES'">
541 <xsl:value-of select="$DS_COL_WHITE"/>
545 <xsl:variable name="toc_width_">
546 <xsl:if test="$DS_TYPE='NOFRAMES'">
547 <xsl:value-of select="$DS_WIDTH"/>
550 <xsl:if test="$DS_TYPE='FRAMES'">
551 <xsl:value-of select="$DS_TOC_WIDTH"/>
555 <xsl:variable name="toc_target_">
556 <xsl:if test="$DS_TYPE='NOFRAMES'">
557 <xsl:value-of select="$DS_FRAME_SELF"/>
560 <xsl:if test="$DS_TYPE='FRAMES'">
561 <xsl:value-of select="$DS_FRAME_MAIN"/>
565 <xsl:variable name="trg_html_">
566 <xsl:if test="$DS_TYPE='NOFRAMES'">
567 <xsl:value-of select="''"/>
570 <xsl:if test="$DS_TYPE='FRAMES'">
571 <xsl:value-of select="$DS_HTML_MAIN"/>
577 <TABLE BGCOLOR="{$toc_col_}" WIDTH="{$toc_width_}" COLS="2" cellspacing="0" cellpadding="3" border="0">
579 <xsl:if test="$DS_TYPE='NOFRAMES'">
580 <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>
584 <TD COLSPAN="1" width="40%" align="left">
586 <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>
589 <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>
592 <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>
596 <xsl:if test="MODULES/MODULE[@MODCLASS='PROCESSOR']/MEMORYMAP">
597 <A HREF="{$trg_html_}#_MemoryMap" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Memory Map</SPAN></A>
602 <xsl:variable name="proc_CNT" select="count(MODULES/MODULE[@MODCLASS = 'PROCESSOR'])"/>
603 <xsl:if test="$proc_CNT > 1">
604 <A HREF="{$trg_html_}#_Processor" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Processors</SPAN></A>
606 <xsl:if test="not($proc_CNT > 1)">
607 <A HREF="{$trg_html_}#_Processor" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Processor</SPAN></A>
610 <xsl:for-each select="MODULES/MODULE[(@MODCLASS='PROCESSOR')]">
611 <xsl:sort select="@INSTANCE"/>
613 <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><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if></A>
614 <xsl:if test="MEMORYMAP/MEMRANGE[(@INSTANCE)]">
616 <A HREF="{$trg_html_}#_{@INSTANCE}_MemoryMap" style="text-decoration:none"><SPAN style="color:{$DS_COL_XPRP}; font: italic 14px Verdana Arial,Helvetica,sans-serif">          memory map</SPAN></A>
620 <xsl:if test="MODULES/MODULE[@MODCLASS='PROCESSOR_DEBUG']">
622 <A HREF="{$trg_html_}#_Debug" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: bold 14px Verdana Arial,Helvetica,sans-serif">Debuggers</SPAN></A>
623 <xsl:for-each select="MODULES/MODULE[@MODCLASS='PROCESSOR_DEBUG']">
624 <xsl:sort select="@INSTANCE"/>
626 <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><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if></A>
630 <xsl:if test="MODULES/MODULE[@MODCLASS='INTERRUPT_CONTROLLER']">
632 <A HREF="{$trg_html_}#_Intc" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: bold 14px Verdana Arial,Helvetica,sans-serif">Interrupt Controllers</SPAN></A>
633 <xsl:for-each select="MODULES/MODULE[@MODCLASS='INTERRUPT_CONTROLLER']">
634 <xsl:sort select="@INSTANCE"/>
636 <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><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if></A>
640 <xsl:if test="MODULES/MODULE[@MODCLASS='BUS' or @MODCLASS='BUS_ARBITER']">
642 <A HREF="{$trg_html_}#_BusModules" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Busses</SPAN></A>
643 <xsl:for-each select="MODULES/MODULE[@MODCLASS='BUS' or @MODCLASS='BUS_ARBITER']">
644 <xsl:sort select="@INSTANCE"/>
646 <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><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if></A>
650 <xsl:if test="MODULES/MODULE[@MODCLASS='BUS_BRIDGE']">
652 <A HREF="{$trg_html_}#_BridgeModules" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Bridges</SPAN></A>
653 <xsl:for-each select="MODULES/MODULE[@MODCLASS='BUS_BRIDGE']">
654 <xsl:sort select="@INSTANCE"/>
656 <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><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if></A>
660 <xsl:if test="MODULES/MODULE[@MODCLASS='MEMORY']">
662 <A HREF="{$trg_html_}#_MemoryModules" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Memory</SPAN></A>
663 <xsl:for-each select="MODULES/MODULE[@MODCLASS='MEMORY']">
664 <xsl:sort select="@INSTANCE"/>
666 <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><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if></A>
670 <xsl:if test="MODULES/MODULE[@MODCLASS='MEMORY_CONTROLLER']">
672 <A HREF="{$trg_html_}#_MemCntlrModules" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Memory Controllers</SPAN></A>
673 <xsl:for-each select="MODULES/MODULE[@MODCLASS='MEMORY_CONTROLLER']">
674 <xsl:sort select="@INSTANCE"/>
676 <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><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if></A>
680 <xsl:if test="MODULES/MODULE[@MODCLASS='PERIPHERAL']">
682 <A HREF="{$trg_html_}#_Peripherals" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">Peripherals</SPAN></A>
683 <xsl:for-each select="MODULES/MODULE[@MODCLASS='PERIPHERAL']">
684 <xsl:sort select="@INSTANCE"/>
686 <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><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if></A>
690 <xsl:if test="MODULES/MODULE[@MODCLASS='IP']">
692 <A HREF="{$trg_html_}#_IPModules" style="text-decoration:none"><SPAN style="color:{$DS_COL_BLACK}; font: bold 16px Verdana Arial,Helvetica,sans-serif">IP</SPAN></A>
693 <xsl:for-each select="MODULES/MODULE[@MODCLASS='IP']">
694 <xsl:sort select="@INSTANCE"/>
696 <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><xsl:if test="LICENSEINFO"><IMG SRC="imgs/IMG_LicensedCore.bmp" border="0" vspace="0" hspace="0"/></xsl:if></A>
701 <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>
706 <!-- ======================= END LAYOUT TABLE OF CONTENT =================================== -->
708 <!-- ============================== LAYOUT SNAPSHOT ====================================== -->
709 <xsl:template name="Layout_Overview">
711 <xsl:variable name="cnt_ip_" select="count(MODULES/MODULE)"/>
712 <xsl:variable name="cnt_proc_" select="count(MODULES/MODULE[@MODCLASS = 'PROCESSOR'])"/>
713 <xsl:variable name="cnt_busses_" select="count(MODULES/MODULE[@MODCLASS = 'BUS'])"/>
714 <TABLE width="{$DS_WIDTH}" valign="top" align="left" border="0" cellpadding="0" cellspacing="1" COLS="2" BGCOLOR="{$DS_COL_BLACK}">
716 <TD COLSPAN="2" ALIGN="middle" BGCOLOR="{$DS_COL_XPRP}">
717 <SPAN style="color:{$DS_COL_WHITE}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">Overview</SPAN>
721 <xsl:if test="@TIMESTAMP">
722 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="left">
723 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif">Generated on</SPAN>
725 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="middle">
726 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@TIMESTAMP"/></SPAN>
731 <xsl:if test="@PROJECTSRC">
732 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="left">
733 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif">Source</SPAN>
735 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="middle">
736 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif">
738 <A HREF="{@PROJECTSRC}" style="text-decoration:none; color:{$DS_COL_XPRP}"><xsl:value-of select="@PROJECTSRC"/></A>
740 <xsl:value-of select="@PROJECTSRC"/>
746 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="left">
747 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif">EDK Version</SPAN>
750 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="middle">
751 <xsl:if test="@EDKVERSION">
752 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@EDKVERSION"/></SPAN>
754 <xsl:if test="not(@EDKVERSION)">
755 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif">NA</SPAN>
760 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="left">
761 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif">FPGA Family</SPAN>
763 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="middle">
764 <xsl:if test="@ARCH">
765 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@ARCH"/></SPAN>
767 <xsl:if test="not(@ARCH)">
768 <SPAN style="color:{$DS_COL_BLACK}; font: normal 10px Verdana,Arial,Helvetica,sans-serif">NA</SPAN>
773 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="left">
774 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif">Device</SPAN>
776 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="middle">
777 <xsl:if test="@PART">
778 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@PART"/></SPAN>
780 <xsl:if test="not(@PART)">
781 <SPAN style="color:{$DS_COL_BLACK}; font: bold 12px Verdana,Arial,Helvetica,sans-serif">-</SPAN>
786 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="left">
787 <SPAN style="color:{$DS_COL_BLACK}; font: Normal 12px Verdana,Arial,Helvetica,sans-serif"># IP Instantiated </SPAN>
789 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="middle">
790 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="$cnt_ip_"/></SPAN>
794 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="left">
795 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"># Processors </SPAN>
797 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="middle">
798 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="$cnt_proc_"/></SPAN>
802 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="left">
803 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"># Busses </SPAN>
805 <TD COLSPAN="1" BGCOLOR="{$DS_COL_WHITE}" align="middle">
806 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="$cnt_busses_"/></SPAN>
815 <!-- ============================== END LAYOUT SNAPSHOT =================================== -->
817 <!-- ============================== LAYOUT INTRODUCTION =================================== -->
818 <xsl:template name="Layout_Introduction">
820 <!-- ============================== END INTRODUCTION ==================================== -->
822 <!-- ============================== External Ports ==================================== -->
823 <xsl:template name="Layout_ExternalPorts">
825 <xsl:variable name="gpin_CNT_" select="count(EXTERNALPORTS/PORT)"/>
826 <xsl:variable name="ipin_CNT_" select="count(EXTERNALPORTS/PORT[@DIR='I'])"/>
827 <xsl:variable name="opin_CNT_" select="count(EXTERNALPORTS/PORT[@DIR='O'])"/>
828 <xsl:variable name="iopin_CNT_" select="count(EXTERNALPORTS/PORT[@DIR='IO'])"/>
830 <xsl:variable name="table_width_">
831 <xsl:if test="$gpin_CNT_ > 16"><xsl:value-of select="$DS_WIDTH"/></xsl:if>
832 <xsl:if test="$gpin_CNT_ <= 16"><xsl:value-of select="$DS_WIDTH"/></xsl:if>
836 <xsl:variable name="left_extra_">
837 <xsl:if test="($gpin_CNT_ mod 2) = 1">1</xsl:if>
838 <xsl:if test="not(($gpin_CNT_ mod 2) = 1)">0</xsl:if>
841 <xsl:variable name="num_left_" select="floor($gpin_CNT_ div 2) + $left_extra_"/>
842 <xsl:variable name="num_rhgt_" select="floor($gpin_CNT_ div 2)"/>
844 <TABLE BGCOLOR="{$DS_COL_BLACK}" WIDTH="{$table_width_}" COLS="8" cellspacing="1" cellpadding="1" border="0">
846 <TD COLSPAN="8" ALIGN="middle" BGCOLOR="{$DS_COL_XPRP}"><SPAN style="color:{$DS_COL_WHITE}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">EXTERNAL PORTS</SPAN></TD>
848 <TD COLSPAN="8" ALIGN="middle" bgcolor="{$DS_COL_WHITE}">
849 <SPAN style="color:{$DS_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">
850 These are the external ports defined in the MHS file.
855 <TD COLSPAN="8" ALIGN="left" bgcolor="{$DS_COL_WHITE}">
856 <SPAN style="color:{$DS_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">Attributes Key</SPAN>
858 <SPAN style="color:{$DS_COL_BLACK}; font: italic 9px Verdana,Arial,Helvetica,sans-serif">The attributes are obtained from the SIGIS and IOB_STATE parameters set on the PORT in the MHS file </SPAN>
860 <SPAN style="color:{$DS_COL_ATTR_CLK}; font: bold 12px Verdana,Arial,Helvetica,sans-serif">CLK</SPAN>
861 <SPAN style="color:{$DS_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">  indicates Clock ports, (SIGIS = CLK) </SPAN>
863 <SPAN style="color:{$DS_COL_ATTR_INT}; font: bold 12px Verdana,Arial,Helvetica,sans-serif">INTR</SPAN>
864 <SPAN style="color:{$DS_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">  indicates Interrupt ports,(SIGIS = INTR) </SPAN>
866 <SPAN style="color:{$DS_COL_ATTR_RST}; font: bold 12px Verdana,Arial,Helvetica,sans-serif">RESET</SPAN>
867 <SPAN style="color:{$DS_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">  indicates Reset ports, (SIGIS = RST) </SPAN>
869 <SPAN style="color:{$DS_COL_ATTR_BUF}; font: bold 12px Verdana,Arial,Helvetica,sans-serif">BUF or REG</SPAN>
870 <SPAN style="color:{$DS_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">  Indicates ports that instantiate or infer IOB primitives, (IOB_STATE = BUF or REG) </SPAN>
873 <xsl:if test="$gpin_CNT_ <= 16">
877 <TD COLSPAN="7" ALIGN="left" bgcolor="{$DS_COL_WHITE}">
879 <TABLE BGCOLOR="{$DS_COL_BLACK}" WIDTH="100%" COLS="9" cellspacing="1" cellpadding="0" border="0">
881 <TD COLSPAN="1" width="5%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">#</SPAN></TD>
882 <TD COLSPAN="2" width="30%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">NAME</SPAN></TD>
883 <TD COLSPAN="1" width="5%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">DIR</SPAN></TD>
884 <TD COLSPAN="1" width="5%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">[LSB:MSB]</SPAN></TD>
885 <TD COLSPAN="2" width="30%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">SIG</SPAN></TD>
886 <TD COLSPAN="2" width="25%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">ATTRIBUTES</SPAN></TD>
888 <xsl:for-each select="EXTERNALPORTS/PORT">
889 <xsl:sort data-type="number" select="@INDEX" order = "ascending"/>
892 <xsl:message>The end of the string is <xsl:value-of select="substring(@GROUP,(string-length(@GROUP) -string-length(@GROUP)) + 1)"/></xsl:message>
893 <xsl:message>The letter is <xsl:value-of select="$groupLetter_"/></xsl:message>
894 <xsl:message>The color is <xsl:value-of select="$glb_bg_col_"/></xsl:message>
895 <xsl:variable name="glb_bg_col_">
897 <xsl:when test="(@GROUP mod 2) = 1">
898 <xsl:value-of select="$DS_COL_ASH"/>
901 <xsl:value-of select="$DS_COL_WHITE"/>
907 <xsl:variable name="glb_bg_col_">
908 <xsl:call-template name="Group2Color">
909 <xsl:with-param name="group" select="@GROUP"/>
914 <TD COLSPAN="1" width="5%" align="left" bgcolor="{$glb_bg_col_}">
915 <SPAN style="color:{$DS_COL_BLACK}; font: bold 14px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@INDEX"/></SPAN><SPAN style="color:{$DS_COL_BLACK}; vertical-align: super; font: bold 10px Arial,Helvetica,sans-serif"><xsl:value-of select="@GROUP"/></SPAN>
917 <TD COLSPAN="2" width="30%" align="left" bgcolor="{$glb_bg_col_}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@NAME"/></SPAN></TD>
918 <TD COLSPAN="1" width="5%" align="middle" bgcolor="{$glb_bg_col_}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@DIR"/></SPAN></TD>
919 <xsl:if test="@MSB and @LSB">
920 <TD COLSPAN="1" width="5%" align="middle" bgcolor="{$glb_bg_col_}"><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>
922 <xsl:if test="not(@MSB and @LSB)">
923 <TD COLSPAN="1" width="5%" align="middle" bgcolor="{$glb_bg_col_}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">1</SPAN></TD>
925 <TD COLSPAN="2" width="30%" align="left" bgcolor="{$glb_bg_col_}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@SIGNAME"/></SPAN></TD>
926 <TD COLSPAN="2" width="25%" align="left" bgcolor="{$glb_bg_col_}">
927 <xsl:if test="@SIGIS='CLK'"><SPAN style="color:{$DS_COL_ATTR_CLK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> CLK </SPAN></xsl:if>
928 <xsl:if test="@SIGIS='RST'"><SPAN style="color:{$DS_COL_ATTR_RST}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> RESET </SPAN></xsl:if>
929 <xsl:if test="@SIGIS='INTERRUPT'"><SPAN style="color:{$DS_COL_ATTR_INT}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> INTR </SPAN></xsl:if>
930 <xsl:if test="@IOB_STATE='BUF'"><SPAN style="color:{$DS_COL_ATTR_BUF}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> BUF </SPAN></xsl:if>
931 <xsl:if test="@IOB_STATE='REG'"><SPAN style="color:{$DS_COL_ATTR_BUF}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> REG </SPAN></xsl:if>
939 <xsl:if test="$gpin_CNT_ > 16">
943 <TD COLSPAN="3" WIDTH="49%">
944 <TABLE BGCOLOR="{$DS_COL_BLACK}" WIDTH="100%" COLS="9" cellspacing="1" cellpadding="0" border="0">
945 <TD COLSPAN="1" width="5" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">#</SPAN></TD>
946 <TD COLSPAN="2" width="30%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">NAME</SPAN></TD>
947 <TD COLSPAN="1" width="5%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">DIR</SPAN></TD>
948 <TD COLSPAN="1" width="5%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">[LSB:MSB]</SPAN></TD>
949 <TD COLSPAN="2" width="30%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">SIG</SPAN></TD>
950 <TD COLSPAN="2" width="25%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">ATTRIBUTES</SPAN></TD>
952 <xsl:for-each select="EXTERNALPORTS/PORT">
953 <xsl:sort data-type="number" select="@INDEX" order = "ascending"/>
955 <xsl:if test="position() <= $num_left_">
957 <xsl:variable name="glb_bg_col_">
958 <xsl:call-template name="Group2Color">
959 <xsl:with-param name="group" select="@GROUP"/>
963 <xsl:message>NAME: <xsl:value-of select="@NAME"/></xsl:message>
964 <xsl:message>SIGIS: <xsl:value-of select="@SIGIS"/></xsl:message>
968 <TD COLSPAN="1" width="5%" align="left" bgcolor="{$glb_bg_col_}">
969 <SPAN style="color:{$DS_COL_BLACK}; font: bold 14px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@INDEX"/></SPAN><SPAN style="color:{$DS_COL_BLACK}; vertical-align: super; font: bold 10px Arial,Helvetica,sans-serif"><xsl:value-of select="@GROUP"/></SPAN>
971 <TD COLSPAN="2" width="30%" align="left" bgcolor="{$glb_bg_col_}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@NAME"/></SPAN></TD>
972 <TD COLSPAN="1" width="5%" align="middle" bgcolor="{$glb_bg_col_}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@DIR"/></SPAN></TD>
973 <xsl:if test="@MSB and @LSB">
974 <TD COLSPAN="1" width="5%" align="middle" bgcolor="{$glb_bg_col_}"><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>
976 <xsl:if test="not(@MSB and @LSB)">
977 <TD COLSPAN="1" width="5%" align="middle" bgcolor="{$glb_bg_col_}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">1</SPAN></TD>
979 <TD COLSPAN="2" width="30%" align="left" bgcolor="{$glb_bg_col_}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@SIGNAME"/></SPAN></TD>
980 <TD COLSPAN="2" width="25%" align="left" bgcolor="{$glb_bg_col_}">
981 <xsl:if test="@SIGIS='CLK'"><SPAN style="color:{$DS_COL_GREEN}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> CLK </SPAN></xsl:if>
982 <xsl:if test="@SIGIS='RST'"><SPAN style="color:{$DS_COL_ATTR_RST}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> RESET </SPAN></xsl:if>
983 <xsl:if test="@SIGIS='INTERRUPT'"><SPAN style="color:{$DS_COL_ATTR_INT}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> INTR </SPAN></xsl:if>
984 <xsl:if test="@IOB_STATE='BUF'"><SPAN style="color:{$DS_COL_ATTR_BUF}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> BUF </SPAN></xsl:if>
985 <xsl:if test="@IOB_STATE='REG'"><SPAN style="color:{$DS_COL_ATTR_BUF}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> REG </SPAN></xsl:if>
994 <TD COLSPAN="1" WIDTH="2%" BGCOLOR="{$DS_COL_GREY}">
995 <SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> </SPAN>
998 <TD COLSPAN="3" WIDTH="49%">
1000 <TABLE BGCOLOR="{$DS_COL_BLACK}" WIDTH="100%" COLS="9" cellspacing="1" cellpadding="0" border="0">
1001 <TD COLSPAN="1" width="5%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">#</SPAN></TD>
1002 <TD COLSPAN="2" width="30%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">NAME</SPAN></TD>
1003 <TD COLSPAN="1" width="5%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">DIR</SPAN></TD>
1004 <TD COLSPAN="1" width="5%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">[LSB:MSB]</SPAN></TD>
1005 <TD COLSPAN="2" width="30%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">SIG</SPAN></TD>
1006 <TD COLSPAN="2" width="25%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">ATTRIBUTES</SPAN></TD>
1008 <xsl:for-each select="EXTERNALPORTS/PORT">
1009 <xsl:sort data-type="number" select="@INDEX" order = "ascending"/>
1011 <xsl:if test="position() > $num_left_">
1013 <xsl:variable name="glb_bg_col_">
1015 <xsl:when test="(@GROUP mod 2) = 1">
1016 <xsl:value-of select="$DS_COL_ASH"/>
1019 <xsl:value-of select="$DS_COL_WHITE"/>
1025 <xsl:variable name="glb_bg_col_">
1026 <xsl:call-template name="Group2Color">
1027 <xsl:with-param name="group" select="@GROUP"/>
1028 </xsl:call-template>
1032 <TD COLSPAN="1" width="5%" align="left" bgcolor="{$glb_bg_col_}">
1033 <SPAN style="color:{$DS_COL_BLACK}; font: bold 14px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@INDEX"/></SPAN><SPAN style="color:{$DS_COL_BLACK}; vertical-align: super; font: bold 10px Arial,Helvetica,sans-serif"><xsl:value-of select="@GROUP"/></SPAN>
1035 <TD COLSPAN="2" width="30%" align="left" bgcolor="{$glb_bg_col_}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@NAME"/></SPAN></TD>
1036 <TD COLSPAN="1" width="5%" align="middle" bgcolor="{$glb_bg_col_}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@DIR"/></SPAN></TD>
1038 <xsl:if test="@MSB and @LSB">
1039 <TD COLSPAN="1" width="5%" align="middle" bgcolor="{$glb_bg_col_}"><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>
1041 <xsl:if test="not(@MSB and @LSB)">
1042 <TD COLSPAN="1" width="5%" align="middle" bgcolor="{$glb_bg_col_}"><SPAN style="color:{$DS_COL_BLACK}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">1</SPAN></TD>
1044 <TD COLSPAN="2" width="30%" align="left" bgcolor="{$glb_bg_col_}"><SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="@SIGNAME"/></SPAN></TD>
1045 <TD COLSPAN="2" width="25%" align="left" bgcolor="{$glb_bg_col_}">
1046 <xsl:if test="@SIGIS='CLK'"><SPAN style="color:{$DS_COL_GREEN}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> CLK </SPAN></xsl:if>
1047 <xsl:if test="@SIGIS='RST'"><SPAN style="color:{$DS_COL_ATTR_RST}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> RESET </SPAN></xsl:if>
1048 <xsl:if test="@SIGIS='INTERRUPT'"><SPAN style="color:{$DS_COL_ATTR_INT}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> INTR </SPAN></xsl:if>
1049 <xsl:if test="@IOB_STATE='BUF'"><SPAN style="color:{$DS_COL_ATTR_BUF}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> BUF </SPAN></xsl:if>
1050 <xsl:if test="@IOB_STATE='REG'"><SPAN style="color:{$DS_COL_ATTR_BUF}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> REG </SPAN></xsl:if>
1055 <xsl:if test="$left_extra_ > 0">
1057 <TD COLSPAN="9" WIDTH="100%" align="left" bgcolor="{$DS_COL_WHITE}"><SPAN style="color:{$DS_COL_WHITE}; font: bold 10px Verdana,Arial,Helvetica,sans-serif"> </SPAN></TD>
1070 <xsl:template name="Group2Color">
1072 <xsl:param name="group" select="'A'"/>
1074 <xsl:variable name="letter">
1075 <xsl:value-of select="substring($group,(string-length($group) -string-length($group)) + 1)"/>
1079 <xsl:when test="$group = 'GLB'"><xsl:value-of select="$DS_COL_WHITE"/></xsl:when>
1081 <xsl:when test="$letter = 'A'"><xsl:value-of select="$DS_COL_ASH"/></xsl:when>
1082 <xsl:when test="$letter = 'C'"><xsl:value-of select="$DS_COL_ASH"/></xsl:when>
1083 <xsl:when test="$letter = 'E'"><xsl:value-of select="$DS_COL_ASH"/></xsl:when>
1084 <xsl:when test="$letter = 'G'"><xsl:value-of select="$DS_COL_ASH"/></xsl:when>
1085 <xsl:when test="$letter = 'I'"><xsl:value-of select="$DS_COL_ASH"/></xsl:when>
1086 <xsl:when test="$letter = 'K'"><xsl:value-of select="$DS_COL_ASH"/></xsl:when>
1087 <xsl:when test="$letter = 'M'"><xsl:value-of select="$DS_COL_ASH"/></xsl:when>
1088 <xsl:when test="$letter = 'O'"><xsl:value-of select="$DS_COL_ASH"/></xsl:when>
1089 <xsl:when test="$letter = 'Q'"><xsl:value-of select="$DS_COL_ASH"/></xsl:when>
1090 <xsl:when test="$letter = 'S'"><xsl:value-of select="$DS_COL_ASH"/></xsl:when>
1091 <xsl:when test="$letter = 'U'"><xsl:value-of select="$DS_COL_ASH"/></xsl:when>
1092 <xsl:when test="$letter = 'W'"><xsl:value-of select="$DS_COL_ASH"/></xsl:when>
1093 <xsl:when test="$letter = 'Y'"><xsl:value-of select="$DS_COL_ASH"/></xsl:when>
1095 <xsl:when test="$letter = 'B'"><xsl:value-of select="$DS_COL_WHITE"/></xsl:when>
1096 <xsl:when test="$letter = 'D'"><xsl:value-of select="$DS_COL_WHITE"/></xsl:when>
1097 <xsl:when test="$letter = 'F'"><xsl:value-of select="$DS_COL_WHITE"/></xsl:when>
1098 <xsl:when test="$letter = 'H'"><xsl:value-of select="$DS_COL_WHITE"/></xsl:when>
1099 <xsl:when test="$letter = 'J'"><xsl:value-of select="$DS_COL_WHITE"/></xsl:when>
1100 <xsl:when test="$letter = 'L'"><xsl:value-of select="$DS_COL_WHITE"/></xsl:when>
1101 <xsl:when test="$letter = 'N'"><xsl:value-of select="$DS_COL_WHITE"/></xsl:when>
1102 <xsl:when test="$letter = 'P'"><xsl:value-of select="$DS_COL_WHITE"/></xsl:when>
1103 <xsl:when test="$letter = 'R'"><xsl:value-of select="$DS_COL_WHITE"/></xsl:when>
1104 <xsl:when test="$letter = 'T'"><xsl:value-of select="$DS_COL_WHITE"/></xsl:when>
1105 <xsl:when test="$letter = 'V'"><xsl:value-of select="$DS_COL_WHITE"/></xsl:when>
1106 <xsl:when test="$letter = 'X'"><xsl:value-of select="$DS_COL_WHITE"/></xsl:when>
1107 <xsl:when test="$letter = 'Z'"><xsl:value-of select="$DS_COL_WHITE"/></xsl:when>
1110 <xsl:value-of select="$DS_COL_WHITE"/>
1119 <xsl:template name="Layout_TimingInfo">
1121 <xsl:variable name="mtiming_CNT_" select="count(MODULES/MODULE/TIMING)"/>
1123 <TABLE BGCOLOR="{$DS_COL_BLACK}" WIDTH="{ceiling($DS_WIDTH div 2)}" COLS="5" cellspacing="1" cellpadding="1" border="1">
1124 <TD COLSPAN="5" width="100%" align="middle" bgcolor="{$DS_COL_XPRP}"><SPAN style="color:{$DS_COL_WHITE}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">Post Synthesis Clock Limits</SPAN></TD>
1126 <xsl:if test="$mtiming_CNT_ < 1">
1127 <TD COLSPAN="5" width="100%" align="middle" bgcolor="{$DS_COL_WHITE}">
1128 <SPAN style="color:{$DS_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">
1129 No clocks could be identified in the design. Run platgen to generate synthesis information.
1133 <xsl:if test="$mtiming_CNT_ > 0">
1134 <TD COLSPAN="5" width="100%" align="left" bgcolor="{$DS_COL_WHITE}">
1135 <SPAN style="color:{$DS_COL_INFO}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">
1136 These are the post synthesis clock frequencies. The critical frequencies are marked with
1138 <SPAN style="color:{$DS_COL_GREEN}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">
1142 <SPAN style="color:{$DS_COL_RED}; font: bold 9px Verdana,Arial,Helvetica,sans-serif">
1143 The values reported here are post synthesis estimates calculated for each individual module. These values will change after place and route is performed on the entire system.
1147 <TD COLSPAN="2" width="40%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">MODULE</SPAN></TD>
1148 <TD COLSPAN="2" width="40%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">CLK Port</SPAN></TD>
1149 <TD COLSPAN="1" width="20%" align="left" bgcolor="{$DS_COL_GREY}"><SPAN style="color:{$DS_COL_XPRP}; font: bold 10px Verdana,Arial,Helvetica,sans-serif">MAX FREQ</SPAN></TD>
1151 <xsl:for-each select="MODULES/MODULE/TIMING">
1152 <xsl:sort data-type="number" select="@MAXFREQ" order="ascending"/>
1153 <xsl:variable name="maxFreq_" select="@MAXFREQ"/>
1154 <xsl:variable name="freqUnit_" select="@FREQUNITS"/>
1155 <xsl:variable name="freqCol_">
1156 <xsl:if test="position() = 1">
1157 <xsl:value-of select="$DS_COL_GREEN"/>
1159 <xsl:if test="not(position() = 1)">
1160 <xsl:value-of select="$DS_COL_BLACK"/>
1164 <xsl:for-each select="TIMECLK">
1167 <TD COLSPAN="2" width="40%" align="left" bgcolor="{$DS_COL_WHITE}">
1168 <A HREF="#_{../../@INSTANCE}" style="text-decoration:none">
1169 <SPAN style="color:{$DS_COL_XPRP}; font: italic 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="../../@INSTANCE"/></SPAN>
1173 <TD COLSPAN="2" width="40%" align="left" bgcolor="{$DS_COL_WHITE}">
1174 <SPAN style="color:{$DS_COL_BLACK}; font: normal 12px Verdana,Arial,Helvetica,sans-serif">
1175 <xsl:value-of select="@SIGNAME"/>
1179 <TD COLSPAN="1" width="20%" align="left" bgcolor="{$DS_COL_WHITE}">
1180 <SPAN style="color:{$freqCol_}; font: normal 12px Verdana,Arial,Helvetica,sans-serif">
1181 <xsl:value-of select="$maxFreq_"/><xsl:value-of select="$freqUnit_"/>
1192 <!-- ============================== END GLOBAL PINOUT ==================================== -->
1194 <xsl:template name="Layout_NavigateHeader">
1195 <xsl:param name="header_name" select="HEADER"/>
1199 <TABLE BGCOLOR="{$DS_COL_XPRP}" WIDTH="{$DS_WIDTH}" COLS="3" cellspacing="0" cellpadding="0" border="0">
1200 <TH COLSPAN="1" width="90%" align="left"> <SPAN style="color:{$DS_COL_WHITE}; font: bold 12px Verdana,Arial,Helvetica,sans-serif"><xsl:value-of select="$header_name"/></SPAN></TH>
1201 <xsl:if test="$DS_TYPE='NOFRAMES'">
1202 <TH COLSPAN="1" width="10%" align="middle"><A HREF="#_TOC" style="text-decoration:none"><SPAN style="color:{$DS_COL_LGRY}; font: bold 14px Verdana Arial,Helvetica,sans-serif">TOC</SPAN></A></TH>
1204 <xsl:if test="$DS_TYPE='FRAMES'">
1205 <TH COLSPAN="1" width="10%" align="middle"><A HREF="#_Overview" style="text-decoration:none"><SPAN style="color:{$DS_COL_LGRY}; font: bold 14px Verdana Arial,Helvetica,sans-serif">TOP</SPAN></A></TH>