Group 10 – Extensible Digital Logic Educational Tool SOFTWARE Design
Block Diagram Keyboard/Mouse USB
Overall considerations Two Streams of Design High-Level (Java Application) Low-Level (Micro Code) Different Goals Considerations to Accomplish Goals Hierarchy Flow
GOALS High-Level Low-Level Highly Extensible Customizable by User/Developers Low-Level Reliable I/O functionality Customizable I/O functionality in a very broad/general way
Considerations to Accomplish Goals High-Level Utilizing Open Source Modular Design Compatibility Low-Level Data Integrity (Checksum) Packet Definitions (Customizing)
Hierarchy High-Level Software Hierarchy Low-Level Software Hierarchy Micro Header Files Masking Headers (ie hardware_profile.h) Main.c Configuration File Images / Sprites Sound EDLET Driver Class USB/COM Libraries JOGE LWGL JAVA
Flow - ATOM Micro Code Load JOGL Read Configuration Start EDLET Load JOGL Read Configuration Load Images / Music Micro Code EDLET Driver Class USB/COM Libraries End
Flow - Micro ATOM (Sending Packets) USBCDC RS232 Comm. Buffer Good Packet In Checksum Adjust I/O Bad Main Poll Input Change ReSend Yes Report
Questions?