This “Product How-To” article focuses how to use a certain product in an embedded system and is written by a company representative.
The age-old embedded design question still remains whether to use an 8-bit or 32-bit core in your new design. If you ask several engineers, you will probably find that their opinions are very polar. Like it or not, 32-bit cores are here to stay.
So what does this mean? It means that inevitably one day, no matter how hard you try not to, you will need to migrate from your loveable 8-bit core to one of those new and complex 32-bit cores. Fortunately that migration doesn't have to be painful.
Today's microcontroller market is really divided into three segments, 8-, 16-, and 32-bit cores (the 4-bit microcontroller segment today is so small that we will ignore it in this comparison). Each of the three segments is roughly the same size. Traditionally, the 8-bit segment has been the largest.
Depending on which analyst report you read, the 32-bit segment is by far the fastest growing segment and may have surpassed the 8-bit segment in size. The 8- and 16-bit segments are still growing, but not at the same rate (with 8-bit segment still growing faster than 16-bit segment).
Long term, many believe that the 16-bit segment may be absorbed by the 8- and 32-bit segments. Today's 32-bit microcontroller devices are built in the latest technologies (when compared to the 8- and 16-bit cores).
Microcontroller manufacturers are able to take advantage of these latest technologies to allow 32-bit microcontrollers to keep getting smaller, and thus they continue to get cheaper and cheaper. Because of the price and performance of the 32-bit microcontrollers, many analysts believe that design engineers will leapfrog the 16-bit segment, and choose to future-proof their design by moving directly to a higher performance product.
Eight-bit microcontrollers have reached their limit in both performance and memory addressing capability, which accounts for the popularity of 16- and 32-bit microcontrollers exist today. And as the industry has followed the guiding principles of Moore's law, 32-bit microcontrollers have become smaller and cheaper, some so cheap that many of them are competitive in what were traditionally 8- and 16-bit sockets.
These new 32-bit microcontrollers also have much more processing power than their 8- and 16-bit counterparts. A typical 8-bit microcontroller has between 10 and 30 MIPS while 16-bit microcontrollers have between 20 and 40 MIPS. The new 32-bit microcontrollers often have 80 to 100 MIPS. This is a significant step up in processing power and speed.
Since many 32-bit microcontrollers are built on smaller geometries than 8- and 16-bit microcontrollers, they often get the benefits of low power. The smaller geometry typically means better power numbers, lower current consumption, and lower valid input voltages. Some of these new products have sleep currents that are almost immeasurable and offer input voltages all the way down to 0.5V.
In today's market, power is king. Even if an application isn't battery powered, today's designers still have to worry about power. Applications that are plugged into the grid must still be “green” for marketing purposes or perhaps because of government mandates and standards. For example, most new consumer electronic devices are now Energy Star compliant.
If you are using an 8-bit microcontroller today, you might be thinking about taking the step to the 32-bit microcontrollers with your next design. Even if your design's next generation is still going to use an 8-bit microcontroller, there are steps you can take today to help you get ready for this eventual migration. By doing a little bit of research, and making the right decisions, you can start future-proofing your design for tomorrow.
When considering migrating to a 32-bit microcontroller, you probably assume you will run into several problems. For example, you may be concerned about having to learn a new architecture or having to re-write all of your existing application code to work with this new core.
Perhaps you believe that 32-bit microcontrollers are just too hard and too complex, that they were not designed of ease of use, but instead performance, which means they have thousands of registers that you are going to have to worry about now. Maybe you are concerned that you will have to learn a whole new set of software tools. And that you will need to get familiar with completely new hardware tools.
Or perhaps you think that 32-bit microcontrollers were not targeted at your application, so you won't be able to find one with the right peripheral set for your design. You may face one or all of those concerns, but are they all valid concerns? Let's look at them individually.
Most designers assume that they will have to learn a new architecture when they migrate from an 8-bit microcontrollers to a 32-bit microcontroller. The problem is most companies have their old 8-bit microcontroller product line and their brand new 32-bit microcontroller product line.
They are probably still coming out with a few new products each year for the 8-bit line, but chances are they wanted to learn from their mistakes and fix them in the 32-bit line. You probably won't find the same peripherals across the devices. The different families won't be code compatible or have pin for pin compatibility, so you are going to have to re-do your entire design board.
While it is true there is no way to accomplish this migration without changing the core, you might not need to learn everything all over again. A few companies are starting to release new products that have the exact same peripheral set between the 8-bit and 32-bit versions. The only thing that changes in the device is its core. Everything else, including the pin assignments, stays the same.
Making the 8-/32-bit Transition with PSoC
If you use one of these 8-bit microcontrollers today, then tomorrow you can migrate to the company's 32-bit version and still be able to use the same printed circuit board. One such example is the recently announced PSoC 3 and PSoC 5 architectures from Cypress Semiconductor.
These two architectures have the same peripheral sets, packages and pin outs. A board designed for the PSoC 3 architecture, which uses a new single-cycle per instruction 8051 running at up to 67 MHz, can easily work with its PSoC 5 counterpart. The PSoC 5 uses an ARM Cortex-M3 processor running up to 80 MHz. Products like this make moving from one architecture to another painless (Figure 1, below ).
|Figure 1: With the Click of a Button, You Can Change from 8-bits to 32-bits|
The belief that you are going to have to re-write all of your code for the new 32-bit product is worth challenging as well. Many of these new products that match peripherals between 8-bit and 32-bit cores also are firmware compatible.
These chips use high-level languages (i.e., C) that allow you to write one set of code and choose to either compile for the 8-bit product, or just select the 32-bit product and re-compile.
You can complicate the matter by writing code in high level languages that still call registers specific to a core, but if you keep true to the spirit of high-level programming, migration can be, literally, as simple as selecting a different option.
Given the investment in software, you may care more about the Integrated Development Environment (IDE) than you do about which specific core you are using. Once you have mastered it, you don't want to learn a new set of tools. Many manufacturers recognize this pain-point and have designed their IDE to work across architectures.
A great way to future proof your designs today is to select a product (even if you are still working in the 8-bit realm) that lets you use the same tool for your 8-bit and 32-bit designs. Cypress's new PSoC Creator software is one such example of an IDE that works with both 8-bit and 32-bit devices.
Just like software tools, hardware tools are begin to offer cross-platform support. Often this is achieved by using a module-based system with hardware development kits. This allows you to unplug the 8-bit module and replace it with the 32-bit module.
Everything else on the board stays the same. Often these boards share the same programming and debugging tools. As such, developers are able to familiarize themselves with one set of tools and apply that knowledge to multiple designs.
A very real concern has been that companies developed 32-bit products for different markets than where 8-bit products are sold. As a result, it could be different to find an appropriate 32-bit product to support your design with the right peripheral mix.
In this case, not only would you have to pay more for the 32-bit product, but you also need to spend more money buying external discrete devices. The alternative is to, so to speak, design your own chip. Configurable, mixed-signals devices have the flexibility of FPGAs or CPLDs but are easier to design with because of their graphical-based development environment.
These tools allow you to capture your design's schematic in a tool and program it into a device. The PSoC 3 and PSoC 5, for example, allow you to design the peripherals that surround your 32-bit core so you can make sure they are the right ones for you design (Figure 2, below ). These new types of tools allow you to design the way you think.
|Figure 2: Schematic Design Capture Inside of the PSoC Creator Software|
It is more important today than ever for designers to have flexibility. The market is changing faster than ever, competition grows each day and everyone is driving for lower costs. Choosing the right 8-bit device family today can save you time and money tomorrow.
With these new tools, you can make your design on an 8-bit microcontroller and then take all of that work and move it over to a 32-bit core. This gives you the ability to add more performance whenever you need it. Quickly this becomes your company's high end differentiation product, and now you can enjoy the benefits of higher margin.
The 32-bit microcontroller is the next step in embedded design. When you take the step is up to you. It might be now; it might be in a couple of years, but at some point your 8-bit microcontroller will run out of horsepower to satisfy the constant demand changes of today's market.
Most designers fear the step. But it doesn't have to be painful. We have reviewed several actions you can take today to make this transition as smooth as possible.
If you are still doing 8-bit designs today, make sure you are doing it with a product family that has a 32-bit counterpart. The same is true for tools. There are companies today that offer the same software and hardware tools across the different architectures. Selecting the right device today (8- or 32-bit) will help you, and your designs, be successful tomorrow.
Robert Jania is a Product Marketing Manager for Programmable System-on-Chip (PSoC) devices at Cypress Semiconductor. Since joining Cypress in 2004, he has held positions in product marketing, business development, and technical marketing for the company's PSoC, USB, and Clocking devices. He holds a Bachelor of Science degree in Computer Engineering from the University of Illinois at Urbana-Champaign.