300 likes | 467 Views
Oppenheimer Technologies. Rick King Jonathan Creekmore. Problem. Current programming solutions for the Ubicom SX microcontroller are expensive. Typical costs range from $150-$240. Requirements. Our product must: Program all Ubicom SX microcontrollers Cost less than current solutions
E N D
Oppenheimer Technologies Rick King Jonathan Creekmore
Problem • Current programming solutions for the Ubicom SX microcontroller are expensive. • Typical costs range from $150-$240.
Requirements Our product must: • Program all Ubicom SX microcontrollers • Cost less than current solutions • Be manufacturable using equipment at Mississippi State University
The ProgrammingSpecification • 17 Frames Per Word • 4 Cycles Per Frame • Application of 12V DC Required to Program Flash Memory
Hardware Design RS-232 Ubicom SX-18 Flash Programming Voltage In-System Programming Interface PC Target System
RS-232 RS-232 Interface Ubicom SX-18 PC
RS-232The Concept • Most Commonly Available Serial Communications Protocol for Computer. • Transceiver Necessary to Translate Between RS-232 Voltage Levels and CMOS Levels.
The Hardware 2 2 MAX233 SX18 DB9
Where’s the UART? • A UART Converts Between Asynchronous Serial Data and Parallel Data • This Function is Performed in Firmware by the SX-18 using Ubicom’s Virtual Peripheral UART.
Flash ProgrammingVoltage Ubicom SX-18 Flash Programming Voltage Target System
Where, Oh Where? • Where can +12V DC be generated from? • An op-amp? • Derive it from the RS-232 lines? • An IC whose single purpose is to generate a +12V signal from a +5V signal?
In-System Programming Interface Ubicom SX-18 In-System Programming Interface Target System
Firmware • UART Virtual Peripheral • HandleCycle and HandleFrame • System Control Code
The ProgrammingSpecification (again) • 17 Frames Per Word • 4 Cycles Per Frame • Application of 12V DC Required to Program Flash Memory
Data Frames(12) Command Frames (4) Sync Frame Waveform The Data Word is 0x1FCE.
Hardware Costs • Current Parts Cost $30.00 • Possible Cost Reductions • Reduce PCB Cost from $10 to $0.70 • Potential Cost (1000 quantity) $15.00
File Format RS-232 Software Design PC Programming Software Data Link Layer ISP Protocol Interface Programmer
RS-232 RS-232 Interface PC Programming Software Data Link Layer Programmer
RS-232 Interface • Implements a raw serial interface to the embedded device. • Contains commands to send and receive arbitrary length strings of binary data. • Test Bench: • Send text and binary strings across serial connection to a software implemented loop-back. • Status : Passed
RS-232 DLL Interface PC Programming Software Data Link Layer Programmer
DLL Interface • Contains a single command to send binary data and block until the receipt of a binary response. • Implements a simple checksum algorithm to aid in debugging of the communications channel.
DLL Interface • Test Bench: • Send text and binary strings across serial connection. • Interject errors in the payload data and check for data consistency in the response. • Status : Passed
ISP Protocol Interface PC Programming Software ISP Protocol Interface
ISP Protocol Interface • Contains the following commands: • Start Session • End Session • Erase Device • Read Device Word • Read FuseX Word • Program FuseX Word • Load Data Word • Program Data Word • Read Data Word • Increment Address
ISP Protocol Interface • Each command is followed by a repeat count to increase the throughput of the serial communications channel. • Test Bench : • Commands are sent through a test program and the responses are analyzed to determine if the correct action was taken. • Status : Passed
File Format File Format Interface PC Programming Software
File Format Interface • Contains functionality to read and interpret the Intel 8-bit Merged file format. • Contains functionality to interpret out-of-band information such as the Fuse and FuseX bits. • Test Bench : • Compare output of the filter with the data used to generate the file. • Status : Passed
Future Directions • All SMT Design • USB Serial Interface • In-System Debugging • Integrated Assembler and Simulator
Demo • Create sample program that has output noticeable to the audience. • Such as a blinking LED? • Modify program based on audience interaction. • Such as changing the blink rate? • Program test microcontroller and demonstrate with the new code.