Brainstorm: Software tools
What are the most innovative tools designers can expect from an electronic development kit? What are engineers asking for to help accelerate their designs?
Derek Carlson, Microchip Technology, www.microchip.com
Traditional embedded development tools assist engineers as they implement their applications. Innovative tools assist engineers as they implement their ideas, without imposing a predetermined solution or outcome. Such solutions abstract the implementation and accelerate the “idea to product” process.
Electronics engineers who learn the process from the board on up may be very comfortable with the traditional tool set. On the other hand, software engineers may learn the craft from the top down and may appreciate the freedom offered by object-oriented design techniques. Reality meets somewhere in the middle, and this is where most embedded engineers work and live.
Engineers are asking for faster design tools, turnkey solutions and market-specific reference materials. They also want to work anywhere and at any time.
Faster design tools means faster iterations during each phase of the Compile, Debug and Programming processes. Turnkey solutions include the basics, such as libraries for standard communications protocols, as well as more advanced topics such as graphics and audio.
Market-specific reference materials can include modules that are pre-certified to survive regulatory requirements, or anything that enables engineers to take advantage of technologies without having to sow a field already plowed by the tools provider.
Joerg Berthold, Atmel Corporation, www.atmel.com
Similar to children with wrapped gifts, we engineers get excited when we receive a development kit. We anticipate finding nice fancy boards with flashing LEDs, the latest state-of-the art microcontrollers onboard and maybe even extension boards that instantly connect the board to the physical world. But we engineers love it most when we can put the hardware to work right away. Being able to load the software together with the kits to mimic our planned application, having great tools to add our own touch and being able to demonstrate our ideas often are the most enjoyable parts of our jobs.
Development kits are no longer just focused on making the hardware accessible to an embedded developer. Today, kits need to integrate hardware integration, software and development tools that deliver a system.
So, these days innovation not only comes in the form of hardware but together with the appropriate software and hardware boards, it delivers a development kit focused on you – the embedded developer.
Jeff Jussel, Newark element14, www.element14.com
Development kits have become an important part of the design process for electronic systems. Once considered give-away items for semiconductor companies to show off their latest components, development kits have grown from evaluation vehicles into platforms for software development and proof-of-concept system prototypes. To deliver this complete “solution” benefit to designers, suppliers integrate development kits with development tools, plug-and-play hardware interfaces, and pre-built code for vertical applications.
Integrated development tools accelerate the system design process for both hardware and software. Hardware designers can carry forward elements from a development kit, benefiting from schematics, layouts, and component symbols and footprints. Embedded processing kits that commonly come with traditional software IDE programming tools, tutorials and application examples, now also include third-party tools that expand designer capabilities into new areas such as hardware-software co-design.
Another innovative trend is the ability to reuse hardware interfaces across multiple development kits, even those from different suppliers.
Distributors are supporting these innovations by delivering development kits as complete application solution packages, becoming a single source for design tools, application code, operating systems and hardware accessories. These complete solutions accelerate embedded design by turning evaluation development kits into application prototypes for consumer electronics, lighting products, power controls, smart metering, portable medical systems and many other embedded systems.
Richard Chung, Fairchild Semiconductor, www.fairchildsemi.com
While designers demand quality and robust engineering, they have less time and resources to perform the same tasks. Regardless of the engineer's experience level, designers will seek tools that help them do their jobs better and faster.
In terms of design process, engineers go through one revision of selection, worst-case analysis/design, modeling, testing, troubleshooting, design, more testing, qualifying, and manufacturing. However, defining requirements and constraints, finding vendors and part numbers, and comparing and contrasting similar parts all take significant amounts of time. Once they determine the right core devices, the various components' parameters and interactions need to work in unison to realize a system. The design process opens a set of opportunities for an electronic development kit to decrease time in each of these steps and potentially reduce revisions.
Their secondary need is technical understanding to ensure technical confidence and robust design. Regardless of engineering experience, an innovative tool will bring up the technical capability of the user.
Lastly, a designer requires system level engineering support from semiconductor vendors. Expect semiconductor companies to provide web selection and design aids to augment their application engineers and sales.
The most innovative web design tools will address time, technical understanding, and system level engineering needs.
Shawn Prestridge, IAR Systems, www.iar.com
Engineers are most concerned with how to get their project to market as quickly and cost-effectively as possible. They therefore depend on innovative development tools and development kits. The development kits need to provide easy-to-follow, non-trivial examples to show them how to quickly accomplish the mundane details of what they need to do, such as USB and Ethernet communication, setting up timers and interrupts, etc. These basics are provided by most semiconductor companies who include peripheral driver libraries to help engineers set up these details using simple APIs to access the peripherals. Designers can further kick-start their project by using a development kit that includes the software fundamentals.
Tools interface with these driver libraries from all semiconductor companies and provide a wealth of examples to help developers quickly create a working prototype. Since the tools are easy to use, engineers don’t waste time trying to figure out how to setup the tools nor learning how to use them, which saves both time and money.
Peter Green, International Rectifier, www.irf.com
Since fast time to market and minimum development cost are essential in today’s competitive electronic product industry, engineers demand something as close as possible to a production ready design from electronic development kits supplied by semiconductor manufacturers. These typically consist of a fully functional demo board compliant with relevant safety and performance standards as well as being compliant with EMC standards.
The demo board must be accompanied by a detailed application note containing a schematic, a bill of materials including supplier and part number for all components and a functional description. Specifications for any magnetic parts also need to be included with supplier contact information for cores, bobbins and complete assemblies. PCB layout guidelines are also very necessary especially in noise sensitive applications where bad layout prevents the circuit from operating correctly such as switching power supplies and derivative applications. PCB output files are often provided as well.
In addition to a functional description the application note needs to contain all of the formulas and design procedures used to determine the component values used in the circuit to enable the engineer to adapt the design to their own requirements. Dedicated software tools are often provided that make this process as simple as possible. For example, a software tool can simplify the design of LED drivers.
The design engineer enters input and output voltage and current parameters and the software produces an inductor design specifying core size and winding details. In some cases a complete schematic and BOM are also produced. With these tools available a designer without a high level of experience can have a working prototype up and running very rapidly!
Tolga Latif, Linx Technologies, www.linxtechnologies.com
As designers of development kits, we used to think engineers valued utility above all else, so we gave them many options. Those options added complexity, so we provided detailed documentation to make up for the loss in usability. Apple changed engineers' expectations by making products that delivered utility along with simplicity and usability. Today's engineers expect to get started without reading the documentation, much like they do with consumer electronics.
Then, to get the most from the kits, engineers don't just refer to documentation, but also to the experiences of their peers through online discussions. Chances are someone else had the problem they're experiencing, so they'd rather use a search engine and find a solution right away than call technical support and wait on the phone. Forward-thinking development kit designers will provide kits with great features and usability along with online discussion forums where engineers can share solutions and insights.
Carlos Betancourt, Texas Instruments, www.ti.com
When a designer receives a development kit he should not have to spend more than 10 minutes booting it up and no more than an hour setting up the environment to start developing applications. User interfaces that abstract the low-level complexities of today’s system-on-chips (SOC) into simple, easy-to-use APIs make a huge difference.
The developer’s focus must remain on developing the product or idea he has in mind, rather than spending days putting together the necessary hardware and software to get started. Examples of useful, easy-to-use APIs include turning on/off LEDs, reading data from sensors, turning on pulse width modulators (PWMs), camera capture, and other similar functions. Those APIs can be exposed by means of scripts (e.g. Java) or with graphical user interfaces (e.g. web based).
Just as important as having easy-to-use APIs, the hardware must be flexible enough to tailor it for the developer’s desired application without much compromise on cost. A good starting point is a base board, which has the “bare-bones” hardware for the SOC to operate, thus minimizing cost of the board. A set of expansion connectors can then enable the developer to plug in several kinds of daughter boards.
These boards have many names (e.g. capes, shields, etc.), but in the end, they are all simple plug-in boards that tailor the generic, low-cost EVM to the developer’s needs by adding peripheral extensions. Examples of plug-in boards can be camera boards, LCD with resistive or capacitive touch screen, sensor boards, or even boards that enable the developer to test many kinds of memories. Finally, making the EVM, the software, and all plug-in boards open hardware and software is highly desirable by developers who can copy-paste the design into their own systems. That kind of architecture works well at enabling rapid-prototyping of ideas, which in turn leads to innovation.
Dave Sackett, Maxim Integrated, www.maximintegrated.com
Today’s engineers face constant pressure to reduce product development times. Engineers are asking IC vendors to make further progress in providing complete solutions instead of simply silicon. While there are several reasons for a customer to resist adopting a new device into their bill of material, one of the most common is lack of resources available to spin the firmware. One partial solution would be readily available, proven software drivers.
Vendors have offered EV Kits for many years. While EV Kits provide good tools for hardware evaluation, there remains a need to augment these with tools that support the notion of rapid prototyping and enable the customer to get farther into the design process at a faster pace. In most cases, these kits are supplied with the software necessary to exercise the device, allowing the engineer to connect sources and loads and put it through its paces. While these kits are helpful in evaluating the hardware performance, the software driving the part is often not available in a form useful for implementation in the final application.
Given the constraints on development time, coupled with the increasing complexity and specialization of the underlying technology, customers are more and more looking for system solutions. Development tools which are implemented as reference designs and more focused on specific applications.Tools that implement both hardware and software solutions for complete subsystems are gaining popularity. They offer engineers the opportunity to accelerate their development times by leveraging the system expertise of the vendor, allowing them to complete large portions of their projects by simply fine tuning.
As the trend towards higher levels of integration continues, the constituent ICs and the reference design ‘wrapper’ will help shield the designer from increasing more detail and move both the hardware and software design to higher levels of abstraction.