yosys/manual/presentation.tex

163 lines
4.6 KiB
TeX
Raw Normal View History

2014-01-27 10:08:19 -06:00
\documentclass{beamer}
2014-02-05 13:06:34 -06:00
\hypersetup{bookmarksdepth=5}
2014-01-27 10:08:19 -06:00
2014-01-27 23:51:50 -06:00
\usepackage[T1]{fontenc} % required for luximono!
\usepackage{lmodern}
\usepackage[scaled=0.8]{luximono} % typewriter font with bold face
% To install the luximono font files:
% getnonfreefonts-sys --all or
% getnonfreefonts-sys luximono
%
% when there are trouble you might need to:
% - Create /etc/texmf/updmap.d/99local-luximono.cfg
% containing the single line: Map ul9.map
% - Run update-updmap followed by mktexlsr and updmap-sys
%
% This commands must be executed as root with a root environment
% (i.e. run "sudo su" and then execute the commands in the root
% shell, don't just prefix the commands with "sudo").
2015-08-14 03:56:05 -05:00
% formats the text according the set language
2014-01-27 23:51:50 -06:00
\usepackage[english]{babel}
\usepackage{amsmath}
\usepackage{multirow}
\usepackage{booktabs}
\usepackage{listings}
2014-01-29 05:15:38 -06:00
\usepackage{setspace}
2014-01-27 23:51:50 -06:00
\usepackage{skull}
2014-01-31 05:48:31 -06:00
\usepackage{units}
2014-01-27 23:51:50 -06:00
\usepackage{tikz}
\usetikzlibrary{calc}
\usetikzlibrary{arrows}
\usetikzlibrary{scopes}
\usetikzlibrary{through}
\usetikzlibrary{shapes.geometric}
\lstset{basicstyle=\ttfamily}
\def\B#1{{\tt\textbackslash{}#1}}
\def\C#1{\lstinline[language=C++]{#1}}
\def\V#1{\lstinline[language=Verilog]{#1}}
\lstdefinelanguage{liberty}{
morecomment=[s]{/*}{*/},
morekeywords={library,cell,area,pin,direction,function,clocked_on,next_state,clock,ff},
morestring=[b]",
}
\lstdefinelanguage{rtlil}{
morecomment=[l]{\#},
morekeywords={module,attribute,parameter,wire,memory,auto,width,offset,size,input,output,inout,cell,connect,switch,case,assign,sync,low,high,posedge,negedge,edge,always,update,process,end},
morestring=[b]",
}
2014-02-05 13:06:34 -06:00
\lstdefinelanguage{ys}{
morecomment=[l]{\#},
}
\lstset{
commentstyle=\color{YosysGreen},
}
2014-01-28 13:28:22 -06:00
\newenvironment{boxalertenv}{\begin{altenv}%
{\usebeamertemplate{alerted text begin}\usebeamercolor[fg]{alerted text}\usebeamerfont{alerted text}\setlength{\fboxsep}{1pt}\colorbox{bg}}
{\usebeamertemplate{alerted text end}}{\color{.}}{}}{\end{altenv}}
\newcommand<>{\boxalert}[1]{{%
\begin{boxalertenv}#2{#1}\end{boxalertenv}%
}}
2014-02-05 08:06:13 -06:00
\newcommand{\subsectionpagesuffix}{
\vfill\begin{centering}
{\usebeamerfont{subsection name}\usebeamercolor[fg]{subsection name}of \sectionname~\insertsectionnumber}
\vskip1em\par
\setbeamercolor{graybox}{bg=gray}
\begin{beamercolorbox}[sep=8pt,center]{graybox}
2014-02-05 08:06:13 -06:00
\usebeamerfont{subsection title}\insertsection\par
\end{beamercolorbox}
\end{centering}}
2014-01-27 10:08:19 -06:00
\title{Yosys Open SYnthesis Suite}
\author{Clifford Wolf}
2014-06-26 15:05:39 -05:00
\institute{http://www.clifford.at/yosys/}
2014-01-27 10:08:19 -06:00
2014-01-27 13:42:35 -06:00
\usetheme{Madrid}
\usecolortheme{seagull}
2014-01-27 10:08:19 -06:00
\beamertemplatenavigationsymbolsempty
2014-01-27 13:42:35 -06:00
\definecolor{YosysGreen}{RGB}{85,136,102}
2014-01-28 13:28:22 -06:00
\definecolor{MyBlue}{RGB}{85,130,180}
2014-01-27 13:42:35 -06:00
\setbeamercolor{title}{fg=black,bg=YosysGreen!70}
\setbeamercolor{titlelike}{fg=black,bg=YosysGreen!70}
\setbeamercolor{frametitle}{fg=black,bg=YosysGreen!70}
\setbeamercolor{block title}{fg=black,bg=YosysGreen!70}
\setbeamercolor{item projected}{fg=black,bg=YosysGreen}
2014-01-27 10:08:19 -06:00
\begin{document}
\begin{frame}
\titlepage
\end{frame}
2014-06-29 02:27:03 -05:00
\setcounter{section}{-3}
2014-02-02 06:30:49 -06:00
\section{Abstract}
\begin{frame}{Abstract}
Yosys is the first full-featured open source software for Verilog HDL
synthesis. It supports most of Verilog-2005 and is well tested with
real-world designs from the ASIC and FPGA world.
\bigskip
2014-02-03 17:57:11 -06:00
Learn how to use Yosys to create your own custom synthesis flows and
discover why open source HDL synthesis is important for researchers,
hobbyists, educators and engineers alike.
2014-01-27 23:51:50 -06:00
2014-02-02 06:30:49 -06:00
\bigskip
2014-02-03 17:57:11 -06:00
This presentation covers basic concepts of Yosys, writing synthesis scripts
for a wide range of applications, creating Yosys scripts for various
2015-08-14 03:56:05 -05:00
non-synthesis applications (such as formal equivalence checking) and
2014-02-03 17:57:11 -06:00
writing extensions to Yosys using the C++ API.
2014-02-02 06:30:49 -06:00
\end{frame}
2014-06-29 02:14:49 -05:00
\section{About me}
\begin{frame}{About me}
Hi! I'm Clifford Wolf.
\bigskip
I like writing open source software. For example:
\begin{itemize}
\item Yosys
\item OpenSCAD (now maintained by Marius Kintel)
\item SPL (a not very popular scripting language)
2014-07-01 23:16:31 -05:00
\item EmbedVM (a very simple compiler+vm for 8 bit micros)
2014-11-08 03:59:48 -06:00
\item Lib(X)SVF (a library to play SVF/XSVF files over JTAG)
2014-07-01 23:16:31 -05:00
\item ROCK Linux (discontinued since 2010)
2014-06-29 02:14:49 -05:00
\end{itemize}
\end{frame}
2014-02-02 06:30:49 -06:00
\section{Outline}
2014-01-27 23:51:50 -06:00
\begin{frame}{Outline}
2014-01-27 13:42:35 -06:00
Yosys is an Open Source Verilog synthesis tool, and more.
\bigskip
Outline of this presentation:
\begin{itemize}
\item Introduction to the field and Yosys
2014-01-30 08:25:09 -06:00
\item Yosys by example: synthesis
\item Yosys by example: advanced synthesis
\item Yosys by example: beyond synthesis
2014-06-26 15:05:39 -05:00
\item Writing Yosys extensions in C++
2014-01-27 13:42:35 -06:00
\end{itemize}
\end{frame}
2014-01-27 10:08:19 -06:00
\include{PRESENTATION_Intro}
2014-01-31 05:48:31 -06:00
\include{PRESENTATION_ExSyn}
2014-02-03 09:26:27 -06:00
\include{PRESENTATION_ExAdv}
\include{PRESENTATION_ExOth}
\include{PRESENTATION_Prog}
2014-01-27 10:08:19 -06:00
\end{document}