Adding old documentation. Partially updated intro and overview. It is very outdated.
|
|
@ -0,0 +1,6 @@
|
|||
all: openram_manual.tex
|
||||
pdflatex openram_manual
|
||||
bib:
|
||||
bibtex openram_manual
|
||||
clean:
|
||||
rm -f openram_manual.pdf *.aux *.bbl *.blq *.dvi *.log *.lot *.toc *.lof *.blg
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
\section{Internal Control Signals}
|
||||
\label{sec:control}
|
||||
|
||||
This section not needed... All information is in Section~\ref{sec:timing} (Timing).
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
\section{Debug Framework}
|
||||
\label{sec:debug}
|
||||
|
||||
All output in OpenRAM should use the shared debug framework. This is
|
||||
still under development but is in a usable state. It is going to be
|
||||
replaced with the Python Logging framework which is quite simple.
|
||||
|
||||
All of the debug framework is contained in debug.py and is based
|
||||
around the concept of a ``debug level'' which is a single global
|
||||
variable in this file. This level is, by default, 0 which will output
|
||||
normal minimal output. The general guidelines for debug output are:
|
||||
\begin{itemize}
|
||||
\item 0 Normal output
|
||||
\item 1 Verbose output
|
||||
\item 2 Detailed output
|
||||
\item 3+ Excessively detailed output
|
||||
\end{itemize}
|
||||
|
||||
The debug level can be adjusted on the command line when arguments are parsed using the ``-v'' flag. Adding more ``-v'' flags will increase the debug level as in the following examples:
|
||||
\begin{verbatim}
|
||||
python tests/01_library_drc_test.py -vv
|
||||
python openram.py 4 16 -v -v
|
||||
\end{verbatim}
|
||||
which each put the program in debug level 2 (detailed output).
|
||||
|
||||
Since every module may output a lot of information in the higher debug
|
||||
levels, the output format is standardized to allow easy searching via
|
||||
grep or other command-line tools. The standard output formatting is
|
||||
used through three interface functions:
|
||||
\begin{itemize}
|
||||
\item debug.info(int, msg)
|
||||
\item debug.warning(msg)
|
||||
\item debug.error(msg)
|
||||
\end{itemize}
|
||||
The msg string in each case can be any string format including data or
|
||||
other useful debug information. The string should also contain
|
||||
information to make it human understandable. {\bf It should not just be
|
||||
a number!} The warning and error messages are independent of debug
|
||||
levels while the info message will only print the message if the
|
||||
current debug level is above the parameter value.
|
||||
|
||||
The output format of the debug info messages are:
|
||||
\begin{verbatim}
|
||||
[ module ]: msg
|
||||
\end{verbatim}
|
||||
where module is the calling module name and msg is the string
|
||||
provided. This enables a grep command to get the relevant lines. The
|
||||
warning and error messages include the file name and line number of
|
||||
the warning/error.
|
||||
|
After Width: | Height: | Size: 51 KiB |
|
After Width: | Height: | Size: 47 KiB |
|
|
@ -0,0 +1,747 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="744.09448819"
|
||||
height="1052.3622047"
|
||||
id="svg2"
|
||||
sodipodi:version="0.32"
|
||||
inkscape:version="0.46"
|
||||
sodipodi:docname="Logic Diagram.svg"
|
||||
inkscape:output_extension="org.inkscape.output.svg.inkscape">
|
||||
<defs
|
||||
id="defs4">
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
id="linearGradient4867">
|
||||
<stop
|
||||
style="stop-color:#cccccc;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop4869" />
|
||||
<stop
|
||||
style="stop-color:#cccccc;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop4871" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
id="linearGradient3807">
|
||||
<stop
|
||||
style="stop-color:#cccccc;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop3809" />
|
||||
<stop
|
||||
style="stop-color:#cccccc;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop3811" />
|
||||
</linearGradient>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Lstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="Arrow1Lstart"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
id="path3831"
|
||||
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
|
||||
transform="scale(0.8) translate(12.5,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Lend"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="Arrow1Lend"
|
||||
style="overflow:visible;">
|
||||
<path
|
||||
id="path3834"
|
||||
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
|
||||
transform="scale(0.8) rotate(180) translate(12.5,0)" />
|
||||
</marker>
|
||||
<inkscape:perspective
|
||||
sodipodi:type="inkscape:persp3d"
|
||||
inkscape:vp_x="0 : 526.18109 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_z="744.09448 : 526.18109 : 1"
|
||||
inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
|
||||
id="perspective10" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient3807"
|
||||
id="linearGradient3813"
|
||||
x1="199.69901"
|
||||
y1="218.7489"
|
||||
x2="199.43983"
|
||||
y2="217.65218"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(0,116)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient3807"
|
||||
id="linearGradient3819"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x1="199.69901"
|
||||
y1="218.7489"
|
||||
x2="199.43983"
|
||||
y2="217.65218"
|
||||
gradientTransform="translate(0,-691.72632)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient4867"
|
||||
id="linearGradient4873"
|
||||
x1="394.20999"
|
||||
y1="489.94479"
|
||||
x2="393.62537"
|
||||
y2="490.3624"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(0,100)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient4867"
|
||||
id="linearGradient4879"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x1="394.20999"
|
||||
y1="489.94479"
|
||||
x2="393.62537"
|
||||
y2="490.3624"
|
||||
gradientTransform="translate(-1019.8693,100)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient4867"
|
||||
id="linearGradient4885"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x1="394.20999"
|
||||
y1="489.94479"
|
||||
x2="393.62537"
|
||||
y2="490.3624"
|
||||
gradientTransform="translate(0,100)" />
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
gridtolerance="10000"
|
||||
guidetolerance="10"
|
||||
objecttolerance="10"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="16.932823"
|
||||
inkscape:cx="504.04531"
|
||||
inkscape:cy="492.15828"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1600"
|
||||
inkscape:window-height="1132"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
showguides="true"
|
||||
inkscape:guide-bbox="true" />
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<rect
|
||||
style="fill:url(#linearGradient3813);fill-opacity:1"
|
||||
id="rect2383"
|
||||
width="165.71428"
|
||||
height="94.646927"
|
||||
x="133.76231"
|
||||
y="309.66827" />
|
||||
<rect
|
||||
style="fill:#cccccc"
|
||||
id="rect2385"
|
||||
width="208.57143"
|
||||
height="188.57143"
|
||||
x="406.00479"
|
||||
y="309.50024" />
|
||||
<rect
|
||||
style="fill:#cccccc"
|
||||
id="rect2387"
|
||||
width="208.38266"
|
||||
height="62.857143"
|
||||
x="405.96155"
|
||||
y="70.725639" />
|
||||
<rect
|
||||
style="fill:url(#linearGradient4873);fill-opacity:1"
|
||||
id="rect2389"
|
||||
width="138.24103"
|
||||
height="54.285713"
|
||||
x="371.81412"
|
||||
y="558.85974" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:23.82649612px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="452.81046"
|
||||
y="105.8875"
|
||||
id="text2399"
|
||||
transform="scale(0.9927707,1.0072819)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2401"
|
||||
x="452.81046"
|
||||
y="105.8875">Precharge</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="478.94641"
|
||||
y="410.42963"
|
||||
id="text2403"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2405"
|
||||
x="478.94641"
|
||||
y="410.42963">Array</tspan></text>
|
||||
<rect
|
||||
style="fill:#cccccc"
|
||||
id="rect2429"
|
||||
width="277.14285"
|
||||
height="54.285713"
|
||||
x="371.49484"
|
||||
y="672.11481" />
|
||||
<rect
|
||||
style="fill:#cccccc"
|
||||
id="rect2431"
|
||||
width="277.14285"
|
||||
height="54.285713"
|
||||
x="372.53488"
|
||||
y="794.2793" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="439.30377"
|
||||
y="708.78662"
|
||||
id="text2437"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2439"
|
||||
x="439.30377"
|
||||
y="708.78662">Sense Amp</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="428.77615"
|
||||
y="828.11359"
|
||||
id="text2441"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2443"
|
||||
x="428.77615"
|
||||
y="828.11359">Output Latch</tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:none;stroke-opacity:1"
|
||||
d="M 510.87523,794.2793 L 510.29735,726.40052"
|
||||
id="path2453"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-start="#rect2431"
|
||||
inkscape:connection-end="#rect2429" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.00533342px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Lend);stroke-opacity:1"
|
||||
d="M 510.37148,613.14813 L 510.36003,672.35929"
|
||||
id="path2455"
|
||||
inkscape:connector-type="polyline" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.00327015px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Lend);stroke-opacity:1"
|
||||
d="M 297.90384,403.80303 L 406.00315,403.80054"
|
||||
id="path2469"
|
||||
inkscape:connector-type="polyline" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="237.36064"
|
||||
y="462.23129"
|
||||
id="text2497"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2499"
|
||||
x="237.36064"
|
||||
y="462.23129" /></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Lend);stroke-opacity:1"
|
||||
d="M 511.49401,848.56501 L 512.51267,919.88151"
|
||||
id="path2521"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-start="#rect2431" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="432.52811"
|
||||
y="954.8941"
|
||||
id="text2527"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2529"
|
||||
x="432.52811"
|
||||
y="954.8941">Out to System</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="322.32162"
|
||||
y="-51.962601"
|
||||
id="text2531"
|
||||
transform="matrix(9.034996e-4,0.9999996,-0.9999996,9.034996e-4,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2533"
|
||||
x="322.32162"
|
||||
y="-51.962601">In From System</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="322.32162"
|
||||
y="-21.962603"
|
||||
id="tspan2535" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="538.99377"
|
||||
y="516.83362"
|
||||
id="text2832"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2834"
|
||||
x="538.99377"
|
||||
y="516.83362"> Bit Lines</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="538.99377"
|
||||
y="531.83362"
|
||||
id="tspan2938">BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2950">0</tspan>,BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2948">0</tspan>, BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2946">1</tspan>, BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2944">1</tspan>, ... BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2942">j</tspan> BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2940">j </tspan></tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 364.52511,382.19547 L 336.74637,425.84777"
|
||||
id="path2836" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="280.00189"
|
||||
y="-339.76331"
|
||||
id="text2838"
|
||||
transform="matrix(3.852356e-3,0.9999926,-0.9999926,3.852356e-3,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2840"
|
||||
x="280.00189"
|
||||
y="-339.76331"> Word Lines</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="280.00189"
|
||||
y="-324.76331"
|
||||
id="tspan2930"> W<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2936">0</tspan>, W<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2934">1</tspan>, ..., W<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2932">log(n)</tspan></tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);stroke-opacity:1"
|
||||
d="M 371.888,589.5005 L 309.17124,589.84843"
|
||||
id="path2842"
|
||||
inkscape:connector-type="polyline" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);stroke-opacity:1"
|
||||
d="M 370.94208,702.41208 L 308.22531,702.76001"
|
||||
id="path2854"
|
||||
inkscape:connector-type="polyline" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);stroke-opacity:1"
|
||||
d="M 371.88799,824.43518 L 309.17123,824.78311"
|
||||
id="path2860"
|
||||
inkscape:connector-type="polyline" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 491.10498,654.25031 L 526.70018,628.88523"
|
||||
id="path2870" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="320.09518"
|
||||
y="-99.119331"
|
||||
id="text2888"
|
||||
transform="matrix(-1.094382e-2,0.9999401,-0.9999401,-1.094382e-2,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2890"
|
||||
x="320.09518"
|
||||
y="-99.119331">A<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2892">0</tspan>, A<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2896">1</tspan>, ... A<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2898">n</tspan></tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="552.88428"
|
||||
y="-299.25662"
|
||||
id="text2902"
|
||||
transform="matrix(-1.094382e-2,0.9999401,-0.9999401,-1.094382e-2,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2904"
|
||||
x="552.88428"
|
||||
y="-299.25662">A<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2906">0</tspan>, A<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2908">1</tspan>, ... Ak<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2910" /></tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:37.14432144px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="784.93219"
|
||||
y="-237.72998"
|
||||
id="text2912"
|
||||
transform="matrix(2.6675397e-2,0.8871754,-1.1264084,2.54215e-2,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2914"
|
||||
x="784.93219"
|
||||
y="-237.72998"
|
||||
style="font-size:18.57216072px">S<tspan
|
||||
style="font-size:9.28608036px"
|
||||
id="tspan2916">clk</tspan></tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 491.47553,766.55443 L 530.65923,741.92468"
|
||||
id="path2922" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="784.55219"
|
||||
y="-372.34665"
|
||||
id="text2924"
|
||||
transform="matrix(-9.6248034e-2,0.9953574,-0.9953574,-9.6248034e-2,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2926"
|
||||
x="784.55219"
|
||||
y="-372.34665">clk</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="784.55219"
|
||||
y="-357.34665"
|
||||
id="tspan2928" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="727.75165"
|
||||
y="543.27771"
|
||||
id="text2970"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2972"
|
||||
x="727.75165"
|
||||
y="543.27771" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="537.27209"
|
||||
y="156.72511"
|
||||
id="text2992"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2994"
|
||||
x="537.27209"
|
||||
y="156.72511"> Bit Lines</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="537.27209"
|
||||
y="171.72511"
|
||||
id="tspan2996">BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2998">0</tspan>,BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3000">0</tspan>, BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3002">1</tspan>, BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3004">1</tspan>, ... BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3006">j</tspan> BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3008">j </tspan></tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="523.96411"
|
||||
y="638.21588"
|
||||
id="text3010"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3012"
|
||||
x="523.96411"
|
||||
y="638.21588"> Bit Lines</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="523.96411"
|
||||
y="653.21588"
|
||||
id="tspan3014">BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3016">0</tspan>,BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3018">0</tspan>, BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3020">1</tspan>, BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3022">1</tspan>, ... BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3024">j/2^k</tspan> BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3026">j/2^k </tspan></tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-mid:none;marker-end:none;marker-start:url(#Arrow1Lstart)"
|
||||
d="M 404.99504,103.56693 L 342.27828,103.91486"
|
||||
id="path3046"
|
||||
inkscape:connector-type="polyline" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="86.832726"
|
||||
y="-327.60617"
|
||||
id="text3052"
|
||||
transform="matrix(-1.094382e-2,0.9999401,-0.9999401,-1.094382e-2,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3054"
|
||||
x="86.832726"
|
||||
y="-327.60617">Pclk</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="86.832726"
|
||||
y="-312.60617"
|
||||
id="tspan3062" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="551.03613"
|
||||
y="753.10077"
|
||||
id="text3064"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3066"
|
||||
x="551.03613"
|
||||
y="753.10077"
|
||||
style="font-size:12px"> Data</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="551.03613"
|
||||
y="768.10077"
|
||||
id="tspan3068"><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3111">D</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3074">0</tspan><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3115">, </tspan><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3109">D</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3072">1</tspan><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3113">, ...,</tspan><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3107"> D</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3070">j/2^k</tspan></tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="543.46613"
|
||||
y="865.92303"
|
||||
id="text3117"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3119"
|
||||
x="543.46613"
|
||||
y="865.92303"
|
||||
style="font-size:12px"> Data Out</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="543.46613"
|
||||
y="880.92303"
|
||||
id="tspan3121"><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3123">Do</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3125">0</tspan><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3127">, </tspan><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3129">Do</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3131">1</tspan><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3133">, ...,</tspan><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3135"> Do</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3137">j/2^k</tspan></tspan></text>
|
||||
<path
|
||||
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke-width:0.40000001000000002;stroke-miterlimit:18.10000038000000089;stroke-dasharray:none"
|
||||
id="path3309"
|
||||
d="M 75.196328,158.6717 C 80.758538,157.28869 86.44734,156.6028 92.133726,155.94035 C 107.05435,154.05138 121.8677,151.43215 136.75528,149.30749 C 147.64996,147.53122 158.58499,146.01225 169.47598,144.21603 C 171.5715,143.74706 173.73538,143.65255 175.84432,143.27807 C 176.90658,143.08945 177.95684,142.73177 179.00742,142.48204 C 180.58421,142.34805 181.98047,141.66528 183.53245,141.39396 L 172.37378,149.88252 C 170.88347,150.29297 169.41362,150.72728 167.88051,150.96244 C 164.844,151.6568 161.73546,151.85357 158.66031,152.32711 C 148.00248,153.81685 137.31827,155.11752 126.69325,156.8396 C 111.66369,159.01206 96.704443,161.62748 81.668664,163.7554 C 75.768122,164.62195 69.820463,165.47786 64.116915,167.27925 L 75.196328,158.6717 z" />
|
||||
<rect
|
||||
y="-498.05804"
|
||||
x="133.76231"
|
||||
height="94.646927"
|
||||
width="165.71428"
|
||||
id="rect3815"
|
||||
style="fill:url(#linearGradient3819);fill-opacity:1"
|
||||
transform="scale(1,-1)" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="170.85649"
|
||||
y="394.76114"
|
||||
id="text2393"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2395"
|
||||
x="170.85649"
|
||||
y="394.76114">Address </tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="170.85649"
|
||||
y="424.76114"
|
||||
id="tspan2397">Decoder</tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);stroke-opacity:1"
|
||||
d="M 133.5,403.36218 L 70.75,402.86218"
|
||||
id="path3823" />
|
||||
<rect
|
||||
y="558.85974"
|
||||
x="371.81412"
|
||||
height="54.285713"
|
||||
width="138.24103"
|
||||
id="rect4875"
|
||||
style="fill:url(#linearGradient4885);fill-opacity:1" />
|
||||
<rect
|
||||
style="fill:url(#linearGradient4879);fill-opacity:1"
|
||||
id="rect4877"
|
||||
width="138.24103"
|
||||
height="54.285713"
|
||||
x="-648.05518"
|
||||
y="558.85974"
|
||||
transform="scale(-1,1)" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="439.2803"
|
||||
y="595.7511"
|
||||
id="text2407"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2409"
|
||||
x="439.2803"
|
||||
y="595.7511">Column Mux</tspan></text>
|
||||
<path
|
||||
inkscape:connector-type="polyline"
|
||||
id="path4881"
|
||||
d="M 510.37147,497.86869 L 510.36004,557.47571"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.00782228px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Lend);stroke-opacity:1" />
|
||||
<path
|
||||
id="path4883"
|
||||
d="M 491.10498,538.25031 L 526.70018,512.88523"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#cccccc"
|
||||
id="rect2427"
|
||||
width="277.14285"
|
||||
height="54.285713"
|
||||
x="372.23978"
|
||||
y="190.47002" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="432.57791"
|
||||
y="225.61827"
|
||||
id="text2433"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2435"
|
||||
x="432.57791"
|
||||
y="225.61827">Write Driver</tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);stroke-opacity:1"
|
||||
d="M 371.40729,219.41404 L 308.69052,219.76197"
|
||||
id="path2848"
|
||||
inkscape:connector-type="polyline" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;stroke-opacity:1"
|
||||
d="M 340.99482,208.10497 C 327.752,230.80694 327.752,230.80694 327.752,230.80694"
|
||||
id="path2882" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="167.72096"
|
||||
y="-293.01819"
|
||||
id="text2884"
|
||||
transform="matrix(-2.8547241e-3,0.9999959,-0.9999959,-2.8547241e-3,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2886"
|
||||
x="167.72096"
|
||||
y="-293.01819">Enable, Data in</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:8px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="519.95123"
|
||||
y="268.63846"
|
||||
id="text3028"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3030"
|
||||
x="519.95123"
|
||||
y="268.63846"
|
||||
style="font-size:12px"> Bit Lines</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="519.95123"
|
||||
y="283.63846"
|
||||
id="tspan3084"><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3103">BL</tspan>0 ,<tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3101">BR</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3036">0</tspan>, <tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3099">BL</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3038">1</tspan>, <tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3097">BR</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3078">1</tspan>, ... <tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3095">BL</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3042">j/2^k</tspan><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3093"> BR</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3044">j /2^k</tspan></tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:none;marker-end:url(#Arrow1Lend)"
|
||||
d="M 510.33208,133.58278 L 510.65644,190.47002"
|
||||
id="path4910"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-start="#rect2387"
|
||||
inkscape:connection-end="#rect2427" />
|
||||
<path
|
||||
inkscape:connector-type="polyline"
|
||||
id="path6475"
|
||||
d="M 508.33374,244.83566 L 508.65589,308.42732"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.0536716px;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:url(#Arrow1Lend);stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 491.10498,280.25031 L 526.70018,254.88523"
|
||||
id="path6477" />
|
||||
<path
|
||||
id="path6479"
|
||||
d="M 491.10498,168.25031 L 526.70018,142.88523"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 29 KiB |
|
|
@ -0,0 +1,522 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="744.09448819"
|
||||
height="1052.3622047"
|
||||
id="svg6017"
|
||||
version="1.1"
|
||||
inkscape:version="0.48.3.1 r9886"
|
||||
sodipodi:docname="cell_6t.svg">
|
||||
<defs
|
||||
id="defs6019" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1"
|
||||
inkscape:cx="199"
|
||||
inkscape:cy="609.48139"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1580"
|
||||
inkscape:window-height="810"
|
||||
inkscape:window-x="143"
|
||||
inkscape:window-y="132"
|
||||
inkscape:window-maximized="0">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid6109" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata6022">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<g
|
||||
id="g6894"
|
||||
transform="translate(20,1.3297774e-6)">
|
||||
<g
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="g6006"
|
||||
transform="matrix(0.51500628,0,0,0.4585435,23.157615,250.95114)">
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
id="path5141"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
id="path5143"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
id="path5145"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0.51500333,0,0,0.45312146,186.14808,178.39506)"
|
||||
id="g6011-6" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 230,452.36218 0,60"
|
||||
id="path6181"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:none"
|
||||
id="path6210"
|
||||
sodipodi:cx="325"
|
||||
sodipodi:cy="417.36218"
|
||||
sodipodi:rx="55"
|
||||
sodipodi:ry="35"
|
||||
d="m 380,417.36218 a 55,35 0 1 1 -110,0 55,35 0 1 1 110,0 z" />
|
||||
<g
|
||||
id="g6948">
|
||||
<g
|
||||
style="stroke-width:3.34598514;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="g6006-9"
|
||||
transform="matrix(0,0.51500628,-0.4585435,0,461.41104,285.5198)">
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:3.34598514;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
id="path5141-6"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:3.34598514;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
id="path5143-42"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:3.34598514;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
id="path5145-5"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<path
|
||||
transform="translate(-75,10)"
|
||||
d="m 350,377.36218 a 5,5 0 1 1 -10,0 5,5 0 1 1 10,0 z"
|
||||
sodipodi:ry="5"
|
||||
sodipodi:rx="5"
|
||||
sodipodi:cy="377.36218"
|
||||
sodipodi:cx="345"
|
||||
id="path6744"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.626;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,0.51500628,-0.4585435,0,461.60097,475.41293)"
|
||||
id="g6006-24"
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-8"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5143-2"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-8"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,-0.51500628,0.4585435,0,158.39903,679.31144)"
|
||||
id="g6006-3"
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-2"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5143-8"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-3"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(-1,0,0,-1,620,774.72437)"
|
||||
id="g6948-0">
|
||||
<g
|
||||
style="stroke-width:3.34598517;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="g6006-9-4"
|
||||
transform="matrix(0,0.51500628,-0.4585435,0,461.41104,285.5198)">
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:3.34598517;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
id="path5141-6-8"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:3.34598517;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
id="path5143-42-3"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:3.34598517;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
id="path5145-5-8"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<path
|
||||
transform="translate(-75,10)"
|
||||
d="m 350,377.36218 c 0,2.76143 -2.23858,5 -5,5 -2.76142,0 -5,-2.23857 -5,-5 0,-2.76142 2.23858,-5 5,-5 2.76142,0 5,2.23858 5,5 z"
|
||||
sodipodi:ry="5"
|
||||
sodipodi:rx="5"
|
||||
sodipodi:cy="377.36218"
|
||||
sodipodi:cx="345"
|
||||
id="path6744-9"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.62600005;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 390,512.36218 0,-60"
|
||||
id="path6988"
|
||||
inkscape:connector-curvature="0" />
|
||||
<g
|
||||
transform="translate(350,1.3297774e-6)"
|
||||
id="g6894-7">
|
||||
<g
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
id="g6006-5"
|
||||
transform="matrix(0.51500628,0,0,0.4585435,23.157615,250.95114)">
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
id="path5141-3"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
id="path5143-27"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
id="path5145-30"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 190,482.36218 40,0"
|
||||
id="path7020"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 440,482.36218 -50,0"
|
||||
id="path7022"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 230,292.36218 160,0 0,0 0,30"
|
||||
id="path7024"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 230,322.36218 0,-30"
|
||||
id="path7026"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 310,292.36218 0,-30 30,0 -60,0"
|
||||
id="path7028"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 230,642.36218 0,20 160,0 0,-20"
|
||||
id="path7030"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 310,662.36218 0,30 -30,0 60,0"
|
||||
id="path7032"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 290,702.36218 40,0"
|
||||
id="path7034"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 300,712.36218 20,0"
|
||||
id="path7036"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 540,482.36218 0,-150 0,300"
|
||||
id="path7057"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 80,482.36218 0,-150 0,300"
|
||||
id="path7059"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 80,232.36218 460,0"
|
||||
id="path7061"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.96486509;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 330,386.34238 0,193.03475"
|
||||
id="path7063"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 230,482.36218 100,0"
|
||||
id="path7067"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.9069252;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 290,452.36218 100,0"
|
||||
id="path7069"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 275,387.36218 15,0"
|
||||
id="path7071"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2.26907873;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 345.73333,387.36218 -16.73333,0"
|
||||
id="path7073"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 265,576.36218 24,0"
|
||||
id="path7075"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2.03967071;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 331.03846,578.36218 24.96154,0"
|
||||
id="path7075-3"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.96486509;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 290,384.84481 0,193.03475"
|
||||
id="path7063-1"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,158.90421,154.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-7"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,199.40421,183.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-8"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,259.40421,185.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-4"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,179.40421,-6.456369)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-9"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,179.40421,364.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-71"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,98.40421,185.54363)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 145,446.36218 2,-215"
|
||||
id="path7183"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 475,446.36218 0,-216"
|
||||
id="path7185"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-1"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,16.404208,-64.456369)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-5"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,344.40421,-65.456369)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-74"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,409.40421,184.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-89"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,-51.595792,184.54363)" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:40px;font-style:normal;font-weight:normal;line-height:0.99999998%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="350"
|
||||
y="262.36218"
|
||||
id="text7226"
|
||||
sodipodi:linespacing="0.99999998%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan7228"
|
||||
x="350"
|
||||
y="262.36218"
|
||||
style="line-height:0.99999998%" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:10.00000015%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="342"
|
||||
y="270.36218"
|
||||
id="text7230"
|
||||
sodipodi:linespacing="10%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan7232"
|
||||
x="342"
|
||||
y="270.36218">VDD</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:10.00000015%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="350"
|
||||
y="691.36218"
|
||||
id="text7234"
|
||||
sodipodi:linespacing="10%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan7236"
|
||||
x="350"
|
||||
y="691.36218">GND</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:10.00000015%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="549"
|
||||
y="482.36218"
|
||||
id="text7238"
|
||||
sodipodi:linespacing="10%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan7240"
|
||||
x="549"
|
||||
y="482.36218">BL_bar</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:10.00000015%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="48"
|
||||
y="483.36218"
|
||||
id="text7242"
|
||||
sodipodi:linespacing="10%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan7244"
|
||||
x="48"
|
||||
y="483.36218">BL</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:10.00000015%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="116"
|
||||
y="229.36218"
|
||||
id="text7246"
|
||||
sodipodi:linespacing="10%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan7248"
|
||||
x="116"
|
||||
y="229.36218">WL</tspan></text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 23 KiB |
|
After Width: | Height: | Size: 7.4 KiB |
|
After Width: | Height: | Size: 8.7 KiB |
|
|
@ -0,0 +1,10 @@
|
|||
digraph G {
|
||||
module [shape=record, label="module\n(e.g., bit-cell array)"];
|
||||
design [shape=record, label="design\nDRC_LVS()"];
|
||||
hierarchy_layout [shape=record, label="layout\n"];
|
||||
hierarchy_spice [shape=record, label="spice\n"];
|
||||
|
||||
module -> design
|
||||
design -> hierarchy_layout;
|
||||
design -> hierarchy_spice;
|
||||
}
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
#!/bin/bash
|
||||
dot -Tpdf class_hierarchy.dot > class_hierarchy.pdf
|
||||
|
|
@ -0,0 +1,665 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="744.09448819"
|
||||
height="1052.3622047"
|
||||
id="svg4094"
|
||||
version="1.1"
|
||||
inkscape:version="0.48.3.1 r9886"
|
||||
sodipodi:docname="column_mux.svg">
|
||||
<defs
|
||||
id="defs4096" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1"
|
||||
inkscape:cx="406.3623"
|
||||
inkscape:cy="446.14093"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1366"
|
||||
inkscape:window-height="744"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="24"
|
||||
inkscape:window-maximized="1">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid4102" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata4099">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<g
|
||||
transform="matrix(0,0.51500628,0.4585435,0,-101.41104,255.5198)"
|
||||
id="g6006-24"
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-8"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5143-2"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-8"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,0.51500628,0.4585435,0,-21.411043,255.5198)"
|
||||
id="g6006-24-5"
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-8-4"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5143-2-9"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-8-0"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,0.51500628,0.4585435,0,68.588951,385.5198)"
|
||||
id="g6006-24-7"
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-8-1"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5143-2-5"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-8-6"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,0.51500628,0.4585435,0,148.58896,385.5198)"
|
||||
id="g6006-24-5-5"
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-8-4-4"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5143-2-9-0"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-8-0-3"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,0.51500628,0.4585435,0,238.58896,255.5198)"
|
||||
id="g6006-24-73"
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-8-6"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5143-2-2"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-8-7"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,0.51500628,0.4585435,0,318.58896,255.5198)"
|
||||
id="g6006-24-5-9"
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-8-4-5"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5143-2-9-3"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-8-0-0"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,0.51500628,0.4585435,0,398.58896,385.5198)"
|
||||
id="g6006-24-7-0"
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-8-1-8"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5143-2-5-8"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-8-6-9"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,0.51500628,0.4585435,0,478.58896,385.5198)"
|
||||
id="g6006-24-5-5-9"
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-8-4-4-7"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5143-2-9-0-0"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-8-0-3-6"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 130,292.36218 0,-70"
|
||||
id="path4232"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 210,292.36218 0,-70"
|
||||
id="path4742"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 300,422.36218 0,-200"
|
||||
id="path4744"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 380,422.36218 0,-200"
|
||||
id="path4746"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 470,302.36218 0,-80"
|
||||
id="path4748"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 550,302.36218 0,-80"
|
||||
id="path4750"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 630,432.36218 0,-210"
|
||||
id="path4752"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 710,432.36218 0,-210"
|
||||
id="path4754"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 40,352.36218 480,0"
|
||||
id="path4756"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 40,482.36218 640,0"
|
||||
id="path4758"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 130,422.36218 0,130"
|
||||
id="path4760"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 210,422.36218 0,130"
|
||||
id="path4762"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 470,422.36218 0,130"
|
||||
id="path4764"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 550,422.36218 0,130"
|
||||
id="path4766"
|
||||
inkscape:connector-curvature="0" />
|
||||
<g
|
||||
transform="matrix(0,0.51500628,0.4585435,0,-61.411052,555.51979)"
|
||||
id="g6006-24-7-9"
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-8-1-5"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5143-2-5-4"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-8-6-3"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,0.51500628,0.4585435,0,28.588957,555.5198)"
|
||||
id="g6006-24-5-5-7"
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-8-4-4-76"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5143-2-9-0-7"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-8-0-3-2"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,0.51500628,0.4585435,0,268.58895,655.5198)"
|
||||
id="g6006-24-7-9-3"
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-8-1-5-1"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5143-2-5-4-0"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-8-6-3-9"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,0.51500628,0.4585435,0,358.58896,655.5198)"
|
||||
id="g6006-24-5-5-7-7"
|
||||
style="stroke-width:4.11560297;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-8-4-4-76-7"
|
||||
d="m 71.537739,504.66541 77.668961,0 0.20751,-65.01034 96.87868,-0.41421 0,65.42455 77.66896,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5143-2-9-0-7-0"
|
||||
d="m 142.12846,439.3006 111.72287,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-8-0-3-2-0"
|
||||
d="m 149.90664,429.40111 96.16652,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:4.11560297;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 40,652.36218 190,0"
|
||||
id="path4900"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 40,752.36218 520,0"
|
||||
id="path4902"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2.1;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 130,552.36218 0,10 170,0 0,-10"
|
||||
id="path4904"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 210,552.36218 0,30 170,0 0,-30"
|
||||
id="path4906"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 470,552.36218 0,10 160,0 0,-10"
|
||||
id="path4908"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 550,552.36218 0,30 160,0 0,-30"
|
||||
id="path4910"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 260,592.36218 0,-10"
|
||||
id="path4912"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 170,592.36218 0,-30"
|
||||
id="path4914"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 500,692.36218 0,-130"
|
||||
id="path4916"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 590,692.36218 0,-110"
|
||||
id="path4918"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 260,722.36218 0,120 330,0 0,-20"
|
||||
id="path4920"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 500,822.36218 -330,0 0,-100"
|
||||
id="path4922"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 320,822.36218 0,70 10,-10 -10,10 -10,-10"
|
||||
id="path4924"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 440,842.36218 0,50 10,-10 -10,10 -10,-10"
|
||||
id="path4926"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-7"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,39.404208,265.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-7-6"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,129.40421,285.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-7-8"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,369.40421,265.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-7-5"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,459.40421,285.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-7-2"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,189.40421,525.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-7-83"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,309.40421,545.54363)" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="309"
|
||||
y="909.36218"
|
||||
id="text4981"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4983"
|
||||
x="309"
|
||||
y="909.36218">BL</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="419"
|
||||
y="907.36218"
|
||||
id="text4985"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4987"
|
||||
x="419"
|
||||
y="907.36218">BL_bar</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="113"
|
||||
y="219.36218"
|
||||
id="text4989"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4991"
|
||||
x="113"
|
||||
y="219.36218">BL0</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="177"
|
||||
y="217.36218"
|
||||
id="text4993"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4995"
|
||||
x="177"
|
||||
y="217.36218">BL0_bar</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="285"
|
||||
y="219.36218"
|
||||
id="text4997"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4999"
|
||||
x="285"
|
||||
y="219.36218">BL1</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="346"
|
||||
y="217.36218"
|
||||
id="text5001"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5003"
|
||||
x="346"
|
||||
y="217.36218">BL1_bar</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="456"
|
||||
y="218.36218"
|
||||
id="text5005"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5007"
|
||||
x="456"
|
||||
y="218.36218">BL2</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="518"
|
||||
y="216.36218"
|
||||
id="text5009"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5011"
|
||||
x="518"
|
||||
y="216.36218">BL2_bar</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="613"
|
||||
y="220.36218"
|
||||
id="text5013"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5015"
|
||||
x="613"
|
||||
y="220.36218">BL3</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="676"
|
||||
y="216.36218"
|
||||
id="text5017"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5019"
|
||||
x="676"
|
||||
y="216.36218">BL3_bar</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="13"
|
||||
y="357.36218"
|
||||
id="text5021"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5023"
|
||||
x="13"
|
||||
y="357.36218">A0</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="7"
|
||||
y="479.36218"
|
||||
id="text5025"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5027"
|
||||
x="7"
|
||||
y="479.36218">A0_bar</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="15"
|
||||
y="656.36218"
|
||||
id="text5029"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5031"
|
||||
x="15"
|
||||
y="656.36218">A1</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="9"
|
||||
y="748.36218"
|
||||
id="text5033"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5035"
|
||||
x="9"
|
||||
y="748.36218">A1_bar</tspan></text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 31 KiB |
|
|
@ -0,0 +1,409 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="744.09448819"
|
||||
height="1052.3622047"
|
||||
id="svg2"
|
||||
sodipodi:version="0.32"
|
||||
inkscape:version="0.46"
|
||||
sodipodi:docname="decoder_to _array.svg"
|
||||
inkscape:output_extension="org.inkscape.output.svg.inkscape">
|
||||
<defs
|
||||
id="defs4">
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Lend"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="Arrow1Lend"
|
||||
style="overflow:visible;">
|
||||
<path
|
||||
id="path3229"
|
||||
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
|
||||
transform="scale(0.8) rotate(180) translate(12.5,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Lstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="Arrow1Lstart"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
id="path3226"
|
||||
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
|
||||
transform="scale(0.8) translate(12.5,0)" />
|
||||
</marker>
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
id="linearGradient2461">
|
||||
<stop
|
||||
style="stop-color:#b3b3b3;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop2463" />
|
||||
<stop
|
||||
style="stop-color:#b3b3b3;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop2465" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
id="linearGradient2451">
|
||||
<stop
|
||||
style="stop-color:#b3b3b3;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop2453" />
|
||||
<stop
|
||||
style="stop-color:#b3b3b3;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop2455" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
id="linearGradient2445">
|
||||
<stop
|
||||
style="stop-color:#b3b3b3;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop2447" />
|
||||
<stop
|
||||
style="stop-color:#b3b3b3;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop2449" />
|
||||
</linearGradient>
|
||||
<inkscape:perspective
|
||||
sodipodi:type="inkscape:persp3d"
|
||||
inkscape:vp_x="0 : 526.18109 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_z="744.09448 : 526.18109 : 1"
|
||||
inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
|
||||
id="perspective10" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient2445"
|
||||
id="linearGradient2443"
|
||||
x1="370.17203"
|
||||
y1="408.19574"
|
||||
x2="372.40872"
|
||||
y2="517.79352"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.7710419,0,0,0.8337292,8.1937292,7.8098171)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient2451"
|
||||
id="linearGradient2457"
|
||||
x1="371.29037"
|
||||
y1="409.31409"
|
||||
x2="367.72989"
|
||||
y2="523.38525"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.7712785,0,0,0.8337292,8.0871771,7.8098171)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient2461"
|
||||
id="linearGradient2467"
|
||||
x1="551.34387"
|
||||
y1="456.28641"
|
||||
x2="551.34387"
|
||||
y2="619.56287"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(1,0,0,0.5308865,0,114.74779)" />
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
gridtolerance="10000"
|
||||
guidetolerance="10"
|
||||
objecttolerance="10"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="2.1448286"
|
||||
inkscape:cx="309.70169"
|
||||
inkscape:cy="808.88914"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
showguides="true"
|
||||
inkscape:guide-bbox="true"
|
||||
inkscape:window-width="1600"
|
||||
inkscape:window-height="1132"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0" />
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<rect
|
||||
style="fill:url(#linearGradient2467);fill-opacity:1"
|
||||
id="rect2459"
|
||||
width="354.07697"
|
||||
height="193.31812"
|
||||
x="391.42059"
|
||||
y="246.19127" />
|
||||
<rect
|
||||
style="fill:url(#linearGradient2457);fill-opacity:1"
|
||||
id="rect2433"
|
||||
width="127.34832"
|
||||
height="191.49203"
|
||||
x="228.03519"
|
||||
y="248.01219" />
|
||||
<rect
|
||||
style="fill:#ff6600"
|
||||
id="rect2549"
|
||||
width="518.00879"
|
||||
height="37.828362"
|
||||
x="227.68326"
|
||||
y="302.75879" />
|
||||
<rect
|
||||
style="fill:#00ff00"
|
||||
id="rect2547"
|
||||
width="544.10468"
|
||||
height="38.307152"
|
||||
x="201.76241"
|
||||
y="243.43471" />
|
||||
<rect
|
||||
style="fill:url(#linearGradient2443);fill-opacity:1"
|
||||
id="rect2383"
|
||||
width="192.29077"
|
||||
height="392.53891"
|
||||
x="35.787025"
|
||||
y="46.97047" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:19.24255753px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="94.222366"
|
||||
y="-121.21298"
|
||||
id="text2387"
|
||||
transform="matrix(-6.8463303e-3,1.0398304,-0.9616465,-7.4029511e-3,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2389"
|
||||
x="94.222366"
|
||||
y="-121.21298">Address Decoder</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="94.222366"
|
||||
y="-97.15979"
|
||||
id="tspan2391" /></text>
|
||||
<rect
|
||||
style="fill:#ff0000"
|
||||
id="rect2393"
|
||||
width="159.23743"
|
||||
height="17.715534"
|
||||
x="202.95409"
|
||||
y="254.21713" />
|
||||
<rect
|
||||
style="fill:#0000ff"
|
||||
id="rect2399"
|
||||
width="159.23741"
|
||||
height="17.715534"
|
||||
x="202.9501"
|
||||
y="280.85464" />
|
||||
<rect
|
||||
style="fill:#008000"
|
||||
id="rect2401"
|
||||
width="159.40862"
|
||||
height="17.715534"
|
||||
x="202.94533"
|
||||
y="310.23676" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:14.67683983000000048px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="254.6263"
|
||||
y="281.54678"
|
||||
id="text2403"
|
||||
transform="scale(1.0494184,0.9529088)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2405"
|
||||
x="254.6263"
|
||||
y="281.54678">Vdd </tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:14.9124279px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="278.65591"
|
||||
y="268.46613"
|
||||
id="text2407"
|
||||
transform="scale(0.9095598,1.0994329)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2409"
|
||||
x="278.65591"
|
||||
y="268.46613">Word Line</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:15.81832218px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="277.87473"
|
||||
y="316.27682"
|
||||
id="text2411"
|
||||
transform="scale(0.9736983,1.0270121)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2413"
|
||||
x="277.87473"
|
||||
y="316.27682">Vss</tspan></text>
|
||||
<rect
|
||||
style="fill:#ff0000"
|
||||
id="rect2469"
|
||||
width="362.56842"
|
||||
height="17.715534"
|
||||
x="382.1893"
|
||||
y="254.20079" />
|
||||
<rect
|
||||
style="fill:#0000ff"
|
||||
id="rect2471"
|
||||
width="363.03949"
|
||||
height="17.715534"
|
||||
x="382.1853"
|
||||
y="280.83832" />
|
||||
<rect
|
||||
style="fill:#008000"
|
||||
id="rect2473"
|
||||
width="361.6424"
|
||||
height="17.715534"
|
||||
x="383.1106"
|
||||
y="310.22043" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:14.67683983px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="445.56149"
|
||||
y="281.52963"
|
||||
id="text2475"
|
||||
transform="scale(1.0494184,0.9529088)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2477"
|
||||
x="445.56149"
|
||||
y="281.52963">Vdd </tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:14.9124279px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="498.65213"
|
||||
y="268.45126"
|
||||
id="text2479"
|
||||
transform="scale(0.9095598,1.0994329)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2481"
|
||||
x="498.65213"
|
||||
y="268.45126">Word Line</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:15.81830978px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="485.32767"
|
||||
y="315.46939"
|
||||
id="text2483"
|
||||
transform="scale(0.9736983,1.0270121)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2485"
|
||||
x="485.32767"
|
||||
y="315.46939">Vss</tspan></text>
|
||||
<rect
|
||||
style="fill:#ffffff"
|
||||
id="rect2551"
|
||||
width="16.346491"
|
||||
height="152.72293"
|
||||
x="364.29324"
|
||||
y="215.42181" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.4;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:18.10000038;stroke-dasharray:none;marker-start:url(#Arrow1Lstart);marker-end:url(#Arrow1Lend)"
|
||||
d="M 382.1893,263.0691 L 362.19151,263.07027"
|
||||
id="path2487"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-start="#rect2469"
|
||||
inkscape:connection-end="#rect2393" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.4;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:18.10000038;stroke-dasharray:none;marker-start:url(#Arrow1Lstart);marker-end:url(#Arrow1Lend)"
|
||||
d="M 362.35394,319.0899 L 383.1106,319.08869"
|
||||
id="path2491"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-start="#rect2401"
|
||||
inkscape:connection-end="#rect2473" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.4;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:18.10000038;stroke-dasharray:none;marker-start:url(#Arrow1Lstart);marker-end:url(#Arrow1Lend)"
|
||||
d="M 382.1853,289.70663 L 362.18752,289.70779"
|
||||
id="path2493"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-start="#rect2471"
|
||||
inkscape:connection-end="#rect2399" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="533.82971"
|
||||
y="239.70804"
|
||||
id="text2543"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2545"
|
||||
x="533.82971"
|
||||
y="239.70804">Array</tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.4;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:18.10000038;stroke-dasharray:none;marker-start:url(#Arrow1Lstart);marker-end:url(#Arrow1Lend)"
|
||||
d="M 380.28173,247.63341 L 363.69741,247.63484"
|
||||
id="path2553"
|
||||
inkscape:connector-type="polyline" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.4;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:18.10000038;stroke-dasharray:none;marker-start:url(#Arrow1Lstart);marker-end:url(#Arrow1Lend)"
|
||||
d="M 380.8161,335.38958 L 364.23178,335.39101"
|
||||
id="path2563"
|
||||
inkscape:connector-type="polyline" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="-238.96878"
|
||||
y="379.59302"
|
||||
id="text2583"
|
||||
transform="matrix(0,-1,1,0,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2585"
|
||||
x="-238.96878"
|
||||
y="379.59302">}</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="345.11981"
|
||||
y="380.30951"
|
||||
id="text2587"
|
||||
transform="matrix(0,1,1,0,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2589"
|
||||
x="345.11981"
|
||||
y="380.30951">}</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16.78106117px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="331.69421"
|
||||
y="231.48781"
|
||||
id="text2591"
|
||||
transform="scale(1.0378936,0.9634899)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2593"
|
||||
x="331.69421"
|
||||
y="231.48781">N-Well</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16.01638031px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="354.27347"
|
||||
y="370.5802"
|
||||
id="text2595"
|
||||
transform="scale(0.9905987,1.0094905)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2597"
|
||||
x="354.27347"
|
||||
y="370.5802">P-Well</tspan></text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 21 KiB |
|
|
@ -0,0 +1,866 @@
|
|||
%!PS-Adobe-3.0 EPSF-3.0
|
||||
%%Creator: cairo 1.8.8 (http://cairographics.org)
|
||||
%%CreationDate: Mon Oct 17 14:59:32 2011
|
||||
%%Pages: 1
|
||||
%%BoundingBox: 0 0 630 399
|
||||
%%DocumentData: Clean7Bit
|
||||
%%LanguageLevel: 2
|
||||
%%EndComments
|
||||
%%BeginProlog
|
||||
/cairo_eps_state save def
|
||||
/dict_count countdictstack def
|
||||
/op_count count 1 sub def
|
||||
userdict begin
|
||||
/q { gsave } bind def
|
||||
/Q { grestore } bind def
|
||||
/cm { 6 array astore concat } bind def
|
||||
/w { setlinewidth } bind def
|
||||
/J { setlinecap } bind def
|
||||
/j { setlinejoin } bind def
|
||||
/M { setmiterlimit } bind def
|
||||
/d { setdash } bind def
|
||||
/m { moveto } bind def
|
||||
/l { lineto } bind def
|
||||
/c { curveto } bind def
|
||||
/h { closepath } bind def
|
||||
/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto
|
||||
0 exch rlineto 0 rlineto closepath } bind def
|
||||
/S { stroke } bind def
|
||||
/f { fill } bind def
|
||||
/f* { eofill } bind def
|
||||
/B { fill stroke } bind def
|
||||
/B* { eofill stroke } bind def
|
||||
/n { newpath } bind def
|
||||
/W { clip } bind def
|
||||
/W* { eoclip } bind def
|
||||
/BT { } bind def
|
||||
/ET { } bind def
|
||||
/pdfmark where { pop globaldict /?pdfmark /exec load put }
|
||||
{ globaldict begin /?pdfmark /pop load def /pdfmark
|
||||
/cleartomark load def end } ifelse
|
||||
/BDC { mark 3 1 roll /BDC pdfmark } bind def
|
||||
/EMC { mark /EMC pdfmark } bind def
|
||||
/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def
|
||||
/Tj { show currentpoint cairo_store_point } bind def
|
||||
/TJ {
|
||||
{
|
||||
dup
|
||||
type /stringtype eq
|
||||
{ show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse
|
||||
} forall
|
||||
currentpoint cairo_store_point
|
||||
} bind def
|
||||
/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore
|
||||
cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def
|
||||
/Tf { pop /cairo_font exch def /cairo_font_matrix where
|
||||
{ pop cairo_selectfont } if } bind def
|
||||
/Td { matrix translate cairo_font_matrix matrix concatmatrix dup
|
||||
/cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point
|
||||
/cairo_font where { pop cairo_selectfont } if } bind def
|
||||
/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def
|
||||
cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def
|
||||
/g { setgray } bind def
|
||||
/rg { setrgbcolor } bind def
|
||||
/d1 { setcachedevice } bind def
|
||||
%%EndProlog
|
||||
11 dict begin
|
||||
/FontType 42 def
|
||||
/FontName /f-0-0 def
|
||||
/PaintType 0 def
|
||||
/FontMatrix [ 1 0 0 1 0 0 ] def
|
||||
/FontBBox [ 0 0 0 0 ] def
|
||||
/Encoding 256 array def
|
||||
0 1 255 { Encoding exch /.notdef put } for
|
||||
Encoding 1 /uni004D put
|
||||
Encoding 2 /uni0065 put
|
||||
Encoding 3 /uni006D put
|
||||
Encoding 4 /uni006F put
|
||||
Encoding 5 /uni0072 put
|
||||
Encoding 6 /uni0079 put
|
||||
Encoding 7 /uni0020 put
|
||||
Encoding 8 /uni0043 put
|
||||
Encoding 9 /uni0070 put
|
||||
Encoding 10 /uni0069 put
|
||||
Encoding 11 /uni006C put
|
||||
Encoding 12 /uni0028 put
|
||||
Encoding 13 /uni0050 put
|
||||
Encoding 14 /uni0074 put
|
||||
Encoding 15 /uni0068 put
|
||||
Encoding 16 /uni006E put
|
||||
Encoding 17 /uni0029 put
|
||||
Encoding 18 /uni004C put
|
||||
Encoding 19 /uni0067 put
|
||||
Encoding 20 /uni0063 put
|
||||
Encoding 21 /uni0061 put
|
||||
Encoding 22 /uni0045 put
|
||||
Encoding 23 /uni0046 put
|
||||
Encoding 24 /uni002F put
|
||||
Encoding 25 /uni0052 put
|
||||
Encoding 26 /uni0041 put
|
||||
Encoding 27 /uni0047 put
|
||||
Encoding 28 /uni0044 put
|
||||
Encoding 29 /uni0053 put
|
||||
Encoding 30 /uni0049 put
|
||||
Encoding 31 /uni0062 put
|
||||
Encoding 32 /uni002E put
|
||||
Encoding 33 /uni0056 put
|
||||
Encoding 34 /uni002D put
|
||||
Encoding 35 /uni0064 put
|
||||
Encoding 36 /uni0073 put
|
||||
Encoding 37 /uni0054 put
|
||||
Encoding 38 /uni0077 put
|
||||
Encoding 39 /uni007A put
|
||||
Encoding 40 /uni0075 put
|
||||
Encoding 41 /uni002C put
|
||||
Encoding 42 /uni0078 put
|
||||
Encoding 43 /uni0042 put
|
||||
Encoding 44 /uni006B put
|
||||
Encoding 45 /uni0055 put
|
||||
Encoding 46 /uni0066 put
|
||||
/CharStrings 47 dict dup begin
|
||||
/.notdef 0 def
|
||||
/uni004D 1 def
|
||||
/uni0065 2 def
|
||||
/uni006D 3 def
|
||||
/uni006F 4 def
|
||||
/uni0072 5 def
|
||||
/uni0079 6 def
|
||||
/uni0020 7 def
|
||||
/uni0043 8 def
|
||||
/uni0070 9 def
|
||||
/uni0069 10 def
|
||||
/uni006C 11 def
|
||||
/uni0028 12 def
|
||||
/uni0050 13 def
|
||||
/uni0074 14 def
|
||||
/uni0068 15 def
|
||||
/uni006E 16 def
|
||||
/uni0029 17 def
|
||||
/uni004C 18 def
|
||||
/uni0067 19 def
|
||||
/uni0063 20 def
|
||||
/uni0061 21 def
|
||||
/uni0045 22 def
|
||||
/uni0046 23 def
|
||||
/uni002F 24 def
|
||||
/uni0052 25 def
|
||||
/uni0041 26 def
|
||||
/uni0047 27 def
|
||||
/uni0044 28 def
|
||||
/uni0053 29 def
|
||||
/uni0049 30 def
|
||||
/uni0062 31 def
|
||||
/uni002E 32 def
|
||||
/uni0056 33 def
|
||||
/uni002D 34 def
|
||||
/uni0064 35 def
|
||||
/uni0073 36 def
|
||||
/uni0054 37 def
|
||||
/uni0077 38 def
|
||||
/uni007A 39 def
|
||||
/uni0075 40 def
|
||||
/uni002C 41 def
|
||||
/uni0078 42 def
|
||||
/uni0042 43 def
|
||||
/uni006B 44 def
|
||||
/uni0055 45 def
|
||||
/uni0066 46 def
|
||||
end readonly def
|
||||
/sfnts [
|
||||
<00010000000a008000030020636d61700252f32d00001fd00000009c63767420ffd31d390000
|
||||
206c000001fc6670676de7b4f1c4000022680000008b676c79661cacd2b0000000ac00001f24
|
||||
68656164dd84a2d0000022f40000003668686561104507920000232c00000024686d7478d559
|
||||
18d200002350000000bc6c6f6361aa82b2fc0000240c000000606d617870046a063a0000246c
|
||||
00000020707265703b07f1000000248c0000056800020066fe96046605a400030007001a400c
|
||||
04fb0006fb0108057f0204002fc4d4ec310010d4ecd4ec301311211125211121660400fc7303
|
||||
1bfce5fe96070ef8f2720629000100c90000061f05d5000c00bf403403110708070211010208
|
||||
080702110302090a0901110a0a09420a070203080300af080b050908030201050a061c043e0a
|
||||
1c00040d10fcecfcec11173931002f3cc4ec32111739304b5358071005ed071008ed071008ed
|
||||
071005ed5922b2700e01015d405603070f080f09020a15021407130a260226072007260a200a
|
||||
3407350a69027c027b07790a80028207820a90021604010b0313011b0323012c032708280934
|
||||
013c035608590965086a097608790981018d0395019b03145d005d1321090121112311012301
|
||||
1123c9012d017d017f012dc5fe7fcbfe7fc405d5fc0803f8fa2b051ffc000400fae100000002
|
||||
0071ffe3047f047b0014001b00704024001501098608880515a90105b90c01bb18b912b80c8c
|
||||
1c1b1502081508004b02120f451c10fcecf4ecc4111239310010e4f4ece410ee10ee10f4ee11
|
||||
12393040293f1d701da01dd01df01d053f003f013f023f153f1b052c072f082f092c0a6f006f
|
||||
016f026f156f1b095d71015d0115211e0133323637150e01232000111000333200072e012322
|
||||
0607047ffcb20ccdb76ac76263d06bfef4fec70129fce20107b802a5889ab90e025e5abec734
|
||||
34ae2a2c0138010a01130143feddc497b4ae9e00000100ba0000071d047b0022005a40260612
|
||||
09180f00061d07150c871d2003b81bbc19100700110f0808065011080f501c18081a462310fc
|
||||
ec32fcfcfcec11123931002f3c3ce4f43cc4ec32111217393040133024502470249024a024a0
|
||||
24bf24df24ff2409015d013e0133321615112311342623220615112311342623220615112311
|
||||
33153e01333216042945c082afbeb972758fa6b972778da6b9b93fb0797aab03897c76f5e2fd
|
||||
5c029ea19cbea4fd87029ea29bbfa3fd870460ae67627c00000000020071ffe30475047b000b
|
||||
0017004a401306b91200b90cb8128c1809120f51031215451810fcecf4ec310010e4f4ec10ee
|
||||
3040233f197b007b067f077f087f097f0a7f0b7b0c7f0d7f0e7f0f7f107f117b12a019f01911
|
||||
015d012206151416333236353426273200111000232200111000027394acab9593acac93f001
|
||||
12feeef0f1feef011103dfe7c9c9e7e8c8c7e99cfec8feecfeedfec701390113011401380000
|
||||
000100ba0000034a047b001100304014060b0700110b03870eb809bc070a06080008461210fc
|
||||
c4ec3231002fe4f4ecc4d4cc11123930b450139f1302015d012e012322061511231133153e01
|
||||
33321617034a1f492c9ca7b9b93aba85132e1c03b41211cbbefdb20460ae6663050500000001
|
||||
003dfe56047f0460000f01a240430708020911000f0a110b0a00000f0e110f000f0d110c0d00
|
||||
000f0d110e0d0a0b0a0c110b0b0a420d0b0910000b058703bd0e0bbc100e0d0c0a0906030008
|
||||
0f040f0b1010d4c4c4111739310010e432f4ec113911391239304b5358071005ed071008ed07
|
||||
1008ed071005ed071008ed0705ed17325922014bb00a544bb008545b58bd0010ffc000010010
|
||||
001000403811373859014bb0145458bd00100040000100100010ffc0381137385940f0060005
|
||||
080609030d160a170d100d230d350d490a4f0a4e0d5a095a0a6a0a870d800d930d120a000a09
|
||||
060b050c0b0e0b0f1701150210041005170a140b140c1a0e1a0f270024012402200420052908
|
||||
2809250a240b240c270d2a0e2a0f201137003501350230043005380a360b360c380d390e390f
|
||||
30114100400140024003400440054006400740084209450a470d490e490f4011540051015102
|
||||
5503500450055606550756085709570a550b550c590e590f501166016602680a690e690f6011
|
||||
7b08780e780f89008a09850b850c890d890e890f9909950b950c9a0e9a0fa40ba40cab0eab0f
|
||||
b011cf11df11ff11655d005d050e012b01353332363f01013309013302934e947c936c4c5433
|
||||
21fe3bc3015e015ec368c87a9a488654044efc94036c00010073ffe3052705f000190036401a
|
||||
0da10eae0a951101a100ae04951791118c1a07190d003014101a10fcec32ec310010e4f4ecf4
|
||||
ec10eef6ee30b40f1b1f1b02015d01152e0123200011100021323637150e0123200011100021
|
||||
3216052766e782ff00fef00110010082e7666aed84feadfe7a0186015386ed0562d55f5efec7
|
||||
fed8fed9fec75e5fd34848019f01670168019f470000000200bafe5604a4047b0010001c003e
|
||||
401b1ab9000e14b90508b80e8c01bd03bc1d11120b471704000802461d10fcec3232f4ec3100
|
||||
10e4e4e4f4c4ec10c4ee304009601e801ea01ee01e04015d2511231133153e01333212111002
|
||||
2322260134262322061514163332360173b9b93ab17bccffffcc7bb10238a79292a7a79292a7
|
||||
a8fdae060aaa6461febcfef8fef8febc6101ebcbe7e7cbcbe7e7000200c10000017906140003
|
||||
0007002b400e06be04b100bc020501080400460810fc3cec3231002fe4fcec30400b10094009
|
||||
50096009700905015d1333112311331523c1b8b8b8b80460fba00614e900000100c100000179
|
||||
061400030022b7009702010800460410fcec31002fec30400d10054005500560057005f00506
|
||||
015d13331123c1b8b80614f9ec00000100b0fef2027b0612000d004f400f069800970e0d0700
|
||||
03120600130a0e10dce432ec113939310010fcec30014bb0135458bd000e00400001000e000e
|
||||
ffc03811373859014bb00f5458bd000effc00001000e000e0040381137385901060215141217
|
||||
23260235341237027b86828385a0969594970612e6fe3ee7e7fe3be5eb01c6e0df01c4ec0002
|
||||
00c90000048d05d500080013003a40180195100095098112100a0802040005190d3f11001c09
|
||||
041410fcec32fcec11173931002ff4ecd4ec30400b0f151f153f155f15af1505015d01113332
|
||||
3635342623252132041514042b0111230193fe8d9a9a8dfe3801c8fb0101fefffbfeca052ffd
|
||||
cf92878692a6e3dbdde2fda800010037000002f2059e0013003840190e05080f03a9001101bc
|
||||
08870a0b08090204000810120e461410fc3cc4fc3cc432393931002fecf43cc4ec3211393930
|
||||
b2af1501015d01112115211114163b01152322263511233533110177017bfe854b73bdbdd5a2
|
||||
8787059efec28ffda0894e9a9fd202608f013e000000000100ba000004640614001300344019
|
||||
030900030e0106870e11b80c970a010208004e0d09080b461410fcec32f4ec31002f3cecf4c4
|
||||
ec1112173930b2601501015d0111231134262322061511231133113e013332160464b87c7c95
|
||||
acb9b942b375c1c602a4fd5c029e9f9ebea4fd870614fd9e6564ef00000100ba00000464047b
|
||||
001300364019030900030e0106870e11b80cbc0a010208004e0d09080b461410fcec32f4ec31
|
||||
002f3ce4f4c4ec1112173930b46015cf1502015d0111231134262322061511231133153e0133
|
||||
32160464b87c7c95acb9b942b375c1c602a4fd5c029e9f9ebea4fd870460ae6564ef000100a4
|
||||
fef2026f0612000d001f400f079800970e0701000b12041308000e10dc3cf4ec113939310010
|
||||
fcec301333161215140207233612353402a4a096959596a08583830612ecfe3cdfe0fe3aebe5
|
||||
01c5e7e701c20000000100c90000046a05d500050025400c0295008104011c033a00040610fc
|
||||
ecec31002fe4ec304009300750078003800404015d133311211521c9ca02d7fc5f05d5fad5aa
|
||||
00020071fe56045a047b000b0028004a4023190c1d0912861316b90f03b92623b827bc09b90f
|
||||
bd1a1d261900080c4706121220452910fcc4ecf4ec323231002fc4e4ece4f4c4ec10fed5ee11
|
||||
12393930b6602a802aa02a03015d01342623220615141633323617100221222627351e013332
|
||||
363d010e0123220211101233321617353303a2a59594a5a59495a5b8fefefa61ac51519e52b5
|
||||
b439b27ccefcfcce7cb239b8023dc8dcdcc8c7dcdcebfee2fee91d1eb32c2abdbf5b6362013a
|
||||
01030104013a6263aa0000010071ffe303e7047b0019003f401b00860188040e860d880ab911
|
||||
04b917b8118c1a07120d004814451a10fce432ec310010e4f4ec10fef4ee10f5ee30400b0f1b
|
||||
101b801b901ba01b05015d01152e0123220615141633323637150e0123220011100021321603
|
||||
e74e9d50b3c6c6b3509d4e4da55dfdfed6012d010655a20435ac2b2be3cdcde32b2baa242401
|
||||
3e010e0112013a2300000002007bffe3042d047b000a002500bc4027191f0b17090e00a91706
|
||||
b90e1120861fba1cb923b8118c170c001703180d09080b1f030814452610fcecccd4ec323211
|
||||
393931002fc4e4f4fcf4ec10c6ee10ee11391139123930406e301d301e301f3020302130223f
|
||||
27401d401e401f402040214022501d501e501f50205021502250277027851d871e871f872087
|
||||
2185229027a027f0271e301e301f30203021401e401f40204021501e501f50205021601e601f
|
||||
60206021701e701f70207021801e801f80208021185d015d0122061514163332363d01371123
|
||||
350e01232226353436332135342623220607353e0133321602bedfac816f99b9b8b83fbc88ac
|
||||
cbfdfb0102a79760b65465be5af3f00233667b6273d9b4294cfd81aa6661c1a2bdc0127f8b2e
|
||||
2eaa2727fc00000100c90000048b05d5000b002e401506950402950081089504ad0a05010907
|
||||
031c00040c10fcec32d4c4c431002fececf4ec10ee30b21f0d01015d13211521112115211121
|
||||
1521c903b0fd1a02c7fd3902f8fc3e05d5aafe46aafde3aa0000000100c90000042305d50009
|
||||
002940120695040295008104ad08050107031c00040a10fcec32d4c431002fecf4ec10ee30b2
|
||||
0f0b01015d13211521112115211123c9035afd700250fdb0ca05d5aafe48aafd370000010000
|
||||
ff4202b205d50003002d4014001a010201021a03000342029f008104020001032fc439393100
|
||||
10f4ec304b5358071005ed071005ed5922013301230208aafdf8aa05d5f96d000000000200c9
|
||||
0000055405d50013001c00b14035090807030a06110304030511040403420604001503041595
|
||||
0914950d810b040506031109001c160e050a191904113f140a1c0c041d10fcec32fcc4ec1117
|
||||
391139393931002f3cf4ecd4ec123912391239304b5358071005ed071005ed1117395922b240
|
||||
1e01015d40427a13010500050105020603070415001501140216031704250025012502260327
|
||||
06260726082609201e3601360246014602680575047505771388068807980698071f5d005d01
|
||||
1e01171323032e012b01112311212016151406011133323635342623038d417b3ecdd9bf4a8b
|
||||
78dcca01c80100fc83fd89fe9295959202bc16907efe68017f9662fd8905d5d6d88dba024ffd
|
||||
ee8783838500000200100000056805d50002000a00ba40410011010004050402110505040111
|
||||
0a030a0011020003030a0711050406110505040911030a08110a030a42000307950103810905
|
||||
09080706040302010009050a0b10d4c4173931002f3ce4d4ec1239304b5358071005ed0705ed
|
||||
071005ed0705ed071008ed071005ed071005ed071008ed5922b2200c01015d403a0f00580076
|
||||
0070008c000507010802060309041601190256015802500c67016802780176027c0372047707
|
||||
780887018802800c980299039604175d005d090121013301230321032302bcfeee0225fe7be5
|
||||
0239d288fd5f88d5050efd1903aefa2b017ffe81000000010073ffe3058b05f0001d00394020
|
||||
00051b0195031b950812a111ae15950e91088c1e02001c1134043318190b101e10fcecfce4fc
|
||||
c4310010e4f4ecf4ec10fed4ee11393930251121352111060423200011100021320417152626
|
||||
23200011100021323604c3feb6021275fee6a0fea2fe75018b015e9201076f70fc8bfeeefeed
|
||||
011301126ba8d50191a6fd7f53550199016d016e01994846d75f60fecefed1fed2fece250000
|
||||
000200c9000005b005d500080011002e4015009509810195100802100a0005190d32001c0904
|
||||
1210fcecf4ec113939393931002fecf4ec30b2601301015d0111332000111000212521200011
|
||||
100029010193f40135011ffee1fecbfe42019f01b20196fe68fe50fe61052ffb770118012e01
|
||||
2c0117a6fe97fe80fe7efe96000000010087ffe304a205f00027007e403c0d0c020e0b021e1f
|
||||
1e080902070a021f1f1e420a0b1e1f0415010015a11494189511049500942591118c281e0a0b
|
||||
1f1b0700221b190e2d071914222810dcc4ecfcece4111239393939310010e4f4e4ec10eef6ee
|
||||
10c6111739304b535807100eed11173907100eed1117395922b20f2901015db61f292f294f29
|
||||
035d01152e012322061514161f011e0115140421222627351e013332363534262f012e013534
|
||||
24333216044873cc5fa5b377a67ae2d7feddfee76aef807bec72adbc879a7be2ca0117f569da
|
||||
05a4c53736807663651f192bd9b6d9e0302fd04546887e6e7c1f182dc0abc6e42600000100c9
|
||||
0000019305d500030039b700af02011c00040410fcec31002fec30014bb0105458bd0004ffc0
|
||||
00010004000400403811373859400d30054005500560058f059f05065d13331123c9caca05d5
|
||||
fa2b0000000200baffe304a40614000b001c0038401903b90c0f09b918158c0fb81b97190012
|
||||
1247180c06081a461d10fcec3232f4ec31002fece4f4c4ec10c6ee30b6601e801ea01e03015d
|
||||
013426232206151416333236013e01333212111002232226271523113303e5a79292a7a79292
|
||||
a7fd8e3ab17bccffffcc7bb13ab9b9022fcbe7e7cbcbe7e702526461febcfef8fef8febc6164
|
||||
a8061400000100db000001ae00fe00030011b7008302011900180410fcec31002fec30373315
|
||||
23dbd3d3fefe000100100000056805d5000600b7402704110506050311020306060503110403
|
||||
000100021101010042030401af0006040302000505010710d4c4173931002fec3239304b5358
|
||||
071005ed071008ed071008ed071005ed5922b2500801015d406200032a03470447055a037d03
|
||||
8303070600070208040906150114021a041a052a002601260229042905250620083800330133
|
||||
023c043c053706480045014502490449054706590056066602690469057a0076017602790479
|
||||
057506800898009706295d005d21013309013301024afdc6d301d901dad2fdc705d5fb1704e9
|
||||
fa2b0001006401df027f028300030011b6009c020401000410dccc310010d4ec301321152164
|
||||
021bfde50283a40000020071ffe3045a06140010001c003840191ab9000e14b905088c0eb801
|
||||
970317040008024711120b451d10fcecf4ec323231002fece4f4c4ec10c4ee30b6601e801ea0
|
||||
1e03015d0111331123350e0123220211101233321601141633323635342623220603a2b8b83a
|
||||
b17ccbffffcb7cb1fdc7a79292a8a89292a703b6025ef9eca86461014401080108014461fe15
|
||||
cbe7e7cbcbe7e7000001006fffe303c7047b002700e7403c0d0c020e0b531f1e080902070a53
|
||||
1e1f1e420a0b1e1f041500860189041486158918b91104b925b8118c281e0a0b1f1b0700521b
|
||||
080e07081422452810fcc4ecd4ece4111239393939310010e4f4ec10fef5ee10f5ee12173930
|
||||
4b535807100eed111739070eed1117395922b2002701015d406d1c0a1c0b1c0c2e092c0a2c0b
|
||||
2c0c3b093b0a3b0b3b0c0b200020012402280a280b2a132f142f152a16281e281f2920292124
|
||||
27860a860b860c860d12000000010202060a060b030c030d030e030f03100319031a031b031c
|
||||
041d09272f293f295f297f2980299029a029f029185d005d7101152e012322061514161f011e
|
||||
0115140623222627351e013332363534262f012e01353436333216038b4ea85a898962943fc4
|
||||
a5f7d85ac36c66c661828c65ab40ab98e0ce66b4043fae282854544049210e2a99899cb62323
|
||||
be353559514b50250f2495829eac1e0000000001fffa000004e905d50007004a400e06029500
|
||||
81040140031c0040050810d4e4fce431002ff4ec3230014bb00a5458bd000800400001000800
|
||||
08ffc03811373859401300091f00100110021f071009400970099f09095d0321152111231121
|
||||
0604effdeecbfdee05d5aafad5052b0000010056000006350460000c0201404905550605090a
|
||||
0904550a0903550a0b0a025501020b0b0a061107080705110405080807021103020c000c0111
|
||||
00000c420a050203060300bf0b080c0b0a09080605040302010b07000d10d4cc173931002f3c
|
||||
ec32321739304b5358071005ed071008ed071008ed071005ed071008ed071005ed0705ed0710
|
||||
08ed5922014bb00a544bb011545b4bb012545b4bb013545b4bb00b545b58bd000dffc0000100
|
||||
0d000d00403811373859014bb00c544bb00d545b4bb010545b58bd000d00400001000d000dff
|
||||
c0381137385940ff050216021605220a350a49024905460a400a5b025b05550a500a6e026e05
|
||||
660a79027f0279057f05870299029805940abc02bc05ce02c703cf051d0502090306040b050a
|
||||
080b09040b050c1502190316041a051b081b09140b150c250025012302270321042505220622
|
||||
0725082709240a210b230c390336043608390c300e4602480346044004420540064007400844
|
||||
09440a440b400e400e560056015602500451055206520750085309540a550b6300640165026a
|
||||
0365046a056a066a076e09610b670c6f0e7500750179027d0378047d057a067f067a077f0778
|
||||
0879097f097b0a760b7d0c870288058f0e97009701940293039c049b05980698079908402f96
|
||||
0c9f0ea600a601a402a403ab04ab05a906a907ab08a40caf0eb502b103bd04bb05b809bf0ec4
|
||||
02c303cc04ca05795d005d13331b01331b013301230b012356b8e6e5d9e6e5b8fedbd9f1f2d9
|
||||
0460fc96036afc96036afba00396fc6a000000010058000003db0460000900b4401a08110203
|
||||
0203110708074208a900bc03a905080301000401060a10dcc432c411393931002fecf4ec304b
|
||||
5358071005ed071005ed5922014bb00b544bb00c545b58bd000a00400001000a000affc03811
|
||||
373859014bb0135458bd000affc00001000a000a004038113738594042050216022602470249
|
||||
07050b080f0b18031b082b08200b36033908300b400140024503400440054308570359085f0b
|
||||
6001600266036004600562087f0b800baf0b1b5d005d1321150121152135012171036afd4c02
|
||||
b4fc7d02b4fd650460a8fcdb93a803250000000100aeffe30458046000130036401903090003
|
||||
0e0106870e118c0a01bc0c0d09080b4e020800461410fcecf4ec3231002fe432f4c4ec111217
|
||||
3930b46015cf1502015d1311331114163332363511331123350e01232226aeb87c7c95adb8b8
|
||||
43b175c1c801ba02a6fd619f9fbea4027bfba0ac6663f0000001009eff1201c300fe00050019
|
||||
400c039e0083060304011900180610fcecd4cc310010fcec30373315032313f0d3a48152feac
|
||||
fec001400001003b000004790460000b015a4046051106070604110304070706041105040102
|
||||
0103110202010b110001000a11090a0101000a110b0a0708070911080807420a070401040800
|
||||
bf05020a0704010408000208060c10d4c4d4c411173931002f3cec321739304b5358071005ed
|
||||
071008ed071008ed071005ed071005ed071008ed071008ed071005ed5922014bb00a544bb00f
|
||||
545b4bb010545b4bb011545b58bd000cffc00001000c000c00403811373859014bb0145458bd
|
||||
000c00400001000c000cffc0381137385940980a04040a1a04150a260a3d04310a5504570758
|
||||
0a660a76017a047607740a8d04820a99049f049707920a900aa601a904af04a507a30aa00a1c
|
||||
0a03040505090a0b1a03150515091a0b2903260525092a0b200d3a013903370534073609390b
|
||||
300d4903460545094a0b400d590056015902590357055606590756085609590b500d6f0d7801
|
||||
7f0d9b019407ab01a407b00dcf0ddf0dff0d2f5d005d09022309012309013309010464fe6b01
|
||||
aad9febafebad901b3fe72d9012901290460fddffdc101b8fe48024a0216fe71018f00000003
|
||||
00c9000004ec05d5000800110020004340231900950a0995128101950aad1f110b080213191f
|
||||
05000e1c1605191c2e09001c12042110fcec32fcecd4ec111739393931002fececf4ec10ee39
|
||||
30b20f2201015d01112132363534262301112132363534262325213216151406071e01151404
|
||||
232101930144a39d9da3febc012b94919194fe0b0204e7fa807c95a5fef0fbfde802c9fddd87
|
||||
8b8c850266fe3e6f727170a6c0b189a21420cb98c8da000100ba0000049c0614000a00bc4029
|
||||
0811050605071106060503110405040211050504420805020303bc0097090605010406080108
|
||||
00460b10fcec32d4c4113931002f3cece41739304b5358071004ed071005ed071005ed071004
|
||||
ed5922b2100c01015d405f04020a081602270229052b0856026602670873027705820289058e
|
||||
08930296059708a3021209050906020b030a072803270428052b062b07400c6803600c890385
|
||||
0489058d068f079a039707aa03a705b607c507d607f703f003f704f0041a5d71005d13331101
|
||||
33090123011123bab90225ebfdae026bf0fdc7b90614fc6901e3fdf4fdac0223fddd000100b2
|
||||
ffe3052905d50011004b40160802110b0005950e8c09008112081c0a38011c00411210fcecfc
|
||||
ec310010e432f4ec113939393930014bb0105458bd00120040000100120012ffc03811373859
|
||||
b61f138f139f13035d133311141633323635113311100021200011b2cbaec3c2aecbfedffee6
|
||||
fee5fedf05d5fc75f0d3d3f0038bfc5cfedcfed6012a012400000001002f000002f806140013
|
||||
0070401c0510010c08a906018700970e06bc0a02130700070905080d0f0b4c1410fc3cc4fc3c
|
||||
c4c412393931002fe432fcec10ee3212393930014bb00a5458bd0014ffc00001001400140040
|
||||
3811373859014bb00e5458bd00140040000100140014ffc03811373859b640155015a015035d
|
||||
01152322061d012115211123112335333534363302f8b0634d012ffed1b9b0b0aebd06149950
|
||||
68638ffc2f03d18f4ebbab000000000200030000000000140001000000000034000400200000
|
||||
0004000400010000f02effff0000f000ffff10000001000000000006006800000000002f0000
|
||||
000100020003000400050006000700080009000a000b000c000d000e000f0010001100120013
|
||||
001400150016001700180019001a001b001c001d001e001f0020002100220023002400250026
|
||||
002700280029002a002b002c002d002e013500b800cb00cb00c100aa009c01a600b800660000
|
||||
007100cb00a002b20085007500b800c301cb0189022d00cb00a600f000d300aa008700cb03aa
|
||||
0400014a003300cb000000d9050200f4015400b4009c01390114013907060400044e04b40452
|
||||
04b804e704cd0037047304cd04600473013303a2055605a60556053903c5021200c9001f00b8
|
||||
01df007300ba03e9033303bc0444040e00df03cd03aa00e503aa0404000000cb008f00a4007b
|
||||
00b80014016f007f027b0252008f00c705cd009a009a006f00cb00cd019e01d300f000ba0183
|
||||
00d5009803040248009e01d500c100cb00f600830354027f00000333026600d300c700a400cd
|
||||
008f009a0073040005d5010a00fe022b00a400b4009c00000062009c0000001d032d05d505d5
|
||||
05d505f0007f007b005400a406b80614072301d300b800cb00a601c301ec069300a000d3035c
|
||||
037103db0185042304a80448008f0139011401390360008f05d5019a06140723066601790460
|
||||
04600460047b009c00000277046001aa00e904600762007b00c5007f027b000000b4025205cd
|
||||
006600bc00660077061000cd013b01850389008f007b0000001d00cd074a042f009c009c0000
|
||||
077d006f0000006f0335006a006f007b00ae00b2002d0396008f027b00f600830354063705f6
|
||||
008f009c04e10266008f018d02f600cd03440029006604ee007300001400b606050403020100
|
||||
2c2010b002254964b040515820c859212d2cb002254964b040515820c859212d2c20100720b0
|
||||
0050b00d7920b8ffff5058041b0559b0051cb0032508b0042523e120b00050b00d7920b8ffff
|
||||
5058041b0559b0051cb0032508e12d2c4b505820b0fd454459212d2cb002254560442d2c4b53
|
||||
58b00225b0022545445921212d2c45442d000001000000020000322394a85f0f3cf5001f0800
|
||||
00000000bab9f0b800000000bac26791fe89fe1d0a4c076d0000000800010000000000000001
|
||||
0000076dfe1d00000abcfe89fe890a4c00010000000000000000000000000000002f04cd0066
|
||||
06e700c904ec007107cb00ba04e50071034a00ba04bc003d028b000005960073051400ba0239
|
||||
00c1023900c1031f00b004d300c903230037051200ba051200ba031f00a4047500c905140071
|
||||
0466007104e7007b050e00c9049a00c902b20000058f00c90579001006330073062900c90514
|
||||
0087025c00c9051400ba028b00db0579001002e3006405140071042b006f04e3fffa068b0056
|
||||
04330058051200ae028b009e04bc003b057d00c904a200ba05db00b202d1002f0000002200a0
|
||||
010a016c01be01f602e602e60332038003a803c6040a044a048804c40500052c054e05b205fe
|
||||
069406c406ee0714079e0818086c08ac09280952099e09b20a220a380a840b340b6c0c8a0cfc
|
||||
0d380d540e220e7a0ef20f3a0f9200010000002f004d00070042000400020010004000070000
|
||||
0415056800030001b8028040fffbfe03fa1403f92503f83203f79603f60e03f5fe03f4fe03f3
|
||||
2503f20e03f19603f02503ef8a4105effe03ee9603ed9603ecfa03ebfa03eafe03e93a03e842
|
||||
03e7fe03e63203e5e45305e59603e48a4105e45303e3e22f05e3fa03e22f03e1fe03e0fe03df
|
||||
3203de1403dd9603dcfe03db1203da7d03d9bb03d8fe03d68a4105d67d03d5d44705d57d03d4
|
||||
4703d3d21b05d3fe03d21b03d1fe03d0fe03cffe03cefe03cd9603cccb1e05ccfe03cb1e03ca
|
||||
3203c9fe03c6851105c61c03c51603c4fe03c3fe03c2fe03c1fe03c0fe03bffe03befe03bdfe
|
||||
03bcfe03bbfe03ba1103b9862505b9fe03b8b7bb05b8fe03b7b65d05b7bb03b78004b6b52505
|
||||
b65d40ff03b64004b52503b4fe03b39603b2fe03b1fe03b0fe03affe03ae6403ad0e03acab25
|
||||
05ac6403abaa1205ab2503aa1203a98a4105a9fa03a8fe03a7fe03a6fe03a51203a4fe03a3a2
|
||||
0e05a33203a20e03a16403a08a4105a096039ffe039e9d0c059efe039d0c039c9b19059c6403
|
||||
9b9a10059b19039a1003990a0398fe0397960d0597fe03960d03958a410595960394930e0594
|
||||
2803930e0392fa039190bb0591fe03908f5d0590bb039080048f8e25058f5d038f40048e2503
|
||||
8dfe038c8b2e058cfe038b2e038a8625058a410389880b05891403880b038786250587640386
|
||||
85110586250385110384fe038382110583fe0382110381fe0380fe037ffe0340ff7e7d7d057e
|
||||
fe037d7d037c64037b5415057b25037afe0379fe03780e03770c03760a0375fe0374fa0373fa
|
||||
0372fa0371fa0370fe036ffe036efe036c21036bfe036a1142056a530369fe03687d03671142
|
||||
0566fe0365fe0364fe0363fe0362fe03613a0360fa035e0c035dfe035bfe035afe0359580a05
|
||||
59fa03580a035716190557320356fe035554150555420354150353011005531803521403514a
|
||||
130551fe03500b034ffe034e4d10054efe034d10034cfe034b4a13054bfe034a4910054a1303
|
||||
491d0d05491003480d0347fe0346960345960344fe0343022d0543fa0342bb03414b0340fe03
|
||||
3ffe033e3d12053e14033d3c0f053d12033c3b0d053c40ff0f033b0d033afe0339fe03383714
|
||||
0538fa033736100537140336350b05361003350b03341e03330d0332310b0532fe03310b0330
|
||||
2f0b05300d032f0b032e2d09052e10032d09032c32032b2a25052b64032a2912052a25032912
|
||||
032827250528410327250326250b05260f03250b0324fe0323fe03220f032101100521120320
|
||||
64031ffa031e1d0d051e64031d0d031c1142051cfe031bfa031a42031911420519fe03186403
|
||||
1716190517fe031601100516190315fe0314fe0313fe031211420512fe0311022d0511420310
|
||||
7d030f64030efe030d0c16050dfe030c0110050c16030bfe030a100309fe0308022d0508fe03
|
||||
0714030664030401100504fe03401503022d0503fe0302011005022d0301100300fe0301b801
|
||||
64858d012b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b
|
||||
2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b
|
||||
2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b
|
||||
2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b
|
||||
2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b
|
||||
2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b
|
||||
2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b
|
||||
2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b
|
||||
2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b1d00>
|
||||
] def
|
||||
FontName currentdict end definefont pop
|
||||
%%Page: 1 1
|
||||
%%BeginPageSetup
|
||||
%%PageBoundingBox: 0 0 630 399
|
||||
%%EndPageSetup
|
||||
q
|
||||
0 g
|
||||
1.005231 w
|
||||
0 J
|
||||
0 j
|
||||
[] 0.0 d
|
||||
4 M q 1 0 0 -1 0 398.268463 cm
|
||||
220.387 54.336 m 351.496 54.336 l 351.496 88.773 l 220.387 88.773 l
|
||||
220.387 54.336 l h
|
||||
220.387 54.336 m S Q
|
||||
BT
|
||||
9.6 0 0 9.6 240.400003 325.596368 Tm
|
||||
/f-0-0 1 Tf
|
||||
[<01>1<02>2<03>2<0405>-1<060708>-1<0403>2<090a0b>1<02>2<05>]TJ
|
||||
0 -1.25 Td
|
||||
[<0c0d>-1<060e0f>-1<0410>-1<11>]TJ
|
||||
ET
|
||||
1.60016 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
175.582 163.477 m 175.582 168.566 160.82 172.695 142.613 172.695 c
|
||||
124.402 172.695 109.645 168.566 109.645 163.477 c 109.645 158.383
|
||||
124.402 154.254 142.613 154.254 c 160.82 154.254 175.582 158.383
|
||||
175.582 163.477 c h
|
||||
175.582 163.477 m S Q
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
175.504 212.371 m 175.504 217.461 160.742 221.59 142.535 221.59 c
|
||||
124.328 221.59 109.566 217.461 109.566 212.371 c 109.566 207.277
|
||||
124.328 203.148 142.535 203.148 c 160.742 203.148 175.504 207.277
|
||||
175.504 212.371 c h
|
||||
175.504 212.371 m S Q
|
||||
1.6 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
175.023 163.754 m 175.023 212.371 l S Q
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
109.645 163.477 m 109.645 212.09 l S Q
|
||||
1.60016 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
311.406 163.895 m 311.406 168.988 296.645 173.113 278.438 173.113 c
|
||||
260.227 173.113 245.469 168.988 245.469 163.895 c 245.469 158.801
|
||||
260.227 154.676 278.438 154.676 c 296.645 154.676 311.406 158.801
|
||||
311.406 163.895 c h
|
||||
311.406 163.895 m S Q
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
311.328 212.789 m 311.328 217.879 296.566 222.008 278.359 222.008 c
|
||||
260.152 222.008 245.391 217.879 245.391 212.789 c 245.391 207.695
|
||||
260.152 203.57 278.359 203.57 c 296.566 203.57 311.328 207.695 311.328
|
||||
212.789 c h
|
||||
311.328 212.789 m S Q
|
||||
1.6 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
310.844 164.176 m 310.844 212.789 l S Q
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
245.469 163.895 m 245.469 212.508 l S Q
|
||||
1.60016 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
439.926 166.688 m 439.926 171.781 425.164 175.91 406.957 175.91 c
|
||||
388.75 175.91 373.988 171.781 373.988 166.688 c 373.988 161.598 388.75
|
||||
157.469 406.957 157.469 c 425.164 157.469 439.926 161.598 439.926
|
||||
166.688 c h
|
||||
439.926 166.688 m S Q
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
439.848 215.582 m 439.848 220.676 425.09 224.801 406.883 224.801 c
|
||||
388.672 224.801 373.914 220.676 373.914 215.582 c 373.914 210.492
|
||||
388.672 206.363 406.883 206.363 c 425.09 206.363 439.848 210.492
|
||||
439.848 215.582 c h
|
||||
439.848 215.582 m S Q
|
||||
1.6 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
439.367 166.969 m 439.367 215.582 l S Q
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
373.988 166.688 m 373.988 215.305 l S Q
|
||||
1.60016 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
252.73 339.355 m 252.73 344.445 237.973 348.574 219.762 348.574 c
|
||||
201.555 348.574 186.793 344.445 186.793 339.355 c 186.793 334.262
|
||||
201.555 330.133 219.762 330.133 c 237.973 330.133 252.73 334.262 252.73
|
||||
339.355 c h
|
||||
252.73 339.355 m S Q
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
252.656 388.25 m 252.656 393.34 237.895 397.469 219.688 397.469 c
|
||||
201.48 397.469 186.719 393.34 186.719 388.25 c 186.719 383.156 201.48
|
||||
379.027 219.688 379.027 c 237.895 379.027 252.656 383.156 252.656
|
||||
388.25 c h
|
||||
252.656 388.25 m S Q
|
||||
1.6 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
252.172 339.633 m 252.172 388.25 l S Q
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
186.793 339.355 m 186.793 387.969 l S Q
|
||||
BT
|
||||
9.6 0 0 9.6 75.557163 243.454333 Tm
|
||||
/f-0-0 1 Tf
|
||||
[<12>18<04>1<130a14>1<15>-2<0b>]TJ
|
||||
18.684519 -2.996216 Td
|
||||
[<1216>1<17>1<18>-1<17>1<19>41<1a01>]TJ
|
||||
0 -1.25 Td
|
||||
[<1b1c1d>-2<1e1e>]TJ
|
||||
12.805588 0.0276477 Td
|
||||
[<120a>1<1f02>2<05>-1<0e>-1<06070c>-1<200b0a>1<1f11>]TJ
|
||||
-26.891736 1.133586 Td
|
||||
[<1d>-2<090a>1<14>1<02>1<18>-1<12>110<21>1<1d>]TJ
|
||||
0 -1.25 Td
|
||||
[<21>79<02>2<05>-1<0a0b>1<0413>]TJ
|
||||
8.43187 5.747114 Td
|
||||
[<17>73<05>21<0410>-1<0e22>-1<16>1<10>-1<23>]TJ
|
||||
0 -1.25 Td
|
||||
[<0d0f>-1<0624>-1<0a>1<14>1<15>-3<0b>]TJ
|
||||
25.203725 -0.0305608 Td
|
||||
[<16>1<24>-1<0e0a03>2<15>-2<0e>-1<02>2<23>]TJ
|
||||
0 -1.25 Td
|
||||
[<25>29<0a03>2<0a10>-1<1318>-1<0d>35<042602>2<05>]TJ
|
||||
ET
|
||||
1.005231 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
156.406 248.234 m 287.516 248.234 l 287.516 282.676 l 156.406 282.676 l
|
||||
156.406 248.234 l h
|
||||
156.406 248.234 m S Q
|
||||
BT
|
||||
9.6 0 0 9.6 168.816605 130.165637 Tm
|
||||
/f-0-0 1 Tf
|
||||
[<01>1<02>2<03>2<0405>-1<060708>-1<0f>-1<15>-2<05>-1<15>-3<14>1<0e02>2<05>-1<0a
|
||||
27>]TJ
|
||||
10.126953 0 Td
|
||||
[<02>2<05>]TJ
|
||||
-10.126953 -1.25 Td
|
||||
[<0c0d>-1<060e0f>-1<0410>-1<11>]TJ
|
||||
ET
|
||||
0.921608 w
|
||||
[ 5.529648 0.921608] 0 d
|
||||
q 1 0 0 1 0 398.268463 cm
|
||||
0.461 -281.039 m 116.008 -281.039 l 116.008 -248.191 l 0.461 -248.191 l
|
||||
0.461 -281.039 l h
|
||||
0.461 -281.039 m S Q
|
||||
BT
|
||||
9.6 0 0 9.6 4.795825 134.635925 Tm
|
||||
/f-0-0 1 Tf
|
||||
[<1d>-2<0a>1<03>1<28>-1<0b>1<15>-3<0e0405>]TJ
|
||||
0 -1.25 Td
|
||||
[<0c02>1<201320>-1<0710>-1<1324090a14>1<02>2<29>-1<0724>-1<0902>2<14>1<0e
|
||||
05>]TJ
|
||||
10.197266 0 Td
|
||||
[<02>2<11>]TJ
|
||||
ET
|
||||
0.874385 w
|
||||
[ 0.874385 1.748769] 0 d
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
331.52 249.285 m 435.379 249.285 l 435.379 282.18 l 331.52 282.18 l
|
||||
331.52 249.285 l h
|
||||
331.52 249.285 m S Q
|
||||
BT
|
||||
9.6 0 0 9.6 345.902591 136.871082 Tm
|
||||
/f-0-0 1 Tf
|
||||
[<16>1<2a0e>-1<0515>-3<14>1<0e0405>]TJ
|
||||
0 -1.25 Td
|
||||
[<0c02>1<201320>-1<0708>-1<15>-2<0b0a>1<1f05>20<02>2<11>]TJ
|
||||
-23.853645 -9.999148 Td
|
||||
[<1a1010>-1<040e15>-3<0e02>2<23>]TJ
|
||||
0 -1.25 Td
|
||||
[<25>29<0a03>2<0a10>-1<1318>-1<0d>35<042602>2<05>]TJ
|
||||
7.661297 2.021848 Td
|
||||
[<120a>1<1f02>2<05>-1<0e>-1<06070c>-1<200b0a>1<1f11>]TJ
|
||||
0 -1.25 Td
|
||||
[<1d>-2<090a>1<14>1<02>]TJ
|
||||
ET
|
||||
1.6 w
|
||||
[] 0.0 d
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
280.633 88.879 m 145.965 152.578 l S Q
|
||||
151.75 248.425 m 153.273 252.686 l 144.52 245.007 l 156.012 246.901 l
|
||||
151.75 248.425 l h
|
||||
151.75 248.425 m f*
|
||||
0.723173 w
|
||||
q 1 0.473029 0.473029 -1 0 398.268463 cm
|
||||
66.083 181.103 m 68.975 178.209 l 58.853 181.101 l 68.977 183.995 l
|
||||
66.083 181.103 l h
|
||||
66.083 181.103 m S Q
|
||||
1.6 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
280.074 89.438 m 280.074 153.695 l S Q
|
||||
280.074 250.972 m 276.875 254.171 l 280.074 242.972 l 283.273 254.171 l
|
||||
280.074 250.972 l h
|
||||
280.074 250.972 m f*
|
||||
0.8 w
|
||||
q -0.000000000000000061 1 1 0.000000000000000061 0 398.268463 cm
|
||||
-147.297 280.074 m -144.098 276.875 l -155.297 280.074 l -144.098
|
||||
283.273 l -147.297 280.074 l h
|
||||
-147.297 280.074 m S Q
|
||||
1.6 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
285.27 89.043 m 340.207 121.863 l S Q
|
||||
334.711 279.69 m 330.324 278.581 l 341.578 275.585 l 333.605 284.077 l
|
||||
334.711 279.69 l h
|
||||
334.711 279.69 m f*
|
||||
0.686779 w
|
||||
q -1 0.597406 0.597406 1 0 398.268463 cm
|
||||
-298.881 59.975 m -296.137 57.226 l -305.75 59.973 l -296.135 62.722 l
|
||||
-298.881 59.975 l h
|
||||
-298.881 59.975 m S Q
|
||||
1.6 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
155.465 265.453 m 116.348 265.453 l S Q
|
||||
149.062 132.815 m 145.863 129.612 l 157.062 132.815 l 145.863 136.015 l
|
||||
149.062 132.815 l h
|
||||
149.062 132.815 m f*
|
||||
0.8 w
|
||||
q -1 -0.000000000000000122 -0.000000000000000122 1 0 398.268463 cm
|
||||
-149.062 -265.453 m -145.863 -268.656 l -157.062 -265.453 l -145.863
|
||||
-262.254 l -149.062 -265.453 l h
|
||||
-149.062 -265.453 m S Q
|
||||
122.75 132.815 m 125.949 136.015 l 114.75 132.815 l 125.949 129.612 l
|
||||
122.75 132.815 l h
|
||||
122.75 132.815 m f*
|
||||
q 1 -0.000000000000000122 -0.000000000000000122 -1 0 398.268463 cm
|
||||
122.75 265.453 m 125.949 262.254 l 114.75 265.453 l 125.949 268.656 l
|
||||
122.75 265.453 l h
|
||||
122.75 265.453 m S Q
|
||||
1.6 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
252.395 219.602 m 218.934 247.098 l S Q
|
||||
223.879 155.233 m 224.32 159.737 l 217.699 150.155 l 228.383 154.792 l
|
||||
223.879 155.233 l h
|
||||
223.879 155.233 m f*
|
||||
0.618042 w
|
||||
q 1 0.821886 0.821886 -1 0 398.268463 cm
|
||||
14.403 254.873 m 16.876 252.401 l 8.224 254.872 l 16.874 257.345 l
|
||||
14.403 254.873 l h
|
||||
14.403 254.873 m S Q
|
||||
1.005231 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
341.922 104.066 m 473.031 104.066 l 473.031 138.508 l 341.922 138.508 l
|
||||
341.922 104.066 l h
|
||||
341.922 104.066 m S Q
|
||||
BT
|
||||
9.6 0 0 9.6 354.334622 274.333276 Tm
|
||||
/f-0-0 1 Tf
|
||||
[<01>1<02>2<03>2<0405>-1<060708>-1<0f>-1<15>-2<05>-1<15>-3<14>1<0e02>2<05>-1<0a
|
||||
27>]TJ
|
||||
10.126953 0 Td
|
||||
[<02>2<05>]TJ
|
||||
-10.126953 -1.25 Td
|
||||
[<0c0d>-1<060e0f>-1<0410>-1<11>]TJ
|
||||
ET
|
||||
1.6 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
408.594 137.887 m 408.594 156.578 l S Q
|
||||
408.594 248.089 m 405.395 251.288 l 408.594 240.089 l 411.797 251.288 l
|
||||
408.594 248.089 l h
|
||||
408.594 248.089 m f*
|
||||
0.8 w
|
||||
q -0.000000000000000061 1 1 0.000000000000000061 0 398.268463 cm
|
||||
-150.18 408.594 m -146.98 405.395 l -158.18 408.594 l -146.98 411.797 l
|
||||
-150.18 408.594 l h
|
||||
-150.18 408.594 m S Q
|
||||
1.6 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
157.699 221.309 m 200.727 247.016 l S Q
|
||||
195.23 154.538 m 190.844 153.429 l 202.098 150.433 l 194.125 158.925 l
|
||||
195.23 154.538 l h
|
||||
195.23 154.538 m f*
|
||||
0.68678 w
|
||||
q -1 0.597403 0.597403 1 0 398.268463 cm
|
||||
-251.189 -93.67 m -248.444 -96.418 l -258.057 -93.672 l -248.443
|
||||
-90.923 l -251.189 -93.67 l h
|
||||
-251.189 -93.67 m S Q
|
||||
2.4 w
|
||||
[ 7.2 7.2] 0 d
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
22.473 236.957 m 597.465 236.957 l S Q
|
||||
BT
|
||||
16 0 0 16 5.708505 64.082971 Tm
|
||||
/f-0-0 1 Tf
|
||||
[<2b15>-2<14>1<2c>1<22161023>]TJ
|
||||
0 -1 Td
|
||||
[<01>1<02>2<0e0f>-1<042304>1<0b04>1<1306>]TJ
|
||||
0.674965 15.682794 Td
|
||||
[<17>73<05>21<0410>-1<0e22>-1<16>1<10>-1<23>]TJ
|
||||
0 -1 Td
|
||||
[<01>1<02>2<0e0f>-1<042304>1<0b04>1<1306>]TJ
|
||||
ET
|
||||
0.921608 w
|
||||
[ 5.529648 0.921608] 0 d
|
||||
q 1 0 0 1 0 398.268463 cm
|
||||
514.727 -138.27 m 630.273 -138.27 l 630.273 -105.422 l 514.727 -105.422
|
||||
l 514.727 -138.27 l h
|
||||
514.727 -138.27 m S Q
|
||||
BT
|
||||
9.6 0 0 9.6 519.059866 277.406592 Tm
|
||||
/f-0-0 1 Tf
|
||||
[<1d>-2<0a>1<03>1<28>-1<0b>1<15>-3<0e0405>]TJ
|
||||
0 -1.25 Td
|
||||
[<0c02>1<201320>-1<0710>-1<1324090a14>1<02>2<29>-1<0724>-1<0902>2<14>1<0e
|
||||
05>]TJ
|
||||
10.197266 0 Td
|
||||
[<02>2<11>]TJ
|
||||
ET
|
||||
1.6 w
|
||||
[] 0.0 d
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
513.824 122.125 m 474.711 122.125 l S Q
|
||||
507.426 276.143 m 504.227 272.944 l 515.426 276.143 l 504.227 279.343 l
|
||||
507.426 276.143 l h
|
||||
507.426 276.143 m f*
|
||||
0.8 w
|
||||
q -1 -0.000000000000000122 -0.000000000000000122 1 0 398.268463 cm
|
||||
-507.426 -122.125 m -504.227 -125.324 l -515.426 -122.125 l -504.227
|
||||
-118.926 l -507.426 -122.125 l h
|
||||
-507.426 -122.125 m S Q
|
||||
481.109 276.143 m 484.312 279.343 l 473.109 276.143 l 484.312 272.944 l
|
||||
481.109 276.143 l h
|
||||
481.109 276.143 m f*
|
||||
q 1 -0.000000000000000122 -0.000000000000000122 -1 0 398.268463 cm
|
||||
481.109 122.125 m 484.312 118.926 l 473.109 122.125 l 484.312 125.324 l
|
||||
481.109 122.125 l h
|
||||
481.109 122.125 m S Q
|
||||
1.60016 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
488.539 29.785 m 488.539 34.879 473.781 39.004 455.57 39.004 c 437.363
|
||||
39.004 422.602 34.879 422.602 29.785 c 422.602 24.691 437.363 20.566
|
||||
455.57 20.566 c 473.781 20.566 488.539 24.691 488.539 29.785 c h
|
||||
488.539 29.785 m S Q
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
488.465 78.68 m 488.465 83.77 473.703 87.898 455.496 87.898 c 437.289
|
||||
87.898 422.527 83.77 422.527 78.68 c 422.527 73.586 437.289 69.461
|
||||
455.496 69.461 c 473.703 69.461 488.465 73.586 488.465 78.68 c h
|
||||
488.465 78.68 m S Q
|
||||
1.6 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
487.98 30.062 m 487.98 78.68 l S Q
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
422.602 29.785 m 422.602 78.398 l S Q
|
||||
BT
|
||||
9.6 0 0 9.6 441.005374 347.123721 Tm
|
||||
/f-0-0 1 Tf
|
||||
[<25>167<02>2<14>1<0f>]TJ
|
||||
0 -1.25 Td
|
||||
[<120a>1<1f05>-1<15>-2<05>-1<06>]TJ
|
||||
ET
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
422.809 52.973 m 353.52 73.09 l S Q
|
||||
359.664 326.964 m 361.848 330.929 l 351.984 324.733 l 363.629 324.784 l
|
||||
359.664 326.964 l h
|
||||
359.664 326.964 m f*
|
||||
0.768277 w
|
||||
q 1 0.290323 0.290323 -1 0 398.268463 cm
|
||||
312.613 162.063 m 315.689 158.991 l 304.933 162.064 l 315.686 165.135 l
|
||||
312.613 162.063 l h
|
||||
312.613 162.063 m S Q
|
||||
1.6 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
282.879 22.918 m 282.32 51.973 l S Q
|
||||
282.441 352.694 m 279.305 355.956 l 282.289 344.694 l 285.703 355.831 l
|
||||
282.441 352.694 l h
|
||||
282.441 352.694 m f*
|
||||
0.799852 w
|
||||
q 0.0192309 1 1 -0.0192309 0 398.268463 cm
|
||||
-40.128 283.213 m -36.928 280.015 l -48.128 283.215 l -36.93 286.413 l
|
||||
-40.128 283.213 l h
|
||||
-40.128 283.213 m S Q
|
||||
BT
|
||||
9.6 0 0 9.6 199.049588 390.974713 Tm
|
||||
/f-0-0 1 Tf
|
||||
[<2d24>-1<02>2<05>-1<071d>-2<0902>2<140a>1<2e>-1<0a14>1<15>-2<0e>-1<0a>1<04
|
||||
10>]TJ
|
||||
0 -1.25 Td
|
||||
[<0c26>-1<04>1<05>16<230724>-1<0a>1<27>-1<02>2<2907>-1<03>2<02>2<03>1<04
|
||||
050607>]TJ
|
||||
10.234375 0 Td
|
||||
[<240a2702>1<2907>-1<15>-2<240902>2<140e0705>-1<15>-3<0e0a04>1<29>-1<07
|
||||
02>2<0e>]TJ
|
||||
10.169922 0 Td
|
||||
<1420>Tj
|
||||
ET
|
||||
1.6 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
327.57 265.453 m 288.457 265.453 l S Q
|
||||
321.172 132.815 m 317.973 129.612 l 329.172 132.815 l 317.973 136.015 l
|
||||
321.172 132.815 l h
|
||||
321.172 132.815 m f*
|
||||
0.8 w
|
||||
q -1 -0.000000000000000122 -0.000000000000000122 1 0 398.268463 cm
|
||||
-321.172 -265.453 m -317.973 -268.656 l -329.172 -265.453 l -317.973
|
||||
-262.254 l -321.172 -265.453 l h
|
||||
-321.172 -265.453 m S Q
|
||||
294.855 132.815 m 298.055 136.015 l 286.855 132.815 l 298.055 129.612 l
|
||||
294.855 132.815 l h
|
||||
294.855 132.815 m f*
|
||||
q 1 -0.000000000000000122 -0.000000000000000122 -1 0 398.268463 cm
|
||||
294.855 265.453 m 298.055 262.254 l 286.855 265.453 l 298.055 268.656 l
|
||||
294.855 265.453 l h
|
||||
294.855 265.453 m S Q
|
||||
1.370434 w
|
||||
q 1 0 0 -1 0 398.268463 cm
|
||||
219.727 282.898 m 219.727 328.188 l S Q
|
||||
219.727 75.561 m 216.984 78.304 l 219.727 68.71 l 222.465 78.304 l
|
||||
219.727 75.561 l h
|
||||
219.727 75.561 m f*
|
||||
0.685217 w
|
||||
q -0.000000000000000061 1 1 0.000000000000000061 0 398.268463 cm
|
||||
-322.707 219.727 m -319.965 216.984 l -329.559 219.727 l -319.965
|
||||
222.465 l -322.707 219.727 l h
|
||||
-322.707 219.727 m S Q
|
||||
Q
|
||||
showpage
|
||||
%%Trailer
|
||||
count op_count sub {pop} repeat
|
||||
countdictstack dict_count sub {end} repeat
|
||||
cairo_eps_state restore
|
||||
%%EOF
|
||||
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 42 KiB |
|
|
@ -0,0 +1,909 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="744.09448819"
|
||||
height="1052.3622047"
|
||||
id="svg5357"
|
||||
version="1.1"
|
||||
inkscape:version="0.48.3.1 r9886"
|
||||
sodipodi:docname="nand_decoder.pdf">
|
||||
<defs
|
||||
id="defs5359" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1"
|
||||
inkscape:cx="199"
|
||||
inkscape:cy="520"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="true"
|
||||
inkscape:window-width="1855"
|
||||
inkscape:window-height="1056"
|
||||
inkscape:window-x="65"
|
||||
inkscape:window-y="24"
|
||||
inkscape:window-maximized="1">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid5365" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata5362">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<g
|
||||
id="g6154"
|
||||
transform="translate(0,-120)">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-5"
|
||||
d="m 50,432.36218 36.923081,0 0,-18.32432 46.153839,0 0,18.32432 36.92308,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-6"
|
||||
d="m 87.360281,408.9838 45.716639,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3414"
|
||||
d="m 84.153851,414.03786 50.769229,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
id="g6284"
|
||||
transform="translate(0,-120)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5621"
|
||||
d="m 50,432.36218 -20,0 0,-20 0,40"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6131"
|
||||
d="m 20,422.36218 0,20"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6133"
|
||||
d="m 12,426.36218 0,12"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="translate(0,70.000003)"
|
||||
id="g6284-0">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5621-6"
|
||||
d="m 50,432.36218 -20,0 0,-20 0,40"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6131-8"
|
||||
d="m 20,422.36218 0,20"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6133-8"
|
||||
d="m 12,426.36218 0,12"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="translate(0,260)"
|
||||
id="g6284-2">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5621-65"
|
||||
d="m 50,432.36218 -20,0 0,-20 0,40"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6131-4"
|
||||
d="m 20,422.36218 0,20"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6133-2"
|
||||
d="m 12,426.36218 0,12"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="translate(0,450)"
|
||||
id="g6284-3">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5621-9"
|
||||
d="m 50,432.36218 -20,0 0,-20 0,40"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6131-1"
|
||||
d="m 20,422.36218 0,20"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6133-7"
|
||||
d="m 12,426.36218 0,12"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="translate(116.92308,70.000003)"
|
||||
id="g6154-5">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-5-5"
|
||||
d="m 50,432.36218 36.923081,0 0,-18.32432 46.153839,0 0,18.32432 36.92308,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-6-7"
|
||||
d="m 87.360281,408.9838 45.716639,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3414-2"
|
||||
d="m 84.153851,414.03786 50.769229,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="translate(233.07692,-120)"
|
||||
id="g6154-6">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-5-8"
|
||||
d="m 50,432.36218 36.923081,0 0,-18.32432 46.153839,0 0,18.32432 36.92308,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-6-0"
|
||||
d="m 87.360281,408.9838 45.716639,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3414-7"
|
||||
d="m 84.153851,414.03786 50.769229,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="translate(233.07692,70.000003)"
|
||||
id="g6154-3">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-5-4"
|
||||
d="m 50,432.36218 36.923081,0 0,-18.32432 46.153839,0 0,18.32432 36.92308,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-6-1"
|
||||
d="m 87.360281,408.9838 45.716639,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3414-4"
|
||||
d="m 84.153851,414.03786 50.769229,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 110,182.36218 0,330"
|
||||
id="path6395"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 230,182.36218 c 0,0 0,270 0,280 0,10 0,50 0,50"
|
||||
id="path6397"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 340,182.36218 0,330"
|
||||
id="path6399"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 460,182.36218 0,330"
|
||||
id="path6401"
|
||||
inkscape:connector-curvature="0" />
|
||||
<g
|
||||
transform="translate(-3.07692,260)"
|
||||
id="g6154-2">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-5-54"
|
||||
d="m 50,432.36218 36.923081,0 0,-18.32432 46.153839,0 0,18.32432 36.92308,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-6-8"
|
||||
d="m 87.360281,408.9838 45.716639,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3414-5"
|
||||
d="m 84.153851,414.03786 50.769229,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="translate(346.92308,260)"
|
||||
id="g6154-8">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-5-1"
|
||||
d="m 50,432.36218 36.923081,0 0,-18.32432 46.153839,0 0,18.32432 36.92308,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-6-5"
|
||||
d="m 87.360281,408.9838 45.716639,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3414-3"
|
||||
d="m 84.153851,414.03786 50.769229,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="translate(346.92308,450)"
|
||||
id="g6154-4">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-5-2"
|
||||
d="m 50,432.36218 36.923081,0 0,-18.32432 46.153839,0 0,18.32432 36.92308,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-6-56"
|
||||
d="m 87.360281,408.9838 45.716639,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3414-37"
|
||||
d="m 84.153851,414.03786 50.769229,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="translate(120,450)"
|
||||
id="g6154-0">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-5-3"
|
||||
d="m 50,432.36218 36.923081,0 0,-18.32432 46.153839,0 0,18.32432 36.92308,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-6-9"
|
||||
d="m 87.360281,408.9838 45.716639,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3414-1"
|
||||
d="m 84.153851,414.03786 50.769229,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 170,312.36218 120,0"
|
||||
id="path6488"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 400,312.36218 120,0"
|
||||
id="path6490"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 50,502.36218 120,0"
|
||||
id="path6492"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 400,502.36218 120,0"
|
||||
id="path6494"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 170,692.36218 230,0"
|
||||
id="path6496"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 400,882.36218 -110,0"
|
||||
id="path6498"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 50,882.36218 120,0"
|
||||
id="path6500"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 140,692.36218 40,0"
|
||||
id="path6502"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 590,182.36218 0,330"
|
||||
id="path6531"
|
||||
inkscape:connector-curvature="0" />
|
||||
<g
|
||||
id="g6578"
|
||||
transform="translate(10,-59.999997)">
|
||||
<path
|
||||
transform="translate(194,-66.999997)"
|
||||
d="m 350,377.36218 c 0,2.76143 -2.23858,5 -5,5 -2.76142,0 -5,-2.23857 -5,-5 0,-2.76142 2.23858,-5 5,-5 2.76142,0 5,2.23858 5,5 z"
|
||||
sodipodi:ry="5"
|
||||
sodipodi:rx="5"
|
||||
sodipodi:cy="377.36218"
|
||||
sodipodi:cx="345"
|
||||
id="path6744-2"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.62600005;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
<g
|
||||
id="g6154-6-1"
|
||||
transform="matrix(0,1,-1,0,942.36218,202.36218)">
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 50,432.36218 36.923081,0 0,-18.32432 46.153839,0 0,18.32432 36.92308,0"
|
||||
id="path5141-5-8-3"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 87.360281,408.9838 45.716639,0"
|
||||
id="path5145-6-0-1"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 84.153851,414.03786 50.769229,0"
|
||||
id="path3414-7-5"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
transform="translate(10,130)"
|
||||
id="g6578-0">
|
||||
<path
|
||||
transform="translate(194,-66.999997)"
|
||||
d="m 350,377.36218 c 0,2.76143 -2.23858,5 -5,5 -2.76142,0 -5,-2.23857 -5,-5 0,-2.76142 2.23858,-5 5,-5 2.76142,0 5,2.23858 5,5 z"
|
||||
sodipodi:ry="5"
|
||||
sodipodi:rx="5"
|
||||
sodipodi:cy="377.36218"
|
||||
sodipodi:cx="345"
|
||||
id="path6744-2-8"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.62600005;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
<g
|
||||
id="g6154-6-1-0"
|
||||
transform="matrix(0,1,-1,0,942.36218,202.36218)">
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 50,432.36218 36.923081,0 0,-18.32432 46.153839,0 0,18.32432 36.92308,0"
|
||||
id="path5141-5-8-3-8"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 87.360281,408.9838 45.716639,0"
|
||||
id="path5145-6-0-1-2"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 84.153851,414.03786 50.769229,0"
|
||||
id="path3414-7-5-2"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
transform="translate(10,320)"
|
||||
id="g6578-0-2">
|
||||
<path
|
||||
transform="translate(194,-66.999997)"
|
||||
d="m 350,377.36218 c 0,2.76143 -2.23858,5 -5,5 -2.76142,0 -5,-2.23857 -5,-5 0,-2.76142 2.23858,-5 5,-5 2.76142,0 5,2.23858 5,5 z"
|
||||
sodipodi:ry="5"
|
||||
sodipodi:rx="5"
|
||||
sodipodi:cy="377.36218"
|
||||
sodipodi:cx="345"
|
||||
id="path6744-2-8-3"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.62600005;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
<g
|
||||
id="g6154-6-1-0-6"
|
||||
transform="matrix(0,1,-1,0,942.36218,202.36218)">
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 50,432.36218 36.923081,0 0,-18.32432 46.153839,0 0,18.32432 36.92308,0"
|
||||
id="path5141-5-8-3-8-8"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 87.360281,408.9838 45.716639,0"
|
||||
id="path5145-6-0-1-2-9"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 84.153851,414.03786 50.769229,0"
|
||||
id="path3414-7-5-2-4"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
transform="translate(10,510)"
|
||||
id="g6578-0-0">
|
||||
<path
|
||||
transform="translate(194,-66.999997)"
|
||||
d="m 350,377.36218 c 0,2.76143 -2.23858,5 -5,5 -2.76142,0 -5,-2.23857 -5,-5 0,-2.76142 2.23858,-5 5,-5 2.76142,0 5,2.23858 5,5 z"
|
||||
sodipodi:ry="5"
|
||||
sodipodi:rx="5"
|
||||
sodipodi:cy="377.36218"
|
||||
sodipodi:cx="345"
|
||||
id="path6744-2-8-2"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.62600005;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
<g
|
||||
id="g6154-6-1-0-5"
|
||||
transform="matrix(0,1,-1,0,942.36218,202.36218)">
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 50,432.36218 36.923081,0 0,-18.32432 46.153839,0 0,18.32432 36.92308,0"
|
||||
id="path5141-5-8-3-8-4"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 87.360281,408.9838 45.716639,0"
|
||||
id="path5145-6-0-1-2-95"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 84.153851,414.03786 50.769229,0"
|
||||
id="path3414-7-5-2-8"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 110,512.36218 0,430"
|
||||
id="path6668"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 230,512.36218 0,430"
|
||||
id="path6670"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 340,512.36218 0,430"
|
||||
id="path6672"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 460,512.36218 0,430"
|
||||
id="path6674"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 590,512.36218 0,430"
|
||||
id="path6676"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.7320509;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 510,692.36218 120,0"
|
||||
id="path6678"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.71269763;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 520,312.36218 110,0"
|
||||
id="path6680"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.71269763;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 520,502.36218 110,0"
|
||||
id="path6682"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.71269763;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 520,882.36218 110,0"
|
||||
id="path6684"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 500,882.36218 30,0"
|
||||
id="path6686"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-71-3"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,390.40421,394.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-71-3-8"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,390.40421,584.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-71-3-4"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,390.40421,204.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-71-3-0"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,390.40421,14.543631)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 555,630.36218 35,0"
|
||||
id="path6738"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 555,819.36218 33,0"
|
||||
id="path6740"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-71-3-3"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,458.40421,331.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-71-3-7"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,459.40421,520.54363)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 554.5,439.36218 35,0"
|
||||
id="path6738-7"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 555.5,250.36218 35,0"
|
||||
id="path6738-2"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-71-3-3-0"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,459.40421,141.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-71-3-3-3"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,460.40421,-47.456369)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 500,192.36218 40,0"
|
||||
id="path6806"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 500,382.36218 40,0"
|
||||
id="path6808"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 500,572.36218 40,0"
|
||||
id="path6810"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 500,762.36218 40,0"
|
||||
id="path6812"
|
||||
inkscape:connector-curvature="0" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="100"
|
||||
y="176.36218"
|
||||
id="text6814"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6816"
|
||||
x="100"
|
||||
y="176.36218">A0</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="204"
|
||||
y="176.36218"
|
||||
id="text6818"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6820"
|
||||
x="204"
|
||||
y="176.36218">A0_bar</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="330"
|
||||
y="175.36218"
|
||||
id="text6822"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6824"
|
||||
x="330"
|
||||
y="175.36218">A1</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="434"
|
||||
y="175.36218"
|
||||
id="text6826"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6828"
|
||||
x="434"
|
||||
y="175.36218">A1_bar</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="566"
|
||||
y="179.36218"
|
||||
id="text6830"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6832"
|
||||
x="566"
|
||||
y="179.36218">PCLK</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="521"
|
||||
y="378.36218"
|
||||
id="text6834"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6836"
|
||||
x="521"
|
||||
y="378.36218"
|
||||
style="font-size:10px">VDD</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="527.14062"
|
||||
y="203.0072"
|
||||
id="text6834-5"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6836-3"
|
||||
x="527.14062"
|
||||
y="203.0072"
|
||||
style="font-size:10px">VDD</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="522.14062"
|
||||
y="568.0072"
|
||||
id="text6834-6"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6836-7"
|
||||
x="522.14062"
|
||||
y="568.0072"
|
||||
style="font-size:10px">VDD</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="521.14062"
|
||||
y="757.0072"
|
||||
id="text6834-2"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6836-8"
|
||||
x="521.14062"
|
||||
y="757.0072"
|
||||
style="font-size:10px">VDD</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="690"
|
||||
y="302.36218"
|
||||
id="text6877"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6879"
|
||||
x="690"
|
||||
y="302.36218">WL3</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="690"
|
||||
y="492.36218"
|
||||
id="text6881"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6883"
|
||||
x="690"
|
||||
y="492.36218">WL2</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="690"
|
||||
y="682.36218"
|
||||
id="text6885"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6887"
|
||||
x="690"
|
||||
y="682.36218">WL1</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="690"
|
||||
y="872.36218"
|
||||
id="text6889"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6891"
|
||||
x="690"
|
||||
y="872.36218">WL0</tspan></text>
|
||||
<g
|
||||
id="g6987"
|
||||
transform="translate(-20,2.6171874e-6)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6893-34"
|
||||
d="m 650,862.36218 0,40 30,-20 z"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
transform="translate(340,505)"
|
||||
d="m 350,377.36218 c 0,2.76143 -2.23858,5 -5,5 -2.76142,0 -5,-2.23857 -5,-5 0,-2.76142 2.23858,-5 5,-5 2.76142,0 5,2.23858 5,5 z"
|
||||
sodipodi:ry="5"
|
||||
sodipodi:rx="5"
|
||||
sodipodi:cy="377.36218"
|
||||
sodipodi:cx="345"
|
||||
id="path6744-2-5"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.62600005;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
</g>
|
||||
<g
|
||||
id="g6987-8"
|
||||
transform="translate(-20,-190)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6893-34-6"
|
||||
d="m 650,862.36218 0,40 30,-20 z"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
transform="translate(340,505)"
|
||||
d="m 350,377.36218 a 5,5 0 1 1 -10,0 5,5 0 1 1 10,0 z"
|
||||
sodipodi:ry="5"
|
||||
sodipodi:rx="5"
|
||||
sodipodi:cy="377.36218"
|
||||
sodipodi:cx="345"
|
||||
id="path6744-2-5-5"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.62600005;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
</g>
|
||||
<g
|
||||
id="g6987-1"
|
||||
transform="translate(-20,-380)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6893-34-7"
|
||||
d="m 650,862.36218 0,40 30,-20 z"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
transform="translate(340,505)"
|
||||
d="m 350,377.36218 c 0,2.76143 -2.23858,5 -5,5 -2.76142,0 -5,-2.23857 -5,-5 0,-2.76142 2.23858,-5 5,-5 2.76142,0 5,2.23858 5,5 z"
|
||||
sodipodi:ry="5"
|
||||
sodipodi:rx="5"
|
||||
sodipodi:cy="377.36218"
|
||||
sodipodi:cx="345"
|
||||
id="path6744-2-5-4"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.62600005;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
</g>
|
||||
<g
|
||||
id="g6987-6"
|
||||
transform="translate(-20,-570)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6893-34-72"
|
||||
d="m 650,862.36218 0,40 30,-20 z"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
transform="translate(340,505)"
|
||||
d="m 350,377.36218 a 5,5 0 1 1 -10,0 5,5 0 1 1 10,0 z"
|
||||
sodipodi:ry="5"
|
||||
sodipodi:rx="5"
|
||||
sodipodi:cy="377.36218"
|
||||
sodipodi:cx="345"
|
||||
id="path6744-2-5-2"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.62600005;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 670,312.36218 50,0"
|
||||
id="path7037"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 670,502.36218 50,0"
|
||||
id="path7039"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 670,692.36218 50,0"
|
||||
id="path7041"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 670,882.36218 50,0"
|
||||
id="path7043"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 41 KiB |
|
After Width: | Height: | Size: 43 KiB |
|
|
@ -0,0 +1,311 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="744.09448819"
|
||||
height="1052.3622047"
|
||||
id="svg3222"
|
||||
version="1.1"
|
||||
inkscape:version="0.92.2 5c3e80d, 2017-08-06"
|
||||
sodipodi:docname="precharge_schem.svg">
|
||||
<defs
|
||||
id="defs3224" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1"
|
||||
inkscape:cx="161.5"
|
||||
inkscape:cy="520"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="true"
|
||||
inkscape:window-width="1280"
|
||||
inkscape:window-height="752"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid3230" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata3227">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<g
|
||||
id="g4222"
|
||||
transform="matrix(0,1,-1,0,482.36218,172.36218)">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-5"
|
||||
d="m 110,292.36218 40,0 0,-30 50,0 0,30 40,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-6"
|
||||
d="m 150.47364,257.36218 49.52636,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3414"
|
||||
d="m 147,262.36218 55,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,-1,1,0,67.63782,522.36218)"
|
||||
id="g4222-5">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-5-8"
|
||||
d="m 110,292.36218 40,0 0,-30 50,0 0,30 40,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-6-8"
|
||||
d="m 150.47364,257.36218 49.52636,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3414-9"
|
||||
d="m 147,262.36218 55,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
transform="translate(100,190)"
|
||||
id="g4222-9">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5141-5-1"
|
||||
d="m 110,292.36218 40,0 0,-30 50,0 0,30 40,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5145-6-1"
|
||||
d="m 150.47364,257.36218 49.52636,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3414-8"
|
||||
d="m 147,262.36218 55,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 190,412.36218 0,70 20,0"
|
||||
id="path4473"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 360,412.36218 0,70 -20,0"
|
||||
id="path4475"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 360,282.36218 0,-20 -170,0 0,20"
|
||||
id="path4477"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 360,482.36218 0,80"
|
||||
id="path4479"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 190,482.36218 0,80"
|
||||
id="path4481"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 280,262.36218 0,-40 30,0 -60,0"
|
||||
id="path4483"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.62600005;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path6744"
|
||||
sodipodi:cx="345"
|
||||
sodipodi:cy="377.36218"
|
||||
sodipodi:rx="5"
|
||||
sodipodi:ry="5"
|
||||
d="m 350,377.36218 a 5,5 0 1 1 -10,0 5,5 0 1 1 10,0 z"
|
||||
transform="translate(-114,-31)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.62600005;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path6744-2"
|
||||
sodipodi:cx="345"
|
||||
sodipodi:cy="377.36218"
|
||||
sodipodi:rx="5"
|
||||
sodipodi:ry="5"
|
||||
d="m 350,377.36218 a 5,5 0 1 1 -10,0 5,5 0 1 1 10,0 z"
|
||||
transform="translate(-26,-31)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.62600005;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path6744-8"
|
||||
sodipodi:cx="345"
|
||||
sodipodi:cy="377.36218"
|
||||
sodipodi:rx="5"
|
||||
sodipodi:ry="5"
|
||||
d="m 350,377.36218 a 5,5 0 1 1 -10,0 5,5 0 1 1 10,0 z"
|
||||
transform="translate(-69,64)" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
x="184"
|
||||
y="577.36218"
|
||||
id="text4517"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4519"
|
||||
x="184"
|
||||
y="577.36218"
|
||||
style="font-size:16px;line-height:1.25;font-family:sans-serif">BL</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
x="336"
|
||||
y="577.36218"
|
||||
id="text4521"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4523"
|
||||
x="336"
|
||||
y="577.36218"
|
||||
style="font-size:16px;line-height:1.25;font-family:sans-serif">BL_bar</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
x="287"
|
||||
y="217.36218"
|
||||
id="text4525"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4527"
|
||||
x="287"
|
||||
y="217.36218"
|
||||
style="font-size:16px;line-height:1.25;font-family:sans-serif">VDD</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 237,346.36218 77,0"
|
||||
id="path4529"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-71"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,145.40421,49.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-71-3"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,230.40421,184.54363)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-71-1"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,149.40421,-36.456369)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path7117-9-71-31"
|
||||
sodipodi:cx="108"
|
||||
sodipodi:cy="307.86218"
|
||||
sodipodi:rx="2"
|
||||
sodipodi:ry="2.5"
|
||||
d="m 110,307.86218 a 2,2.5 0 1 1 -4,0 2,2.5 0 1 1 4,0 z"
|
||||
transform="matrix(1.2092203,0,0,0.96737621,59.404208,183.54363)" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
x="271"
|
||||
y="334.36218"
|
||||
id="text4791"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4793"
|
||||
x="271"
|
||||
y="334.36218"
|
||||
style="font-size:16px;line-height:1.25;font-family:sans-serif">CLK</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
x="191"
|
||||
y="351.36218"
|
||||
id="text4795"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4797"
|
||||
x="191"
|
||||
y="351.36218"
|
||||
style="font-size:14px;line-height:1.25;font-family:sans-serif">M1</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
x="341"
|
||||
y="351.36218"
|
||||
id="text4799"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4801"
|
||||
x="341"
|
||||
y="351.36218"
|
||||
style="font-size:14px;line-height:1.25;font-family:sans-serif">M2</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
x="265"
|
||||
y="472.36218"
|
||||
id="text4803"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4805"
|
||||
x="265"
|
||||
y="472.36218"
|
||||
style="font-size:14px;line-height:1.25;font-family:sans-serif">M3</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2.01133299;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 276,435.35094 0,-87.98876"
|
||||
id="path5336"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 400,572.36218 0,20 -250,0 0,-400 250,0 z"
|
||||
id="path7280"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 108 KiB |
|
|
@ -0,0 +1,550 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="744.09448819"
|
||||
height="1052.3622047"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.48.3.1 r9886"
|
||||
sodipodi:docname="sense_amp.svg">
|
||||
<defs
|
||||
id="defs4" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1"
|
||||
inkscape:cx="199"
|
||||
inkscape:cy="520"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="true"
|
||||
inkscape:window-width="1855"
|
||||
inkscape:window-height="1056"
|
||||
inkscape:window-x="65"
|
||||
inkscape:window-y="24"
|
||||
inkscape:window-maximized="1">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid2989" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<g
|
||||
id="g3496"
|
||||
transform="translate(-148.99875,80.014073)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,240,223.19311)"
|
||||
id="g3011">
|
||||
<path
|
||||
id="path3013"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 31.199,119.324 29.539,0 0,-14.66 36.922,0 0,14.66 29.539,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,240,223.19311)"
|
||||
id="g3015">
|
||||
<path
|
||||
id="path3017"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 61.09,100.621 36.57,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,240,223.19311)"
|
||||
id="g3019">
|
||||
<path
|
||||
id="path3021"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 58.523,104.664 40.614,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g3496-2"
|
||||
transform="matrix(0,-1,1,0,-62.34811,791.36093)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,240,223.19311)"
|
||||
id="g3011-2">
|
||||
<path
|
||||
id="path3013-5"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 31.199,119.324 29.539,0 0,-14.66 36.922,0 0,14.66 29.539,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,240,223.19311)"
|
||||
id="g3015-0">
|
||||
<path
|
||||
id="path3017-5"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 61.09,100.621 36.57,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,240,223.19311)"
|
||||
id="g3019-3">
|
||||
<path
|
||||
id="path3021-5"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 58.523,104.664 40.614,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g3496-3"
|
||||
transform="matrix(0,1,-1,0,802.34811,113.36343)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,240,223.19311)"
|
||||
id="g3011-6">
|
||||
<path
|
||||
id="path3013-6"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 31.199,119.324 29.539,0 0,-14.66 36.922,0 0,14.66 29.539,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,240,223.19311)"
|
||||
id="g3015-2">
|
||||
<path
|
||||
id="path3017-1"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 61.09,100.621 36.57,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,240,223.19311)"
|
||||
id="g3019-35">
|
||||
<path
|
||||
id="path3021-51"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 58.523,104.664 40.614,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g3496-7"
|
||||
transform="translate(211.00125,80.014073)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,240,223.19311)"
|
||||
id="g3011-9">
|
||||
<path
|
||||
id="path3013-2"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 31.199,119.324 29.539,0 0,-14.66 36.922,0 0,14.66 29.539,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,240,223.19311)"
|
||||
id="g3015-8">
|
||||
<path
|
||||
id="path3017-9"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 61.09,100.621 36.57,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,240,223.19311)"
|
||||
id="g3019-4">
|
||||
<path
|
||||
id="path3021-9"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 58.523,104.664 40.614,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g3496-8"
|
||||
transform="matrix(0,-1,1,0,-2.34811,920.37376)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,240,223.19311)"
|
||||
id="g3011-0">
|
||||
<path
|
||||
id="path3013-66"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 31.199,119.324 29.539,0 0,-14.66 36.922,0 0,14.66 29.539,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,240,223.19311)"
|
||||
id="g3015-3">
|
||||
<path
|
||||
id="path3017-52"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 61.09,100.621 36.57,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,240,223.19311)"
|
||||
id="g3019-1">
|
||||
<path
|
||||
id="path3021-6"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 58.523,104.664 40.614,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g3630"
|
||||
transform="matrix(0,-1,1,0,-332.3481,1091.3609)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,370,363.1931)"
|
||||
id="g3035">
|
||||
<path
|
||||
id="path3037"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 31.199,271.324 -16,0 0,-16 0,32"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,370,363.1931)"
|
||||
id="g3039">
|
||||
<path
|
||||
id="path3041"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 7.199,263.324 0,16"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,370,363.1931)"
|
||||
id="g3043">
|
||||
<path
|
||||
id="path3045"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 0.801,266.523 0,9.602"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g3689"
|
||||
transform="translate(1.00125,0.01406962)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,-200,23.193113)"
|
||||
id="g3223">
|
||||
<path
|
||||
id="path3225"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.30079997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 434.398,221.727 c 0,2.207 -1.789,4 -4,4 -2.207,0 -4,-1.793 -4,-4 0,-2.211 1.793,-4 4,-4 2.211,0 4,1.789 4,4 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3227">
|
||||
<path
|
||||
id="path3229"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 175.324,-407.199 29.539,0 0,-14.66 36.922,0 0,14.66 29.539,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3231">
|
||||
<path
|
||||
id="path3233"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 205.215,-425.902 36.57,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3235">
|
||||
<path
|
||||
id="path3237"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 202.648,-421.859 40.614,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g3689-1"
|
||||
transform="matrix(-1,0,0,1,738.99875,0.01406962)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,-200,23.193113)"
|
||||
id="g3223-4">
|
||||
<path
|
||||
id="path3225-0"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.30079997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 434.398,221.727 c 0,2.207 -1.789,4 -4,4 -2.207,0 -4,-1.793 -4,-4 0,-2.211 1.793,-4 4,-4 2.211,0 4,1.789 4,4 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3227-8">
|
||||
<path
|
||||
id="path3229-5"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 175.324,-407.199 29.539,0 0,-14.66 36.922,0 0,14.66 29.539,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3231-3">
|
||||
<path
|
||||
id="path3233-9"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 205.215,-425.902 36.57,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3235-8">
|
||||
<path
|
||||
id="path3237-5"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 202.648,-421.859 40.614,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 310,362.36218 0,30"
|
||||
id="path3810"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 430,362.36218 0,30"
|
||||
id="path4580"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 310,242.36218 0,-20 120,0 0,20"
|
||||
id="path4582"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 370,222.36218 0,-40 30,0 -60,0"
|
||||
id="path4584"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 310,512.36218 120,0 -60,0 0,10"
|
||||
id="path4588"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2.23606801;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 370,632.36218 0,50"
|
||||
id="path4590"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 130,452.36218 -30,0 0,-120 0,220 0,10"
|
||||
id="path4592"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 610,452.36218 30,0 0,-120 0,230"
|
||||
id="path4594"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 190,432.36218 0,-20 0,-10"
|
||||
id="path4598"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 550,432.36218 0,-30"
|
||||
id="path4600"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 490,452.36218 -40,0"
|
||||
id="path4602"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 250,452.36218 40,0"
|
||||
id="path4604"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 350,582.36218 -30,0"
|
||||
id="path4606"
|
||||
inkscape:connector-curvature="0" />
|
||||
<g
|
||||
id="g3319-2"
|
||||
transform="matrix(1.25,0,0,1,-140,173.20718)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 409.934,339.155 c 0,1.338 -0.864,2.417 -1.934,2.417 -1.07,0 -1.934,-1.079 -1.934,-2.417 0,-1.333 0.864,-2.417 1.934,-2.417 1.07,0 1.934,1.084 1.934,2.417 z"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.93475199;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path3321-6" />
|
||||
</g>
|
||||
<g
|
||||
id="g3319-9"
|
||||
transform="matrix(1.25,0,0,1,-410,113.20718)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 409.934,339.155 c 0,1.338 -0.864,2.417 -1.934,2.417 -1.07,0 -1.934,-1.079 -1.934,-2.417 0,-1.333 0.864,-2.417 1.934,-2.417 1.07,0 1.934,1.084 1.934,2.417 z"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.93475199;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path3321-1" />
|
||||
</g>
|
||||
<g
|
||||
id="g3319-3"
|
||||
transform="matrix(1.25,0,0,1,129,112.20718)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 409.934,339.155 c 0,1.338 -0.864,2.417 -1.934,2.417 -1.07,0 -1.934,-1.079 -1.934,-2.417 0,-1.333 0.864,-2.417 1.934,-2.417 1.07,0 1.934,1.084 1.934,2.417 z"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.93475199;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path3321-5" />
|
||||
</g>
|
||||
<g
|
||||
id="g3319"
|
||||
transform="matrix(1.25,0,0,1,-139,-116.79282)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 409.934,339.155 c 0,1.338 -0.864,2.417 -1.934,2.417 -1.07,0 -1.934,-1.079 -1.934,-2.417 0,-1.333 0.864,-2.417 1.934,-2.417 1.07,0 1.934,1.084 1.934,2.417 z"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.93475199;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path3321" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 370,302.36218 0,70 -60,0"
|
||||
id="path4656"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 430,372.36218 80,0 0,-70 0,0 -10,10 10,-10 10,10"
|
||||
id="path4658"
|
||||
inkscape:connector-curvature="0" />
|
||||
<g
|
||||
id="g3319-4"
|
||||
transform="matrix(1.25,0,0,1,-201,33.207183)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 409.934,339.155 c 0,1.338 -0.864,2.417 -1.934,2.417 -1.07,0 -1.934,-1.079 -1.934,-2.417 0,-1.333 0.864,-2.417 1.934,-2.417 1.07,0 1.934,1.084 1.934,2.417 z"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.93475199;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path3321-58" />
|
||||
</g>
|
||||
<g
|
||||
id="g3319-91"
|
||||
transform="matrix(1.25,0,0,1,-79,33.207183)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 409.934,339.155 c 0,1.338 -0.864,2.417 -1.934,2.417 -1.07,0 -1.934,-1.079 -1.934,-2.417 0,-1.333 0.864,-2.417 1.934,-2.417 1.07,0 1.934,1.084 1.934,2.417 z"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.93475199;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path3321-4" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 345,300.36218 50,0"
|
||||
id="path4680"
|
||||
inkscape:connector-curvature="0" />
|
||||
<g
|
||||
id="g3319-1"
|
||||
transform="matrix(1.25,0,0,1,-140,-37.792817)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 409.934,339.155 c 0,1.338 -0.864,2.417 -1.934,2.417 -1.07,0 -1.934,-1.079 -1.934,-2.417 0,-1.333 0.864,-2.417 1.934,-2.417 1.07,0 1.934,1.084 1.934,2.417 z"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.93475199;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path3321-42" />
|
||||
</g>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="390"
|
||||
y="172.36218"
|
||||
id="text4691"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4693"
|
||||
x="390"
|
||||
y="172.36218">VDD</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="488"
|
||||
y="297.36218"
|
||||
id="text4695"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4697"
|
||||
x="488"
|
||||
y="297.36218">DATA</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="615"
|
||||
y="577.36218"
|
||||
id="text4699"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4701"
|
||||
x="615"
|
||||
y="577.36218">BL_bar</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="89"
|
||||
y="580.36218"
|
||||
id="text4703"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4705"
|
||||
x="89"
|
||||
y="580.36218">BL</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="295"
|
||||
y="588.36218"
|
||||
id="text4707"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4709"
|
||||
x="295"
|
||||
y="588.36218">EN</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="540"
|
||||
y="398.36218"
|
||||
id="text4711"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4713"
|
||||
x="540"
|
||||
y="398.36218">EN</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="180"
|
||||
y="399.36218"
|
||||
id="text4715"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4717"
|
||||
x="180"
|
||||
y="399.36218">EN</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0"
|
||||
d="m 680,572.36218 0,-440 -620,0 0,610 620,0 z"
|
||||
id="path4738"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 24 KiB |
|
|
@ -0,0 +1,679 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="744.09448819"
|
||||
height="1052.3622047"
|
||||
id="svg2"
|
||||
sodipodi:version="0.32"
|
||||
inkscape:version="0.47 r22583"
|
||||
sodipodi:docname="sram_architecture.svg"
|
||||
inkscape:output_extension="org.inkscape.output.svg.inkscape"
|
||||
version="1.1">
|
||||
<defs
|
||||
id="defs4">
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
id="linearGradient4867">
|
||||
<stop
|
||||
style="stop-color:#cccccc;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop4869" />
|
||||
<stop
|
||||
style="stop-color:#cccccc;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop4871" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
id="linearGradient3807">
|
||||
<stop
|
||||
style="stop-color:#cccccc;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop3809" />
|
||||
<stop
|
||||
style="stop-color:#cccccc;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop3811" />
|
||||
</linearGradient>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Lstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="Arrow1Lstart"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
id="path3831"
|
||||
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
|
||||
transform="scale(0.8) translate(12.5,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Lend"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="Arrow1Lend"
|
||||
style="overflow:visible;">
|
||||
<path
|
||||
id="path3834"
|
||||
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
|
||||
transform="scale(0.8) rotate(180) translate(12.5,0)" />
|
||||
</marker>
|
||||
<inkscape:perspective
|
||||
sodipodi:type="inkscape:persp3d"
|
||||
inkscape:vp_x="0 : 526.18109 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_z="744.09448 : 526.18109 : 1"
|
||||
inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
|
||||
id="perspective10" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient3807"
|
||||
id="linearGradient3813"
|
||||
x1="199.69901"
|
||||
y1="218.7489"
|
||||
x2="199.43983"
|
||||
y2="217.65218"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(0,116)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient3807"
|
||||
id="linearGradient3819"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x1="199.69901"
|
||||
y1="218.7489"
|
||||
x2="199.43983"
|
||||
y2="217.65218"
|
||||
gradientTransform="translate(0,-691.72632)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient4867"
|
||||
id="linearGradient4873"
|
||||
x1="394.20999"
|
||||
y1="489.94479"
|
||||
x2="393.62537"
|
||||
y2="490.3624"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(0,100)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient4867"
|
||||
id="linearGradient4879"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x1="394.20999"
|
||||
y1="489.94479"
|
||||
x2="393.62537"
|
||||
y2="490.3624"
|
||||
gradientTransform="translate(-1019.8693,100)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient4867"
|
||||
id="linearGradient4885"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x1="394.20999"
|
||||
y1="489.94479"
|
||||
x2="393.62537"
|
||||
y2="490.3624"
|
||||
gradientTransform="translate(0,100)" />
|
||||
<inkscape:perspective
|
||||
id="perspective11695"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
gridtolerance="10000"
|
||||
guidetolerance="10"
|
||||
objecttolerance="10"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.59865321"
|
||||
inkscape:cx="372.04724"
|
||||
inkscape:cy="526.18109"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1440"
|
||||
inkscape:window-height="878"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
showguides="true"
|
||||
inkscape:guide-bbox="true"
|
||||
inkscape:window-maximized="0" />
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<rect
|
||||
style="fill:url(#linearGradient3813);fill-opacity:1"
|
||||
id="rect2383"
|
||||
width="165.71428"
|
||||
height="94.646927"
|
||||
x="133.76231"
|
||||
y="309.66827" />
|
||||
<rect
|
||||
style="fill:#cccccc"
|
||||
id="rect2385"
|
||||
width="208.57143"
|
||||
height="188.57143"
|
||||
x="406.00479"
|
||||
y="309.50024" />
|
||||
<rect
|
||||
style="fill:#cccccc"
|
||||
id="rect2387"
|
||||
width="208.38266"
|
||||
height="62.857143"
|
||||
x="405.96155"
|
||||
y="70.725639" />
|
||||
<rect
|
||||
style="fill:url(#linearGradient4873);fill-opacity:1"
|
||||
id="rect2389"
|
||||
width="138.24103"
|
||||
height="54.285713"
|
||||
x="371.81412"
|
||||
y="558.85974" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:23.82649612px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="452.81046"
|
||||
y="105.8875"
|
||||
id="text2399"
|
||||
transform="scale(0.9927707,1.0072819)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2401"
|
||||
x="452.81046"
|
||||
y="105.8875">Precharge</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="478.94641"
|
||||
y="410.42963"
|
||||
id="text2403"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2405"
|
||||
x="478.94641"
|
||||
y="410.42963">Array</tspan></text>
|
||||
<rect
|
||||
style="fill:#cccccc"
|
||||
id="rect2429"
|
||||
width="277.14285"
|
||||
height="54.285713"
|
||||
x="371.49484"
|
||||
y="672.11481" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="439.30377"
|
||||
y="708.78662"
|
||||
id="text2437"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2439"
|
||||
x="439.30377"
|
||||
y="708.78662">Sense Amp</tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:none;stroke-opacity:1"
|
||||
d="M 510.87523,794.2793 L 510.29735,726.40052"
|
||||
id="path2453"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-end="#rect2429" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.00533342px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Lend);stroke-opacity:1"
|
||||
d="M 510.37148,613.14813 L 510.36003,672.35929"
|
||||
id="path2455"
|
||||
inkscape:connector-type="polyline" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.00327015px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Lend);stroke-opacity:1"
|
||||
d="M 297.90384,403.80303 L 406.00315,403.80054"
|
||||
id="path2469"
|
||||
inkscape:connector-type="polyline" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="237.36064"
|
||||
y="462.23129"
|
||||
id="text2497"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2499"
|
||||
x="237.36064"
|
||||
y="462.23129" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
|
||||
x="25.282948"
|
||||
y="393.58963"
|
||||
id="text2531"
|
||||
transform="matrix(0.99999959,-9.0349959e-4,9.0349959e-4,0.99999959,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
x="25.282948"
|
||||
y="393.58963"
|
||||
id="tspan2535">Address</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="538.99377"
|
||||
y="516.83362"
|
||||
id="text2832"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2834"
|
||||
x="538.99377"
|
||||
y="516.83362"> Bit Lines</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="538.99377"
|
||||
y="531.83362"
|
||||
id="tspan2938">BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2950">0</tspan>,BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2948">0</tspan>, BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2946">1</tspan>, BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2944">1</tspan>, ... BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2942">j</tspan> BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2940">j </tspan></tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 364.52511,382.19547 L 336.74637,425.84777"
|
||||
id="path2836" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="280.00189"
|
||||
y="-339.76331"
|
||||
id="text2838"
|
||||
transform="matrix(3.852356e-3,0.9999926,-0.9999926,3.852356e-3,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2840"
|
||||
x="280.00189"
|
||||
y="-339.76331"> Word Lines</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="280.00189"
|
||||
y="-324.76331"
|
||||
id="tspan2930"> W<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2936">0</tspan>, W<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2934">1</tspan>, ..., W<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2932">log(n)</tspan></tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);stroke-opacity:1"
|
||||
d="M 371.888,589.5005 L 309.17124,589.84843"
|
||||
id="path2842"
|
||||
inkscape:connector-type="polyline" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);stroke-opacity:1"
|
||||
d="M 370.94208,702.41208 L 308.22531,702.76001"
|
||||
id="path2854"
|
||||
inkscape:connector-type="polyline" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 491.10498,654.25031 L 526.70018,628.88523"
|
||||
id="path2870" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
|
||||
x="52.220901"
|
||||
y="420.68866"
|
||||
id="text2888"
|
||||
transform="matrix(0.99994011,0.01094382,-0.01094382,0.99994011,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2890"
|
||||
x="52.220901"
|
||||
y="420.68866">A<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2892">0</tspan>, A<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2896">1</tspan>, ... A<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2898">n</tspan></tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="552.88428"
|
||||
y="-299.25662"
|
||||
id="text2902"
|
||||
transform="matrix(-1.094382e-2,0.9999401,-0.9999401,-1.094382e-2,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2904"
|
||||
x="552.88428"
|
||||
y="-299.25662">A<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2906">0</tspan>, A<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2908">1</tspan>, ... Ak<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2910" /></tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:37.14432144px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="784.93219"
|
||||
y="-237.72998"
|
||||
id="text2912"
|
||||
transform="matrix(2.6675397e-2,0.8871754,-1.1264084,2.54215e-2,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2914"
|
||||
x="784.93219"
|
||||
y="-237.72998"
|
||||
style="font-size:18.57216072px">S<tspan
|
||||
style="font-size:9.28608036px"
|
||||
id="tspan2916">clk</tspan></tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 491.47553,766.55443 L 530.65923,741.92468"
|
||||
id="path2922" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="727.75165"
|
||||
y="543.27771"
|
||||
id="text2970"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2972"
|
||||
x="727.75165"
|
||||
y="543.27771" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="537.27209"
|
||||
y="156.72511"
|
||||
id="text2992"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2994"
|
||||
x="537.27209"
|
||||
y="156.72511"> Bit Lines</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="537.27209"
|
||||
y="171.72511"
|
||||
id="tspan2996">BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan2998">0</tspan>,BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3000">0</tspan>, BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3002">1</tspan>, BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3004">1</tspan>, ... BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3006">j</tspan> BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3008">j </tspan></tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="523.96411"
|
||||
y="638.21588"
|
||||
id="text3010"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3012"
|
||||
x="523.96411"
|
||||
y="638.21588"> Bit Lines</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="523.96411"
|
||||
y="653.21588"
|
||||
id="tspan3014">BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3016">0</tspan>,BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3018">0</tspan>, BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3020">1</tspan>, BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3022">1</tspan>, ... BL<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3024">j/2^k</tspan> BR<tspan
|
||||
style="font-size:6px"
|
||||
id="tspan3026">j/2^k </tspan></tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-mid:none;marker-end:none;marker-start:url(#Arrow1Lstart)"
|
||||
d="M 404.99504,103.56693 L 342.27828,103.91486"
|
||||
id="path3046"
|
||||
inkscape:connector-type="polyline" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="86.832726"
|
||||
y="-327.60617"
|
||||
id="text3052"
|
||||
transform="matrix(-1.094382e-2,0.9999401,-0.9999401,-1.094382e-2,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3054"
|
||||
x="86.832726"
|
||||
y="-327.60617">Pclk</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="86.832726"
|
||||
y="-312.60617"
|
||||
id="tspan3062" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="551.03613"
|
||||
y="753.10077"
|
||||
id="text3064"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3066"
|
||||
x="551.03613"
|
||||
y="753.10077"
|
||||
style="font-size:12px"> </tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="551.03613"
|
||||
y="768.10077"
|
||||
id="tspan3068"><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3111">D</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3074">0</tspan><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3115">, </tspan><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3109">D</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3072">1</tspan><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3113">, ...,</tspan><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3107"> D</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3070">j/2^k</tspan></tspan></text>
|
||||
<path
|
||||
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke-width:0.40000001000000002;stroke-miterlimit:18.10000038000000089;stroke-dasharray:none"
|
||||
id="path3309"
|
||||
d="M 75.196328,158.6717 C 80.758538,157.28869 86.44734,156.6028 92.133726,155.94035 C 107.05435,154.05138 121.8677,151.43215 136.75528,149.30749 C 147.64996,147.53122 158.58499,146.01225 169.47598,144.21603 C 171.5715,143.74706 173.73538,143.65255 175.84432,143.27807 C 176.90658,143.08945 177.95684,142.73177 179.00742,142.48204 C 180.58421,142.34805 181.98047,141.66528 183.53245,141.39396 L 172.37378,149.88252 C 170.88347,150.29297 169.41362,150.72728 167.88051,150.96244 C 164.844,151.6568 161.73546,151.85357 158.66031,152.32711 C 148.00248,153.81685 137.31827,155.11752 126.69325,156.8396 C 111.66369,159.01206 96.704443,161.62748 81.668664,163.7554 C 75.768122,164.62195 69.820463,165.47786 64.116915,167.27925 L 75.196328,158.6717 z" />
|
||||
<rect
|
||||
y="-498.05804"
|
||||
x="133.76231"
|
||||
height="94.646927"
|
||||
width="165.71428"
|
||||
id="rect3815"
|
||||
style="fill:url(#linearGradient3819);fill-opacity:1"
|
||||
transform="scale(1,-1)" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="170.85649"
|
||||
y="394.76114"
|
||||
id="text2393"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2395"
|
||||
x="170.85649"
|
||||
y="394.76114">Address </tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="170.85649"
|
||||
y="424.76114"
|
||||
id="tspan2397">Decoder</tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);stroke-opacity:1"
|
||||
d="M 133.5,403.36218 L 70.75,402.86218"
|
||||
id="path3823" />
|
||||
<rect
|
||||
y="558.85974"
|
||||
x="371.81412"
|
||||
height="54.285713"
|
||||
width="138.24103"
|
||||
id="rect4875"
|
||||
style="fill:url(#linearGradient4885);fill-opacity:1" />
|
||||
<rect
|
||||
style="fill:url(#linearGradient4879);fill-opacity:1"
|
||||
id="rect4877"
|
||||
width="138.24103"
|
||||
height="54.285713"
|
||||
x="-648.05518"
|
||||
y="558.85974"
|
||||
transform="scale(-1,1)" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="439.2803"
|
||||
y="595.7511"
|
||||
id="text2407"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2409"
|
||||
x="439.2803"
|
||||
y="595.7511">Column Mux</tspan></text>
|
||||
<path
|
||||
inkscape:connector-type="polyline"
|
||||
id="path4881"
|
||||
d="M 510.37147,497.86869 L 510.36004,557.47571"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.00782228px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Lend);stroke-opacity:1" />
|
||||
<path
|
||||
id="path4883"
|
||||
d="M 491.10498,538.25031 L 526.70018,512.88523"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<rect
|
||||
style="fill:#cccccc"
|
||||
id="rect2427"
|
||||
width="277.14285"
|
||||
height="54.285713"
|
||||
x="372.23978"
|
||||
y="190.47002" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="432.57791"
|
||||
y="225.61827"
|
||||
id="text2433"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2435"
|
||||
x="432.57791"
|
||||
y="225.61827">Write Driver</tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);stroke-opacity:1"
|
||||
d="M 371.40729,219.41404 L 308.69052,219.76197"
|
||||
id="path2848"
|
||||
inkscape:connector-type="polyline" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;stroke-opacity:1"
|
||||
d="M 340.99482,208.10497 C 327.752,230.80694 327.752,230.80694 327.752,230.80694"
|
||||
id="path2882" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="167.72096"
|
||||
y="-293.01819"
|
||||
id="text2884"
|
||||
transform="matrix(-2.8547241e-3,0.9999959,-0.9999959,-2.8547241e-3,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2886"
|
||||
x="167.72096"
|
||||
y="-293.01819">Enable, Data in</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:8px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
x="519.95123"
|
||||
y="268.63846"
|
||||
id="text3028"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3030"
|
||||
x="519.95123"
|
||||
y="268.63846"
|
||||
style="font-size:12px"> Bit Lines</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="519.95123"
|
||||
y="283.63846"
|
||||
id="tspan3084"><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3103">BL</tspan>0 ,<tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3101">BR</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3036">0</tspan>, <tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3099">BL</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3038">1</tspan>, <tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3097">BR</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3078">1</tspan>, ... <tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3095">BL</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3042">j/2^k</tspan><tspan
|
||||
style="font-size:12px"
|
||||
id="tspan3093"> BR</tspan><tspan
|
||||
style="font-size:8px"
|
||||
id="tspan3044">j /2^k</tspan></tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:none;marker-end:url(#Arrow1Lend)"
|
||||
d="M 510.33208,133.58278 L 510.65644,190.47002"
|
||||
id="path4910"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-start="#rect2387"
|
||||
inkscape:connection-end="#rect2427" />
|
||||
<path
|
||||
inkscape:connector-type="polyline"
|
||||
id="path6475"
|
||||
d="M 508.33374,244.83566 L 508.65589,308.42732"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.0536716px;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:url(#Arrow1Lend);stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 491.10498,280.25031 L 526.70018,254.88523"
|
||||
id="path6477" />
|
||||
<path
|
||||
id="path6479"
|
||||
d="M 491.10498,168.25031 L 526.70018,142.88523"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:24px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
|
||||
x="421.4057"
|
||||
y="772.73633"
|
||||
id="text2531-9"
|
||||
transform="matrix(0.99999959,-9.0349959e-4,9.0349959e-4,0.99999959,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
x="421.4057"
|
||||
y="772.73633"
|
||||
id="tspan2535-7">Data</tspan></text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 26 KiB |
|
|
@ -0,0 +1,717 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="1400"
|
||||
height="600"
|
||||
id="svg15111"
|
||||
version="1.1"
|
||||
inkscape:version="0.47 r22583"
|
||||
sodipodi:docname="sram_overview.eps">
|
||||
<defs
|
||||
id="defs15113">
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
id="path4426"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
id="path4429"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<inkscape:perspective
|
||||
sodipodi:type="inkscape:persp3d"
|
||||
inkscape:vp_x="0 : 300 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_z="800 : 300 : 1"
|
||||
inkscape:persp3d-origin="400 : 200 : 1"
|
||||
id="perspective15119" />
|
||||
<inkscape:perspective
|
||||
id="perspective15833"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective15833-1"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective15833-8"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective15833-4"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective15882"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective15882-4"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective15882-7"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective15924"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective15946"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective15968"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective15990"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16012"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-9"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
id="path4429-4"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<inkscape:perspective
|
||||
id="perspective16040"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16062"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16084"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16106"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16131"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16158"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-1"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
id="path4429-2"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<inkscape:perspective
|
||||
id="perspective16186"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16211"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16242"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16269"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16294"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16316"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16347"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16372"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-94"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
id="path4429-9"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<inkscape:perspective
|
||||
id="perspective16400"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16422"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16422-0"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16471"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16500"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16525"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16575"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16600"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective16614"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-97"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
id="path4429-5"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<inkscape:perspective
|
||||
id="perspective17030"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective5572"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
<inkscape:perspective
|
||||
id="perspective5597"
|
||||
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
|
||||
inkscape:vp_z="1 : 0.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_x="0 : 0.5 : 1"
|
||||
sodipodi:type="inkscape:persp3d" />
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.99333333"
|
||||
inkscape:cx="947.59955"
|
||||
inkscape:cy="300"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:document-units="px"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1329"
|
||||
inkscape:window-height="844"
|
||||
inkscape:window-x="20"
|
||||
inkscape:window-y="20"
|
||||
inkscape:window-maximized="0" />
|
||||
<metadata
|
||||
id="metadata15116">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
id="layer1"
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer">
|
||||
<rect
|
||||
style="fill:none;stroke:#000000;stroke-width:4;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
||||
id="rect15121"
|
||||
width="519.36816"
|
||||
height="303.93195"
|
||||
x="262.29578"
|
||||
y="64.980331" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 173.15436,64.429532 0,305.033558 -47.31544,-47.31544 0,-222.483218 47.31544,-35.2349 z"
|
||||
id="path15123" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
|
||||
d="m 80.536913,206.37584 45.302007,0"
|
||||
id="path15635" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 173.45039,90.900049 608.46835,0"
|
||||
id="path15823" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 173.45039,199.80261 608.46835,0"
|
||||
id="path15823-4" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 173.45039,308.70514 608.46835,0"
|
||||
id="path15823-8" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 173.45039,127.20093 608.46835,0"
|
||||
id="path15823-8-8" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 173.45039,345.00599 608.46835,0"
|
||||
id="path15823-8-9" />
|
||||
<rect
|
||||
style="fill:none;stroke:#000000;stroke-width:3;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
||||
id="rect15914-8"
|
||||
width="125.77853"
|
||||
height="23.09396"
|
||||
x="441.47318"
|
||||
y="451.54028" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 263.71178,386.53057 514.52275,0 -88.72094,45.39523 -354.68358,0 -71.11823,-45.39523 z"
|
||||
id="path15123-4"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<rect
|
||||
style="fill:none;stroke:#000000;stroke-width:4;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
||||
id="rect15914-88"
|
||||
width="520.47858"
|
||||
height="21.149712"
|
||||
x="259.22379"
|
||||
y="24.660044" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.94061279;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 275.80504,45.725931 0,340.520019"
|
||||
id="path15823-04" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.94061279;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 291.90036,45.255571 0,340.520019"
|
||||
id="path15823-04-0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.94553411;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 751.05521,44.49338 0,342.35862"
|
||||
id="path15823-04-5" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.94553411;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 767.14539,44.02048 0,342.35862"
|
||||
id="path15823-04-0-3" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.94061279;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 515.43792,43.943229 0,340.520021"
|
||||
id="path15823-04-8" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.94061279;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 531.53324,43.472879 0,340.520011"
|
||||
id="path15823-04-0-5" />
|
||||
<rect
|
||||
style="fill:none;stroke:#000000;stroke-width:3.10895896;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
||||
id="rect16148"
|
||||
width="26.065538"
|
||||
height="24.052114"
|
||||
x="511.45044"
|
||||
y="188.30951" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 455.27666,434.4221 0,19.10164"
|
||||
id="path15823-04-8-6" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 472.91124,434.39572 0,19.10164"
|
||||
id="path15823-04-0-5-7" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 539.84043,433.41539 0,19.10164"
|
||||
id="path15823-04-8-6-5" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 557.47501,433.38901 0,19.10164"
|
||||
id="path15823-04-0-5-7-5" />
|
||||
<rect
|
||||
style="fill:none;stroke:#000000;stroke-width:3;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
||||
id="rect16228"
|
||||
width="26.174496"
|
||||
height="305.03357"
|
||||
x="203.35571"
|
||||
y="63.422813" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:50px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="479.19464"
|
||||
y="42.281887"
|
||||
id="text16230"
|
||||
sodipodi:linespacing="100%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan16232"
|
||||
x="479.19464"
|
||||
y="42.281887"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans">Precharge</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:50px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="71.762146"
|
||||
y="70.878868"
|
||||
id="text16230-0"
|
||||
sodipodi:linespacing="100%"><tspan
|
||||
sodipodi:role="line"
|
||||
x="71.762146"
|
||||
y="70.878868"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
id="tspan16259">Decoder</tspan></text>
|
||||
<rect
|
||||
style="fill:none;stroke:#000000;stroke-width:3;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
||||
id="rect15914-8-7"
|
||||
width="125.77853"
|
||||
height="23.09396"
|
||||
x="440.46643"
|
||||
y="493.82217" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 453.26324,475.19391 0,19.10164"
|
||||
id="path15823-04-8-6-7" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 470.89782,475.16753 0,19.10164"
|
||||
id="path15823-04-0-5-7-9" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 537.82701,474.1872 0,19.10164"
|
||||
id="path15823-04-8-6-5-7" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 555.46159,474.16082 0,19.10164"
|
||||
id="path15823-04-0-5-7-5-5" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:50px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="450.28564"
|
||||
y="414.16745"
|
||||
id="text16230-2-3"
|
||||
sodipodi:linespacing="100%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan16232-0-9"
|
||||
x="450.28564"
|
||||
y="414.16745"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans">Column Mux</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
|
||||
d="m 251.4312,410.73825 45.30201,0"
|
||||
id="path15635-1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:50px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="169.25159"
|
||||
y="38.423615"
|
||||
id="text16230-0-9"
|
||||
sodipodi:linespacing="100%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan16232-5-8"
|
||||
x="169.25159"
|
||||
y="38.423615"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans">WL</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="169.25159"
|
||||
y="58.423615"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
id="tspan16259-3">Driver</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:50px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="5.1576228"
|
||||
y="205.53769"
|
||||
id="text16230-0-90"
|
||||
sodipodi:linespacing="100%"><tspan
|
||||
sodipodi:role="line"
|
||||
x="5.1576228"
|
||||
y="205.53769"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
id="tspan16259-7">Upper</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="5.1576228"
|
||||
y="225.53769"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
id="tspan16490">Address</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:50px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="167.97337"
|
||||
y="416.18088"
|
||||
id="text16230-0-90-6"
|
||||
sodipodi:linespacing="100%"><tspan
|
||||
sodipodi:role="line"
|
||||
x="167.97337"
|
||||
y="416.18088"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
id="tspan16259-7-8">Lower</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="167.97337"
|
||||
y="436.18088"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
id="tspan16488">Address</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:50px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="444.78488"
|
||||
y="469.53656"
|
||||
id="text16230-2-3-3"
|
||||
sodipodi:linespacing="100%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan16232-0-9-8"
|
||||
x="444.78488"
|
||||
y="469.53656"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans">Write Driver</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:50px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="445.72153"
|
||||
y="513.83191"
|
||||
id="text16230-2-3-3-6"
|
||||
sodipodi:linespacing="100%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan16232-0-9-8-1"
|
||||
x="445.72153"
|
||||
y="513.83191"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans">Sense Amp</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="M 851.56072,95.754712 538.23024,189.2374 536.69431,213.36198 851.0315,344.17817"
|
||||
id="path16542"
|
||||
sodipodi:nodetypes="cccc" />
|
||||
<rect
|
||||
style="fill:none;stroke:#000000;stroke-width:4;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
|
||||
id="rect16544"
|
||||
width="333.23553"
|
||||
height="248.6718"
|
||||
x="850.16071"
|
||||
y="96.133888" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:50px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="892.23199"
|
||||
y="81.952698"
|
||||
id="text16230-0-96"
|
||||
sodipodi:linespacing="100%"><tspan
|
||||
sodipodi:role="line"
|
||||
x="892.23199"
|
||||
y="81.952698"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
id="tspan16259-78">6T Cell</tspan></text>
|
||||
<image
|
||||
y="99.161064"
|
||||
x="855.36914"
|
||||
id="image16602"
|
||||
height="231.54362"
|
||||
width="322.81879"
|
||||
xlink:href="file:///Users/mrg/vlsi/proposals/nsfCRI10/figs/inkscape_pasted_image_20100722_082329.png" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Mstart);marker-end:url(#Arrow1Mend)"
|
||||
d="m 502.349,519.21644 0,45.302"
|
||||
id="path15635-5" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:50px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="451.86597"
|
||||
y="583.0545"
|
||||
id="text16230-0-90-2"
|
||||
sodipodi:linespacing="100%"><tspan
|
||||
sodipodi:role="line"
|
||||
x="451.86597"
|
||||
y="583.0545"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
id="tspan16490-9">Data In/Out</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.94061279;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 712.75772,45.411404 0,340.520026"
|
||||
id="path15823-04-8-5" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.94061279;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 728.85304,44.941054 0,340.520016"
|
||||
id="path15823-04-0-5-5" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.94061279;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 309.06643,47.424828 0,340.520022"
|
||||
id="path15823-04-8-5-4" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.94061279;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 325.16175,46.954478 0,340.520012"
|
||||
id="path15823-04-0-5-5-2" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 32 KiB |
|
|
@ -0,0 +1,641 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="1052.3622"
|
||||
height="744.09448"
|
||||
id="svg3956"
|
||||
version="1.1"
|
||||
inkscape:version="0.48.3.1 r9886"
|
||||
sodipodi:docname="timing_read.svg">
|
||||
<defs
|
||||
id="defs3958">
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="Arrow1Mstart"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
id="path4694"
|
||||
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt"
|
||||
transform="scale(0.4) translate(10,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="Arrow1Mend"
|
||||
style="overflow:visible;">
|
||||
<path
|
||||
id="path4697"
|
||||
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
|
||||
transform="scale(0.4) rotate(180) translate(10,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-5"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-5"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-6"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-6"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-7"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-7"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-8"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-0"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-3"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-8"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-5"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-3"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-3-5"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-8-3"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-5-2"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-3-8"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-54"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-70"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-9"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-9"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-2"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-0"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-51"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-8"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-33"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-1"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-90"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-7"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1"
|
||||
inkscape:cx="427.64919"
|
||||
inkscape:cy="216.91628"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1366"
|
||||
inkscape:window-height="744"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="24"
|
||||
inkscape:window-maximized="1">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid3964"
|
||||
empspacing="5"
|
||||
visible="true"
|
||||
enabled="true"
|
||||
snapvisiblegridlinesonly="true" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata3961">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(0,-308.2677)">
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 90,342.36218 0,0 0,0 100,0 10,50 100,0 10,-50 100,0 10,50 100,0 10,-50 100,0 10,50 90,0"
|
||||
id="path3966"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 90,194.09448 150,0 10,50 110,0 10,-50 90,0 10,50 100,0 10,-50 150,0"
|
||||
id="path4501"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)"
|
||||
sodipodi:nodetypes="cccccccccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 90,582.36218 150,0 10,50 110,0 10,-50 90,0 10,50 100,0 10,-50 150,0"
|
||||
id="path4501-4"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccc" />
|
||||
<g
|
||||
id="g4534">
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4521"
|
||||
d="m 140,354.09448 590,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4523"
|
||||
d="m 130,404.09448 10,-50"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4525"
|
||||
d="m 130,404.09448 -40,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
id="g4529"
|
||||
transform="translate(-20,2.4218748e-6)">
|
||||
<path
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4497"
|
||||
d="m 110,114.09448 150,0 10,50 210,0 10,-50 200,0 10,50 50,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:nodetypes="cccccccc" />
|
||||
<path
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4499"
|
||||
d="m 110,164.09448 150,0 10,-50 210,0 10,50 200,0 10,-50"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:nodetypes="ccccccc" />
|
||||
<path
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4527"
|
||||
d="m 700,114.09448 50,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:nodetypes="cc" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3, 3;stroke-dashoffset:0"
|
||||
d="m 305,322.36218 0,500"
|
||||
id="path4566"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3, 3;stroke-dashoffset:0"
|
||||
d="m 524,323.36218 0,500"
|
||||
id="path4566-2"
|
||||
inkscape:connector-curvature="0" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="50"
|
||||
y="372.36218"
|
||||
id="text4586"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4588"
|
||||
x="50"
|
||||
y="372.36218">CLK</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="50"
|
||||
y="452.36218"
|
||||
id="text4590"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4592"
|
||||
x="50"
|
||||
y="452.36218">ADDR</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="50"
|
||||
y="532.36218"
|
||||
id="text4594"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4596"
|
||||
x="50"
|
||||
y="532.36218">CSb</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="50"
|
||||
y="612.36218"
|
||||
id="text4598"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4600"
|
||||
x="50"
|
||||
y="612.36218">OEb</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="50"
|
||||
y="692.36218"
|
||||
id="text4602"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4604"
|
||||
x="50"
|
||||
y="692.36218">WEb</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="50"
|
||||
y="852.36218"
|
||||
id="text4606"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4608"
|
||||
x="50"
|
||||
y="852.36218">DATA OUT</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="340"
|
||||
y="452.36218"
|
||||
id="text4610"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4612"
|
||||
x="340"
|
||||
y="452.36218">A0</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="560"
|
||||
y="452.36218"
|
||||
id="text4614"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4616"
|
||||
x="560"
|
||||
y="452.36218">A1</tspan></text>
|
||||
<g
|
||||
id="g4620"
|
||||
transform="translate(-20,80.000002)">
|
||||
<g
|
||||
id="g4529-7"
|
||||
transform="translate(0,320)">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 110,114.09448 80,0 10,50 220,0 10,-50 210,0 10,50 100,0"
|
||||
id="path4497-7"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)" />
|
||||
<path
|
||||
sodipodi:nodetypes="ccccccc"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 110,164.09448 80,0 10,-50 220,0 10,50 210,0 10,-50"
|
||||
id="path4499-4"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 700,114.09448 30,0"
|
||||
id="path4527-5"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)" />
|
||||
</g>
|
||||
<path
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4618"
|
||||
d="m 650,434.09448 100,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:nodetypes="cc" />
|
||||
</g>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="490"
|
||||
y="852.36218"
|
||||
id="text4652"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4654"
|
||||
x="490"
|
||||
y="852.36218">D0</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="680"
|
||||
y="852.36218"
|
||||
id="text4656"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4658"
|
||||
x="680"
|
||||
y="852.36218">D1</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend);marker-start:url(#Arrow1Mstart);stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 250,214.09448 50,0"
|
||||
id="path4682"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Mstart);marker-end:url(#Arrow1Mend)"
|
||||
d="m 250,602.36218 50,0"
|
||||
id="path4682-2"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Mstart);marker-end:url(#Arrow1Mend)"
|
||||
d="m 310,602.36218 50,0"
|
||||
id="path4682-2-2"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Mstart);marker-end:url(#Arrow1Mend)"
|
||||
d="m 310,522.36218 50,0"
|
||||
id="path4682-2-3"
|
||||
inkscape:connector-curvature="0" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="260"
|
||||
y="592.36218"
|
||||
id="text5843"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5845"
|
||||
x="260"
|
||||
y="592.36218"
|
||||
style="font-size:12px">Setup</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="320"
|
||||
y="592.36218"
|
||||
id="text5847"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5849"
|
||||
x="320"
|
||||
y="592.36218"
|
||||
style="font-size:12px">Hold</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="260"
|
||||
y="512.36218"
|
||||
id="text5843-2"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5845-4"
|
||||
x="260"
|
||||
y="512.36218"
|
||||
style="font-size:12px">Setup</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="320"
|
||||
y="512.36218"
|
||||
id="text5847-7"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5849-7"
|
||||
x="320"
|
||||
y="512.36218"
|
||||
style="font-size:12px">Hold</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#Arrow1Mstart-2);marker-end:url(#Arrow1Mend-51)"
|
||||
d="m 310,852.36218 90,0"
|
||||
id="path6523"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="314"
|
||||
y="844.36218"
|
||||
id="text7149"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan7151"
|
||||
x="314"
|
||||
y="844.36218"
|
||||
style="font-size:14px">Read Delay</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="260"
|
||||
y="442.36218"
|
||||
id="text5843-2-3"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5845-4-5"
|
||||
x="260"
|
||||
y="442.36218"
|
||||
style="font-size:12px">Setup</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Mstart);marker-end:url(#Arrow1Mend)"
|
||||
d="m 250,452.36218 50,0"
|
||||
id="path4682-4"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 90,484.09448 220,0 10,-50 100,0 10,50 100,0 10,-50 100,0 10,50 80,0"
|
||||
id="path3080"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)"
|
||||
sodipodi:nodetypes="cccccccccc" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="50"
|
||||
y="772.36218"
|
||||
id="text3946"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3948"
|
||||
x="50"
|
||||
y="772.36218">SCLK</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3, 3;stroke-dashoffset:0"
|
||||
d="m 305,817.36218 0,80"
|
||||
id="path3969"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3, 3;stroke-dashoffset:0"
|
||||
d="m 524,817.36218 0,80"
|
||||
id="path4004"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 24 KiB |
|
|
@ -0,0 +1,853 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="1052.3622"
|
||||
height="744.09448"
|
||||
id="svg3956"
|
||||
version="1.1"
|
||||
inkscape:version="0.48.3.1 r9886"
|
||||
sodipodi:docname="timing_write.svg">
|
||||
<defs
|
||||
id="defs3958">
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="Arrow1Mstart"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
id="path4694"
|
||||
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt"
|
||||
transform="scale(0.4) translate(10,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="Arrow1Mend"
|
||||
style="overflow:visible;">
|
||||
<path
|
||||
id="path4697"
|
||||
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
|
||||
transform="scale(0.4) rotate(180) translate(10,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-5"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-5"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-6"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-6"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-7"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-7"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-8"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-0"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-3"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-8"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-5"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-3"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-3-5"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-8-3"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-5-2"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-3-8"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-54"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-70"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-9"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-9"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-2"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-0"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-51"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-8"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-33"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-1"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-90"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-7"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-4"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-703"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-84"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-70"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-32"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-73"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-4"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-76"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mstart-32-6"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4694-73-8"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(0.4,0,0,0.4,4,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Mend-4-3"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4697-76-9"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
|
||||
transform="matrix(-0.4,0,0,-0.4,-4,0)" />
|
||||
</marker>
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1"
|
||||
inkscape:cx="412.2745"
|
||||
inkscape:cy="329.51856"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1366"
|
||||
inkscape:window-height="744"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="24"
|
||||
inkscape:window-maximized="1">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid3964"
|
||||
empspacing="5"
|
||||
visible="true"
|
||||
enabled="true"
|
||||
snapvisiblegridlinesonly="true" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata3961">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(0,-308.2677)">
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 90,342.36218 0,0 0,0 100,0 10,50 100,0 10,-50 100,0 10,50 100,0 10,-50 100,0 10,50 90,0"
|
||||
id="path3966"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 90,194.09448 150,0 10,50 110,0 10,-50 90,0 10,50 100,0 10,-50 150,0"
|
||||
id="path4501"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)"
|
||||
sodipodi:nodetypes="cccccccccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 90,582.36218 150,0 10,50 110,0 10,-50 90,0 10,50 100,0 10,-50 150,0"
|
||||
id="path4501-4"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccc" />
|
||||
<g
|
||||
id="g4534">
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4521"
|
||||
d="m 140,354.09448 590,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4523"
|
||||
d="m 130,404.09448 10,-50"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4525"
|
||||
d="m 130,404.09448 -40,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
id="g4529"
|
||||
transform="translate(-20,2.4218748e-6)">
|
||||
<path
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4497"
|
||||
d="m 110,114.09448 150,0 10,50 210,0 10,-50 200,0 10,50 50,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:nodetypes="cccccccc" />
|
||||
<path
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4499"
|
||||
d="m 110,164.09448 150,0 10,-50 210,0 10,50 200,0 10,-50"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:nodetypes="ccccccc" />
|
||||
<path
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4527"
|
||||
d="m 700,114.09448 50,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:nodetypes="cc" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3, 3;stroke-dashoffset:0"
|
||||
d="m 305,322.36218 0,500"
|
||||
id="path4566"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3, 3;stroke-dashoffset:0"
|
||||
d="m 524,323.36218 0,500"
|
||||
id="path4566-2"
|
||||
inkscape:connector-curvature="0" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="50"
|
||||
y="372.36218"
|
||||
id="text4586"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4588"
|
||||
x="50"
|
||||
y="372.36218">CLK</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="50"
|
||||
y="452.36218"
|
||||
id="text4590"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4592"
|
||||
x="50"
|
||||
y="452.36218">ADDR</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="50"
|
||||
y="532.36218"
|
||||
id="text4594"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4596"
|
||||
x="50"
|
||||
y="532.36218">CSb</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="50"
|
||||
y="692.36218"
|
||||
id="text4598"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4600"
|
||||
x="50"
|
||||
y="692.36218">OEb</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="50"
|
||||
y="612.36218"
|
||||
id="text4602"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4604"
|
||||
x="50"
|
||||
y="612.36218">WEb</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="50"
|
||||
y="852.36218"
|
||||
id="text4606"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4608"
|
||||
x="50"
|
||||
y="852.36218">DATA IN</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="340"
|
||||
y="452.36218"
|
||||
id="text4610"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4612"
|
||||
x="340"
|
||||
y="452.36218">A0</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="560"
|
||||
y="452.36218"
|
||||
id="text4614"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4616"
|
||||
x="560"
|
||||
y="452.36218">A1</tspan></text>
|
||||
<g
|
||||
transform="translate(-180,400)"
|
||||
id="g4529-7">
|
||||
<path
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4497-7"
|
||||
d="m 270,164.09448 0,0 0,0 150,0 10,-50 120,0 10,50 80,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:nodetypes="cccccccc" />
|
||||
<path
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4499-4"
|
||||
d="m 270,114.09448 0,0 0,0 150,0 10,50 120,0 10,-50"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:nodetypes="ccccccc" />
|
||||
<path
|
||||
transform="translate(0,308.2677)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4527-5"
|
||||
d="m 700,114.09448 0,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:nodetypes="cc" />
|
||||
</g>
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 470,822.36218 0,0"
|
||||
id="path4618"
|
||||
inkscape:connector-curvature="0" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="293"
|
||||
y="866.36218"
|
||||
id="text4652"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4654"
|
||||
x="293"
|
||||
y="866.36218">D0</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#666666;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="511"
|
||||
y="853.36218"
|
||||
id="text4656"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4658"
|
||||
x="511"
|
||||
y="853.36218"
|
||||
style="fill:#000000">D1</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend);marker-start:url(#Arrow1Mstart);stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 250,214.09448 50,0"
|
||||
id="path4682"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Mstart);marker-end:url(#Arrow1Mend)"
|
||||
d="m 250,602.36218 50,0"
|
||||
id="path4682-2"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Mstart);marker-end:url(#Arrow1Mend)"
|
||||
d="m 310,602.36218 50,0"
|
||||
id="path4682-2-2"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Mstart);marker-end:url(#Arrow1Mend)"
|
||||
d="m 310,522.36218 50,0"
|
||||
id="path4682-2-3"
|
||||
inkscape:connector-curvature="0" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="260"
|
||||
y="592.36218"
|
||||
id="text5843"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5845"
|
||||
x="260"
|
||||
y="592.36218"
|
||||
style="font-size:12px">Setup</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="320"
|
||||
y="592.36218"
|
||||
id="text5847"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5849"
|
||||
x="320"
|
||||
y="592.36218"
|
||||
style="font-size:12px">Hold</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="260"
|
||||
y="512.36218"
|
||||
id="text5843-2"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5845-4"
|
||||
x="260"
|
||||
y="512.36218"
|
||||
style="font-size:12px">Setup</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="320"
|
||||
y="512.36218"
|
||||
id="text5847-7"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5849-7"
|
||||
x="320"
|
||||
y="512.36218"
|
||||
style="font-size:12px">Hold</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="260"
|
||||
y="442.36218"
|
||||
id="text5843-2-3"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5845-4-5"
|
||||
x="260"
|
||||
y="442.36218"
|
||||
style="font-size:12px">Setup</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Mstart);marker-end:url(#Arrow1Mend)"
|
||||
d="m 250,452.36218 50,0"
|
||||
id="path4682-4"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 90,484.09448 220,0 10,-50 100,0 10,50 100,0 10,-50 100,0 10,50 80,0"
|
||||
id="path3080"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)"
|
||||
sodipodi:nodetypes="cccccccccc" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="50"
|
||||
y="772.36218"
|
||||
id="text3946"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3948"
|
||||
x="50"
|
||||
y="772.36218">WD_EN</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.00000002, 3.00000002;stroke-dashoffset:0"
|
||||
d="m 305,817.36218 0,155"
|
||||
id="path3969"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3,3;stroke-dashoffset:0"
|
||||
d="m 524,817.36218 0,155"
|
||||
id="path4004"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0"
|
||||
d="m 372,815.36218 0,50"
|
||||
id="path4382"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="opacity:0.31687245;color:#000000;fill:#999999;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d=""
|
||||
id="path4390"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Mstart);marker-end:url(#Arrow1Mend)"
|
||||
d="m 250,842.36218 50,0"
|
||||
id="path4682-2-9"
|
||||
inkscape:connector-curvature="0" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="259"
|
||||
y="834.36218"
|
||||
id="text5843-3"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5845-5"
|
||||
x="259"
|
||||
y="834.36218"
|
||||
style="font-size:12px">Setup</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Mstart);marker-end:url(#Arrow1Mend)"
|
||||
d="m 310,842.36218 50,0"
|
||||
id="path4682-2-2-0"
|
||||
inkscape:connector-curvature="0" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="322"
|
||||
y="835.36218"
|
||||
id="text5847-2"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5849-8"
|
||||
x="322"
|
||||
y="835.36218"
|
||||
style="font-size:12px">Hold</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 470,514.09448 -90,0"
|
||||
id="path3165"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 460,564.09448 10,-50 120,0 10,50 90,0 10,-50 30,0"
|
||||
id="path4060"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)"
|
||||
sodipodi:nodetypes="ccccccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 460,514.09448 10,50 120,0 10,-50 90,0 10,50 30,0"
|
||||
id="path4062"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)"
|
||||
sodipodi:nodetypes="ccccccc" />
|
||||
<path
|
||||
style="opacity:0.31687245;color:#000000;fill:#666666;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="m 380.11279,557.12592 c -3.43878,-16.01305 -3.5001,-17.72303 -1.07757,-30.05012 l 2.29927,-11.69988 38.74001,0 38.74001,0 2.2939,11.67258 2.29391,11.67258 -2.27882,11.82742 -2.27882,11.82742 -38.80223,0 -38.80223,0 -1.12743,-5.25 z"
|
||||
id="path4064"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)" />
|
||||
<path
|
||||
style="opacity:0.31687245;color:#000000;fill:#666666;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="m 600.11279,557.12592 c -3.43878,-16.01305 -3.5001,-17.72303 -1.07757,-30.05012 l 2.29927,-11.69988 43.74001,0 43.74001,0 2.2939,11.67258 2.29391,11.67258 -2.27882,11.82742 -2.27882,11.82742 -43.80223,0 -43.80223,0 -1.12743,-5.25 z"
|
||||
id="path4066"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 90,594.09448 300,0 10,50 210,0 10,-50 110,0"
|
||||
id="path4068"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)"
|
||||
sodipodi:nodetypes="cccccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 90,644.09448 300,0 10,-50 210,0 10,50 110,0"
|
||||
id="path4070"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)"
|
||||
sodipodi:nodetypes="cccccc" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="440"
|
||||
y="932.36218"
|
||||
id="text4652-4"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4654-9"
|
||||
x="440"
|
||||
y="932.36218">D0</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#666666;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="660"
|
||||
y="932.36218"
|
||||
id="text4656-4"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4658-4"
|
||||
x="660"
|
||||
y="932.36218"
|
||||
style="fill:#000000">D1</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="80"
|
||||
y="922.36218"
|
||||
id="text4114"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4116"
|
||||
x="80"
|
||||
y="922.36218"
|
||||
style="text-align:center;text-anchor:middle">X</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="80"
|
||||
y="936.38171"
|
||||
id="tspan4118"
|
||||
style="font-size:10px;text-align:center;text-anchor:middle">Mem Cell</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:1.2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none;marker-start:url(#Arrow1Mstart-32);marker-end:url(#Arrow1Mend-4)"
|
||||
d="m 310,624.09448 80,0"
|
||||
id="path4120"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="translate(0,308.2677)" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="311"
|
||||
y="924.36218"
|
||||
id="text4592"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4594"
|
||||
x="311"
|
||||
y="924.36218"
|
||||
style="font-size:13px">Write Delay</tspan></text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 33 KiB |
|
|
@ -0,0 +1,643 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="744.09448819"
|
||||
height="1052.3622047"
|
||||
id="svg4759"
|
||||
version="1.1"
|
||||
inkscape:version="0.48.3.1 r9886"
|
||||
sodipodi:docname="write_driver.svg">
|
||||
<defs
|
||||
id="defs4761" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1"
|
||||
inkscape:cx="199"
|
||||
inkscape:cy="520"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1855"
|
||||
inkscape:window-height="1056"
|
||||
inkscape:window-x="65"
|
||||
inkscape:window-y="24"
|
||||
inkscape:window-maximized="1">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid4767" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata4764">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<g
|
||||
id="g5108"
|
||||
transform="translate(101,-10.999997)">
|
||||
<g
|
||||
transform="matrix(0,-1,1,0,-382.3481,1191.3609)"
|
||||
id="g3630">
|
||||
<g
|
||||
id="g3035"
|
||||
transform="matrix(1.25,0,0,1.25,370,363.1931)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 31.199,271.324 -16,0 0,-16 0,32"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path3037" />
|
||||
</g>
|
||||
<g
|
||||
id="g3039"
|
||||
transform="matrix(1.25,0,0,1.25,370,363.1931)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 7.199,263.324 0,16"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path3041" />
|
||||
</g>
|
||||
<g
|
||||
id="g3043"
|
||||
transform="matrix(1.25,0,0,1.25,370,363.1931)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 0.801,266.523 0,9.602"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path3045" />
|
||||
</g>
|
||||
</g>
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4590"
|
||||
d="m 320,732.36218 0,50"
|
||||
style="fill:none;stroke:#000000;stroke-width:2.23606801;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<g
|
||||
id="g5101"
|
||||
transform="translate(111,-2)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4584"
|
||||
d="m 310,192.36218 0,-40 30,0 -60,0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1,-199,-146.79282)"
|
||||
id="g3319">
|
||||
<path
|
||||
id="path3321"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.93475199;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 409.934,339.155 c 0,1.338 -0.864,2.417 -1.934,2.417 -1.07,0 -1.934,-1.079 -1.934,-2.417 0,-1.333 0.864,-2.417 1.934,-2.417 1.07,0 1.934,1.084 1.934,2.417 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text4691"
|
||||
y="142.36218"
|
||||
x="330"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
xml:space="preserve"><tspan
|
||||
y="142.36218"
|
||||
x="330"
|
||||
id="tspan4693"
|
||||
sodipodi:role="line">VDD</tspan></text>
|
||||
</g>
|
||||
<g
|
||||
id="g3689-3"
|
||||
transform="matrix(-1,0,0,1,869.99875,-10.985927)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,-200,23.193113)"
|
||||
id="g3223-5">
|
||||
<path
|
||||
id="path3225-9"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.30079997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 434.398,221.727 c 0,2.207 -1.789,4 -4,4 -2.207,0 -4,-1.793 -4,-4 0,-2.211 1.793,-4 4,-4 2.211,0 4,1.789 4,4 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3227-9">
|
||||
<path
|
||||
id="path3229-3"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 175.324,-407.199 29.539,0 0,-14.66 36.922,0 0,14.66 29.539,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3231-4">
|
||||
<path
|
||||
id="path3233-7"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 205.215,-425.902 36.57,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3235-2">
|
||||
<path
|
||||
id="path3237-1"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 202.648,-421.859 40.614,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g3689-33"
|
||||
transform="matrix(-1,0,0,1,869.99875,109.01407)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,-200,23.193113)"
|
||||
id="g3223-69">
|
||||
<path
|
||||
id="path3225-1"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.30079997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 434.398,221.727 c 0,2.207 -1.789,4 -4,4 -2.207,0 -4,-1.793 -4,-4 0,-2.211 1.793,-4 4,-4 2.211,0 4,1.789 4,4 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3227-5">
|
||||
<path
|
||||
id="path3229-9"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 175.324,-407.199 29.539,0 0,-14.66 36.922,0 0,14.66 29.539,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3231-7">
|
||||
<path
|
||||
id="path3233-0"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 205.215,-425.902 36.57,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3235-0">
|
||||
<path
|
||||
id="path3237-6"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 202.648,-421.859 40.614,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g4931-2"
|
||||
transform="matrix(0,-1,1,0,38.65189,750.36093)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,120,373.19311)"
|
||||
id="g3011-3">
|
||||
<path
|
||||
id="path3013-9"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 31.199,119.324 29.539,0 0,-14.66 36.922,0 0,14.66 29.539,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,120,373.19311)"
|
||||
id="g3015-4">
|
||||
<path
|
||||
id="path3017-3"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 61.09,100.621 36.57,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,120,373.19311)"
|
||||
id="g3019-3">
|
||||
<path
|
||||
id="path3021-4"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 58.523,104.664 40.614,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g4931-1-5"
|
||||
transform="matrix(0,-1,1,0,38.65189,870.36093)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,120,373.19311)"
|
||||
id="g3011-8-7">
|
||||
<path
|
||||
id="path3013-2-7"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 31.199,119.324 29.539,0 0,-14.66 36.922,0 0,14.66 29.539,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,120,373.19311)"
|
||||
id="g3015-6-5">
|
||||
<path
|
||||
id="path3017-4-9"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 61.09,100.621 36.57,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,120,373.19311)"
|
||||
id="g3019-5-4">
|
||||
<path
|
||||
id="path3021-8-3"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 58.523,104.664 40.614,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 461,361.36218 0,290 80,0"
|
||||
id="path5722"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 461,361.36218 0,-40"
|
||||
id="path5728"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 527,289.36218 -66,0 0,35"
|
||||
id="path5757"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 528,408.36218 -26,0 0,0"
|
||||
id="path5769"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccc" />
|
||||
<g
|
||||
id="g3689-3-7"
|
||||
transform="matrix(-1,0,0,1,589.99875,-10.985926)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,-200,23.193113)"
|
||||
id="g3223-5-6">
|
||||
<path
|
||||
id="path3225-9-2"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.30079997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 434.398,221.727 c 0,2.207 -1.789,4 -4,4 -2.207,0 -4,-1.793 -4,-4 0,-2.211 1.793,-4 4,-4 2.211,0 4,1.789 4,4 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3227-9-5">
|
||||
<path
|
||||
id="path3229-3-7"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 175.324,-407.199 29.539,0 0,-14.66 36.922,0 0,14.66 29.539,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3231-4-4">
|
||||
<path
|
||||
id="path3233-7-9"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 205.215,-425.902 36.57,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3235-2-3">
|
||||
<path
|
||||
id="path3237-1-7"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 202.648,-421.859 40.614,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g3689-33-0"
|
||||
transform="matrix(-1,0,0,1,589.99875,109.01407)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,-200,23.193113)"
|
||||
id="g3223-69-9">
|
||||
<path
|
||||
id="path3225-1-1"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.30079997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 434.398,221.727 c 0,2.207 -1.789,4 -4,4 -2.207,0 -4,-1.793 -4,-4 0,-2.211 1.793,-4 4,-4 2.211,0 4,1.789 4,4 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3227-5-6">
|
||||
<path
|
||||
id="path3229-9-9"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 175.324,-407.199 29.539,0 0,-14.66 36.922,0 0,14.66 29.539,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3231-7-4">
|
||||
<path
|
||||
id="path3233-0-6"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 205.215,-425.902 36.57,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0,1.25,-1.25,0,-200,23.193113)"
|
||||
id="g3235-0-4">
|
||||
<path
|
||||
id="path3237-6-9"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 202.648,-421.859 40.614,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g4931-2-2"
|
||||
transform="matrix(0,-1,1,0,-241.34811,750.36093)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,120,373.19311)"
|
||||
id="g3011-3-5">
|
||||
<path
|
||||
id="path3013-9-3"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 31.199,119.324 29.539,0 0,-14.66 36.922,0 0,14.66 29.539,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,120,373.19311)"
|
||||
id="g3015-4-8">
|
||||
<path
|
||||
id="path3017-3-1"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 61.09,100.621 36.57,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,120,373.19311)"
|
||||
id="g3019-3-1">
|
||||
<path
|
||||
id="path3021-4-1"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 58.523,104.664 40.614,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g4931-1-5-9"
|
||||
transform="matrix(0,-1,1,0,-241.34811,870.36093)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,120,373.19311)"
|
||||
id="g3011-8-7-3">
|
||||
<path
|
||||
id="path3013-2-7-3"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 31.199,119.324 29.539,0 0,-14.66 36.922,0 0,14.66 29.539,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,120,373.19311)"
|
||||
id="g3015-6-5-0">
|
||||
<path
|
||||
id="path3017-4-9-3"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 61.09,100.621 36.57,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,120,373.19311)"
|
||||
id="g3019-5-4-0">
|
||||
<path
|
||||
id="path3021-8-3-8"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 58.523,104.664 40.614,0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g5665-2"
|
||||
transform="matrix(0,-1,1,0,-131.34811,590.36093)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,-490,-176.80689)"
|
||||
id="g3411-4">
|
||||
<path
|
||||
id="path3413-5"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 495.199,407.324 0,32 24,-16 -24,-16 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,-490,-176.80689)"
|
||||
id="g3415-1">
|
||||
<path
|
||||
id="path3417-8"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.30079997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 527.199,423.324 c 0,2.211 -1.789,4 -4,4 -2.207,0 -4,-1.789 -4,-4 0,-2.207 1.793,-4 4,-4 2.211,0 4,1.793 4,4 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 181,361.36218 0,290 80,0"
|
||||
id="path5722-4"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 181,361.36218 0,-40"
|
||||
id="path5728-5"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 247,289.36218 -66,0 0,35"
|
||||
id="path5757-5"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 261,531.36218 -40,0 0,-70"
|
||||
id="path5767-7"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 248,408.36218 -26,0 0,14"
|
||||
id="path5769-6"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2.23387456;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 221,531.36218 -124.754902,0"
|
||||
id="path6000"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
id="path3321-6"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.1631186;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 223.4175,531.36218 c 0,1.338 -1.08,2.417 -2.4175,2.417 -1.3375,0 -2.4175,-1.079 -2.4175,-2.417 0,-1.333 1.08,-2.417 2.4175,-2.417 1.3375,0 2.4175,1.084 2.4175,2.417 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 261,531.36218 280,0"
|
||||
id="path6065"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 502,408.36218 -259,0"
|
||||
id="path6067"
|
||||
inkscape:connector-curvature="0" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="71"
|
||||
y="536.36218"
|
||||
id="text6069"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6071"
|
||||
x="71"
|
||||
y="536.36218">EN</tspan></text>
|
||||
<g
|
||||
id="g5665-2-0"
|
||||
transform="matrix(0,1,-1,0,493.34811,272.36343)">
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,-490,-176.80689)"
|
||||
id="g3411-4-5">
|
||||
<path
|
||||
id="path3413-5-6"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.60000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 495.199,407.324 0,32 24,-16 -24,-16 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.25,0,0,1.25,-490,-176.80689)"
|
||||
id="g3415-1-6">
|
||||
<path
|
||||
id="path3417-8-9"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.30079997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 527.199,423.324 c 0,2.211 -1.789,4 -4,4 -2.207,0 -4,-1.789 -4,-4 0,-2.207 1.793,-4 4,-4 2.211,0 4,1.793 4,4 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 141,441.36218 0,50 40,0"
|
||||
id="path6146"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 141,401.36218 0,-50 320,0"
|
||||
id="path6148"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 141,351.36218 -50,0"
|
||||
id="path6150"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
id="path3321-6-8"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.1631186;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 143.4175,351.36218 c 0,1.338 -1.08,2.417 -2.4175,2.417 -1.3375,0 -2.4175,-1.079 -2.4175,-2.417 0,-1.333 1.08,-2.417 2.4175,-2.417 1.3375,0 2.4175,1.084 2.4175,2.417 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
id="path3321-6-7"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.1631186;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 183.4175,491.36218 c 0,1.338 -1.08,2.417 -2.4175,2.417 -1.3375,0 -2.4175,-1.079 -2.4175,-2.417 0,-1.333 1.08,-2.417 2.4175,-2.417 1.3375,0 2.4175,1.084 2.4175,2.417 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
id="path3321-6-0"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.1631186;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 463.4175,351.36218 c 0,1.338 -1.08,2.417 -2.4175,2.417 -1.3375,0 -2.4175,-1.079 -2.4175,-2.417 0,-1.333 1.08,-2.417 2.4175,-2.417 1.3375,0 2.4175,1.084 2.4175,2.417 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
id="path3321-6-88"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.1631186;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 283.4175,471.36218 c 0,1.338 -1.08,2.417 -2.4175,2.417 -1.3375,0 -2.4175,-1.079 -2.4175,-2.417 0,-1.333 1.08,-2.417 2.4175,-2.417 1.3375,0 2.4175,1.084 2.4175,2.417 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
id="path3321-6-86"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.1631186;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 563.4175,471.36218 c 0,1.338 -1.08,2.417 -2.4175,2.417 -1.3375,0 -2.4175,-1.079 -2.4175,-2.417 0,-1.333 1.08,-2.417 2.4175,-2.417 1.3375,0 2.4175,1.084 2.4175,2.417 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
id="path3321-6-3"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.1631186;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 423.4175,721.36218 c 0,1.338 -1.08,2.417 -2.4175,2.417 -1.3375,0 -2.4175,-1.079 -2.4175,-2.417 0,-1.333 1.08,-2.417 2.4175,-2.417 1.3375,0 2.4175,1.084 2.4175,2.417 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="47"
|
||||
y="356.36218"
|
||||
id="text6205"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6207"
|
||||
x="47"
|
||||
y="356.36218">DATA</tspan></text>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 561,471.36218 80,0 -10,-10 10,10 -10,10"
|
||||
id="path6209"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 281,471.36218 80,0 -10,-10 10,10 -10,10"
|
||||
id="path6211"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 281,231.36218 0,-40 280,0 0,40"
|
||||
id="path6213"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 381,721.36218 180,0 0,-10"
|
||||
id="path6215"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 281,711.36218 0,10 100,0"
|
||||
id="path6217"
|
||||
inkscape:connector-curvature="0" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="365"
|
||||
y="476.36218"
|
||||
id="text6219"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6221"
|
||||
x="365"
|
||||
y="476.36218">BL</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="645"
|
||||
y="477.36218"
|
||||
id="text6223"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6225"
|
||||
x="645"
|
||||
y="477.36218">BL_bar</tspan></text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 29 KiB |
|
|
@ -0,0 +1,199 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="765"
|
||||
height="990"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.48.0 r9654"
|
||||
sodipodi:docname="xsram_block.svg">
|
||||
<defs
|
||||
id="defs4" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.6010101"
|
||||
inkscape:cx="506.22072"
|
||||
inkscape:cy="495"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="true"
|
||||
inkscape:window-width="1440"
|
||||
inkscape:window-height="813"
|
||||
inkscape:window-x="4"
|
||||
inkscape:window-y="22"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:snap-global="true"
|
||||
inkscape:snap-grids="false"
|
||||
showguides="true"
|
||||
inkscape:guide-bbox="true">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid2999"
|
||||
empspacing="5"
|
||||
visible="true"
|
||||
enabled="true"
|
||||
snapvisiblegridlinesonly="true" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(0,-62.362183)">
|
||||
<rect
|
||||
style="fill:#cccccc;fill-rule:evenodd;stroke:#cccccc;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="rect3001"
|
||||
width="284.521"
|
||||
height="51.57983"
|
||||
x="99.831932"
|
||||
y="213.77394" />
|
||||
<rect
|
||||
style="fill:#cccccc;fill-rule:evenodd;stroke:#000000;stroke-width:0.87821972px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="rect3003"
|
||||
width="277.86554"
|
||||
height="273.34061"
|
||||
x="101.4958"
|
||||
y="275.33698" />
|
||||
<rect
|
||||
style="fill:#b3b3b3;fill-rule:evenodd;stroke:#b3b3b3;stroke-width:0.91462636px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="rect3005"
|
||||
width="261.50534"
|
||||
height="58.716049"
|
||||
x="107.27876"
|
||||
y="875.5116" />
|
||||
<rect
|
||||
style="fill:#b3b3b3;fill-rule:evenodd;stroke:#b3b3b3;stroke-width:0.91708475px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="rect3005-6"
|
||||
width="270.49432"
|
||||
height="57.070377"
|
||||
x="399.90186"
|
||||
y="874.6615" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:36.76748657px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Times New Roman;-inkscape-font-specification:'Times New Roman,'"
|
||||
x="342.79984"
|
||||
y="121.62278"
|
||||
id="text3036"
|
||||
sodipodi:linespacing="125%"
|
||||
transform="scale(1.0581087,0.94508251)"><tspan
|
||||
sodipodi:role="line"
|
||||
x="347.39578"
|
||||
y="121.62278"
|
||||
id="tspan3040">Block Diagram of XSRAM </tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="342.79984"
|
||||
y="167.58214"
|
||||
id="tspan3044">Topmost Instance Datapath</tspan></text>
|
||||
<rect
|
||||
style="fill:#b3b3b3;fill-rule:evenodd;stroke:#000000;stroke-width:0.90747511px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="rect3046"
|
||||
width="276.20169"
|
||||
height="57.548901"
|
||||
x="106.48739"
|
||||
y="694.13104" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:14px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="123.12605"
|
||||
y="191.34454"
|
||||
id="text3054"
|
||||
sodipodi:linespacing="125%"
|
||||
transform="translate(0,62.362183)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3056"
|
||||
x="123.12605"
|
||||
y="191.34454" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="129.78151"
|
||||
y="245.38739"
|
||||
id="text3058"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3060"
|
||||
x="129.78151"
|
||||
y="245.38739">XSRAM.XPRECHARGE</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="158.06723"
|
||||
y="342.75629"
|
||||
id="text3064"
|
||||
sodipodi:linespacing="125%"
|
||||
transform="translate(0,62.362183)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3066"
|
||||
x="158.06723"
|
||||
y="342.75629">XSRAM.XARRAY</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="144.7563"
|
||||
y="731.23608"
|
||||
id="text3068"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3070"
|
||||
x="144.7563"
|
||||
y="731.23608">XSRAM.XCOLMUX</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="129.78151"
|
||||
y="910.93353"
|
||||
id="text3072"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3074"
|
||||
x="129.78151"
|
||||
y="910.93353">XSRAM.XSENSE_AMP</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="397.66388"
|
||||
y="853.56305"
|
||||
id="text3076"
|
||||
sodipodi:linespacing="125%"
|
||||
transform="translate(0,62.362183)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3078"
|
||||
x="397.66388"
|
||||
y="853.56305" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
x="412.63867"
|
||||
y="910.93353"
|
||||
id="text3080"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3082"
|
||||
x="412.63867"
|
||||
y="910.93353">XSRAM.XWRITE_DRIVER</tspan></text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 8.0 KiB |
|
|
@ -0,0 +1,33 @@
|
|||
\section*{GDSMill}
|
||||
\label{sec:gdsMill_permission}
|
||||
|
||||
OpenRAM uses gdsMill, a GDS library written by Michael Wieckowski at
|
||||
the University of Michigan. Michael gave us complete permission to use
|
||||
the code. Since then, we have made several bug and performance
|
||||
enhancements to gdsMill. In addition, gdsMill is no longer available
|
||||
on the web, so we distribute it along with OpenRAM.
|
||||
|
||||
|
||||
\begin{verbatim}
|
||||
From: Michael Wieckowski <wieckows@umich.edu>
|
||||
Date: Thu, Oct 14, 2010 at 12:49 PM
|
||||
Subject: Re: GDS Mill
|
||||
To: Matthew Guthaus <mrg@soe.ucsc.edu>
|
||||
|
||||
Hi Matt,
|
||||
|
||||
Feel free to use / modify / distribute the code as you like.
|
||||
|
||||
-Mike
|
||||
|
||||
On Oct 14, 2010, at 3:07 PM, Matthew Guthaus wrote:
|
||||
> Hi Michael (& Dennis),
|
||||
>
|
||||
> A student and I were looking at your GDS tools, but
|
||||
> we noticed that there is no license. What is the license?
|
||||
>
|
||||
> Thanks,
|
||||
>
|
||||
> Matt
|
||||
|
||||
\end{verbatim}
|
||||
|
|
@ -0,0 +1,373 @@
|
|||
\section{Software Implementation}
|
||||
\label{sec:implementation}
|
||||
|
||||
OpenRAM is implemented using object-oriented data structures in the
|
||||
Python programming language. The top-level executable is
|
||||
\verb|openram.py| which parses input arguments, creates the memory and
|
||||
saves the output.
|
||||
|
||||
|
||||
\subsection{Design Hierarchy}
|
||||
\label{sec:design}
|
||||
|
||||
All modules in OpenRAM are derived from the \verb|design| class in
|
||||
\verb|design.py|. The design class is a data structure that consists
|
||||
of a spice netlist, a layout, and a name. The spice netlist
|
||||
capabilities are inherited from the \verb|hierarchy_spice| class while
|
||||
the layout capabilities are inherited from the \verb|hierarchy_layout|
|
||||
class. The only additional function in design.py is \verb|DRC_LVS()|,
|
||||
which performs a DRC/LVS check on the module.
|
||||
|
||||
|
||||
\begin{figure}[htb]
|
||||
\centering
|
||||
\includegraphics[width=10cm]{./figs/class_hierarchy.pdf}
|
||||
\caption{Class hierarchy}
|
||||
\label{fig:class_hierarchy}
|
||||
\end{figure}
|
||||
|
||||
\subsubsection{Spice Hierarchy}
|
||||
|
||||
The spice hierarchy is stored in the \verb|spice| class in
|
||||
\verb|hierarchy_spice.py|. When the design class is initialized for a
|
||||
module, a data structure for the spice hierarchy is created. The
|
||||
spice data stucture name becomes the name of the top-level subcircuit
|
||||
definition for the module. The list of pins for the module are added
|
||||
to the subcircuit definition by using the \verb|add_pin()| function.
|
||||
The \verb|add_mod()| function adds an instance of a
|
||||
module/library\_cell/parameterized\_cell as a subcircuit to the
|
||||
top-level structure. Each time a sub-module has been added to the
|
||||
hierarchy, the pins of the sub-module must be connected using the
|
||||
\verb|connect_pins()| function. It is important to note that the pins
|
||||
must be listed in the same order as they were added to the submodule.
|
||||
Also, an assertion error will occur if there is a mismatch in the
|
||||
number of net connections. The \verb|spice| class also contains
|
||||
functions for reading or writing spice files:
|
||||
\begin{itemize}
|
||||
\item \verb|sp_read():| this function is used to read in spice
|
||||
netlists and parse the inputs defined by the ``subckt'' definition.
|
||||
\item \verb|sp_write():| this function creates an empty spice file in
|
||||
write mode and calls \verb|sp_write_file()|.
|
||||
\item \verb|sp_write_file():| this function recursively writes the
|
||||
modules and sub-modules from the data structure into the spice file
|
||||
created by \verb|sp_write()|.
|
||||
\end{itemize}
|
||||
|
||||
\subsubsection{Layout Hierarchy}
|
||||
|
||||
The layout hierarchy is stroed in the \verb|layout| class in
|
||||
\verb|hierarchy_layout.py|. When the design class is initialized for
|
||||
a module, a data structure for the layout hierarchy is created. The
|
||||
layout data structure has two main components: a structure for the
|
||||
instances of sub-modules contained in the layout, and a structure for
|
||||
the objects (such as shapes, labels, etc...) contained in the layout.
|
||||
The functions included in the \verb|layout| class are:
|
||||
\begin{itemize}
|
||||
\item \verb|def add_inst(self,name,mod,offset,mirror):| adds an
|
||||
instance of a physical layout (library cell, module, or
|
||||
parameterized cell) to the module. The input parameters are :
|
||||
\begin{description}
|
||||
\item[name] - name for the instance.
|
||||
\item[mod] - the associated spice module.
|
||||
\item[offset] - the x-y coordinates, in microns, where the instance
|
||||
should be placed in the layout.
|
||||
\item[mirror] - mirror or rotate the instance before it is added to
|
||||
the layout. Accepted values for mirror are:
|
||||
\verb|"R0", "R90", "R180", "R270"| $^\ast$Currently, only ``R0'' works.\\
|
||||
\verb|"MX" or "x", "MY" or "y", "XY" or "xy"| (``xy'' is
|
||||
equivalent to ``R180'')
|
||||
\end{description}
|
||||
\item \verb|add_rect(self,layerNumber,offset,width,height):| adds a
|
||||
rectangle to the module's layout. The inputs are:
|
||||
\begin{description}
|
||||
\item[layernumber] - the layer that the rectangle is to be drawn in.
|
||||
\item[offset] - the x-y coordinates, in microns, where the
|
||||
rectangle's origin will be placed in the layout.
|
||||
\item[width] - the width of the rectangle, can be positive or
|
||||
negative value.
|
||||
\item[height] - the height of the rectangle, can be positive or
|
||||
negative value.
|
||||
\end{description}
|
||||
\item \verb|add_label(self,text,layerNumber,offset,zoom):| adds a
|
||||
label to the layout. The inputs are:
|
||||
\begin{description}
|
||||
\item[text] - the text for the label
|
||||
\item[layernumber] - the layer that the label is to be drawn in .
|
||||
\item[offset] - the x-y coordinates, in microns, where the label
|
||||
will be placed in the layout.
|
||||
\item[zoom] - magnification of the label (ex: ``1e9'').
|
||||
\end{description}
|
||||
\item \verb|add_path(self,layerNumber,coordinates,width):| this
|
||||
function is under construction...
|
||||
\item \verb|gds_read():| reads in a GDSII file and creates a
|
||||
\verb|VlsiLayout()| class for it.
|
||||
\item \verb|gds_write():| writes the entire GDS of the object to a
|
||||
file by gdsMill \verb|vlsiLayout()| class and calling the
|
||||
\verb|gds2writer()| (see Sections~\ref{sec:vlsilayout}
|
||||
and~\ref{sec:gdsmill}.
|
||||
\item \verb|gds_write_file():| recursively the instances and objects
|
||||
in layout data structure to the gds file.
|
||||
\item \verb|pdf_write():| this function is under construction...
|
||||
\end{itemize}
|
||||
|
||||
|
||||
\subsection{Creating a New Design Module}
|
||||
\label{sec:new_design}
|
||||
|
||||
Each module in the SRAM is its own Python class, which contains a
|
||||
design class, or data structure, for the layout and spice. The
|
||||
\verb|design| class (\verb|design.py|) is initialized within the
|
||||
module class, subsequently creating separate data structurse to hold
|
||||
the layout (\verb|hierarchy_layout|) and spice
|
||||
(\verb|hierarchy_spice|) information. By having a class for each
|
||||
module, it is very easy to instatiate instances of the modules in any
|
||||
level of the hierarchy. Follow these guidelines when creating a new
|
||||
module:
|
||||
|
||||
|
||||
\begin{itemize}
|
||||
\item Derive your class from the design module:
|
||||
\begin{verbatim}
|
||||
class bitcell_array(design.design):
|
||||
\end{verbatim}
|
||||
\item Always use the python constructor \verb|__init__| method so that
|
||||
your class is initialized when an object of the module is
|
||||
instatiated. The module parameters should also be declared:
|
||||
\begin{verbatim}
|
||||
def __init__(self, cols, rows):
|
||||
\end{verbatim}
|
||||
\item In the constructor, call the base class constructor with the
|
||||
name such as:
|
||||
\begin{verbatim}
|
||||
design.design.__init__(self,"bitcell_array")
|
||||
\end{verbatim}
|
||||
\item Add the pins that will be used in the spice netlist for your
|
||||
module using the \verb|add_pin()| function from the
|
||||
\verb|hierarchy_spice| class.
|
||||
\begin{verbatim}
|
||||
self.add_pin("vdd")
|
||||
\end{verbatim}
|
||||
\item Create an instance of the module/library\_cell/parameterized
|
||||
cell that you want to add to your module:
|
||||
\begin{verbatim}
|
||||
cell=bitcell.bitcell(cell_6t)
|
||||
\end{verbatim}
|
||||
\item Add the subckt/submodule instance to the spice hierarchy using
|
||||
the \verb|add_mod()| function from the \verb|hierarchy_spice| class:
|
||||
\begin{verbatim}
|
||||
self.add_mod(cell)
|
||||
\end{verbatim}
|
||||
\item Add layout instance into your module's layout hierarchy using
|
||||
the \verb|add_instance|() function, which takes a name, mod, offset,
|
||||
and mirror as inputs:
|
||||
\begin{verbatim}
|
||||
self.add_inst(name=name,mod=cell,offset=[x_off,y_off],mirror=x)
|
||||
\end{verbatim}
|
||||
\item Connect the pins of the instance that was just added by using
|
||||
the \verb|connect_pins| function from the \verb|hierarchy_spice|
|
||||
class:
|
||||
\begin{verbatim}
|
||||
self.connect_inst([BL[%d]%col, BR[%d]%col, WL[%d]%row, gnd, vdd]).
|
||||
\end{verbatim}
|
||||
The pins must be listed in the same order as they were added to the
|
||||
submodule. Also, an assertion error will occur if there is a
|
||||
mismatch in the number of net connections.
|
||||
\item Do whatever else needs to be done. Add rectangles for
|
||||
power/ground rails or routing, add labels, etc...
|
||||
\item Every module needs to have ``self'' height and width variable
|
||||
that can be accessed from outside of the module class. These
|
||||
paramaters are commonly used for placing instances modules in a
|
||||
layout. For library cells, the \verb|self.width| and
|
||||
\verb|self.height| variables are automatically parsed from the GDSII
|
||||
layout using the \verb|cell_size()| function in \verb|vlsi_layout|.
|
||||
Users must define the width and height of dynamically generated
|
||||
designs.
|
||||
\item Add a call to the \verb|DRC_LVS()| function.
|
||||
\end{itemize}
|
||||
|
||||
\subsection{GDSII Files and GdsMill)}
|
||||
\label{sec:gds}
|
||||
|
||||
GDSII is the standard file used in indusrty to store the layout
|
||||
information of an integrated circuit. The GDSII file is a stream file
|
||||
that consists of records and data types that hold the data for the
|
||||
various instances, shapes, labels, etc.. in the layout. In OpenRAM, we
|
||||
utlize a nifty tool, called gdsMill, to read, write, and manipulate
|
||||
GDSII files. GdsMill was developed by Michael Wieckowski at the
|
||||
University of Michigan.
|
||||
|
||||
\subsubsection{GDSII File Format}
|
||||
\label{sec:format}
|
||||
|
||||
The format of gds file contains several parts, as it could be shown in
|
||||
Figure~\ref{fig:gds_file}.
|
||||
|
||||
\begin{figure}[htb]
|
||||
\centering
|
||||
\includegraphics[width=10cm]{./figs/gds_file}
|
||||
\caption{example of a GDSII file}
|
||||
\label{fig:gds_file}
|
||||
\end{figure}
|
||||
|
||||
The first part is the gds file header, which the contains GDSII
|
||||
version number, date modified, date last accessed, library, user
|
||||
units, and database units.
|
||||
|
||||
The second part is the list of structures. These structures contain
|
||||
geometries or references to other structures of the layout in
|
||||
heirarchical form. Within a structure there are several kinds of
|
||||
records:
|
||||
|
||||
\begin{itemize}
|
||||
\item Rectangle - basic geometry unit in a design, represent one layer
|
||||
of material in a circuit(i.e. a metal pin). Five coordinates and
|
||||
layer number are stored in rectangle record.
|
||||
\item Structure Reference - a structure that is used in this
|
||||
structure. The information about this reference will be used store
|
||||
as a structure in the same gds file.
|
||||
\item Text - a text record used for labels.
|
||||
\item Path - used to represent a wire.
|
||||
\item Boundary - defines a filled polygon.
|
||||
\item Array Reference - specifies an array of structure instances
|
||||
\item Node - Electrical nets may be specified with the NODE record
|
||||
\end{itemize}
|
||||
|
||||
The last part is the tail of the GDSII file which ends the GDS
|
||||
Library.
|
||||
|
||||
\fixme{Provide a link to the complete GDSII specification.}
|
||||
|
||||
\subsubsection{GdsMill}
|
||||
\label{sec:gdsmill}
|
||||
|
||||
As previously stated, GdsMill is a set of scripts that can be used to read, write, and manipulate GDSII files.
|
||||
|
||||
\paragraph{The gds2\_reader and gds2\_writer:}
|
||||
|
||||
In GdsMill, the \verb|gds2_reader| and \verb|gds2_writer| classes contain the various functions used to convert data between GDSII files and the \verb|vlsilayout| class. These classes process the data by iterating through every record in the GDS structures and check or write every data record. The record type (see Section~\ref{sec:format}),is tracked and identified using flags.
|
||||
|
||||
\fixme{Do we need more information of these classes, or should we just point to the GdsMill documentation?}
|
||||
|
||||
\paragraph{The VlsiLayout Class:}
|
||||
\label{sec:vlsilayout}
|
||||
|
||||
After the \verb|gds2_reader| class reads in the records, the data has to be stored in a
|
||||
way that can be easily used by our code. Thus, the
|
||||
\verb|VlsiLayout| class is made to represent the layout.
|
||||
\verb|VlsiLayout| contains the same information as GDSII file but in a
|
||||
different way. \verb|VlsiLayout| stores records in data structures, which
|
||||
are defined in \verb|gdsPrimitives.py|. Each record type has a corresponding class defined in \verb|gdsPrimitives|. Thus, a vlsilayout should at least
|
||||
contains following member data:
|
||||
\begin{itemize}
|
||||
\item \verb|self.rootStructureName| - name of the top design.
|
||||
\item \verb|self.structures| -list of structure that are used in the class.
|
||||
\item \verb|self.xyTree| - contains a list of all structure names that appeared in the design.
|
||||
\end{itemize}
|
||||
|
||||
The \verb|VlsiLayout| class also contains many functions for adding
|
||||
structures and records to a layout class, but the important and most
|
||||
useful functions have been aggregated into a wrapper file. This
|
||||
wrapper is called \verb|geometry.py| and is located in the
|
||||
\verb|compiler| directory.
|
||||
|
||||
\subsubsection{OpenRAM-GdsMill Interface}
|
||||
\label{sec:wrapper}
|
||||
|
||||
Dynamically generated cells and arrays each need to build a
|
||||
\verb|VlsiLayout| data structure to represent the hierarchical layout.
|
||||
This is performed using various functions from the \verb|VlsiLayout|
|
||||
class in GdsMill, but the GdsMill file is very large and can be
|
||||
difficult to understand. To make things easier, OpenRAM has its own
|
||||
wrapper class called \verb|geometry| in \verb|geometry.py|. This
|
||||
wrapper class initializes data structures for the
|
||||
instances and objects that will be added to the \verb|VlsiLayout|
|
||||
class. The functions \verb|add_inst()|, \verb|add_rect()|,
|
||||
\verb|add_label()| in \verb|hierarchy_layout|, add the structures to
|
||||
the \verb|geometry| class, which is then written out to a GDSII file
|
||||
using \verb|VlsiLayout| and the \verb|gds2_writer|.
|
||||
|
||||
User included library cells, which should be in gds files, can be used
|
||||
as dynamically generated cells by using GDSMill.
|
||||
Cell information such as cell size and pin location can be obtained by using
|
||||
built in functions in the \verb|VlsiLayout| class.
|
||||
|
||||
Cell size can be finded by using the \verb|readLayoutBorder| function of the \verb|VlsiLayout| class.
|
||||
A boundary layer should be drawn in each library cell to indicate the cell area.
|
||||
The \verb|readLayoutBorder| function will return the width and height of the boundary.
|
||||
If a boundary layer do not exist in the layout, then \verb|measureSize| can find the physical
|
||||
size cell.
|
||||
The first method is used as primary method in \verb|auto_Measure_libcell| the lib\_utility.py,
|
||||
while the second method is used as a back up one.
|
||||
Each technolgy setup will import this utility function and read the library cell.
|
||||
|
||||
Pin location can be find by using the \verb|readPin| function of the \verb|VlsiLayout| class.
|
||||
The \verb|readPin| function will return the biggest boundary which covers the label and
|
||||
is at the same layer as the label is.
|
||||
|
||||
|
||||
\subsection{Technology Directory}
|
||||
\label{sec:techdir}
|
||||
|
||||
The aim of creating technology directory is to make OpenRAM portable
|
||||
to different technologies. This directory contains all the information
|
||||
related to the specific process/technology that is being used. In
|
||||
OpenRAM, the default technology is FreePDK45, which has it own
|
||||
technolony directory in the trunk. The technology-specific directory
|
||||
should consist of the following:
|
||||
\begin{itemize}
|
||||
\item Technology-Specific Parameters - These parameters should include
|
||||
layer numbers and any design rules that may be needed for generating
|
||||
dynamic designs (DRC rules). The parameters should be added in
|
||||
\verb|/techdir/tech/tech.py| and layer map in the \verb|/techdir|.
|
||||
\item Library Cells - The library cells and corresponding spice
|
||||
netlists should be added to the \verb|/gds_lib| and \verb|/sp_lib|
|
||||
directories.
|
||||
\item Portation Functions - Some of the dynamically generated cells
|
||||
may need helper functions to deal with technology-specific
|
||||
requirements. Additional, tech-specific, functions should be added
|
||||
to the \verb|/techdir|.
|
||||
\end{itemize}
|
||||
|
||||
For more information regarding the technology directory and how to set
|
||||
one up for a new technology, refer to Section~\ref{sec:porting}
|
||||
|
||||
\subsection{DRC/LVS Interface}
|
||||
\label{sec:drclvs}
|
||||
|
||||
Each design class contains a function \verb|DRC_LVS()| that performs both
|
||||
DRC and LVS on the current design module. This enables bottom-up
|
||||
correct-by-construction design and easy identification of where errors
|
||||
occur. It does incur some run-time overhead and can be disabled on
|
||||
the command line. The \verb|DRC_LVS()| function saves a GDSII file and a Spice
|
||||
file into a temporary directory and then calls two functions to
|
||||
perform DRC and LVS that are tool-dependent.
|
||||
|
||||
A reference implementation for the DRC and LVS functions are provided
|
||||
for Cadence Calibre since this is the most common DRC/LVS tool. Each
|
||||
of these functions generates a batch-mode ``runset'' file which
|
||||
contains the options to correctly run DRC and LVS. The functions then
|
||||
parse the batch mode output for any potential errors and returns the
|
||||
number of errors encountered.
|
||||
|
||||
The function \verb|run_drc()| requires a cell name and a GDSII
|
||||
file. The cell name corresponds to the top level cell in the GDSII
|
||||
file. It also uses the layer map file for the technology to correctly
|
||||
import the GDSII file into the Cadence database to perform DRC. The
|
||||
function returns the number of DRC violations.
|
||||
|
||||
The function \verb|run_lvs()| requires a cell name, a GDSII file, and
|
||||
a Spice file. Calibre will extract an extracted Spice netlist from the
|
||||
GDSII file and will then compare this netlist with the OpenRAM Spice
|
||||
netlist. The function returns the number of uncompared and unmatched
|
||||
devices/nets in the design.
|
||||
|
||||
For both DRC and LVS, the summary file and other report files are left
|
||||
in the OpenRAM temporary directory after DRC/LVS is run. These report
|
||||
files can be examined to further understand why errors were
|
||||
encountered. In addition, by increasing the debug level, the command
|
||||
line to re-create the DRC/LVS check can be obtained and run manually.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,263 @@
|
|||
\section{Introduction}
|
||||
\label{sec:intro}
|
||||
|
||||
The OpenRAM project aims to provide a free, open-source memory
|
||||
compiler development framework for Random-Access Memories (RAMs).
|
||||
Most academic Integrated Circuit (IC) design methodologies are
|
||||
inhibited by the availability of memories. Many standard-cell process
|
||||
design kits (PDKs) are available from foundries and vendors, but these
|
||||
PDKs do not come with memory arrays or compilers. Some PDKs have
|
||||
options to request ``black box'' memory models, but these are not
|
||||
modifiable, have limited available configurations, and do not have
|
||||
full details available to academics. These restrictions make
|
||||
comparison and experimentation with real memory systems impossible.
|
||||
OpenRAM, however, is user-modifiable and portable through
|
||||
technology libraries to enable experimentation with real-world
|
||||
memories at a variety of performance points and costs.
|
||||
|
||||
The specific features of OpenRAM are:
|
||||
\begin{itemize}
|
||||
|
||||
\item \textbf{Memory Array Generation}
|
||||
|
||||
Currently, OpenRAM supports simple 1 read/write port synchronous
|
||||
memories, but it will be extended to multi-port memories, register
|
||||
files, and asynchronous memories in the future. The generation
|
||||
includes features such as automatic word-line driver sizing,
|
||||
efficient decoder sizing, multiple-word column support, and
|
||||
self-timing with replica bitlines.
|
||||
|
||||
\item \textbf{Portability and Extensibility}
|
||||
|
||||
OpenRAM is a Python program. Python enables portability to numerous
|
||||
platforms and enables the program to be extended by anyone. In
|
||||
general, it works on Linux, MacOS, and Windows platforms.
|
||||
|
||||
User-readable technology files enable migration to a variety of
|
||||
process technologies. Currently, an implementation in a
|
||||
non-fabricale 45nm technology (FreePDK45) is provided and the MOSIS
|
||||
Scalable CMOS (SCN3ME\_SUBM.30) is provided. The compiler has also
|
||||
been extended to several technologies. We hope to work with vendors
|
||||
to distribute the technology information of others commercial
|
||||
technologies soon.
|
||||
|
||||
OpenRAM makes calls to commercial circuit simulators and DRC/LVS
|
||||
tools in an abstracted way for circuit simulation and
|
||||
verification. This enables adaptation to other design
|
||||
methodologies. However, it also supports a completely open-source
|
||||
platform for older technologies.
|
||||
|
||||
\item \textbf{Timing and Power Characterization}
|
||||
|
||||
OpenRAM provides a basic framework for analysis of timing and power.
|
||||
This includes both analytical estimates, un-annotated spice
|
||||
simulations, or back-annotated simulations. The timing and power
|
||||
views are provided in the Liberty open format for use with the most
|
||||
common logic synthesis and timing analysis tools.
|
||||
|
||||
\item \textbf{Commercial Tool Independence and Interoperability}
|
||||
|
||||
To keep OpenRAM portable and maximize its usefulness, it it
|
||||
independent from any specific commercial tool suite or
|
||||
language. OpenRAM interfaces to both open-source (e.g., NGSpice) and
|
||||
commercial circuit simulators through the standard Spice3 circuit
|
||||
format. The physical layout is directly generated in the GDSII
|
||||
layout stream format which can be imported into any academic or
|
||||
commercial layout tools. We provide a Library Exchange Format (LEF)
|
||||
file for interfacing with commercial Placement and Routing tools.
|
||||
We provide a Verilog behavioral model for simulation.
|
||||
|
||||
\item \textbf{Silicon Verification}
|
||||
TBD
|
||||
|
||||
\end{itemize}
|
||||
|
||||
\subsection{Requirements}
|
||||
|
||||
Development is done on Ubuntu or MacOS systems with Python 2.7.
|
||||
|
||||
|
||||
\subsubsection{Timing Verification Tools}
|
||||
|
||||
For peformance reasons, OpenRAM uses analytical delay models by
|
||||
default. If you wish to enable simulation-based timing
|
||||
characterization, you must enable this on the command line with the
|
||||
``-c'' command line argument.
|
||||
|
||||
% Not complete yet
|
||||
%If you wish to perform back-annotated characterization, you must
|
||||
%further enable this with the ``-b'' command line argument.
|
||||
|
||||
OpenRAM can use the following circuit simulators and possibly others
|
||||
if they support the Spice3 file format:
|
||||
\begin{itemize}
|
||||
\item HSpice I-2013.12-1 or later
|
||||
\item ngSpice 26 \url{http://ngspice.sourceforge.net/}
|
||||
\item CustomSim (xa) M-2017.03-SP5 or later
|
||||
\end{itemize}
|
||||
|
||||
\subsubsection{Physical Verification Tools}
|
||||
|
||||
By default, OpenRAM will perform DRC and LVS on each level of
|
||||
hierarchy. To do this, you must have a valid DRC and LVS tool and the
|
||||
corresponding rule files for the technology. OpenRAM can, however,
|
||||
run without DRC and LVS verification using the ``-n'' command line
|
||||
argument. It is not recommended to use this if you make any changes,
|
||||
however.
|
||||
|
||||
DRC can be done with:
|
||||
\begin{itemize}
|
||||
\item Calibre 2012.3\_15.13 or later (SCMOS or FreePDK45)
|
||||
\item Magic \url{http://opencircuitdesign.com/magic/} (SCMOS only)
|
||||
\end{itemize}
|
||||
|
||||
LVS can be done with:
|
||||
\begin{itemize}
|
||||
\item Calibre 2012.3\_15.13 or later (SCMOS or FreePDK45)
|
||||
\item Netgen \url{http://opencircuitdesign.com/netgen/} (SCMOS only)
|
||||
\end{itemize}
|
||||
|
||||
\subsubsection{Technology Files}
|
||||
|
||||
To work with FreePDK45, you must install the FreePDK baseline kit from:
|
||||
\url{https://www.eda.ncsu.edu/wiki/FreePDK45:Contents}
|
||||
|
||||
We have included an example Calibre DRC deck for MOSIS SCMOS design
|
||||
rules, but DRC with Magic relies on its own design rules:
|
||||
\url{https://www.mosis.com/files/scmos/scmos.pdf} We require the
|
||||
format 32 or later to enable stacked vias which is included with
|
||||
Qflow:
|
||||
\begin{verbatim}
|
||||
git clone http://opencircuitdesign.com/qflow
|
||||
cp tech/osu050/SCN3ME_SUBM.30.tech <your magic tech lib>
|
||||
\end{verbatim}
|
||||
|
||||
You can over-ride the location of the DRC and LVS rules with the
|
||||
DRCLVS\_HOME environment variable.
|
||||
|
||||
\subsubsection{Spice Models}
|
||||
|
||||
FreePDK45 comes with a spice device model. Once this is installed, it
|
||||
is used.
|
||||
|
||||
SCMOS, however, does not come with a device spice model. This must be
|
||||
obtained from MOSIS or another vendor. We use the ON Semiconductor
|
||||
0.5um device models.
|
||||
|
||||
You can over-ride the location of the spice models with the
|
||||
SPICE\_MODEL\_DIR environment variable.
|
||||
|
||||
|
||||
|
||||
\subsection{Environment Variables}
|
||||
|
||||
In order to make OpenRAM flexible, it uses two environment variables
|
||||
to make it relocatable in a variety of user scenarios. Specifically,
|
||||
the user may want technology directories that are separate from
|
||||
OpenRAM. Or, the user may want to have several versions of
|
||||
OpenRAM. This is done with the folowing required environment
|
||||
variables: specifically:
|
||||
\begin{itemize}
|
||||
\item OPENRAM\_HOME defines the location of the compiler source directory.
|
||||
\item OPENRAM\_TECH defines the location of the OpenRAM technology
|
||||
files. This is discussed later in Section~\ref{sec:tech}.
|
||||
\end{itemize}
|
||||
|
||||
Other environmental variables and additional required paths for
|
||||
specific technologies are dynamically added during runtime by sourcing
|
||||
a technology setup script. These are located in the
|
||||
"\$OPENRAM\_TECH/setup\_scripts" directory. Example scripts for SCMOS and
|
||||
FreePDK45 are included with the distribution. These setup any things
|
||||
needed by the PDK.
|
||||
|
||||
\subsection{Design Flow}
|
||||
|
||||
%% % high-level org
|
||||
|
||||
%% The memory compiler framework is divided into several modules: the
|
||||
%% compiler, the router, the characterizer, verify, and gdsMill.
|
||||
%% Figure~\ref{fig:methodology} shows an overview of the methodology. The
|
||||
%% compiler input is the memory organization with which it generates the
|
||||
%% logical and layout views. The compiler then uses these views while
|
||||
%% calling the characterization tool to ensure functionality and measure
|
||||
%% timing/power. The characterization tool indirectly calls a spice
|
||||
%% simulator for timing/power analysis.
|
||||
|
||||
%% % front-end
|
||||
|
||||
%% The ``front-end'' methodology can be run with no verification tools (spice, DRC, or LVS).
|
||||
%% only a spice simulator
|
||||
%% and will produce Spice models (eventually Verilog), layout/GDSII
|
||||
%% (eventually LEF), and a timing/power model based on estimated
|
||||
%% parasitics. It is intended that this mode be easily run on any
|
||||
%% platform so that designers and architects can get timing, power and
|
||||
%% area estimates quickly.
|
||||
|
||||
%% % back-end
|
||||
|
||||
%% The ``back-end'' methodology uses the spice netlist and detailed layout
|
||||
%% generated by the front-end to perform back-annotated characterization
|
||||
%% and generate annotated timing and power models. The back-end uses
|
||||
%% layout directly in the GDSII stream format which is supported in both
|
||||
%% commercial and academic back-end flows. The back-end mode is to be used
|
||||
%% prior to fabrication and by designers who want detailed timing/power
|
||||
%% values.
|
||||
|
||||
%% In both the front-end and back-end flows, the designs are Design Rule
|
||||
%% Checked (DRC) and Layout Verses Schematic (LVS) checked at each level
|
||||
%% of design hierarchy.
|
||||
|
||||
\subsection{Usage}
|
||||
|
||||
The OpenRAM compiler rquires a single argument of a configuration
|
||||
file. The configuration file specifies, at a minimum, the memory size
|
||||
parameters in terms of the number of words, word size (in bits), and
|
||||
number of banks. By default, OpenRAM will chose the number of columns
|
||||
to make the memory reasonably square. Commonly, the configuration file
|
||||
also includes parameters for the output path, base output file name,
|
||||
and technology of an SRAM.
|
||||
|
||||
The configuration file can be used to over-ride any option in the
|
||||
options.py file. Many of these are controlled by the command-line,
|
||||
but the configuration file takes priority and allows repeatable
|
||||
generation of memories.
|
||||
|
||||
Lastly, the configuration file can over-ride any
|
||||
of the different circuit implementations for each module. For example, you
|
||||
can replace the default address decoder or bitcell with a new one by
|
||||
specifying a new python module that implements a new one.
|
||||
|
||||
An entire example configuration file looks like:
|
||||
\begin{verbatim}
|
||||
word_size = 16
|
||||
num_words = 32
|
||||
num_banks = 1
|
||||
|
||||
tech_name = "freepdk45"
|
||||
|
||||
output_path = "/tmp/outputdir"
|
||||
output_name = "mysram"
|
||||
|
||||
bitcell = "custom_bitcell"
|
||||
\end{verbatim}
|
||||
In this example, the user has specified a custom bitcell that will be
|
||||
used when creating the bitcell\_array and other modules.
|
||||
|
||||
OpenRAM has many command line arguments. Other useful command line arguments are:
|
||||
\begin{itemize}
|
||||
\item -h : To get help for the command-line options
|
||||
\item -v : To increase the verbosity (may be used multiple times)
|
||||
\end{itemize}
|
||||
|
||||
\begin{figure}[tb]
|
||||
\centering
|
||||
\includegraphics[width=14cm]{./figs/methodology.pdf}
|
||||
\caption{Overall Compilation and Characterization Methodology
|
||||
\label{fig:methodology}}
|
||||
\end{figure}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,580 @@
|
|||
\section{Modules}
|
||||
\label{sec:modules}
|
||||
|
||||
This section provides an overview of the main modules that are used in
|
||||
an SRAM. For each module, we will provide both an architectural
|
||||
description and an explanation of how that design is generated and
|
||||
used in OpenRAM. The modules described below are provided in the
|
||||
first release of OpenRAM, but by no means is this an exhaustive list
|
||||
of the possible circuits that can be adapted into a SRAM architecture;
|
||||
refer to Section~\ref{sec:implementation} for more information on
|
||||
adding different module designs to the compiler.
|
||||
|
||||
Each module has a corresponding python class in the \verb|compiler|
|
||||
directory. These classes are used to generate both the GDSII layout
|
||||
and spice netlists. Each module can consist of library cells as
|
||||
discussed in Section~\ref{sec:techdir}, paramterized cells in
|
||||
Section~\ref{sec:parameterized} or other modules. A discussion of the
|
||||
design hierarchy and how to implement a module is provided in
|
||||
Section~\ref{sec:design}.
|
||||
|
||||
When combining modules at any level of hierarchy, DRC rules for
|
||||
minimum spacing of metals, wells, etc. must be followed and DRC and
|
||||
LVS are run by default after each hierarchical module's creation.
|
||||
|
||||
|
||||
\subsection{The Bitcell and Bitcell Array}
|
||||
\label{sec:bitcellarray}
|
||||
|
||||
The 6T cell is the most commonly used memory cell in SRAM devices. It
|
||||
is named a 6T cell because it consist of 6 transistors: 2 access
|
||||
transistors and 2 cross coupled inverters as shown in
|
||||
Figure~\ref{fig:6t_cell}. The cross coupled inverters hold a single
|
||||
data bit that can either be driven into, or read from the cell by the
|
||||
bitlines. The access transistors are used to isolate the cell from
|
||||
the bitlines so that data is not corrupted while a cell is not being
|
||||
accessed.
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=.9]{./figs/cell_6t_schem.pdf}
|
||||
\caption{Schematic of 6T cell.}
|
||||
\label{fig:6t_cell}
|
||||
\end{figure}
|
||||
|
||||
% memory cell operation
|
||||
The 6T cell can be accessed to perform the two main operation
|
||||
associated with memory: reading and writing. When a read is to be
|
||||
performed, both bitlines are precharged to VDD. This precharging is
|
||||
done during the first half of the read cycle and is handled by the
|
||||
precharge circuitry. In the second half of the read cycle the
|
||||
wordline is asserted, which enable the access transistors. If a 1 is
|
||||
stored in the cell then BLB is discharged to Gnd and BL is pulled up
|
||||
to Vdd. Conversely, if the value stored is a 0, then BL is discharged
|
||||
to Gnd and BLB is pulled up to Vdd. While performing a write
|
||||
operation, both bitlines are also precharged to Vdd during the first
|
||||
half of the write cycle. Again, the world line is asserted, and the
|
||||
access transistors are enabled. The value that is to be written into
|
||||
the cell is applied to BL, and its complement is applied to BLB. The
|
||||
drivers that are applying the signals to the bitlines must be
|
||||
appropriately sized so that the previous value in the cell can be
|
||||
overwritten.
|
||||
|
||||
% tiling memory cells
|
||||
The 6T cells are tiled together in both the horizontal and vertical
|
||||
directions to make up the memory array. The size of the memory array
|
||||
is directly related to the numbers of words, and the size of those
|
||||
words, that will need to be stored in the RAM. For example, an 8kb
|
||||
memory with a word size of 8 bits could be implemented as 8 columns
|
||||
and 1024 rows.
|
||||
|
||||
% keeping it square
|
||||
It is common practice to keep the aspect ratio of memory array as
|
||||
square as possible\footnote{Future versions will consider optimizing
|
||||
delay and/or power as well.}. This helps to make sure that the
|
||||
bitlines do not become too long, which can increase the bitline
|
||||
capacitance, slow down the operation and lead to more leakage. To
|
||||
make the design ``more square'', multiple words can share rows by
|
||||
interleaving the bits of each word. If the previous 8kb memory was
|
||||
rearranged to allow 2 words per row, then the array would have 16
|
||||
columns and 512 rows.
|
||||
|
||||
% memory cell is a library cell
|
||||
In OpenRAM, we provide a library cell for the 6T cell so that users
|
||||
can easily swap in different memory cell designs. The memory cell is
|
||||
the most important cell in the RAM and should be customized to
|
||||
minimize area and optimize performance. The memory cell is the most
|
||||
replicated cell in the RAM; minimizing its size can have a drastic
|
||||
effext on the overall size of the RAM. Also, the transitors in the cell
|
||||
must be carefully sized to allow for correct read and write operation
|
||||
as well as protection against corruption.
|
||||
|
||||
% bitcell and bitcell_array classes
|
||||
The \verb|bitcell| class in \verb|bitcell.py| instantiates a single
|
||||
memory cell and is usually a pre-made library cell. The
|
||||
\verb|bitcell_array| class in \verb|bitcell_array.py| dynamically
|
||||
implements the memory cell array by instantiating a single memory cell
|
||||
according to the number of rows and columns. During the tiling
|
||||
process, the cells are abutted so that all bitlines and word lines are
|
||||
connected in the vertical and horizontal directions respectively. In
|
||||
order to share supply rails, cells are flipped in alternating rows. To
|
||||
avoid any extra routing, the power/ground rails, bitlines, and
|
||||
wordlines should span the entire width/height of the cell so thay they
|
||||
are automatically connected when the cells are abutted.
|
||||
|
||||
|
||||
\subsection{Precharge Circuitry}
|
||||
\label{sec:precharge}
|
||||
|
||||
The precharge circuit is depicted in Figure~\ref{fig:precharge} and is
|
||||
implemented by three PMOS transistors. The input signal to the cell,
|
||||
clk, enables all three transistors during the first half of a read or
|
||||
write cycle (i.e. while the clock signal is low). M1 and M2 charge BL
|
||||
and BLB to Vdd and M3 helps to equalize the voltages seen on BL and
|
||||
BLB.
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[width=5cm]{./figs/precharge_schem.pdf}
|
||||
\caption{Schematic of a single precharge cell. \fixme{Change PCLK to CLK.}}
|
||||
\label{fig:precharge}
|
||||
\end{figure}
|
||||
|
||||
In OpenRAM, the precharge citcuitry is dynamically generated using the
|
||||
parameterized transistor class (\verb|ptx|). The \verb|precharge|
|
||||
class in \verb|precharge.py| dynamically generates a single precharge cell.
|
||||
|
||||
The offsets of the bitlines and the width of the precharge cell are
|
||||
equal to the 6T cell so that the bitlines are correctly connected down
|
||||
to the 6T cell. The \verb|precharge_array| class is then used to
|
||||
generate a precharge array, which is a single row of \textbf{n}
|
||||
precharge cells, where \textbf{n} equals the number of columns in the
|
||||
bitcell array.
|
||||
|
||||
|
||||
\subsection{Address Decoders}
|
||||
\label{sec:addressdecoder}
|
||||
|
||||
The address decoder takes the row address bits from the address bus as
|
||||
inputs, and asserts the appropriate wordline in the row that data is
|
||||
to be read or written. A n-bit address input controls $2^n$ word
|
||||
lines.
|
||||
|
||||
OpenRAM provides a hierarchical address decoder as the default, but
|
||||
will soon have other options.
|
||||
|
||||
\subsubsection{Hierarchical Decoder}
|
||||
\label{sec:hierdecoder}
|
||||
|
||||
Hierarchical decoder is a type of decoder which the constrcution takes place hierarchically.
|
||||
The simple 2:4 decoder is shown in the Figure~\ref{fig:2 to 4 decoder}. The operation of
|
||||
this decoder can be explained as follows: soon after the address signals A0 and A1 are put on the address lines,
|
||||
depending on the signal combination, one of the wordlines will rise after a brief amount of time. For example if the
|
||||
address input is A0A1=00 then the output is W0W1W2W3=1000. The 2:4 address decoder uses inverters and two
|
||||
input nand gates for its constrcution while the gates are sized to have equal rise and fall time.
|
||||
As the decoder size increases the size of the nand gates required for decoding also increases.
|
||||
Table~\ref{table:2-4 hierarchical_decoder} gives the detailed input and output siganls
|
||||
for the 2:4 hierarchical decoder.
|
||||
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=.6]{./figs/2t4decoder.pdf}
|
||||
\caption{Schematic of 2-4 simple decoder.}
|
||||
\label{fig:2 to 4 decoder}
|
||||
\end{figure}
|
||||
|
||||
\begin{table}[h!]
|
||||
\begin{center}
|
||||
\begin{tabular}{| c | c |}
|
||||
\hline
|
||||
A[1:0] & Selected WL\\ \hline
|
||||
00 & 0\\ \hline
|
||||
01 & 1\\ \hline
|
||||
10 & 2\\ \hline
|
||||
11 & 3\\ \hline
|
||||
|
||||
\end{tabular}
|
||||
\end{center}
|
||||
\caption{Truth table for 2:4 hierarchical decoder.}
|
||||
\label{table:2-4 hierarchical_decoder}
|
||||
\end{table}
|
||||
|
||||
|
||||
An $n$-bit decoder requires {$2^n$} logic gates, each with $n$ inputs. For example, with $n$ = 6,
|
||||
64 $NAND6$ gates are needed to drive 64 inverters to implement the decoder.
|
||||
It is clear that gates with more than 3 inputs create large series resistances and long delays.
|
||||
Rather than using $n$-input gates, it is preferable to use a cascade of gates.
|
||||
Typically two stages are used: a predecode stage and a final decode stage.
|
||||
The predecode stage generates intermediate signals that are used
|
||||
by multiple gates in the final decode stage.
|
||||
|
||||
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=.6]{./figs/4t16decoder.pdf}
|
||||
\caption{Schematic of 4 to 16 hierarchical decoder.}
|
||||
\label{fig:4 to 16 decoder}
|
||||
\end{figure}
|
||||
|
||||
Figure~\ref{fig:4 to 16 decoder} shows the 4 to 16 heirarchical decoder. The structure of the decoder consists of two 2:4 decoders for predecoding and 2-input nand gates and inverters for final decoding to form the 4:16 decoder.
|
||||
In the predecoder, a total of 8 intermediate signals are generated from the address bits and their complements.
|
||||
The concept of using predecoing and final decoding stage for construction of address decoder is very procutive since small
|
||||
decoders like 2:4 decoder is used for predecoding. The operation of 4:16 heirarchical decoder can explained with an example. If the address is A0A1A2A3=0000 the output of the predecoder1 and predeocder2 will be
|
||||
WL0WL1WL2WL3=1000 and WL0WL1WL2WL3=1000, respectively. According to the connections in figure~\ref{fig:4 to 16 decoder} the wordline 0 of predecoder1 and predecoder2 are conneted
|
||||
to the first 2-input nand gate in the decode stage representing the wordline 0 of the final decoding stage. Hence depengin on the combination
|
||||
of the input signal one of the wordline will rise. In this case since the address input is A0A1A2A3=0000 the wordline 0 should go high. Table~\ref{table:4-16 hierarchical_decoder} gives the detailed input and output siganls
|
||||
for the 4:16 hierarchical decoder.
|
||||
|
||||
|
||||
\begin{table}[h!]
|
||||
\begin{center}
|
||||
\begin{tabular}{| c | c | c | c |}
|
||||
\hline
|
||||
A[3:0] & predecoder1 & predecoder2 & Selected WL\\ \hline
|
||||
0000 & 1000 & 1000 & 0\\ \hline
|
||||
0001 & 1000 & 0100 & 1\\ \hline
|
||||
0010 & 1000 & 0010 & 2\\ \hline
|
||||
0011 & 1000 & 0001 & 3\\ \hline
|
||||
0100 & 0100 & 1000 & 4\\ \hline
|
||||
0101 & 0100 & 0100 & 5\\ \hline
|
||||
0110 & 0100 & 0010 & 6\\ \hline
|
||||
0111 & 0100 & 0001 & 7\\ \hline
|
||||
1000 & 0010 & 1000 & 8\\ \hline
|
||||
1001 & 0010 & 0100 & 9\\ \hline
|
||||
1010 & 0010 & 0010 & 10\\ \hline
|
||||
1011 & 0010 & 0001 & 11\\ \hline
|
||||
1100 & 0001 & 1000 & 12\\ \hline
|
||||
1101 & 0001 & 0100 & 13\\ \hline
|
||||
1110 & 0001 & 0010 & 14\\ \hline
|
||||
1111 & 0001 & 0001 & 15\\ \hline
|
||||
\end{tabular}
|
||||
\end{center}
|
||||
\caption{Truth table for 4:16 hierarchical decoder.}
|
||||
\label{table:4-16 hierarchical_decoder}
|
||||
\end{table}
|
||||
|
||||
|
||||
As the size of the address line increases higher level decoder can be created using the lower level decoders. For example for a 8:256 decoder, two instances of 4:16 followed by 256 2-input nand gates and inverters
|
||||
can form the decoder. In order to construct the 8:256 decoder, first 4:16 decoder should be constructed through using 2:4 deccoders. Hence the name is hierarchical decoder.
|
||||
|
||||
|
||||
\subsection{Wordline Driver}
|
||||
\label{sec:wldriver}
|
||||
|
||||
Word line drivers are inserted, in between the word line
|
||||
output of the address decoder and the word line input of the bitcell-array. The word
|
||||
line drivers ensure that as the size of the memory array increases,
|
||||
and the word line length and capacitance increases, the word line
|
||||
signal is able to turn on the access transistors in the 6T cell. Also, as the bank select signal
|
||||
in multi-bank structures is $ANDED$ with the word line output of decoder,
|
||||
bitcells turn on only when bank is selected.
|
||||
Figure~\ref{fig:wordline_driver} shows the diagram of word line driver and its input/output pins.
|
||||
In OpenRAM, word line drivers are created by using the \verb|pinv| and \verb|nand2| classes which
|
||||
takes the transistor size and cell height as inputs (so that it can abutt the
|
||||
6T cell). Word line driver is added as seperate module in \verb|compiler|.
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=.8]{./figs/wordline_driver.pdf}
|
||||
\caption{Diagram of word line driver.}
|
||||
\label{fig:wordline_driver}
|
||||
\end{figure}
|
||||
|
||||
|
||||
\subsection{Column Mux}
|
||||
|
||||
The column mux takes the column address bits from the address bus
|
||||
selects the appropriate bitlines for the word that is to be read from
|
||||
or written to. It takes n-bits from the address bus and can select
|
||||
$2^n$ bitlines. The column mux is used for both the read and write
|
||||
operations; it connects the bitline of the memory array to both the
|
||||
sense ampflifier and the write driver.
|
||||
|
||||
OpenRAM provides several options for column mux, but the default
|
||||
is a single-level column mux which is sized for optimal speed.
|
||||
|
||||
\subsubsection{Tree\_Decoding Column Mux}
|
||||
\label{sec:tree_decoding_column_mux}
|
||||
|
||||
The schematic for a 4-1 tree
|
||||
multiplexer is shown in Figure~\ref{fig:colmux}.
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=.9]{./figs/tree_column_mux_schem.pdf}
|
||||
\caption{Schematic of 4-1 tree column mux that passes both of the bitlines.}
|
||||
\label{fig:colmux}
|
||||
\end{figure}
|
||||
|
||||
\fixme{Shading/opacity is different on different platforms. Make this a box in the image. It doesn't work on OSX.}
|
||||
|
||||
This tree mux selects pairs of bitlines (both BL and BL\_B) as inputs
|
||||
and outputs. This 4-1 tree mux illustrates the process of choosing
|
||||
the correct bitlines if there are 4 words per row in the memory array.
|
||||
Each bitline pair represents a single bit from each word. A binary
|
||||
reduction pattern, shown in Table~\ref{table:colmux}, is used to
|
||||
select the appropriate bitlines. As the number of words per row in
|
||||
the memory array increases, the depth of the column mux grows. The
|
||||
depth of the column mux is equal to the number of bits in the column
|
||||
address bus. The 4-1 tree mux has a depth of 2. In level 1, the
|
||||
least significant bit from the column address bus selects either the
|
||||
first and second words or the third and fourth words. In level 2, the
|
||||
most signifant column address bit selects one of the words passed down
|
||||
from the previous level. Relative to other column mux designs, the
|
||||
tree mus uses significantly less devices. But, this type of design
|
||||
can provide poor performance if a large decoder with many levels are
|
||||
needed. The delay of of a tree mux quadratically increases with each
|
||||
level. Due to this fact, other types of column
|
||||
decoders should be considered for larger arrays.
|
||||
|
||||
\begin{table}[h!]
|
||||
\begin{center}
|
||||
\begin{tabular}{| c | c | c | c |}
|
||||
\hline
|
||||
Selected BL & Inp1 & Inp2 & Binary\\ \hline
|
||||
BL0 & SEL0\_bar & SEL1\_bar & 00\\ \hline
|
||||
BL1 & SEL0 & SEL1\_bar & 01\\ \hline
|
||||
BL2 & SEL0\_bar & SEL1 & 10\\ \hline
|
||||
BL3 & SEL0 & SEL1 & 11\\
|
||||
\hline
|
||||
\end{tabular}
|
||||
\end{center}
|
||||
\caption{Binary reduction pattern for 4-1 tree column mux.}
|
||||
\label{table:colmux}
|
||||
\end{table}
|
||||
|
||||
In OpenRAM, the tree column mux is a dynamically generated design. The
|
||||
\verb|tree_mux_array| is made up of two dynamically generated cells: \verb|muxa|
|
||||
and \verb|mux_abar|. The only diffference between these cells is that input
|
||||
select signal is either hooked up to the \textbf{SEL} or
|
||||
\textbf{SEL\_bar} signals (see highlighted boxes in
|
||||
Figure~\ref{fig:colmux}). These cells are initialized the the
|
||||
\verb|column_muxa| and \verb|column_muxabar| classes in \verb|columm_mux.py|. Instances
|
||||
of \verb|ptx| PMOS transistors are added to the design and the necessary
|
||||
routing is performed using the \verb|add_rect()| function. A horizontal rail
|
||||
is added in metal2 for both the SEL and Sel\_bar signals. Underneath
|
||||
those input rails, horizontal straps are added. These straps are used
|
||||
to connect the BL and BL\_B outputs from \verb|muxa| to the BL and BL\_B
|
||||
outputs of \verb|mux_abar|. Vertical conenctors in metal3 are added at the
|
||||
bottom of the cell so that connections can be made down to the sense
|
||||
amp. Vertical connectors are also added in metal1 so that the cells
|
||||
can connect down to other mux cells when the depth of the tree mux is
|
||||
more than one level.
|
||||
|
||||
The \verb|tree_mux_array| class is used to generate the tree mux.
|
||||
Instances of both the \verb|muxa| and \verb|mux_abar| cells are instantiated and
|
||||
are tiled row by row. The offset of the cell in a row is determined
|
||||
by the depth of that row in the tree mux. The pattern used to
|
||||
determine the offset of the mux cells is
|
||||
$muxa.width*(i)*(2*row\_depth)$ where is the column number. As the
|
||||
depth increases, the mux cells become further apart. A separate
|
||||
``for'' loop is invoked if the $depth>1$, which extends the
|
||||
power/ground and select rails across the entire width of the array.
|
||||
Similarly, if the $depth>1$, spice net names are created for the
|
||||
intermediate connection made at the various levels. This is necessary
|
||||
to ensure that a correct spice netlist is generated and that the
|
||||
input/output pins of the column mux match the pins in the modules that
|
||||
it is connected to.
|
||||
|
||||
|
||||
\subsubsection{Single\_Level Column Mux}
|
||||
\label{sec:single_level_column_mux}
|
||||
|
||||
The optimal design for column mux uses a single NMOS device, driven by the input address or decoded input addresses.
|
||||
Figure~\ref{fig:2t1_single_level_column_mux} shows the schematic of a 2:1 single-level column mux. In this column mux one bit
|
||||
of address and its complementry drive the pass transistors. Selected transistors will
|
||||
connect their corresponding bitlines ( 1 set of column out of 2 set of columns) to sense-amp and write-driver circuitry for read or write operation.
|
||||
Figure~\ref{fig:4t1_single_level_column_mux} shows the schematic of a 4:1 single-level column mux. In this column mux, 2 input
|
||||
address are decoded using a 2:4 decoder ( 2:4 decoder is explain in section~\ref{sec:hierdecoder}). 2:4 decoder provides a one-hot set of outputs, so only one set of columns
|
||||
will be selected and connected to sense-amp and write-driver
|
||||
( in figure~\ref{fig:4t1_single_level_column_mux} one set of column out of four sets of column is selected).
|
||||
|
||||
In OpenRAM, the \verb|single-level_mux_array| is a dynamically generated design and
|
||||
it is made up of dynamically generated cell (\verb|single-level_mux|).
|
||||
\verb|single-level_mux| uses the parameterized transistor class \verb|ptx| to generate two NMOS transistors
|
||||
which will connect the BL and BLB of selected columns to sense-amp and write-driver. Horizontal rails are added for $sel$ signals. Vertical
|
||||
straps connect the BL and BLB of bitcell\_array to BL and BLB of single-level column mux and also BL-out and BLB-out of single-level
|
||||
column mux to BL and BLB of sense-amp and write-driver.
|
||||
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=.7]{./figs/2t1_single_level_column_mux.pdf}
|
||||
\caption{Schematic of a 2:1 single level column mux.}
|
||||
\label{fig:2t1_single_level_column_mux}
|
||||
\end{figure}
|
||||
|
||||
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=.6]{./figs/4t1_single_level_column_mux.pdf}
|
||||
\caption{Schematic of a 4:1 single level column mux.}
|
||||
\label{fig:4t1_single_level_column_mux}
|
||||
\end{figure}
|
||||
|
||||
|
||||
\subsection{Sense Amplifier}
|
||||
\label{sec:senseamp}
|
||||
The sense amplifier is used to sense the difference between the
|
||||
bitline and bitline bar while a read operation is performed. The
|
||||
sense amp is necessary to recover the signals from the bitlines
|
||||
because they do not experience full voltage swing. As the size of the
|
||||
memory array grows, the load of the bitlines increases and the voltage
|
||||
swing is limited by the small memory cell driving this large load. A
|
||||
differential sense amplifier is used to``sense'' the small voltage
|
||||
difference between the bitlines.
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=.8]{./figs/sense_amp_schem.pdf}
|
||||
\caption{Schematic of a single sense amplifier cell.}
|
||||
\label{fig:sense_amp}
|
||||
\end{figure}
|
||||
|
||||
The schematic for the sense amp is shown in
|
||||
Figure~\ref{fig:sense_amp}. The sense amplifier is enable by the SCLK
|
||||
signal, which initiates the read operation. Before the sense
|
||||
amplifier is enable, the bitlines are precharged to Vdd by the
|
||||
precharge unit. When the sense amp is enabled, one of the bitlines
|
||||
experiences a voltage drop based on the value stored in the memory
|
||||
cell. If a zero is stored, the bitline voltage drops. If a one is
|
||||
stored, the bitline bar voltage drops. The output signal is then
|
||||
taken to a true logic level and latched for output to the data bus.
|
||||
|
||||
In OpenRAM, the sense amplifier is a libray cell. The associated
|
||||
layout and spice netlist can be found in the \verb|gds_lib| and \verb|sp_lib| in
|
||||
the FreePDK45 directory. The \verb|sense_amp| class in \verb|sense_amp.py|
|
||||
instantiates a single instance of the sense amp library cell. The
|
||||
\verb|sense_amp_array| class handles the tiling of the sense amps cells.
|
||||
One sense amp cell is needed per data bit and the sense amp cells need
|
||||
to be appropriately spaced so that they can hook up to the column mux
|
||||
bitline pairs. The spacing is determined based on the number of words
|
||||
per row in the memory array. Instances are added and then Vdd, Gnd
|
||||
and SCLK rails that span the entire width of the array are drawn using
|
||||
the add\_rect() function.
|
||||
|
||||
We chose to leave the sense amp as a libray cell so that custom
|
||||
amplifier designs could be swapped into the memory as needed. The two
|
||||
major things that need to be considered while designing the sense
|
||||
amplifier cell are the size of the cell and the bitline/input pitches.
|
||||
Optimally, the cell should be no larger than the 6T cell so that it
|
||||
abuts to the column mux and no extra routing or space is needed.
|
||||
Also, the bitline inputs of the sense amp need to line up with the
|
||||
outputs of the write driver. In the current version of OpenRAM, the
|
||||
write driver is situated under the sense amp, which had bitlines
|
||||
spaning the entire height of the cell. In this case, the sense
|
||||
amplifier is disabled during a write operation but the bitlines still
|
||||
connect the write driver to the column mux without any extra routing.
|
||||
|
||||
|
||||
\subsection{Write Driver}
|
||||
\label{sec:writedriver}
|
||||
The write driver is used to drive the input signal into the memory
|
||||
cell during a write operation. It can be seen in
|
||||
Figure~\ref{fig:write_driver} that the write driver consists of two
|
||||
tristate buffers, one inverting and one non-inverting. It takes in a
|
||||
data bit, from the data bus, and outputs that value on the bitline,
|
||||
and its complement on bitline bar. The bitlines need to be
|
||||
complements so that the data value can be correctly stored in the 6T
|
||||
cell. Both tristates are enabled by the EN signal.
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=.8]{./figs/write_driver_schem.pdf}
|
||||
\caption{Schematic of a write driver cell, which consists of 2 tristates (non-inverting and inverting) to drive the bitlines.}
|
||||
\label{fig:write_driver}
|
||||
\end{figure}
|
||||
|
||||
Currently, in OpenRAM, the write driver is a library cell. The
|
||||
associated layout and spice netlist can be found in the \verb|gds_lib| and
|
||||
\verb|sp_lib| in the FreePDK45 directory. Similar to the \verb|sense_amp_array|,
|
||||
the \verb|write_driver_array| class tiles the write driver cells. One
|
||||
driver cell is needed per data bit and Vdd, Gnd, and EN signals must
|
||||
be extended to span the entire width of the cell. It is not optimal to
|
||||
have the write driver as a library cell because the driver needs to be
|
||||
sized based on the capacitance of the bitlines. A large memory array
|
||||
needs a stronger driver to drive the data values into the memory
|
||||
cells. We are working on creating a parameterized tristate class,
|
||||
which will dynamically generate write driver cells of different
|
||||
sizes/strengths.
|
||||
|
||||
\subsection{Flip-Flop Array}
|
||||
|
||||
In a synchronous SRAM it is necessary to synchronize the inputs and
|
||||
outputs with a clock signal by using flip-flops. In FreePDK45 we
|
||||
provide a library cell for a simple master-slave flip-flop, see
|
||||
schematic in Figure~\ref{fig:ms_flop}. In our library cell we provide
|
||||
both Q and Q\_bar as outputs of the flop because inverted signals are
|
||||
used in various modules. The \verb|ms_flop| class in \verb|ms_flop.py|
|
||||
instatitates a single master-slave flop, and the \verb|ms_flop_array| class
|
||||
generates an array of flip-flops. Arrays of flops are necessary for
|
||||
the data bus (an array for both the inputs and outputs) as well as the
|
||||
address bus (an array for row and column inputs). The \verb|ms_flop_array|
|
||||
takes the number of flops and the type of array as inputs. Currently,
|
||||
the type of the array must be either ``data\_in'', ``data\_out'',
|
||||
``addr\_row'', or ``addr\_col'' verbatim. The array type input is
|
||||
used to look up that associated pin names for each of the flop arrays.
|
||||
This was implemented very quickly and should be improved in the near
|
||||
future...
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=.7]{./figs/ms_flop_schem.pdf}
|
||||
\caption{Schematic of a master-slave flip-flop provided in FreePDK45 library}
|
||||
\label{fig:ms_flop}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Control Logic}
|
||||
|
||||
The details of the control logic architecture are outlined in
|
||||
Section~\ref{sec:control}. The control logic module,
|
||||
\verb|control_logic.py|, instantiates a \verb|control_logic| class that arranges
|
||||
all of the flip-flops and logic associated with the control signals
|
||||
into a single module. Flip-flops are instantiated for each control
|
||||
signal input and library NAND and NOR gates are used for the logic. A
|
||||
delay chain, of variable length, is also generted using parameterized
|
||||
inverters. The associated layouts and spice netlists can be found in
|
||||
the \verb|gds_lib| and \verb|sp_lib| in the FreePDK45 directory.
|
||||
|
||||
\section{Bank and SRAM}
|
||||
\label{sec:bank}
|
||||
|
||||
The overall memory architecture is shown in figure~\ref{fig:bank}.
|
||||
As shown in this figure one Bank contains different modules including
|
||||
precharge-array which is positioned above the bitcell-array,
|
||||
column-mux-array which is located below the bitcell-array,
|
||||
sense-amp-array, write-driver-array, data-in-ms-flop-array
|
||||
to synchronize the input data with negative edge of the clock,
|
||||
tri-gata-array to share the bidirectional data-bus between input
|
||||
and output data, hierarchical decoder which is placed on the right side
|
||||
of the bitcell-array (predecoder + decoder), wordline-driver which drives
|
||||
the wordlines horizontally across the bitcell-array and address-ms-flops
|
||||
to synchronize the input address with positive edge of the clock.
|
||||
|
||||
In bitcell-array each memory cell is mirrored vertically and horizontally inorder to share VDD and GND rails with adjacent cells and form the array.
|
||||
Data-bus is connected to tri-gate, address-bus is connected to address-ms-flops and bank-select
|
||||
signal will enable the bank when it goes high. To complete the SRAM design, bank is connected to control-logic as shown in figure~\ref{fig:bank}.
|
||||
Control-logic controls the timing
|
||||
of modules inside the bank. CSb, OEb, Web and clk are inputs to the control logic and output of
|
||||
control logic will ANDed with bank-select signal and send to the corresponding modules.
|
||||
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=1]{./figs/bank.pdf}
|
||||
\caption{Overal bank and SRAM architecture.}
|
||||
\label{fig:bank}
|
||||
\end{figure}
|
||||
|
||||
|
||||
In order to reduce the delay and power, divided wordline strategy have been used in this compiler. Part of the address bits
|
||||
are used to define the global wordline (bank-select) and rest of address bits are connected to hierarchical
|
||||
decoder inside each bank to generate local wordlines that actually drive the bitcell access transistors.
|
||||
|
||||
As shown in figure~\ref{fig:bank2} SRAM is divided to two banks which share data-bus, address-bus, control-bus and control-logic.
|
||||
In this case one bit of address (most significant bit) goes to an ms-flop and outputs of ms-flop (address-out and address-out-bar)
|
||||
are connected to banks as bank-select signals. Control logic is shared between two banks and based on which bank is selected,
|
||||
control signals will activate modules inside the selected bank. In this architecture, the total cell capacitance is reduced by up
|
||||
to a factor of two. Therefore the power will be reduced greatly and the delay among the wordlines is also reduced.
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=.9]{./figs/bank2.pdf}
|
||||
\caption{SRAM is divided to two banks which share the control-logic.}
|
||||
\label{fig:bank2}
|
||||
\end{figure}
|
||||
|
||||
In figure~\ref{fig:bank4}, four banks are connected together. In this case a 2:4 decoder is added to select one of the banks using two
|
||||
most significant bits of input address. Control signals are connected to all banks but will turn on only the selected bank.
|
||||
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=.9]{./figs/bank4.pdf}
|
||||
\caption{SRAM is divided to 4 banks wich are controlled by the control-logic and a 2:4 decoder.}
|
||||
\label{fig:bank4}
|
||||
\end{figure}
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
\BOOKMARK [1][-]{section.1}{License}{}% 1
|
||||
\BOOKMARK [1][-]{section.2}{Introduction}{}% 2
|
||||
\BOOKMARK [2][-]{subsection.2.1}{Requirements}{section.2}% 3
|
||||
\BOOKMARK [2][-]{subsection.2.2}{Environment Variables}{section.2}% 4
|
||||
\BOOKMARK [2][-]{subsection.2.3}{Design Flow}{section.2}% 5
|
||||
\BOOKMARK [2][-]{subsection.2.4}{Usage}{section.2}% 6
|
||||
\BOOKMARK [1][-]{section.3}{Overview of the SRAM Structure}{}% 7
|
||||
\BOOKMARK [2][-]{subsection.3.1}{Inputs/Outputs}{section.3}% 8
|
||||
\BOOKMARK [2][-]{subsection.3.2}{Top-Level SRAM Module}{section.3}% 9
|
||||
\BOOKMARK [1][-]{section.4}{Modules}{}% 10
|
||||
\BOOKMARK [2][-]{subsection.4.1}{The Bitcell and Bitcell Array}{section.4}% 11
|
||||
\BOOKMARK [2][-]{subsection.4.2}{Precharge Circuitry}{section.4}% 12
|
||||
\BOOKMARK [2][-]{subsection.4.3}{Address Decoders}{section.4}% 13
|
||||
\BOOKMARK [2][-]{subsection.4.4}{Wordline Driver}{section.4}% 14
|
||||
\BOOKMARK [2][-]{subsection.4.5}{Column Mux}{section.4}% 15
|
||||
\BOOKMARK [2][-]{subsection.4.6}{Sense Amplifier}{section.4}% 16
|
||||
\BOOKMARK [2][-]{subsection.4.7}{Write Driver}{section.4}% 17
|
||||
\BOOKMARK [2][-]{subsection.4.8}{Flip-Flop Array}{section.4}% 18
|
||||
\BOOKMARK [2][-]{subsection.4.9}{Control Logic}{section.4}% 19
|
||||
\BOOKMARK [1][-]{section.5}{Bank and SRAM}{}% 20
|
||||
\BOOKMARK [1][-]{section.6}{Software Implementation}{}% 21
|
||||
\BOOKMARK [2][-]{subsection.6.1}{Design Hierarchy}{section.6}% 22
|
||||
\BOOKMARK [2][-]{subsection.6.2}{Creating a New Design Module}{section.6}% 23
|
||||
\BOOKMARK [2][-]{subsection.6.3}{GDSII Files and GdsMill\)}{section.6}% 24
|
||||
\BOOKMARK [2][-]{subsection.6.4}{Technology Directory}{section.6}% 25
|
||||
\BOOKMARK [2][-]{subsection.6.5}{DRC/LVS Interface}{section.6}% 26
|
||||
\BOOKMARK [1][-]{section.7}{Custom Layout Design Functions in Software}{}% 27
|
||||
\BOOKMARK [2][-]{subsection.7.1}{Parameterized Transistor}{section.7}% 28
|
||||
\BOOKMARK [2][-]{subsection.7.2}{Parameterized Inverter}{section.7}% 29
|
||||
\BOOKMARK [2][-]{subsection.7.3}{Parameterized NAND2}{section.7}% 30
|
||||
\BOOKMARK [2][-]{subsection.7.4}{Parameterized NAND3}{section.7}% 31
|
||||
\BOOKMARK [2][-]{subsection.7.5}{Parameterized NOR2}{section.7}% 32
|
||||
\BOOKMARK [2][-]{subsection.7.6}{Path and Wire}{section.7}% 33
|
||||
\BOOKMARK [1][-]{section.8}{Porting to a new Technologies}{}% 34
|
||||
\BOOKMARK [2][-]{subsection.8.1}{The GDS and Spice Libraries}{section.8}% 35
|
||||
\BOOKMARK [2][-]{subsection.8.2}{Technology Directory}{section.8}% 36
|
||||
\BOOKMARK [1][-]{section.9}{Timing and Control Logic}{}% 37
|
||||
\BOOKMARK [2][-]{subsection.9.1}{Signals}{section.9}% 38
|
||||
\BOOKMARK [2][-]{subsection.9.2}{Timing Considerations}{section.9}% 39
|
||||
\BOOKMARK [2][-]{subsection.9.3}{SRAM Operation}{section.9}% 40
|
||||
\BOOKMARK [2][-]{subsection.9.4}{Zero Bus Turnaround \(ZBT\)}{section.9}% 41
|
||||
\BOOKMARK [2][-]{subsection.9.5}{Control Logic}{section.9}% 42
|
||||
\BOOKMARK [2][-]{subsection.9.6}{Replica Bitline Delay}{section.9}% 43
|
||||
\BOOKMARK [2][-]{subsection.9.7}{Timing and Power Characterizer}{section.9}% 44
|
||||
\BOOKMARK [1][-]{section.10}{Unit Tests}{}% 45
|
||||
\BOOKMARK [2][-]{subsection.10.1}{Usage}{section.10}% 46
|
||||
\BOOKMARK [1][-]{section.11}{Debug Framework}{}% 47
|
||||
|
|
@ -0,0 +1,109 @@
|
|||
% The % is a comment. This file is an Example LaTeX document for GP111
|
||||
\documentclass[11pt]{article}
|
||||
\usepackage{times} % LaTeX 2e
|
||||
\usepackage{graphicx}
|
||||
\usepackage{epstopdf}
|
||||
%\usepackage{subfigure}
|
||||
\usepackage[colorlinks=true]{hyperref}
|
||||
%\usepackage[doublespacing]{setspace}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% Generic Shared across papers Keywords
|
||||
|
||||
\newcommand{\fixme}[1]{{\Large FIXME:} {\bf #1}}
|
||||
\newcommand{\note}[1]{{\bf Note:} \{\uline{#1}\}\\}
|
||||
|
||||
% create some additional spacing between paragraphs.
|
||||
\setlength{\parskip}{7pt}
|
||||
% Default margins are too wide all the way around. I reset them here.
|
||||
\setlength{\topmargin}{-.5in}
|
||||
\setlength{\textheight}{9in}
|
||||
\setlength{\oddsidemargin}{.125in}
|
||||
\setlength{\textwidth}{6.25in}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\title{OpenRAM Manual}
|
||||
\author{Matthew R. Guthaus - mrg@ucsc.edu\\
|
||||
James Stine - james.stine@okstate.edu\\
|
||||
and many others
|
||||
}
|
||||
%\renewcommand{\today}{October 14, 2010}
|
||||
\maketitle
|
||||
\newpage
|
||||
\section{License}
|
||||
|
||||
\begin{verbatim}
|
||||
Copyright 2018 Regents of the University of California and The Board
|
||||
of Regents for the Oklahoma Agricultural and Mechanical College
|
||||
(acting for and on behalf of Oklahoma State University)
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are
|
||||
met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
|
||||
3. Neither the name of the copyright holder nor the names of its
|
||||
contributors may be used to endorse or promote products derived from
|
||||
this software without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
\end{verbatim}
|
||||
|
||||
|
||||
\newpage
|
||||
\setcounter{tocdepth}{2}
|
||||
\tableofcontents
|
||||
|
||||
\newpage
|
||||
|
||||
% Each chapter description
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\input{intro}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\input{overview}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\input{modules}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\input{implementation}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\input{parameterized}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\input{porting}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\input{timing}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\input{unittests}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\input{debug}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%\input{conclusions}
|
||||
\input{gdsmill}
|
||||
|
||||
|
||||
\end{document}
|
||||
|
|
@ -0,0 +1,91 @@
|
|||
\section{Overview of the SRAM Structure}
|
||||
\label{sec:overview}
|
||||
|
||||
|
||||
% address decode and mem array
|
||||
The baseline SRAMs generated by OpenRAM have 1 read/write port as
|
||||
shown in Figure~\ref{fig:sram_architecture}. The address is decoded
|
||||
(Section~\ref{sec:addressdecoder}) into a one-hot set of word lines
|
||||
(WL) which are driven by word line drivers
|
||||
(Section~\ref{sec:wldriver}) over the bit-cell array
|
||||
(Section~\ref{sec:bitcellarray}). To facilitate reads, the precharge
|
||||
circuitry (Section~\ref{sec:precharge}) precharges the bitlines so
|
||||
that the column mux (Section~\ref{sec:column_mux}) can select the
|
||||
appropriate word which is then sensed by the sense amplifiers
|
||||
(Section~\ref{sec:senseamp}). Write drivers
|
||||
(Section~\ref{sec:writedriver}) use the bidirectional nature of the
|
||||
column mux to write the appropriate columns in a given memory row.
|
||||
|
||||
A representative layout of such a memory closely resembles the logical
|
||||
representation and is shown in Figure~\ref{fig:layout_view}. The
|
||||
address and data flip-flops and control circuitry are not shown but
|
||||
are detailed in Section~\ref{sec:control}.
|
||||
|
||||
|
||||
\begin{figure}[htb]
|
||||
\centering
|
||||
\includegraphics[width=10cm]{./figs/sram_overview.pdf}
|
||||
\caption{Single Port SRAM Architecture}
|
||||
\label{fig:sram_architecture}
|
||||
\end{figure}
|
||||
|
||||
|
||||
\begin{figure}[htb]
|
||||
\centering
|
||||
\includegraphics[width=6cm]{./figs/layout_view_1024_16_annotated.pdf}
|
||||
\caption{1k SRAM with Two Columns and 16-bit Data}
|
||||
\label{fig:layout_view}
|
||||
\end{figure}
|
||||
|
||||
|
||||
|
||||
\subsection{Inputs/Outputs}
|
||||
\label{sec:io}
|
||||
|
||||
The inputs to the SRAM are:
|
||||
\begin{itemize}
|
||||
\setlength{\itemsep}{0pt}
|
||||
\item clk - External Clock
|
||||
\item CSb - Active-low Chip Select
|
||||
\item WEb - Active-low Write Enable
|
||||
\item OEb - Active-low Output Enable
|
||||
\item ADDR\# - corresponds to the Address Bus input, labeled 0 to N-address bits.
|
||||
\item DATA\# - corresponds to the bi-directional Data bus.
|
||||
\end{itemize}
|
||||
|
||||
The outputs to the SRAM are:
|
||||
\begin{itemize}
|
||||
\setlength{\itemsep}{0pt}
|
||||
\item DATA\# - correspond to the bi-directional Data bus.
|
||||
\end{itemize}
|
||||
|
||||
|
||||
\subsection{Top-Level SRAM Module}
|
||||
\label{sec:sram}
|
||||
|
||||
The \verb|sram| class in \verb|sram.py| is the top-level SRAM module.
|
||||
This class handles the overall organization of the memory and the
|
||||
input/output signals. Based on the user inputs, the various bus and
|
||||
array sizes are calculated and passed to the \verb|bank| module.
|
||||
All other sub-modules access the value of sizes from \verb|bank|.
|
||||
The overall organization is depicted in
|
||||
Figure~\ref{fig:sram_architecture}, discussion of the design data
|
||||
structure is discussed in Section~\ref{sec:design} and the modules
|
||||
contained in the top-level SRAM are detailed in
|
||||
Section~\ref{sec:modules}.
|
||||
|
||||
When the user has specified the desired size (word size, total
|
||||
number of words and number of banks) of the memory that is to be generated,
|
||||
the following parameters must be calculated. There are several constraints
|
||||
to be considered in this calculations:
|
||||
|
||||
(i) \verb|sram| can generate 1 bank, 2 banks or 4 banks.
|
||||
|
||||
(ii) The area of each bank should be as square as possible which is dependent on the area of a 6T cell.
|
||||
|
||||
(iii) There are several options for multiplexing (column-mux): 2-way, 4-way, 8-way and none.
|
||||
|
||||
|
||||
All of the top level routing is performed in the \verb|sram| class.
|
||||
|
||||
\fixme{More soon...}
|
||||
|
|
@ -0,0 +1,258 @@
|
|||
\section{Custom Layout Design Functions in Software}
|
||||
\label{sec:parameterized}
|
||||
|
||||
OpenRAM provides classes that can be used to generated parameterized
|
||||
cells for the most common cells: transistors, inverters, nand2, nand3, etc...
|
||||
There are many advantages to having parameterized cells.
|
||||
The main advantage is that it makes it easier to dynamically generate designs and cuts
|
||||
down the necessary code to be written.
|
||||
We also need parameterized cells because some designs, such as the wordline drivers, need to be
|
||||
dynamically sized based on the size of the memory.
|
||||
Lastly, there may be certain physical dimension requirements that need to be met for a
|
||||
cell, while still maintaing the expected operation/performance.
|
||||
In OpenRAM we currently provide five parameterized cells: parameterized
|
||||
transistor (\verb|ptx|), parameterized inverter (\verb|pinv|), parameterized nand2 (\verb|nand_2|),
|
||||
parameterized nand3 (\verb|nand_3|) and parameterized nor2 (\verb|nor_2|).
|
||||
|
||||
|
||||
\subsection{Parameterized Transistor}
|
||||
\label{sec:ptx}
|
||||
|
||||
The parameterized transistor class generates a transistor of specified
|
||||
width and number of mults.
|
||||
The \verb|ptx| is constructed as follows:
|
||||
\begin{verbatim}
|
||||
def __init__(self,name,width,mults,tx_type)
|
||||
\end{verbatim}
|
||||
|
||||
An explanation of the \verb|ptx| parameters is shown in
|
||||
Table~\ref{table:ptx_params}. A layout of ptx, generated by the
|
||||
following instatiation, is depicted in Figure~\ref{fig:ptx_example}.
|
||||
\begin{verbatim}
|
||||
fet = ptx.ptx(name = "nmos_1_finger", width = tech.drc["minwidth_tx"],
|
||||
mults = 1, tx_type = "nmos").
|
||||
\end{verbatim}
|
||||
|
||||
\begin{table}[h!]
|
||||
\begin{center}
|
||||
\begin{tabular}{| l | c |}
|
||||
\hline
|
||||
Parameter & Explanation \\ \hline
|
||||
\verb|width| & active\_height \\ \hline
|
||||
\verb|mults| & mult number of the transistor \\ \hline
|
||||
\verb|tx_type| & type of transistor,”nmos” and “pmos” \\ \hline
|
||||
\hline
|
||||
\end{tabular}
|
||||
\end{center}
|
||||
\caption{Parameter Explanation of ptx}
|
||||
\label{table:ptx_params}
|
||||
\end{table}
|
||||
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[width=10cm]{./figs/ptx.pdf}
|
||||
\caption{An example of Parameterized Transistor (ptx)}
|
||||
\label{fig:ptx_example}
|
||||
\end{figure}
|
||||
|
||||
|
||||
|
||||
\subsection{Parameterized Inverter}
|
||||
\label{sec:pinv}
|
||||
|
||||
The parameterized inverter (\verb|pinv|) class generated an inverter
|
||||
of a specified size/strength and height. The \verb|pinv| is
|
||||
constructed as follows:
|
||||
\begin{verbatim}
|
||||
def __init__(self, cell_name, size, beta=tech.[pinv.beta],
|
||||
cell_size=tech.cell[height])
|
||||
\end{verbatim}
|
||||
|
||||
The parameterized inverter can provide significant drive strength
|
||||
while adhering to physical cell size limitations. That is achieved by
|
||||
having many small transistors connected in parallel, thus the height
|
||||
of the inverter cell can be manipulated without the affecting the
|
||||
drive strength. The NMOS size is an input parameter, and the PMOS size
|
||||
will be determined by $beta*NMOS\_size$, where beta is the ratio of
|
||||
the PMOS channel width to the NMOS channel width. The following code
|
||||
instatiates the \verb|pinv| instance seen in Figure~\ref{fig:pinv}.
|
||||
\begin{verbatim}
|
||||
a=pinv.pinv(cell_name="pinv",size=tech.drc["minwidth_tx"]*8)
|
||||
\end{verbatim}
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[width=10cm]{./figs/pinv.pdf}
|
||||
\caption{An example of Parameterized Inverter(pinv)}
|
||||
\label{fig:pinv}
|
||||
\end{figure}
|
||||
|
||||
|
||||
The \verb|pinv| parameters are explained in Table~\ref{table:pinv_params}.
|
||||
\begin{table}[h!]
|
||||
\begin{center}
|
||||
\begin{tabular}{| l | c |}
|
||||
\hline
|
||||
Parameter & Explanation \\ \hline
|
||||
\verb|size| & The logic size of the transistor of the nmos in the pinv \\ \hline
|
||||
\verb|beta| = tech.[pinv.beta] & Ratio of pmos channel width to nmos channel width. \\ \hline
|
||||
\verb|cell_size| = tech.cell[height] & physical dimension of cell height. \\
|
||||
\hline
|
||||
\end{tabular}
|
||||
\end{center}
|
||||
\caption{Parameter Explanation of pinv}
|
||||
\label{table:pinv_params}
|
||||
\end{table}
|
||||
|
||||
|
||||
|
||||
\subsection{Parameterized NAND2}
|
||||
\label{sec:nand2}
|
||||
|
||||
The parameterized nand2 (\verb|nand_2|) class generated a 2-input nand gate
|
||||
of a specified size/strength and height. The \verb|nand_2| is
|
||||
constructed as follows:
|
||||
\begin{verbatim}
|
||||
def __init__(self, name, nmos_width, height=tech.cell_6t[height])
|
||||
\end{verbatim}
|
||||
|
||||
The NMOS size is an input parameter, and the PMOS size
|
||||
will be equal to NMOS to have the equal rising and falling for output.
|
||||
The following code instatiates the \verb|nand_2| instance seen in Figure~\ref{fig:nand2}.
|
||||
\begin{verbatim}
|
||||
a=nand_2.nand_2(name="nand2", nmos_width=2*tech.drc["minwidth_tx"],
|
||||
height=tech.cell_6t["height"])
|
||||
\end{verbatim}
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[width=10cm]{./figs/nand2.pdf}
|
||||
\caption{An example of Parameterized NAND2(nand\_2)}
|
||||
\label{fig:nand2}
|
||||
\end{figure}
|
||||
|
||||
|
||||
The \verb|nand_2| parameters are explained in Table~\ref{table:nand2_params}.
|
||||
\begin{table}[h!]
|
||||
\begin{center}
|
||||
\begin{tabular}{| l | c |}
|
||||
\hline
|
||||
Parameter & Explanation \\ \hline
|
||||
\verb|nmos_width| & The logic size of the transistor of the nmos in the nand2 \\ \hline
|
||||
\verb|height| = tech.cell\_6t[height] & physical dimension of cell height. \\
|
||||
\hline
|
||||
\end{tabular}
|
||||
\end{center}
|
||||
\caption{Parameter Explanation of nand2}
|
||||
\label{table:nand2_params}
|
||||
\end{table}
|
||||
|
||||
|
||||
|
||||
\subsection{Parameterized NAND3}
|
||||
\label{sec:nand3}
|
||||
|
||||
The parameterized nand3 (\verb|nand_3|) class generated a 3-input nand gate
|
||||
of a specified size/strength and height. The \verb|nand_3| is
|
||||
constructed as follows:
|
||||
\begin{verbatim}
|
||||
def __init__(self, name, nmos_width, height=tech.cell_6t[height])
|
||||
\end{verbatim}
|
||||
The NMOS size is an input parameter, and the PMOS size
|
||||
will be equal to $2/3$ NMOS size to have the equal rising and falling for output.
|
||||
The following code instatiates the \verb|nand_3| instance seen in Figure~\ref{fig:nand3}.
|
||||
\begin{verbatim}
|
||||
a=nand_3.nand_3(name="nand3", nmos_width=3*tech.drc["minwidth_tx"],
|
||||
height=tech.cell_6t["height"])
|
||||
\end{verbatim}
|
||||
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[width=10cm]{./figs/nand3.pdf}
|
||||
\caption{An example of Parameterized NAND3(nand\_3)}
|
||||
\label{fig:nand3}
|
||||
\end{figure}
|
||||
|
||||
The \verb|nand_3| parameters are explained in Table~\ref{table:nand3_params}.
|
||||
\begin{table}[h!]
|
||||
\begin{center}
|
||||
\begin{tabular}{| l | c |}
|
||||
\hline
|
||||
Parameter & Explanation \\ \hline
|
||||
\verb|nmos_width| & The logic size of the transistor of the nmos in the nand3 \\ \hline
|
||||
\verb|height| = tech.cell\_6t[height] & physical dimension of cell height. \\
|
||||
\hline
|
||||
\end{tabular}
|
||||
\end{center}
|
||||
\caption{Parameter Explanation of nand3}
|
||||
\label{table:nand3_params}
|
||||
\end{table}
|
||||
|
||||
|
||||
\subsection{Parameterized NOR2}
|
||||
\label{sec:nor2}
|
||||
|
||||
The parameterized nor2 (\verb|nor_2|) class generated a 2-input nor gate
|
||||
of a specified size/strength and height. The \verb|nor_2| is
|
||||
constructed as follows:
|
||||
\begin{verbatim}
|
||||
def __init__(self, name, nmos_width, height=tech.cell_6t[height])
|
||||
\end{verbatim}
|
||||
The NMOS size is an input parameter, and the PMOS size
|
||||
will be equal to $2$ NMOS size to have the equal rising and falling for output.
|
||||
The following code instatiates the \verb|nor_2| instance seen in Figure~\ref{fig:nor2}.
|
||||
\begin{verbatim}
|
||||
a=nor_2.nor_2(name="nor2", nmos_width=2*tech.drc["minwidth_tx"],
|
||||
height=tech.cell_6t["height"])
|
||||
\end{verbatim}
|
||||
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[width=10cm]{./figs/nor2.pdf}
|
||||
\caption{An example of Parameterized NOR2(nor\_2)}
|
||||
\label{fig:nor2}
|
||||
\end{figure}
|
||||
|
||||
The \verb|nor_2| parameters are explained in Table~\ref{table:nor2_params}.
|
||||
\begin{table}[h!]
|
||||
\begin{center}
|
||||
\begin{tabular}{| l | c |}
|
||||
\hline
|
||||
Parameter & Explanation \\ \hline
|
||||
\verb|nmos_width| & The logic size of the transistor of the nmos in the nor2 \\ \hline
|
||||
\verb|height| = tech.cell\_6t[height] & physical dimension of cell height. \\
|
||||
\hline
|
||||
\end{tabular}
|
||||
\end{center}
|
||||
\caption{Parameter Explanation of nor2}
|
||||
\label{table:nor2_params}
|
||||
\end{table}
|
||||
|
||||
|
||||
|
||||
\subsection{Path and Wire}
|
||||
\label{sec:path and wire}
|
||||
OpenRam provides two routing classes in custom layout design.
|
||||
Both Path and wire class will take a set of coordinates connect those points
|
||||
with rectilinear metal connection.
|
||||
|
||||
The difference is that path only use the same layers for both vertical and
|
||||
horizontal connection while wire will use two different adjacent metal layers.
|
||||
The this example will construct a metal1 layer path
|
||||
\begin{verbatim}
|
||||
layer_stack = ("metal1")
|
||||
position_list = [(0,0), (0,3), (1,3), (1,1), (4,3)]
|
||||
w=path.path(layer_stack,position_list)
|
||||
\end{verbatim}
|
||||
and This exmaple will construct a wire using metal1 for vertical connection and metal2 for
|
||||
horizontal connection:
|
||||
\begin{verbatim}
|
||||
layer_stack = ("metal1","via1","metal2")
|
||||
position_list = [(0,0), (0,3), (1,3), (1,1), (4,3)]
|
||||
w=wire.wire(layer_stack,position_list)
|
||||
\end{verbatim}
|
||||
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
\section{Porting to a new Technologies}
|
||||
\label{sec:porting}
|
||||
|
||||
The folllowing sub-directories and files should be added to your new technology directory:
|
||||
\begin{itemize}
|
||||
\item \verb|/sp_lib| - spice netlists for library cells
|
||||
\item \verb|/gds_lib| - GDSII files for the library cell
|
||||
\item \verb|layers.map| - layer/purpose pair map from the technology
|
||||
\item \verb|/tech| - contains tech parameters, layers, and portation functions.
|
||||
\end{itemize}
|
||||
|
||||
\subsection{The GDS and Spice Libraries}
|
||||
|
||||
The GDS and Spice libraries , \verb|\gds_lib| and \verb|\sp_lib|, should contain the GDSII layouts and spice netlists for each of the library cells in your SRAM design. For the FreePDK45 technology, library cells for the 6T Cell, Sense Amp, Write Driver, Flip-Flops, and Control Logic are provided. To reiterate: all layouts must be exported in the GDSII file format. The following commands can be used to stream GDSII files into or out of Cadence Virtuoso:
|
||||
\begin{verbatim}
|
||||
To stream out of Cadence:
|
||||
|
||||
strmout -layerMap ../sram_lib/layers.map
|
||||
-library sram -topCell $i -view layout
|
||||
-strmFile ../sram_lib/$i.gds
|
||||
|
||||
To stream a layout back into Cadence:
|
||||
|
||||
strmin -layerMap ../sram_lib/layers.map
|
||||
-attachTechFileOfLib NCSU_TechLib_FreePDK45
|
||||
-library sram_4_32 -strmFile sram_4_32.gds
|
||||
\end{verbatim}
|
||||
When you import a gds file, make sure to attach the correct tech lib or you will get incorrect layers in the resulting library.
|
||||
|
||||
|
||||
|
||||
\subsection{Technology Directory}
|
||||
\label{sec:tech}
|
||||
|
||||
Inside of the \verb|/tech| directory should be the Python classes for \verb|tech.py|,
|
||||
\verb|ptx_port.py|, and any other portation functions. The \verb|tech.py| file is very important and should contain the following:
|
||||
\begin{itemize}
|
||||
\item Layer Number/Name - GDSII files only contain layer numbers and it can be difficult to keep track of which layer corresponds to what number. In OpenRAM code, layers are referred to by name and \verb|tech.py| maps the layer names that we use to the layer numbers in the \verb|layer.map| This will associate the layer name used in OpenRAM program with the number used in the layer.map, thus the code in complier won’t need to be changed for each technology.
|
||||
\item Tech Parameters - important rules from the DRC rule deck(such as layer spacing and minimum sizes) should be included here. Please refer to the rules that are included in \verb|tech.py| to get a better idea as to what is important.
|
||||
\item Cell Sizes and Pin Offsets - The \verb|cell_size()| and \verb|pin_finder()| functions should be used to populate this class with the various cell sizes and pin locations in your library cells. These functions are relatively slow because they must traverse the every shape in the entire hierarchy of a design. Due to this fact, these function are not invoked each time the compiler is run, it should be run one time or if any changes have been made to library cells. This sizes and pin locations gathered are needed to generate the dynamic cells and perform routing at the various levels of the hierarchy. It is suggested that boundary boxes on a specific layer should be added to define the cell size.
|
||||
\end{itemize}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,230 @@
|
|||
\section{Timing and Control Logic}
|
||||
\label{timing}
|
||||
|
||||
This section outlines the necessary signals, timing considerations, and control circuitry for a synchronous SRAM.
|
||||
|
||||
\subsection{Signals}
|
||||
\label{signals}
|
||||
Top-Level Signals:
|
||||
\begin{itemize}
|
||||
\setlength{\itemsep}{0pt}
|
||||
\item ADDR - address bus.
|
||||
\item DATA - bi-directional data bus.
|
||||
\item CLK - the global clock.
|
||||
\item OEb - active low output enable.
|
||||
\item CSb - active low chip select.
|
||||
\item WEb - active low write enable.
|
||||
\end{itemize}
|
||||
|
||||
Internal Signals:
|
||||
\begin{itemize}
|
||||
\setlength{\itemsep}{0pt}
|
||||
\item clk\_bar - enables the precharge unit.
|
||||
\item s\_en - enables the sense amp during a read operation.
|
||||
\item w\_en - enable the write driver during a write operation.
|
||||
\item tri\_en and tri\_en\_bar - enable the data input tri-gate during a read operation.
|
||||
\end{itemize}
|
||||
|
||||
\subsection{Timing Considerations}
|
||||
\label{timing_params}
|
||||
|
||||
The main timing considerations for an SRAM are:
|
||||
\begin{itemize}
|
||||
\setlength{\itemsep}{0pt}
|
||||
\item Setup Time - time an input needs to be stable before the positive/negative clock edge.
|
||||
\item Hold Time - time an input needs to stay valid after the positive/negative clock edge.
|
||||
\item Minimun Cycle Time - time inbetween subsequent memory operations.
|
||||
\item Memory Read Time - time from positive clock edge until valid data appears on the data bus.
|
||||
\item Memory Write Time - time from negative clock edge until data has been driven into a memory cell.
|
||||
\end{itemize}
|
||||
|
||||
\subsection{SRAM Operation}
|
||||
\label{operation}
|
||||
|
||||
\begin{figure}[tb]
|
||||
\centering
|
||||
\includegraphics[scale=.85]{./figs/timing_read.pdf}
|
||||
\caption{Timing diagram for read operation showing the setup, hold, and read times.}
|
||||
\label{fig:read}
|
||||
\end{figure}
|
||||
|
||||
Read Operation:
|
||||
\begin{enumerate}
|
||||
\setlength{\itemsep}{0pt}
|
||||
\item Before the clock transition (low to high) that initiates the read operation:
|
||||
\begin{enumerate}
|
||||
\item The chip must be selected (CSb low).
|
||||
\item The WEb must be high (read).
|
||||
\item The row and column addresses must be applied to the address input pins (ADDR).
|
||||
\item OEb should be selected (OEb low).
|
||||
\end{enumerate}
|
||||
\item On the rising edge of the clock (CLK):
|
||||
\begin{enumerate}
|
||||
\item The control signals and address are latched into flip-flops and the read cycle begins.
|
||||
\item The precharging of the bit lines starts.
|
||||
\item The address bits become available for the decoder and column mux, which select the row and columns that we want to read from.
|
||||
\end{enumerate}
|
||||
\item On the falling edge of the clock (CLK):
|
||||
\begin{enumerate}
|
||||
\item Word line has been asserted, the value stored in the memory cells pulls down one of the bitlines (BL if a 0 is stored, BL\_bar if a 1 is stored).
|
||||
\item s\_en enables the sense amplifier which senses the voltage difference of the bit lines, produces the output and keeps the value in its latch circuitry.
|
||||
\item Tri-gate enables and put the output data on data bus. Data remains valid on the data bus for a complete clock cycle.
|
||||
\end{enumerate}
|
||||
\end{enumerate}
|
||||
|
||||
|
||||
\begin{figure}[tb]
|
||||
\centering
|
||||
\includegraphics[scale=.9]{./figs/timing_write.pdf}
|
||||
\caption{Timing diagram for write operation showing the setup, hold, and write times.}
|
||||
\label{fig:write}
|
||||
\end{figure}
|
||||
|
||||
|
||||
|
||||
Write Operation:
|
||||
\begin{enumerate}
|
||||
\setlength{\itemsep}{0pt}
|
||||
\item Before the clock transition (low to high) that initiates the write operation:
|
||||
\begin{enumerate}
|
||||
\item The chip must be selected (CSb low).
|
||||
\item The WEb must be low to enable the data input tristates.
|
||||
\item The row and column addresses must be applied to the address input pins (ADDR).
|
||||
\item OEb must be high (no output is available and sense amp disabled)
|
||||
\end{enumerate}
|
||||
\item On the rising edge of the clock (CLK):
|
||||
\begin{enumerate}
|
||||
\item OEb stays high (no output is available and sense amp disabled)
|
||||
\item The inputs addresses are latched into flip-flops, precharging starts, and the write operation begins.
|
||||
\item The address bits become available for the decoder and column mux, which select the row and columns that we want to write to.
|
||||
\end{enumerate}
|
||||
\item On the falling edge of the clock (CLK):
|
||||
\begin{enumerate}
|
||||
\item The data to be written must be applied to DATA and latched into flip-flops.
|
||||
\item w\_en enables the write driver, which drives the data input through the column mux and into the selected memory cells. The write delay is the time from the negative clock edge until the data value is stored in the memory cell on node X.
|
||||
\end{enumerate}
|
||||
\end{enumerate}
|
||||
|
||||
|
||||
\subsection{Zero Bus Turnaround (ZBT)}
|
||||
\label{sec:ZBT}
|
||||
|
||||
In timing of SRAM, during a read operation, data should be available after the clock edge while
|
||||
during a write, data should be set up before the clock edge. Due to this issue a wait state (dead cycle) is neccessary when SRAM switches
|
||||
from read mode to write mode.
|
||||
To avoide dead cycles in SRAM timing which slow down the operation and degrade the performance of SRAM, Zero Bus turnaround (ZBT) technique is used.
|
||||
Using ZBT, during a write, data is set up after positive clock edge and before negative clock edge and input data is latched in negative edge flip-flops.
|
||||
Using ZBT, we will get a higher memory throughput and there is no waite states.
|
||||
Figure~\ref{fig:write} shows the correct timing for input signals during the write opertion to avoide the wait states.
|
||||
Figure~\ref{fig:ZBT} shows how a write cycle is followed by a read cycle with no wait state through using ZBT.
|
||||
Input address bits should be ready before positive edge to be loaded to positive edge flip-flops. Output data is ready to be loaded to data-bus during seconde half of cycle (after negative edge of clock) and
|
||||
input data should be ready before negative edge of clock to be loaded in negative edge flip-flops.
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=0.9]{./figs/ZBT.pdf}
|
||||
\caption{(a) Zero Bus Turnaround timing.}
|
||||
\label{fig:ZBT}
|
||||
\end{figure}
|
||||
|
||||
|
||||
\subsection{Control Logic}
|
||||
\label{sec:control}
|
||||
|
||||
|
||||
|
||||
The control circuitry ensures that the SRAM operates as intended during a read or write cycle by enabling the necessary structures in the SRAM.
|
||||
As shown in Figure~\ref{fig:control}, the control logic takes three active low signals as inputs: chip select bar ($CSb$),
|
||||
output enable bar ($OEb$), and write enable bar ($WEb$). $CSb$ enables the entire SRAM chip.
|
||||
When $CSb$ is low, the appropriate control signals are generated and sent to the architecture blocks.
|
||||
Conversely, if $CSb$ is high then no control signals are generated and SRAM is turned off or disabled.
|
||||
The $OEb$ signal signifies a read operation; while it is low the value seen on the data bus will be an output from the memory.
|
||||
Similarly, the $WEb$ signal signifies a write operation. All of the input control signals are latched with master-slave flip-flops,
|
||||
ensuring that the control signal stays valid for the entire operation cycle. The control signal flip-flops use the normal clock to generate
|
||||
local signals used to enable or disable structures based on the operation. Address flip-flops are combined with global clock as well.
|
||||
In a standard write SRAM, switching from a read to a write operation results in a dead cycle. To avoid this dead cycle, Data flip-flops are
|
||||
latched with $clk\_bar$ in order to have a Zero Bus Turnaround (ZBT) memory. More details on ZBT timing are outlined in Section~\ref{sec:ZBT}.
|
||||
After all control signals are latched, they are ANDED with the $clk\_bar$ because the read/write circuitries should only be enabled after the precharging of
|
||||
the bitlines had ended on the negative edge of the clock. The $w\_en$ signal enables the write driver during a write to the memory .The $s\_en$ signal
|
||||
is generated using a Replica Bitline ($RBL$) to enable the sense amplifier during a read operation. Details on $RBL$ architecture are outlined in section~\ref{sec:RBL}.
|
||||
$tri\_en$ and $tri\_en\_bar$ enable the tristates during read in order to drive the outputs onto the data bus.
|
||||
Table~\ref{table:control} shows the truth table for the control logic. The $s\_en$ signal to enable the sense amplifier is
|
||||
true when $(CS . OE . Clk\_bar)$ is true. Similarly, write driver enable signal, $w\_en$, is true when $(CS . WE . clk\_bar)$ is true.
|
||||
$tri\_en$ and $tri\_en\_bar$ are true when $\neg(OEb\_bar | clk)$ and $\neg(OEb . clk\_bar)$ are true, respectively.
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=1]{./figs/control_logic.pdf}
|
||||
\caption{(a) Control Logic diagram and (b) Replica Bitline Schematic.}
|
||||
\label{fig:control}
|
||||
\end{figure}
|
||||
|
||||
|
||||
|
||||
\begin{table}[h!]
|
||||
\begin{center}
|
||||
\begin{tabular}{| c | c | c | c | c | c | c |}
|
||||
\hline
|
||||
Operation & \multicolumn{3}{|c|}{Inputs} & \multicolumn{3}{|c|}{Outputs}\\ \hline
|
||||
& CSb & OEb & WEb & s\_en & w\_en & tri\_en\\ \hline
|
||||
READ & 0 & 0 & 1 & 1 & 0 & 1\\ \hline
|
||||
WRITE & 0 & 1 & 0 & 0 & 1 & 0\\ \hline
|
||||
\end{tabular}
|
||||
\end{center}
|
||||
\caption{Generation of control signals.}
|
||||
\label{table:control}
|
||||
\end{table}
|
||||
|
||||
|
||||
\subsection{Replica Bitline Delay}
|
||||
\label{sec:RBL}
|
||||
|
||||
|
||||
|
||||
In SRAM read operation, discharging the bitline is the most time consuming procedure.
|
||||
Generally, sense amplifier amplifies the small voltage difference on the bitlines at the proper sense timing,
|
||||
to realize high-speed operation. Therefore, the timing for sense amplifier ($s\_en$) is extremely important for the high speed and low power SRAM.
|
||||
If the $s\_en$ arrives early before the bitline difference reaches the sense amplifier input transistors offset voltage,
|
||||
a read functional failure may occur. Contrarily, a late-arrived $s\_en$ would consume more unnecessary time, thereby wasting the power.
|
||||
The conventional way of generating $s\_en$ signal is to use a replica bitline ($RBL$). $RBL$ as shown in ~\ref{fig:RBL} consists of a column of SRAM cells (dummy cells),
|
||||
which track the random process variation in array. $RBL$ is presented for matching the delay of the activation of the
|
||||
sense amplifier with the delay of the propagation of the required voltage swing at the bitlines.
|
||||
In $RBL$ technique, delay driven memory cell in control path is same as read path. Therefore the
|
||||
delay shift of control path according to the Process, Voltage and Temperature (PVT) variation is same ratio as that of read path.
|
||||
The $RBL$ technique attains self-timed tracking with optimal $s\_en$ timing according to PVT variation.
|
||||
Using replica circuits, the variation on the delay of the sense amp activation and bitline swing is minimized.
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=.9]{./figs/replica_bitline.pdf}
|
||||
\caption{Replica Bitline Schematic}
|
||||
\label{fig:RBL}
|
||||
\end{figure}
|
||||
|
||||
$RBL$ technique uses a Replica Cell ($RC$) driving a short bitline signal. The short bitline\'s capacitance is set to be a
|
||||
fraction of the main bitline capacitance (e.g. one tenth). This fraction is determined by the required bitline swing
|
||||
(bitline voltages larger than offset voltage at input transistors of sense amplifier) for proper sensing. So in SRAM, an
|
||||
extra column block is converted into the replica column whose capacitance is the desired fraction of the main bitline.
|
||||
Therefore, its capacitance ratio to the main bitlines is set purely by the ratio of the geometric lengths (e.g. one tenth).
|
||||
The $RC$ is hard wired to store a zero such that it will discharge the $RBL$ once it is accessed.
|
||||
Because of its similarity with the actual memory cell (in terms of design and fabrication) the delay of $RBL$ tracks the delay of
|
||||
real bitlines very well and can be made roughly equal. Figure ~\ref{fig:RC} shows the schematic of the 6T replica cell.
|
||||
The timing for $s\_en$ is generated as follows. At first, the $RBL$ and the normal bitlines are precharged to VDD.
|
||||
Next, selected memory cells and $RC$ are activated. $RC$ draws the current from the $RBL$ and normal bitlines are
|
||||
also discharged through the accessed cell. Discharged swing on $RBL$ is inverted and then buffered to generate the signal to enable the sense amplifier.
|
||||
|
||||
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[scale=1]{./figs/replica_cell.pdf}
|
||||
\caption{Replica Bitline Schematic}
|
||||
\label{fig:RC}
|
||||
\end{figure}
|
||||
|
||||
|
||||
|
||||
|
||||
\subsection{Timing and Power Characterizer}
|
||||
\label{characterizer}
|
||||
|
||||
The section will provide an explanantion of the characterizer that will generete spice stimuli for the top-level SRAM and perform spice timing simulations to determine the memory setup\&hold times, the write delay, and read delay. It will also provide a spice power estimate.
|
||||
|
||||
|
|
@ -0,0 +1,100 @@
|
|||
\section{Unit Tests}
|
||||
\label{sec:unittests}
|
||||
|
||||
OpenRAM comes with a unit testing framework based on the Python
|
||||
unittest framework. Since OpenRAM is technology independent, these
|
||||
unit tests can be run in any technology to verify that the technology
|
||||
is properly ported. By default, FreePDK45 is supported.
|
||||
|
||||
The unit tests consist of the following tests that test each module/sub-block of OpenRAM:
|
||||
\begin{itemize}
|
||||
\item \verb|00_code_format_check__test.py| - Checks the format of the codes. returns error if finds $TAB$ in codes.
|
||||
\item \verb|01_library_drc_test.py| - DRC of library cells in technology \verb|gds_lib|
|
||||
\item \verb|02_library_lvs_test.py| - LVS of library cells in technology \verb|gds_lib| and \verb|sp_lib| %(names must correspond with different extensions)
|
||||
\item \verb|03_contact_test.py| - Test contacts/vias of different layers
|
||||
\item \verb|03_path_test.py| - Test different types of paths based off of the wire module
|
||||
\item \verb|03_ptx_test.py| - Test various sizes/fingers of PMOS and NMOS parameterized transistors
|
||||
\item \verb|03_wire_test.py| - Test different types of wires with different layers
|
||||
\item \verb|04_pinv_test.py| - Test various sizes of parameterized inverter
|
||||
\item \verb|04_nand_2_test.py| - Test various sizes of parameterized nand2
|
||||
\item \verb|04_nand_3_test.py| - Test various sizes of parameterized nand3
|
||||
\item \verb|04_nor_2_test.py| - Test various sizes of parameterized nor2
|
||||
\item \verb|04_wordline_driver_test.py| - Test a wordline\_driver array.
|
||||
\item \verb|05_array_test.py| - Test a small bit-cell array
|
||||
\item \verb|06_nand_decoder_test.py| - Test a dynamic NAND address decoder
|
||||
\item \verb|06_hierarchical_decoder_test.py| - Test a dynamic hierarchical address decoder
|
||||
\item \verb|07_tree_column_mux_test.py| - Test a small tree column mux.
|
||||
\item \verb|07_single_level_column_mux_test.py| - Test a small single level column mux.
|
||||
\item \verb|08_precharge_test.py| - Test a dynamically generated precharge array
|
||||
\item \verb|09_sense_amp_test.py| - Test a sense amplifier array
|
||||
\item \verb|10_write_driver_test.py| - Test a write driver array
|
||||
\item \verb|11_ms_flop_array_test.py| - Test a MS\_FF array
|
||||
\item \verb|13_control_logic_test.py| - Test the control logic module
|
||||
\item \verb|14_delay_chain_test.py| - Test a delay chain array
|
||||
\item \verb|15_tri_gate_array_test.py| - Test a tri-gate array
|
||||
\item \verb|16_replica_bitline_test.py| - Test a replica bitline
|
||||
\item \verb|19_bank_test.py| - Test a bank
|
||||
\item \verb|20_sram_test.py| - Test a complete small SRAM
|
||||
\item \verb|21_timing_sram_test.py| - Test timing of SRAM
|
||||
\item \verb|22_sram_func_test.py| - Test functionality of SRAM
|
||||
\end {itemize}
|
||||
|
||||
Each unit test instantiates a small component and performs DRC/LVS. Automatic DRC/LVS inside OpenRAM is disabled so that Python unittest assertions can be used to track failures, errors, and successful tests as follows:
|
||||
\begin{verbatim}
|
||||
self.assertFalse(calibre.run_drc(a.cell_name,tempgds))
|
||||
self.assertFalse(calibre.run_lvs(a.cell_name,tempgds,tempspice))
|
||||
\end{verbatim}
|
||||
Each of these assertions will trigger a test failure. If there are
|
||||
problems with interpreting modified code due to syntax errors, the
|
||||
unit test framework will not capture this and it will result in an
|
||||
Error.
|
||||
|
||||
\subsection{Usage}
|
||||
|
||||
A regression script is provided to check all of the unit tests by running:
|
||||
\begin{verbatim}
|
||||
python tests/regress.py
|
||||
\end{verbatim}
|
||||
from the compiler directory located at: "OpenRAM/trunk/compiler/". Each individual test can be run by running:
|
||||
\begin{verbatim}
|
||||
python tests/{unit-test file}
|
||||
e.g. python tests/05_array_test.py
|
||||
\end{verbatim}
|
||||
from the compiler directory located at: "openram/trunk/compiler/". As an example, the unit tests all
|
||||
complete and provide the following output except for the final
|
||||
\verb|20_sram_test| which has 2 DRC violations:
|
||||
\begin{verbatim}
|
||||
[trunk/compiler]$ python tests/regress.py
|
||||
runTest (01_library_drc_test.library_drc_test) ... ok
|
||||
runTest (02_library_lvs_test.library_lvs_test) ... ok
|
||||
runTest (03_contact_test.contact_test) ... ok
|
||||
runTest (03_path_test.path_test) ... ok
|
||||
runTest (03_ptx_test.ptx_test) ... ok
|
||||
runTest (03_wire_test.wire_test) ... ok
|
||||
runTest (04_pinv_test.pinv_test) ... ok
|
||||
runTest (04_nand_2_test.nand_2_test) ... ok
|
||||
runTest (04_nand_3_test.nand_3_test) ... ok
|
||||
runTest (04_nor_2_test.nor_2_test) ... ok
|
||||
runTest (04_wordline_driver_test.wordline_driver_test) ... ok
|
||||
runTest (05_array_test.array_test) ... ok
|
||||
runTest (06_hierdecoder_test.hierdecoder_test) ... ok
|
||||
runTest (07_single_level_column_mux_test.single_level_column_mux_test) ... ok
|
||||
runTest (08_precharge_test.precharge_test) ... ok
|
||||
runTest (09_sense_amp_test.sense_amp_test) ... ok
|
||||
runTest (10_write_driver_test.write_driver_test) ... ok
|
||||
runTest (11_ms_flop_array_test.ms_flop_test) ... ok
|
||||
runTest (13_control_logic_test.control_logic_test) ... ok
|
||||
runTest (14_delay_chain_test.delay_chain_test) ... ok
|
||||
runTest (15_tri_gate_array_test.tri_gate_array_test) ... ok
|
||||
runTest (19_bank_test.bank_test) ... ok
|
||||
runTest (20_sram_test.sram_test) ... ok
|
||||
\end{verbatim}
|
||||
|
||||
If there are any DRC/LVS violations during the test, all the summary,output,and error files
|
||||
will be generated in the technology directory's "openram\_temp" folder. One would view those
|
||||
files to determine the cause of the DRC/LVS violations.
|
||||
|
||||
More information on the Python unittest framework is available at\\
|
||||
\begin{center}
|
||||
\url{http://docs.python.org/2/library/unittest.html}.
|
||||
\end{center}
|
||||