A good engineer requires two types of practices - the "component skill" and "integration skill." The former is the knowledge in specific areas and the latter applies and integrates the component skills to address complex and realistic problems. However, in many engineering curriculum, the subjects are taught in isolation and without the proper context. Students are not able to connect the individual topics and are not properly prepared for the integration skill. A recent study from the Carnegie Foundation for the Advancement of Teaching recommends a “spiral model” to provide more effective learning experiences: “... the ideal learning trajectory is a spiral, with all components revisited at increasing levels of sophistication and interconnection.”
We follow this model and develop a continuous and coherent series of “theme based” experiments and projects for computer engineering curriculum. The goal of the development is to connect and integrate the individual courses through a cohesive lab framework. The video theme focuses on the generation of the images and the control of a video display. The labs involve the design and development of hardware and software to control and interact with various video and “video-like” devices and modules. The theme treats a video screen as a collection of pixels and gradually increases the number of pixels and the complexity of the display. The labs progress as follows
• One discrete LED (treated as one monochrome pixel)
• One PWM controlled tri-color LED (treated as one “true-color” pixel)
• One WS2812 “neo-pixel” device (treated as one “addressable” color pixel)
• 8-by-8 LED matrix (treated as 64 monochrome pixels)
• 8-by-8 WS2812 panel (treated as 64 true-color pixels)
• Low-resolution TFT display (with 320-by-240 pixels and built-in video controller and frame buffer)
• VGA controller with synchronization circuit
• Custom sprite generation circuit, on-screen text generation circuit, and frame buffer
• Video subsystem with configurable IP (intellectual property) cores that can be integrated into an SoC (system on a chip) design
The experiments and projects spread over all hardware related courses in computer engineering curriculum, including freshman engineering, introductory and advanced digital systems, computer organization, embedded systems, and hardware-software co-design. The complexities and abstraction levels of the labs gradually grow through the curriculum. Key concepts are reiterated in different courses with increasing sophistication and compared and contrasted from different contexts and perspectives, such as software implementation versus hardware implementation, gate-level design versus RT (register-transfer)-level design, etc.
Are you a researcher? Would you like to cite this paper? Visit the ASEE document repository at peer.asee.org for more tools and easy citations.