The objective of this article is to present a new solution to the functional observer design problem. First, a new definition for functional detectability is given; then, some algebraic conditions for linear multivariable systems to be functional detectable are presented. They generalize and coincide with the existing detectability condition required in the design of reduced and full-order Luenberger observers. Then, necessary and sufficient conditions for existence of an asymptotic functional observer are given and complete those existing results in the literature. The connection with the Sylvester equation and its solution is also given. The functional observer parameters are obtained from the Sylvester equation and the functional detectability condition. Necessary and sufficient conditions for stability of functional observers are given in the form of matrix inequalities based on two approaches: the first approach is based on stability analysis of the solution of the Sylvester equation, and the second approach is based on the Frobenius canonical form and its spectrum, which leads to a static output feedback formulation. Necessary and sufficient conditions and some simple sufficient conditions in the form of linear matrix inequality are given for the functional observer design. Moreover, the detectability of the considered system is not required. Two numerical examples are given to illustrate the presented results.