Your commitment to the class:
3:20-6:30 PM Bldg 18, room 129
Plus at least 12 hours of study and design outside of class per week
This course introduces Digital circuit design with an introduction to design software.
You will design, build or simulate, and test static,
synchronous and asynchronous digital systems suitable to complete
imbedded microprocessor products. You will gain experience in
documenting what you do in the lab.
You will also learn to use Quartus and Verilog, industry standards, to design and test complex circuits
Gate design capture, once the standard design tool for digital logic has largely been replaced by High Level Design Languages. As high level programming languages replaced Assembly language programming, programming languages are becoming the standard digital design methodology. However, you will be expected to understand gate-level digital design in order to understand the design languages.
The course will include a significant amount of reading and design of many different kinds of digital systems. From the lectures you will find out what is most important and therefore, where to spend most of your time. You should read dilligently and experiment with hardware and simulator. Qusetions arrising from readings will be inswered in class. In the lab you will take on specific design problems, documenting each step of the development process.
You will be expected to be able to use Verilog, a HLDLs to implement complex circuits.
Since this is a hands-on experience class the primary means of evaluating your understanding will be for me to watch you manipulate circuits in the laboratory. Your Lab Reports will confirm your understanding of what you have done. Exams will test your ability to solve problems by yourself. Lab assignments will give you experience and test your ability to work together with others.
Learning Objectives ---- You are expected to be able to do this before completing this Course
You will design, build or simulate, and test static, synchronous and asynchronous digital systems suitable to complete imbedded microprocessor products. You will gain experience in documenting what you do in the lab.
You will learn the rules of connectivity for 7400 logic family gates and be aware of variations in the 7400 family.
You wil also learn to design, build, and troubleshoot selected computer components and stand-alone digital systems using standard design and simplification techniques such as Boolean algebra, Carnaugh maps, and various timing diagrams.
You will be expected to design and test circuits using Quartus and Verilog.
What you are expected to do in the lecture part of the class?
The course will include a significant amount of reading and design of many different kinds of digital systems. From the lectures you will find out what is most important and therefore, where to spend most of your time. You should read dilligently and experiment with hardware and simulator.Your success in this class has to do with how much time you spend reading, doing exercises, and interacting with the instructor and classmates. . I, as the instructor, can't check every step of your progress. You will have to try the assignments in the book and those I give you. When you run across problems understanding the book or lectures, bring the problems to class for discussion. A Midterm and a Final exam will sample your knowledge but watching you perform will provide a better measure of your success.
Read the book, do the exercises, and let me know how well you are doing.
Assignment is the minimum requierement. It would be hlepful to assure yourself that you understand all the problems at end of chapter, and to work out all examples.
Assignment format: Name, Date, and assignment number. Do the problems in numerical order as assigned.
What you are expected to do in the lab?. In the lab you will take on specific design problems, documenting each step of the development process.
Each laboratory exercise will lay out a specific problem to solve. You will use standard techniques to find a solution to the problem, propose aleternate designs from which you will choose the most effective. You will then design the circuit completely, simplifying it if appropriate, and completely document the design. The next step is to build and test the circuit, recording problems found in building and testing.
Lab reports for each week's lab are due at beginning of class on the following Tuesday. Late labs are subject to a 20% late penalty.
Laboratory Report format:Most labs will require considerable prior preparation. Please show the instructor your lab prep documentation at the beginning of the lab. Preparatory items are indicated below with *.For each assignment listed below you will each create a lab report similar to the following.
I expect you to execute an explicit schematic, fully annotated diagram with pin numbers BEFORE you begin to wire any circuit. This would be a good example of such a pre-build drawing.
Wickipedia provides some background and history for the devices. They even give you an idea of how TTL works.
Go to one of the following sites to find the data sheets for digital devices we will be using.
Here are a few specific devices you may find useful
7483 Full Adder
74190 Up/down Counter
Weekly schedule of events.
Complete reading before week noted!Assignments are due the beginning of the week shown.
How do you know when you are done? How well have you done?Since this is a hands-on experience class the primary means of evaluating your understanding will be for me to watch you manipulate circuits in lab. The assignments are meant to focus your learning on specific important subjects but just because I haven't assigned a subject explictly doesn't mean that you shouldn't know it. If it is in the reading assignment or lectures, it is important.
The Exams will sample the depth of your understanding in representative areas. But don't forget that much of what we work on this quarter will soon be obsolete so the most important thing for you to do will be to learn how to learn.
Worst Case Grading criteria
Inputs: BCD value from a keyboard -- four bit bus
Unlock -- one bit input, true to unlock if the combination is correct
Program --- One bit input -- true to ibegin reprogramming the combination -- Only operable when lock is open
Outputs: Unlocked =-- True when the lock is unlocked
Operrateon: User enters three numbers; If the numbers are correct, in the right sequence, the lock opens when the opne input is activated. Otherwise, the lock is locked.
While open, any number input from the keyboard relocks the lock.
To change the combination
First unlock the lock. While unlocked (open), set program to one. The program function will latch, so the program key can be released.
Enter the new combination and press open, the open signal will go true
Re-enter the new combination. If they are the same, the combination has been changed. If they don't compare, the lock reverts to its previous combination.
Lecture assignment 1, due at the beginning of week 3
Chapter 4 -- 4.1, 4.8
A Explain the operation of a 4 bit 2ís complement adder/ subractor. Illustrate with truth tables and figures if appropriate. What are the consequences of the four permutations of the overflow bit?
A box has two data inputs, A and B and two outputs A and B.
Chapter 5 --- 5.8, 5.19, 5.24
Latches, flip-flops, counters ----Latches: Discuss the operation of latches thoroughly. How may they be used in real world situations?
Flip-Flops: Discuss and document the operation of the standard D- Flip-Flop (7474)
In this discussion we will design a complete controller for a simulated dishwasher with 9 controllable cycles and two wash settings. We will first define the timing then design a circuit which will execute all appropriate functions.
FSAs are very useful when the circuit is inherently sequential. One feature is that they are readily implemented in a PLA or Programmable Logic array. Read the first part of chapter 8 and practice doing the bubble charts and state tables. In class we will develop a system which will count 1 6 4 (975)*3 2 0...
Lecture Assignment 1. -------
Lecture Assignment 1. -------
Useful computer tools