Top Banner
High Speed Digital Syst High Speed Digital Syst ems Lab ems Lab 1 Mini Control System Mini Control System Application Application Students: Yair Kler Students: Yair Kler Supervisor: Boaz Mizrahi Supervisor: Boaz Mizrahi Spring 2009 Spring 2009 Final Presentation D1518 D1518
25

High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

Dec 20, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 11

Mini Control SystemMini Control SystemApplicationApplication

Students: Yair KlerStudents: Yair Kler

Supervisor: Boaz MizrahiSupervisor: Boaz Mizrahi

Spring 2009Spring 2009

Final Presentation

D1518D1518

Page 2: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 22

Project ReviewProject Review• Overview Overview • Project Expected goals.Project Expected goals.• SetbacksSetbacks• Goals Vs Actual Work StatusGoals Vs Actual Work Status• Future WorkFuture Work• Summary & ConclusionsSummary & Conclusions

Page 3: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 33

OverviewOverview

• Software development based on Aviv .R & Zilber B hardware.

• The device had only basic raw software code

• The device has USB port which could be used as external communication port for various applications.

Aviv.R & Ben-Ami. ZRole: Board Architects

Responsibilities: 1. Initial Board Design & Implementation

2. Basic Hardware Testing3. Basic Software for HW verification

V.Yotam & A.Karinne Responsibilities:

1. Hardware Verification (Debugging)

2. Hardware Manufacturing

A. Yaron Role: Software Development

Responsibilities:1. File System, 2. RTC, 3. USB

M. Maxim & A.Roi Role: Software Development

B. Elad & G. Cohen Roles:

Board Design – Can BusSoftware Development – Can bus

K. Yair Role: Software Development

Responsibilities:1. Develop Interfaces to configure PDA via LCD2. Develop interfaces to configure PDA via USB

Project Initial dependencies

Page 4: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 44

Overview ContOverview Cont....

• Pre-Requirements - Project development is based on other projects completion of several key tasks:

