We're Buzzing About Our Fibonacci Champions!
The judges have spoken. The votes have been counted. The results are in!
We're pleased to announce the winners of OneSpin's 2018–19 Holiday Puzzle:
Head Beekeeper: Awarded to Elchanan Rappaport, Formal Verification Tech Lead, Veriest (pictured above, middle), for the solution with the best overall complexity and performance score.
Italian Mathematician: Awarded to Ferdinando Pace, Senior Digital IC Designer, Sensirion AG (pictured above, left), for the solution that stood out for taking a unique approach that was different from most others.
Most Buzzworthy: Awarded to Harry Duque, Senior Engineer, Axis Communications (pictured above, right), for the solution that captured the people's choice vote from among three candidates selected by our judges.
Congratulations to our three winners!
Your prizes are on the way. We sincerely hope that you will give yourselves a round of applause as you savor the sweet taste of victory—not to mention the bragging rights.
Many thanks to everyone who participated in our challenge this year. The Holiday Puzzle has become a time-honored tradition at OneSpin, and we hope that you'll join us again and again in this annual event. Until next time: keep those minds sharp!
The Fibonacci Calculator
Nature is beautiful. And so are numbers, especially the Fibonacci numbers! Well, at least to scientists.
From flowers to pineapples, from bees to human chromosomes, the Fibonacci sequence is a staple in the mathematical modelling of many disparate phenomena of our physical world.
Let’s take honeybees as an example. Did you know that male bees hatch from unfertilized eggs, while females emerge from fertilized ones? Males only have one parent, while females have two. If you trace the pedigree of a male bee, assuming that ancestors are unrelated, you will find that it has one parent, two grandparents, three great-grandparents, five great-great grandparents, and so on. You guessed it: that’s exactly the Fibonacci sequence!
How about designing a simple digital circuit that calculates Fibonacci numbers? We did. It is quite cute. You give it a number n as input and, after some clock cycles, the circuit gives you the nth Fibonacci number as output. We even wrote a bunch of assertions to get confidence that the design is correct. However, we would like to have a design that is not only faster (in terms of clock cycles), but also simpler. You know the drill: they always ask for smaller area, lower power, no bugs, and shorter schedule, but better performance!
What do you say? Can you come up with a better solution? Are you up to the task?