Upload
airell
View
24
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Mini Control System Application. D1518. Final Presentation. Students: Yair Kler Supervisor: Boaz Mizrahi. Spring 2009. Project Review. Overview Project Expected goals. Setbacks Goals Vs Actual Work Status Future Work Summary & Conclusions. Overview. Project Initial dependencies. - PowerPoint PPT Presentation
Citation preview
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
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
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
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)
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.
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.
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..
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
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
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.
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
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.
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.
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.
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
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.
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.
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.
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.
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.
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.
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.
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.
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”.
High Speed Digital Systems LabHigh Speed Digital Systems Lab 2525
QuestionsQuestions??