Monday, July 05, 2004

Accept the Unexpected

It has been a slow summer term for me. I got excited at the opportunity to learn SystemC, a system design langauge. I was expected to implement RSA encryption algorithm using SystemC. Don't worry, I am not going deep into the technical details here, but just for completeness I decided to include them.

Within first fifteen days I got the SystemC kernel up and running and refreshed my not-so-sweet memories of C++. Then one fine morning, the idea struck me, and it struck me right. That approach simplified the hardware and I just too happy to continue along that idea. More were waiting on my way. I was not set any goals for the system performance, and therefore I did not bother to worry about that too much. I finished the implementation and happily started on the report front. I had plenty of time, and I decided to set for the deep waters. My guide stopped my efforts as he thought they were not going much in the right direction. Slightly dejected, I continued with the report writing. And the final presentation too.

Today, my guide comes to me. Sees the draft of the presentation. And asks me to compare the performance with any of the existing software systems. I quickly get a copy of the paper and take a look at their results. BANG! Here I am, with my project report, projecting (my worst case) results to be about four times better than the quoted results. I feel like jumping. Then I think further. The results are in a slightly different domain. My results depend completely on a software realisation. I was working on a software-hardware co-effort to reduce the time complexity of the algorithm, which sir asked me not to pursue further. Had I ... but then ...

I accept the unexpected results with a smile, and get back to preparation of the presentation.

No comments: