MASSACHUSETTS INSTITUTE OF TECHNOLOGY DEPARTMENT OF ELECTRICAL
ENGINEERING AND COMPUTER SCIENCE
6.004 Computation Structures Lab #1
Introduction to JSim
In this lab, well be using a simulation program (JSim) to make some measurements of an Nchannel mosfet
9. Finite State Machines
The memory devices introduced in Chapter 8 allow us to build digital systems, and
components of digital systems, whose output reflects values of stored state variables as well
as current inputs. A common implementation
for such sy
11. Performance Measures
Much of the attention of real-world engineers is devoted to the exploration of alternative
approaches to solving a problem at hand, each of which involves different tradeoffs between
various cost and performance parameters. To app
12. Design Tradeoffs
The circumspect engineer, given a problem to solve, inevitably faces a wide range of plausible
alternative design choices. Typically, alternative paths to solving a problem differ in various
cost and performance parameters, including
7. Combinational Logic
Armed with the abstract model of combinational devices outlined in Chapter 5 and the concrete
implementation technology for simple gates of Chapter 6, we turn out attention to techniques for
constructing combinational circuits that
3. Information
This subject focuses on systems whose goal is the processing of information; that is, systems
which take information as their inputs and produce information as their outputs. Much of its
focus is on technology for representation of informat
10. Synchronization and Arbitration
The engineering discipline introduced in Chapter 8 allows us to design sequential circuits that
are provably reliable so long as setup and hold time constraints - our dynamic discipline - is
adhered to in the timing of
4. Circuits
Digital systems can be built using a variety of underlying physical technologies: mechanical,
chemical, biological, hydraulic, and many others. While many of the lessons of this subject
apply to systems built using any physical mechanism, we f
6. CMOS
Having explored the powerful combinational device abstraction as a model for our logical
building blocks, we turn to the search for a practical technology for production of realistic
implementations that closely match our model. Our technology wis
5. The Digital Abstraction
Having explored ways to use a binary channel capable of transferring bits between a
transmitter and receiver, we now turn to the problem faced by the channel itself: physical
representation of individual ones and zeros in a form
6.004 Computation Structures Lab #5
Preparation: the descriptions of Beta assembly programming in lectures 11, 12 and 13 will be
useful when working on this lab.
In this lab youll have the opportunity to write your first Beta assembly language program. Yo
Problem 1. Measuring informationA. Someone picks a name out of a hat known to contain the names of 5
women and 3 men, and tells you a
man has been selected. How much information have they given you about the selection?
There are 8 names to start with and
CMOS technology
Problem 1. The following diagram shows a schematic for the pulldown circuitry for a particular
CMOS gate:
A.
What is the correct schematic for the pullup circuitry?
To figure out the complement of a FET circuit, decompose it into SERIES an
The digital abstraction
Problem 1. The behavior of a 1-input, 1-output device is measured by hooking a voltage source
to its input and measuring the voltage at the output for several different input voltages:
We're interested in whether this device can se
Sequential logic and memory components
Problem 1. Consider the following diagram of a simple sequential circuit:
The components labeled CL1 and CL2 are combinational; R1 and R2 are edge-triggered flip
flops. Timing parameters for each component are as not
6.004 Computation Structures Lab #8
Instructions
1.
Make a private copy of /mit/6.004/bsim/lab8.uasm
2.
Run lab8.uasm and look through the code to figure out how it works
3.
Modify lab8.uasm as described below and test your changes
4.
There is no automate
6.004 Computation Structures Lab #6
Preparation: the description of the Beta implementation in lecture 14, the ALU function codes
from Lab #3, and the Summary of Instruction Formats will be useful when working on this lab.
Note: this is a long assignment,
MASSACHUSETTS INSTITUTE OF TECHNOLOGY DEPARTMENT OF ELECTRICAL
ENGINEERING AND COMPUTER SCIENCE
6.004 Computation Structures Lab #2
Your mission this week is to design and test a CMOS circuit that performs addition on two
unsigned 4-bit numbers, producing
MASSACHUSETTS INSTITUTE OF TECHNOLOGY DEPARTMENT OF ELECTRICAL
ENGINEERING AND COMPUTER SCIENCE
6.004 Computation Structures Lab #4
Preparation: the description of Turing Machines in Lecure #10 Models of Computation will
be useful when working on this lab
Synthesis of combinational logic
Problem 1. A certain function F has the following truth table:
A B C| F =|= 0 0 0| 1
0 0
0 1
0 1
1 0
1 0
1 1
1 1
A.
B.
1| 0 0| 0 1| 1 0| 1 1| 1 0| 0 1| 1
Write a sum-of-products expression for F.
_ _ _ _F = A*B*C + A*B*C +
MASSACHUSETTS INSTITUTE OF TECHNOLOGY DEPARTMENT OF ELECTRICAL
ENGINEERING AND COMPUTER SCIENCE
6.004 Computation Structures Design Project
Instructions
1.
MAKE SURE you have the latest beta.uasm and project files.
2.
optimize your Beta design as describe
8. Sequential Logic
An important characteristic of combinational circuits is their inherent finiteness: every
combinational circuit
is composed of finitely many gates;
has finitely many inputs and outputs;
has finitely many input-output paths;
performs fi