Roughly ten years ago, the embedded world was a simpler place (or at least it seemed to be), and the development kit off ered an excellent starting point for an embedded design project. Like the proverbial child on their birthday, excitedly opening up a box, an engineer would most probably find a nice bundle of design resources including an evaluation board with a processor or microcontroller and/or an FPGA, memory and peripherals, a cluster of soft ware development tools, perhaps a full IDE (Integrated Development Environment) even, and possibly some form of operating system soft ware. That box today probably contains even more goodies, but is it the obvious starting point for a new embedded design project? Increasingly, it is not so clear.
Starting a Project
For many designs, development kits were ideal for producing a first prototype. In conjunction with the embedded software developmentand the configuration of a small constellation of components and a knotof wires, kits enabled designers to create at least an approximation of their target end product. Of course, enthusiastic champions of development kits are often those software-oriented developerswho prefer not to involve themselves in PCB layout. PCB design problems can be diffi cult and expensive to troubleshoot. So, with the use of a kit, the software developer benefi ts from the removalof hardware from the embedded design equation, and allows them to concentrate on their core competence – writing the code.
But, for many companies that develop electronic hardware, typically the layout will need to come before software development. This can introduce a large element of risk and cost, as hardware designers will need to develop a prototype that has to be highly functional; otherwise it cannot be debugged. However, a signifi cant reduction in the cost of board prototyping over the years has made it progressively competitive, and increasingly developers have found a very serious alternative to the development kit. It has allowed them to deliver an initial hardware design, including processor, memory, peripherals and power management, and have it prototyped at their local PCB shop at decreasing levels of cost, and in low volume. The result is that developers can use this prototype board as a fi rst iteration of their design: and it becomes the development kit. The prototype will be signifi cantly closer to the end product than can be achieved by the use of an off-the-shelf kit, and should lead to further improved designs that are primarily bug-fixed iterations of the first.
In addition to the cost reduction of custom-made boards,there has been a strong upsurge in the availability of free and increasingly functional PCB-design tools, such as DesignSpark PCB, and test software; and the widening availability of open-source software, including operating systems, design templates and code libraries. There is also a proliferation of open-source hardware designs and IP (Intellectual Property), where for example a potentially troublesome high-speed memory interface can be reused on a board, in conjunction with easily downloadable software stacks and drivers. So, increasingly, developers are no longer being forced to use a ‘plain vanilla’ standard board with a variety of kit-vendor selected components that attempts to meet all customer needs; or to tolerate a shortage of suitable peripherals in common kit confi gurations, making them inadequate for those developing more specialised applications.
Read my full article in etech Issue 10