Understanding BFSK Modulation (MATLAB/Simulink)
So, ignoring noise, the input into the receiver multiplier coming from the channel is either $\cos(2\pi f_0t)$ or $\cos(2\pi f_1t)$. The other multiplier input is $\cos(2\pi f_0t)-\cos(2\pi f_1t)$. All signals are defined from 0 to $T$. Let's assume the transmitted signal has frequency $f_0$. Then you have an integrator:

\begin{align}
&amp;\int_0^T \cos(2\pi f_0t) \left[\cos(2\pi f_0t)-\cos(2\pi f_1t)\right]dt \\
&amp;=\int_0^T \cos(2\pi f_0t)\cos(2\pi f_0t) dt - \int_0^T \cos(2\pi f_0t)\cos(2\pi f_1t)dt.
\end{align}

The frequencies $f_0$ and $f_1$ are chosen so that the cosines are orthogonal for $0&lt;t&lt;T$; that means that
$$\int_0^T \cos(2\pi f_0t)\cos(2\pi f_1t)dt =0.$$
The integrate and dump block outputs the result of the definite integral at $t=T$. You can see that the result is positive if frequency $f_0$ was transmitted and negative if $f_1$ was transmitted.

The sign block is a quantizer, and the lookup table converts the numbers back to bits 0 and 1.