Sign In/My Account | View Cart  
advertisement

Article:
 Binary XML, Again
Subject: Embedded Frimware XML and Binary
Date: 2003-10-02 08:28:50
From: Ken LaBar

First, I am a newbie to XML, but I am very interested in binary aspects of XML because I wirte embedded firmware that needs to be very small.


I'm looking for expert help to point me in the right direction.


My problem:
Produce self-diagnostic test results that can be uploaded and stored during volume manufaturing. (Computer Hard Drives, 15M drives a quarter). Do it all on a 16 bit processor with limited code space remaining. Push it all to an Oracle DB to track process issues and verify design changes, through a USB 1 port.


Obviously, I need to save code space in the firmware. That means limiting the number of tags.


I also need to be able to transfer and store all this data in the factory. Smaller is better.


My proposed solution:
Build a self describing XML header and put a standard C, C++ structure between some data tags. See example:



<testResults>
<header>
<testName>BiasCal</testName>
<codeRev>3.18</codeRev>
<testTime>0x8EF1</testTime>
</header>
<testData length=0x3468 crc=0x9A5F>
binary data structure goes here
</testData>
</testResults>


This allows a generic structure describing what data it contains, if not describing the data itself. When I pull the data out of the database, I can use the correct data structure based on code revision and test name, set a pointer to the memory (No parsing needed).


Even though this data is kept internal to the company, I'm trying to be a good XML citizen so more tools can be built around this data. Please share your ideas.


-Ken


Previous Message Previous Message   Next Message Next Message


Sponsored By: