The EFM8 Series from Silicon Laboratories: A Powerful New Embedded Development Platform
An introduction to the SiLabs EFM8 microcontrollers and related development tools.
Silicon Laboratories has recently provided a new series of microcontrollers and development boards for those interested in low-cost, low-power, high-performance mixed-signal applications.
The 8051 Lives On
Silicon Laboratories has accumulated an extensive collection of 8-bit microcontrollers based on the 8051 architecture, and the new EFM8 series continues this tradition. The 8051 was originally developed by Intel in 1980, and this “8-bit microcomputer” (as it was first called) proved so successful that eventually numerous different manufacturers developed 8051-based microcontrollers. Two important reasons for the surprising endurance of this 35-year-old architecture are code compatibility and human compatibility: new devices benefit from both the vast quantity of existing 8051 code and the extensive experience provided by engineers who have previously worked with 8051-based microcontrollers. Obviously, though, much has changed in the world of microelectronics since 1980, so current manifestations of the 8051 incorporate a variety of improvements in performance and functionality.
Only Eight Bits?
Some may find it surprising that leading manufacturers are still marketing 8-bit devices; 8 bits may seem sadly inadequate in an age of 64-bit CPUs and 32-bit microcontrollers. But like so much else in life, more is not always better. Many embedded applications have little need for 16- or 32-bit variables and operations, and in such cases 8-bit devices offer smaller form factors, lower cost, simpler development processes, and higher operational efficiency. A 32-bit architecture, on the other hand, may be preferable to applications that require more memory or higher signal processing capabilities; there is no doubt that the performance of an 8-bit processor core will be less than impressive if it is subjected to, say, a continuous succession of 32-bit floating-point operations.
The processing performance and peripheral functionality of the EFM8 series far surpass those of the original 8051. It is no surprise that clock frequencies have increased, but in addition the SiLabs 8051 core has a pipelined architecture that greatly improves the actual processing speed. In the case of the standard 8051, clock speed is not a clear indicator of processing performance because a single instruction requires 12 clock cycles to execute. So instead of MHz (millions of cycles per second), a better metric is MIPS (millions of instructions per second). The SiLabs pipelined 8051 core can execute 70% of instructions in 1 or 2 clock cycles, thus approaching peak throughput of 50 MIPS at a maximum clock rate of 50 MHz.
The EFM8 series incorporates an impressive set of analog and digital peripherals, such as serial communication interfaces, analog comparators, an analog-to-digital converter, and a fully integrated USB module (unfortunately no digital-to-analog converter). Perhaps even more important, SiLabs provides a prodigious collection of application notes, sample code, and reference designs—thus ensuring that developers will actually be able to successfully use these peripherals.
The most impressive microcontroller would be far from popular if designers had no convenient, effective way of developing firmware and evaluating functionality. Herein lies one of the prominent advantages of the EFM8 devices: they are fully supported by SiLabs’s powerful (and free) integrated development environment, and they can be thoroughly evaluated using the pleasantly affordable EFM8 development boards.
SiLabs’s integrated development environment is called Simplicity Studio, and the name implies the objective: to make firmware development and testing an efficient and productive process.
You can decide for yourself to what extent this objective is achieved, but considering the price ($0), Simplicity Studio offers an appealing collection of features. One major advantage is free, nonrestricted access to the Keil C compiler. C is an excellent language for programming microcontrollers: it transcends the oppressively low-level nature of assembly code, yet it limits the designer’s ability to lose touch with the details of a device’s hardware. Another interesting feature is a seamlessly integrated energy profiler that displays the microcontroller’s real-time current and power consumption:
The EFM8 devices are specifically marketed as ultra-low-power solutions for such applications as automation, wearables, and IoT; the energy profiler adds another dimension to these designs by helping developers to further optimize power consumption.
SiLabs sells six different development boards for the EFM8 series microcontrollers. A single USB cable provides smooth integration with Simplicity Studio, and much functionality—LCD control, USB communication, capacitive touch sensing, joystick interfacing, environmental sensing—can be evaluated without any additional hardware.
The EFM8 series microcontrollers and development boards are high-performance, affordable options not only for engineers but also for students and hobbyists. The supporting documentation and software tools can help you to move rapidly from concept to functional device. Upcoming articles will provide detailed guidance on using EFM8 development boards to realize a variety of simple and more complex projects.
Next Article in Series: Controlling an LCD via SPI: An Introduction to Project Development with an EFM8 Microcontroller