mirror of https://github.com/YosysHQ/yosys.git
68 lines
2.3 KiB
TeX
68 lines
2.3 KiB
TeX
|
\documentclass[12pt,tikz]{standalone}
|
||
|
\pdfinfoomitdate 1
|
||
|
\pdfsuppressptexinfo 1
|
||
|
\pdftrailerid{}
|
||
|
\usepackage[utf8]{inputenc}
|
||
|
\usepackage{amsmath}
|
||
|
\usepackage{pgfplots}
|
||
|
\usepackage{tikz}
|
||
|
\usetikzlibrary{shapes.geometric}
|
||
|
\pagestyle{empty}
|
||
|
|
||
|
\begin{document}
|
||
|
\begin{tikzpicture}
|
||
|
\tikzstyle{process} = [draw, fill=green!10, rectangle, minimum height=3em, minimum width=10em, node distance=5em, font={\ttfamily}]
|
||
|
\tikzstyle{data} = [draw, fill=blue!10, ellipse, minimum height=3em, minimum width=7em, node distance=5em, font={\ttfamily}]
|
||
|
|
||
|
\node[data] (n1) {Verilog Source};
|
||
|
\node[process] (n2) [below of=n1] {Verilog Frontend};
|
||
|
\node[data] (n3) [below of=n2] {AST};
|
||
|
\node[process] (n4) [below of=n3] {AST Frontend};
|
||
|
\node[data] (n5) [below of=n4] {RTLIL};
|
||
|
|
||
|
\draw[-latex] (n1) -- (n2);
|
||
|
\draw[-latex] (n2) -- (n3);
|
||
|
\draw[-latex] (n3) -- (n4);
|
||
|
\draw[-latex] (n4) -- (n5);
|
||
|
|
||
|
\tikzstyle{details} = [draw, fill=yellow!5, rectangle, node distance=6cm, font={\ttfamily}]
|
||
|
|
||
|
\node[details] (d1) [right of=n2] {\begin{minipage}{5cm}
|
||
|
\hfil
|
||
|
\begin{tikzpicture}
|
||
|
\tikzstyle{subproc} = [draw, fill=green!10, rectangle, minimum height=2em, minimum width=10em, node distance=3em, font={\ttfamily}]
|
||
|
\node (s0) {};
|
||
|
\node[subproc] (s1) [below of=s0] {Preprocessor};
|
||
|
\node[subproc] (s2) [below of=s1] {Lexer};
|
||
|
\node[subproc] (s3) [below of=s2] {Parser};
|
||
|
\node[node distance=3em] (s4) [below of=s3] {};
|
||
|
\draw[-latex] (s0) -- (s1);
|
||
|
\draw[-latex] (s1) -- (s2);
|
||
|
\draw[-latex] (s2) -- (s3);
|
||
|
\draw[-latex] (s3) -- (s4);
|
||
|
\end{tikzpicture}
|
||
|
\end{minipage}};
|
||
|
|
||
|
\draw[dashed] (n2.north east) -- (d1.north west);
|
||
|
\draw[dashed] (n2.south east) -- (d1.south west);
|
||
|
|
||
|
\node[details] (d2) [right of=n4] {\begin{minipage}{5cm}
|
||
|
\hfil
|
||
|
\begin{tikzpicture}
|
||
|
\tikzstyle{subproc} = [draw, fill=green!10, rectangle, minimum height=2em, minimum width=10em, node distance=3em, font={\ttfamily}]
|
||
|
\node (s0) {};
|
||
|
\node[subproc] (s1) [below of=s0] {Simplifier};
|
||
|
\node[subproc] (s2) [below of=s1] {RTLIL Generator};
|
||
|
\node[node distance=3em] (s3) [below of=s2] {};
|
||
|
\draw[-latex] (s0) -- (s1);
|
||
|
\draw[-latex] (s1) -- (s2);
|
||
|
\draw[-latex] (s2) -- (s3);
|
||
|
\end{tikzpicture}
|
||
|
\end{minipage}};
|
||
|
|
||
|
\draw[dashed] (n4.north east) -- (d2.north west);
|
||
|
\draw[dashed] (n4.south east) -- (d2.south west);
|
||
|
|
||
|
\end{tikzpicture}
|
||
|
\end{document}
|