180 likes | 340 Views
Using LogicWorks. Celal Ziftci CS 231 – Fall 2005 Sep 9, 2005. Reminders. Homework #1 due Monday, Sep 12 Check the website for office hours? (no changes, but still…). What is LogicWorks?. A software that allows simulation of hardware components and their interactions.
E N D
Using LogicWorks Celal Ziftci CS 231 – Fall 2005 Sep 9, 2005 University of Illinois at Urbana Champaign
Reminders • Homework #1 due Monday, Sep 12 • Check the website for office hours?(no changes, but still…) University of Illinois at Urbana Champaign
What is LogicWorks? • A software that allows simulation of hardware components and their interactions. • Advantages of using a simulator • Cost • Time University of Illinois at Urbana Champaign
Important… • Even if you are working in groups on the MPs (not HWs), use it for some time • Be neat and organized! • Use labels on pins, instead of crossing wires everywhere • Typically, data flows from left to right.(Except in our datapath, where it flowsup down up) University of Illinois at Urbana Champaign
Today’s outline • Interface • Working with devices • Input and output • Debugging University of Illinois at Urbana Champaign
Interface • Main layout screen • Parts of list palette (can tear off) • Simulation Gates: and, or, not, ... • Simulation IO: binary switch, hex keyboard, binary probe, hex display • Simulation Logic: adder, clock, flip-flop, decoder, mux • double click device in parts palette • single click in layout to place device University of Illinois at Urbana Champaign
Interface (2) • Timing diagram • Can be accessed underView Timing Window • For sequential circuits (MP3 & 4) • Shows clock and signals over time • Zoom in and out using toolbar University of Illinois at Urbana Champaign
Interface (3) • Drawing Toolbar • Zap to delete lines & components - useful to cleanup mistakes • Text tool to add labels and pin names • Signal wire (1-bit) • Bus wire (multi-bit) University of Illinois at Urbana Champaign
Interface (4) • Simulation Toolbar • For sequential circuits (MP3 & 4) • Adjust simulator clock speed • As alternative to using a fixed clock speed, use binary switch as "clock" and manually toggle when a clock cycle happens. Easier to verify that everything happened correctly. University of Illinois at Urbana Champaign
Interface (5) • File menu • Open... • Type: Circuits files • Type: Symbol libraries (to be used later) University of Illinois at Urbana Champaign
Interface (6) • Schematic menu • Design Preferences • Show printed page breaksMake sure components don't span page breaks • Show background grid University of Illinois at Urbana Champaign
Interface (7) • Keyboard shortcuts • Arrows make gate point left, right, up, or down • Context menu (right click) • Name: useful to label components in big circuits • Right click tip of pin • Name: to connect pins without drawing a wire University of Illinois at Urbana Champaign
Working with devices • Connecting devices • Naming the pins reduces the mess • Drag wire from one pin to another • Use signal or bus tool • Ends must contact — intersect is not enough! • Entire wire & pins should turn yellow when selected University of Illinois at Urbana Champaign
Working with devices (2) • Be careful using gates with inverters • Making gates with more inputs • Append the gates to each other • Use some logic BUT be careful on the implications • E.g. AND-6: a six input AND gate • Use AND-8 — What to do with remaining pins? • E.g. AND-6 • Use AND-3 plus AND-4 — How to connect? • Don't use five AND-2 gates! University of Illinois at Urbana Champaign
Input and Output • Binary switch • Enter 1 bit • To move switches (and most of the other components too) hold down shift while clicking • Binary probe • Display 1 bit. Really useful for debugging! • Z: unknown value — somewhere a pin is disconnected • C: conflict value — 2 conflicting pins with same label • Sometimes just need to toggle inputs University of Illinois at Urbana Champaign
Input and Output (2) • Hex keyboard • Enter 4 bits in hex — useful for our 4 bit bus • Lowest pin, by F, is lower order bit 0 • Observe it for yourself. How? (Hint: Probe) • Hex display • Display 4 bits in hex • 7 segment display (LED) • Gray if unknown — this indicates a bug! • Blank (white) if 0 • Solid black(or red) if 1 University of Illinois at Urbana Champaign
Debugging • Use lots of binary probes • Verify that pins are connected • Remember yellow • Verify that correct pin names are used (spelling, UPPER/lowercase) University of Illinois at Urbana Champaign