OpenCores
URL https://opencores.org/ocsvn/lcd/lcd/trunk

Subversion Repositories lcd

[/] [lcd/] [web_uploads/] [alliance.shtml] - Rev 6

Compare with Previous | Blame | View Log

<html>
 
<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>A Little Bit about Alliance</title>
</head>
 
<body bgcolor="#FFCCCC">
 
<p align="center"><font face="Times New Roman" size="5">A Little Bit about
Alliance</font></p>
<p align="center">&nbsp;</p>
<p><font size="4"><b>A.&nbsp; Introduction</b></font></p>
<p><font size="4">Alliance is a Computer Aided Design System for Very Large
Scale Integrated Circuits (VLSI) design.&nbsp; Alliance is a non-commercial
software developed by Équipe Achitecture des Systèmes et Micro-Électronique,
Laboratoire d'Informatique de Paris 6,Université Pierre et Marie Curie,
France.&nbsp; So, if you are interested in Alliance, you can get the software
and more information at <a href="http://www-asim.lip6.fr">http://www-asim.lip6.fr</a>
.&nbsp; We usually run this software under Linux Operating Systems (we use Red
Hat Linux 6.2).</font></p>
<font size="4">The ALLIANCE VHDL</font>&nbsp; is dedicated to digital
synchronous circuits design, which is usually used for:
<ul>
  <li><font size="4">logic simulation </font>
  <li><font size="4">logic synthesis </font>
  <li><font size="4">functional abstraction </font>
  <li><font size="4">formal proof</font> </li>
</ul>
<p><font size="4">The ALLIANCE VHDL&nbsp; is fully compatible with the IEEE VHDL
standard Ref. 1076 (1987). That means that a VHDL description using the ALLIANCE
subset can be simulated with any full-VHDL commercial compiler-simulator.</font></p>
<p><font size="4">The VHDL description of a circuit is made of two separate
parts: the external view and the internal view.</font>
<p><font size="4">The external view defines the name of the circuit and its
interface. The interface of a circuit is a list of ports. Each port is specified
by its name, its mode, its type, its constraint for an array and, its kind.</font>
<p><font size="4">The mode of a port depends only on the manner the port is used
inside the circuit (in the internal view of the circuit). If the value of a port
is to be read in the view of the description, the port must be declared with the
mode <code>IN</code>. If the value of a port is to be written by the internal
view, the port must be declared with the mode <code>OUT</code>. If both above
conditions are satisfied the port must be declared with the mode <code>INOUT</code>.</font>&nbsp;
<font size="4">Only structural and behavioural data flow are supported as
internal view.</font>
<p><font size="4">A circuit, a subcircuit, or a cell can have two different
descriptions:</font>
<ul>
  <li><font size="4">a structural view may be defined in a file with a <code>.vst</code>
    extension </font>
  <li><font size="4">a behavioural data flow description may be defined in a
    file with a <code>.vbe</code> extension.</font></li>
