<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Are software development tools affecting your choice of 8-bit vs. 32-bit processors?</title>
	<atom:link href="http://www.embeddedinsights.com/channels/2012/02/01/are-software-development-tools-affecting-your-choice-of-8-bit-vs-32-bit-processors/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.embeddedinsights.com/channels/2012/02/01/are-software-development-tools-affecting-your-choice-of-8-bit-vs-32-bit-processors/</link>
	<description>Shedding Light on the Hidden World of Embedded Systems</description>
	<lastBuildDate>Mon, 28 Jul 2014 16:18:37 -0400</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
	<item>
		<title>By: R.P. @ LI</title>
		<link>http://www.embeddedinsights.com/channels/2012/02/01/are-software-development-tools-affecting-your-choice-of-8-bit-vs-32-bit-processors/#comment-13263</link>
		<dc:creator>R.P. @ LI</dc:creator>
		<pubDate>Thu, 16 Feb 2012 19:03:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.embeddedinsights.com/channels/?p=685#comment-13263</guid>
		<description>Tool support certainly influenced my choice of PIC18 for some low-end embedded devices I designed for OVS. Mostly the fact that such tools are readily available in open-source for Linux. But my old-fogey dislike of profligacy would have prevented me from using a 32-bit core for such relatively simple devices anyway.</description>
		<content:encoded><![CDATA[<p>Tool support certainly influenced my choice of PIC18 for some low-end embedded devices I designed for OVS. Mostly the fact that such tools are readily available in open-source for Linux. But my old-fogey dislike of profligacy would have prevented me from using a 32-bit core for such relatively simple devices anyway.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: C.S. @ LI</title>
		<link>http://www.embeddedinsights.com/channels/2012/02/01/are-software-development-tools-affecting-your-choice-of-8-bit-vs-32-bit-processors/#comment-13262</link>
		<dc:creator>C.S. @ LI</dc:creator>
		<pubDate>Thu, 16 Feb 2012 19:03:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.embeddedinsights.com/channels/?p=685#comment-13262</guid>
		<description>or prolongs the inevitable... which also could be why it persists...</description>
		<content:encoded><![CDATA[<p>or prolongs the inevitable&#8230; which also could be why it persists&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: F.W. @ LI</title>
		<link>http://www.embeddedinsights.com/channels/2012/02/01/are-software-development-tools-affecting-your-choice-of-8-bit-vs-32-bit-processors/#comment-13242</link>
		<dc:creator>F.W. @ LI</dc:creator>
		<pubDate>Wed, 15 Feb 2012 23:05:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.embeddedinsights.com/channels/?p=685#comment-13242</guid>
		<description>@Russell: &quot;(is there any license-able 8 bit core other than the 8051--which is a horrid architecture for modern languages)?&quot;

That which does not kill us makes us stronger. Which is why the 8051 persists. :-)</description>
		<content:encoded><![CDATA[<p>@Russell: &#8220;(is there any license-able 8 bit core other than the 8051&#8211;which is a horrid architecture for modern languages)?&#8221;</p>
<p>That which does not kill us makes us stronger. Which is why the 8051 persists. <img src='http://www.embeddedinsights.com/channels/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: J.D. @ LI</title>
		<link>http://www.embeddedinsights.com/channels/2012/02/01/are-software-development-tools-affecting-your-choice-of-8-bit-vs-32-bit-processors/#comment-13105</link>
		<dc:creator>J.D. @ LI</dc:creator>
		<pubDate>Sat, 11 Feb 2012 16:04:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.embeddedinsights.com/channels/?p=685#comment-13105</guid>
		<description>@Rich: I don&#039;t know the extend of support for on-chip debug in mbed, but I don&#039;t miss it. Using an oscilloscope and GPIOs/analog outputs can allow you to debug very complex systems. 

Even then, you can always write classes for debug (if doing C++), or write handlers for semihosting/breakpoint exceptions (for C/C++) to enable debug. 

One interesting point is that now you can export the mbed project to gcc, uVision and several other non-cloud compilers.

- Jonny</description>
		<content:encoded><![CDATA[<p>@Rich: I don&#8217;t know the extend of support for on-chip debug in mbed, but I don&#8217;t miss it. Using an oscilloscope and GPIOs/analog outputs can allow you to debug very complex systems. </p>
<p>Even then, you can always write classes for debug (if doing C++), or write handlers for semihosting/breakpoint exceptions (for C/C++) to enable debug. </p>
<p>One interesting point is that now you can export the mbed project to gcc, uVision and several other non-cloud compilers.</p>
<p>- Jonny</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: R.W. @ LI</title>
		<link>http://www.embeddedinsights.com/channels/2012/02/01/are-software-development-tools-affecting-your-choice-of-8-bit-vs-32-bit-processors/#comment-13104</link>
		<dc:creator>R.W. @ LI</dc:creator>
		<pubDate>Sat, 11 Feb 2012 16:04:05 +0000</pubDate>
		<guid isPermaLink="false">http://www.embeddedinsights.com/channels/?p=685#comment-13104</guid>
		<description>@Jonny: I agree and really like ARM parts. Some of them are now priced very competitively to the 16 and 8 bit controllers! 

Back to Robert&#039;s original question, Architecture and tools influence what I want but on high volume, size constrained projects, cost, chip size, power and operations/manufacturing requirements often dictate what I get ;)

@Alexander:
I thought of the M0 because it&#039;s a simpler part but I like Jonny&#039;s points about the M3.
The mbed board is fun. You can do a lot with it quickly and it&#039;s very easy to set up since you don&#039;t have to install any tools and do everything from your web browser. But, you don&#039;t have a debugger and can&#039;t set breakpoints, examine registers, step through code, etc. That may have changed since I tried one last Fall.</description>
		<content:encoded><![CDATA[<p>@Jonny: I agree and really like ARM parts. Some of them are now priced very competitively to the 16 and 8 bit controllers! </p>
<p>Back to Robert&#8217;s original question, Architecture and tools influence what I want but on high volume, size constrained projects, cost, chip size, power and operations/manufacturing requirements often dictate what I get <img src='http://www.embeddedinsights.com/channels/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>@Alexander:<br />
I thought of the M0 because it&#8217;s a simpler part but I like Jonny&#8217;s points about the M3.<br />
The mbed board is fun. You can do a lot with it quickly and it&#8217;s very easy to set up since you don&#8217;t have to install any tools and do everything from your web browser. But, you don&#8217;t have a debugger and can&#8217;t set breakpoints, examine registers, step through code, etc. That may have changed since I tried one last Fall.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: J.D. @ LI</title>
		<link>http://www.embeddedinsights.com/channels/2012/02/01/are-software-development-tools-affecting-your-choice-of-8-bit-vs-32-bit-processors/#comment-12982</link>
		<dc:creator>J.D. @ LI</dc:creator>
		<pubDate>Wed, 08 Feb 2012 17:58:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.embeddedinsights.com/channels/?p=685#comment-12982</guid>
		<description>@Alexander:

I&#039;d like to add to @Rich very good suggestions on ARM Cortex-M0. I would expand and suggest a Cortex-M3 instead. This is why:

- The Cortext-M0 is actually a very architecturally constrained subset of the ARMv7-M architecture. Its cut-down instruction set is not exemplar of ARM architecture, and has several shortcomings. To use the -M0 16bit THUMB dialect to teach ARM assembly is not very productive, because it is much harder to produce any decent assembly programming on that subset, and it is not as easy to understand.
- The -M3, on the other hand, has a superb instruction set, the 32bit/16bit THUMB2, with many traits derived from the extremely powerful 32bit ARM instruction set. Actually, even the ARM7TDMI-s is a better candidate for teaching, due to the ARM ISA and a simple architecture that scales very well to the ARMv7-AR. 
- These cores (ARM7 and Cortex-M3) can be used to teach current embedded computing, using a solid base of Assembly to build on, and using ARM tools, that are among the best you can have in terms of optimizing compiler, full C99 compliance, no-constraints programming, and very wide availability, with literally dozens of manufacturers and proper kits to chose from.
- Almost any ARM-based uC is loaded with a nice pack of peripherals, and can be used for a serious embedded computing platform.
- Take a look at the mbed boards, from NXP, with a free cloud-based C/C++ compiler. The compiler is actually the ARM RealView compiler, made to run on the cloud. It is perfect for teaching purposes.

- Jonny</description>
		<content:encoded><![CDATA[<p>@Alexander:</p>
<p>I&#8217;d like to add to @Rich very good suggestions on ARM Cortex-M0. I would expand and suggest a Cortex-M3 instead. This is why:</p>
<p>- The Cortext-M0 is actually a very architecturally constrained subset of the ARMv7-M architecture. Its cut-down instruction set is not exemplar of ARM architecture, and has several shortcomings. To use the -M0 16bit THUMB dialect to teach ARM assembly is not very productive, because it is much harder to produce any decent assembly programming on that subset, and it is not as easy to understand.<br />
- The -M3, on the other hand, has a superb instruction set, the 32bit/16bit THUMB2, with many traits derived from the extremely powerful 32bit ARM instruction set. Actually, even the ARM7TDMI-s is a better candidate for teaching, due to the ARM ISA and a simple architecture that scales very well to the ARMv7-AR.<br />
- These cores (ARM7 and Cortex-M3) can be used to teach current embedded computing, using a solid base of Assembly to build on, and using ARM tools, that are among the best you can have in terms of optimizing compiler, full C99 compliance, no-constraints programming, and very wide availability, with literally dozens of manufacturers and proper kits to chose from.<br />
- Almost any ARM-based uC is loaded with a nice pack of peripherals, and can be used for a serious embedded computing platform.<br />
- Take a look at the mbed boards, from NXP, with a free cloud-based C/C++ compiler. The compiler is actually the ARM RealView compiler, made to run on the cloud. It is perfect for teaching purposes.</p>
<p>- Jonny</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: J.D. @ LI</title>
		<link>http://www.embeddedinsights.com/channels/2012/02/01/are-software-development-tools-affecting-your-choice-of-8-bit-vs-32-bit-processors/#comment-12981</link>
		<dc:creator>J.D. @ LI</dc:creator>
		<pubDate>Wed, 08 Feb 2012 17:58:09 +0000</pubDate>
		<guid isPermaLink="false">http://www.embeddedinsights.com/channels/?p=685#comment-12981</guid>
		<description>@Rich: I think you may be right. The demise of the 8bit micros is more a matter of economics than architectural traits. Despite the 10K gates (very little) needed to realize a Cortex-M0, you can do a reasonable 8bit PIC with much less.

However, from the standpoint of the embedded designer, unless you are really hard pressed in an overexploited commodity market, there is no gap whatsoever for taking an ARM as your next target....

- Jonny</description>
		<content:encoded><![CDATA[<p>@Rich: I think you may be right. The demise of the 8bit micros is more a matter of economics than architectural traits. Despite the 10K gates (very little) needed to realize a Cortex-M0, you can do a reasonable 8bit PIC with much less.</p>
<p>However, from the standpoint of the embedded designer, unless you are really hard pressed in an overexploited commodity market, there is no gap whatsoever for taking an ARM as your next target&#8230;.</p>
<p>- Jonny</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: R.W. @ LI</title>
		<link>http://www.embeddedinsights.com/channels/2012/02/01/are-software-development-tools-affecting-your-choice-of-8-bit-vs-32-bit-processors/#comment-12980</link>
		<dc:creator>R.W. @ LI</dc:creator>
		<pubDate>Wed, 08 Feb 2012 17:57:51 +0000</pubDate>
		<guid isPermaLink="false">http://www.embeddedinsights.com/channels/?p=685#comment-12980</guid>
		<description>@Alexander wrote:
&quot;...Which architecture would you pick and why? The course is for undergraduate EE/ECE program&quot;

I would consider
TI MSP430 or the ARM Cortex M0
They have a clean architecture
Small regular instruction set (easy to learn)
Support C well (the compiled C code is easy to follow along side the source)
Lots of sample code, documentation and books
Inexpensive demo boards
If you later want get into RTOSes, you can. (after all, this is the Real Time Embedded Group)</description>
		<content:encoded><![CDATA[<p>@Alexander wrote:<br />
&#8220;&#8230;Which architecture would you pick and why? The course is for undergraduate EE/ECE program&#8221;</p>
<p>I would consider<br />
TI MSP430 or the ARM Cortex M0<br />
They have a clean architecture<br />
Small regular instruction set (easy to learn)<br />
Support C well (the compiled C code is easy to follow along side the source)<br />
Lots of sample code, documentation and books<br />
Inexpensive demo boards<br />
If you later want get into RTOSes, you can. (after all, this is the Real Time Embedded Group)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: R.W. @ LI</title>
		<link>http://www.embeddedinsights.com/channels/2012/02/01/are-software-development-tools-affecting-your-choice-of-8-bit-vs-32-bit-processors/#comment-12979</link>
		<dc:creator>R.W. @ LI</dc:creator>
		<pubDate>Wed, 08 Feb 2012 17:57:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.embeddedinsights.com/channels/?p=685#comment-12979</guid>
		<description>I agree 8 bit controllers will be around for a long time. If you&#039;re doing something simple with not too many inputs and outputs it&#039;s hard to beat an 8 bit controller and the tools don&#039;t need to be that sophisticated. 

For more complex applications, the debugging support being built into some of the 32 bit controllers is a big advantage over the 8 bit parts. The CoreSight debugging architecture in some of the ARM controllers has a lot of impressive features. Debugging tools are just as important as the rest of the tools.</description>
		<content:encoded><![CDATA[<p>I agree 8 bit controllers will be around for a long time. If you&#8217;re doing something simple with not too many inputs and outputs it&#8217;s hard to beat an 8 bit controller and the tools don&#8217;t need to be that sophisticated. </p>
<p>For more complex applications, the debugging support being built into some of the 32 bit controllers is a big advantage over the 8 bit parts. The CoreSight debugging architecture in some of the ARM controllers has a lot of impressive features. Debugging tools are just as important as the rest of the tools.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: j.d. @ LI</title>
		<link>http://www.embeddedinsights.com/channels/2012/02/01/are-software-development-tools-affecting-your-choice-of-8-bit-vs-32-bit-processors/#comment-12912</link>
		<dc:creator>j.d. @ LI</dc:creator>
		<pubDate>Tue, 07 Feb 2012 00:56:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.embeddedinsights.com/channels/?p=685#comment-12912</guid>
		<description>@Robert said that «... generally, 32bit processors are much more complex to configure than 8bit processors, making configuration wizards almost a necessity for 32bit, while a non-issue for 8bit.»
That may be true for top application processors, with MMU, virtualization layers and multi-cores.
But for 32bit microcontrollers, such as ARM7 and ARM Cortex-M, the configuration of pins, peripherals and low-level options is as straightforward as any other microcontroller.
The programmers&#039;s model, linear address space, multiple pointer-capable data addressing, large internal static RAM, and powerful instructions are clearly an undeniable advantage when compared to any architecturally-constrained 8bit micro. The statement that 32bit micros are more complex simply does not hold.
So, to answer the original question: NO, the development tools are second in importance, after the processor architecture, capabilities, energy, and peripherals. A good C optimizing compiler, with an integrated IDE is basic to any uC tool set. 
In my opinion, the compiler quality, compliance to C99, integration with multi-language development, are the most important points in the toolset. A free compiler that generates 25% larger code will waste 125KB worth of code flash in a 512KB chip, and may force going to a more expensive chip, that may outrun the cost of the tool chain.

As a matter of fact, when you compare the IDEs used in embedded systems to the standard used in desktop and mobile systems, they all fall short.

- Jonny</description>
		<content:encoded><![CDATA[<p>@Robert said that «&#8230; generally, 32bit processors are much more complex to configure than 8bit processors, making configuration wizards almost a necessity for 32bit, while a non-issue for 8bit.»<br />
That may be true for top application processors, with MMU, virtualization layers and multi-cores.<br />
But for 32bit microcontrollers, such as ARM7 and ARM Cortex-M, the configuration of pins, peripherals and low-level options is as straightforward as any other microcontroller.<br />
The programmers&#8217;s model, linear address space, multiple pointer-capable data addressing, large internal static RAM, and powerful instructions are clearly an undeniable advantage when compared to any architecturally-constrained 8bit micro. The statement that 32bit micros are more complex simply does not hold.<br />
So, to answer the original question: NO, the development tools are second in importance, after the processor architecture, capabilities, energy, and peripherals. A good C optimizing compiler, with an integrated IDE is basic to any uC tool set.<br />
In my opinion, the compiler quality, compliance to C99, integration with multi-language development, are the most important points in the toolset. A free compiler that generates 25% larger code will waste 125KB worth of code flash in a 512KB chip, and may force going to a more expensive chip, that may outrun the cost of the tool chain.</p>
<p>As a matter of fact, when you compare the IDEs used in embedded systems to the standard used in desktop and mobile systems, they all fall short.</p>
<p>- Jonny</p>
]]></content:encoded>
	</item>
</channel>
</rss>
