Assembly Language Experience  Project Overview


movf
sw1,1;    
btfsc STATUS, Z;

goto powerdown;




Assembly Language

experience
on many
MCUs

Bill has written assembly language routines on many
different 8, 16 and 32 bit Microcomputing Units (MCUs).

At Motorola, one of Bill's semiconductor marketing/engineering projects was to
personally benchmark all the major MCUs (e.g. Intel, Motorola, National, TI, NEC, etc.).  

Those benchmarks focused primarily on execution speed and code efficiency.

In addition, Bill has created two whole products using Intel and Microchip MCUs.


Significance
of this Accomplishment

 
  Significance

• OCR products shipped to a major customer.  (Whole product was done in assembly, coding by Bill).

• The benchmarking experience gave Bill valuable insight into a diverse set of strategies needed
to optimize performance on the various architectures. 


By combining Bill's MCU hardware design experience with the MCU assembly programming,
Bill has created products with ultra-low-power standby modes (< 1uA) , fast reliable power-on-resets (Oscillator start-up), and precision real-time execution with high efficiency I/Os.  


Skills Transferable to Your Projects:
 
  Juggler

Leadership / Management
• Bill's "whole product" experience allows him to lead multiple teams, and bring projects to
successful completion, on time, with the right features and trade-offs.
  
Theory / R&D
• Since Bill has actually designed arithmetic logic units (ALUs), data paths,
direct memory Access (DMAs), he quickly masters any new MCU.  In addition, Bill has studied
 how to attain "high precision results
(floating point) from low precision (fixed point) MCU
 resources.  
 
Software
• Bill has assembly language experience interfacing Input Devices (e.g. keypads, joysticks, IR/light sensors, 3-D ultrasound sensors, capacitive-touch sensors, inductive couplers, RF 
antennae, electrostatic field sensors, hall effect sensors, thermistors, accelerometers, EEG, chemical sensors (e.g. ozone),  RS232, Parallel port, I2C and USB.

• Bill has assembly language experience interfacing Output Devices (e.g. LCDs, LEDs, ultrasound emitters, RF antennae, Speakers, Piezo transducers, solenoids, relays, motors (stepper, inductive and brush), OCR mechanisms, XY-plotters, and RS232, Parallel, I2C and USB ports.           

• Bill has assembly language experience in DSP-like operations (e.g.  Matrix operations, DCT, DFT, MMX, AltiVec, IIR, and FIR filters).

Hardware
• Bill's hardware experience is extensive (having designed and built most of the I/Os listed above.



Patents

Patent Ribbon Patent   ( 6, 964, 372    Issued   11-15-2005)

Current Owner: Insight Quest, Inc.
Licensing availability: (Yes)
Contact Info: (480) 753-5375


Future Opportunities

 
  Futue Clock
By pushing beyond the current state-of-the-art,
there are these opportunities:

• Although high-level languages are often sufficiently fast, assembly programming
is still needed in some timing-critical routines.

• A deep knowledge of assembly programming (and the CPU.MCU architectures) can
significantly improve
the organization, timing and effectiveness of high-level languages, too.


Links to related material

  Links of Chain
• Patent 
6, 964, 372  

Back Arrow