Nowadays when “Smart” is included for all products, the smart microcontrollers are applied more and more widely in different fields. From smart appliances, smart homes, and autonomous vehicles, etc., there are too many products to be named; and these applications can’t work without microcontrollers and the software running on them.
End products and the software
As products get smarter and smarter, software running on the microcontrollers are also becoming more and more complex and requires more time to develop. But the market cannot wait for the long times required to develop new products from scratch; so this is when so-called software vendors started to appear. Software vendors provide mature software and powerful algorithms to provide products with more valuable functions. For example, precise and fast fingerprint identification algorithm software means consumers can have better user experiences on electronic locks. However, good fingerprint identification software cannot be easily developed within a short time; and this is why product developers usually need to seek help from software vendors to provide solutions and reduce development time. Such industrial trends allowed the emerging of collaborative development business modes, and this is when two developers collaborate and work on one product: one provides software and algorithms with specific functions, and the other focuses on the development of end products.
In collaborative development business modes, how to guarantee the rights and benefits of software vendors while not affecting the convenience for product development has gradually become an important issue. If software vendors added too many restrictions on the software to protect themselves, it will become a barrier and inconvenience for product developers; but if software vendors do not perform permission settings and allow developers to use as they wish, there are risks that might damage the rights and benefits of software vendors.
In order to solve this contradiction, Nuvoton has proposed microcontroller series that are applicable for collaborative development. In order to be applicable for collaborative development, the software must be embedded on the microcontroller to allow the microcontroller and software to perfectly form a whole microcontroller with higher added value. In terms of application, software vendors no longer only provide software to customers but instead provide microcontrollers with embedded software to the customers. Compared to the original software, a microcontroller with specific software embedded is protected by the hardware design so it cannot be copied without permission, and can fundamentally eliminate the risk of the software being abused.
To realize such microcontrollers applicable for collaborative development, two key issues have to be overcome: First of all, it must be the same as traditional microcontrollers in terms that it must be easy to develop and debug; the development complexity cannot be increased for the customers due to the embedded software. Secondly, the embedded software must be like the microcontroller peripherals so that malicious behaviors such as tampering and copying cannot be performed.
In order to overcome these two issues, Nuvoton imported the Arm® TrustZone® technology and realized it on the M2351 series microcontrollers. By using the TrustZone technology, “Secure World” and “Customization World” can be separated inside the M2351 series microcontrollers; in which the “Secure World” can be used to store the software from software vendors and the “Customization World” can be opened for collaborating companies to perform collaborative development. Secondary developers not only can use the original rich peripheral functions of M2351, but function libraries can also be used to access the services provided by the software in the Secure World so that development is completely the same as average microcontrollers. In addition, M2351 can also perform hardware lock for the Secure World so that contents inside the Secure World cannot be read by outsiders, and cannot be debugged or disassembling, ensuring that the software inside the Secure World can be protected completely and guaranteeing that the program codes and data inside will not be exposed while the functions are being used.
On the other hand, after secondary developers have completed the development of terminal products, they can perform hardware lock for the entire microcontroller. After being locked, nobody will be able to use the debugging, burning or other functions of the microcontroller to steal the embedded software, including all data in the Secure World and Customization World.
In general, if software developers can use the built-in TrustZone technology of Nuvoton’s M2351 microcontrollers to manufacture their own microcontrollers with embedded software, they can fundamentally eliminate the risks of software being copied or abused. Because at this moment, software vendors are no longer selling copies of the software but instead selling physical microcontrollers with software embedded.