</ul>
<p>&nbsp;</p>
<p><font size="4"><b>B.&nbsp; Starting Using Alliance</b></font></p>
<p><font size="4">We can start using Alliance by linking our workspace to the
source of Alliance by typing :</font></p>
<p>&nbsp;&nbsp; <font size="4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<b>source /home/cad/alliance/share/etc/alc_env.csh</b></font></p>
<p><font size="4">here we assume that the Alliance is located in directory&nbsp;
/home/cad.</font></p>
<p><font size="4">The next step is to set the environment of Alliance.&nbsp; We
usually use logic gates from <b>sclib</b> to develop a circuit.&nbsp; So, we
must set the environment by typing :<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font></p>
<p>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <font size="4"><b>setenv
MBK_CATA_LIB .:/home/cad/alliance/archi/Linux/cells/sclib</b></font></p>
<p><font size="4">We must know the symbolic name of gate that we use by seeing
manual of <b>sclib</b>. To see manual of all about command we want to know, we
can type </font></p>
<p>&nbsp;&nbsp; <font size="4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<b>man name_of_command </b></font></p>
<p><font size="4">After that, we can start our design by typing the source code
in the text editor.&nbsp; Our design can be from behavioural data flow
description or logic circuit description.&nbsp; We can write our comment like
this :</font></p>
<p>&nbsp;&nbsp; <font size="4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/* our_comment */</font></p>
<p><font size="4">If our design comes from behavioural data flow description, we
save it with a&nbsp; <b>.vbe</b> extension.&nbsp; You can see examples of&nbsp;
behavioural D-Flip Flop design <a href="dflipflop.shtml">here</a>. </font></p>
<p><font size="4">If our design comes from logic circuit description, we save it
with a&nbsp;&nbsp; <b>.c</b>&nbsp;&nbsp; extension.</font> <font size="4">In
order to write this file, we must follow the syntax below :</font></p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0">/*<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0"><span style="mso-spacerun: yes">&nbsp;&nbsp;
</span>genlib.h is required for all genlib programs.<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0"><span style="mso-spacerun: yes">&nbsp;&nbsp;
</span>it defines the set of functions we will use for schematic capture<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0">*/</p>
<p>#include &lt;genlib.h&gt;<br>
</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0">/*<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0"><span style="mso-spacerun: yes">&nbsp;
</span>decoder.c is to become the `core' executable program. So we must<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0"><span style="mso-spacerun: yes">&nbsp;&nbsp;
</span>define a main procedure main()<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0">*/<o:p>
</o:p>
</p>
<p>main()<br>
{<br>
DEF_LOFIG(&quot;decoder&quot;);&nbsp;&nbsp;&nbsp; /* decoder.c&nbsp; is our file
name */<br>
</p>
<p style="margin: 0">/* define inputs and outputs of our system */</p>
<p class="MsoNormal" style="margin: 0">&nbsp;</p>
<p class="MsoNormal" style="margin: 0">/*<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin: 0"><span style="mso-spacerun: yes">&nbsp;&nbsp;
</span>We start with the input terminals.<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin: 0"><span style="mso-spacerun: yes">&nbsp;&nbsp;
</span>Only signals and connectors can be vectorized.<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin: 0">*/<o:p>
</o:p>
</p>
<p style="word-spacing: 0; margin: 0">LOCON(&quot;x&quot;, IN, &quot;x&quot; );&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/* define input */<br>
LOCON(&quot;res&quot;, IN, &quot;res&quot; );&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/* define reset&nbsp; input, if we need it */<br>
LOCON(&quot;ck&quot;, IN, &quot;ck&quot; );&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/* define clock input */</p>
<p style="word-spacing: 0; margin: 0">LOCON(&quot;z&quot;, INOUT, &quot;z&quot;
);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* define an output of a gate
but acts as input of another gate */</p>
<p style="word-spacing: 0; margin: 0">&nbsp;</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0">/*<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0"><span style="mso-spacerun: yes">&nbsp;&nbsp;
</span>Then,<span style="mso-spacerun: yes">&nbsp; </span>the output terminals.<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0">*/<o:p>
</o:p>
</p>
<p style="word-spacing: 0; margin: 0"><br>
LOCON(&quot;y[0:1]&quot;, OUT, &quot;y[0:1]&quot; );&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* define output consists of 2
bits*/</p>
<p style="word-spacing: 0; margin: 0">&nbsp;</p>
<p style="word-spacing: 0; margin: 0">&nbsp;</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0">/*<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0"><span style="mso-spacerun: yes">&nbsp;&nbsp;
</span>Then the supplies.<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0"><span style="mso-spacerun: yes">&nbsp;&nbsp;
</span>They are inputs, but we like them better at the end of the<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0"><span style="mso-spacerun: yes">&nbsp;&nbsp;
</span>description.<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0">*/<o:p>
</o:p>
</p>
<p style="word-spacing: 0; margin: 0">LOCON(&quot;vdd&quot;, IN, &quot;vdd&quot;
);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* define vdd input */<br>
LOCON(&quot;vss&quot;, IN, &quot;vss&quot; );&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/* define vss input */<br>
<br>
....</p>
<p style="word-spacing: 0; margin: 0">&nbsp;</p>
<p style="word-spacing: 0; margin: 0">/* define all components that we use to
develop our system */</p>
<p style="word-spacing: 0; margin: 0">&nbsp;</p>
<p style="word-spacing: 0; margin: 0">LOINS(&quot;a2_y&quot;, &quot;a1&quot;,&nbsp;
&quot;x&quot;,&nbsp; &quot;m&quot;, &quot;z&quot;, &quot;vdd&quot;, &quot;vss&quot;,0);</p>
<p style="word-spacing: 0; margin: 0">&nbsp;</p>
<p style="word-spacing: 0; margin: 0">/*&nbsp; a2_y is a simbolic name for 2
inputs <b>and gate</b> */</p>
<p style="word-spacing: 0; margin: 0">/*<b>&nbsp; </b>a1 is our given name for
this component where there must&nbsp; be no same name in<b> </b>the same file */</p>
<p style="word-spacing: 0; margin: 0">/*&nbsp; x and m is inputs of a1 */</p>
<p style="word-spacing: 0; margin: 0">/*&nbsp; z is the output of a1&nbsp; */</p>
<p style="word-spacing: 0; margin: 0">&nbsp;</p>
<p style="word-spacing: 0; margin: 0">....</p>
<p style="word-spacing: 0; margin: 0">&nbsp;</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0">SAVE_LOFIG();<o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0"><span style="mso-spacerun: yes">&nbsp;&nbsp;
</span>exit(0);<span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>/* necessary for the proper run of the Makefile */ <o:p>
</o:p>
</p>
<p class="MsoNormal" style="margin-top: 0; margin-bottom: 0">}<span style="mso-spacerun: yes">&nbsp;
</span><o:p>
</o:p>
</p>
<p style="word-spacing: 0; margin: 0">&nbsp;</p>
<p style="word-spacing: 0; margin: 0"><font size="4"><a href="counter.shtml">Here</a>
we can see the example <b>.c</b> file of 4-bit counter.</font></p>
<p style="word-spacing: 0; margin: 0">&nbsp;</p>
<p style="word-spacing: 0; margin: 0"><font size="4"><b>C.&nbsp; Basic Alliance
Tools</b></font></p>
<p style="word-spacing: 0; margin: 0">&nbsp;</p>
<p style="word-spacing: 0; margin: 0"><font size="4">After that, we </font><font size="4">are
now ready to actually design the chip and use the Alliance tools. The design
flow for this little example is composed of 5 main steps:</font></p>
<ul>
  <li>
    <p style="margin-top: 0; margin-bottom: 0"><font size="4">behavioral capture
    and simulation</font></li>
  <li>
    <p style="margin-top: 0; margin-bottom: 0"><font size="4">netlist capture
    and validation</font></li>
  <li>
    <p style="margin-top: 0; margin-bottom: 0"><font size="4">physical layout
    generation</font></li>
  <li>
    <p style="margin-top: 0; margin-bottom: 0"><font size="4">design validation</font></li>
  <li>
    <p style="margin-top: 0; margin-bottom: 0"><font size="4">symbolic to real
    conversion.</font></li>
</ul>
<p><font size="4">First of all, we must make a structural file (<b>.vst</b>).&nbsp;
We can get structural view from our behavioural data flow description (<b>.vbe</b>)&nbsp;
file or from our <b>.c</b> file.&nbsp; Here are the basic Alliance tools :</font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><b><font size="4">(i)<span style="mso-spacerun: yes">&nbsp;
</span>genlib</font></b></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4">By
using this tool, we can change our logic circuit description file (<b>.c</b>)
into structural file (<b>.vst</b>) which more useful in next process. <b><O:P>
 </b>The command is :</font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4">&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<b>&nbsp;&nbsp; </b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<b>genlib .c_file_name</O:P>
</b></font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><b><font size="4">(ii)<span style="mso-spacerun: yes">&nbsp;
</span>scmap<O:P>
 </font></b></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4">Our
behavioural data flow description file (<b>.vbe</b>) can be changed into
structural file (<b>.vst</b>) by using this tool. The command is :<br>
</font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4"><b>&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
scmap .vbe_ file_name .vst_file_name
</b></font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4">We
can see the structural file (<b>.vst</b>) generated from the previous
behavioural D-Flip Flop design <a href="struct.shtml">here</a>.<b></O:P>
</b></font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><b><font size="4">(iii)&nbsp;
asimut </font></b></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4">This
tool is usually used to simulate our design by giving some inputs.&nbsp; We can
see simulation results, which can be compared to our expected outputs.&nbsp; We
must create a test pattern file (<b>.pat</b>)&nbsp; contains some inputs we will
use in the simulation.&nbsp; You can see the example of test pattern file <a href="test.shtml">here</a>.&nbsp;
The command is :</font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4"><br>
<b>&nbsp;asimut .vst_file_name test_pattern_file_name
simulation_results_file_name</b> <b><O:P>
</O:P>
</b></font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><b><font size="4">(iv)&nbsp;
xsch<O:P>
 </O:P>
</font></b></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4">We
can see logic circuit of our structural file by using this tools.</font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><b><font size="4">(v)&nbsp;
xpat<O:P>
 </O:P>
</font></b></p>
<font size="4">We can see timing diagrams of test pattern file (<b>.pat</b>) and our asimut
result file (<b>.pat</b>) by using <b>xpat</b> tool.</font>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><b><font size="4">(vi)&nbsp;
scr<O:P>
 </O:P>
</font></b></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4">Our
structural file can be extracted into symbolic layout using <b>scr</b>.&nbsp;
The command is :<br>
&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<b>scr -sclib -p -r&nbsp; file_name</b></font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4">This
symbolic layout result (<b>.ap</b>) can be viewed by <b>graal</b> tool.<b><O:P>
 </O:P>
</b></font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><b><font size="4">(vii)&nbsp;
s2r</font></b></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4">Our
symbolic layout can be changed into real layout by using <b>s2r</b>.&nbsp; The
command is :<br>
<b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
s2r file_name</b>&nbsp; </font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4">This
real layout (<b>.cif</b>) can be viewed by using <b>dreal</b> tool.</font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><b><font size="4">(viii)&nbsp;<span style="mso-spacerun: yes">
</span>lynx<O:P>
 </O:P>
</font></b></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4">Our
real layout can be changed into new structural file (<b>.al</b>) by using <b>lynx</b>.&nbsp;
First, we must set the environmet by the command :</font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4"><b>&nbsp;&nbsp;&nbsp;</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<b>setenv MBK_OUT_LO al</b></font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4">then
we type the command :</font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify">&nbsp;&nbsp;&nbsp;<font size="4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<b>lynx&nbsp; -v&nbsp; .ap_file_name&nbsp; output_file_name&nbsp; -f</b></font></p>
<p class="MsoNormal" style="LINE-HEIGHT: 150%; TEXT-ALIGN: justify"><font size="4">After
this, we can do simulation post-layout on the old (<b>.vst</b>) and new (<b>.al</b>)
structural file by using <b>lvx</b>.&nbsp; The command is : </font></p>
<p><b><font size="4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
lvx&nbsp; vst&nbsp; al&nbsp; .vst_file_name&nbsp; .al_file_name</font></b></p>
<p><font size="4">Another way to compare the result is using <b>asimut</b>.&nbsp;
We can simulate the new structural file (<b>.al</b>) with the previous test
pattern file using asimut.&nbsp; But first, we must set the environment :<br>
 </font></p>
<p><b>&nbsp;&nbsp;&nbsp;</b><font size="4"><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
setenv MBK_IN_LO al</b></font></p>
<p><font size="4">then using <b>asimut</b> :</font></p>
<p align="center"><font size="4"><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
asimut .al_file_name&nbsp; testpattern_file_name&nbsp; result_file_name &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</b></font></p>
<p><font size="4">After that we can compare the new simulation result with the
previous simulation result.&nbsp; We expect to get the same result.</font></p>
 
<p>&nbsp;</p>
 
<p><font size="4">To know more about Alliance and find tutorials, you can
visit&nbsp; <a href="http://www-asim.lip6.fr">http://www-asim.lip6.fr</a></font></p>
 
</body>
 
</html>
 

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.