CSC270 Class Page 2011

From dftwiki3
Revision as of 12:03, 18 April 2011 by Thiebaut (talk | contribs) (Second 1/2 of Semester)
Jump to: navigation, search

--D. Thiebaut 08:44, 7 January 2011 (EST)




Back to Main Page for CSC270



Prof

Dominique Thiébaut email
Dept. Computer Science
Ford Hall, 356.
Telephone: 3854
Office Hours: M:4-5, T3-4, W3-4, and by appointment


Weekly Schedule

First 1/2 of Semester

Week Topics Reading
Week 1
1/24
  • Monday: Introduction to the semester
    • Lecture
      • Syllabus
      • Overview of the class
      • combinational logic (1/4)
      • sequential logic( 1/4)
      • microprocessor logic (1/2)
      • Boolean Algebra
      • Truth tables
      • Boolean functions
      • canonical forms: the minterm canonical form
    • examples of schematics from Nasa
    • logic gates
      • and gate (7408)
      • or gate (7432)
      • not gate (7404)
    • Lab 1
  • Wednesday:
OrGateWithTransistors.gif
AndGateWithTransistors.jpg
    • Some basic electricity concepts
    • Voltages, diagrams, Vcc, Gnd
    • Measuring voltages: different of potential ==> need two measuring points
    • Resistors
      • limit current
      • passive
      • property = resistance
      • unit of resistance = Ohm (Ω)
    • Ohm's Lay: V = RI
      • Apply law to simple circuits
      • Series and Parallel circuits with resistors
      • Exercises
    • How to generate a simple switch that generats ON/OFF, High/Low, 1/0
    • The transistor
      • Emetter, Base, Collector
      • basic operations
      • simple circuit
  • Friday
    • Example of gates with transistors
    • Back to boolean functions
      • Exercise
      • review of what is a minterm.
      • Simplifying boolean functions
      • Maxterms

  • Binary numbers
  • Boolean algebra and Logic Gates
  • Basic theorems
  • Truth tables
  • Boolean functions
  • Canonical forms


George Boole in zeros and ones
George Boole

Week 2
1/31
  • Monday
Calvin snow.jpg
    • lecture
      • What is a switch? i.e. how does a switch from the HeathKit generate a high or low voltage?
      • We are programmers! Verifying circuits with simple programs!
      • The binary adder. 2-bit, and 3-bit versions
      • the NAND and NOR gates: universal gates
    • lab
  • Wednesday
    • Snow Day!
  • Friday: No Class

Week 3
2/7
PCSchematics.gif

  • Karnaugh maps are covered in Chapter 3.
  • Decoders are covered in Chapter 4.
Week 4
2/14
  • Monday
    • lecture
      • another way to draw NANDs and NORs...
      • relationship between

        if ( a==b ) { ... }

        and logic gates
      • active-low/active-high signals and circuits
      • decoders with active-low outputs: most common!
      • Exercise: Implement f = Σ(1,3,4,5) with a decoder with active-high outputs
      • Exercise: Implement f = Σ(1,3,4,5) with a decoder with active-low outputs
      • decoders with an enable input
      • cascading decoders
      • designing a 3-to-8 decoder with the 4-to-10 7442 decoder
    • Lab #4
  • Wednesday
    • The Multiplexer circuit
    • The RS flipflop
  • Friday
    • Catch-up day

Week 5
2/21
  • Monday
BoardCapture1.jpg
BoardCapture2.jpg
BoardCapture3.jpg
    • lecture
      • the RS Flipflop
      • Timing Diagrams
      • Exercise:
Design a majority voter that remembers when a fault occurs. First design a simple one that keeps track of the fact that a fault occurred in the past. Add a reset button to reset the fault signal. Then modify your design so that the majority voter not only remembers that there was a fault, it also remembers the Id of the faulty device.
      • The oscilloscope
        • Sampling
        • Periodic signals
        • Frequence
        • Peak-to-peak voltages
        • Trigger: Rule = always trigger on the slower of two signals!
    • Lab #5
  • Wednesday: Rally Day
  • Friday
DFlipFlop board1.jpg
DFlipFlop board2.jpg
DFlipFlop board3.jpg
    • The RS Flip-flop: review
    • Making it work with a clock signal
    • Ideally we need a pulse to latch information in the flip-flop
    • Latching on the Low-to-High transition of the clock
    • the D Flip-flop: two RS flip-flops working in ping-pong mode
    • The 74LS74 circuit.
    • Timing diagram of a D Flip-flop
    • Mini Lab 1: wire up a 7474 and observe its behavior.

  • The D-Flip-flop is covered in Section 5.3 of Mano.
Week 6
2/28
  • Monday
    • lecture
      • Low-to-high and High-to-low clock inputs
      • A first 2-state state-machine with a D-Flip-flop
      • Duty cycle of a signal = %age of time ON / Period
      • The Moore Model, or Moore Machine
      • How do we find a way to generate this machine?
      • Characteristic Table of the D-Flip-flop
      • State diagram
      • State table
      • Activation table
    • Lab
  • Wednesday
  • Friday

  • Read Chapter 5
  • The chapter introduces several flip-flops. We'll look at the JK briefly in class. The chapter also introduces two different approaches to designing finite state machines: the Moore machine and the Mealy machine. We're concentrating here on the Moore machine, for which the output is a function of the present state only. This is the simplest and more widely used model.
Week 7
3/7
  • Monday
    • Note: The lab report from last Monday (2/28) is due on Wednesday, 3/9/11 to allow extra time to prepare for the midterm.
    • Midterm Exam: 1h 30 min. Closed books, closed notes.
    • Midterm preparation
    • Lab #7
    • 2-hour Assembly Crash-Course, Monday 6:00 p.m. - 7:30 p.m., FH 342. RSV if you are coming so that enough pizza can be purchased for dinner.
  • Wednesday
    • Sequencers with external inputs
    • Exercise
    • Finish Lab #7
  • Friday

  • Sequencers with active inputs
Week 8
3/14
DancingCalving.gif

 


Second 1/2 of Semester

Week Topics Reading
Week 9
3/21
  • Monday
6811Motorola.jpg
    • The 6811 Processor: references
      • The official Motorola 68HC11A8 Data Sheet. Fairly cryptic...
      • A Motorola 6811 Manual. It is a nicely written refresher on many concepts of assembly language applied to the 6811.
        • Check Section 3.2 on addressing modes (inherent, direct, extended, indexed, relative).
        • Get a refresher for the different instruction types (arithmetic, shifts, control, etc) in Section 3.4.
        • The condition code register is covered in Section 3.5. Skip Section 4.
      • M68HC11 Technical Reference, from Motorola.
        • Section 6.5 shows the instructions in logical groups.
    • M68HC11 Pocket Reference.
      • Very useful, on Page 15, a list of all the opcodes supported by the 6811, in numerical (hex) order.
    • 68HC11A8 Technical Reference: a hardware & engineering description. of the 6811, its ports, and how it operates.
        • See Section 10 for a cycle-by-cycle description of the execution of each instruction.
        • See Appendix A, Figure A-14 for the timing diagram of a typical (multiplexed expansion) memory access.
    • 6811 Instruction Set, with hexadecimal opcodes. A reverse map, from hex to instructions can be found here.
    • 2-Page List of all the 6811 Instructions
    • Software for the 6811
    • Heathkit ETW3800 Trainer manual (pdf)

    • Concentration on Assembly Language
    • Example of fully assembled 6800 program
    • CSC270 6811 Listing Format.png
      Listing format
      • opcodes, mnemonics, directives, columnar format
    • The instructions
    • Addressing Modes: inherent, immediate, direct, extended, indexed, relative
  • Wednesday
    • A look at the internal circuits of the 6811.

6811InternalALUCLU.png
CSC270 LDAA.png CSC270 STAA.png CSC270 JMP.png CSC270 INC.png

ProgrammableLogicArray1.gifProgrammableLogicAray2.gif


Week 10
3/28
  • Monday
    • lecture
    • Quiz
    • Cycle-by-cycle description of an endless loop of 3 instructions:
    0000 4C            LOOP:  INCA
    0001 97 10                STAA    x
    0003 20 FB                BRA      LOOP

6811TimingDiagramOfLoop.jpg






  • Friday
    • Happy Birthday Edo! (all the pics on Facebook)
BirthdayEdo040111.jpg

Week 11
4/4
6811KitMemoryMap.png
6811 addressDecoding.png








Week 12
4/11
  • Happy Birthday Millie! (all pictures on Facebook.)

HappyBirthdayMillie.jpg


74240.png
74244.png
74541.png
  • Monday
    • lecture
    • Lab 11
      • Designing and wiring up an input port with the 6811
74273Register.jpg
74166ShiftRegister.gif
  • Wednesday
CSC270 6811IOScheme.jpg
    • How to figure out how many different addresses energize Y4?
    • Examples of I/O Ports
      • Parallel Port
        • Data Registers
        • Control Registers
        • Status Registers
        • Handshake Protocol
        • Software Driver
  • Friday: No class: Programming Contest!

Week 13
4/18
  • Monday (in FH345: lab shared with Susan Voss's class)
  • Wednesday
  • Friday

Week 14
4/25
    • Please watch on your own the very good Arduino video.



























  • Monday
    • lecture
      • Introduction to the Arduino
    • lab
      • Playing with the Arduino
  • Wednesday TAKE HOME FINAL
  • Friday:


Back To Main Page


Links and Resources

Printing

  • How to print a text file (pure ASCII, not an MS Word document) from a beowulf account to the printer @ FH354:
  cprint -15  myFile.txt
  • How to print a pdf from a beowulf account to the printer @ FH354:
  lpr -P ford354 max232.pdf
  • How to print an image to the same printer, from a beowulf account:
  convert myImage.jpg  myImage.pdf
  lpr -P ford354 myImage.pdf

Programs

Software

Pspice9.jpg

PSpice 9

  • Pspice 9, Student version. An nice alternative to drawing schematics by hand.
  • This is a Windows version. (I have tried to make it work under wine/Mac OS X but haven't been able to make it load the libraries correctly)
  • Make sure you select the schematics option when installing the software.
  • Select Tools/Schematics when starting the editor
  • The schematics editor is located in C:\Program Files\OrCAD_Demo\PSpice\PDesign.exe upon installation.
  • Download here!
  • PSpice Tutorial

Integrated Circuit Data-Sheets

Ic.jpg

Motorola 68HC11 Documentation

6811.jpg





Back To Main Page