Introduction to Your Guide to LogicWorks
1.
Introduction
LogicWorks
Digital logic design simulation is quickly becoming the preferred interactive education tool for introductory computer engineering courses. The purpose of this tutorial is to familiarize you with LogicWorks, a digital design simulation software package. Though this tutorial is meant for undergraduate computer science students, no prior knowledge of computer engineering is required, as we will explain to you the fundamentals to get you started.
Digital Design Simulation
Many universities have recognized the need for computer science students to understand the fundamentals of digital design early in their studies. The goal for most of these curricula is to build a microprocessor capable of handling a limited instruction set which will provide the context for operating system concepts and compiler issues. An understanding of the underlying hardware framework allows students to make the connection between their source code, the compiler, machine language and instruction sets, the physical execution of their applications, the issues that arise from the process, and the role of the operating system.
Traditional digital design teaching approaches have been relatively unsuccessful in reinforcing concepts. Many students have found that non-interactive lectures are not effective aids in visualizing an entire process in action. Furthermore, exercises in writing a simulated microprocessor in a high-level language can be confusing and counterintuitive Students often complain that it is awkward to write complicated code intentionally for seemingly simple operations. Hardware design laboratories and animated Powerpoint slides are cumbersome and either did not abstract away enough detail or provided very limited interactivity. From an institution's point of view, design laboratories are prohibitively expensive to maintain and have limited student service capacity. The process of constructing actual circuits is also problematic. Real-world electrical engineering issues may complicate matters and obscure an instructor's goal of demonstrating basic digital design concepts to novice students.
LogicWorks is a Windows-based GUI circuit and schematic CAD tool used heavily by many higher learning institutions for teaching ECE and Architecture concepts through a hands-on approach. LogicWorks lacks the professional features of things like XLINKS and Altera in areas such as fabrication and output to programmable logic arrays, but it trades these features for much improved ease of use and a flatter learning curve. LogicWorks features complete gate-level simulation of logic and support for abstraction through subcircuits and integrated support for VHDL. LogicWorks also includes robust debugging capabilities to aid the learning process and make circuit design, analysis, and implementation much less frustrating. This document will cover LogicWorks techniques and features in all of these areas except VHDL which we leave as an exercise for the interested reader. When necessary, this tutorial uses as examples projects from Georgia Tech's CS2200 Systems and Architectures class and includes a full treatment of the first CS2200 project such that a reader unfamiliar with LogicWorks can quickly get up to speed in order to tackle the assignment. This tutorial is not, however, limited to CS2200, and is intended to be a general guide to LogicWorks wherever possible.
Roadmap
After an overview of LogicWorks and its basic functionality, we will delve into the electrical and computer engineering (ECE) fundamental concepts. If you are already proficient in ECE concepts, you can skip this section. Once familiarized with most of the prerequisite material to make use of LogicWorks, we will walk you through setting up LogicWorks on your own machine. Afterwards, we will show you how to manage LogicWorks's user interface and guide you through a couple of tutorials to help reinforce what you have learned. Tips and tricks are also left along the way to help you as you go. Finally, once you have mastered the basics of LogicWorks, we will show you what you can do next to further your journey.
|