3 \subsection{What will you see}
6 \frametitle{What will we see?}
8 \item Small tour: what can we describe in \clash{}
13 \subsection{What is \texorpdfstring{\clash{}}{CLasH}}
16 \frametitle{What is \clash{}?}
18 \item \clash{}: CAES Language for Hardware Descriptions
19 \item Rapid prototyping language
20 \item Subset of Haskell can be translated to Hardware (VHDL)
21 \item Structural Description of a Mealy Machine
24 \subsection{Mealy Machine}
27 \frametitle{Mealy Machine}
29 \centerline{\includegraphics[width=\textwidth]{mealymachine}}
30 \label{img:mealymachine}
36 \frametitle{Haskell Description}
40 {-"{\color<2->[rgb]{1,0,0}"-}State{-"}"-} ->
41 (State, OutputSignals)
42 mealyMachine inputs {-"{\color<2->[rgb]{1,0,0}"-}state{-"}"-} = ({-"{\color<3->[rgb]{0,0,1}"-}new_state{-"}"-}, output)
44 {-"{\color<3->[rgb]{0,0,1}"-}new_state{-"}"-} = logic {-"{\color<2->[rgb]{1,0,0}"-}state{-"}"-} input
45 outputs = logic {-"{\color<2->[rgb]{1,0,0}"-}state{-"}"-} input
48 \subsection{Simulation}
51 \frametitle{Simulating a Mealy Machine}
53 run func {-"{\color<2->[rgb]{1,0,0}"-}state{-"}"-} [] = []
54 run func {-"{\color<2->[rgb]{1,0,0}"-}state{-"}"-} (i:input) = o:out
56 ({-"{\color<3->[rgb]{0,0,1}"-}state'{-"}"-}, o) = func {-"{\color<2->[rgb]{1,0,0}"-}state{-"}"-} i
57 out = run func {-"{\color<3->[rgb]{0,0,1}"-}state'{-"}"-} input