So, after a few months work we had a very successful Mini Maker Faire in Trondheim this weekend. Thanks to the great people arranging the Pstereo festival http://www.pstereo.no we were able to add the MMF to their already planned event. With some great help from many makers in Trondheim in additition to some companies we were able to pull this off ! With more then 5000 people visiting the festival and many of them visiting the MMF section I would say this was a great success !
I put together a short video (in Norwegian) from the event. I am also working on an english video with similar content. This will come in about a week I hope.
The old discussion about RISC versus CISC suddenly became on the agenda again after my article about AVR to ARM.
Anders from IAR systems and a few others have contacted me to say that to call ARM a CISC was not correct. There is no doubt about that, ARM is a RISC, not a CISC processor. Advanced Risc Machines develops RISC processors.
In my article I referred to the beginning of the ARM and the beginning of AVR. The first ARM device we used was one of the first ARM 7 based architectures. This architecture had a Von Neumann bus structure, which means that there is one shared bus for program code, data and I/O. Most processor architects would say that RISC processors should have a Harvard architecture where there are separate busses for the different memories. This was implemented in the ARM 9 and it almost doubled the performance of the core. There are also CISC processors utilizing the Harvard architecture so I guess the border between CISC and RISC will never be 100% clear. However, my previous article should have been written differently. My bad.
Many people think that RISC means reduced number of instructions. Reduced in the RISC term refers to the complexity of the instructions. A RISC processor has an instruction set where every instruction is executed mostly in one clock cycle and hereby becomes very efficient in terms of execution speed. However, this requires different hardware support because it can be viewed more like “parallel processing” versus a CISC that has complex instructions and some instructions have small state machines that use multiple. For example the multiply instruction take one clock cycle in AVR and 48 in the original C51 core.
When we designed the AVR we actually added a lot of instructions to avoid having every instruction too flexible. By adding more instruction we could keep them simple and very efficient. By working with IAR systems on the C-compiler we also ended up with a very code efficient machine.
For embedded processors used in control application it is also very important to have a processor that can handle single bits in registers, memory and I/O very efficient. It is interesting to note that the C51 designed by Intel in 1980 had bit level “boolean logic” operations. These operations can be used on internal registers and a dedicated portion of the RAM memory. A similar functionality was also implemented in the AVR to make it extremely efficient for control applications. The original AVR architecture before it became Atmel was designed to do very efficient descrambling of bit streams sent to digital TV sets.
The next level of efficiency for embedded application is what the I/O Communicates without the CPU involved. This was implemented in the XMEGA AVR and an even more efficient system is implemented in the EFM32 from Energy Micro. The EFM32 has a so-called Reflex system where peripherals can be programmed to wake up each other and pass data along as needed. This is mostly implemented to utilize the low power modes of the EFM32, and will also improve the performance of the system.
So, after more then 20 years with creative engineering I have decided to start a blog. I do this because I have so much to share with other engineers, managers and top executives. Together with a great team we created the AVR microprocessor and created almost a $1B business for Atmel. We created some very innovative processors and tools that unleashed the potential of engineers around the world. We created the AVR Freaks that engage some of the best, embedded engineers in the world and gave us the inspiration to move on. The journey from being a young engineer out of university to be a top-level executive in a large American company has been interesting. This journey has taught me a lot about successful innovative cultures, how politics can influence motivation and creative thinking and not at least how to stimulate teamwork and curiosity. I recently moved to Energy Micro. I moved back to a company that had all the values and drive our original AVR team had. I joined a group of passionate curious engineers because I wanted to move faster and innovate more. This blog will be about inspiration, innovation and curiosity. It will be about new technologies, fundamental technologies and wild ideas for revolutionary technologies. It will also be about management styles and how important the company culture is for success. I will share with you how I believe the right culture develops, how they need to be maintained and how they can fall apart. I have a lot to share with you and I will do so over time. I am too busy to blog every day, but I hope you still will follow this blog and give me feedback on things you would like to understand further. I might even add some posts about my passion for photography, cycling, skiing, sailing and more. I believe success in business has to do with a complete human being, where family and personal hobbies plays a significant role.