blogs
Checking eTPU_C generated code
Submitted by Walter Banks on Wed, 2010-01-27 22:47. assembly | eTPU | eTPU_CTools in your eTPU toolchain may support you by disassembling eTPU_C-generated code. If they report instructions different than eTPU_C's listing file shows, you may be inclined to verify eTPU_C's output by hand.
eTPU machine code is very complex compared to traditional machine language. As a result, we receive support questions from people who have encountered subinstructions they didn't expect.
Parallelism
Submitted by Walter Banks on Fri, 2009-10-09 20:54. C | IEC 61131
In the comp.arch newsgroup, we've been following a heated discussion about Parallelism. It's focused on the question of designing software to run on multiple cores, either with shared memory or message passing.
We're of the opinion that the compiler can assist the developer in this task. After all, the compiler knows what is (or could be) in memory at any one moment.
printf for embedded
Submitted by Kirk Zurell on Thu, 2009-09-24 20:25. C | debuggingThere's only so much debugging information an LED or LCD display can report. What's worse, embedding debugging code in the executable can provoke misuse, while stripping it out can cause heisenbugs.
Your C compiler can help manage debugging information for you in a way that doesn't interfere with your product. Here's how:
The stack controversy
Submitted by Walter Banks on Thu, 2009-09-17 14:44. C | compiler
Just when you think an old misconception is dead...
The "stack/no stack" discussion has arisen again. We've heard renewed
claims that C programs require a hardware stack, and that a software
stack is unacceptably slow. Both ideas are patently false.
Alternative opcodes
Submitted by Walter Banks on Tue, 2009-05-05 21:05. opcodes | optimizationA support question brought up an interesting optimization topic: alternative opcodes.
We've all heard stories of using undocumented or unofficial opcodes to squeeze out a few cycles' extra performance. It's much easier, not to mention safer, to work within the published instruction set but to approach it in novel ways.
Here's an example:
Fuzzy Logic at MIT
Submitted by Kirk Zurell on Tue, 2009-04-07 14:16. fuzzy logicMIT is using Fuzzy Logic to analyze cell function.
A perfectly useful do-nothing statement
Submitted by Walter Banks on Tue, 2009-03-24 14:50. CC macros are very useful, but a little taxing for both compiler writers and programmers.
Our view on RS08
Submitted by Walter Banks on Tue, 2009-03-17 16:25. C6808 | RS08I just read Jack's editorial on Embedded.com on the RS08 processor. This is a fun little processor.
We did some work on the instruction set design on this processor, and wrote a C compiler for the RS08. This is a remarkable little processor that, in the end, outperformed many people's expectations (including mine).
Jack Ganssle on RS08
Submitted by Kirk Zurell on Mon, 2009-03-16 13:44. C6808 | RS08Jack Ganssle's latest column in embedded.com reminds us that there is still life in 8-bit architectures.
He mentions the Freescale RS08, which is supported by our C6808 Code Development System.
UPDATE: Jack cites an article on Circuit Cellar by Tom Cantrell, who also talks about RS08.
Header File Customizations
Submitted by Kirk Zurell on Wed, 2009-02-18 19:37. header files | MPCWe've started to get some requests for header file support for ICD3, Microchip's new In-Circuit Debugger. There are some differences between ICD3 and previous generations of ICD. These differences are reflected in the device header files Byte Craft Limited issues for MPC.
If you're using MPC with MPLAB and ICD3, please contact Byte Craft Limited for more information about obtaining updated header files.

eTPU_C:
C6808: