90 likes | 229 Views
Group 10 – Extensible Digital Logic Educational Tool. SOFTWARE Design. Block Diagram. Keyboard/Mouse. USB. Two Streams of Design High-Level (Java Application) Low-Level (Micro Code) Different Goals Considerations to Accomplish Goals Hierarchy Flow. Overall considerations. High-Level
E N D
Group 10 – Extensible Digital Logic Educational Tool SOFTWARE Design
Block Diagram Keyboard/Mouse USB
Two Streams of Design • High-Level (Java Application) • Low-Level (Micro Code) • Different Goals • Considerations to Accomplish Goals • Hierarchy • Flow Overall considerations
High-Level • Highly Extensible • Customizable by User/Developers • Low-Level • Reliable I/O functionality • Customizable I/O functionality in a very broad/general way GOALS
High-Level • Utilizing Open Source • Modular Design • Compatibility • Low-Level • Data Integrity (Checksum) • Packet Definitions (Customizing) Considerations to Accomplish Goals
Hierarchy High-Level Software Hierarchy Low-Level Software Hierarchy Micro Header Files Masking Headers (iehardware_profile.h) Main.c Configuration File Images / Sprites Sound EDLET Driver Class USB/COM Libraries JOGE LWGL JAVA
Flow - ATOM 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