http://www.ee.oulu.fi/research/tklab...exercise2.html