Oppenheimer Technologies

26
Oppenheimer Technologies Rick King Jonathan Creekmore

description

Oppenheimer Technologies. Rick King Jonathan Creekmore. Problem. Current programming solutions for the Ubicom SX microcontroller are expensive. Typical costs range from $150-$240. Our Solution. NADS – Not Another Development System - PowerPoint PPT Presentation

Transcript of Oppenheimer Technologies

Page 1: Oppenheimer Technologies

Oppenheimer Technologies

Rick King

Jonathan Creekmore

Page 2: Oppenheimer Technologies

Problem

Current programming solutions for the Ubicom SX microcontroller are expensive.

Typical costs range from $150-$240.

Page 3: Oppenheimer Technologies

Our Solution

NADS – Not Another Development System– A low-cost programmer that can be built by students

for less than $50 in components and open software.

Page 4: Oppenheimer Technologies

Hardware Design

RS-232

Flash Programming

Voltage

In-System Programming

Interface

Ubicom SX-18

PC Target System

Page 5: Oppenheimer Technologies

RS-232 Interface

RS-232

Ubicom SX-18

PC

Page 6: Oppenheimer Technologies

RS-232The Concept

Most Commonly Available Serial Communications Protocol for Computer.

Transceiver Necessary to Translate Between RS-232 Voltage Levels and CMOS Levels.

Page 7: Oppenheimer Technologies

RS-232 Schematic

U4

1718

14

6789

10111213

1615

2

4

1

3

5 RA0RA1

Vdd

RB0RB1RB2RB3RB4RB5RB6RB7

OSC1OSC2

RA3

MCLR

RA2

RTCC

Vss

OSC2

Receive

OSC1

Transmit

MCLR

TransmitReceive

Vss

TransmitEXT

U5

Max233A

123456789

10 11121314151617181920

T2inT1inR1outR1inT1outVssVccC1+VssC2- C2+

V-C1-

V+C2+C2-

V-T2out

R2inR2out

Vss

ReceiveEXT

Vdd

TransmitEXT

ReceiveEXT

J2

DB-9 Header

59

48

37

26

1

Vss

OSC2VssOSC1

J3

50Mhz Resonator

123

Page 8: Oppenheimer Technologies

Where’s the UART?

A UART Converts Between Asynchronous Serial Data and Parallel Data

This Function is Performed by the SX-18 using Ubicom’s Virtual Peripherals.

Page 9: Oppenheimer Technologies

Flash ProgrammingVoltage

Flash Programming

Voltage

Ubicom SX-18

Target System

Page 10: Oppenheimer Technologies

Flash Programming Voltage

The Ubicom SX Family of Processors Require 12 V to Program the Flash Memory.

Design is Limited to a Single 5 V Power Supply.

12 V Must Be Generated on Demand for Programming.

Page 11: Oppenheimer Technologies

Flash Programming Voltage Schematic

ReceiveTransmit

MCLR_Ext

VssVdd

MCLR

OSC2OSC2_Ext

U4

1718

14

6789

10111213

1615

2

4

1

3

5 RA0RA1

Vdd

RB0RB1RB2RB3RB4RB5RB6RB7

OSC1OSC2

RA3

MCLR

RA2

RTCC

Vss

OSC1Vpp_On

Vpp_On

662-C2+662-C2-

Vdd

662-C1+662-Out

662-C1-Vss

U6

Max662A

1234 5

678

C1-C1+C2-C2+ Vcc

VoutVss

Shdn

C3

0.22uF

662-C2- 662-C2+

662-C1- 662-C1+

C2

0.22uF

C5

4.7uF

662-Out

C4

4.7uF

Vss

Vdd Vss

J1

ISP Header

123456

662-Out

Page 12: Oppenheimer Technologies

In-System Programming Interface

In-System Programming

Interface

Ubicom SX-18

Target System

Page 13: Oppenheimer Technologies

Frames and Cycles

17 Frames Per Word

5 Cycles Per Frame

Initiated by Application of 12V Programming Voltage

Page 14: Oppenheimer Technologies

In-System Programming Schematic

OSC2_Ext

U4

1718

14

6789

10111213

1615

2

4

1

3

5 RA0RA1

Vdd

RB0RB1RB2RB3RB4RB5RB6RB7

OSC1OSC2

RA3

MCLR

RA2

RTCC

VssMCLR_Ext

J1

ISP Header

123456

VddOSC2_Ext

Vss

662-Out

Page 15: Oppenheimer Technologies

PCB Layout

Page 16: Oppenheimer Technologies

Waveform

Page 17: Oppenheimer Technologies

Hardware Costs

Current Parts Cost $30.00

Possible Cost Reductions

Reduce PCB Cost from $10 to $0.70

Potential Cost(1000 quantity)$15.00

Page 18: Oppenheimer Technologies

Demo Plan

• Create sample program that has output noticeable to the audience.

• Modify program based on audience interaction.

• Program test microcontroller and demonstrate with the new code.

Page 19: Oppenheimer Technologies

Serial Communications

Programmer 0100111111001110

0110111111001110

6FCE

???

0100111111001110

4FCE

Wait

Page 20: Oppenheimer Technologies

DLL Communications

Programmer010011111100111011100011

Actual Data Checksum

0100111111001110 11100011

4FCE E3

4FCEE3

Page 21: Oppenheimer Technologies

Checksum Algorithm

Checksum (payload, length, cksum)

Begin

cksum := 0

for i := 1:length

cksum := payload[i] + cksum

end

cksum := ~cksum + 1

End

Page 22: Oppenheimer Technologies

Checksum Demo

payload := 4FCE length := 2

Iteration 0: cksum = 0cksum := 4F + cksum

Iteration 1: cksum = 4Fcksum := CE + cksum

Iteration 2: cksum = 1Dcksum := ~cksum + 1

cksum = E3

Page 23: Oppenheimer Technologies

ISP Protocol -- Program

Start Session

Get Device Word

Erase Done?

Program FuseX

Done? Program Image

Done?

Image Done?

No

Yes

No

Yes

No Yes

No

Yes

Page 24: Oppenheimer Technologies

Speed Increase

Common commands must be repeated multiple times to be effective

Serial communications channel cannot provide adequate bandwidth for a full image

Solution:

0100111111001110 00010100 11001111

4FCE CF14

Command Repeat Checksum

Page 25: Oppenheimer Technologies

ISP Protocol -- Program

Start Session

Get Device Word

Erase Program FuseX

Program Image Image Done?

No

Yes

Page 26: Oppenheimer Technologies

Screenshot