1 \documentclass{minimal}
9 \begin{psmatrix}[mnode=oval, colsep=3cm, rowsep=3cm]
10 [name=add]{\shortstack{\textbf{ADD}}} & &
11 [name=sub]{\shortstack{\textbf{SUB}}} \\
13 [mnode=R,name=res]{sys\_res\_n} &
14 [name=idle]{\shortstack{\textbf{idle}}}\\
16 [name=mul]{\shortstack{\textbf{MUL}}} & &
17 [name=div]{\shortstack{\textbf{DIV}}} \\
20 \psset{arrows=->, shortput=nab}
22 \ncline[linestyle=dotted]{res}{idle}
24 \ncarc[arcangle=20]{idle}{add}\ncput*[npos=.50]{\shortstack{do\_calc$\uparrow$\\opc = ADD}}
25 \ncarc[arcangle=20]{add}{idle}
27 \ncarc[arcangle=20]{idle}{sub}\ncput*[npos=.50]{\shortstack{do\_calc$\uparrow$\\opc = SUB}}
28 \ncarc[arcangle=20]{sub}{idle}
30 \ncarc[arcangle=20]{idle}{mul}\ncput*[npos=.50]{\shortstack{do\_calc$\uparrow$\\opc = MUL}}
31 \ncarc[arcangle=20]{mul}{idle}
33 \ncarc[arcangle=20]{idle}{div}\ncput*[npos=.50]{\shortstack{do\_calc$\uparrow$\\opc = DIV}}
34 \ncarc[arcangle=20]{div}{idle}