Line 11... |
Line 11... |
<meta name="Info 4" content="">
|
<meta name="Info 4" content="">
|
<meta name="date" content="2008-01-08T12:01:41-0500">
|
<meta name="date" content="2008-01-08T12:01:41-0500">
|
<meta name="robots" content="index,follow">
|
<meta name="robots" content="index,follow">
|
</head>
|
</head>
|
<body dir="ltr" lang="en-US">
|
<body dir="ltr" lang="en-US">
|
<div id="toc__header" dir="ltr">
|
|
<p><br>
|
|
<br>
|
|
</p>
|
|
</div>
|
|
<h1><a name="socgen_project"></a><font size="+3">SOCGEN Project</font></h1>
|
<h1><a name="socgen_project"></a><font size="+3">SOCGEN Project</font></h1>
|
<h2><br>
|
<h2><br>
|
</h2>
|
</h2>
|
The mission of the SOCGEN project is to provide a blueprint showing
|
The mission of the SOCGEN project is to provide a blueprint showing
|
digital designers how to create a System_on_chip (SOC) by
|
digital designers how to create a System_on_chip (SOC) by
|
assembling components created by a variety of sources. It will
|
assembling components created by a variety of sources. It will
|
show how to create a component that can be reused and provides a
|
show how to create a component that can be reused and provides a
|
free opensourced tool set that can be used to assemble and verify
|
free opensourced tool set that can be used to assemble and verify
|
a design. It employs modern design for reuse techniques to reduce the
|
a design. It employs modern design for reuse techniques to reduce the
|
waste and ineffiencies that is inherent in handcrafting a design<br>
|
waste and inefficiencies that is inherent in handcrafting a design<br>
|
<br>
|
<br>
|
<br>
|
<br>
|
<br>
|
<br>
|
<br>
|
<br>
|
<br>
|
<br>
|
Line 46... |
Line 41... |
for one specific purpose only to find out later that other designers
|
for one specific purpose only to find out later that other designers
|
want to use it. Create all designs with the intent that they will be
|
want to use it. Create all designs with the intent that they will be
|
reused in ways that you haven't imagined and you won't have to scramble
|
reused in ways that you haven't imagined and you won't have to scramble
|
later. <br>
|
later. <br>
|
<br>
|
<br>
|
<h2><font><font size="+1">Design for the lowest common demoninator</font></font></h2>
|
<br>
|
|
<h2><font size="+1">Maintain the design<br>
|
|
</font></h2>
|
|
Releasing a chip to production is not the end of the job. You must
|
|
still continue to maintain the design. You cannot archive a chip data
|
|
base into offline storage and simply put it on the shelf. Do you really
|
|
think that you can pull it down 20 years later and recreate the chip?
|
|
Bit Rot is real. Even if you can read the bits off the magtape that you
|
|
used to use then you will find that you can no longer get the same
|
|
version of the tools that you used to build the chip. The
|
|
original IC process will be long gone and the current ones have added
|
|
new requirements that your code doesn't meet.<br>
|
|
<br>
|
|
When you finish a chip you archive an exact copy of all the data and
|
|
freeze that forever. Your design then continues to live on. When
|
|
you get a new version of a tool you rebuild and test everything
|
|
and fix problems. As new processes come online you retarget the design
|
|
to use them. As component ip is reved you upgrade and run the test
|
|
suite.<br>
|
|
<br>
|
|
Then when your original product is winding down and someone wants a
|
|
follow up product then you have a head start.<br>
|
|
<br>
|
|
<br>
|
|
<h2><font><font size="+1">Design for the lowest common denominator</font></font></h2>
|
Everybody loves to use some quirky little feature of the design target
|
Everybody loves to use some quirky little feature of the design target
|
to squeeze a little extra preformance out of the system. But if you do
|
to squeeze a little extra performance out of the system. But if you do
|
then you are locked into that target and cannot easily reuse the design
|
then you are locked into that target and cannot easily reuse the design
|
on a different target. Why do you think they put those features in the
|
on a different target. Why do you think they put those features in the
|
first place? Instead you should survey the field and only use the
|
first place? Instead you should survey the field and only use the
|
features that all target technologies can match<br>
|
features that all target technologies can match<br>
|
<br>
|
<br>
|
<br>
|
<br>
|
<h2><font><font><font><font size="+1">Design in a completely generic
|
<h2><font><font><font><font size="+1">Design in a completely generic
|
technology<br>
|
technology<br>
|
</font></font></font></font></h2>
|
</font></font></font></font></h2>
|
Design is a two step process. First the design is created and verified
|
Design is a two step process. First the design is created and verified
|
in a completely generic behaverioral RTL format and then converted into
|
in a completely generic behavioral RTL format and then converted into
|
the target technology. It is tempting to try to save time be designing
|
the target technology. It is tempting to try to save time be designing
|
in the target technology but this will make it harder to reuse.<br>
|
in the target technology but this will make it harder to reuse.<br>
|
<br>
|
<br>
|
<br>
|
<br>
|
<h2><font><font><font><font><font><font><font><font size="+1">Automate
|
<h2><font><font><font><font><font><font><font><font size="+1">Automate
|
Line 75... |
Line 94... |
tool. The designers job is to create the configuration files
|
tool. The designers job is to create the configuration files
|
needed by the tools and let automation do all the work.<br>
|
needed by the tools and let automation do all the work.<br>
|
</p>
|
</p>
|
<p><br>
|
<p><br>
|
</p>
|
</p>
|
<h2><font><font><font><font><font><font><font><font size="+1">Never
|
|
Check Generated Files into a Database</font></font></font></font></font></font></font></font></h2>
|
|
The Revision Control System (RCS) that contains the design should only
|
|
contain the minimul seed data needed to rebuild the entire design. It
|
|
should never contain any files that were generated by the build
|
|
process. <br>
|
|
<br>
|
|
<h2><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font
|
<h2><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font
|
size="+1">Do not keep duplicate copies of a file in the database</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></h2>
|
size="+1">Do not keep duplicate copies of a file in the database</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></h2>
|
Doing so makes it difficult to ensure that bug fixes and enhancements
|
Doing so makes it difficult to ensure that bug fixes and enhancements
|
created by one user can be made available to all users. Every file
|
created by one user can be made available to all users. Every file
|
should have one and only one location in the database<br>
|
should have one and only one location in the database<br>
|
<br>
|
<br>
|
<h2><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font
|
<h2><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font
|
size="+1">Do not build the design inside of an RCS database.</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></h2>
|
size="+1">Do not build the design inside of an RCS database.</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></h2>
|
It is really hard to keep track of all the new files that you have
|
It is really hard to keep track of all the new files that you have
|
added that you need to check into the RCS if they are buried by
|
added that you need to check into the Revision Control System if
|
|
they are buried by
|
gigabytes of generated files from the build process. Use symbolic links
|
gigabytes of generated files from the build process. Use symbolic links
|
to create a work area where generated files are kept outside the
|
to create a work area where generated files are kept outside the
|
database.<br>
|
database.Never check a generated file in an RCS repository. They should
|
|
only
|
|
contain the minimal seed data needed to rebuild the entire design. It
|
|
should never contain any files that were generated by the build
|
|
process. <br>
|
<br>
|
<br>
|
<p>
|
<p>
|
</p>
|
</p>
|
<p></p>
|
<p></p>
|
<h2><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font
|
<h2><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font
|
Line 109... |
Line 126... |
Joes IP then they will also need access to those files. Create a spot
|
Joes IP then they will also need access to those files. Create a spot
|
for files where everybody can simply access them by linking the desired
|
for files where everybody can simply access them by linking the desired
|
files into there database<font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font
|
files into there database<font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font
|
size="+1">.</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font>
|
size="+1">.</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font>
|
<p></p>
|
<p></p>
|
<h2><br>
|
|
</h2>
|
|
<h2><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font
|
<h2><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font
|
size="+1">Do not mix unlike objects in the same container.</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></h2>
|
size="+1">Do not mix unlike objects in the same container.</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></h2>
|
<p>"Unlike" is a delibertely nebulious term. It can mean anything and
|
"Unlike" is a deliberately nebulous term. It can mean anything and
|
everything. If you have a instance of a hard macro that is
|
everything. If you have a instance of a hard macro that is
|
unsynthesizable then do not put it in a file along with synthesisable
|
unsynthesizable then do not put it in a file along with synthesisable
|
rtl code. If you have code belonging to one designer then do not mix it
|
rtl code. If you have code belonging to one designer then do not mix it
|
with code belonging to another. If you do then you have to worry about
|
with code belonging to another. If you do then you have to worry about
|
file locking. Fragment the design so that each object is in it's own
|
file locking. Fragment the design so that each object is in it's own
|
container and then use a tool to put them back together.<br>
|
container and then use a tool to put them back together.<br>
|
</p>
|
|
<br>
|
<br>
|
<br>
|
<br>
|
<h2><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font>Layer
|
<h2></h2>
|
the
|
<h2><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font
|
design.</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></h2>
|
size="+1">Layer the design.</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></h2>
|
|
<font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font>
|
<p>A full design will consist of several different databases that are
|
<p>A full design will consist of several different databases that are
|
layered. Upper ones may override any content from a lower layer<br>
|
layered. Upper ones may override any content from a lower layer.
|
|
Requirements created by the Component Designers are only minimums, The
|
|
Architects and Si-Makers are free to override and tighten any
|
|
requirement from any lower level. Parameters should be used to
|
|
give the downstream designers the ability to tune the design for
|
|
the target process.<br>
|
</p>
|
</p>
|
<p><br>
|
<p><br>
|
<br>
|
<br>
|
</p>
|
</p>
|
<br>
|
<br>
|
Line 146... |
Line 166... |
<br>
|
<br>
|
</p>
|
</p>
|
<p><br>
|
<p><br>
|
<br>
|
<br>
|
</p>
|
</p>
|
<h2>SYSTEM<br>
|
|
</h2>
|
|
<p>A system is at least one PCA containing a targeted
|
|
component interconnected with
|
|
other electronic components and bus functional models. <br>
|
|
</p>
|
|
<p><br>
|
<p><br>
|
</p>
|
</p>
|
<h2>TARGET</h2>
|
|
<p>A target is a specific physical design that can implement a
|
|
component. Targets can be asic or fpga and include a Printed circuit
|
|
board(PCB) that may include other electronic components. The goal for
|
|
all components is to assign them to at least one target and prove that
|
|
the work in silicon<br>
|
|
</p>
|
|
<p>
|
|
<br>
|
<br>
|
<br>
|
|
</p>
|
|
<h2>PROJECT</h2>
|
|
<p>A project is a collection of components. A database must define at
|
|
least one project to create an area where components may be stored.
|
|
Other projects may be created as needed to group similar components
|
|
together and reducing clutter. If any component in a project uses a
|
|
component from a child project then that child project must also be
|
|
included in the parent project.</p>
|
|
<p><br>
|
<p><br>
|
<br>
|
|
</p>
|
</p>
|
<p><br>
|
<h2>DOC<br>
|
|
</h2>
|
|
The documentation directory.
|
<br>
|
<br>
|
</p>
|
|
<h2>COMPONENT</h2>
|
|
<p>A component is a basic building block that may be used to make
|
|
other components.</p>
|
|
<br>
|
<br>
|
<p>
|
|
</p>
|
|
<br>
|
<br>
|
<h2>LIB</h2>
|
<h2>LIB</h2>
|
<p>A library is a collection of building blocks that may not be
|
<p>A library is a collection of building blocks that may not be
|
synthesiable in
|
synthesizable in
|
all target technologies and may require customizations. The use of lib
|
all target technologies and may require customizations. The use of lib
|
parts in the rtl code will
|
parts in the rtl code will
|
facilitate porting a component into different technologies.</p>
|
facilitate porting a component into different technologies.</p>
|
<p><br>
|
<p><br>
|
</p>
|
</p>
|
<h2>TOOLS<br>
|
<h2>TOOLS<br>
|
</h2>
|
</h2>
|
<p>The tools directory contains all of the socgen tools needed to build
|
<p>The tools directory contains all of the socgen tools needed to build
|
, simulate and synthesise all of the systems and components in the
|
, simulate and synthesize all of the systems and components in the
|
database. Scripts and installation instructions are provided for any
|
database. Scripts and installation instructions are provided for any
|
other opensource tools that may be required. There are also
|
other opensource tools that may be required. There are also
|
instructions for any propritory tools that are used.<br>
|
instructions for any proprietary tools that are used.<br>
|
</p>
|
</p>
|
<br>
|
|
<p><br>
|
<p><br>
|
<br>
|
<br>
|
</p>
|
</p>
|
<h2>BENCH<br>
|
<h2>BENCH<br>
|
</h2>
|
</h2>
|
Line 215... |
Line 206... |
Generic rtl models are included in the socgen library, specific ones
|
Generic rtl models are included in the socgen library, specific ones
|
must be obtained from the IC vendor.<br>
|
must be obtained from the IC vendor.<br>
|
</p>
|
</p>
|
<p><br>
|
<p><br>
|
</p>
|
</p>
|
<br>
|
|
<h2>DOC<br>
|
|
</h2>
|
|
The documentation directory.
|
|
<br>
|
|
<br>
|
|
<br>
|
|
<br>
|
|
<br>
|
|
<p><br>
|
<p><br>
|
</p>
|
</p>
|
|
<p><br>
|
|
</p>
|
|
<h2>PROJECT</h2>
|
|
<p>A project is a collection of components. A database must define at
|
|
least one project to create an area where components may be stored.
|
|
Other projects may be created as needed to group similar components
|
|
together and reducing clutter. If any component in a project uses a
|
|
component from a child project then that child project must also be
|
|
included in the parent project.</p>
|
|
<p><br>
|
<br>
|
<br>
|
|
</p>
|
<p><br>
|
<p><br>
|
<br>
|
<br>
|
</p>
|
</p>
|
|
<h2>COMPONENT</h2>
|
|
<p>A component is a basic building block that may be used to make
|
|
other components.</p>
|
|
<br>
|
|
<p>
|
|
</p>
|
|
<br>
|
|
<h2>TARGET</h2>
|
|
<p>A target is a specific physical design that can implement a
|
|
component. Targets can be asic or fpga and include a Printed circuit
|
|
board(PCB) that may include other electronic components. The goal for
|
|
all components is to assign them to at least one target and prove that
|
|
the work in silicon<br>
|
|
</p>
|
|
<br>
|
<p><br>
|
<p><br>
|
<br>
|
<br>
|
</p>
|
</p>
|
<p><br>
|
<p><br>
|
<br>
|
<br>
|