4
$\begingroup$

What does 'canonical' mean? e.g. 'write IIR or FIR in canonical form'

I get the gist of it but maybe someone here has a precise definition. In a non-DSP context it would mean something like 'strictly by the book', and perhaps in a DSP context this would mean 'without considering implementation issues'. Is this true?

$\endgroup$
4
$\begingroup$

The etymology refers to the canon, as a rule or a body of rules, or axiomatic or universal standards. It exists in arts: sculpture, music, script writing, etc. The notion of canon law is also used in the domain of religion.

In mathematics, and engineering, a canonical form is, similarly, a preferred notation, or a unique and natural form, or representation, of an object, a formula. For instance, a canonical basis is a basis of a vector space (an algebraic structure in general) that refers to a precise context, like the standard basis defined by the Kronecker delta.

In some sources, for linear digital filters, canonical forms refer to sets of structures that are optimal in some sense, with respect to some basic operations (available to a processor, for instance). The most common is the reduction of the number of delays, it is often associated with the name "Direct Form II" (excellent online tutorial by J. O. Smith):

In summary, the DF-II structure has the following properties [...] It is canonical with respect to delay

In theory, one could look for canonical forms with respect to others quantities. In practice, the delay minimization is the most standard, thus the most canonical of the canonical forms. By metonymy, the delay canonical form is thus called "the canonical form".

Other occurences of canonical forms may appear with state-space formulations for filters. In control theory, one may find for instance Observable Canonical Forms and Controllable Canonical Forms.

$\endgroup$
5
$\begingroup$

A canonical implementation of a digital filter has the minimum number of delay elements. The same filter cannot be implemented with less memory. Since memory is often not the only concern, a canonical implementation is not necessarily always the best implementation on a given platform.

$\endgroup$
  • $\begingroup$ @Downvoter: I'd greatly appreciate if you could share with us what you think is wrong with this answer. $\endgroup$ – Matt L. Nov 4 '15 at 12:20
1
$\begingroup$

To put it simply, a system is called canonical when number of delay elements in a block diagram representation is same as the order of that system.

You can get further details over TYPES OF STRUCTURES AND DIGITAL SIGNAL PROCESSING?

Hope you got your answer.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.