Use adapted CAES theme
[matthijs/master-project/haskell-symposium-talk.git] / introduction.lhs
1 %include talk.fmt
2 \section{Introduction}
3 \subsection{What will you see}
4 \frame
5 {
6   \frametitle{What will we see?}
7   \begin{itemize}
8     \item Small tour: what can we describe in \clash{}
9     \item Quick real demo
10   \end{itemize}
11 }
12 \note{Virtuele demo}
13
14 \subsection{What is \texorpdfstring{\clash{}}{CLasH}}
15 \frame
16 {
17   \frametitle{What is \clash{}?}
18   \begin{itemize}
19     \item \clash{}: CAES Language for Hardware Descriptions
20     \item Rapid prototyping language
21     \item Subset of Haskell can be translated to Hardware (VHDL)
22     \item Structural Description of a Mealy Machine
23   \end{itemize}
24 }
25 \note[itemize]
26 {
27 \item Wij zijn wij
28 \item \clash{} voor rapid prototyping
29 \item Subset haskell vertaalbaar
30 \item Mealy machine beschrijving
31 }
32
33 \subsection{Mealy Machine}
34 \frame
35 {
36 \frametitle{Mealy Machine}
37   \begin{figure}
38   \centerline{\includegraphics[width=10cm]{mealymachine}}
39   \label{img:mealymachine}
40   \end{figure}
41 }
42 \note{
43 Voor wie het niet meer weet, dit is een mealy machine
44 }
45
46 \frame
47 {
48 \frametitle{Haskell Description}
49 \begin{code}
50 mealyMachine :: 
51   InputSignals ->
52   {-"{\color<2>[rgb]{1,0,0}"-}State{-"}"-} ->
53   (State, OutputSignals)
54 mealyMachine inputs {-"{\color<2>[rgb]{1,0,0}"-}state{-"}"-} = ({-"{\color<3>[rgb]{1,0,0}"-}new_state{-"}"-}, output)
55   where
56     {-"{\color<3>[rgb]{1,0,0}"-}new_state{-"}"-}   =   logic     {-"{\color<2>[rgb]{1,0,0}"-}state{-"}"-}   input
57     outputs                                         =   logic     {-"{\color<2>[rgb]{1,0,0}"-}state{-"}"-}   input
58 \end{code}
59 }
60 \subsection{Simulation}
61 \frame
62 {
63 \frametitle{Simulating a Mealy Machine}
64 \begin{code}
65 run func {-"{\color<2>[rgb]{1,0,0}"-}state{-"}"-} [] = []
66 run func {-"{\color<2>[rgb]{1,0,0}"-}state{-"}"-} (i:input) = o:out
67   where
68     ({-"{\color<3>[rgb]{1,0,0}"-}state'{-"}"-}, o) = func {-"{\color<2>[rgb]{1,0,0}"-}state{-"}"-} i
69     out         = run func {-"{\color<3>[rgb]{1,0,0}"-}state'{-"}"-} input
70 \end{code}
71 }