in PDF Format - Embedded-Control-Europe.com
in PDF Format - Embedded-Control-Europe.com in PDF Format - Embedded-Control-Europe.com
- Page 3 and 4: Dear Readers, Glenn Perry, General
- Page 5 and 6: ® The INTEGRITY RTOS Certified and
- Page 7 and 8: Figure 1. Logical structure of a st
- Page 9 and 10: Measurement and Reporting includes
- Page 11 and 12: instantiated in part I, the reasoni
- Page 13 and 14: Software type Modifications Part A:
- Page 15 and 16: ■ STM: STM32 MCUs with Ethernet,
- Page 17 and 18: Figure 2. Example AXI system Figure
- Page 19 and 20: Figure 1. CMOS power dissipation Fi
- Page 21 and 22: 16-bit microcontrollers with ■ To
- Page 23 and 24: the whole function can be handled b
- Page 25 and 26: Figure 1. Principle of block commut
- Page 27 and 28: solutions from different manufactur
- Page 29 and 30: How to perform integration testing
- Page 31 and 32: PRODUCT NEWS ■ MSC: new variation
- Page 33 and 34: ■ MIPS joins Open Embedded Softwa
- Page 35 and 36: ■ Wind River enables multilevel s
- Page 37 and 38: ■ iSYSTEM: version 2009 of winIDE
- Page 39 and 40: presents Small form factor computin
Dear Readers,<br />
Glenn Perry,<br />
General Manager<br />
<strong>Embedded</strong> Systems Division,<br />
Mentor Graphics<br />
VIEWPOINT<br />
Disruptive technologies do not<br />
occur very often and they can be<br />
very hard to see <strong>com</strong><strong>in</strong>g. They are<br />
always <strong>in</strong>terest<strong>in</strong>g – because they<br />
result <strong>in</strong> real progress. <strong>Embedded</strong><br />
software technology tends to<br />
evolve without sudden change.<br />
The gradual <strong>in</strong>crease <strong>in</strong> the use of<br />
L<strong>in</strong>ux fits that model, but a disruption<br />
is on the way...<br />
If we look back to the <strong>in</strong>troduction<br />
of the PC nearly 30 years ago,<br />
programm<strong>in</strong>g them was quite<br />
challeng<strong>in</strong>g. The DOS operat<strong>in</strong>g<br />
system provided a m<strong>in</strong>imal set of<br />
services and the software developer<br />
needed to construct a <strong>com</strong>-<br />
plete framework to support their application. For example, the developers<br />
of a word process<strong>in</strong>g program would need to <strong>in</strong>clude drivers<br />
for every pr<strong>in</strong>ter imag<strong>in</strong>able; a spreadsheet program would need<br />
its own vast set of pr<strong>in</strong>ter drivers. This was <strong>in</strong>efficient and <strong>in</strong>convenient<br />
for both developers and users. The <strong>in</strong>troduction of W<strong>in</strong>dows<br />
(or, at least, W<strong>in</strong>dows 3.0) changed all that. Although we <strong>com</strong>monly<br />
th<strong>in</strong>k of W<strong>in</strong>dows as be<strong>in</strong>g a graphical user <strong>in</strong>terface (which it is),<br />
it is primarily an application framework–aplatformonwhichapplications<br />
can be developed <strong>in</strong> order to share <strong>com</strong>mon services.<br />
Nowadays, pr<strong>in</strong>ters <strong>com</strong>e with a W<strong>in</strong>dows driver.<br />
For the embedded developer, the state of L<strong>in</strong>ux has some similarities<br />
to those early DOS days. Although L<strong>in</strong>ux provides drivers, network<strong>in</strong>g<br />
and a file system, there is significant work required to assemble<br />
and configure the environment as a foundation for the target<br />
device. Enter Google Android and keep the W<strong>in</strong>dows analogy <strong>in</strong><br />
m<strong>in</strong>d. Although there is a perception that Android is an operat<strong>in</strong>g<br />
system for smart phones, that is really just one possible application.<br />
Android is an application platform that accelerates the software development<br />
for sophisticated embedded devices, while provid<strong>in</strong>g an<br />
optimized environment for <strong>in</strong>formation access and exchange.<br />
While L<strong>in</strong>ux may not be optimal for every application, it excels when<br />
the wide range of drivers and network<strong>in</strong>g are a benefit and hard<br />
real-time performance is not required. For high performance and<br />
m<strong>in</strong>imal impact on resources, a conventional RTOS is a better fit.<br />
Increas<strong>in</strong>gly, we notice many devices have a need for both. That is,<br />
hard real-time performance for some aspects of the system and<br />
expansive framework services for other.<br />
The good news is that a multi-OS on multi-core hardware offers a<br />
solution. A good example is an enterprise pr<strong>in</strong>ter. True real-time<br />
performance is required for paper handl<strong>in</strong>g, drums control and <strong>in</strong>k<br />
management, and dedicat<strong>in</strong>g a suitable microcontroller, us<strong>in</strong>g an<br />
RTOS, to these tasks makes sense. Another CPU, runn<strong>in</strong>g L<strong>in</strong>ux/Android<br />
is well suited to handl<strong>in</strong>g network<strong>in</strong>g, file storage and a<br />
sophisticated user <strong>in</strong>terface.<br />
A well-designed system, with software optimally deployed across<br />
processors, is real progress. Disruption is upon us.<br />
3 September 2009<br />
V-8_2009-DSR-4719<br />
Industrial Workshop<br />
How to develop a <strong>com</strong>plete <strong>in</strong>dustrial<br />
solution <strong>in</strong> less than one hour<br />
This and other questions are answered by experts from<br />
Altera, Intel, MSC and 3S at the Industrial Reference<br />
Platform Workshop hosted by Gleichmann Electronics<br />
Research <strong>in</strong> twelve major <strong>Europe</strong>an cities <strong>in</strong> October/<br />
November this year.<br />
The workshop is based on GE-Researchs’ Industrial Reference<br />
Platform (Hpe_IRP) <strong>com</strong>b<strong>in</strong><strong>in</strong>g an Intel ® Atom<br />
processor with an Altera ® Arria ® GX FPGA. This powerful<br />
<strong>com</strong>b<strong>in</strong>ation offers you the ultimate <strong>in</strong> low power, high performance<br />
<strong>com</strong>put<strong>in</strong>g and confi gurable logic fl exibility. The<br />
Hpe_IRP ® has been designed as a rapid prototyp<strong>in</strong>g platform<br />
for the development and evaluation of systems so that you<br />
save time and money by gett<strong>in</strong>g a system up and runn<strong>in</strong>g<br />
before <strong>com</strong>mitt<strong>in</strong>g to build<strong>in</strong>g your own circuit board.<br />
The workshop <strong>in</strong>cludes hands on technical sessions and<br />
build<strong>in</strong>g your own PCI express based system on a real board.<br />
� ���������<br />
� �����<br />
� ������<br />
� ������<br />
� ���������<br />
� ������<br />
� ���������<br />
� �������<br />
Further details and registrations under<br />
www.tra<strong>in</strong><strong>in</strong>g-registration.<strong>com</strong><br />
Visit our new ToolGuide-Webshop:<br />
www.msc-toolguide.<strong>com</strong><br />
� ����������<br />
� ���������<br />
� �����<br />
� �������<br />
MSC Vertriebs GmbH<br />
Tel. +49 7249 910-129 · power-devices@msc-ge.<strong>com</strong><br />
www.hpe-irp.<strong>com</strong>
CONTENTS<br />
Viewpo<strong>in</strong>t 3<br />
Software Development<br />
Design<strong>in</strong>g fail-safe storage systems<br />
for embedded applications 6<br />
MCIF – a systematic approach to<br />
software delivery excellence 8<br />
Microcontrollers<br />
Cortex-M3 software modifications for<br />
ARM7TDMI programmers 12<br />
ARM-based SoCs as alternatives to<br />
embedded board solutions 16<br />
Low-power microcontroller design<br />
us<strong>in</strong>g the ARM Cortex-M0 core 18<br />
16-bit microcontrollers with<br />
new real-time event handl<strong>in</strong>g structure 21<br />
M<strong>in</strong>imiz<strong>in</strong>g ownership cost for motor<br />
applications by energy sav<strong>in</strong>g 24<br />
Test<strong>in</strong>g & Debugg<strong>in</strong>g<br />
New approaches simplify test<strong>in</strong>g and<br />
debugg<strong>in</strong>g of <strong>com</strong>plex MCUs 26<br />
How to perform <strong>in</strong>tegration<br />
test<strong>in</strong>g of embedded software 29<br />
Product News 31<br />
Cover Photo<br />
HCC-<strong>Embedded</strong><br />
September 2009 4<br />
Design<strong>in</strong>g fail-safe storage systems<br />
for embedded applications PAGE 6<br />
This article <strong>in</strong>vestigates the design of <strong>com</strong>plete storage solutions<br />
for embedded systems with particular reference to HDDs, SSDs,<br />
SD and CF cards, and raw flash.<br />
MCIF – a systematic approach to<br />
software delivery excellence PAGE 8<br />
Measured Capability Improvement<br />
Framework (MCIF) was <strong>in</strong>troduced<br />
as a systematic approach to <strong>in</strong>crementally<br />
improv<strong>in</strong>g software and<br />
systems delivery capability. The<br />
iterative approach, illustrated with<br />
a real-life scenario, helps organisations<br />
to stay always focussed on the<br />
next step of improvement which is<br />
clearly def<strong>in</strong>ed and measured.<br />
Cortex-M3 software modifications for<br />
ARM7TDMI programmers PAGE 12<br />
This article expla<strong>in</strong>s some typical modifications that may be<br />
required to port code from the ARM7TDMI processor to the<br />
Cortex-M3 processor, <strong>in</strong> order to execute more efficiently on the<br />
Cortex-M3 or exploit some of its advanced features.<br />
Low-power microcontroller design<br />
us<strong>in</strong>g the ARM Cortex-M0 core PAGE 18<br />
This article discusses the low power characteristics of the ARM<br />
Cortex-M0-based LPC1100 microcontroller series, and the system<br />
design techniques that m<strong>in</strong>imize the amount of energy consumed<br />
from a power source.<br />
M<strong>in</strong>imiz<strong>in</strong>g ownership cost for motor<br />
applications by energy sav<strong>in</strong>g PAGE 24<br />
This article reviews a new generation<br />
of microcontrollers which<br />
enable energy-efficient control of<br />
brushless DC motors, permanent<br />
magnet synchronous AC motors<br />
and AC <strong>in</strong>duction motors,<br />
achiev<strong>in</strong>g major sav<strong>in</strong>gs <strong>in</strong><br />
electricity costs.<br />
New approaches simplify test<strong>in</strong>g and<br />
debugg<strong>in</strong>g of <strong>com</strong>plex MCUs PAGE 26<br />
The IEEE 1149.1 (JTAG) standard<br />
no longer meets all the demands,<br />
<strong>in</strong> terms of speed, p<strong>in</strong>-count and<br />
robustness, for debugg<strong>in</strong>g and<br />
test<strong>in</strong>g modern microcontrollers<br />
and <strong>com</strong>plex SoCs. This article<br />
describes new developments<br />
which promise considerable<br />
improvements for debugg<strong>in</strong>g, flash programm<strong>in</strong>g and system test.
®<br />
The INTEGRITY RTOS<br />
Certified and Deployed Technology<br />
The INTEGRITY RTOS is deployed and certified to:<br />
Avionics: DO-178B Level A, certified: 2002<br />
Industrial: IEC 61508 SIL 3, certified: 2006<br />
Medical: FDA Class III, approved: 2007<br />
Security: EAL6+ High Robustness, certified: 2008<br />
France:<br />
Israel:<br />
Sweden:<br />
Please contact your local office<br />
for your free Certification Information Pack.<br />
+33 (0) 143 143 700<br />
+972 (0)9 9584060<br />
+46 (0)8 750 82 70<br />
www.ghs.<strong>com</strong><br />
Germany:<br />
Netherlands:<br />
UK:<br />
+49 (0)228 43 30 777<br />
+31 (0)33 4613363<br />
+44 (0)1844 267950<br />
Copyright © 2009 Green Hills Software, Inc. Green Hills, the Green Hills logo and INTEGRITY are trademarks of Green Hills Software, Inc. <strong>in</strong> the U.S.and/or<br />
<strong>in</strong>ternationally. All other trademarks are the property of their respective owners.
SOFTWARE DEVELOPMENT<br />
Design<strong>in</strong>g fail-safe storage systems<br />
for embedded applications<br />
By Dave Hughes, HCC-<strong>Embedded</strong><br />
This article <strong>in</strong>vestigates the<br />
design of <strong>com</strong>plete storage<br />
solutions for embedded systems<br />
with particular reference<br />
to HDDs, SSDs, SD and CF<br />
cards, and raw flash.<br />
■ In recent years it has be<strong>com</strong>e much easier to<br />
store large amounts of data even on small embedded<br />
systems, with help from the cont<strong>in</strong>uous<br />
advances <strong>in</strong> flash storage that consistently challenge<br />
Moore’s law. For many developers of embedded<br />
systems the data they store and manipulate<br />
are extremely valuable. It is a <strong>com</strong>plex<br />
task that requires much thought and <strong>in</strong>novationtodesignasystem<strong>in</strong>whichdataarestored<br />
so that they are never lost or damaged, and are<br />
always ma<strong>in</strong>ta<strong>in</strong>ed <strong>in</strong> a consistent state. HCC-<br />
<strong>Embedded</strong> has spent significant time and effort<br />
to analyze, design and test reliable file system<br />
solutions for embedded devices. This article <strong>in</strong>vestigates<br />
the design of <strong>com</strong>plete storage solutions<br />
with particular reference to HDDs, SSDs,<br />
SD and CF cards, and raw flash.<br />
A standard media storage system is shown <strong>in</strong><br />
figure 1. It is important to understand this layered<br />
approach when aim<strong>in</strong>g for a reliable system.<br />
The reliability requirements reach from<br />
the top layer to the bottom layer: The application<br />
requires an adequate level of service from<br />
the file system; the file system requires an adequate<br />
level of service from the drivers; the drivers<br />
require an adequate level of service from the<br />
storage media. Without sufficient reliability <strong>in</strong><br />
any of the three levels, failure be<strong>com</strong>es an option.<br />
And these levels of service need to be clearly<br />
def<strong>in</strong>ed, because it clearly makes no sense to<br />
claim that a file system is fail-safe if the storage<br />
devices are unreliable. Each layer of the system<br />
needs to understand what fail-safety is for that<br />
layer and what it requires of other layers.<br />
Let us start by def<strong>in</strong><strong>in</strong>g the requirements that an<br />
application developer requires for fail-safe<br />
storage. First, we need to know precisely what<br />
fail-safe means. At HCC-<strong>Embedded</strong> this boils<br />
down to two ma<strong>in</strong> features. 1) Any time a file is<br />
written to the system the action of clos<strong>in</strong>g or<br />
flush<strong>in</strong>g the file will atomically switch its state<br />
from the previous consistent state to the new<br />
consistent state. Effectively, this leaves the decision<br />
as to what is consistent to the application<br />
developer. 2) In the event of unexpected reset of<br />
the system at any po<strong>in</strong>t while operat<strong>in</strong>g, when<br />
the system restarts all elements of the file system<br />
will be coherent and all files will be <strong>in</strong> their<br />
pre-restart consistent state.<br />
This po<strong>in</strong>t of consistency needs to be emphasized,<br />
because <strong>in</strong> any file system you need to determ<strong>in</strong>e<br />
when the new added data are valid, and<br />
therefore it is time to update the related metadata.<br />
All writes to the file system rema<strong>in</strong> un<strong>com</strong>mitted<br />
to the storage media until a close or<br />
flush is issued to signal that the new state<br />
should be made valid. In this way the developer<br />
can determ<strong>in</strong>e what a consistent state for the<br />
data is. This does not mean that the data are not<br />
written to the target media; it does mean that<br />
the meta-data of the file still refer to the previ-<br />
September 2009 6<br />
ously chosen consistent state until you decide<br />
otherwise. It also means that if you seek back <strong>in</strong><br />
a file and overwrite someth<strong>in</strong>g, then an orig<strong>in</strong>al<br />
copy must be ma<strong>in</strong>ta<strong>in</strong>ed. This ensures that, <strong>in</strong><br />
case an unexpected event occurs, the orig<strong>in</strong>al<br />
state of the file is valid and consistent. This<br />
rather straightforward description of fail-safety<br />
is the essence of a real, workable approach to<br />
build<strong>in</strong>g fail-safe file systems that are truly<br />
reliable.<br />
HCC-<strong>Embedded</strong> file systems are designed to<br />
achieve the fail-safe requirements def<strong>in</strong>ed, but<br />
only if the underly<strong>in</strong>g drivers and physical<br />
media meet certa<strong>in</strong> requirements. 1) The driver<br />
must write the data <strong>in</strong> the same sequence as<br />
it is received. This rule enforces the proper sequence<br />
even when there is a cache, because<br />
there is no possibility that a sector will be written<br />
when a previously written sector has not<br />
been written. 2) In the event of a physical reset<br />
or power loss, any sector of data must be either<br />
written, or the old sector contents must rema<strong>in</strong><br />
valid. There should be no <strong>in</strong>termediate state <strong>in</strong><br />
which the contents of a sector are effectively<br />
random. The switch from the old state of a sector<br />
to new state must be atomic. It is possible to<br />
design systems with different requirements, but<br />
they must be clearly described and understood<br />
to ensure that the system will meet the fail-safe<br />
design goal. These seem<strong>in</strong>gly simple requirements<br />
are not easy to achieve because of the
Figure 1. Logical structure of a standard<br />
media storage system<br />
design of storage devices. A stable power supply<br />
and a clean reset of power are mandatory, particularly<br />
when us<strong>in</strong>g systems <strong>in</strong>corporat<strong>in</strong>g<br />
flash memory. It is essential to have a brown-out<br />
detection that resets a flash card when power<br />
drops below a specified level. Without power at<br />
an acceptable level, reliable writ<strong>in</strong>g of data cannot<br />
be guaranteed. Various types of problems<br />
can occur. For example, a write may succeed<br />
when a previous one failed or a write or erase<br />
fails, thus creat<strong>in</strong>g bad blocks <strong>in</strong> the system. Several<br />
available flash-based cards experience <strong>com</strong>plete<br />
and permanent failure if you slowly drop<br />
the power to them while writ<strong>in</strong>g. Others <strong>in</strong>clude<br />
<strong>in</strong>ternal brown-out detection to avoid this.<br />
An obvious solution for most of these issues is<br />
to provide reliable power to the device. This is<br />
not necessarily as simple as at first appears. Data<br />
on device behaviour dur<strong>in</strong>g power failure is<br />
often difficult to obta<strong>in</strong> from manufacturers. As<br />
a result, the worst-case time required to store all<br />
outstand<strong>in</strong>g data may be difficult to ascerta<strong>in</strong>.<br />
For devices of some manufacturers, such data<br />
are available, and thus it is possible to design to<br />
the published specifications. But, although<br />
there is a workable solution for these cases, the<br />
choices be<strong>com</strong>e somewhat limited. Unreliable<br />
power will underm<strong>in</strong>e an otherwise fail-safe file<br />
system. Very few manufacturers, with only a few<br />
notable exceptions, state clearly the operat<strong>in</strong>g<br />
■ HCC: <strong>Embedded</strong> USB stacks for<br />
PIC32 MCUs<br />
HCC-<strong>Embedded</strong> releases <strong>com</strong>plete embedded<br />
USB Device, Host and OTG stacks for the Microchip<br />
PIC32 range of microcontrollers.<br />
HCC has ported its entire l<strong>in</strong>e of embedded<br />
USB Device, Host and OTG stacks to the<br />
PIC32 range of microcontrollers. With its release<br />
HCC now offers its<br />
News ID 342<br />
characteristics of the storage devices <strong>in</strong> terms<br />
that are useful to a designer of a genu<strong>in</strong>ely failsafe<br />
system. HCC has applied rigorous tests to<br />
many <strong>com</strong>mercially available solid state memory<br />
cards. The vast majority have been shown<br />
to exhibit non-safe behaviour. Only a small<br />
number of cards that are acceptable for use with<br />
fail-safe file systems are classified.<br />
Hard Disk Drives (HDDs) are uniquely difficult<br />
devices to use <strong>in</strong> reliable systems. The primary<br />
problem is that they all conta<strong>in</strong> an <strong>in</strong>tegrated<br />
data cache that is generally difficult to control.<br />
If the cache were easy to control, do<strong>in</strong>g so<br />
would decimate the disk performance. For all of<br />
the drives we have <strong>in</strong>vestigated, we have not<br />
found one that will clearly state worst case scenarios<br />
at power-off and how much time and<br />
power are required to ensure that the contents<br />
of the cache are safely written. If the safe flush<strong>in</strong>g<br />
of the cache cannot be guaranteed, then you<br />
have worst case scenarios <strong>in</strong> which large<br />
amounts of data are lost, and data that are<br />
written later could be present.<br />
SD cards, <strong>com</strong>pact flash cards and solid state<br />
drives all have similar design characteristics.<br />
They conta<strong>in</strong> arrays of NAND flash that are<br />
managed by a flash translation layer (FTL),<br />
which provides a logical sector <strong>in</strong>terface to the<br />
external system. The operation of FTLs is a<br />
closely guarded secret by most manufacturers,<br />
but it is clear that, to get maximum performance,<br />
many devices employ cach<strong>in</strong>g and parallel<br />
writ<strong>in</strong>g techniques. The result is that, <strong>in</strong> the<br />
event of unexpected reset, sectors can be<br />
written out of sequence.<br />
Integrated flash has a major advantage: the<br />
system design is then entirely under the developer<br />
control. However, care must still be taken.<br />
Look<strong>in</strong>g aga<strong>in</strong> at the diagram if flash is to be <strong>in</strong>terfaced<br />
to the system then some k<strong>in</strong>d of flash<br />
management layer is required between the file<br />
system and the flash. This is typically a flash<br />
translation layer, which is <strong>in</strong>corporated <strong>in</strong>to<br />
SSD, SD card and <strong>com</strong>pact flash card. It is imperative<br />
that the FTL be designed to be fail-safe<br />
and also that power is properly controlled. All<br />
Product News<br />
■ 'First Aid Kit - Edition 2' from EBV and TI<br />
Based on Standard L<strong>in</strong>ear and Logic ICs from<br />
Texas Instruments, the EBV-TI 'First Aid Kit'<br />
consists of a troubleshoot<strong>in</strong>g box conta<strong>in</strong><strong>in</strong>g a<br />
description of various problems, the way to<br />
solve them together with samples and<br />
documentation to accelerate time-tosolution<br />
implementation for R&D eng<strong>in</strong>eers<br />
and technicians.<br />
News ID 369<br />
SOFTWARE DEVELOPMENT<br />
media have their own peculiarities and weaknesses.<br />
However, with proper understand<strong>in</strong>g of<br />
the medium behaviour, which can be very <strong>com</strong>plex<br />
and subtle, fail-safe systems can be built.<br />
What are the primary conditions that can<br />
cause a file system to be damaged? Firstly it is<br />
useful to note that this can happen only when<br />
a write or erase operation is be<strong>in</strong>g performed<br />
on the target device. However, this could also be<br />
the result of a user operation or of a management<br />
function such as background erase or<br />
wear-levell<strong>in</strong>g. The two primary events which<br />
can cause file system failure are: 1) unexpected<br />
reset of the system because of power loss or<br />
other hardware condition; 2) unexpected reset<br />
of the system because of a bug. For example a<br />
HDD typically conta<strong>in</strong>s a large <strong>in</strong>ternal cache (8<br />
Mbytes or more), so if the disk loses power unexpectedly,<br />
then the file system may lose data <strong>in</strong><br />
the cache, and much data could be written out<br />
of sequence. A file system claim<strong>in</strong>g fail-safety<br />
really needs to specify what it can tolerate and<br />
still rema<strong>in</strong> failsafe, and then the design needs<br />
to reflect that.<br />
To ensure the failsafe characteristics of a file<br />
system, and also to understand the issues that<br />
arise, HCC has carried out extensive test<strong>in</strong>g <strong>in</strong><br />
two ma<strong>in</strong> forms. 1) Simulation. The entire file<br />
system and the drivers can be tested <strong>in</strong> simulation<br />
on a PC. Millions of iterations of failure<br />
scenarios can be generated very quickly and it<br />
is possible to verify the design of the file system.<br />
2) Test on an embedded system. Simulation of<br />
course does not test the system with the target<br />
media, and as illustrated it is crucially important<br />
to ensure that it provides the quality of<br />
service required. This is particularly true when<br />
device manufacturers do not provide detailed<br />
<strong>in</strong>formation about how their storage devices<br />
operate. This test<strong>in</strong>g is done by us<strong>in</strong>g an external<br />
circuit to randomly reset the target. On each<br />
reboot a verification program checks to see if<br />
the contents of the system have been damaged.<br />
Intensive test<strong>in</strong>g of many SD cards has shown<br />
that very few meet the requirements of atomicity<br />
and sequential writ<strong>in</strong>g, and as such are not<br />
suitable when data are important. ■<br />
■ Ashl<strong>in</strong>g adds support for TI’s Code<br />
Composer Studio 4<br />
Ashl<strong>in</strong>g Microsystems has added support for<br />
Version 4 of Texas Instruments Code Composer<br />
Studio on its Opella-XDS560 Debug Probe.<br />
Version 4 of Code Composer Studio is based on<br />
the Eclipse open source software framework.<br />
Opella-XDS560 is a high performance JTAG<br />
Debug Probe target<strong>in</strong>g TI DSP Platforms.<br />
News ID 423<br />
7 September 2009
SOFTWARE DEVELOPMENT<br />
MCIF – a systematic approach to<br />
software delivery excellence<br />
By Steven Trevellion, IBM Rational<br />
Measured Capability<br />
Improvement Framework<br />
(MCIF) was <strong>in</strong>troduced as<br />
a systematic approach to<br />
<strong>in</strong>crementally improv<strong>in</strong>g<br />
software and systems delivery<br />
capability. The iterative<br />
approach, illustrated with<br />
a real-life scenario, helps<br />
organisations to stay always<br />
focussed on the next step of<br />
improvement which is clearly<br />
def<strong>in</strong>ed and measured.<br />
■ Nowadays bus<strong>in</strong>ess environment requires<br />
development organisations to cont<strong>in</strong>uously<br />
improve their capability to deliver high quality<br />
systems and software. This is particularly true<br />
for <strong>com</strong>panies develop<strong>in</strong>g embedded systems<br />
because factors such as <strong>in</strong>novation and agility<br />
are key to build<strong>in</strong>g a <strong>com</strong>petitive advantage, <strong>in</strong><br />
addition to the more familiar concerns of cost,<br />
schedule and quality. In address<strong>in</strong>g all these factors,<br />
both economic and eng<strong>in</strong>eer<strong>in</strong>g discipl<strong>in</strong>e<br />
is required. Strategic risk-tak<strong>in</strong>g to explore new<br />
opportunities and good decision-mak<strong>in</strong>g must<br />
rely on objective data to identify real bus<strong>in</strong>ess<br />
value. The IBM Measured Capability Improvement<br />
Framework (MCIF) provides a systematic<br />
approach to <strong>in</strong>crementally improv<strong>in</strong>g software<br />
and systems delivery capability. A capability<br />
<strong>in</strong> this context means the <strong>com</strong>b<strong>in</strong>ation of<br />
process, tools, assets and skills that enable an organisation<br />
to efficiently and effectively execute<br />
an aspect of software development that results<br />
<strong>in</strong> delivered software. Figure 1 provides an<br />
overview of the capabilities addressed with<strong>in</strong><br />
MCIF, grouped <strong>in</strong>to three categories; bus<strong>in</strong>ess<br />
focused, delivery focused and foundation.<br />
Bus<strong>in</strong>ess-focused capabilities apply across one<br />
or more projects and, as a result, are more closely<br />
aligned with the bus<strong>in</strong>ess. Enterprise Architecture<br />
is the ability to def<strong>in</strong>e all aspects of the<br />
enterprise (such as e.g. bus<strong>in</strong>ess strategy, bus<strong>in</strong>ess<br />
processes, <strong>in</strong>formation, <strong>in</strong>frastructure and<br />
applications) as well as any transition plann<strong>in</strong>g<br />
and governance. Product and Portfolio Management<br />
is the ability to manage products<br />
and/or product l<strong>in</strong>es as a portfolio and thereby<br />
<strong>in</strong>crease the predictability of product development<br />
and alignment to bus<strong>in</strong>ess strategy. Delivery-focused<br />
capabilities apply to the execution<br />
of a s<strong>in</strong>gle software development project<br />
that is focused on delivery: Project Management<br />
is the ability to manage projects to agreed<br />
parameters e.g. stakeholder management, plann<strong>in</strong>g,<br />
staff<strong>in</strong>g, execut<strong>in</strong>g, monitor<strong>in</strong>g and risk<br />
management. Requirements Def<strong>in</strong>ition and<br />
Management is the ability to def<strong>in</strong>e, validate<br />
and manage requirements result<strong>in</strong>g <strong>in</strong> improved<br />
collaboration and <strong>com</strong>munication<br />
among bus<strong>in</strong>ess stakeholders and project teams.<br />
Analysis and Design conta<strong>in</strong>s the ability to<br />
transform all requirements <strong>in</strong>to a solution<br />
that has a robust architecture and sufficient<br />
design to govern and guide construction.<br />
Construction is the ability to perform detailed<br />
design tasks, source code organisation, to<br />
implement, unit test and <strong>in</strong>tegrate the code <strong>in</strong>to<br />
an executable system ready for system verification<br />
and quality test<strong>in</strong>g. Quality Management<br />
is the ability to ensure the required level of<br />
quality exists <strong>in</strong> the products or systems. Release<br />
Management is the ability to repeatedly and<br />
reliably build an auditable release of products or<br />
systems.<br />
September 2009 8<br />
Figure 1. Software delivery<br />
capabilities<br />
Foundation capabilities apply to all other capabilities<br />
and are <strong>in</strong> general a prerequisite for<br />
other capabilities. For example, quality management<br />
is of limited use unless the associated<br />
work products are managed with<strong>in</strong> a configuration<br />
and change management capability i.e.<br />
the system under test is of a known, reproducible<br />
state. Lifecycle Processes conta<strong>in</strong> the<br />
ability to follow a def<strong>in</strong>ed process (or method).<br />
Configuration and Change Management is<br />
the ability to uniquely identify and control all<br />
elements of a system that are required to be<br />
under configuration control and control<br />
changes to work products <strong>in</strong>clud<strong>in</strong>g version<br />
track<strong>in</strong>g and audit histories. Asset Discovery,<br />
Management and Re-use is the ability to identify,<br />
create, ma<strong>in</strong>ta<strong>in</strong> and retire re-useable assets<br />
<strong>in</strong> such a fashion as to facilitate easy discovery<br />
and re-use on subsequent products / systems.<br />
Figure 2. Value traceability tree
Measurement and Report<strong>in</strong>g <strong>in</strong>cludes the ability<br />
to provide measurements and reports (based on<br />
mean<strong>in</strong>gful metrics) aligned with bus<strong>in</strong>ess value<br />
to <strong>in</strong>form bus<strong>in</strong>ess and development related<br />
decision mak<strong>in</strong>g. There are <strong>in</strong>ter-relationships<br />
between capabilities which can be as important as<br />
the capabilities themselves. As an example, the<br />
traceability from requirements to design and test<br />
elements provides the ability to perform an impact<br />
analysis of any proposed changes. The MCIF<br />
approach to <strong>in</strong>stantiat<strong>in</strong>g or improv<strong>in</strong>g these<br />
capabilities is to follow a four phase approach:<br />
■ In the Target phase, bus<strong>in</strong>ess stakeholders def<strong>in</strong>e<br />
the set of bus<strong>in</strong>ess objectives (such as rapidly<br />
respond<strong>in</strong>g to market opportunities) before<br />
they work with development specialists to determ<strong>in</strong>e<br />
the associated eng<strong>in</strong>eer<strong>in</strong>g objectives<br />
(such as reduc<strong>in</strong>g product development times).<br />
The objectives are prioritised and over-arch<strong>in</strong>g<br />
strategies to achieve these objectives are def<strong>in</strong>ed.<br />
Each bus<strong>in</strong>ess and eng<strong>in</strong>eer<strong>in</strong>g objective has<br />
success criteria agreed to create a <strong>com</strong>mon view<br />
ofhowwewillknowwhenwehavesucceeded.<br />
■ In the Map phase, eng<strong>in</strong>eer<strong>in</strong>g objectives are<br />
mapped to delivery capabilities with<strong>in</strong> the development<br />
organisation. Dependencies between<br />
capabilities and other <strong>in</strong>terdependencies are<br />
identified and the deployment of capabilities<br />
time ordered result<strong>in</strong>g <strong>in</strong> a roadmap that provides<br />
a clear picture of when the eng<strong>in</strong>eer<strong>in</strong>g objectives<br />
(and, therefore, the bus<strong>in</strong>ess objectives<br />
that they are derived from) will be achieved.<br />
■ In the Adopt phase, the roadmap is executed.<br />
Capabilities are deployed via pilot and roll-out<br />
projects. Self-check<strong>in</strong>g by the development<br />
teams enables monitor<strong>in</strong>g and steerage of the<br />
adoption with<strong>in</strong> an adoption cycle.<br />
■ In the Review phase, progress towards the<br />
bus<strong>in</strong>ess objectives is reviewed and any corrections<br />
<strong>in</strong> the approach applied. Focus then typically<br />
returns to the next adoption phase to address<br />
the next <strong>in</strong>crement of capability deployment.<br />
On occasion, earlier phases may be revisited<br />
if significant refactor<strong>in</strong>g is required due<br />
to market or bus<strong>in</strong>ess changes.<br />
The follow<strong>in</strong>g example illustrates how the<br />
MCIF approach helped a mobile tele<strong>com</strong>munication<br />
<strong>com</strong>pany. The actual case is fictitious<br />
but is based on real-world scenarios and experience<br />
ga<strong>in</strong>ed by IBM Rational Software assist<strong>in</strong>g<br />
customers to improve their software delivery<br />
capability over the last 20 years. The <strong>com</strong>pany,<br />
although successful to date, knows that it<br />
needs to undertake significant change to cont<strong>in</strong>ue<br />
as a market leader. Software and systems<br />
eng<strong>in</strong>eer<strong>in</strong>g discipl<strong>in</strong>es are well established<br />
and mature, but are struggl<strong>in</strong>g to respond to<br />
imprecise or fuzzy demands <strong>in</strong> a highly-charged<br />
and dynamic marketplace. The <strong>com</strong>pany<br />
Figure 3. Self check results<br />
SOFTWARE DEVELOPMENT<br />
W<strong>in</strong>d gone from your sails?<br />
We Won’t Leave You<br />
High and Dry.<br />
Recent consolidations <strong>in</strong> the embedded <strong>in</strong>dustry have left many PowerPC ® users wonder<strong>in</strong>g<br />
where their next real-time or embedded L<strong>in</strong>ux ® operat<strong>in</strong>g system will <strong>com</strong>e from.<br />
At LynuxWorks, we are here to help. Our new PowerPC rescue package<br />
offers an open-standards based RTOS or embedded L<strong>in</strong>ux, and a migration<br />
kit to help PowerPC users stay with their processor of choice.<br />
*limited quantities available<br />
Visit www.lynuxworks.<strong>com</strong>/rescue-me to<br />
request a migration whitepaper and an emergency<br />
hand-crank flashlight-radio*.<br />
Open.Reliable.Safe.Secure.<br />
9 September 2009
SOFTWARE DEVELOPMENT<br />
Figure 4. Trend of risk retirement<br />
decides to undertake an improvement programme<br />
based on a systematic, measurable<br />
approach (MCIF). The l<strong>in</strong>es of bus<strong>in</strong>ess, product<br />
market<strong>in</strong>g and the development organisation<br />
conduct a bus<strong>in</strong>ess value workshop (part<br />
of MCIF phase 1). This determ<strong>in</strong>es the key<br />
bus<strong>in</strong>ess objectives and the measures that will<br />
be used to <strong>in</strong>form steer<strong>in</strong>g. These are identified<br />
as: <strong>in</strong>crease ability to be first <strong>in</strong> the market with<br />
<strong>in</strong>novative features (percentage of market lead<strong>in</strong>g<br />
products), meet market opportunity w<strong>in</strong>dows<br />
(products must meet production deadl<strong>in</strong>es<br />
to hit seasonal market release campaigns,<br />
percentage of product campaigns launched<br />
on time), and ma<strong>in</strong>ta<strong>in</strong> reputation for quality<br />
products (number of customer <strong>com</strong>pla<strong>in</strong>ts,<br />
number of returned products). Note that these<br />
are <strong>in</strong> addition to the exist<strong>in</strong>g revenue, profit<br />
and market share measures the <strong>com</strong>pany uses<br />
to govern and manage the bus<strong>in</strong>ess.<br />
The eng<strong>in</strong>eer<strong>in</strong>g objectives required to support<br />
the bus<strong>in</strong>ess objectives are def<strong>in</strong>ed: improve<br />
bus<strong>in</strong>ess alignment; eng<strong>in</strong>eer<strong>in</strong>g must be “<strong>in</strong>tune”<br />
<strong>in</strong> terms of collaborat<strong>in</strong>g with product<br />
market<strong>in</strong>g on new product features and<br />
requirements (average percentage of product<br />
requirements agreed between stakeholders); <strong>in</strong>crease<br />
product <strong>in</strong>novation, eng<strong>in</strong>eer<strong>in</strong>g must<br />
use its expertise to <strong>in</strong>vent ways of harness<strong>in</strong>g<br />
new technology result<strong>in</strong>g <strong>in</strong> new features and<br />
market opportunities (number of new <strong>in</strong>novations<br />
per quarter year); reduce product development<br />
time, eng<strong>in</strong>eer<strong>in</strong>g must make efficiency<br />
ga<strong>in</strong>s <strong>in</strong> order to deliver products <strong>in</strong><br />
shorter timescales (average project schedule),<br />
reduce project schedule uncerta<strong>in</strong>ty; eng<strong>in</strong>eer<strong>in</strong>g<br />
must <strong>in</strong>crease its ability to deliver product<br />
<strong>com</strong>mitments on schedule (project schedule<br />
variance), and ma<strong>in</strong>ta<strong>in</strong> product quality and reliability;<br />
eng<strong>in</strong>eer<strong>in</strong>g must cont<strong>in</strong>ue to uphold<br />
development rigour <strong>in</strong> terms of product quality<br />
and reliability (escap<strong>in</strong>g defect rate, mean<br />
time between failures, MTBF).<br />
The over-arch<strong>in</strong>g strategy selected is to adopt an<br />
iterative, risk-driven development process <strong>in</strong><br />
which eng<strong>in</strong>eer<strong>in</strong>g rigour is right-sized to<br />
provide the optimum balance between gover-<br />
Figure 5. Trend of the number of checked-out<br />
work items<br />
nance and change stability needed to enable<br />
flexibility to respond rapidly to chang<strong>in</strong>g<br />
market conditions and to get <strong>in</strong>novations <strong>in</strong>to<br />
production. In phase 2 the strategy is used to<br />
steer the selection of capabilities required to<br />
meet the agreed objectives. A high-level view of<br />
the resultant mapp<strong>in</strong>g (value traceability tree)<br />
of bus<strong>in</strong>ess objectives to eng<strong>in</strong>eer<strong>in</strong>g objectives<br />
to capabilities is provided <strong>in</strong> figure 2. In parallel<br />
the measurement system is developed to def<strong>in</strong>e<br />
the metrics to be used to monitor the<br />
improvement programme. A summary of the<br />
eng<strong>in</strong>eer<strong>in</strong>g capabilities and associated metrics<br />
is given below:<br />
Requirements Management: The shared vision<br />
replaces the exist<strong>in</strong>g manual feature and requirement<br />
registers with a shared environment<br />
where all stakeholders have easy access to def<strong>in</strong>itions<br />
and status. Associated metrics: No<br />
measure – this is effectively monitored as a b<strong>in</strong>ary<br />
function (Stakeholders do/do not have access<br />
to shared view) – the impact be<strong>in</strong>g evident<br />
<strong>in</strong> the requirement trend metrics given below.<br />
The story-board elicitation augments the exist<strong>in</strong>g<br />
textual requirements def<strong>in</strong>itions with<br />
story-board<strong>in</strong>g and other elicitation techniques<br />
to aid collaboration and <strong>com</strong>mon understand<strong>in</strong>g<br />
of imprecise needs. Associated metrics:<br />
Trend of requirements outl<strong>in</strong>ed, specified,<br />
agreed. In the Project Management Iterative development<br />
the development project is broken<br />
down <strong>in</strong>to a series of successive iterations. Each<br />
iteration has a fixed plan (budget and schedule)<br />
<strong>in</strong>clud<strong>in</strong>g allocated requirements, development<br />
activities and resources, results <strong>in</strong> a verified,<br />
demonstrable system of <strong>in</strong>cremental functionality,<br />
and has a change gate permitt<strong>in</strong>g requirement<br />
changes <strong>in</strong> the early, requirementsfocussed<br />
part of the iteration (circa 20% of the<br />
schedule), then clos<strong>in</strong>g to provide iteration stability.<br />
Associated metrics are: Iteration burndown<br />
(percentage <strong>com</strong>plete, rema<strong>in</strong><strong>in</strong>g estimate),<br />
Schedule Performance Index (SPI),<br />
Cost Performance Index (CPI), percentage iteration<br />
stable (percentage change gate open,<br />
closed). In the Risk-value lifecycle the content<br />
of iterations is prioritised by risk (to drive risk<br />
www.embedded-control-europe-<strong>com</strong><br />
September 2009 10<br />
Figure 6. Trend of test time (hours per system<br />
test)<br />
resolution as early as possible <strong>in</strong> the lifecycle)<br />
and bus<strong>in</strong>ess value (to deliver more valuable<br />
content first). Prioritisation is reviewed at the<br />
end of each iteration based on results and plann<strong>in</strong>g<br />
for subsequent iterations adjusted as required<br />
(the overall programme is steered to the<br />
optimum out<strong>com</strong>e for all stakeholders). Associated<br />
metrics are trend of risks retired (H, M,<br />
L magnitude), trend of value implemented.<br />
The Configuration and Change Management<br />
<strong>in</strong>cludes formal management and automation.<br />
Formal change management is the formal<br />
process to uniquely identify and control all development<br />
elements of the system (requirements,<br />
design, implementation source code) <strong>in</strong>clud<strong>in</strong>g<br />
version track<strong>in</strong>g and audit histories. Associated<br />
metrics are the trend of the number of<br />
work items configured (check <strong>in</strong>/out), trend of<br />
the number of change requests/status. Automation<br />
conta<strong>in</strong>s tool<strong>in</strong>g support for configuration<br />
and change management workflows.<br />
Provides a fully configured developer workspace<br />
and functionality to draw down (or be<br />
dynamically updated) a <strong>com</strong>plete set of configured<br />
(or latest) work items from across the<br />
development team (local and remote). Associated<br />
metrics are the percentage effort spent on<br />
CCM activities. The Quality Management <strong>in</strong>cludes<br />
cont<strong>in</strong>uous verification which means<br />
<strong>com</strong>plete system test<strong>in</strong>g (functional and performance),<br />
<strong>in</strong>formal dur<strong>in</strong>g iterations and formal<br />
for the end of iteration product. Associates<br />
metrics are the trend of number of defects<br />
(open, closed), mean time between failures<br />
(MTBF). Its Automation conta<strong>in</strong>s tool<strong>in</strong>g support<br />
for automated functional and performance<br />
test<strong>in</strong>g <strong>in</strong>clud<strong>in</strong>g report<strong>in</strong>g and generation of<br />
change requests based on identified defects.<br />
Associated metrics <strong>in</strong>cludes the trend of test<br />
time per build.<br />
With the capabilities and their associated<br />
metrics def<strong>in</strong>ed the next step is to def<strong>in</strong>e the<br />
roadmap, the high-level plan for adoption. Dependencies<br />
between capabilities are identified,<br />
the capabilities time ordered and a roadmap for<br />
a pilot project created. Five capabilities are
<strong>in</strong>stantiated <strong>in</strong> part I, the reason<strong>in</strong>g is provided<br />
by shared vision: provides the shared view of<br />
requirements across the stakeholder <strong>com</strong>munity<br />
that supports the new requirement elicitation<br />
techniques of the story-board elicitation<br />
capability; formal change management and associated<br />
automation provide the mechanism<br />
for control of configuration and change required<br />
by iterative development and the allocation<br />
and management of iteration content<br />
(risk-value lifecycle), and cont<strong>in</strong>uous verification<br />
and associated automation provide the<br />
mechanism for <strong>in</strong>formal and formal system<br />
functional and performance test<strong>in</strong>g required for<br />
the verification of risk removal and value<br />
earned dur<strong>in</strong>g each iteration.<br />
Aliveprojectwasselectedtopilotadoptionof<br />
the new capabilities (MCIF Phase 3). The selection<br />
of a live project ensured that the pilot attracted<br />
a high level of stakeholder visibility and<br />
that the out<strong>com</strong>e (positive or negative) reflected<br />
results <strong>in</strong> a true bus<strong>in</strong>ess context. At the end<br />
of the pilot, after six months, a formal bus<strong>in</strong>ess<br />
review was conducted. As the results were<br />
judged a success and no major refactor<strong>in</strong>g was<br />
required the adoption moved on to propagate<br />
the improvements made across the organisation<br />
via a number of waves. Each wave addressed<br />
one or more projects with<strong>in</strong> the organisation:<br />
Wave 1, three further live projects of approximate<br />
duration 6 months, Wave 2, all new projects,<br />
and Wave 3, selected legacy systems. As<br />
each capability <strong>com</strong>prised a package of process<br />
elements, tool<strong>in</strong>g support, assets and staff enablement,<br />
a central team was setup to manage<br />
the provision of each of these elements to project<br />
teams start<strong>in</strong>g adoption. Enablement was<br />
provided via quick-start workshops and on<br />
project mentor<strong>in</strong>g. Process, assets and support<strong>in</strong>g<br />
tool<strong>in</strong>g were provided as an <strong>in</strong>tegrated,<br />
collaborative development environment<br />
configured to meet the needs of each project.<br />
A self-check tool was used by the teams undertak<strong>in</strong>g<br />
the projects to ascerta<strong>in</strong> their adoption<br />
progress. The example <strong>in</strong> figure 3 shows<br />
the results of one of the project teams <strong>in</strong> wave<br />
1 self-check<strong>in</strong>g their adoption of the new project<br />
management capabilities. The team scored<br />
the adoption as high for iteration plann<strong>in</strong>g, risk<br />
allocation and value allocation to iterations but<br />
low for successive demonstrable systems. In<br />
practice this meant the iterations were not result<strong>in</strong>g<br />
<strong>in</strong> executable, verifiable systems (of <strong>in</strong>crementally<br />
<strong>in</strong>creas<strong>in</strong>g functionality). This was<br />
a serious error <strong>in</strong> the adoption as demonstrable<br />
systems are required for the valid retirement of<br />
risks, value based progress report<strong>in</strong>g and steer<strong>in</strong>g.<br />
A short period of <strong>in</strong>tensive mentor<strong>in</strong>g was<br />
undertaken to re-plan subsequent iterations<br />
and tra<strong>in</strong> the project teams. Subsequent self<br />
checks showed that the capability to deliver<br />
successive demonstrable systems was <strong>in</strong> place.<br />
SOFTWARE DEVELOPMENT<br />
Hav<strong>in</strong>g reached a major adoption milestone<br />
(end of pilot project) a steer<strong>in</strong>g board was convened<br />
(MCIF Phase 4 Review). Figure 4 provide<br />
three examples of the capability level results reviewed.<br />
This chart shows the retirement trends<br />
for risks classified as high and medium magnitude.<br />
In the risk-value lifecycle retirement of a<br />
risk means that there is demonstrable evidence<br />
that the risk has been mitigated. For example,<br />
<strong>in</strong> iteration 1 test<strong>in</strong>g proved that the system<br />
under development had met critical technical<br />
performance requirements identified as high<br />
magnitude risks and therefore those risks were<br />
retired. By the end of iteration 2 the pilot<br />
project had retired all high magnitude risks.<br />
Figure 5 shows the trend of the configuration<br />
state of work items (checked <strong>in</strong>/out) across the<br />
pilot project iterations. The trend shows the efforts<br />
made by the team to put work items under<br />
configuration control (checked-<strong>in</strong>) ready for<br />
formal system test<strong>in</strong>g at the end of each iteration<br />
(the dips towards zero items checked-out<br />
at the end of iterations). By the end of the f<strong>in</strong>al<br />
iteration the project had achieved 100% of<br />
work items under full configuration and change<br />
control.<br />
Figure 6 tracks the time the pilot project spent<br />
per system test. At the start of the project the<br />
<strong>in</strong>itial test<strong>in</strong>g took approximately four days of<br />
effort. This was consistent with historical data<br />
for manually <strong>in</strong>tensive test<strong>in</strong>g on previous<br />
projects. As the test<strong>in</strong>g was automated and<br />
experience of the new test<strong>in</strong>g environment<br />
improved this time was reduced to approximately<br />
six hours. The review board judged the<br />
results as significant improvements. By referr<strong>in</strong>g<br />
to the value traceability tree they were able to<br />
see the l<strong>in</strong>kage from these results to the eng<strong>in</strong>eer<strong>in</strong>g<br />
objectives and therefore the bus<strong>in</strong>ess<br />
objectives.<br />
The board approved cont<strong>in</strong>uation of the programme<br />
to wave 1, adoption on three further<br />
six month duration projects (returned to MCIF<br />
phase 3 for next adoption cycle). Wave 1 delivered<br />
the expected results across two of the three<br />
projects selected. The project that did not deliver<br />
the same level of results was exam<strong>in</strong>ed. The<br />
issue was identified (as described <strong>in</strong> the example<br />
self-check results) and corrective action<br />
taken but the time lost was not fully recovered.<br />
The cause of the issue was identified as <strong>in</strong>sufficient<br />
skills enablement of the project team and<br />
the resources with<strong>in</strong> the central support team<br />
were <strong>in</strong>creased to prevent re-occurrence. Today,<br />
the improved capabilities are adopted as bus<strong>in</strong>ess<br />
as usual for all new projects launched. The<br />
board is now consider<strong>in</strong>g the application of<br />
capabilities to selected legacy systems and the<br />
options for further capability improvement <strong>in</strong><br />
the areas of asset re-use and product and<br />
portfolio management. ■<br />
11 September 2009
MICROCONTROLLERS<br />
Cortex-M3 software modifications for<br />
ARM7TDMI programmers<br />
By Joseph Yiu and Andrew Frame, ARM<br />
This article expla<strong>in</strong>s some<br />
typical modifications that may<br />
be required to port code from<br />
the ARM7TDMI processor to<br />
the Cortex-M3 processor, <strong>in</strong><br />
order to execute more<br />
efficiently on the Cortex-M3<br />
or exploit some of its<br />
advanced features.<br />
■ The Cortex-M3 processor, <strong>in</strong>troduced <strong>in</strong><br />
2006, has some <strong>in</strong>novative and much improved<br />
features and capabilities when <strong>com</strong>pared<br />
with the ARM7TDMI processor. The<br />
richer <strong>in</strong>struction set and improved efficiency<br />
of the Cortex-M3 Thumb <strong>in</strong>struction set architecture<br />
(ISA) technology enables better optimized<br />
program code to be generated, alongside<br />
other code-sav<strong>in</strong>g advantages. S<strong>in</strong>ce the<br />
Cortex-M3 processor can f<strong>in</strong>ish a task quicker<br />
than an ARM7TDMI, more time can be spent<br />
<strong>in</strong> sleep mode, reduc<strong>in</strong>g the active power of the<br />
system and thereby enabl<strong>in</strong>g better system<br />
performance and energy efficiency. Alternatively<br />
the higher performance can be used to<br />
implement more advanced application features.<br />
A number of bit field manipulation <strong>in</strong>structions<br />
are supported by the Cortex-M3 processor<br />
that can improve the performance and code<br />
size when deal<strong>in</strong>g with bit fields, for example, <strong>in</strong><br />
peripheral controls and <strong>com</strong>munication protocol<br />
process<strong>in</strong>g. The Cortex-M3 processor<br />
supports two bit band memory regions, one for<br />
SRAM and one for peripherals. The use of bit<br />
band memory accesses can simplify peripheral<br />
control processes, and can reduce SRAM<br />
usage by convert<strong>in</strong>g Boolean variables <strong>in</strong>to bit<br />
band alias accesses with each Boolean data tak<strong>in</strong>g<br />
only one bit. The nested vectored <strong>in</strong>terrupt<br />
controller (NVIC) <strong>in</strong> the Cortex-M3 processor<br />
is easy to use, and provides flexible <strong>in</strong>terrupt<br />
control with much simpler <strong>in</strong>terrupt handl<strong>in</strong>g<br />
code along with the added benefit of priority<br />
level control to give better <strong>in</strong>terrupt handl<strong>in</strong>g<br />
performance. The fast s<strong>in</strong>gle-cycle multiply and<br />
new hardware divide <strong>in</strong>structions can enable<br />
further optimized ARM7TDMI processor assembly<br />
data process<strong>in</strong>g rout<strong>in</strong>es for DSP and<br />
saturate-like functionality. A number of low<br />
power sleep modes have been <strong>in</strong>troduced <strong>in</strong> the<br />
Cortex-M3 processor which are not available <strong>in</strong><br />
the ARM7TDMI processor. Enter<strong>in</strong>g low power<br />
mode is done by execut<strong>in</strong>g wait for <strong>in</strong>terrupt or<br />
wait for event (WFI/WFE) <strong>in</strong>structions. If the<br />
optional MPU is implemented then it can be<br />
used to improve the robustness of the application<br />
and accelerate the detection of errors<br />
dur<strong>in</strong>g the application development.<br />
The ITM module <strong>in</strong> the Cortex-M3 processor<br />
can be used to provide diagnosis (or debug)<br />
messages through the serial wire viewer (SWV)<br />
us<strong>in</strong>g standard debug hardware. For example, a<br />
retargeted function fputc can be implemented<br />
to write to the ITM stimulus port registers so<br />
that when the pr<strong>in</strong>tf function is executed, the<br />
message is output to the serial wire viewer connection,<br />
captured by the debug hardware and<br />
subsequently displayed <strong>in</strong> the ITM viewer w<strong>in</strong>dow.<br />
The processor provides a number of special<br />
<strong>in</strong>structions to <strong>in</strong>crease the performance <strong>in</strong><br />
September 2009 12<br />
data process<strong>in</strong>g, for example, bit field <strong>in</strong>sert, saturation<br />
and endian conversion for data. Some<br />
of these <strong>in</strong>structions can be generated by the C<br />
<strong>com</strong>piler us<strong>in</strong>g idiom recognitions or <strong>in</strong>tr<strong>in</strong>sic<br />
functions.<br />
The modifications required to enable<br />
ARM7TDMI processor software to run on a<br />
Cortex-M3 processor will depend on the <strong>com</strong>plexity<br />
of the ARM7TDMI software and how it<br />
was written. The rema<strong>in</strong>der of this article is divided<br />
<strong>in</strong>to different sections, based on the<br />
type of software that needs to be ported. Table<br />
1 shows a brief outl<strong>in</strong>e of the modification scenarios<br />
for port<strong>in</strong>g code from the ARM7TDMI<br />
processor to the Cortex-M3 processor.<br />
It is re<strong>com</strong>mended that all C code be re<strong>com</strong>piled<br />
so that it can be optimized for the more<br />
powerful Cortex-M3 Thumb <strong>in</strong>struction set,<br />
and also to ensure that all obsolete state switch<strong>in</strong>g<br />
code (between ARM and Thumb states) is<br />
removed. The ARM7TDMI processor supports<br />
both ARM and Thumb code, and although<br />
Thumb code <strong>com</strong>piled for ARM7TDMI<br />
will work, the Cortex-M3 <strong>in</strong>struction set should<br />
enable higher levels of performance whilst<br />
ma<strong>in</strong>ta<strong>in</strong><strong>in</strong>g the <strong>in</strong>dustry-lead<strong>in</strong>g code density<br />
offered by the orig<strong>in</strong>al ARM7TDMI Thumb <strong>in</strong>struction<br />
set. If the C code is purely ANSI C<br />
then no further changes will be required. Non-
Software type Modifications<br />
Part A: Simple applications<br />
written mostly <strong>in</strong> C<br />
Part B: Applications with mixed<br />
C and assembly code.<br />
Part C: Complex application with<br />
embedded OS, 3 rd party software<br />
libraries.<br />
Table 1. Brief outl<strong>in</strong>e of the modification scenarios for port<strong>in</strong>g code from the ARM7TDMI<br />
processor to the Cortex-M3 processor<br />
ANSI C code functions, for example, state<br />
chang<strong>in</strong>g pragma directives (#pragma arm<br />
and #pragma thumb), which are required to<br />
support the two different ARM7TDMI<br />
<strong>in</strong>struction sets, no longer apply and must be<br />
removed. The Cortex-M3 processor requires an<br />
extremely simple start-up sequence which can,<br />
if desired, be written <strong>com</strong>pletely <strong>in</strong> C. This<br />
C code should be re<strong>com</strong>piled for the Cortex-M3 to take<br />
advantage of the more powerful <strong>in</strong>struction set with only<br />
m<strong>in</strong>or modifications be<strong>in</strong>g needed.<br />
Startup code (<strong>in</strong>clud<strong>in</strong>g the vector table) needs to be<br />
simplified.<br />
Interrupt controller setup code needs to be updated to<br />
take advantage of the <strong>in</strong>tegrated <strong>in</strong>terrupt controller<br />
hardware and the removal of the need to provide top level<br />
<strong>in</strong>terrupt handler code.<br />
Interrupt handler wrapper code needs to be simplified.<br />
Sleep mode entry code may need to be added to<br />
implement the Cortex-M3 architected low power modes<br />
for reduc<strong>in</strong>g power consumption.<br />
Stack memory layout may need to be considered due to<br />
the reduction <strong>in</strong> number of stacks that need to be<br />
supported.<br />
All modifications for Part A, plus a possibility of the need<br />
to:<br />
Change any assembler <strong>in</strong>structions to support Thumb-2.<br />
Replace Software Interrupt (SWI) with Supervisor Call<br />
(SVC), and update SWI (SVC) handler.<br />
Add<strong>in</strong>g or adjust<strong>in</strong>g fault handlers.<br />
All modifications for Parts A and B, plus :<br />
Chang<strong>in</strong>g of embedded OS and 3 rd party libraries to<br />
updated versions for Cortex-M3.<br />
Differences ARM7TDMI Cortex�M3<br />
Modes Seven modes : Supervisor,<br />
System, User, FIQ, IRQ, Abort,<br />
Undef<strong>in</strong>ed<br />
Program Status<br />
Registers<br />
Current Program Status Register<br />
(CPSR), and banked Saved<br />
Program Status Register (SPSR)<br />
Two modes: Handler mode and Thread<br />
mode. Thread mode can be privileged or<br />
non privileged.<br />
xPSR : conta<strong>in</strong><strong>in</strong>g Application, Interrupt<br />
and Execution Program Status Registers<br />
(APSR, IPSR, and EPSR). The I and F mode<br />
bits are removed. The SPSR is removed<br />
because xPSR is saved onto the stack<br />
dur<strong>in</strong>g exception entry.<br />
Stack Up to six stack regions Up to two stack regions<br />
States ARM state and Thumb state Thumb state only<br />
MICROCONTROLLERS<br />
Table 2. Brief outl<strong>in</strong>e of differences <strong>in</strong> programmers models between the ARM7TDMI processor<br />
and the Cortex-M3 processor<br />
start-up sequence consists of a vector table with<br />
an <strong>in</strong>itial value for the ma<strong>in</strong> stack po<strong>in</strong>ter<br />
(MSP) followed by a vector address for each exception,<br />
with the possibility to enter ma<strong>in</strong> or C<br />
<strong>in</strong>itialization code directly from the reset vector,<br />
or via optional start-up code. While microcontrollers<br />
based on the ARM7TDMI processor<br />
would generally have a separate <strong>in</strong>terrupt<br />
13 September 2009<br />
AAEON’s Computer On<br />
Module (COM) Service<br />
� From Design to Delivery with AAEON’s<br />
ETX/XTX/COM Express Modules<br />
� Less Design Effort and Less Risk<br />
� Time-to Market Solution with<strong>in</strong> 30 Days<br />
ECB-951D<br />
( (Carrier Board) )<br />
Applications:<br />
» Retail R e t a i l&A & Advertis<strong>in</strong>g d v e r t i s i n g<br />
» Medical<br />
» Test<br />
&<br />
MMeasurement<br />
easurement<br />
» Gam<strong>in</strong>g<br />
& EEnterta<strong>in</strong>ment<br />
nterta<strong>in</strong>ment<br />
» Industrial I n du s t r i a lA Automation u t o ma t i o n<br />
» Military M Military<br />
&G & Government overnment<br />
» Security S Security<br />
AAEON<br />
Technology Tee<br />
chnolog<br />
y GGmbH<br />
mbH<br />
NanoCOM-U15<br />
(Ultra Small Size)<br />
AAEON’s AAEON’ s COM (Computer On Modul Module) le) is a <strong>com</strong>pact CPU board<br />
that <strong>in</strong>tegrates primary primary functions functions <strong>in</strong>to<br />
<strong>in</strong>to a small form factor<br />
factor. .<br />
The three phases for AAEON’ AAEON’s s COM<br />
Services are document<br />
support, technical support, and design-to-delivery(DTD)<br />
ODM<br />
service. With With AAEON’s AAEON’ sCOM COM and <strong>in</strong>n <strong>in</strong>novative ovative service,<br />
AAEON can design the carrier(base) boards by customers’<br />
demands. Customers can thus enjoy the follow<strong>in</strong>g benefits:<br />
1. Professional consultation for carrier carrie er board designs.<br />
2. Faster time to to market.<br />
3. Reliable, high quality products with<br />
h <strong>com</strong>petitive pric<strong>in</strong>g.<br />
4. Directly support /service from R&D R&D. D.<br />
5. Long-term support.<br />
An And<br />
der erT<br />
Trift rift6<br />
65d, 5d,<br />
D-63303 D-63303D<br />
Dreieich, r e eieich,G<br />
Germany ermany<br />
Tel:<br />
+ +49-(0)61033-7479-00<br />
49-(<br />
0)<br />
61033-747<br />
9-00<br />
Email: Email<br />
: saleseurope@aaeon.<strong>com</strong><br />
saleseurope@aaeo<br />
n.<br />
<strong>com</strong><br />
Fax:<br />
+ +49-(0)61033-7479-49<br />
49-(<br />
0)<br />
61033-747<br />
9-49<br />
URL:<br />
http://www.aaeon.eu<br />
http:<br />
/ / www.<br />
aaeon.<br />
eu<br />
www.aaeon.eu<br />
ww<br />
ww.<br />
aa<br />
e eon.<br />
eu
MICROCONTROLLERS<br />
Address<strong>in</strong>g modes Supported <strong>in</strong> ARM7TDMI Supported <strong>in</strong> Cortex-M3<br />
Increment after – address<br />
<strong>in</strong>crement after each access<br />
Increment before – address<br />
<strong>in</strong>crement before each access<br />
Decrement after – address<br />
decrement after each access<br />
Decrement before – address<br />
decrement before each access<br />
controller, the Cortex-M3 processor conta<strong>in</strong>s an<br />
<strong>in</strong>tegrated nested vectored <strong>in</strong>terrupt controller<br />
(NVIC). S<strong>in</strong>ce the address location and the<br />
programmer model for the <strong>in</strong>terrupt controllers<br />
are likely to be different, the setup code<br />
for the <strong>in</strong>terrupt controllers would likely be<br />
different. The use of an assembly code wrapper,<br />
which is normally required with the<br />
ARM7TDMI processor, can be <strong>com</strong>pletely<br />
elim<strong>in</strong>ated on the Cortex-M3 processor because<br />
the exception mechanism automatically handles<br />
nested <strong>in</strong>terrupts, executes the correct<br />
<strong>in</strong>terrupt handler and handles sav<strong>in</strong>g and<br />
restor<strong>in</strong>g of a number of registers so that the<br />
exception handlers can be programmed as C<br />
functions.<br />
It is possible that a program might behave<br />
differently after be<strong>in</strong>g ported from<br />
ARM7TDMI processor to the Cortex-M3<br />
processor due to differences <strong>in</strong> execution speed.<br />
For example, a system that uses software to generate<br />
bit-bang operations like SPI and I²C<br />
might achieve higher speeds when runn<strong>in</strong>g on<br />
a Cortex-M3 processor based microcontroller<br />
and, as a result, it may be necessary to adjust<br />
any software tim<strong>in</strong>g constant for the application<br />
firmware. The Cortex-M3 processor has only<br />
two stack po<strong>in</strong>ters, and unless the software requires<br />
an embedded OS or requires the separation<br />
of privileged and non-privileged levels,<br />
it is possible to use just one stack region for the<br />
whole application. This makes stack memory<br />
plann<strong>in</strong>g much easier and often results <strong>in</strong> the<br />
stack memory size requirement on the Cortex-<br />
M3 processor be<strong>in</strong>g much less. The <strong>in</strong>itialization<br />
of the second stack po<strong>in</strong>ter (PSP – process<br />
LDMIA/STMIA, POP (LDMIA /<br />
LDMFD with SP as base)<br />
LDMIB/STMIB -<br />
LDMDA/STMDA -<br />
LDMDB/STMDB, PUSH<br />
(STMDB / STMFD with SP as<br />
base)<br />
Table 3. Load and store multiple address modes supported by the Cortex-M3 processor<br />
Instruction ARM code Thumb (16-bit) Thumb (32-bit)<br />
B label +/- 32MB +/-2K +/-16MB<br />
stack po<strong>in</strong>ter) can be performed by the start-up<br />
code or by the OS <strong>in</strong>itialization sequence.<br />
Projects with mixed C and assembler code may<br />
require additional modifications due to differences<br />
<strong>in</strong> the model and <strong>in</strong>struction set of the<br />
programmer. Whilst the ARM7TDMI and Cortex-M3<br />
register bank (R0 to R15) registers are<br />
similar, there are a number of modifications required<br />
due to the simplification of the Cortex-<br />
M3 programmer’s model. Table 2 lists the key<br />
differences <strong>in</strong> the programmer models. The<br />
Cortex-M3 programmer model is much simpler<br />
than the ARM7TDMI because the handler<br />
mode manages all types of exception <strong>in</strong> the<br />
same way. Also, fewer banked registers results <strong>in</strong><br />
less <strong>in</strong>itialization before enter<strong>in</strong>g the ma<strong>in</strong><br />
application. In most simple applications, only<br />
a simple vector table is required and then the<br />
rest of the cod<strong>in</strong>g can be done <strong>in</strong> C. The Cortex-M3<br />
processor does not require state chang<strong>in</strong>g<br />
branch veneers which switch the processor<br />
between ARM and Thumb states and so any<br />
state chang<strong>in</strong>g code <strong>in</strong> assembler files should be<br />
removed.<br />
All Thumb <strong>in</strong>structions on the ARM7TDMI<br />
can execute on the Cortex-M3 processor. However,<br />
the legacy SWI (software <strong>in</strong>terrupt) <strong>in</strong>struction<br />
has been renamed to SVC (supervisor<br />
call), and its associated handler will require<br />
modification (See SWI and SVC section). For<br />
ARM assembler files, some care is needed to<br />
avoid the few ARM <strong>in</strong>structions that do not<br />
have a Thumb equivalent and cannot be used<br />
on the Cortex-M3 processor. These are: Swap<br />
(SWP) and Swap Byte (SWPB) <strong>in</strong>structions. In<br />
the Cortex-M3 processor swap has been re-<br />
September 2009 14<br />
LDMIA/STMIA, POP (LDMIA<br />
with SP as base)<br />
LDMDB/STMDB, PUSH<br />
(STMDB with SP as base)<br />
BL label +/- 32MB NA – always 32-bit +/-16MB (was 4MB <strong>in</strong> ARM7TDMI)<br />
B label<br />
(Conditional branch)<br />
+/- 32MB -252 to +258 +/-1MB, or<br />
Table 4. List<strong>in</strong>g of the branch ranges for ARM and Thumb code<br />
+/-16MB when branch <strong>in</strong>struction<br />
is used with IT <strong>in</strong>struction block<br />
placed by load and store exclusive access <strong>in</strong>structions<br />
(LDREX and STREX). Load/Store<br />
<strong>in</strong>structions. The Cortex-M3 processor supports<br />
<strong>com</strong>monly used load and store multiple<br />
address modes. Table 3 shows the load and store<br />
multiple address modes supported by the Cortex-M3<br />
processor. If the software code to be<br />
ported was written for memory address arithmetic<br />
us<strong>in</strong>g ARM <strong>in</strong>structions, the memory offset<br />
value will need to be changed because the<br />
value of PC would be the address of the current<br />
<strong>in</strong>struction plus 4. The Cortex-M3 processor<br />
conditional execution feature is supported by<br />
plac<strong>in</strong>g <strong>in</strong>structions <strong>in</strong>to an IT (If-Then) <strong>in</strong>struction<br />
block with each IT <strong>in</strong>struction block<br />
hav<strong>in</strong>g up to 4 conditional <strong>in</strong>structions. With<br />
the ARM development tools, the assembler automatically<br />
<strong>in</strong>serts IT <strong>in</strong>structions <strong>in</strong>to the<br />
output image result<strong>in</strong>g <strong>in</strong> a simple software<br />
port<strong>in</strong>g process whilst ma<strong>in</strong>ta<strong>in</strong><strong>in</strong>g very efficient<br />
code density. Both the ARM7TDMI<br />
processor and the Cortex-M3 processor support<br />
move to register from status (MRS) and<br />
move to status register (MSR) <strong>in</strong>structions but<br />
the effects of these <strong>in</strong>structions differ <strong>in</strong> execution<br />
on each processor.<br />
On the Cortex-M3 processor, the <strong>in</strong>terrupt<br />
enable and disable is handled by a separate<br />
exception mask register called PRIMASK and<br />
the exception model has priority levels assigned<br />
to each <strong>in</strong>terrupt. Change processor state (CPS)<br />
<strong>in</strong>structions allow the <strong>in</strong>terrupt enabl<strong>in</strong>g or disabl<strong>in</strong>g<br />
operation to be done <strong>in</strong> just one <strong>in</strong>struction.<br />
The Cortex-M3 processor <strong>in</strong>terrupt<br />
enable/disable (PRIMASK) is separated from<br />
the PSR so the restoration of PSR status at <strong>in</strong>terrupt<br />
returns does not change the <strong>in</strong>terrupt<br />
enable/disable behaviour. If the ARM7TDMI<br />
application assumed that the <strong>in</strong>terrupt would<br />
be disabled when enter<strong>in</strong>g an exception handler,<br />
and relies on this behavior, then the exception<br />
handler must also be changed. The ARM <strong>in</strong>struction<br />
“MOVS PC, LR” is used <strong>in</strong><br />
ARM7TDMI processor as exception return.<br />
This must be changed to “BX LR” on the Cortex-M3<br />
processor because the move <strong>in</strong>struction<br />
(MOV) is not a valid <strong>in</strong>struction for exception<br />
return.<br />
When port<strong>in</strong>g assembler code from ARM code<br />
to Cortex-M3 Thumb code, some of the branch<br />
and conditional branch <strong>in</strong>structions will need<br />
modification to specify that the larger ranged<br />
32-bit version of the <strong>in</strong>struction is used. This is<br />
done by add<strong>in</strong>g the .W suffix. For example,<br />
BEQ.W label, table 4 lists the branch ranges for<br />
ARM and Thumb code. The SWI <strong>in</strong>struction <strong>in</strong><br />
the ARM7TDMI processor equates to the SVC<br />
<strong>in</strong>struction <strong>in</strong> the Cortex-M3 processor. The<br />
b<strong>in</strong>ary encod<strong>in</strong>g of the <strong>in</strong>struction rema<strong>in</strong>s<br />
unchanged, but the handler code needs modification<br />
if it needs to extract the immediate<br />
value from the SVC/SWI <strong>in</strong>struction. ■
■ STM: STM32 MCUs with Ethernet, USB<br />
OTG and CAN<br />
STMicroelectronics confirms full production<br />
availability of its latest STM32 Connectivity<br />
L<strong>in</strong>e microcontrollers built on the ARM Cortex-M3<br />
processor. The STM32 Connectivity<br />
L<strong>in</strong>e allows developers to take advantage of <strong>in</strong>dustry-standard<br />
32-bit process<strong>in</strong>g <strong>in</strong> designs requir<strong>in</strong>g<br />
simultaneous Ethernet, USB, CAN<br />
and audio-class I2S capabilities. Two variants<br />
are available, <strong>in</strong>clud<strong>in</strong>g the STM32F105 series<br />
<strong>com</strong>b<strong>in</strong><strong>in</strong>g a Full-Speed USB 2.0 Host/Device/OTG<br />
peripheral and two CAN2.0B controllers<br />
with advanced filter<strong>in</strong>g capabilities.<br />
News ID 1531<br />
■ TI: system-on-chip meter<strong>in</strong>g solution<br />
Support<strong>in</strong>g three-phase e-meter<strong>in</strong>g applications,<br />
Texas Instruments announces the new<br />
ultra-low power MSP430F471xx microcontroller<br />
series. The F471xx system-on-chip meter<strong>in</strong>g<br />
solution achieves lead<strong>in</strong>g accuracy results,<br />
and offers simultaneous sampl<strong>in</strong>g of<br />
voltage and current as well as tamper-detection<br />
for efficient and reliable energy measurement.<br />
News ID 1581<br />
■ Microchip: PIC MCUs feature enhanced<br />
mid-range 8-bit core<br />
Microchip announces the first six members of<br />
the PIC16F193X family of microcontrollers,<br />
featur<strong>in</strong>g Microchip’s enhanced mid-range 8bit<br />
core. The <strong>in</strong>creased memory and core capabilities<br />
deliver enhanced support for both C<br />
and Assembly programmers, while the ‘LF’ family<br />
members feature Microchip’s nanoWatt<br />
XLP Technology for extreme low power operation.<br />
News ID 1898<br />
■ Evatronix: 8051 MCU now fully supported<br />
by ARM Keil Vision4 IDE<br />
Evatronix announces full support of its<br />
R8051XC2 microcontroller IP by the ARM Keil<br />
Vision4 Integrated Development Environment.<br />
μVision4 has been designed to enhance<br />
developer’s productivity, enabl<strong>in</strong>g faster, more<br />
efficient program development and verification.<br />
The flexible w<strong>in</strong>dow management system <strong>in</strong>troduced<br />
<strong>in</strong> Vision4 enables developers to use<br />
multiple monitors and provides <strong>com</strong>plete control<br />
over w<strong>in</strong>dow placement anywhere on the<br />
visual surface.<br />
News ID 1973<br />
■ Digi-Key: <strong>com</strong>munity for Freescale<br />
Tower System<br />
Freescale Semiconductor’s new Tower System<br />
and Towergeeks.org, is an onl<strong>in</strong>e <strong>com</strong>munity<br />
created for eng<strong>in</strong>eers by Digi-Key. The Tower<br />
Product News<br />
System is a modular, reconfigurable development<br />
platform for 8-, 16-, and 32-bit microcontrollers<br />
that allows designers to get to market<br />
faster with packaged evaluation boards,<br />
tools, and runtime software. Comprised of<br />
three types of modules (microcontroller, peripheral,<br />
and elevator modules), the Tower System<br />
enables eng<strong>in</strong>eers to reuse tools and rapidly<br />
prototype designs.<br />
News ID 1614<br />
■ Atmel: AVR MCU family with CAN and<br />
LIN connectivity<br />
Atmel announces a new family of AVR microcontrollers<br />
targeted at the <strong>in</strong>dustrial control<br />
market. The ATmega16M1, ATmega32M1, and<br />
ATmega64M1 have been developed to serve the<br />
need for high accuracy pulse width modulation<br />
for advanced motor control applications with<br />
CAN and LIN connectivity. The new family of<br />
devices feature 16, 32, and 64 KB of Flash, general<br />
purpose IO p<strong>in</strong>s, analog to digital converter,<br />
analog <strong>com</strong>parators, Power Stage <strong>Control</strong>ler,<br />
and 8 and 16 bit timers.<br />
News ID 308<br />
■ MSC: 6-p<strong>in</strong> t<strong>in</strong>yAVR features ultra-small<br />
package<br />
MSC announces ATt<strong>in</strong>y10, a new 6-p<strong>in</strong> t<strong>in</strong>yAVR<br />
microcontroller from Atmel. As smallest device<br />
<strong>in</strong> the grow<strong>in</strong>g t<strong>in</strong>yAVR family, it <strong>com</strong>es <strong>in</strong> a 6p<strong>in</strong><br />
SOT-23 package, measur<strong>in</strong>g only 2.9 x 1.6<br />
mm. The device fits <strong>in</strong> a wide range of applications<br />
where size and cost are of high importance.<br />
ATt<strong>in</strong>y10, with p<strong>in</strong> <strong>com</strong>patibility to Microchip’s<br />
PIC10F products, features 16-bit timer/counter,<br />
PWM outputs, <strong>com</strong>b<strong>in</strong>ation of 8-bit ADC and<br />
analog <strong>com</strong>parator, additional SRAM or the AVR<br />
CPU for higher performance.<br />
News ID 1502<br />
■ Atlantik: ZigBee SoCs based on ARM<br />
Cortex-M3<br />
Atlantik Elektronik presents the new EM 300<br />
series first ZigBee SoCs based on the 32-bit<br />
ARM-Cortex-M3-processor. The EM300 Series,<br />
the next generation ZigBee chip family that<br />
packs the <strong>in</strong>dustry´s highest wireless network<strong>in</strong>g<br />
performance and application code space<br />
<strong>in</strong>to the lowest power-consum<strong>in</strong>g chip set to<br />
build sophisticated products for smart energy<br />
and home area networks as well as home and<br />
build<strong>in</strong>g automation.<br />
News ID 1572<br />
■ Renesas: SuperH solution for GUI<br />
and video display applications<br />
Renesas announces the latest members of its<br />
SuperH l<strong>in</strong>e-up, built around the SH-2A core<br />
with its superb realtime process<strong>in</strong>g capability.<br />
MICROCONTROLLERS<br />
The SH7264 and SH7262 have been designed<br />
for visualisation and GUI applications and offer<br />
up to 1MB of on-chip SRAM. This allows video<br />
display capabilities to be implemented without<br />
the need for external RAM, thereby offer<strong>in</strong>g significant<br />
reductions <strong>in</strong> overall system costs and<br />
power consumption.<br />
News ID 345<br />
■ Beck IPC: 32-bit version of IPC@CHIP<br />
controller<br />
With the new IPC@CHIP SC2x3 Beck IPC<br />
moved forwards to the field of 32-bitcontroller.<br />
The IPC@CHIP SC2x3 represents<br />
the consistent upgrad<strong>in</strong>g of the IPC@CHIP serial<br />
for the area of high-end control applications<br />
or fast data transmittal. Equipped with<br />
760 MIPS at 400 MHz clock rate, 32 bits and <strong>in</strong>tegrated<br />
double precision float<strong>in</strong>g po<strong>in</strong>t unit,<br />
the latest SC2x3-modules are predest<strong>in</strong>ed for<br />
demand<strong>in</strong>g tasks <strong>in</strong> the area of control and<br />
<strong>com</strong>munication.<br />
News ID 1590<br />
■ CML: 32-bit MCU for <strong>in</strong>dustrial sens<strong>in</strong>g<br />
and control<br />
CML Microsystems has unveiled a new<br />
RISC/DSP microcontroller product from its<br />
specialist semiconductor and microprocessor<br />
daughter-<strong>com</strong>pany, Hyperstone. The new E2 is<br />
a high-performance, RoHS <strong>com</strong>pliant 32-Bit<br />
RISC/DSP microcontroller, with advanced features<br />
such as a programmable serial <strong>com</strong>munications<br />
eng<strong>in</strong>e, ADC unit, 32kb of on-chip I-<br />
RAM, <strong>com</strong>plemented with an external memory<br />
and peripheral <strong>in</strong>terface controller.<br />
News ID 1538<br />
■ AMD: dual-core processors for<br />
embedded platform<br />
AMD announces availability of two new dualcore,<br />
18W TDP processors for the highly-scalable<br />
ASB1 BGA embedded client platform. The<br />
AMD Turion Neo X2 processor Model L625<br />
and the AMD Athlon Neo X2 processor Model<br />
L325 deliver PC-caliber performance <strong>in</strong> a very<br />
low power envelope and with an embeddedfriendly<br />
ball grid array package.<br />
News ID 302<br />
■ Cyan: new 16-bit microcontroller<br />
achieves 0.71 DMIPS/MHz<br />
Cyan announces the launch of the eCOG16E01.<br />
With Cyan’s new CyCore CPU at its heart, this<br />
16-bit microcontroller outperforms other 16bit<br />
MCUs. In Dhrystone v2.1 benchmarks, the<br />
eCOG16E01 has achieved 0.71 DMIPS/MHz,<br />
which exceeds the performance achieved by<br />
lead<strong>in</strong>g MCU suppliers.<br />
News ID 1484<br />
15 September 2009
MICROCONTROLLERS<br />
ARM-based SoCs as alternatives to<br />
embedded board solutions<br />
By Ruediger Senghaas, MSC-Gleichmann<br />
Thanks to their high<br />
<strong>com</strong>put<strong>in</strong>g power, multimedia<br />
characteristics, and availability<br />
of board-support packages,<br />
e.g. for W<strong>in</strong>dows or L<strong>in</strong>ux,<br />
SoCs such as the S3C6410<br />
from Samsung present serious<br />
<strong>com</strong>petition to SoCs based on<br />
Intel Atom processors, at least<br />
<strong>in</strong> cost-sensitive systems.<br />
■ What do mobile and stationary systems have<br />
<strong>in</strong> <strong>com</strong>mon with TFT displays, media players,<br />
telephone and radio equipment, <strong>in</strong>dustrial<br />
controls and signal process<strong>in</strong>g systems? They all<br />
require a relatively high performance and<br />
should preferably cost noth<strong>in</strong>g. Of course,<br />
ARM-based SoCs are not given away for free,<br />
but at least you usually get an amaz<strong>in</strong>g amount<br />
of performance for a <strong>com</strong>paratively small<br />
amount of money. The follow<strong>in</strong>g example of<br />
the Samsung S3C6410X will show this. The<br />
proven Harvard architecture serves as a basis for<br />
ARM11 controllers. This enables simultaneous<br />
access to program code and data whereby access<br />
to the program code takes place via the 16<br />
Kbyte <strong>in</strong>struction cache and also the 16 Kbyte<br />
<strong>in</strong>struction TCM. S<strong>in</strong>ce the caches are dynamically<br />
managed from the controller, the <strong>in</strong>struction<br />
TCM helps with the process<strong>in</strong>g of <strong>in</strong>structions,<br />
which must be handled determ<strong>in</strong>istically.<br />
This <strong>in</strong>cludes, for example, <strong>in</strong>terrupts.<br />
The provision of the data takes place via the 16<br />
Kbyte data cache and the equally-sized data<br />
TCM. The latter can conta<strong>in</strong> data <strong>in</strong> blocks that<br />
require elaborate process<strong>in</strong>g, e.g. audio or<br />
video data. Both with the data TCM and the <strong>in</strong>struction<br />
TCM, data from other memory areas<br />
is made available via DMA.<br />
Connection between the ARM1178JZF-S CPU<br />
core and peripherals and respective memories<br />
takes place via the level 2 <strong>in</strong>terface. Data is sent<br />
and received <strong>in</strong> <strong>com</strong>pliance with the AMBA<br />
AXI protocol. AMBA, an ARM-developed IP, is<br />
an acronym for advanced microcontroller bus<br />
architecture. Four <strong>in</strong>terface protocols are specified<br />
<strong>in</strong> the AMBA 3 specification: AHB (advanced<br />
high-performance bus), APB (advanced<br />
peripheral bus), ATB (advanced trace bus)<br />
and AXI (advanced eXtensible <strong>in</strong>terface). The<br />
advanced eXtensible <strong>in</strong>terface ensures the supply<br />
of the caches with new data via 64-bit bandwidth<br />
and is an essential element for <strong>in</strong>creas<strong>in</strong>g<br />
the performance of the ARM architecture. It is<br />
based on a master-slave concept. S<strong>in</strong>ce several<br />
masters can be active on the bus, the access is<br />
coord<strong>in</strong>ated by a bus arbiter. Address and control<br />
<strong>in</strong>formation between master and slave are<br />
exchanged before the actual data transfer via<br />
AXI. Therefore, <strong>in</strong> addition to provid<strong>in</strong>g the<br />
dest<strong>in</strong>ation address, <strong>in</strong>formation about data<br />
length, transfer size and transmission characteristics<br />
(burst modes, cach<strong>in</strong>g or buffer<strong>in</strong>g control,<br />
atomic access, etc.) are also provided.<br />
AXI also enables out-of-order transaction <strong>com</strong>pletion.<br />
It this case, it concerns a process <strong>in</strong><br />
which each <strong>in</strong>dividual transaction that takes<br />
place via the <strong>in</strong>terface is furnished with an ID<br />
tag. This enables send<strong>in</strong>g and receiv<strong>in</strong>g of<br />
data, without adherence to the correct sequence.<br />
As a result, for example, data streams<br />
from slow slaves can be <strong>in</strong>terrupted to occasionally<br />
transport the data from fast slaves. Sep-<br />
September 2009 16<br />
Figure 1. Block diagram<br />
ARM1178JZF-S<br />
arate unidirectional read and write channels as<br />
well as the support of unaligned data transfers<br />
also accelerate the <strong>com</strong>munication via AXI. AXI<br />
is def<strong>in</strong>ed for bus widths of up to 1024 bits. In<br />
current systems nowadays, we f<strong>in</strong>d bus widths<br />
of 64 bits. The advanced high-performance bus<br />
also supports large bus bandwidths and a high<br />
data throughput, but offers less flexibility with<br />
the management and control of several masters<br />
as well as with the optimization of data streams<br />
on the bus. The advanced peripheral bus on the<br />
other hand is used to <strong>in</strong>tegrate peripherals with<br />
a low bandwidth requirement and speed <strong>in</strong> the<br />
processor architecture. It relates to a simple bus<br />
system with which only addresses, data and status<br />
of the data transmission are <strong>com</strong>municated.<br />
A further important part of the ARM1176JZF-<br />
S core is its memory management unit (MMU).<br />
The MMU not only monitors the write and<br />
read accesses to the respective memory. Its key<br />
functions also <strong>in</strong>clude the transmission of virtual<br />
memory addresses to physical addresses, a<br />
function that amongst others is needed by the<br />
operat<strong>in</strong>g systems, as well as monitor<strong>in</strong>g and<br />
management of access rights. The latter take<br />
place accord<strong>in</strong>g to the guidel<strong>in</strong>es of the ARM<br />
TrustZone technology. This technology enables<br />
the <strong>in</strong>tegration of applications for which<br />
the privacy of the users must be protected. Mobile<br />
onl<strong>in</strong>e bank<strong>in</strong>g should be mentioned here<br />
as a possible application.
Figure 2. Example AXI system<br />
Figure 3. S3C6410X block diagram<br />
In addition to 32-bit ARM and 16-bit THUMB<br />
<strong>in</strong>struction sets, the ARM1176JZF-S core also<br />
supports 8-bit JAVA byte codes. ARM Jazella<br />
technology is utilized thereby to support Java.<br />
This serves as basis for a multi-task<strong>in</strong>g Java virtual<br />
mach<strong>in</strong>e and enables simple and efficient<br />
implementation of applications written <strong>in</strong> Java.<br />
ARM1176JZF-S core users also benefit from the<br />
ARM <strong>in</strong>struction set that has been enhanced<br />
with several <strong>in</strong>terest<strong>in</strong>g DSP functions. These<br />
<strong>in</strong>clude, <strong>in</strong> addition to multiply-andaccumulate<br />
(MAC) operations or the support<br />
of saturation arithmetic, <strong>in</strong>struction sets for the<br />
process<strong>in</strong>g of multimedia data. This is essentially<br />
due to utilization of SIMD (s<strong>in</strong>gle <strong>in</strong>struction<br />
multiple data) <strong>in</strong>structions. SIMD allows<br />
optimized access to two 16-bit or four 8bit<br />
values, which are jo<strong>in</strong>tly stored <strong>in</strong> a 32-bit<br />
register. The values are processed simultaneously<br />
and <strong>in</strong>dependently of each other. Carryovers<br />
have no effect on the 32-bit register. In addition,<br />
sum of absolute difference (SAD) <strong>in</strong>structions<br />
are provided for the MPEG process<strong>in</strong>g.<br />
A vector float<strong>in</strong>g po<strong>in</strong>t unit was <strong>in</strong>tegrated<br />
<strong>in</strong> the core for additional acceleration of <strong>com</strong>put<strong>in</strong>g<br />
operations. Furthermore, the ARM11<br />
architecture offers the user a high level of debug<br />
and boundary-scan functionality. A powerful<br />
JTAG <strong>in</strong>terface serves as <strong>in</strong>terface to the ARM<br />
debug tools. The <strong>in</strong>tegrated embedded trace<br />
macrocell (ETM) allows trac<strong>in</strong>g of processor<br />
values, without restriction of <strong>com</strong>put<strong>in</strong>g power.<br />
In addition, an <strong>Embedded</strong>ICE-RT logic, which<br />
allows a variety of breakpo<strong>in</strong>ts, is <strong>in</strong>tegrated <strong>in</strong><br />
the core.<br />
What <strong>in</strong> practice can be done with the ARM11<br />
core, such as the ARM1178JZF-S, is clearly<br />
shown <strong>in</strong> the example of the S3C6410 controller.<br />
It has three different AXI buses. The 64bit<br />
wide system bus (AXI_SYS) is operated with<br />
maximum 133 MHz. The other two AXI buses<br />
serve as access to AHB or directly to SFRs. All<br />
peripherals such as memories and sub-bus systems,<br />
which require a high and fast data<br />
throughput, are connected here. A further 32bit<br />
wide AHB serves as <strong>in</strong>terface to an APB for<br />
less high-performance peripheral <strong>com</strong>ponents<br />
such as timers, serial <strong>in</strong>terfaces or I/Os. The<br />
AHB, as with the AXI, is operated with maximum<br />
133 MHz and the APB with 66 MHz. In<br />
addition to serial <strong>in</strong>terfaces such as UART, SPI<br />
and I2C, amongst others, five 32-bit timers with<br />
two PWM outputs <strong>in</strong>clud<strong>in</strong>g dead-time generator<br />
are on the chip. The <strong>in</strong>tegrated watchdog<br />
monitors the functionality of the system, and a<br />
real-time clock plus calendar functionality<br />
with extra voltage supply ensures the correct<br />
time, also <strong>in</strong> the energy save mode. A 2-port<br />
USB 1.1 host controller and a USB 2.0 OTG<br />
controller with high-speed, full-speed and low-<br />
MICROCONTROLLERS<br />
speed support are <strong>in</strong>tegrated as a modern<br />
<strong>com</strong>munication <strong>in</strong>terface to the outside world.<br />
With seven peripheral blocks for memory<br />
management, the S3C6410 storage system supports,<br />
amongst others, NAND-flash, NORflash,<br />
SD-RAM, DDR-RAM and mobile<br />
SDRAMs / DDR-RAMs. Furthermore, the chip<br />
offers a PC card controller and ATA controller.<br />
Portable storage media, such as secure digital<br />
cards (SDCs) and multimedia cards (MMCs),<br />
can also be <strong>in</strong>tegrated directly <strong>in</strong> the application<br />
via the appropriate on-chip controllers. Particularly<br />
worthy of emphasis are the wide range of<br />
audio functions. The <strong>in</strong>tegrated AC97 controller<br />
works accord<strong>in</strong>g to the AC97 V2.0 standard<br />
and has a stereo <strong>in</strong>put, a mono microphone<br />
<strong>in</strong>put and a stereo output. It <strong>com</strong>municates<br />
via the AC-LINK <strong>in</strong>terface with an additional<br />
external analog front end chip such as<br />
Analog Devices’ AD1819. The digital I2S audio<br />
<strong>in</strong>terface supports up to 24-bit audio with a<br />
maximum sampl<strong>in</strong>g rate of 192 kHz. Simple<br />
audio A/D and D/A converters, but also external<br />
systems for audio process<strong>in</strong>g or ICs with <strong>in</strong>tegrated<br />
EQs and amplifiers such as TI’s<br />
TAS5707, can be connected to this <strong>in</strong>terface. In<br />
addition to the standard I2S <strong>in</strong>terface, an I2S<br />
multi-audio <strong>in</strong>terface is also located on the chip,<br />
which enables 5.1 surround sound. It only rema<strong>in</strong>s<br />
to mention the mono PCM send/receive<br />
block, which supports a 16-bit PCM 2-port<br />
audio <strong>in</strong>terface.<br />
Furthermore, for preparation and process<strong>in</strong>g of<br />
<strong>com</strong>plex graphics data, a 2D graphics accelerator<br />
and a 3D graphics accelerator have been<br />
implemented on the S3C6410. The 2D graphics<br />
accelerator supports draw<strong>in</strong>g and pixel operations.<br />
Among other th<strong>in</strong>gs, the 3D graphics<br />
accelerator allows OpenGL ES 1.1 and OpenGL<br />
ES 2.0 render<strong>in</strong>g. Furthermore, especially notable<br />
are the programmable Vertex and Pixel<br />
Shaders and the 32-bit float<strong>in</strong>g-po<strong>in</strong>t pipel<strong>in</strong>e.<br />
The hardware JTAG codec processes image formats<br />
up to a maximum of UXGA. In addition,<br />
the device enables encod<strong>in</strong>g up to YCbCr4:2:2<br />
and decod<strong>in</strong>g up to YCbCr4:4:4. As a result,<br />
image material, irrespective of whether it is generated<br />
from the application or read <strong>in</strong> via the<br />
<strong>in</strong>tegrated camera <strong>in</strong>terface, can be effectively<br />
and quickly processed.<br />
The outputt<strong>in</strong>g of image data can optionally<br />
take place via a TV-out signal or via the <strong>in</strong>tegrated<br />
TFT LCD controller. For this purpose,<br />
the S3C6410 provides a <strong>com</strong>posite video output<br />
and a S-video output. The TFT LCD <strong>in</strong>terface<br />
supports resolutions from 320 x 240 pixels up<br />
to a maximum of 1024 x 1024 pixels, alpha<br />
blend<strong>in</strong>g, overlay, scal<strong>in</strong>g and zoom<strong>in</strong>g. The<br />
<strong>com</strong>mon NTSC and PAL formats are available,<br />
whereby a TV scaler and a preprocessor ensure<br />
optimization of the image data. ■<br />
17 September 2009
MICROCONTROLLERS<br />
Low-power microcontroller design<br />
us<strong>in</strong>g the ARM Cortex-M0 core<br />
By Rob Cosaro, NXP Semiconductors<br />
This article discusses the low<br />
power characteristics of the<br />
ARM Cortex-M0-based<br />
LPC1100 microcontroller<br />
series, and the system design<br />
techniques that m<strong>in</strong>imize the<br />
amount of energy consumed<br />
from a power source.<br />
In order to understand the power consumption<br />
of a microcontroller, it is important to understand<br />
the basic <strong>com</strong>ponents of dissipation of a<br />
CMOS device. There are two major categories<br />
of consumption; dynamic consumption and<br />
static consumption. Dynamic power consumption<br />
of a CMOS device to a first order is<br />
def<strong>in</strong>ed as<br />
Figure 1 shows a diagram of a simple CMOS <strong>in</strong>verter.<br />
When this <strong>in</strong>verter switches, it must<br />
charge or discharge the load capacitance, which<br />
dissipates power. The load capacitance is a <strong>com</strong>b<strong>in</strong>ation<br />
of the <strong>in</strong>terconnect capacitance and the<br />
gate capacitance of all the devices it is driv<strong>in</strong>g.<br />
If the device is not switch<strong>in</strong>g, all that is consum<strong>in</strong>g<br />
power is the leakage current of the device.<br />
Therefore for a given process geometry the<br />
dissipation varies as the square of the voltage<br />
and l<strong>in</strong>early with frequency. The characteristic<br />
that power consumption varies l<strong>in</strong>early with<br />
frequency gives rise to a <strong>com</strong>monly quoted<br />
number for microcontrollers, which is current<br />
consumption per MHz. For low-power devices<br />
this is given as μA/MHz and ranges from<br />
200μA/MHz to over 300μA/MHz. These numbers<br />
are somewhat mislead<strong>in</strong>g s<strong>in</strong>ce there is no<br />
standard on how the measurements are taken.<br />
The key po<strong>in</strong>t is how much work is performed<br />
for the current consumed or, for a more <strong>com</strong>prehensive<br />
measurement, how much energy is<br />
consumed for a given calculation. S<strong>in</strong>ce this<br />
type of measurement is not widely used yet, the<br />
μA/MHz metric is used <strong>in</strong> this discussion.<br />
The amount of current used per MHz by the<br />
digital CMOS structures is not the only aspect<br />
of the current consumed by the device: there<br />
are analog circuits that are required to support<br />
the digital doma<strong>in</strong>. These can be classified <strong>in</strong>to<br />
the tim<strong>in</strong>g <strong>com</strong>ponents, power control <strong>com</strong>ponents,<br />
memories and peripherals. The tim<strong>in</strong>g,<br />
power control and memory <strong>com</strong>ponents<br />
are part of the microcontroller platform and are<br />
not optional, but the analog peripherals are part<br />
of the feature set and will differ across the microcontroller<br />
family. Table 1 shows the tim<strong>in</strong>g<br />
September 2009 18<br />
<strong>com</strong>ponents used <strong>in</strong> the LPC1100. The table is<br />
arranged from lower to higher power consumption.<br />
As with all analog design there is a<br />
trade-off between accuracy and the amount of<br />
current it consumes. The LPC1100 has a flexible<br />
scheme for controll<strong>in</strong>g these <strong>com</strong>ponents<br />
that can trade off consumption versus accuracy<br />
so they can be tailored to the application.<br />
The current consumption for the core is not<br />
just about the slope but also the offset current<br />
that <strong>com</strong>es from the analog <strong>com</strong>ponents that<br />
are required to support the core. This is sometimes<br />
referred to as the zero-Hertz current.<br />
S<strong>in</strong>ce the LPC1100 has a flexible clock<strong>in</strong>g architecture<br />
this current is not fixed. As the frequency<br />
is lowered, switch<strong>in</strong>g off the clock<strong>in</strong>g<br />
<strong>com</strong>ponents that are not required to generate<br />
the required operat<strong>in</strong>g frequency can reduce the<br />
offset current. As an example the LPC1100 can<br />
be operated on the loose low-power oscillator<br />
from 0 to 1MHz and then the more accurate <strong>in</strong>-<br />
Tim<strong>in</strong>g <strong>com</strong>ponents Attributes<br />
Low power <strong>in</strong>ternal osc Low frequency, Low accuracy, Low power<br />
Internal RC oscillator Accuracy better than 1%<br />
Crystal oscillator High accuracy low jitter.<br />
DLL Fast start-up, higher jitter, low consumption<br />
PLL Slow start-up, low jitter. Moderate consumption<br />
Table 1. LPC1100 tim<strong>in</strong>g <strong>com</strong>ponents<br />
Picture by Ernst Rose,<br />
Pixelio
Figure 1. CMOS power dissipation<br />
Figure 2. Average current<br />
MICROCONTROLLERS<br />
ternal RC oscillator can be turned on to provide the frequency from 1<br />
to 12MHz. Leakage consumption is the current that the CMOS junction<br />
draws when the digital logic is not switch<strong>in</strong>g. This current is highly<br />
dependent on the process node and then on how the libraries <strong>in</strong> the<br />
node are optimized. For the LPC1100 the libraries are optimized for low<br />
leakage. Giv<strong>in</strong>g the user different power-down options can further optimize<br />
leakage. Besides the leakage of the CMOS junctions, various analog<br />
features can also be controlled <strong>in</strong> these modes.<br />
Sleep mode turns the clocks off to the core but the user has the option<br />
to leave on peripherals. The power <strong>in</strong> this mode is not just leakage but<br />
dynamic current of the peripherals that are left on. In this mode data<br />
can be still received, but the core reta<strong>in</strong>s its state and can cont<strong>in</strong>ue operation<br />
when required. In power-down mode all clocks to the digital<br />
logic are turned off and the analog sub-systems can be controlled to<br />
have flexible wake-up times depend<strong>in</strong>g on the application requirements.<br />
The lowest power mode is when all the analog clock<strong>in</strong>g elements are<br />
turned off. Wake-up time is determ<strong>in</strong>ed by the selection of the wakeup<br />
clock source. The fastest time is from the low-power oscillator and<br />
the slowest time is from the crystal oscillator and the PLL. In deep<br />
power-down mode power is turned off to the <strong>in</strong>ternals of the microcontroller,<br />
except a small always-on doma<strong>in</strong>. The always-on doma<strong>in</strong> has<br />
a set of registers that can store the <strong>in</strong>formation about what happened<br />
before the microcontroller when <strong>in</strong>to deep power-down mode. Wakeup<br />
from this mode occurs either through a wake-up p<strong>in</strong> or reset.<br />
19 September 2009<br />
Stock around the clock:<br />
Rutronik-Webg@te<br />
é<br />
By means of this modular e-<strong>com</strong>merce platform consist<strong>in</strong>g<br />
of an onl<strong>in</strong>e catalogue, a product change notifi cation (PCN)<br />
database and procurement, you have full 24-hour access to<br />
all technical <strong>in</strong>formation and <strong>in</strong>ventories.<br />
∙ Unrivalled affordability among onl<strong>in</strong>e distributors<br />
∙ Optimal traceability due to a uniquely <strong>com</strong>plete body of<br />
documentation of all key process steps<br />
∙ Personalized consult<strong>in</strong>g<br />
∙ Full access to all technical <strong>in</strong>formation and <strong>in</strong>ventories<br />
∙ A choice of several <strong>com</strong>ponent manufacturers<br />
∙ Simple search for product groups and products<br />
∙ Constant status access and monitor<strong>in</strong>g of current orders<br />
Consult | Components | Logistics | Support<br />
Tel: +44 (0) 1204 602 200<br />
Committed to Excellence<br />
www.rutronik.<strong>com</strong>
MICROCONTROLLERS<br />
Figure 3. Duty cycle effect on battery life<br />
The LPC1100 uses the new Cortex-M0 core<br />
from ARM, which has a big impact both on dynamic<br />
current and as leakage current. Focus<strong>in</strong>g<br />
on a simple <strong>in</strong>struction set reduces dynamic<br />
current. The M0 mostly uses thumb <strong>in</strong>structions.<br />
These are 16-bits wide and are <strong>in</strong>terpreted<br />
by the core as 32-bit <strong>in</strong>structions. The<br />
core also uses a simplified bus <strong>in</strong>terface to reduce<br />
gate count and m<strong>in</strong>imize clock<strong>in</strong>g. In addition,<br />
the core is architected to take advantage<br />
of clock gat<strong>in</strong>g and simplified library elements.<br />
Tak<strong>in</strong>g all this <strong>in</strong>to account the core is<br />
rated at less than 70μA/MHz. As was previously<br />
stated, this number is somewhat mean<strong>in</strong>gless<br />
s<strong>in</strong>ce it does not <strong>in</strong>clude any <strong>in</strong>formation<br />
about how much work can be done with this<br />
current. However, the M0 core is rated at 0.8<br />
DMIPS/MHz, which is a higher rat<strong>in</strong>g than an<br />
ARM7 core. Us<strong>in</strong>g this core further enhances<br />
the leakage current s<strong>in</strong>ce the gate count is<br />
equivalent to 8- and 16-bit cores. S<strong>in</strong>ce leakage<br />
current is proportional to gate count any sav<strong>in</strong>gs<br />
<strong>in</strong> core logic has a big impact.<br />
How the microcontroller power modes are used<br />
depends on the application. If the power source<br />
is always there but has limited capacity, the microcontroller<br />
may be always clocked. The<br />
LPC1100 can change frequency on the fly depend<strong>in</strong>g<br />
on process<strong>in</strong>g demand. The LPC1100<br />
current consumption at 30 MHz is specified at<br />
6mA. This can be reduced to a little over<br />
200μA when runn<strong>in</strong>g at 1 MHz on the lowpower<br />
<strong>in</strong>ternal oscillator. However, many applications<br />
that need to m<strong>in</strong>imize consumption<br />
must rely on the power-down and deep power-<br />
September 2009 20<br />
down modes. These applications spend most of<br />
their time <strong>in</strong> a quiescent state wait<strong>in</strong>g to<br />
process data. The processor must wake up<br />
quickly, process the required data, and then go<br />
back to the quiescent state. Many of these applications<br />
are battery-powered where a low average<br />
current is important to extend battery life.<br />
In order to lower the average current it is important<br />
to be able to process the data as quickly<br />
as possible to reduce the duty cycle. S<strong>in</strong>ce the<br />
M0 is a 32-bit processor it can perform the calculations<br />
much quicker than small-width<br />
processors. Figure 2 shows how process<strong>in</strong>g<br />
performance affects the average current. The<br />
figure assumes the peak current and the powerdown<br />
currents are the same for the various<br />
processor types. The M0 core has the capability<br />
to use one half to one fourth the average current<br />
of processors of lower bit widths. The M0<br />
allows the LPC1100 to achieve peak currents of<br />
200μA/MHz.<br />
Lowaveragecurrentiscriticaltoextendbattery<br />
life. This means low quiescent current and small<br />
duty cycles. The LPC1100 has deep powerdown<br />
current of less than 300nA and peak currents<br />
of 200μA/MHz. Figure 3 shows the effects<br />
duty cycle has on battery life. The battery used<br />
for these calculations is a 230mAh lithium button<br />
cell. This plot shows the effect that quiescent<br />
current has on battery life and the k<strong>in</strong>d of<br />
duty cycles that are required to exceed three<br />
years. The average current assumes a peak current<br />
of 2mA which means the LPC1100 is operat<strong>in</strong>g<br />
at 10 MHz. It also <strong>in</strong>cludes the effects of<br />
start-up time s<strong>in</strong>ce lower<strong>in</strong>g quiescent current<br />
extends start-up time. If the LPC1100 deep<br />
power-down mode is used, then for 1ms of process<strong>in</strong>g<br />
time out of a period of 200ms a 3-year<br />
battery life is possible. ■<br />
FREE SUBSCRIPTION to ECE Magaz<strong>in</strong>e<br />
Information & Know-how for <strong>Embedded</strong> Eng<strong>in</strong>eers<br />
Technical Articles and Product News about:<br />
• Hardware & Software<br />
• Tools<br />
• Technologies<br />
www.embedded-control-europe.<strong>com</strong>/ece_magaz<strong>in</strong>e
16-bit microcontrollers with<br />
■ To meet the requirements of the next generation<br />
of microcontroller applications, Renesas<br />
have developed the new high-performance 16bit<br />
H8ST<strong>in</strong>y microcontroller family. The<br />
H8ST<strong>in</strong>y family achieves new levels of real-time<br />
performance, with many new automated peripheral<br />
functions to remove load from the<br />
CPU. The MCU family will be available first <strong>in</strong><br />
64- and 80-p<strong>in</strong> packages with up to 256 kbytes<br />
of on-chip flash and 16 kbytes of on-chip<br />
SRAM.<br />
Each member of the H8ST<strong>in</strong>y family has a selection<br />
of powerful timers, with up to two<br />
motor control timers, a quadrature decoder<br />
timer for position sens<strong>in</strong>g, an on-chip RTC and<br />
a watchdog timer. Devices are available with up<br />
to two high-speed ADC modules on chip,<br />
each of which can be synchronised and controlled<br />
by the on-chip timers. System <strong>in</strong>tegration<br />
features <strong>in</strong>clude two on-chip oscillators, a<br />
clock halt detection circuit, and an on-chip low<br />
voltage detection (LVD) and power-on-reset<br />
circuit (POR) and a multitude of low-power<br />
options.<br />
With this <strong>in</strong> m<strong>in</strong>d, Renesas has designed a <strong>com</strong>pletely<br />
new real-time event-handl<strong>in</strong>g structure<br />
which has been implemented <strong>in</strong> some of the<br />
latest versions of the H8 micro-controller. This<br />
new structure allows the hardware of the chip<br />
itself to handle many of the real-time events<br />
that <strong>in</strong> the past would have required CPU <strong>in</strong>tervention.<br />
This new structure creates three<br />
types of event <strong>in</strong>side the microcontroller, generated<br />
from any external or <strong>in</strong>ternal <strong>in</strong>terrupt<br />
source. These can <strong>in</strong>clude a wide variety of realtime<br />
stimuli, such as an <strong>in</strong>put p<strong>in</strong> state chang<strong>in</strong>g,<br />
a timer tim<strong>in</strong>g out or a byte arriv<strong>in</strong>g <strong>in</strong> a serial<br />
<strong>in</strong>terface.<br />
The device implements standard <strong>in</strong>terrupts,<br />
us<strong>in</strong>g a 4 priority level <strong>in</strong>terrupt controller,<br />
however as can be seen, you also have a choice<br />
of generat<strong>in</strong>g an automatic data transfer us<strong>in</strong>g<br />
the data transfer controller (DTC) <strong>in</strong>stead of an<br />
<strong>in</strong>terrupt, or an event us<strong>in</strong>g the event l<strong>in</strong>k controller<br />
(ELC). You can choose to generate any<br />
one of these or any <strong>com</strong>b<strong>in</strong>ation of these <strong>in</strong> response<br />
to any real-time event <strong>in</strong> the micro-controller.<br />
However the real benefit of this device<br />
is <strong>in</strong> handl<strong>in</strong>g such events us<strong>in</strong>g either the DTC<br />
or the ELC, as these are then handled without<br />
any software or CPU time, and are thus executed<br />
both faster, and without any software<br />
overhead.<br />
The data transfer controller (DTC), provides<br />
much the same functions as a DMA controller,<br />
as it is designed to allow the transfer of<br />
one or more bytes between memory and a peripheral,<br />
or a peripheral and memory, the<br />
transfer be<strong>in</strong>g triggered by an event on the chip.<br />
However it is designed to be both much cheap-<br />
MICROCONTROLLERS<br />
new real-time event handl<strong>in</strong>g structure<br />
By Graeme Clark, Renesas<br />
This article describes a new<br />
microcontroller family with a<br />
new real-time event-handl<strong>in</strong>g<br />
structure allow<strong>in</strong>g the chip<br />
hardware to handle many of<br />
the reat time events that<br />
would have previouslyrequired<br />
CPU <strong>in</strong>tervention.<br />
er to implement and much more flexible than<br />
a DMA controller. It achieves this by us<strong>in</strong>g the<br />
CPU logic to make the transfer, rather than a<br />
large block of dedicated hardware. The advantage<br />
of this is that it is programmable, it holds<br />
its set-up <strong>in</strong>formation <strong>in</strong> a small block of on<br />
chip SRAM and so the DTC controller can be<br />
used not just to create one or two channels of<br />
data transfer, but 10 or 20 if required. The disadvantage<br />
is that the CPU is stopped for a few<br />
cycles while this transfer takes place.<br />
The DTC can transfer 1 byte or more than one<br />
byte, between a peripheral and memory, or<br />
memory and a peripheral, up to 256 times. The<br />
address <strong>in</strong> memory can be the same address or<br />
it can be <strong>in</strong>cremented or decremented, so creat<strong>in</strong>g<br />
a buffer structure. At the end of the transfer,<br />
the DTC can generate an <strong>in</strong>terrupt, to tell<br />
the CPU the data is ready, or <strong>in</strong> fact, it can trigger<br />
a second DTC transfer, In fact this can be<br />
used to cha<strong>in</strong> a number of transfers together if<br />
required.<br />
The DTC can also be placed <strong>in</strong>to repeat mode,<br />
where it will repeat the transfer an additional<br />
number of times. In this case, we are us<strong>in</strong>g the<br />
ADC <strong>in</strong> scan mode, read<strong>in</strong>g 4 ADC channels<br />
and stor<strong>in</strong>g the result <strong>in</strong> separate result registers.<br />
After the 4th read<strong>in</strong>g is <strong>com</strong>plete, the ADC<br />
module generates an <strong>in</strong>terrupt request, which <strong>in</strong><br />
these cases is used to <strong>in</strong>itiate a DTC transfer.<br />
21 September 2009
MICROCONTROLLERS<br />
Figure 1. A simple example of the use of the event l<strong>in</strong>k controller<br />
Figure 2. Comparison of the process flow of us<strong>in</strong>g the event l<strong>in</strong>k controller aga<strong>in</strong>st the use of<br />
<strong>in</strong>terrupts<br />
After the CPU f<strong>in</strong>ishes execut<strong>in</strong>g the current <strong>in</strong>struction,<br />
the DTC controller will take over<br />
control of the bus. The DTC controller reads<br />
the control data held <strong>in</strong> SRAM correspond<strong>in</strong>g<br />
to the ADC (12 bytes per DTC channel) which<br />
conta<strong>in</strong>s the start and dest<strong>in</strong>ation address of the<br />
data as well as how many bytes and the type of<br />
transfer. Then it <strong>in</strong>itiates the transfer of 8 bytes<br />
<strong>in</strong>to the SRAM, <strong>in</strong>crement<strong>in</strong>g the address for<br />
each transfer.<br />
The DTC controller then writes back the status<br />
<strong>in</strong>to the SRAM and releases the CPU to execute<br />
the next <strong>in</strong>struction. The whole transfer process<br />
<strong>in</strong> this case takes 31 clock states, from start to<br />
f<strong>in</strong>ish. If we made this transfer us<strong>in</strong>g an <strong>in</strong>terrupt,<br />
when you take <strong>in</strong>to account the <strong>in</strong>terrupt<br />
response time, the time required to transfer the<br />
data, and the return from <strong>in</strong>terrupt, the CPU<br />
would take a m<strong>in</strong>imum of 131 cycles to do the<br />
transfer, so the data transfer controller is almost<br />
four times faster. We also have the added<br />
bonus of requir<strong>in</strong>g no software to make the<br />
transfer, so sav<strong>in</strong>g a little code space. For most<br />
applications the flexibility of the DTC provides<br />
a perfect <strong>com</strong>promise, between speed, flexibility<br />
and of course device cost. You can create automated<br />
transfers between any peripheral and<br />
memory almost without limit. The data transfer<br />
controller provides a method for automat<strong>in</strong>g<br />
the transfer of data between peripherals and<br />
memory, while the second new method of handl<strong>in</strong>g<br />
device events uses the event l<strong>in</strong>k controller<br />
(ELC). The event l<strong>in</strong>k controller is designed to<br />
allow device events to automatically cause actions<br />
on the chip. For <strong>in</strong>stance the ELC can start<br />
a timer, or an A/D conversion, or even toggle an<br />
I/O p<strong>in</strong>, <strong>com</strong>pletely automatically.<br />
The event l<strong>in</strong>k controller <strong>com</strong>prises four ma<strong>in</strong><br />
modules, the peripheral event controller for the<br />
peripherals, the timer event <strong>in</strong>put controller, the<br />
port event controller and the event generation<br />
timer. The peripheral event controller allows<br />
the user to choose which peripheral is controlled<br />
by which event. This allows for <strong>in</strong>stance<br />
September 2009 22<br />
the overflow from a 16-bit timer to start the<br />
ADC. The timer event <strong>in</strong>put controller selects<br />
what each timer will do when it is triggered by<br />
an event.<br />
One of the most powerful features of the event<br />
l<strong>in</strong>k controller is the ability to generate events<br />
from the I/O ports. On the H8ST<strong>in</strong>y, I/O ports<br />
3 and 6 have this function. The port p<strong>in</strong>s can be<br />
used <strong>in</strong>dividually or <strong>in</strong> groups of 4 p<strong>in</strong>s. Each<br />
p<strong>in</strong> or group of p<strong>in</strong>s can be used to generate an<br />
event, which then can control other functions<br />
on the chip. However they can also be themselves<br />
controlled by the event l<strong>in</strong>k controller.<br />
When an event is generated, you can for <strong>in</strong>stance<br />
choose to toggle a p<strong>in</strong> or group of p<strong>in</strong>s,<br />
or drive them to a specific logic level. Beh<strong>in</strong>d<br />
each group of p<strong>in</strong>s, there is also a port buffer,<br />
you can use an event to drive the contents of<br />
this buffer onto the p<strong>in</strong>s, and if required, rotate<br />
the buffer ready for the next event. This type of<br />
feature is ideal for generat<strong>in</strong>g output waveforms<br />
of various types, such as for driv<strong>in</strong>g stepper<br />
motors and LCD displays. You can also use this<br />
buffer to latch the <strong>in</strong>put values on the p<strong>in</strong> when<br />
an event occurs.<br />
The f<strong>in</strong>al functional block is the event generation<br />
timer, this is a dedicated 4-channel timer<br />
which allows you to generate up to 4 regular<br />
events, each of which can be used to trigger an<br />
action on the chip. So if you have any function<br />
that requires regular operation, for <strong>in</strong>stance if<br />
you want the ADC to sample every 50msec, or<br />
an I/O p<strong>in</strong> to toggle every 800nsec, then you<br />
can set up the event timer to generate such a<br />
regular event.<br />
The <strong>com</strong>b<strong>in</strong>ation of these features allows the<br />
developer to automate a number of the realtime<br />
elements <strong>in</strong> his system. An event will take<br />
4 clock cycles from the time it is recognised before<br />
the result<strong>in</strong>g action starts, for <strong>in</strong>stance an<br />
I/O p<strong>in</strong> toggl<strong>in</strong>g or a timer mak<strong>in</strong>g a capture.<br />
This feature alone enables the users to handle<br />
many real-time events <strong>in</strong> hardware on the<br />
chip automatically, without the overhead of<br />
CPU <strong>in</strong>tervention.<br />
A simple example of the use of the event l<strong>in</strong>k<br />
controller is shown <strong>in</strong> figure 2. An external <strong>in</strong>terrupt,<br />
causes a timer to start, after the timer<br />
overflows, this then causes the ADC to start a<br />
conversion. When this system is implemented<br />
on a typical microcontroller, it requires 3 <strong>in</strong>terrupts,<br />
one for the external <strong>in</strong>terrupt, one for<br />
the timer overflow <strong>in</strong>terrupt and one for the<br />
ADC end of conversion, with the result<strong>in</strong>g CPU<br />
overhead, and of course the software required<br />
for each Interrupt service rout<strong>in</strong>e. The system<br />
will also experience some jitter, especially if the<br />
system is us<strong>in</strong>g an operat<strong>in</strong>g system, which may<br />
be handl<strong>in</strong>g a higher priority task when one or<br />
more of these <strong>in</strong>terrupts occur. In the H8ST<strong>in</strong>y,
the whole function can be handled by the<br />
event l<strong>in</strong>k controller. After the event l<strong>in</strong>k controller<br />
is <strong>in</strong>itialised the whole process can be<br />
handled automatically, without any CPU <strong>in</strong>volvement<br />
until the <strong>com</strong>plete process is f<strong>in</strong>ished.<br />
We can <strong>com</strong>pare the process flow of us<strong>in</strong>g the<br />
event l<strong>in</strong>k controller aga<strong>in</strong>st the use of <strong>in</strong>terrupts<br />
<strong>in</strong> figure 2.<br />
In a typical microcontroller, after each <strong>in</strong>terrupt<br />
is generated, we have to service each <strong>in</strong>terrupt,<br />
this results <strong>in</strong> a delay, and depend<strong>in</strong>g on the<br />
software some jitter. In the H8ST<strong>in</strong>y with the<br />
event l<strong>in</strong>k controller, each event triggers the<br />
next peripheral automatically. The CPU is<br />
only <strong>in</strong>terrupted after the ADC has f<strong>in</strong>ished. So<br />
<strong>in</strong> this example we have no jitter, as each<br />
■ Atmel expands 6-p<strong>in</strong> picoPower AVR<br />
MCU family<br />
Atmel announces three new 6-p<strong>in</strong> picoPower<br />
AVR microcontrollers. The ATt<strong>in</strong>y4, ATt<strong>in</strong>y5,<br />
and ATt<strong>in</strong>y9 are targeted towards size and cost<br />
constra<strong>in</strong>ed high volume consumer applications<br />
requir<strong>in</strong>g process<strong>in</strong>g power and low current<br />
consumption. These new devices are all<br />
p<strong>in</strong> and code <strong>com</strong>patible, offer<strong>in</strong>g a rich feature<br />
set <strong>in</strong>clud<strong>in</strong>g 512bytes or 1K byte of programmable<br />
Flash memory, 32 bytes of <strong>in</strong>ternal<br />
SRAM, 4-channel 8-bit A/D converter (<strong>in</strong> ATt<strong>in</strong>y5),<br />
analog <strong>com</strong>parator, and a 16-bit timer<br />
with PWM.<br />
News ID 315<br />
■ Toshiba: 8-bit MCU drives LCDs with<br />
up to 2560 pixels<br />
Toshiba Electronics <strong>Europe</strong> has announced a<br />
new 8-bit microcontroller that <strong>com</strong>b<strong>in</strong>es high<br />
performance operation with a variety of <strong>in</strong>tegrated<br />
peripherals and the ability to drive 80<br />
segment LCD displays with up to 2560 pixels.<br />
Based on Toshiba’s TLCS-870/C1 core, the<br />
peripheral starts 4 clock cycles after the generat<strong>in</strong>g<br />
event, and is not affected at all by the condition<br />
of the CPU, whether it is handl<strong>in</strong>g a priority<br />
task or not. We also have the additional<br />
sav<strong>in</strong>g that apart from the <strong>in</strong>itialisation, there is<br />
no software required for this process, so code<br />
space required for the application is reduced.<br />
We could also go even further to automate this<br />
example and reduce CPU load, by us<strong>in</strong>g the<br />
DTC. We could automatically transfer the data<br />
from the ADC <strong>in</strong>to a buffer <strong>in</strong> SRAM. Therefore<br />
we could choose to <strong>in</strong>terrupt the CPU perhaps<br />
only after every 100 or 200 read<strong>in</strong>gs. The <strong>com</strong>b<strong>in</strong>ation<br />
of the data transfer controller and the<br />
event l<strong>in</strong>k controller means that many low-level<br />
tasks, especially those based around the I/O and<br />
timers, can be handled automatically without<br />
FOR THE MOST REWARDING<br />
CUSTOMER EXPERIENCE,<br />
YOU HAD BETTER START ON THE INSIDE.<br />
With high-quality <strong>com</strong>ponents from Toshiba <strong>in</strong>side your products you can actually improve the<br />
consumer experience.<br />
Our newly upgraded display microcontrollers with 32-bit ARM processor, have been designed to<br />
simplify all <strong>in</strong>dustrial, home-appliance, consumer and multimedia applications, enabl<strong>in</strong>g a more<br />
reliable and cost effective human-mach<strong>in</strong>e-<strong>in</strong>terface experience that is perfectly <strong>in</strong> tune with today.<br />
Discover how Toshiba could help improve your product with easy and straightforward prototyp<strong>in</strong>g.<br />
Visit us today at www.toshiba-<strong>com</strong>ponents.<strong>com</strong>/microcontroller<br />
Product News<br />
new MCU is capable of process<strong>in</strong>g one<br />
<strong>in</strong>struction per clock cycle, which helps to<br />
maximize performance and keep power<br />
consumption to a m<strong>in</strong>imum.<br />
News ID 1523<br />
■ TI <strong>in</strong>troduces new femtocell DSP family<br />
Texas Instruments announces a new family of<br />
DSPs enabl<strong>in</strong>g residential and enterprise femtocell<br />
manufacturers and service providers to<br />
reduce development time and deliver new<br />
products to market quickly. TI’s family of<br />
multicore femtocell solutions <strong>in</strong>cludes a full<br />
portfolio of <strong>com</strong>plementary analog solutions,<br />
support for L<strong>in</strong>ux, and software solutions<br />
from TI third parties, Cont<strong>in</strong>uous Comput<strong>in</strong>g<br />
and mimoOn.<br />
News ID 1535<br />
■ Microchip: <strong>Embedded</strong> Designer’s Forums<br />
<strong>in</strong> UK and Ireland<br />
Microchip announces the open<strong>in</strong>g of registration<br />
for its <strong>Embedded</strong> Designer’s Forum, a<br />
worldwide series of technical learn<strong>in</strong>g events<br />
MICROCONTROLLERS<br />
CPU <strong>in</strong>tervention. This both reduces the load<br />
on the CPU and greatly reduces the system reaction<br />
time to external events. In many systems<br />
todaywearebe<strong>in</strong>gaskedtoaddmoreandmore<br />
functions while still ma<strong>in</strong>ta<strong>in</strong><strong>in</strong>g and even improv<strong>in</strong>g<br />
the real-time operation of the system.<br />
The H8ST<strong>in</strong>y is the first device from Renesas to<br />
<strong>com</strong>b<strong>in</strong>e the event l<strong>in</strong>k controller and the data<br />
transfer controller, which can be used together<br />
to remove much of the real-time response requirements<br />
of the system, and can automate<br />
many of these low- level and repetitive tasks.<br />
These devices have been aimed at a wide range of<br />
<strong>com</strong>munications and control applications such as<br />
motor control, measurement applications and<br />
low power modems and many others. ■<br />
focused on <strong>in</strong>novative technologies that will<br />
help designers stay ahead <strong>in</strong> today’s <strong>com</strong>petitive<br />
environment. The forums will run from<br />
October 2009 through February 2010 at 120<br />
locations across the world, with 51 forums<br />
located <strong>in</strong> <strong>Europe</strong> and 6 forums across UK<br />
and Ireland runn<strong>in</strong>g <strong>in</strong> November and<br />
December.<br />
News ID 389<br />
■ Freescale: i.MX processor with mixed<br />
signal technology<br />
The i.MX233 applications processor from<br />
Freescale Semiconductor provides an systemon-chip<br />
solution to meet the power and<br />
performance requirements of eBooks, portable<br />
media players and other mobile consumer<br />
electronics applications requir<strong>in</strong>g graphical<br />
user displays. Additional applications <strong>in</strong>clude<br />
VoIP handsets, smart remotes, home<br />
appliances, audio peripherals/accessories and<br />
simple human mach<strong>in</strong>e <strong>in</strong>terface systems for<br />
<strong>in</strong>dustrial applications.<br />
News ID 319<br />
23 September 2009
MICROCONTROLLERS<br />
M<strong>in</strong>imiz<strong>in</strong>g ownership cost for motor<br />
applications by energy sav<strong>in</strong>g<br />
By Josef Limmer, Inf<strong>in</strong>eon Technologies<br />
This article reviews a new<br />
generation of microcontrollers<br />
which enable energy-efficient<br />
control of brushless DC<br />
motors, permanent magnet<br />
synchronous AC motors and<br />
AC <strong>in</strong>duction motors,<br />
achiev<strong>in</strong>g major sav<strong>in</strong>gs <strong>in</strong><br />
electricity costs.<br />
■ In <strong>in</strong>dustrial nations more than half of all<br />
electrical energy is consumed by electric motors.<br />
They account for two-thirds of <strong>in</strong>dustrial<br />
electric consumption and about a quarter of<br />
residential electric use. Improv<strong>in</strong>g the efficiency<br />
of electric motors can therefore save energy<br />
and reduce operat<strong>in</strong>g costs. Because of this,<br />
energy efficiency should be a major consideration<br />
design<strong>in</strong>g a motor drive, <strong>in</strong> place of the<br />
usual “What’s the price of the motor?” A new<br />
generation of microcontrollers enables the energy-efficient<br />
control of brushless DC motors<br />
(BLDC), permanent magnet synchronous AC<br />
motors (PMSM) and AC <strong>in</strong>duction motors,<br />
and delivers a significant contribution to the<br />
overall reduction of energy consumption.<br />
The cost of ownership of an electric motor arises<br />
ma<strong>in</strong>ly as electricity cost. Over the lifetime of<br />
a motor, electricity accounts for more than 90<br />
percent of the total cost, <strong>in</strong>clud<strong>in</strong>g the orig<strong>in</strong>al<br />
purchase price and ma<strong>in</strong>tenance costs. Accord<strong>in</strong>g<br />
to the US Department of Energy<br />
(DoE), us<strong>in</strong>g a motor with about 4 to 6 percent<br />
higher efficiency rat<strong>in</strong>g can pay for itself <strong>in</strong> just<br />
two years, if it is <strong>in</strong> operation for more than<br />
4,000 hours a year. For example the price of a<br />
typical 200W BLDC motor is about 100 euros,<br />
which is about 30 percent more than a <strong>com</strong>parable<br />
but less efficient brushed motor. Even exchang<strong>in</strong>g<br />
an exist<strong>in</strong>g motor is not possible, or<br />
would require a very high <strong>in</strong>vestment, it makes<br />
sense to optimize the driv<strong>in</strong>g controller and/or<br />
algorithms. In a typical <strong>in</strong>dustrial facility the<br />
electrical motors are responsible for approximately<br />
two-thirds of the total electrical energy<br />
consumption. To improve the efficiency and<br />
lower the operat<strong>in</strong>g costs, certa<strong>in</strong> rules need to<br />
be observed. These are: select a high efficiency<br />
motor, select the right size of motor, select the<br />
appropriate motor technology, and use appropriate<br />
control algorithms.<br />
Efficiency drops dramatically when motors<br />
are operated below 40 percent of full rated load.<br />
Therefore the right size of the motor is important<br />
to reduce the operat<strong>in</strong>g costs. Motors<br />
should be sized to operate with a load factor between<br />
65% and 100%. The <strong>com</strong>mon practice of<br />
over-siz<strong>in</strong>g results <strong>in</strong> less efficient motor operation.<br />
Various motor technologies like brushed DC<br />
motors, brushless DC motors (BLDC), stepper<br />
motors or AC <strong>in</strong>duction motors offer different<br />
benefits on purchase costs, control design, operat<strong>in</strong>g<br />
costs and energy efficiency. The type of<br />
motor control used for the application has a big<br />
impact on energy efficiency. For low-power applications,<br />
stepper motors and brushed DC<br />
motors are popular due to their low purchase<br />
price and simple control circuitry, but they provide<br />
somewhat lower energy efficiency and<br />
therefore higher operat<strong>in</strong>g costs. Us<strong>in</strong>g BLDC,<br />
September 2009 24<br />
PMSM or AC <strong>in</strong>duction motors <strong>com</strong>b<strong>in</strong>ed with<br />
powerful motor control algorithms runn<strong>in</strong>g on<br />
optimized microcontrollers offers the most<br />
energy-efficient solutions. For brushless motors,<br />
a wide range of motor control system algorithms,<br />
<strong>in</strong>clud<strong>in</strong>g trapezoidal, s<strong>in</strong>usoidal, and<br />
field-oriented control (FOC), are available.<br />
The simplest but lowest-performance method<br />
is trapezoidal control or block <strong>com</strong>mutation,<br />
also known as six-step control. For each of the<br />
six <strong>com</strong>mutation steps, the motor drive provides<br />
a current path between two w<strong>in</strong>d<strong>in</strong>gs<br />
while leav<strong>in</strong>g the third motor phase disconnected.<br />
This method has performance limitations<br />
<strong>in</strong> the form of torque ripple, which causes<br />
vibration, noise, mechanical wear, and reduced<br />
servo performance. Brushless motor<br />
control requires knowledge of the rotor position<br />
and mechanism to <strong>com</strong>mutate the motor.<br />
Typically Hall effect sensors are used to provide<br />
absolute position sens<strong>in</strong>g of the rotor. This results<br />
<strong>in</strong> more wires and higher cost. Sensorless<br />
BLDC control elim<strong>in</strong>ates the need for Hall effect<br />
sensors, us<strong>in</strong>g the back-EMF of the motor<br />
<strong>in</strong>stead to estimate the rotor position. Sensorless<br />
control is essential for low-cost variable<br />
speed applications such as fans and pumps. Refrigerator<br />
and air condition<strong>in</strong>g <strong>com</strong>pressors<br />
also require sensorless control when us<strong>in</strong>g<br />
BLDC motors
Figure 1. Pr<strong>in</strong>ciple of block <strong>com</strong>mutation, s<strong>in</strong>usoidal <strong>com</strong>mutation and sensorless FOC (from right to left)<br />
S<strong>in</strong>usoidal control, also known as voltage-overfrequency<br />
(V/f) <strong>com</strong>mutation, elim<strong>in</strong>ates some<br />
of the issues with block <strong>com</strong>mutation. A s<strong>in</strong>usoidal<br />
controller drives the three motor w<strong>in</strong>d<strong>in</strong>gs<br />
with currents that vary smoothly. This elim<strong>in</strong>ates<br />
the torque ripple issues and offers smooth rotation.<br />
The fundamental weakness of s<strong>in</strong>usoidal<br />
<strong>com</strong>mutation however is that it attempts to control<br />
time-vary<strong>in</strong>g motor currents us<strong>in</strong>g a basic<br />
proportional-<strong>in</strong>tegral (PI) control algorithm<br />
and does not account for <strong>in</strong>teractions between<br />
the phases. As a result, <strong>in</strong>teraction between the<br />
phases causes performance loss at high speeds.<br />
S<strong>in</strong>usoidal <strong>com</strong>mutation produces smooth<br />
motion at slow speeds, but is <strong>in</strong>efficient at high<br />
speeds. Block <strong>com</strong>mutation can be relatively efficient<br />
at high speeds, but causes torque ripple<br />
at slow speeds. This leads to FOC, which provides<br />
the best of both worlds. Us<strong>in</strong>g FOC the efficiency<br />
of an electrical motor can be <strong>in</strong>creased<br />
by up to 95%, provid<strong>in</strong>g less power consumption,<br />
less noise and excellent torque dynamics.<br />
This results <strong>in</strong> a better efficiency of the <strong>in</strong>verter,<br />
a smaller power stage and smaller motor<br />
dimensions at the same torque.<br />
The FOC algorithm works by remov<strong>in</strong>g time<br />
and speed dependencies and allow<strong>in</strong>g the direct<br />
and <strong>in</strong>dependent control of both magnetic flux<br />
and torque. This is done by mathematically<br />
transform<strong>in</strong>g the electrical state of the motor<br />
<strong>in</strong>to a two-coord<strong>in</strong>ate time-<strong>in</strong>variant rotat<strong>in</strong>g<br />
frame us<strong>in</strong>g mathematical formulas known as<br />
Figure 2. Scalable application kits: a <strong>com</strong>plete portfolio of<br />
reference systems for motor drive applications is available,<br />
support<strong>in</strong>g the whole range of algorithms from block <strong>com</strong>mutation<br />
to FOC.<br />
the Clarke and Park transformations. FOC can<br />
be used on both AC <strong>in</strong>duction and brushless<br />
DC motors to improve their efficiency and<br />
performance. It can be applied also to exist<strong>in</strong>g<br />
motors by upgrad<strong>in</strong>g the control system.<br />
The effective implementation and execution of<br />
the <strong>in</strong>novative motor control concepts needs an<br />
optimized microcontroller architecture and<br />
easy-to-use tools. Inf<strong>in</strong>eon not only offers<br />
powerful 8-, 16- or 32-bit microcontrollers, but<br />
also provides <strong>com</strong>plete solutions with the related<br />
tool cha<strong>in</strong>. In addition a broad portfolio<br />
of application kits, which ease the evaluation<br />
and implementation of hardware and software<br />
solutions for high-efficiency motor drives, is<br />
offered. Depend<strong>in</strong>g on the application a <strong>com</strong>plete<br />
range of MCUs with 8-, 16- and 32-bit<br />
performance up to 400 MIPS is available.<br />
The XC800 MCUs are based on the popular<br />
8051 CPU. It offers scalable solutions with 4<br />
Kbytes to 64 Kbytes flash memory, high-speed<br />
10-bit ADC, PWM unit and packages with 20<br />
to 64 p<strong>in</strong>s. In addition the XC886, XC878 and<br />
XC888 series are equipped with a 16-bit vector<br />
<strong>com</strong>puter support<strong>in</strong>g FOC, as an <strong>in</strong>dustry first<br />
for 8-bit MCUs. Us<strong>in</strong>g the vector <strong>com</strong>puter<br />
only about half of the CPU performance is<br />
needed to implement FOC, which is also<br />
unique <strong>in</strong> the <strong>in</strong>dustry. The XC800 MCUs are<br />
ideal for cost-optimized and energy-efficient<br />
low-end drives <strong>in</strong> fans, pumps, appliances, air<br />
conditioners, etc.<br />
The real-time signal controllers<br />
(RTSC) of the XE166 family are<br />
built around an enhanced C166S<br />
V2 core. High CPU performance<br />
with up to 100 MIPS, a MAC-unit<br />
for DSP functions, enhanced I/O<br />
capabilities, flexible power management<br />
and new peripherals<br />
such as universal serial <strong>in</strong>terface<br />
(USIC) make the XE166 devices<br />
the product of choice for demand<strong>in</strong>g<br />
<strong>in</strong>dustrial applications<br />
such as motor control, power supplies,<br />
transportation and <strong>com</strong>munication.<br />
With features like<br />
standard FOC support, dual<br />
MICROCONTROLLERS<br />
motor control, dynamic load response and zero<br />
speed control, the XE166 family is ideal for<br />
usage <strong>in</strong> <strong>in</strong>verters, servo drives, escalators or<br />
forklifts.<br />
At the high end the 32-bit devices TC1167 and<br />
TC1197 focus on the most demand<strong>in</strong>g <strong>in</strong>dustrial<br />
drives and offer highest performance for<br />
motion control, such as multi-axis systems.<br />
The application kits and tool cha<strong>in</strong> provided<br />
support the fast implementation of the new<br />
motor control techniques on the microcontrollers.<br />
A <strong>com</strong>plete portfolio of reference systems<br />
for motor drive applications is available,<br />
support<strong>in</strong>g the whole range of algorithms<br />
from block <strong>com</strong>mutation to FOC. All application<br />
kits offered conta<strong>in</strong> a free tool cha<strong>in</strong><br />
(<strong>com</strong>piler, real time debugg<strong>in</strong>g environment,<br />
etc) and offer plug-and-play design, as all related<br />
hardware and software parts are provided.<br />
A <strong>com</strong>plete solution with microcontrollers,<br />
power semiconductors and passive <strong>com</strong>ponents<br />
is provided. Complementary <strong>com</strong>prehensive<br />
documentation with hardware design examples<br />
is <strong>in</strong>cluded, the application kits serv<strong>in</strong>g a voltage<br />
range from 12V to 230V and drive currents<br />
from 200mA to 20A for motors such as stepper,<br />
BLDC and PMSM.<br />
The kits are ready to be used with DAvE Drive,<br />
a unique auto code generator for motor drives.<br />
DAvE Drive is an application code generator<br />
available for the 8-bit MCU families of the<br />
<strong>com</strong>pany - support for XE166 is under development.<br />
It helps to reduce the software development<br />
time for motor drives due to fast and<br />
easy configuration of <strong>com</strong>plex control algorithms<br />
like FOC. Designers of motor controls<br />
can quickly focus on application-specific software,<br />
such as the programm<strong>in</strong>g of drive functions.<br />
The DAvE Drive software tool generates<br />
<strong>com</strong>plete algorithms with documented source<br />
code and does not derive from pre<strong>com</strong>piled<br />
libraries. It also enables fast adaption for customer-specific<br />
motors. The motor type can be<br />
selected from a library or def<strong>in</strong>ed by sett<strong>in</strong>g the<br />
key characteristics such as nom<strong>in</strong>al voltage,<br />
phase <strong>in</strong>ductivity or resistance. Us<strong>in</strong>g DAvE<br />
Drive the parameters for speed and current<br />
control can be easily adapted. ■<br />
25 September 2009
TESTING &DEBUGGING<br />
New approaches simplify test<strong>in</strong>g and<br />
debugg<strong>in</strong>g of <strong>com</strong>plex MCUs<br />
By Heiko Riessland, pls<br />
The IEEE 1149.1 (JTAG)<br />
standard no longer meets all<br />
the demands, <strong>in</strong> terms of<br />
speed, p<strong>in</strong>-count and<br />
robustness, for debugg<strong>in</strong>g and<br />
test<strong>in</strong>g modern microcontrollers<br />
and <strong>com</strong>plex SoCs. This<br />
article describes new developments<br />
which promise considerable<br />
improvements for<br />
debugg<strong>in</strong>g, flash programm<strong>in</strong>g<br />
and system test.<br />
■ Microcontroller systems usually need to be<br />
accessed dur<strong>in</strong>g the total lifecycle, and the hardware<br />
and software tools requirements certa<strong>in</strong>ly<br />
differ <strong>in</strong> each phase. Dur<strong>in</strong>g the development<br />
phase, fastest possible <strong>com</strong>munication with the<br />
target, effective use of on-chip debug resources<br />
and use of the debug <strong>in</strong>terface also for flash<br />
programm<strong>in</strong>g, automated test<strong>in</strong>g, calibration,<br />
profil<strong>in</strong>g, etc are at the forefront. Dur<strong>in</strong>g the<br />
production phase, system access is primarily required<br />
for flash programm<strong>in</strong>g and test<strong>in</strong>g.<br />
Fast programm<strong>in</strong>g algorithms for short production<br />
times, a high level of safety through<br />
various steps of verification, and flexible <strong>in</strong>tegration<br />
<strong>in</strong> typical production and test environments<br />
are decisive here. Dur<strong>in</strong>g the field<br />
ma<strong>in</strong>tenance phase, <strong>in</strong> addition to safety aspects,<br />
an application-specific user <strong>in</strong>terface as<br />
simple as possible for the service personnel is<br />
particularly important.<br />
Optimally meet<strong>in</strong>g all the different requirements<br />
is <strong>in</strong> practice difficult. Even the popular<br />
IEEE 1149.1 (JTAG) for debugg<strong>in</strong>g microcontrollers<br />
shows <strong>in</strong>creas<strong>in</strong>g weaknesses. The IEEE<br />
1149.1 standard that has been <strong>in</strong> use for almost<br />
twenty years no longer meets all the demands,<br />
<strong>in</strong> terms of speed, p<strong>in</strong> count and robustness, for<br />
debugg<strong>in</strong>g and test<strong>in</strong>g of modern microcontrollers<br />
and highly <strong>com</strong>plex SoCs. Reduc<strong>in</strong>g the<br />
number of p<strong>in</strong>s necessary for debugg<strong>in</strong>g is a<br />
motivation for manufacturers to look for new<br />
solutions. With JTAG, we are talk<strong>in</strong>g here<br />
about a m<strong>in</strong>imum of five signal p<strong>in</strong>s (TDI,<br />
TDO, TCK, TMS and TRST). Furthermore, a<br />
<strong>com</strong>plete debug <strong>in</strong>terface specification conta<strong>in</strong>s<br />
additional signals for target reset, target reference<br />
voltage and manufacturer-specific signals<br />
for the on-chip debug system. Each additional<br />
p<strong>in</strong> causes costs and is no longer available for<br />
the actual function of the microcontroller.<br />
The frequently offered option to use p<strong>in</strong>s functionally<br />
or alternatively as debug <strong>in</strong>terface is,<br />
however, only a <strong>com</strong>promise that often proves<br />
to be impractical. Incidentally, the user also<br />
benefits from the reduction of necessary signals<br />
for debug access. The usually tight space on the<br />
production board and costs for the necessary<br />
connectors have, up to now, mostly resulted <strong>in</strong><br />
omitt<strong>in</strong>g the debug <strong>in</strong>terface <strong>com</strong>pletely or provid<strong>in</strong>g<br />
it only as an option. However, fewer signal<br />
p<strong>in</strong>s generally also mean reduced space requirement<br />
and smaller connectors.<br />
Another reason for the search for new approaches<br />
is the problem, particularly <strong>in</strong> field<br />
use, of the connect<strong>in</strong>g cable between the microcontroller<br />
target and the debug tool frequently<br />
be<strong>in</strong>g too short. JTAG clock frequencies<br />
of up to 100MHz are possible with modern 32bit<br />
microcontrollers. For that reason, signal<br />
condition<strong>in</strong>g is necessary after 25 to 30cm. Indeed,<br />
this can ideally take place, as also with the<br />
JTAG-extender of the pls universal access device<br />
September 2009 26<br />
Figure 1. Universal access<br />
device 2+ with JTAG-extender<br />
2+ (UAD2+), with a small converter close to the<br />
target and subsequent forward<strong>in</strong>g of the reconditioned<br />
signals over differential signal<br />
l<strong>in</strong>es (figure 1). In any case, <strong>in</strong>itial hardware belong<strong>in</strong>g<br />
to the debug solution is needed close to<br />
the target. Hence, the familiar picture of debug<br />
Figure 2. Block diagram of device access port (DAP)
solutions from different manufacturers with<br />
very short ribbon cable close to the enclosure.<br />
A third important aspect that plays a major role<br />
<strong>in</strong> manufacturers’ current considerations is<br />
the enhancement of stability and ruggedness<br />
with <strong>in</strong>creas<strong>in</strong>g transmission frequency and<br />
bandwidth. With the classic IEEE 1149.1 JTAG<br />
standard there is no protection of the protocol<br />
aga<strong>in</strong>st disturb<strong>in</strong>g <strong>in</strong>fluences on the transmission<br />
l<strong>in</strong>es. Provision for this was not made<br />
when the standard was developed, because at<br />
that time the transmission rate was limited to<br />
40MHz and it was assumed that the <strong>com</strong>ponents<br />
to be tested were always housed on a<br />
board. It is not surpris<strong>in</strong>g therefore that an <strong>in</strong>creas<strong>in</strong>g<br />
number of processor and tool manufacturers<br />
are look<strong>in</strong>g for new approaches. It appears<br />
that Inf<strong>in</strong>eon’s device access port (DAP),<br />
ARM’s serial wire debug (SWD) <strong>in</strong>terface and<br />
the vendor-<strong>in</strong>dependent IEEE 1149.7 (<strong>com</strong>pact<br />
JTAG) standard are particularly promis<strong>in</strong>g.<br />
With device access port, used by Inf<strong>in</strong>eon <strong>in</strong> all<br />
new microcontroller designs of the<br />
XC2000/XE166, TriCore and XC800 families,<br />
the number of p<strong>in</strong>s necessary for the transmission<br />
of the debug protocol has been reduced<br />
as standard with respect to JTAG from five to<br />
two. Consequently at present the implementation<br />
takes place <strong>in</strong> parallel to the still existent<br />
JTAG <strong>in</strong>terface. These two p<strong>in</strong>s are a clock l<strong>in</strong>e<br />
(DAP0) as well as a bidirectional signal l<strong>in</strong>e<br />
(DAP1). The JTAG p<strong>in</strong>s TMS and TCK are<br />
thereby alternatively used between JTAG and<br />
DAP (figure 2).The other three JTAG p<strong>in</strong>s that<br />
are no longer necessary can be functionally<br />
used by the application, for example, as port<br />
p<strong>in</strong>s. In this way, the user gets a high flexibility<br />
for the changeover to DAP. In addition, for situations<br />
<strong>in</strong> which high-speed transmission via<br />
differential l<strong>in</strong>es (LVDS) is needed, Inf<strong>in</strong>eon can<br />
optionally resort to a 3-p<strong>in</strong> variant with one<br />
clock l<strong>in</strong>e (DAP0) and two unidirectional signal<br />
l<strong>in</strong>es (DAP1 and DAP2). Furthermore, for<br />
microcontrollers with a very low p<strong>in</strong> count, another<br />
variant with only one signal l<strong>in</strong>e (s<strong>in</strong>gle<br />
p<strong>in</strong> DAP – SPD) is specified. This, however,<br />
only covers a reduced transmission bandwidth.<br />
A <strong>com</strong>b<strong>in</strong>ation of DAP and SPD on one chip as<br />
well as a parallel implementation of JTAG and<br />
DAP is also possible. This provides the user<br />
with a high level of flexibility.<br />
For safety reasons, the debug <strong>in</strong>terface with previous<br />
implementations is normally switched off<br />
after a power on reset. Switch<strong>in</strong>g on is possible<br />
via applicable reset circuitry or also via the<br />
start-up software. The required reset circuitry<br />
can be realized on the target itself or on the<br />
debug connector. The choice of the required<br />
debug mode (2-p<strong>in</strong> DAP, 3-p<strong>in</strong> DAP or JTAG)<br />
is possible by means of the p<strong>in</strong>s via the debug<br />
tool or aga<strong>in</strong> via the start-up software. The<br />
maximum DAP clock rate can be up to 80<br />
MHz. Thus despite the reduced p<strong>in</strong> count, at<br />
least the same transmission performance is possible<br />
as with classic JTAG. In addition, the DAP<br />
<strong>in</strong>terface has a low latency, <strong>in</strong> the microseconds<br />
range, and the <strong>com</strong>munication is very robust.<br />
On the one hand, this is achieved by a 6-bit<br />
checksum (CRC) <strong>in</strong>tegrated <strong>in</strong> the protocol. On<br />
the other hand, the protocol is constructed so<br />
that, for example, a write operation from the<br />
host to the target is acknowledged from it. Unexpected<br />
changes <strong>in</strong> the target condition or<br />
transmission disturbances can therefore be reliably<br />
recognized by the tool. DAP and JTAG are<br />
pure <strong>in</strong>terfaces that are essentially, especially<br />
with microcontrollers from Inf<strong>in</strong>eon, for<br />
One Size<br />
Doesn’t Fit All<br />
• File Systems<br />
• USB Stacks<br />
• Bootloaders<br />
• W<strong>in</strong>dows Drivers<br />
• <strong>Embedded</strong> Development<br />
Services<br />
HCC-<strong>Embedded</strong><br />
FILE SYSTEMS WITH A DIFFERENCE<br />
www.hcc-embedded.<strong>com</strong> • <strong>in</strong>fo@hcc-embedded.<strong>com</strong><br />
TESTING &DEBUGGING<br />
debugg<strong>in</strong>g and test<strong>in</strong>g of <strong>com</strong>plex automotive<br />
and <strong>in</strong>dustrial applications with the high realtime<br />
demand optimized on-chip debug system<br />
(OCDS), whereby its functionality via both<br />
ports is fully usable. For example, unrestricted<br />
read and write accesses to the memory, also<br />
dur<strong>in</strong>g the run-time. This enables periodical<br />
record<strong>in</strong>g of application data or of the <strong>in</strong>struction<br />
po<strong>in</strong>ter to the run-time. In addition,<br />
the implemented debug logic allows code<br />
breakpo<strong>in</strong>ts and data breakpo<strong>in</strong>ts with <strong>com</strong>plex<br />
trigger conditions. Furthermore, for code trace<br />
and data trace, special emulation devices can be<br />
used, whose footpr<strong>in</strong>t and functionality do not<br />
differ from the production device, but conta<strong>in</strong><br />
With HCC, you can choose a file system that’s<br />
right for your application. HCC products run<br />
with the broadest range of CPUs and memory<br />
devices, with or without an operat<strong>in</strong>g system.<br />
THE MOST COMPREHENSIVE PORTFOLIO OF FILE<br />
SYSTEMS FOR EMBEDDED APPLICATIONS<br />
��������<br />
27 September 2009
TESTING &DEBUGGING<br />
Figure 3. Function profil<strong>in</strong>g based on <strong>in</strong>struction po<strong>in</strong>ter trace<br />
Figure 4. DAP and SWD adapter (opened)<br />
additional on-chip emulation logic. In <strong>com</strong>b<strong>in</strong>ation<br />
with special tools, e.g. pls universal emulation<br />
configurator, <strong>com</strong>plex measurements<br />
such as performance analysis, profil<strong>in</strong>g and<br />
code coverage, can be carried out with these<br />
"emulation devices".<br />
ARM has pursued an <strong>in</strong>terest<strong>in</strong>g route with the<br />
serial wire debug (SWD) <strong>in</strong>terface. SWD is part<br />
of a <strong>com</strong>plete package of new debug and trace<br />
techniques, <strong>com</strong>piled under the name Core-<br />
Sight. There are already the first implementations<br />
<strong>in</strong> Lum<strong>in</strong>ary Micro (now Texas Instruments)<br />
devices with Stellaris Cortex-M3 core<br />
and <strong>in</strong> the STM32 family from STMicroelectronics.<br />
However, the CoreSight IP can also be<br />
used <strong>in</strong> all other ARM and Cortex cores. Due to<br />
its wide range of advantages, a further expansion<br />
of its use is very probable. In addition to<br />
the classic JTAG port, which here also rema<strong>in</strong>s<br />
available as an alternative, the serial wire mode<br />
offers a 2-p<strong>in</strong> debug <strong>in</strong>terface. The established<br />
strict separation of debug port by ARM, optionally<br />
JTAG or SWD, and the actual access<br />
port, <strong>in</strong> other words the access to on-chip<br />
debug hardware, enables a simple exchange<br />
while ma<strong>in</strong>ta<strong>in</strong><strong>in</strong>g all functions. A feature is the<br />
<strong>com</strong>b<strong>in</strong>ed serial wire JTAG debug port (SWJ-<br />
DP), which is available to both <strong>in</strong>terfaces via p<strong>in</strong><br />
multiplex<strong>in</strong>g. In the serial wire mode, TCK<br />
functions as clock l<strong>in</strong>e and bidirectional data<br />
are exchanged via TMS. The changeover takes<br />
place via def<strong>in</strong>ed TMS sequences.<br />
Provided that a SWJ-DP is implemented by the<br />
MCU manufacturer, the TDO signal can be<br />
used for the output of different trace results via<br />
a s<strong>in</strong>gle p<strong>in</strong>, which <strong>in</strong> turn results <strong>in</strong> m<strong>in</strong>imum<br />
chip costs. Via the so-named serial wire viewer<br />
(SWV), among other th<strong>in</strong>gs <strong>in</strong>strumentation<br />
trace (pr<strong>in</strong>tf-like Debugg<strong>in</strong>g), watchpo<strong>in</strong>t trace,<br />
<strong>in</strong>struction po<strong>in</strong>ter trace (figure 3) and event<br />
trace (Interrupt) can be displayed, for which<br />
reason this type of low-cost trace is ma<strong>in</strong>ly<br />
found with Cortex-M based microcontrollers.<br />
The maximum possible speed of the SWD <strong>in</strong>terface<br />
is <strong>in</strong>dependent from the core clock used<br />
and virtually only limited by the basic technology.<br />
The <strong>in</strong>tegrated parity check of the telegram<br />
guarantees a reliable transmission. An additional<br />
acknowledge field (ACK) conta<strong>in</strong>ed <strong>in</strong><br />
the SWD protocol ensures correct execution of<br />
the operation. The new vendor-<strong>in</strong>dependent<br />
IEEE 1149.7 (<strong>com</strong>pact JTAG or cJTAG) standard<br />
was ultimately developed to meet current<br />
and future demands of board and system tests.<br />
September 2009 28<br />
IEEE 1149.7 offers additional new features to<br />
support power management, application debug<br />
and device programm<strong>in</strong>g while ma<strong>in</strong>ta<strong>in</strong><strong>in</strong>g<br />
full backward <strong>com</strong>patibility with the exist<strong>in</strong>g<br />
IEEE1149.1. A total of 6 classes are def<strong>in</strong>ed,<br />
which can be implemented by IEEE 1149.7<br />
<strong>com</strong>patible TAP controllers (TAP.7). Class 0 def<strong>in</strong>es<br />
the adherence to 1149.1 <strong>com</strong>patibility,<br />
Class 1 enables additional <strong>com</strong>mand protocol<br />
for reset and power management, Class 2 offers<br />
the capability of BYPASS for chip <strong>in</strong>ternal TAPs<br />
for optimization of the shift cha<strong>in</strong>, Class 3 def<strong>in</strong>es<br />
the capability of star coupl<strong>in</strong>g several<br />
TAP.7 controllers, Class 4 provides new scan<br />
protocols on the basis of only two signal l<strong>in</strong>es,<br />
and Class 5 allows the use of up to two application-specific<br />
data l<strong>in</strong>es e.g. for real-time<br />
trace. Classes 4 and 5 are especially <strong>in</strong>terest<strong>in</strong>g<br />
for embedded applications where cost and<br />
performance are particularly important. On the<br />
one hand here also, as with both of the other solution<br />
approaches presented, only two p<strong>in</strong>s are<br />
needed for the <strong>com</strong>munication. On the other<br />
hand, the data throughput is considerably <strong>in</strong>creased<br />
by various optimized scan protocols.<br />
The IEEE1149.7 standard is still new and correspond<strong>in</strong>g<br />
implementations are rare.<br />
Accord<strong>in</strong>g to this writer's understand<strong>in</strong>g, a<br />
<strong>com</strong>plete synthesizable IP core for cJTAG is so<br />
far only available from IPextreme. Other various<br />
<strong>com</strong>mittees <strong>in</strong>clud<strong>in</strong>g NEXUS and MIPI,<br />
which are also <strong>in</strong>volved with debug <strong>in</strong>terfaces,<br />
will certa<strong>in</strong>ly take the cJTAG standard <strong>in</strong>to account.<br />
Meanwhile, most microcontroller users<br />
agree that the almost twenty-year old JTAG<br />
standard is only suitable to a limited extent to<br />
meet today’s demands for speed, p<strong>in</strong> count and<br />
robustness. However, the question rema<strong>in</strong>s;<br />
what is the ideal future solution?<br />
As the described examples show, different manufacturers<br />
and <strong>in</strong>terest groups are follow<strong>in</strong>g similar<br />
fundamental pr<strong>in</strong>ciples <strong>in</strong> the search for an<br />
answer, but there is certa<strong>in</strong>ly no real standardization.<br />
Therefore, the challenge for debug and<br />
test tools consists of support for all new <strong>in</strong>terfaces.<br />
A prerequisite for such universally usable<br />
and at the same time <strong>com</strong>mercially acceptable<br />
solutions is certa<strong>in</strong>ly, <strong>in</strong> addition to a modular<br />
adapter concept for different connectors (figure<br />
4), also a flexible tool architecture. With special<br />
FPGA equipped debug devices, such as pls universal<br />
access device 2 (UAD2), it is already today<br />
possible to implement nearly all debug protocols<br />
without much additional effort. ■<br />
www.embedded-control-europe.<strong>com</strong><br />
The Onl<strong>in</strong>e Information Source for <strong>Europe</strong>`s <strong>Embedded</strong> Eng<strong>in</strong>eers<br />
• Product News • Technical Articles • Company Profiles • Events
How to perform <strong>in</strong>tegration<br />
test<strong>in</strong>g of embedded software<br />
By Frank Büchner, Hitex<br />
With temporal <strong>com</strong>ponent<br />
test<strong>in</strong>g, Tessy provides a<br />
powerful and flexible way to<br />
perform <strong>in</strong>tegration test<strong>in</strong>g of<br />
embedded software.<br />
Paramount is the possibility to<br />
specify time <strong>in</strong> the natural<br />
units of the specification.<br />
■ What does <strong>in</strong>tegration test of embedded<br />
software mean exactly? To get <strong>in</strong>side this term,<br />
we need to specify the objects to be <strong>in</strong>tegrated.<br />
As we are talk<strong>in</strong>g about embedded software, we<br />
can assume functions <strong>in</strong> the sense of C as objects.<br />
It is trivial to do <strong>in</strong>tegration test<strong>in</strong>g of two<br />
functions <strong>in</strong> a call<strong>in</strong>g hierarchy, but what about<br />
two functions that do not call each other? A<br />
simple example of two functions which are not<br />
<strong>in</strong> a call<strong>in</strong>g hierarchy but should be tested <strong>in</strong>tegrated<br />
together are push() and pop() of the<br />
abstract data type stack. The isolated test<strong>in</strong>g of<br />
push() or pop() is unit test<strong>in</strong>g but that is not<br />
sufficient here - <strong>in</strong>tegration test<strong>in</strong>g is needed.<br />
Integration test<strong>in</strong>g would consist of a sequence<br />
of push() and pop() calls. The <strong>in</strong>put for such a<br />
test case is formed by the parameter values of<br />
push() and the <strong>in</strong>itial contents of the stack. The<br />
results are the return values of pop() and the<br />
f<strong>in</strong>al state of the stack. In the case where calls to<br />
push() and pop() could result <strong>in</strong> additional<br />
calls, e.g. to error-handl<strong>in</strong>g functions, such calls<br />
also belong to the expected results of an <strong>in</strong>tegration<br />
test case.<br />
In the follow<strong>in</strong>g, we use the term <strong>com</strong>ponent to<br />
denote the set of functions that we want to test<br />
<strong>in</strong> an <strong>in</strong>tegrated form. This <strong>in</strong>cludes also the<br />
data on which the functions jo<strong>in</strong>tly operate. IEC<br />
61508 uses the term module for such a <strong>com</strong>ponent.<br />
A <strong>com</strong>ponent test case, as described for<br />
the stack, is called a scenario. In the case where<br />
we know that one of the functions of a <strong>com</strong>ponent<br />
is called at equidistant po<strong>in</strong>ts <strong>in</strong> time,<br />
we are able to use these calls as a basis for a simulation<br />
of time. Then temporal conditions<br />
can be tested <strong>in</strong> a scenario. This is called<br />
temporal <strong>com</strong>ponent test<strong>in</strong>g.<br />
Figure 1 depicts a <strong>com</strong>ponent with its functions<br />
and its data. Some of the functions (depicted <strong>in</strong><br />
dark blue) can be called from the outside of the<br />
<strong>com</strong>ponent (<strong>in</strong>dicated by the green arrows);<br />
calls to these functions form the stimulat<strong>in</strong>g<br />
part of a scenario. These functions are designated<br />
<strong>com</strong>ponent functions. There might be<br />
other functions <strong>in</strong>side the <strong>com</strong>ponent (depicted<br />
<strong>in</strong> light blue), that are not visible outside the<br />
<strong>com</strong>ponent. The functions <strong>in</strong> a <strong>com</strong>ponent do<br />
not need to be <strong>in</strong> a (s<strong>in</strong>gle) call<strong>in</strong>g hierarchy. A<br />
<strong>com</strong>ponent can <strong>com</strong>prise data, which is accessible<br />
from outside the <strong>com</strong>ponent. Hence,<br />
Figure 2. Interface of the <strong>com</strong>ponent<br />
TESTING &DEBUGGING<br />
Figure 1. Example of a<br />
<strong>com</strong>ponent<br />
dur<strong>in</strong>g a scenario execution, data can be written<br />
(i.e. supplied as test <strong>in</strong>put) or read (i.e. retrieved<br />
as test result). The result of a scenario<br />
execution can consist of calls to functions <strong>in</strong><br />
other <strong>com</strong>ponents, i.e. calls to functions outside<br />
the <strong>com</strong>ponent (<strong>in</strong>dicated by the red arrows).<br />
The red heart <strong>in</strong> figure 1 marks one of the <strong>com</strong>ponent<br />
functions as the heartbeat function. Obviously,<br />
<strong>com</strong>ponent test<strong>in</strong>g is a good <strong>in</strong>tegration<br />
test for the functions <strong>in</strong>side the <strong>com</strong>ponent. In<br />
the next application, a car <strong>in</strong>terior light, we take<br />
the <strong>in</strong>terior light of a car as example for <strong>com</strong>ponent<br />
test<strong>in</strong>g and use Tessy to execute the tests.<br />
Tessy is a tool to automate the unit, module,<br />
and <strong>in</strong>tegration test<strong>in</strong>g of embedded software.<br />
The <strong>in</strong>terior light is controlled by two sensors.<br />
Firstly a sensor <strong>in</strong>dicat<strong>in</strong>g if the door is closed<br />
or open, secondly a sensor <strong>in</strong>dicat<strong>in</strong>g if the ignition<br />
is on or off. The (very rudimentary)<br />
specification for the behaviour of the <strong>in</strong>terior<br />
lightrequiresittogoonassoonasthedooris<br />
closed. If noth<strong>in</strong>g else happens, it must go off<br />
automatically after 5 seconds at the latest.<br />
However, should the ignition be switched on<br />
dur<strong>in</strong>g these 5 seconds, the <strong>in</strong>terior light should<br />
go off immediately.<br />
As a start, Tessy determ<strong>in</strong>es automatically the<br />
<strong>in</strong>terface of the <strong>com</strong>ponent by analyz<strong>in</strong>g the<br />
source code of the <strong>com</strong>ponent (figure 2). The<br />
upper part of figure 2 lists all the functions of<br />
the <strong>com</strong>ponent that can be called from outside<br />
29 September 2009
TESTING &DEBUGGING<br />
Figure 3. Scenario with result (left hand side) and call trace (right hand side)<br />
Figure 4. Another scenario and result (left hand side) and call trace (right hand side)<br />
the <strong>com</strong>ponent and thus can be part of a scenario<br />
(<strong>com</strong>ponent functions). The function<br />
<strong>in</strong>it() <strong>in</strong>itializes the <strong>com</strong>ponent. The two functions<br />
set_sensor_door() and set_sensor_ignition()<br />
pass the state of the respective sensors to<br />
the <strong>com</strong>ponent. The function tick() forms the<br />
heartbeat function of the <strong>com</strong>ponent. This was<br />
manually set by the user; it is <strong>in</strong>dicated by a<br />
special icon placed before tick(). The middle of<br />
figure 2 depicts the function calls from the<br />
<strong>com</strong>ponent to functions <strong>in</strong> other <strong>com</strong>ponents<br />
(external function calls). These are the two<br />
functions LightOn() and LightOff(), which<br />
switch the <strong>in</strong>terior light on and off, respectively.<br />
Dur<strong>in</strong>g <strong>com</strong>ponent test<strong>in</strong>g, Tessy replaces<br />
LightOn() and LightOff() by stub functions, i.e.<br />
we do not need implementations of these two<br />
functions for test<strong>in</strong>g. The lower part of figure 2<br />
(variables) depicts the variables of the <strong>com</strong>ponent<br />
which are accessible dur<strong>in</strong>g a scenario<br />
execution. The arrows <strong>in</strong>dicate if a variable can<br />
be <strong>in</strong>put, or output, or both. Now the desired<br />
<strong>in</strong>tegration test cases (or scenarios) are created.<br />
In Tessy this is done <strong>in</strong> the so-called scenario<br />
editor (SCE). Interface elements (figure 2) are<br />
dragged to a time scale and dropped on the desired<br />
po<strong>in</strong>t <strong>in</strong> simulated time. If needed, values<br />
for parameters of functions or for variables can<br />
be specified. The scenario <strong>in</strong> figure 3 tests that<br />
the <strong>in</strong>terior light is switched on immediately<br />
after the door was closed. Because ignition is<br />
not operated <strong>in</strong> this scenario, it is expected that<br />
the <strong>in</strong>terior light is switched off after 5 seconds<br />
at the latest. For the example at hand, we and<br />
the <strong>com</strong>ponent assume that tick() is called<br />
every 10 ms. This gives us a basis for the simulation<br />
of time. Prior to the first call to tick(), i.e.<br />
before 0ms of simulated scenario time, <strong>in</strong>it() is<br />
called. This call arranges for a def<strong>in</strong>ed <strong>in</strong>itial<br />
state, <strong>in</strong> our case door open, ignition off, and<br />
September 2009 30<br />
light off. After the third call of tick(), i.e. at 30<br />
ms of simulated scenario time,<br />
set_sensor_door() is called with the parameter<br />
value closed. This <strong>in</strong>dicates for the <strong>com</strong>ponent<br />
that the door is closed, which should cause<br />
some actions. Two expected actions are specified<br />
<strong>in</strong> the scenario. Firstly, LightOn() must be<br />
called after the next call to tick(), i.e. at 40 ms<br />
simulated time. Secondly, LightOff() must be<br />
called after 5 seconds at the latest, i.e. between<br />
30 ms and 5030 ms of simulated scenario time.<br />
The execution of the scenario yields the expected<br />
results. This is <strong>in</strong>dicated by the green tick<br />
marks <strong>in</strong> the scenario (left hand side of figure<br />
3) and is also illustrated by the call trace (right<br />
hand side of figure 3).<br />
In this scenario, the distance between two subsequent<br />
calls to tick() is specified to be 10 ms.<br />
This allows Tessy to calculate the distance <strong>in</strong><br />
time, given <strong>in</strong> natural units (e.g. seconds) for<br />
the correspond<strong>in</strong>g number of calls to tick().<br />
Should the distance change, Tessy automatically<br />
recalculates the number of calls. This is especially<br />
useful, if the distance is changed <strong>in</strong> the<br />
courseoftheproject,e.g.from10msto20ms,<br />
e.g. because 10 ms is not longer sufficient for all<br />
the work to be done <strong>in</strong> that time frame. With<br />
Tessy, time always is specified <strong>in</strong> the natural<br />
units of the specification and not <strong>in</strong> implementation-dependent<br />
values.<br />
The scenario <strong>in</strong> figure 4 tests if the <strong>in</strong>terior light<br />
is switched off after the ignition was switched<br />
on. Different to the scenario <strong>in</strong> figure 4, <strong>in</strong>it() is<br />
not called. This can rema<strong>in</strong> undone because<br />
Tessy is able to set/check the value of a variable<br />
prior, dur<strong>in</strong>g and after a test. This feature is<br />
used to mimic the <strong>in</strong>it() call. This feature<br />
would also allow start<strong>in</strong>g a scenario from an<br />
<strong>in</strong>valid state or check<strong>in</strong>g that <strong>in</strong>it() works correctly.<br />
Another difference to the first scenario is<br />
that the operation of the ignition is <strong>in</strong>dicated<br />
us<strong>in</strong>g a variable (and not by call<strong>in</strong>g set_sensor_ignition(),<br />
as one might assume from the<br />
first scenario). Furthermore, the second scenario<br />
specifies that the <strong>in</strong>terior light shall go on<br />
after the door is closed and shall go off immediately<br />
after the ignition is switched on. Tessy<br />
determ<strong>in</strong>es the code coverage achieved by the<br />
execution of the scenario(s). ■<br />
October 8, 2009 – 10h00 to 17h00 CET<br />
(Central <strong>Europe</strong>an Time)
PRODUCT NEWS<br />
■ MSC: new variations of Qseven platform<br />
MSC has announced new variations of its Qseven platform MSC Q7-<br />
US15W. The ma<strong>in</strong> features of all three versions like graphics, high def<strong>in</strong>ition<br />
audio and the <strong>in</strong>terface offer<strong>in</strong>g, e.g. USB and Gbit Ethernet, are<br />
identical. The high end version <strong>com</strong>es with the 1.6GHz Intel Atom<br />
Z530 processor, 1024MB of SDRAM, two SATA-300 ports and three<br />
PCI Express x1 lanes.<br />
News ID 1617<br />
■ Avalue: multiple IPC chassis for M<strong>in</strong>i-ITX boards<br />
Avalue br<strong>in</strong>gs out a series of chassis for hous<strong>in</strong>g the <strong>com</strong>ponents of IPCs<br />
which allow secure mount<strong>in</strong>g and protect from vibration, static and<br />
other harmful elements. Avalue offers a range of <strong>in</strong>dustrial chassis types<br />
from VESA <strong>com</strong>pliant rack-mount chassis, wall-mount chassis to desktop<br />
chassis.<br />
News ID 1622<br />
■ Bra<strong>in</strong>boxes launches range of USB to serial products<br />
Bra<strong>in</strong>boxes launches its new range of USB to Serial connectivity devices,<br />
releas<strong>in</strong>g two new products. The RS232 and RS422/485 serial devices<br />
provide a highly efficient and robust serial port extension suitable for<br />
office and laboratory environments. This will ensure that desktops and<br />
laptops supplied with limited or no serial ports cont<strong>in</strong>ue to have connectivity<br />
to a wide range of RS 232 and RS 422/ 485 devices via USB.<br />
News ID 382<br />
■ Kontron: evaluation kit for <strong>com</strong>pact COM Express class<br />
The Kontron microETXexpress evaluation kit offers developers a fast<br />
<strong>in</strong>troduction <strong>in</strong>to the <strong>com</strong>pact class of COM Express. The Kontron microETXexpress<br />
Starterkit is an all-round development platform for a<br />
wide range of embedded applications that require high-performance<br />
and process<strong>in</strong>g density on a <strong>com</strong>pact footpr<strong>in</strong>t with low-power consumption.<br />
It is ideal for evaluat<strong>in</strong>g applications that are to be operated<br />
on small mobile devices which are battery-powered or even solarpowered<br />
and small embedded devices which have a <strong>com</strong>pact format<br />
while offer<strong>in</strong>g a high level of features.<br />
News ID 1602<br />
■ ADLINK: EBX SBC based on 1.6 GHz Intel Atom N270 processor<br />
ADLINK announces the LittleBoard 735 EBX SBC based on the ultra<br />
low power Intel Atom N270 processor at 1.6 GHz, code name ‘Diamondville’.<br />
The LittleBoard 735 supports the 1.6 GHz Atom’ N270<br />
processor with Intel 945GSE chipset (‘Navy Pier’ platform) and provides<br />
a DDR2 533 SODIMM socket for up to 2 GB of RAM. Independent<br />
10/100BaseT and 10/100/1000BaseT Ethernet ports give system OEMs<br />
flexibility.<br />
News ID 304<br />
■ AAEON: ETX CPU module with VIA C7/Eden processors<br />
AAEON announces the new <strong>Embedded</strong> Technology eXtended product<br />
ETX-CX700M, which is based on the VIA C7/ Eden (V4) series<br />
processors <strong>com</strong>b<strong>in</strong>ed with the VIA CX700M chipset. The ETX-<br />
CX700M provides support for a multitude of expansion and storage <strong>in</strong>terfaces<br />
that will allow for numerous options to be designed onto the<br />
baseboard.<br />
News ID 1560<br />
■ W<strong>in</strong>d River adds virtualization to multicore software solution<br />
W<strong>in</strong>d River announces the immediate availability of W<strong>in</strong>d River Hypervisor,<br />
a key pillar of W<strong>in</strong>d River’s <strong>com</strong>prehensive Multicore Software<br />
Solution for device development. W<strong>in</strong>d River Hypervisor is a high-performance<br />
Type-1 hypervisor, which supports virtualization on s<strong>in</strong>gle<br />
and multicore processors.<br />
News ID 1482<br />
31 September 2009
PRODUCT NEWS<br />
■ DFI: Atom-based micro COM Express<br />
module<br />
DFI announces a new fanless Micro COM Express<br />
module, the NP905-B16C, conform<strong>in</strong>g to<br />
COM Express Type 2 Basic form factor standard,<br />
but with a smaller size of 95 x 95 mm. The<br />
Micro COM Express form factor uses the same<br />
220-p<strong>in</strong> high-speed SMT connectors and signal<strong>in</strong>g<br />
of the COM Express Type 2 Basic module,<br />
mak<strong>in</strong>g it a drop-<strong>in</strong> replacement. The DFI<br />
NP905-B16C module is based on the Intel<br />
Atom N270 processor with 533MHz FSB and<br />
Intel 945GSE Express chipset with ICH7M I/O<br />
controller hub.<br />
News ID 1529<br />
■ Quadros supports Atmel SAM9<br />
microcontrollers<br />
Quadros Systems announces support for the<br />
AT91SAM9G20 and SM9XE microcontrollers<br />
from Atmel. Quadros Systems’ offers one-stop<br />
development and run-time solutions for Atmel<br />
SAM9 microcontrollers <strong>com</strong>b<strong>in</strong><strong>in</strong>g RTXC<br />
RTOS and <strong>in</strong>tegrated software with MDK-<br />
ARM development tools from Keil, an ARM<br />
<strong>com</strong>pany.<br />
News ID 311<br />
■ Logic Technology: file system for W<strong>in</strong>dows<br />
CE, W<strong>in</strong>dows Mobile and VxWorks<br />
Logic Technology announced availability of<br />
Datalight’s Reliance Nitro fault-tolerant embedded<br />
file systems. Reliance Nitro is now<br />
available for W<strong>in</strong>dows CE and W<strong>in</strong>dows Mobile<br />
as well as VxWorks, and is reported to boost<br />
sequential and random write speeds as much as<br />
five times faster than the default file systems.<br />
News ID 1555<br />
■ Keil supports STM32 Connectivity L<strong>in</strong>e<br />
Keil announces support for the STM32 Connectivity<br />
L<strong>in</strong>e <strong>in</strong> the Keil MDK-ARM Microcontroller<br />
Development Kit and RL-ARM Real-<br />
Time Library. Keil has also <strong>in</strong>troduced the new<br />
MCBSTM32C evaluation board and starter kit.<br />
The STM32 Connectivity L<strong>in</strong>e is based on the<br />
ARM Cortex-M3 processor and features fullspeed<br />
USB OTG, dual CAN2.0B <strong>in</strong>terfaces, and<br />
10/100 Ethernet <strong>in</strong>clud<strong>in</strong>g hardware support<br />
for IEEE1588 Precision Time Protocol. The devices<br />
share <strong>com</strong>mon peripherals with other<br />
STM32 families, thereby allow<strong>in</strong>g easy project<br />
migration, and have up to 256KB Flash and<br />
64KB SRAM.<br />
News ID 1652<br />
■ pls: Eclipse plug-<strong>in</strong> for Universal Debug<br />
Eng<strong>in</strong>e<br />
A special plug-<strong>in</strong>, now provided with the Universal<br />
Debug Eng<strong>in</strong>e 2.6 from pls Programmierbare<br />
Logik & Systeme at no extra cost, enables<br />
a separate debug perspective for Eclipsebased<br />
platforms. The tool, offered as a feature<br />
<strong>in</strong>stallation package, offers the advantage that<br />
the <strong>com</strong>plete functionality of the UDE as cross<br />
debugger under Eclipse is reta<strong>in</strong>ed without hav<strong>in</strong>g<br />
to <strong>com</strong>promise. It can be simply <strong>in</strong>stalled<br />
with Eclipse’s own mechanism. Operation <strong>in</strong><br />
"RCP stand-alone application mode" is also<br />
possible.<br />
News ID 357<br />
■ IAR: KickStart Kit for NXP Cortex-M3<br />
devices<br />
IAR Systems has <strong>in</strong>troduced a KickStart Kit for<br />
NXP’s ultra-low power ARM Cortex-M3 device,<br />
the LPC1768. The kit, which <strong>in</strong>cludes IAR<br />
<strong>Embedded</strong> Workbench for ARM and example<br />
applications to speed up development of<br />
LPC1768 designs, consists also of a development<br />
board fitted with the microcontroller,<br />
evaluation editions of IAR PowerPac for ARM,<br />
IAR visualSTATE, and a separate IAR J-L<strong>in</strong>k<br />
debug probe for ARM.<br />
News ID 1648<br />
■ Lauterbach supports Intel Atom processors<br />
Lauterbach announces support for the Intel<br />
Atom processor core based platforms for MID<br />
Menlow, Moorestown and Medfield. The exist<strong>in</strong>g<br />
TRACE32PowerDebug system has been<br />
enhanced for the new processor architecture,<br />
br<strong>in</strong>g<strong>in</strong>g a mature high end debugg<strong>in</strong>g solution<br />
to the Intel Atom architecture.<br />
News ID 1656<br />
■ Data Modul: 7.6 <strong>in</strong>ch active-matrix OLED<br />
Data Modul offers active matrix OLEDs from<br />
CMEL with high optical performance, even<br />
under extreme view<strong>in</strong>g angles, characterize<br />
OLEDs.With an active area of 165x99mm the 7.6’<br />
P0760WVLB-T (CM02013) is currently the<br />
largest available active-matrix OLED from CMEL.<br />
News ID 386<br />
■ NXP and Trusted Logic: NFC middleware<br />
<strong>in</strong>tegration<br />
NXP and Trusted Logic announce a partnership<br />
<strong>in</strong> which Trusted Logic will distribute and market<br />
the NFC middleware, which embeds the<br />
NXP Reference Implementation. Under this<br />
More <strong>in</strong>formation about each news is available on<br />
www.<strong>Embedded</strong>-<strong>Control</strong>-<strong>Europe</strong>.<strong>com</strong>/ece_magaz<strong>in</strong>e<br />
• You have to type <strong>in</strong> the “News ID”. —<br />
September 2009 32<br />
agreement, Trusted Logic will license the NXP<br />
Reference Implementation, which has been<br />
validated with the latest NXP NFC controller<br />
PN544. Trusted Logic will enhance the solution<br />
with their Java Specification Request 257 implementation<br />
to enable NFC technology <strong>in</strong> Java<br />
Micro Edition environments. Furthermore,<br />
this partnership will enable NFC middleware<br />
<strong>in</strong>tegration with the most <strong>com</strong>mon mobile operat<strong>in</strong>g<br />
systems and facilitate <strong>in</strong>tegration services<br />
to handset manufacturers.<br />
News ID 1870<br />
■ Actron: SoC NAPs support PCIe and<br />
Gigabit Ethernet<br />
Actron announces two new network appliance<br />
processors from MosChip support<strong>in</strong>g PCI Express,<br />
Gigabit Ethernet and display <strong>in</strong>terfaces <strong>in</strong><br />
a s<strong>in</strong>gle solution. With MosChip’s MCS8142,<br />
system eng<strong>in</strong>eers can target a variety of well<br />
suited applications that <strong>in</strong>clude consumer network<br />
attached storage, PC and media dock<strong>in</strong>g<br />
stations, SOHO, home network automation,<br />
media servers, and more.<br />
News ID 1940<br />
■ GLYN adds USB solutions from FTDI<br />
to l<strong>in</strong>ecard<br />
GLYN has extended its product portfolio with<br />
a l<strong>in</strong>e of high quality products from FTDI to<br />
<strong>com</strong>plement exist<strong>in</strong>g applications with USB.<br />
FTDI is specialised <strong>in</strong> develop<strong>in</strong>g quick and<br />
easy solutions for USB applications.<br />
News ID 1446<br />
■ Innovasic: Intel CAN controller replacement<br />
Innovasic Semiconductor has announced production<br />
units are shipp<strong>in</strong>g for the IA82527.<br />
The IA82527 is a form, fit, and function replacement<br />
for the orig<strong>in</strong>al Intel 82527 Serial<br />
Communications <strong>Control</strong>ler. The Innovasic replacement<br />
supports the same CAN 2.0 Specification<br />
as the orig<strong>in</strong>al device, <strong>in</strong>clud<strong>in</strong>g standard<br />
and extended message frames.<br />
News ID 1456<br />
■ MSC: DDR3 DRAM modules from Samsung<br />
MSC opens the ‘green world’ by launch<strong>in</strong>g the<br />
new DDR3 DRAM modules from Samsung.<br />
The Samsung DDR3 delivers a <strong>com</strong>b<strong>in</strong>ation of<br />
maximum bandwidth and density at the lowest<br />
power consumption. This high performance,<br />
energy-efficient memory is perfectly suited<br />
when energy efficiency be<strong>com</strong>es a criteria.<br />
News ID 1676
■ MIPS jo<strong>in</strong>s Open <strong>Embedded</strong> Software<br />
Foundation<br />
MIPS Technologies announces it has jo<strong>in</strong>ed the<br />
Open <strong>Embedded</strong> Software Foundation (OESF),<br />
an organization focused on standardization and<br />
development of Android platforms for embedded<br />
devices beyond mobile handsets.<br />
News ID 1562<br />
■ Evatronix and Soft-Mixed Signal: IP<br />
solution for USB 2.0<br />
Evatronix and Soft Mixed Signal announce the<br />
availability of the <strong>com</strong>plete USB 2.0 solution<br />
that <strong>in</strong>tegrates USB 2.0 <strong>Control</strong>ler IP from Evatronix<br />
and the USB 2.0 PHY IP from Soft<br />
Mixed Signal.The USB <strong>Control</strong>ler IP implements<br />
configurable amount of memory for<br />
each endpo<strong>in</strong>t, which could also be turned off<br />
for even less power usage, while a <strong>com</strong>mon<br />
buffer for OUT type endpo<strong>in</strong>ts saves power by<br />
tak<strong>in</strong>g less silicon area.<br />
News ID 1899<br />
■ Ericsson expands distribution agreement<br />
with Mouser Electronics<br />
Ericsson Power Modules has extended its distribution<br />
agreement with Mouser Electronics to<br />
<strong>in</strong>clude the APAC regions. Mouser is an electronic<br />
<strong>com</strong>ponent distributor, focused on the<br />
rapid <strong>in</strong>troduction of new products and technologies<br />
to electronic design eng<strong>in</strong>eers. Customers<br />
throughout the APAC regions now can<br />
order Ericsson's <strong>com</strong>plete DC/DC converter<br />
range <strong>in</strong>clud<strong>in</strong>g its latest digitally controlled<br />
converters from Mouser. Mouser currently has<br />
branch locations throughout Asia <strong>in</strong> countries<br />
such as S<strong>in</strong>gapore, Hong Kong, and Ch<strong>in</strong>a.<br />
Mouser has launched websites and pr<strong>in</strong>ted catalogs<br />
<strong>in</strong> multiple currencies and languages.<br />
News ID 1913<br />
■ GLYN is new distributor for RF<br />
modules from Radiocrafts<br />
Radiocrafts appo<strong>in</strong>ts GLYN as new distributor<br />
<strong>in</strong> Germany, Switzerland, Austria and the<br />
BeNeLux area. GLYN is a distributor of hightech<br />
microelectronics and has been <strong>in</strong> the<br />
market s<strong>in</strong>ce 1980. The distributor is sell<strong>in</strong>g <strong>in</strong>tegrated<br />
circuits from lead<strong>in</strong>g semiconductor<br />
manufacturers, particularly microcontrollers,<br />
microprocessors, memory <strong>com</strong>ponents, optoelectronics<br />
and power electronics.<br />
News ID 1601<br />
■ Toshiba: <strong>in</strong>dustrial LCD panels with<br />
LED backlight system<br />
Toshiba Electronics <strong>Europe</strong> has announced<br />
the development of the latest range of activematrix<br />
colour TFT liquid crystal displays for the<br />
<strong>in</strong>dustrial market. The new display modules <strong>in</strong>corporate<br />
light-emitt<strong>in</strong>g diode backlight technology<br />
offer<strong>in</strong>g long life performance with<br />
100,000 hours mean time between failure.<br />
News ID 354<br />
PRODUCT NEWS<br />
■ Mouser and Multi-Tech: distribution<br />
agreement <strong>in</strong>cludes <strong>Europe</strong> and Asia<br />
Mouser Electronics announces its distribution<br />
authorization with Multi-Tech Systems has been<br />
expanded <strong>in</strong>to a global agreement. Multi-Tech<br />
Systems manufactures telephony, <strong>in</strong>ternet, remote<br />
access, and device network<strong>in</strong>g products<br />
that connect voice and data over IP networks.<br />
News ID 1875<br />
■ SEGGER: RTOS supports Freescale’s<br />
<strong>Control</strong>ler Cont<strong>in</strong>uum<br />
SEGGER announces that embOS RTOS, is<br />
now available for the 8-bit HCS08 and 32-bit<br />
ColdFire V1 MCUs from Freescale. embOS<br />
<strong>com</strong>es with a premium feature set such as the<br />
embOSView task-level profil<strong>in</strong>g tool, an unlimited<br />
number of tasks and no need for preconfiguration.<br />
By support<strong>in</strong>g both cores, SEG-<br />
GER helps developers to easily transfer from the<br />
8-bit to 32-bit world us<strong>in</strong>g the Freescale <strong>Control</strong>ler<br />
Cont<strong>in</strong>uum.<br />
News ID 1979<br />
■ Evatronix C68000 IP core implemented<br />
by HAPA<br />
Evatronix announces that its C68000 IP core<br />
has been successfully implemented <strong>in</strong> the<br />
HAPA 100 <strong>Control</strong>ler series for pr<strong>in</strong>ters of the<br />
Swiss <strong>com</strong>pany HAPA. The HAPA 100 controller<br />
series supports 3- and 5-phase stepper<br />
motors <strong>in</strong> their pr<strong>in</strong>ters s<strong>in</strong>ce 15 years. The<br />
pr<strong>in</strong>ters are used <strong>in</strong> the pharmaceutical <strong>in</strong>dustry<br />
to pr<strong>in</strong>t by flexographic or drop on demand<br />
technology alum<strong>in</strong>um foil, blisters and cartons<br />
<strong>in</strong> l<strong>in</strong>e just before packag<strong>in</strong>g.<br />
News ID 1871<br />
■ Eremex: topological router and layout<br />
editor<br />
Eremex presents the TopoR - high-performance<br />
topological router and layout editor<br />
which provides high-quality PCB design of any<br />
<strong>com</strong>plexity with lightn<strong>in</strong>g speed as a result of<br />
unique algorithms implementation.<br />
News ID 1675<br />
■ pls: debug tool now available<br />
for Freescale’s i.MX25 family<br />
pls Programmierbare Logik & Systeme now offers<br />
its Universal Debug Eng<strong>in</strong>e, which is currently<br />
available for a variety of different ARM7<br />
and ARM9 derivates, also for Freescale’s<br />
ARM926EJ-S core based i.MX25 family of<br />
multimedia applications processors. The <strong>in</strong>tuitive<br />
and configurable user <strong>in</strong>terface of the UDE<br />
provides i.MX25 users with unrestricted C/C++<br />
support, a powerful symbol browser, freely configurable<br />
toolbars, extensive context related<br />
menus and HTML as description language for<br />
application-specific w<strong>in</strong>dows. In addition, the<br />
use of standard script languages guarantees a<br />
high level of automation.<br />
News ID 1536<br />
33 September 2009<br />
You CAN get it...<br />
Hardware & software for<br />
CAN bus applications…<br />
PCAN-Explorer 5<br />
Universal CAN monitor,<br />
symbolic representation, VBS<br />
<strong>in</strong>terface, <strong>in</strong>tegrated data logger,<br />
functionality upgrades with add<strong>in</strong>s<br />
(e.g. Plotter & J1939 Add-<strong>in</strong>).<br />
High-speed<br />
USB 2.0<br />
Hub<br />
PCAN-USB Hub<br />
PCAN-cPCI<br />
CAN <strong>in</strong>terface for CompactPCI slots<br />
with galvanic isolation. Available<br />
as 2-channel or 4-channel version.<br />
All-<strong>in</strong>-one USB adapter for<br />
<strong>com</strong>munication through USB, CAN,<br />
and RS-232.<br />
www.peak-system.<strong>com</strong><br />
Otto-Roehm-Str. 69<br />
64293 Darmstadt / Germany<br />
Phone: +49 6151 8173-20<br />
Fax: +49 6151 8173-29<br />
<strong>in</strong>fo@peak-system.<strong>com</strong>
PRODUCT NEWS<br />
■Atlantik: RoadTunes ROM solution<br />
for portable navigation devices<br />
Atlantik Elektronik presents the new Road-<br />
Tunes ROM solution from CSR for portable<br />
navigation devices and aftermarket <strong>in</strong>-car devices,<br />
such as Bluetooth-enabled vehicle <strong>in</strong>fota<strong>in</strong>ment<br />
and car radio platforms. The Road-<br />
Tunes ROM chipset is a <strong>com</strong>plete embedded<br />
Bluetooth solution <strong>in</strong> a QFN package which requires<br />
m<strong>in</strong>imal external <strong>com</strong>ponents.<br />
News ID 1667<br />
■ Digi-Key and Fujitsu Microelectronics:<br />
worldwide distribution agreement<br />
Digi-Key has signed a new agreement with Fujitsu<br />
Microelectronics for the worldwide distribution<br />
of Fujitsu's new low-power, lowp<strong>in</strong>-count,<br />
8-bit microcontrollers and digital<br />
touch-screen sensor ICs. Fujitsu products<br />
stocked by Digi-Key are now available for immediate<br />
shipment via Digi-Key's global websites.<br />
News ID 1882<br />
■ Microchip: 100Mbps Ethernet controllers<br />
with <strong>in</strong>tegrated security eng<strong>in</strong>es<br />
Microchip announces the ENC624J600, a low<br />
cost standalone IEEE 802.3TM <strong>com</strong>pliant<br />
100Mbps Ethernet <strong>in</strong>terface controller. These<br />
��������<br />
�����<br />
� ������ ��� ���� ����<br />
� ����������� ����<br />
� ������������<br />
� �������������<br />
� ���������� ����<br />
� ���� ���� �������������<br />
� ��������<br />
���� ������<br />
����������������<br />
Ethernet controllers <strong>com</strong>b<strong>in</strong>e a 10/100Base-TX<br />
physical <strong>in</strong>terface and a Media Access <strong>Control</strong>ler<br />
with a hardware cryptographic security<br />
eng<strong>in</strong>e, and can connect to any PIC microcontroller<br />
via an <strong>in</strong>dustry-standard Serial Peripheral<br />
Interface or a flexible parallel <strong>in</strong>terface.<br />
News ID 1953<br />
■ Inf<strong>in</strong>eon: Gigabit PHY <strong>com</strong>plies with<br />
EEE guidel<strong>in</strong>es<br />
Inf<strong>in</strong>eon announces an energy efficient Gigabit<br />
Ethernet Physical Layer IC. The new XWAY<br />
PHY11G is <strong>com</strong>pliant with EEE guidel<strong>in</strong>es for<br />
energy efficiency, and it is the <strong>in</strong>dustry’s smallest<br />
footpr<strong>in</strong>t IC for Gigabit home network<strong>in</strong>g<br />
applications. The new IC targets all major<br />
broadband applications, <strong>in</strong>clud<strong>in</strong>g xDSL and<br />
PON Routers <strong>in</strong> home gateway solutions, IP<br />
phones, PC motherboards, and consumer applications<br />
like IP-TVs, IP set-top boxes, game<br />
consoles and pr<strong>in</strong>ters.<br />
News ID 1946<br />
■ Yamaichi: SD card reader with push/push<br />
system<br />
Yamaichi Electronics now offer the FPS009-<br />
2409-0, a new push/push SD/MMC card connector<br />
replac<strong>in</strong>g the top mount <strong>com</strong>ponent<br />
FPS009-2405-0. The PCB layout is unmodified<br />
<strong>com</strong>pared to the old version which means that<br />
the new card reader can be used with the exist<strong>in</strong>g<br />
layout. The low profile design with its 2.8<br />
mm has almost the same height as the SD card<br />
itself.<br />
News ID 1533<br />
■ Xil<strong>in</strong>x: Virtex-6 and Spartan-6 evaluation<br />
kits<br />
Xil<strong>in</strong>x releases the Xil<strong>in</strong>x Base Targeted Design<br />
Platform aimed at accelerat<strong>in</strong>g the development<br />
of SoC solutions with Xil<strong>in</strong>x Virtex-6 and<br />
Spartan-6 FPGAs. This base-level targeted design<br />
platform <strong>com</strong>b<strong>in</strong>es the 11.2 release of the<br />
ISE Design Suite, expanded <strong>in</strong>tellectual property<br />
portfolio, and pre-verified reference designs<br />
target<strong>in</strong>g Virtex-6 or Spartan-6 FPGAs with<strong>in</strong><br />
fully <strong>in</strong>tegrated evaluation kits that enable design<br />
teams to dramatically shorten development<br />
cycles and focus eng<strong>in</strong>eer<strong>in</strong>g resources on creat<strong>in</strong>g<br />
greater product differentiation.<br />
News ID 1551<br />
■ Mouser: Actel IGLOO nano FPGAs<br />
and ProASIC3 nano FPGAs<br />
Mouser Electronics announced that it is stock<strong>in</strong>g<br />
Actel’s IGLOO nano FPGAs and ProASIC 3<br />
nano FPGAs. Designed for high-volume applications<br />
where power and size are key decision<br />
criteria, Actel’s IGLOO nano FPGAs are perfect<br />
ASIC or ASSP replacements, yet reta<strong>in</strong> the historical<br />
FPGA advantages of flexibility and<br />
quick time-to-market <strong>in</strong> low-power and small<br />
footpr<strong>in</strong>t profiles.<br />
News ID 1552<br />
September 2009 34<br />
■ Rutronik and FCI sign pan-<strong>Europe</strong>an<br />
franchise agreement<br />
Rutronik Elektronische Bauelemente and FCI<br />
are extend<strong>in</strong>g their partnership to the whole of<br />
<strong>Europe</strong>. The two <strong>com</strong>panies have been work<strong>in</strong>g<br />
together for more than ten years. Up until now,<br />
the distribution cooperation covered Northern<br />
and Eastern <strong>Europe</strong> as well as France, Italy and<br />
Belgium.<br />
News ID 412<br />
■ NI: open environment for real-time<br />
test system development<br />
National Instruments announces NI VeriStand<br />
2009, an open, configuration-based software<br />
environment for creat<strong>in</strong>g real-time test<strong>in</strong>g<br />
applications such as hardware-<strong>in</strong>-the-loop and<br />
controlled environmental tests. All of the <strong>com</strong>mon<br />
functionalities of a real-time test system<br />
are implemented and optimized <strong>in</strong>side NI<br />
VeriStand <strong>in</strong> a ready-to-use format, mak<strong>in</strong>g it<br />
possible for real-time test system developers to<br />
<strong>com</strong>plete their test application development<br />
more efficiently.<br />
News ID 415<br />
■ Toshiba: low-power ARM9 MCU supports<br />
MMI functionality<br />
The latest addition to Toshiba’s family of scalable,<br />
low-power ARM-based microcontrollers<br />
allows designers to quickly and easily add<br />
man-mach<strong>in</strong>e <strong>in</strong>terface functionality to their<br />
embedded designs. The TMPA912CMAXBG is<br />
based on the 32-bit ARM926EJ-S core and is<br />
ideal for embedded systems that require <strong>in</strong>tegrated<br />
display control and graphic process<strong>in</strong>g<br />
capabilities but do not need all of the performance,<br />
memory and functionality offered by<br />
previous models <strong>in</strong> the Toshiba ARM9 family.<br />
News ID 1475<br />
■ Altera: low-power FPGA family with<br />
security features<br />
Altera announces a new low-power FPGA<br />
family with security features. The new Altera<br />
Cyclone III LS FPGAs offer the highest logic,<br />
memory, and DSP density per board area.<br />
These devices are the lowest power FPGAs at<br />
less than 0.25W of static power for 200K logic<br />
elements. The Cyclone III LS FPGAs, which are<br />
shipp<strong>in</strong>g now, target power and board-spacesensitive<br />
applications <strong>in</strong> all market segments <strong>in</strong>clud<strong>in</strong>g<br />
military and <strong>in</strong>dustrial.<br />
News ID 1577<br />
■ RS: product range for surveillance<br />
system design<br />
RS Components launches a new product range<br />
for electronic design eng<strong>in</strong>eers work<strong>in</strong>g on develop<strong>in</strong>g<br />
surveillance systems. Over 400 products<br />
have been <strong>in</strong>troduced <strong>in</strong>to the RS portfolio,<br />
cover<strong>in</strong>g a wide range of technologies that are<br />
used when creat<strong>in</strong>g a new surveillance system.<br />
News ID 1612
■ W<strong>in</strong>d River enables multilevel secure<br />
systems<br />
W<strong>in</strong>d River has <strong>in</strong>troduced the VxWorks MILS<br />
Platform 2.0. The platform <strong>in</strong>cludes a VxWorks<br />
runtime environment, allow<strong>in</strong>g W<strong>in</strong>d River<br />
customers to leverage their <strong>in</strong>-house VxWorks<br />
experts as well as legacy VxWorks application<br />
code with<strong>in</strong> new multilevel secure systems, and<br />
a high-assurance runtime environment for development<br />
of guards, downgraders, and other<br />
<strong>com</strong>ponents requir<strong>in</strong>g the highest security.<br />
News ID 1503<br />
■ Micro Digital: smxUSB 2.0 stacks for<br />
synopsys USB controllers<br />
Micro Digital has announced the port of Micro<br />
Digital’s smxUSB 2.0 stacks to the Synopsys DesignWare<br />
USB 2.0 OTG host and device controllers.<br />
This makes available to Synopsys’customers<br />
the full arsenal of Micro Digital USB<br />
products, which <strong>in</strong>clude, on the device side:<br />
audio, <strong>com</strong>posite, Ethernet over USB, mass<br />
storage, mouse, serial, and multiport serial; on<br />
the host side: audio, CDC ACM, HID, Hub,<br />
mass storage, pr<strong>in</strong>ter, RFID, serial, USB to Ethernet,<br />
USB to serial, and WiFi with WEP and<br />
WPA. These products <strong>in</strong>terface with Micro Digital<br />
file system and network<strong>in</strong>g products.<br />
News ID 1593<br />
■ CMX: RTOS and file systems for<br />
SAM3U Cortex-M3 processors<br />
CMX Systems announces the availability of its’<br />
CMX-RTX and CMX-TINY+ RTOSes and<br />
CMX-FFS file systems for Atmel’s SAM3U<br />
Cortex-M3 series processors. CMX-RTX is a<br />
truly preemptive, multi-task<strong>in</strong>g RTOS support<strong>in</strong>g<br />
a wide variety of 8-, 16-, 32-bit micro<strong>com</strong>puters,<br />
microprocessors, and DSP's. CMX-<br />
RTX offers the smallest footpr<strong>in</strong>t, the fastest<br />
context switch<strong>in</strong>g times, and the lowest <strong>in</strong>terrupt<br />
latency times available on the market<br />
today.<br />
News ID 388<br />
■ SEGGER tools fully support STM32<br />
Connectivity l<strong>in</strong>e<br />
SEGGER Microcontroller has released middleware<br />
and debugg<strong>in</strong>g products for the STM32<br />
Connectivity L<strong>in</strong>e of ARM Cortex-M3 based<br />
microcontrollers from ST Microelectronics.<br />
SEGGER’s <strong>com</strong>plete middleware set <strong>in</strong>cludes<br />
embOS RTOS, embOS/IP TCP/IP stack,<br />
emW<strong>in</strong> GUI, emFile and emUSB. Debugg<strong>in</strong>g<br />
solutions <strong>in</strong>clude the J-L<strong>in</strong>k emulator and the<br />
brand new J-Trace for Cortex’M3, which enables<br />
<strong>in</strong>struction trac<strong>in</strong>g via ARM's embedded<br />
trace macrocell.<br />
News ID 1972<br />
Nuremberg<br />
SPS/IPC/DRIVES/<br />
Electric<br />
Automation<br />
PRODUCT NEWS<br />
■ Atmel: evaluation kit for Cortex M3-based<br />
MCUs<br />
Atmel announces the availability of the SAM3U-<br />
EK Evaluation Kit for rapid application development<br />
on ARM Cortex -M3 based Flash microcontrollers<br />
with high-speed 480 Mbps USB + Phy.<br />
In addition to a plug-and-play socket for the highspeed<br />
USB device it features a high speed<br />
SDIO/SDCard/MMC slot, two UART connectors,<br />
a ZigBee radio header, two analog <strong>in</strong>puts, audio<br />
<strong>in</strong>- and outputs and a JTAG-ICE debug port.<br />
News ID 1665<br />
■ ADLINK: CoreModule 730 embedded<br />
processor based Atom Z510 and Z530<br />
ADLINK has announced the new CoreModule<br />
730 embedded processor, based on the ultra low<br />
power Intel Atom Z510 and Z530 processors at<br />
1.1 and 1.6 GHz, respectively, which sets a new<br />
efficiency standard for t<strong>in</strong>y rugged <strong>com</strong>puters<br />
by us<strong>in</strong>g the new SUMIT expansion <strong>in</strong>terface.<br />
It re<strong>in</strong>vents stackable and mezzan<strong>in</strong>e architectures<br />
by pack<strong>in</strong>g an enormous amount of data<br />
bandwidth and easy connectivity ‘ <strong>in</strong>clud<strong>in</strong>g<br />
multiple PCI Express lanes, USB 2.0 <strong>in</strong>terfaces,<br />
LPC bus, I2C bus, and SPI bus ‘ <strong>in</strong>to a fraction<br />
of the space previously occupied by only the 33<br />
MHz parallel PCI-104 bus.<br />
News ID 1891<br />
Systems and Components<br />
Exhibition & Conference<br />
24 – 26 Nov. 2009<br />
Experience electric automation at its best!<br />
Come and see it all!<br />
<strong>Control</strong> Technology<br />
IPCs<br />
Drive Systems and Components<br />
Human-Mach<strong>in</strong>e-Interface Devices<br />
Industrial Communication<br />
Industrial Software<br />
Interface Technology<br />
Electromechanical Components and Peripheral Equipment<br />
Sensor Technology<br />
www.mesago.<strong>com</strong>/sps<br />
Mesago Messemanagement GmbH, Postfach 10 32 61, 70028 Stuttgart, Germany, sps@mesago.<strong>com</strong>, phone +49 711 61946-828
PRODUCT NEWS<br />
■ HCC supports Micron’s 1Gb serial<br />
NAND Flash<br />
HCC-<strong>Embedded</strong> announces that the entire<br />
HCC product l<strong>in</strong>e now supports and <strong>in</strong>teroperates<br />
with Micron Technology’s 1-gigabitbased<br />
serial NAND Flash.The Micron device<br />
used <strong>in</strong> HCC’s port<strong>in</strong>g and test<strong>in</strong>g work is a<br />
1Gb-based chip provid<strong>in</strong>g embedded applications<br />
with the flexibility to easily upgrade their<br />
storage capacity.<br />
News ID 1642<br />
■ MSC presents MachXO control<br />
development kit<br />
MSC announced a new development kit from<br />
Lattice, referred to as the MachXO <strong>Control</strong> Development<br />
Kit and 6 new reference designs that<br />
will provide a foundation platform for system<br />
control demos scheduled to be released dur<strong>in</strong>g<br />
the rema<strong>in</strong>der of this year. The kit features the<br />
MachXO LCMXO2280 device, the Power Manager<br />
II ispPAC-POWR1014A device, 2Mbit<br />
SPI Flash memory, 1 Mbit SRAM, <strong>in</strong>terface to<br />
a16x2LCDpanel,SDandCompactFlash<br />
memory sockets, fan circuit, current and voltage<br />
sensor circuits, USB connector, several<br />
LEDs and switches.<br />
News ID 1643<br />
■ SMH: signal multiplexer for device<br />
<strong>in</strong>-system programm<strong>in</strong>g<br />
SMH Technologies unveils a new signal multiplexer<br />
for device <strong>in</strong>-system programm<strong>in</strong>g (MicroPlexer).<br />
Microplexer allows the ISP connection<br />
<strong>com</strong><strong>in</strong>g from the programmer/tester to<br />
be switched to one of the available output channels.<br />
In this way, a s<strong>in</strong>gle programmer/tester can<br />
easily handle multiple device programm<strong>in</strong>g,<br />
whether on a s<strong>in</strong>gle board or distributed across<br />
multiple boards <strong>in</strong> a panel assembly.<br />
News ID 1513<br />
■ Vector simplifies optimization of ECU<br />
parameters<br />
Vector has released CANape 8.0 ‘ the latest version<br />
of its development software for ECU calibration.<br />
It accelerates optimal calibrat<strong>in</strong>g of<br />
ECUs <strong>in</strong> the vehicle by extended measurement<br />
data acquisition, optimized calibration data<br />
management and new data m<strong>in</strong><strong>in</strong>g functions<br />
for automated data evaluation. The new<br />
‘Simul<strong>in</strong>k XCP Server’ option will benefit both<br />
functional and software developers with convenient<br />
parameter sett<strong>in</strong>g as well as quick access<br />
to measurement variables of the Simul<strong>in</strong>k<br />
model directly <strong>in</strong> CANape.<br />
News ID 306<br />
■ SMSC: power management solution for<br />
MOST network devices<br />
SMSC announces the MPM85000, a low-cost,<br />
s<strong>in</strong>gle-chip solution for power management of<br />
MOST devices. See<strong>in</strong>g the need to elim<strong>in</strong>ate<br />
several discrete electronic <strong>com</strong>ponents, SMSC's<br />
MPM85000 <strong>com</strong>b<strong>in</strong>es all necessary peripheral<br />
functions to implement a MOST network <strong>in</strong>terface<br />
such as diagnostics, status monitor<strong>in</strong>g<br />
and power supply.<br />
News ID 1969<br />
■ iC-Haus: 8-channel fail-safe FET<br />
driver with AEC Q100 qualification<br />
iC-MFL from iC-Haus is a monolithically <strong>in</strong>tegrated,<br />
8-channel level shifter to drive Logic<br />
FETs. The <strong>in</strong>ternal circuit blocks have been designed<br />
<strong>in</strong> such a way that with s<strong>in</strong>gle errors,<br />
such as open p<strong>in</strong>s or the short-circuit<strong>in</strong>g of two<br />
outputs, the iC-MFL output stages switch to a<br />
predef<strong>in</strong>ed, safe state. Externally connected<br />
FETsthereforeshutdownsafely<strong>in</strong>theeventof<br />
a s<strong>in</strong>gle error.<br />
News ID 385<br />
■ Enea launches Android <strong>com</strong>petence center<br />
Enea is establish<strong>in</strong>g a <strong>com</strong>petence center based<br />
<strong>in</strong> Lund, Sweden which will offer professional<br />
software development services, as well as a variety<br />
of tra<strong>in</strong><strong>in</strong>g programs for developers of<br />
mobile phones, netbooks and mobile <strong>in</strong>ternet<br />
devices who are consider<strong>in</strong>g us<strong>in</strong>g the emerg<strong>in</strong>g<br />
open source platform or are actively develop<strong>in</strong>g<br />
devices.<br />
News ID 401<br />
■ Inf<strong>in</strong>eon: s<strong>in</strong>gle-chip WLAN ICs for<br />
home gateways<br />
Inf<strong>in</strong>eon has <strong>in</strong>troduced a new family of s<strong>in</strong>glechip<br />
WLAN <strong>in</strong>tegrated circuits. The new XWAY<br />
WAVE100 ICs provide a solution for wireless<br />
network access po<strong>in</strong>ts that are <strong>com</strong>pliant to the<br />
802.11n draft standard for data rates up to<br />
150Mbit/s as well as the 802.11 b/g standard.<br />
The s<strong>in</strong>gle-chip XWAY WAVE100 family <strong>in</strong>tegrates<br />
the WLAN Baseband, Media Access<br />
<strong>Control</strong>ler, RF, Low Noise Amplifier and Power<br />
Amplifier functionalities. The XWAY WAVE100<br />
s<strong>in</strong>gle-chips are available with either SDIO or<br />
PCI <strong>in</strong>terface.<br />
News ID 140<br />
■ TI: high-voltage bipolar DACs for<br />
high-precision test equipment<br />
Texas Instruments <strong>in</strong>troduces a four-channel,<br />
high-voltage, bipolar digital-to-analog converter.<br />
Developed on TI’s HPA07 analog CMOS<br />
process technology, the 16-bit DAC8734 is<br />
part of a new family of high-performance,<br />
bipolar DACs, <strong>in</strong>clud<strong>in</strong>g p<strong>in</strong>-<strong>com</strong>patible 12and<br />
14-bit family members featur<strong>in</strong>g up to six<br />
times lower drift than <strong>com</strong>pet<strong>in</strong>g devices along<br />
with the widest operat<strong>in</strong>g temperature range<br />
and the highest <strong>in</strong>itial accuracy.<br />
News ID 392<br />
■ Microchip: analogue resistive touch-screen<br />
controllers<br />
Microchip announces the mTouch AR1000<br />
resistive touch-screen controllers. By provid<strong>in</strong>g<br />
September 2009 36<br />
built-<strong>in</strong> decod<strong>in</strong>g and advanced filter<strong>in</strong>g, as well<br />
as controller-driven calibration, the AR1000<br />
controllers lower costs and reduce time to<br />
market for any embedded resistive-touch design.<br />
The AR1000 provides proprietary touchscreen<br />
decod<strong>in</strong>g algorithms that enable applications<br />
to receive fully processed, reliable touch<br />
coord<strong>in</strong>ates.<br />
News ID 1938<br />
■ Avnet Memec: 16-bit, <strong>in</strong>dustrial DAC<br />
with high-voltage output circuits<br />
Avnet Memec <strong>in</strong>troduces the new MAX5661 of<br />
MaximIntegratedProducts.Thedeviceisa16bit,<br />
<strong>in</strong>dustrial DAC with two precision, highvoltage<br />
output circuits <strong>in</strong>tegrat<strong>in</strong>g a voltageoutput<br />
amplifier, current-output amplifier,<br />
and pass transistors on the same silicon. The<br />
dual-range voltage-output amplifier provides a<br />
voltage proportional to the DAC value and provides<br />
either a 0 to 10V or -10V to +10V output.<br />
News ID 323<br />
■ NatSemi: dual 16-bit, 160-MSPS pipel<strong>in</strong>e<br />
A/D converter<br />
National Semiconductor <strong>in</strong>troduces a dualchannel<br />
16-bit, 160 mega-samples per second<br />
pipel<strong>in</strong>e ADC. With two high-speed channels,<br />
the ADC16DV160 offers small footpr<strong>in</strong>t of 10<br />
x 10 mm and is targeted at multi-carrier,<br />
multi-standard GSM/EDGE, WCDMA, LTE<br />
and WiMAX wireless basestations. The<br />
ADC16DV160 consumes less than half the<br />
power per ADC channel (650 mW) <strong>com</strong>pared<br />
to <strong>com</strong>pet<strong>in</strong>g s<strong>in</strong>gle-channel 16-bit 160-MSPS<br />
pipel<strong>in</strong>e ADCs, while offer<strong>in</strong>g a large <strong>in</strong>putbandwidth<br />
(1.4 GHz).<br />
News ID 309<br />
■ CMX: extended support for RENESAS<br />
SH-2A family<br />
CMX Systems announces the availability of the<br />
CMX-RTX, CMX-MicroNet and CMX-FFS<br />
file systems for the Renesas SH-2A processor<br />
family. SH-2A support is <strong>in</strong> addition to current<br />
CMX product availability for the SH-1, SH-2<br />
and SH-3 processor families. CMX software<br />
supports SH-2A derivatives with and those<br />
without float<strong>in</strong>g po<strong>in</strong>t units.<br />
News ID 1478<br />
■ Lauterbach: TRACE32 PowerProbe for<br />
the NEC’s 78K0R/Kx3<br />
Lauterbach has launched a new high performance<br />
debug probe for NEC Electronics 16-bit<br />
microcontroller family 78K0R/Kx3. Lauterbach’s<br />
TRACE32 PowerDebug for 78K0R provides<br />
an ultra-high-speed <strong>in</strong>terface accelerat<strong>in</strong>g<br />
the entire debug process <strong>in</strong>clud<strong>in</strong>g code download,<br />
flash programm<strong>in</strong>g and source code debugg<strong>in</strong>g.<br />
The tools can be connected to either<br />
W<strong>in</strong>dows or L<strong>in</strong>ux hosts via USB 2.0 or Ethernet<br />
10/100/1000.<br />
News ID 429
■ iSYSTEM: version 2009 of w<strong>in</strong>IDEA IDE<br />
and debugger<br />
iSYSTEM has released its 2009 version of their<br />
<strong>in</strong>tegrated development environment called<br />
w<strong>in</strong>IDEA. The new release <strong>in</strong>tegrates a lot of<br />
new hardware and software related features<br />
such as support for new microcontroller families<br />
and their newest derivates, new hardware<br />
and software manuals. Last but not leastw<strong>in</strong>IDEA<br />
2009 <strong>in</strong>cludes iSYSTEM’s Software<br />
Development Kit with support for script languages<br />
such as Phython, TCL, Perl, Automation<br />
Server, LabVIEW, and more for a seemless <strong>in</strong>tegration<br />
of iSYSTEM tools <strong>in</strong> the software development<br />
and test process.<br />
News ID 1500<br />
■ Digi-Key and IAR announce global<br />
distribution agreement<br />
Digi-Key and IAR Systems have entered <strong>in</strong>to an<br />
agreement for the distribution of IAR Systems<br />
development tools for embedded systems. IAR<br />
Systems products stocked by Digi-Key <strong>in</strong>clude:<br />
IAR <strong>Embedded</strong> Workbench ‘ a set of<br />
highly sophisticated and easy-to-use development<br />
tools for embedded applications. It <strong>in</strong>tegrates<br />
the IAR C/C++ Compiler, assembler,<br />
l<strong>in</strong>ker, librarian, text editor, project manager,<br />
and C-SPY Debugger <strong>in</strong>to an <strong>in</strong>tegrated development<br />
environment.<br />
News ID 1489<br />
■ Micro Digital: smxUSB 2.0 for<br />
Synopsys USB controllers<br />
Micro Digital announces the port of Micro Digital's<br />
smxUSB 2.0 stacks to the Synopsys DesignWare<br />
USB 2.0 OTG host and device controllers.<br />
This makes available to Synopsys'customers<br />
the full arsenal of Micro Digital USB<br />
products, which <strong>in</strong>clude, on the device side:<br />
audio, <strong>com</strong>posite, Ethernet over USB, mass storage,<br />
mouse, serial, and multiport serial; on the<br />
host side: audio, CDC ACM, HID, Hub, mass<br />
storage, pr<strong>in</strong>ter, RFID, serial, USB to Ethernet,<br />
USB to serial, and WiFi with WEP and WPA.<br />
These products <strong>in</strong>terface with Micro Digital file<br />
system, network<strong>in</strong>g products, and RTOS.<br />
News ID 1563<br />
■ Green Hills enhances Platform for<br />
Industrial Safety<br />
Green Hills has announced major enhancement<br />
to its Platform for Industrial Safety, add<strong>in</strong>g support<br />
for the Green Hills Secure Virtualization Architecture<br />
and expand<strong>in</strong>g the exist<strong>in</strong>g network<strong>in</strong>g,<br />
file system and target hardware options. The<br />
certified INTEGRITY OS technology forms the<br />
core of the Green Hills Platform for Industrial<br />
Safety, a <strong>com</strong>prehensive solution that also <strong>in</strong>cludes<br />
tools, secure guest OS virtualization,<br />
services, and middleware aimed at reliabilitycritical<br />
<strong>in</strong>dustrial control, transportation, railway,<br />
nuclear control and automation systems.<br />
News ID 243<br />
■ HCC: SD card validation test<strong>in</strong>g supports<br />
SafeFAT<br />
SafeFAT, HCC’s failsafe FAT12/16/32 file system,<br />
is now supported by HCC-<strong>Embedded</strong>’s SD card<br />
validation program. Under this program, HCC<br />
ensures that any card that passes the validation<br />
tests is suitable for use with the SafeFAT file system.<br />
SD cards (<strong>in</strong>clud<strong>in</strong>g MMC, SDv2 and<br />
SDHC cards) are hugely successful storage devices;<br />
they are available everywhere.<br />
News ID 428<br />
■ Xil<strong>in</strong>x: PCIe FPGA block achieves<br />
PCI-SIG 1-8 lane <strong>com</strong>pliance<br />
Xil<strong>in</strong>x announces that its newest generation<br />
Virtex-6 FPGA family is <strong>com</strong>pliant with the<br />
PCI Express 2.0 specification, deliver<strong>in</strong>g up to<br />
50 percent lower power than previous generations.<br />
The second-generation PCIe block <strong>in</strong>tegrated<br />
<strong>in</strong> Xil<strong>in</strong>x Virtex-6 FPGAs has passed<br />
PCI-SIG PCI Express version 2.0 <strong>com</strong>pliance<br />
and <strong>in</strong>teroperability test<strong>in</strong>g for 1 to 8-lane configurations.<br />
News ID 1926<br />
■ The MathWorks: tools qualified accord<strong>in</strong>g<br />
to ISO 26262 standard<br />
The MathWorks announces that its Real-Time<br />
Workshop <strong>Embedded</strong> Coder 5.3, PolySpace<br />
Client for C/C++ 7.0.1, and PolySpace Server for<br />
C/C++ 7.0.1 products are qualified accord<strong>in</strong>g to<br />
the ISO/DIS 26262-8 standard. The TÜV SÜD<br />
qualification assessment provides evidence to<br />
automotive eng<strong>in</strong>eers us<strong>in</strong>g Model-Based Design<br />
with def<strong>in</strong>ed verification and validation<br />
measures that the tools are suitable for develop<strong>in</strong>g<br />
safety-related software for ISO 26262.<br />
News ID 427<br />
■ Actel: radiation-tolerant FPGAs for<br />
space-flight systems<br />
Actel announces the availability of RTAX-DSP<br />
prototype FPGAs, enabl<strong>in</strong>g hardware demonstration<br />
and tim<strong>in</strong>g validation of designs targeted<br />
to Actel’s RTAX-DSP space-flight FPGAs.<br />
The RTAX-DSP prototype devices have the<br />
same p<strong>in</strong> assignment, mechanical footpr<strong>in</strong>t and<br />
identical tim<strong>in</strong>g properties across the full military<br />
temperature range as their space-qualified<br />
counterparts. RTAX-DSP space-flight FPGAs<br />
add embedded radiation-tolerant multiplyaccumulate<br />
blocks to the tested and proven <strong>in</strong>dustry-standard<br />
RTAX-S product family.<br />
News ID 368<br />
■ NI: new version of DIAdem <strong>in</strong>cludes<br />
advanced data visualization<br />
National Instruments announces DIAdem 11.1,<br />
a new version of the <strong>in</strong>teractive software for<br />
manag<strong>in</strong>g, analyz<strong>in</strong>g, visualiz<strong>in</strong>g and report<strong>in</strong>g<br />
test data that <strong>in</strong>cludes new features and filter<strong>in</strong>g<br />
capabilities for advanced development and<br />
automated analysis.<br />
News ID 1631<br />
Editors<br />
Jürgen Hübner<br />
phone +49(0)8092-2477413<br />
fax +49(0)8092-2477429<br />
jh@iccmedia.<strong>com</strong><br />
Wolfgang Patelay<br />
wp@iccmedia.<strong>com</strong><br />
PRODUCT NEWS<br />
Tony Devereux<br />
devrex@teyboyz.freeserve.co.uk<br />
For Reader Inquiries and Address Changes<br />
please contact:<br />
<strong>in</strong>fo@iccmedia.<strong>com</strong><br />
Sales & Market<strong>in</strong>g Director<br />
Manfred Blumoser<br />
phone +49(0)8092-2477411<br />
fax +49(0)8092-2477429<br />
mb@iccmedia.<strong>com</strong><br />
Claudia Melle<strong>in</strong><br />
cm@iccmedia.<strong>com</strong><br />
Christiane Lockner<br />
cl@iccmedia.<strong>com</strong><br />
Sales Office - UK and USA, Benelux,<br />
Scand<strong>in</strong>avia<br />
Blue Sky Communications<br />
Malcolm Cameron<br />
Kent Innovation Centre<br />
Thanet Reach Bus<strong>in</strong>ess Park<br />
Millennium Way<br />
Broadstairs Kent CT10 2QQ UK<br />
phone +44 (0)1843 609357<br />
fax +44 (0)1843 609358<br />
mc@blue-sky-<strong>com</strong>munications.<strong>com</strong><br />
Sales Office - Asia<br />
Jean Cheng, jean@i-media.<strong>com</strong>.tw<br />
Vivian Hung, vivian@i-media.<strong>com</strong>.tw<br />
Innovative Media Information & Services<br />
7F-3, No. 26, Sec. 2, M<strong>in</strong>g-Quan East Rd.<br />
Taipei 104 Taiwan<br />
phone +886 2 2563 1186<br />
Head Office<br />
ICC Media GmbH<br />
Rauwagnerstr. 5<br />
85560 Ebersberg / Germany<br />
Editorial Office UK<br />
36a Blackacre Road<br />
Theydon Bois<br />
Essex, CM16 7LU<br />
Copyright© All rights reserved.<br />
No part of this publication may be reproduced or transmitted<br />
<strong>in</strong> any form or by any means without the prior express written<br />
permission of ICC Media.<br />
Although we make every effort to present up-to-date, accurate<br />
<strong>in</strong>formation, boards&solutions will not be responsible for any<br />
errors or omissions or for any results obta<strong>in</strong>ed from the use of<br />
such <strong>in</strong>formation. The magaz<strong>in</strong>e will not be liable for any loss<br />
caused by the reliance on <strong>in</strong>formation obta<strong>in</strong>ed on this site.<br />
Furthermore, ece does not warrant the accuracy or<br />
<strong>com</strong>pleteness of the <strong>in</strong>formation, text, graphics <strong>in</strong> this magaz<strong>in</strong>e.<br />
The op<strong>in</strong>ions expressed <strong>in</strong> the articles are those of the<br />
authors and not necessarily the op<strong>in</strong>ions of the publisher.<br />
37 September 2009
PRODUCT NEWS<br />
■ HCC: embedded USB stacks for<br />
STM32 MCUs<br />
HCC-<strong>Embedded</strong> releases <strong>com</strong>plete embedded<br />
USB Device, Host and OTG stacks for the<br />
STMicroelectronics STM32 range of Cortex-<br />
M3 microcontrollers. The STM32 family of 32bit<br />
microcontrollers is based on the advanced<br />
ARM Cortex-M3 core, which was developed<br />
specifically for embedded applications. The<br />
STM32 family uses the Cortex-M3 architectural<br />
enhancements, <strong>in</strong>clud<strong>in</strong>g the Thumb-2 <strong>in</strong>struction<br />
set.<br />
News ID 131<br />
■ Lauterbach: TRACE32 supports<br />
Fujitsu’s FAMOS RTOS<br />
Lauterbach announces, that its TRACE32 debuggers<br />
support the Real-Time Operat<strong>in</strong>g System<br />
FAMOS of Fujitsu Microelectronics.<br />
FAMOS was developed specifically for the<br />
ARM11 based HDTV decoder chipsets of the<br />
series MB86H6x for set top boxes. The FAMOS<br />
awareness is <strong>in</strong>tegrated immediately <strong>in</strong> all new<br />
TRACE32 software versions for the ARM architecture.<br />
News ID 300<br />
■ SEGGER: middleware and debugg<strong>in</strong>g<br />
support for AT91SAM3U-EK<br />
SEGGER has released middleware and debugg<strong>in</strong>g<br />
products for the AT91SAM3U-EK, Atmel’s<br />
evaluation kit based on the ARM Cortex- M3<br />
based microcontroller AT91SAM3U. SEGGER’s<br />
<strong>com</strong>plete middleware set <strong>in</strong>cludes embOS,<br />
embOS/IP, emW<strong>in</strong>, emFile, emUSB device and<br />
emUSB host. Debugg<strong>in</strong>g solutions <strong>in</strong>clude the<br />
J-L<strong>in</strong>k emulator and the brand new JTrace for<br />
Cortex’M3, which enables <strong>in</strong>struction trac<strong>in</strong>g<br />
via ARM's embedded trace macrocell.<br />
News ID 1657<br />
■ STM: 1.5V op-amps with power-sav<strong>in</strong>g<br />
features<br />
STMicroelectronics has unveiled three new<br />
families of precision op-amps target<strong>in</strong>g lowpower<br />
and portable products, with powersav<strong>in</strong>g<br />
features that <strong>in</strong>clude high-speed performance<br />
at low supply current, operation<br />
from a 1.5V supply, and device-shutdown capability.<br />
Offer<strong>in</strong>g low power consumption,<br />
high bandwidth and good accuracy, the TSV6xx<br />
families serve applications such as portable<br />
medical equipment, <strong>in</strong>strumentation, signalcondition<strong>in</strong>g<br />
systems, sensor <strong>in</strong>terfaces, and active<br />
filter<strong>in</strong>g.<br />
News ID 1444<br />
■ Hitex: programm<strong>in</strong>g solution for<br />
XC2000-based designs<br />
Hitex has launched SpeedFlash-XC, a programm<strong>in</strong>g<br />
solution address<strong>in</strong>g users who will<br />
start the production of their Inf<strong>in</strong>eon 16-bit<br />
microcontroller-based design. SpeedFlash-XC<br />
can be <strong>in</strong>tegrated easily <strong>in</strong> the production environment.<br />
The system allows to connect up to<br />
8 SpeedFlash-XC probes to a needle bed production<br />
equipment via JTAG or DAP.<br />
News ID 1670<br />
■ Green Hills enhances Platform for<br />
Medical Devices<br />
Green Hills announced major enhancements to<br />
its Platform for Medical Devices by add<strong>in</strong>g support<br />
for Secure Guest OS virtualization and expand<strong>in</strong>g<br />
the exist<strong>in</strong>g network<strong>in</strong>g, file system<br />
and target hardware options. The Platform for<br />
Medical Devices significantly reduces the cost<br />
and risk of Class II and Class III medical product<br />
approval while provid<strong>in</strong>g faster time-tomarket<br />
for customers.<br />
News ID 1889<br />
QNX: enhanced support for OMAP35x processors<br />
from TI<br />
QNX Software Systems announces software and<br />
tools support for automotive, <strong>in</strong>dustrial automation,<br />
and consumer device customers creat<strong>in</strong>g<br />
products based on TI OMAP35x processors.<br />
Designed for products that require rich HMI,<br />
multimedia, and audio capabilities, the support<br />
<strong>in</strong>cludes the QNX Neutr<strong>in</strong>o RTOS, the QNX Aviage<br />
Multimedia Suite, the QNX Aviage HMI Suite,<br />
the QNX Aviage Acoustic Process<strong>in</strong>g Suite, and<br />
the QNX CAR reference designs for automotive<br />
<strong>in</strong>fota<strong>in</strong>ment systems and digital clusters.<br />
News ID 1621<br />
■ Microsoft: W<strong>in</strong>dows <strong>Embedded</strong> technology<br />
preview<br />
Microsoft has released the W<strong>in</strong>dows 7-based<br />
W<strong>in</strong>dows <strong>Embedded</strong> Standard 2011 Community<br />
Technology Preview to orig<strong>in</strong>al equipment<br />
manufacturers and developers of specialized devices<br />
worldwide through its immediate public<br />
availability. W<strong>in</strong>dows <strong>Embedded</strong> Standard 2011<br />
delivers the power, familiarity and reliability of<br />
the W<strong>in</strong>dows 7 operat<strong>in</strong>g system <strong>in</strong> a highly<br />
customizable and <strong>com</strong>ponentized form, enabl<strong>in</strong>g<br />
OEMs <strong>in</strong> <strong>in</strong>dustrial automation, enterta<strong>in</strong>ment,<br />
consumer electronics and other<br />
markets to focus on their core <strong>com</strong>petencies<br />
and create product differentiation.<br />
News ID 398<br />
FREE Subscription to boards & solutions magaz<strong>in</strong>e<br />
September 2009 38<br />
Advertisers Index<br />
COMPANY PAGE<br />
AAEON 13<br />
Digi-Key 2<br />
Eurotech Ltd. 31<br />
Express Logic 40<br />
Green Hills Software 5<br />
HCC-<strong>Embedded</strong> 27<br />
Hitex 34<br />
LynuxWorks 9<br />
Mentor Graphics 11<br />
Mesago 35<br />
MSC 3<br />
PEAK-System-Technik 33<br />
Rutronik 19<br />
Toshiba 23<br />
Ensure gett<strong>in</strong>g your personal copy of B&S magaz<strong>in</strong>e free of charge by <strong>com</strong>plett<strong>in</strong>g the onl<strong>in</strong>e form at:<br />
• www.embedded-control-europe.<strong>com</strong>/bs_magaz<strong>in</strong>e
presents<br />
Small form factor <strong>com</strong>put<strong>in</strong>g has evolved from low perform<strong>in</strong>g embedded platforms to robust, standardized<br />
and scalable solutions for a wide spectrum of <strong>in</strong>dustries. And the Intel Atom processors are push<strong>in</strong>g Small<br />
Form Factor Boards even further <strong>in</strong>to new application areas.<br />
Scope of the SFF Boards Virtual Conference<br />
(The content of Virtual Conference is based on a real life conference<br />
which took place recently <strong>in</strong> Munich.)<br />
>> Latest Trends with SFF Boards<br />
>> Overview about Pros and Cons of the different form factors<br />
>> Technologies, Applications, Product & Services<br />
>> Intel Technologies for the <strong>Embedded</strong> Market<br />
Conference Programme<br />
(The Presentations and Videos are archived and therefore available<br />
at any time dur<strong>in</strong>g the whole day)<br />
Keynote<br />
>> Small Form Factor Boards: Overview and Technical Trends<br />
Technology Presentations<br />
>> Intel´s Technology and Technical Trends Outlook<br />
>> <strong>Embedded</strong> Real-Time Virtualization and Partition<strong>in</strong>g<br />
>> Computer-on-Module Overview and Trends<br />
>> S<strong>in</strong>gle Board Computers Overview and Trends<br />
>> Make or Buy<br />
Workshops & Demos<br />
>> Presentations and Demos of x86-based Modules and SBCs<br />
>> Thermal connection of ESMexpress/ESM<strong>in</strong>i to a hous<strong>in</strong>g<br />
>> CoreExpress - the next generation, COM Technology<br />
>> Optimize your Design Cycles by us<strong>in</strong>g COM Technology<br />
>> Conception of COMs and SBCs with latest Intel processors<br />
>> Demo of the Qseven Mobility Starter Kit<br />
Product Presentations<br />
>> Short presentations where boards <strong>com</strong>panies are <strong>in</strong>troduc<strong>in</strong>g<br />
their latest Small Form Factor products, services and strategies<br />
Video Interviews<br />
>> Short Video Interviews with Intel and major Boards Vendors about their<br />
strategies, technologies and product focus <strong>in</strong> the Small Form Factor arena.<br />
REGISTER NOW for FREE ATTENDANCE!<br />
October 8, 2009 – 10h00 to 17h00 CET<br />
(Central <strong>Europe</strong>an Time)<br />
www.sffbvcon.<strong>com</strong><br />
Technology Sponsor<br />
Ma<strong>in</strong> Sponsors
MAKING ONE OF THESE?<br />
...THEN YOU NEED THREADX<br />
ThreadX is Express Logic's small, fast,<br />
T H R<br />
E A<br />
D royalty-free RTOS that powers over<br />
500 million electronic devices, with<br />
millions more produced each month. That's because ThreadX is easy-to-use,<br />
mak<strong>in</strong>g your development job easier and more likely to f<strong>in</strong>ish on time or even<br />
ahead of schedule. Developers of consumer, medical, network<strong>in</strong>g, <strong>in</strong>dustrial,<br />
aerospace, and automotive electronics products rely on ThreadX for their<br />
RTOS. Call today to f<strong>in</strong>d out how ThreadX can help you br<strong>in</strong>g your next<br />
electronic product to market faster. Make it better - make it with ThreadX.<br />
For a free evaluation copy, call one of our <strong>Europe</strong>an<br />
Offices or visit www.rtos.<strong>com</strong><br />
Express<br />
Logic ( (UK) UUK)Ltd<br />
Ltd<br />
4b Empire<br />
Court Cour t<br />
Prospect<br />
Hill<br />
Redditch B97 4DA 4D DA<br />
UK<br />
Tel: Teel:<br />
+44 (0) 152 1527 27 597007<br />
Fax: +44 (0) 1527 15227<br />
597701<br />
Email: <strong>in</strong>fo@expresslogic.co.uk<br />
<strong>in</strong>fo@exprr<br />
esslogic.co.uk<br />
Express<br />
Logic GmbH G GmbH<br />
Hanover Office:<br />
Am Saegewerk 2a<br />
D-29308 DD-29308 29308 W WW<strong>in</strong>sen<br />
<strong>in</strong>se en<br />
Germany<br />
Tel: Teel:<br />
+49 5143 911-303 9<br />
Fax: +49 5143 911-305<br />
Email <strong>in</strong>fo@expresslogic.de<br />
Express<br />
Logic<br />
GGmbH<br />
mmbH<br />
Munich Office:<br />
Eichbaumstr<br />
Eichbaumstr. .80 80<br />
DD-85635 D-85635 85635 Sieger Siegertsbrunn ts sbr unn<br />
Ger Germany many<br />
Te Tel: el: +49 8102 78 784-5865 84-5865<br />
Fax: +49 8102 78 784-5866 84-5866<br />
Email: sales@exp sales@expresslogic.de<br />
resslogic.de<br />
• Small S Small<br />
footpr<strong>in</strong>t<br />
• Low LLow<br />
over overhead head<br />
• Full F Full<br />
source<br />
code<br />
• Easy-to-use<br />
E Easy-to-use<br />
• Field-proven<br />
F Field-proven<br />
• Low L cost<br />
• Royalty-free<br />
R Royalty-free<br />
Copyright © 2008, Expr Express ess Logic, , Inc.<br />
ThreadX Thr readX<br />
is a rregistered<br />
egistered<br />
trademark of Ex Express xpress<br />
Logic, Inc. All other trademarks trademar rks are<br />
the property<br />
of their respective<br />
owners.