mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 11:42:30 +00:00 
			
		
		
		
	see also previous commit Also updates `scripting_intro.rst` to use literal includes, and uses individual image outputs to avoid the intermediary `.tex` file to join them all.
		
			
				
	
	
		
			67 lines
		
	
	
	
		
			2.3 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
			
		
		
	
	
			67 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}
 |