• A. Yaron – USB stack development (Initial plan – Develop USB based on MSD (Mass Storage Device)

• A. Yaron – Code reduction – Current code has taken 94% of program memory, 88% of data memory which didn’t leave any room for other applications.

• A. Yaron – “Safe ISR” File System – Current code could not handle interrupts (would cause trashing)

Page 5: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 55

Overview ContOverview Cont....

• Pre-Requirements Continue:

• A. Yaron – Bootloader Application for PDA device

• V. Yotam & a. Karin - availability of verified PDA devices for software development

• V. Yotam & a. Karin & A. Yaron – Hardware & Software debugging of USB.

Page 6: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 66

Project Expected GoalsProject Expected GoalsProject A:Project A:

Prepare software design documentsPrepare software design documents• Top level system designTop level system design• Assuming USB MSD interface – Define Assuming USB MSD interface – Define

configuration and information files.configuration and information files.

• Develop LCD-Keypad interface that allows to Develop LCD-Keypad interface that allows to extract sensors information and configure extract sensors information and configure sensors for all sensors.sensors for all sensors.

Page 7: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 77

Project Expected GoalsProject Expected GoalsProject B:Project B:

• Develop PC based application that that allows Develop PC based application that that allows to extract sensors information and configure to extract sensors information and configure sensors for all sensors based on sensors for all sensors based on USB MSD USB MSD interfaceinterface..

Page 8: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 88

Project SetbacksProject Setbacks

• The following pre-requirements were not The following pre-requirements were not completed:completed:

• USB as Mass Storage device USB as Mass Storage device • Code Reduction & Stable Application with ISR Code Reduction & Stable Application with ISR

Support.Support.• Fully Functional PDA device for Software workFully Functional PDA device for Software work

Page 9: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 99

Goals Vs Actual Work StatusGoals Vs Actual Work StatusMissing Pre-requirements resulted in the Missing Pre-requirements resulted in the

following changes to the project:following changes to the project:• Additional Work: (USB + Bootloader)Additional Work: (USB + Bootloader)

• Added USB capabilities to the deviceAdded USB capabilities to the device• Composite USB with both MSD & HIDComposite USB with both MSD & HID

• Hardware debugging for USB hardware errorsHardware debugging for USB hardware errors

Page 10: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 1010

Goals Vs Actual Work StatusGoals Vs Actual Work StatusMissing Pre-requirements Cont…Missing Pre-requirements Cont…

• Additional Work: (USB + Bootloader)Additional Work: (USB + Bootloader)

• Bootloader Capabilities to device: Allow to update Bootloader Capabilities to device: Allow to update new firmware via USB interface instead of JTAG.new firmware via USB interface instead of JTAG.

Page 11: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 1111

Goals Vs Actual Work StatusGoals Vs Actual Work StatusMissing Pre-requirements Cont…Missing Pre-requirements Cont…

• Additional Work: (File System & Code Additional Work: (File System & Code Refactoring)Refactoring)

• All previous code (Yaron & Amir) was removed and re-All previous code (Yaron & Amir) was removed and re-implemented (based on parts of Yaorn & Amir code)implemented (based on parts of Yaorn & Amir code)

• Microchip File System was updated and corrected.Microchip File System was updated and corrected.

• Interrupt issues fixedInterrupt issues fixed

Page 12: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 1212

Goals Vs Actual Work StatusGoals Vs Actual Work Status

• Actual Work: (PDA - Project Actual Work: (PDA - Project Design)Design)

• Structured Project: Structured Project: • defining order and relationship between defining order and relationship between

logical units.logical units.

• Replaced ALL old drivers with OOP “C+Replaced ALL old drivers with OOP “C++ like” order.+ like” order.

• Added HAL & BSP layers to separate Added HAL & BSP layers to separate applications from drivers.applications from drivers.

Page 13: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 1313

Goals Vs Actual Work StatusGoals Vs Actual Work Status

• Actual Work: (PDA - OS)Actual Work: (PDA - OS)

• Designed & Implemented a Designed & Implemented a Scheduler component with priority Scheduler component with priority logic and Round Robin capabilities.logic and Round Robin capabilities.

Page 14: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 1414

Goals Vs Actual Work StatusGoals Vs Actual Work Status

• Actual Work: (PDA - USB)Actual Work: (PDA - USB)

• Implemented USB as composite Implemented USB as composite device with two interfaces: device with two interfaces:

• Mass Storage Device – Allows the Mass Storage Device – Allows the device to handle like DiskOnKey.device to handle like DiskOnKey.

• Human Interface Device – Allows Human Interface Device – Allows to directly connect to internal PDA to directly connect to internal PDA interfaces.interfaces.

Page 15: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 1515

Goals Vs Actual Work StatusGoals Vs Actual Work Status

• Actual Work: (PDA - Bootloader)Actual Work: (PDA - Bootloader)

• Implemented a HID based Bootloader (based on Implemented a HID based Bootloader (based on Modified Microchip HID platform) USB.Modified Microchip HID platform) USB.

• Bootloader & PDA firmware each on different memory spaceBootloader & PDA firmware each on different memory space

• Automatic switching between Bootloader and PDA firmwareAutomatic switching between Bootloader and PDA firmware

• Selectable switching between Bootloader & PDA firmwareSelectable switching between Bootloader & PDA firmware

Page 16: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 1616

Goals Vs Actual Work StatusGoals Vs Actual Work Status

• Actual Work: (PDA - LCD Menu) Actual Work: (PDA - LCD Menu) Keypad/LCD - Configuration Keypad/LCD - Configuration /Information Control/Information Control

• Implemented dynamic menu interface Implemented dynamic menu interface with multilevel tree so:with multilevel tree so:

• User can configure all interfaces via User can configure all interfaces via LCD/Keypad.LCD/Keypad.

• User can retrieve all information via User can retrieve all information via LCD/Keypad. LCD/Keypad.

Page 17: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 1717

Goals Vs Actual Work StatusGoals Vs Actual Work Status

• Keypad/Lcd - Cont..Keypad/Lcd - Cont..

• Up/Down/Left/Right – Context aware Up/Down/Left/Right – Context aware scrollingscrolling

• ““Smart-Keys” for additional functionalities Smart-Keys” for additional functionalities from LCD/Keypad.from LCD/Keypad.

Page 18: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 1818

Goals Vs Actual Work StatusGoals Vs Actual Work Status

• Actual Work - (PC App - Driver)Actual Work - (PC App - Driver)

• USB HID Driver - Detecting & Handling USB HID Driver - Detecting & Handling multiple PDA devices connected to the multiple PDA devices connected to the same host. same host.

• Full HID functionalities.Full HID functionalities.• Full MSD functionalities.Full MSD functionalities.• Additional PDA Specific FunctionalitiesAdditional PDA Specific Functionalities

• Remote Device resetRemote Device reset

• Remote Bootloader loadRemote Bootloader load

• Configuration/Information extraction from Configuration/Information extraction from PDA Device.PDA Device.

Page 19: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 1919

Goals Vs Actual Work StatusGoals Vs Actual Work Status

• Actual Work - (PC App - Actual Work - (PC App - Bootloader)Bootloader)

• Bootloader Application Bootloader Application (embedded in PDA Management (embedded in PDA Management Application)Application)

• Allows to download new firmware Allows to download new firmware into the device.into the device.

Page 20: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 2020

Goals Vs Actual Work StatusGoals Vs Actual Work Status

• Actual Work - (PC App - Actual Work - (PC App - Management)Management)

• PDA Management Application:PDA Management Application:• Each Sensor has his own Each Sensor has his own

configuration/information window.configuration/information window.

• Multiple Device can be pulled and view Multiple Device can be pulled and view using the same instance of the using the same instance of the application.application.

• Data gathered from each PDA device is Data gathered from each PDA device is stored locally within a dedicated SQL stored locally within a dedicated SQL data-base.data-base.

Page 21: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 2121

Goals Vs Actual Work StatusGoals Vs Actual Work Status

• Actual Work - PC App Actual Work - PC App

• PDA Manufacturing Application:PDA Manufacturing Application:• PDA has several files required for proper PDA has several files required for proper

operation:operation:• LCD menu’s are stored on fileLCD menu’s are stored on file• Manufacturing file - holding the device MAC Manufacturing file - holding the device MAC

address as well as additional data.address as well as additional data.

• PDA manufacturing application - allows to PDA manufacturing application - allows to generate each of these files and directly generate each of these files and directly download them into a selected device.download them into a selected device.

Page 22: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 2222

Future WorkFuture Work

• PDA Side:PDA Side:• Complete all drivers implementation.Complete all drivers implementation.• Extensive code coverage.Extensive code coverage.

• PC - Side:PC - Side:• Utilize existing platform and maximize Utilize existing platform and maximize

PDA data.PDA data.

Page 23: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 2323

Summary & ConclusionsSummary & Conclusions• Project required extensive hardware and software Project required extensive hardware and software

understanding Students were introduced to:understanding Students were introduced to:

• Low/High level - Embedded RT designLow/High level - Embedded RT design

• USB / File System internals.USB / File System internals.

• Management applications development Management applications development methodologies.methodologies.

Page 24: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 2424

Summary & Conclusions Cont…Summary & Conclusions Cont…

• Embedded - Host internalsEmbedded - Host internals

• System Design.System Design.

• Minor Issue:Minor Issue:• Project Dependencies - should be avoidedProject Dependencies - should be avoided• Project Scope - Work estimation and monitoring to Project Scope - Work estimation and monitoring to

avoid “work explosion”.avoid “work explosion”.

Page 25: High Speed Digital Systems Lab 1 Mini Control System Application Mini Control System Application Students: Yair Kler Supervisor: Boaz Mizrahi Spring 2009.

High Speed Digital Systems LabHigh Speed Digital Systems Lab 2525

QuestionsQuestions??