Information for Course Instructors
 
Slides:
 
Powerpoint Slides of Figures in Text

For a free Powerpoint Viewer from Microsoft click here,
go to the download area and search for Powerpoint Viewer
 

Meta Assembler for Altera Computer Design Projects
 
Here is a new link to the meta assembler. It can easily generate code for the example Altera UP1 based computer designs in the book (or any others) and it is pretty easy to use. You need to make a definition file that defines instruction formats and then you have an assembler that outputs object code as Altera MIF files. To make it easier you could give students the definition file for a given instruction set and they would just use it as a normal assembler. It also supports macros and produces a typical listing file. The syntax is based on an old meta assembler from the 70's. I was unable to find any meta assemblers around on the web. They were pretty popular in the 70's for bit slice when everyone made up their own instruction set and seemed to have all vanished in the 90's. Here is a format definition and assembly example for the simple computer.
 


Example Courses:
 

Mike Furman's ECE 2031 Lab Handouts(pdf)
2031 is the first digital systems lab for ECE students.
2031 has around 400-500 students per year.
Photos of lab equipment
Class web pages

Realplayer Video Lectures
Video Lecture on Train Problem in Chapter 7 (realplayer)
Draft of Video Lecture on Simple Computer in Chapter 8 (realplayer)

Contact Mike Furman, if you are interested in the 2031 WebCT
material mike.furman@ece.gatech.edu

CmpE 2510/3510 Computer Architecture
2510/3510 is an undergraduate computer architecture class that currently uses
the MIPS VHDL model from Chapter 13 of the text and the Altera tools. This is a
short paper that briefly describes how the MIPS VHDL model is used in
laboratory assignments.

CmpE 4500/4510 CmpE Sr. Design Project
CmpE 4500/4510 is a capstone design course where teams of students design
a processor using the Altera tools and a UP 1 board upgraded with a 10K70.
This short paper contains a brief description of the course.


For a Desk Copy of the text contact:

Denise Giddings
Phone: (781)-871-6600
Fax:     (781)-681-9045
Email: dgiddings@wkap.com

or

Carl Harris
Kluwer Academic Publishers
101 Philip Drive, Assinippi Park
Norwell, MA 02061
Phone: (781)-871-6600
Fax:     (781)-871-7507
Email: carl.harris@wkap.com


 

For information on obtaining Altera UP 1 boards and tools for an instructional lab contact:
 

Tawfiq Mossadak
Acting University Program Manager
Altera Corporation
101 Innovation Drive
San Jose, CA 95134
Phone: (408) 554-8274
Fax: (408) 554-6401
Email: TMOSSADA@altera.com


Other items needed for a Lab with UP 1 Boards:

 
Here is a suggestion for a power supply, Jameco,  DV91A - DC Wall Transformer 9VDC
at 1000MA. Radio Shack also has some but be careful to get the correct voltage, current,
polarity, and a female 2.5MM x 5.5mm connector. Supplies over 9V DC and up to 12V DC
can be used but they tend to really heat up the UP 1's 5V DC on board regulator.
If you plan to use a keyboard or mouse attached to the UP 1 board a 1000 MA output
is recommended, since the UP 1 must also provide power to them.

A small heat sink for the UP 1 voltage regulator is not a bad idea. DigiKey ,  HS213
or Jameco, 158051 is small enough to fit in the tight space so that the regulator can be bent back down
on the board's surface.

A longer 25pin to 25pin PC M/F parallel cable is also useful since the byteblaster cable
is very short.  You will need all 25 wires connected in the cable. Any computer
store or electronic parts mail order catalog should have these for a few dollars.

If you ever need to replace the MAX chip, be sure to use a PLCC extraction tool.
The 84pin AMP PLCC extraction tool available from DigiKey works well.
 
 


Here is the vendor we used to upgrade a UP 1 board with a 10K70:
 

The 10K20 is replaced with a 10K70. Surface mount rework and soldering is
required. This is useful on large projects (up to 70,000 gates). A
professional version of the Altera tools is also required for 10K70
support. You will need to get the 10K70's from Altera first. Contact info is:
 
Neat Inc
Randy Nantz
430 Dandy Road
Dallas, GA 30132

Phone: 770-445-2345
 
 

Here is a vendor we have used for small Printed Circuit Board (PCB) Fabrication.
 
This is handy if you need to make an add-on board for the UP 1.
The PCB CAD software is free and you can order and get estimates via the WWW.
 
http://www.expresspcb.com/

 

Here are some links for robot parts:
 

Mail order R/C prices can be as much as 50% lower than a local hobby shop.
Tower Hobbies  http://www.towerhobbies.com
P.O. Box 9078
Champaign, IL 61826-9078
800-637-6050

 
IR Proximity, Line Tracker, and Sonar sensor kits for robots can be obtained via mail order from:
Lynxmotion, Inc.  http://www.lynxmotion.com
104 Partridge Road
Pekin, IL 61554-1403
309-382-1254

 

Mondotronics  http://www.robotstore.com

4286 Redwood Highway #226
San Raphael, CA 94903
800–374–5764

 
IR data sheets and Polaroid Sonar sensor kits can be obtained via mail order from:
Wirz Electronics  http://wirz.com
P.O. Box 457
Littleton, MA 01460-0457
888-289-9479

        They also have a new low-cost IR ranging device, Sharp GP2D02, at
 

http://www.hobbyrobot.com/sensors/GP2D02.html
At a Sharp electronics distributor in quantity 10 the price is as low as $11
 
 
Polaroid Sonar sensor kits can also be obtained via mail order from:
Acroname  http://www.acroname.com
P.O. Box 1894
Nederland, CO 80466
303-258-3161

 
Low-cost digital and analog compass sensors are available via mail order from:
Dinsmore Instrument Co.  http://www.dinsmoregroup.com/dico
P.O. Box 345
Flint, Michigan 48501
810-744-1790



    We had problems with students not adding a time delay for compass measurements after turning the robot,

    so we made a movie of a real compass.
    Here are some sites with instructions and more pictures of servo modifications:
            http://www.seattlerobotics.org/guide/servohack.html

            http://www.rdrop.com/users/marvin/
 

        Here is an interesting paper from CMU on building small robots:

           Rapid Prototyping of Small Robots
 

Here is a UP1bot test program used to adjust the servo dead zone at 1.5ms.

servo_tune.zip was developed by Kim Newman at GT-Savannah (GTREP).
 

Here are several contributions from Tyson Hall, GTA - Georgia Tech

scomp.zip is a version of the simple computer design (chapter 8) with video output.
compass.zip is a VHDL program to test a robot with a compass sensor.
ir_rem.zip is a VHDL program that uses a universal TV IR remote control and an IR detector for remote control of the UP1bot. A low-cost RCA universal TV remote is used with code 062 (Magnavox?). Mike Furman has documented this code in a new lab project in the files lab12.zip

Here is a program to turn off the MAX displays and reduce the power drain when running FLEX designs

maxoff.zip is a design that should reduce the current through the voltage regulator so that it does not get so hot.
You need to program the MAX chip once with this design - don't forget to change the jumpers.
 

Here is a fast way to find chips and get prices from electronics distributors:

         http://www.findchips.com
 

Here is a nice tool to help students understand LFSRs from Jean Nicolle:

LFSR testbench will generate schematics, show sequences and generate VHDL or Verilog code.

Here is a larger character generation ROM with lower case characters:

CGENROM is a 4K by 8 ROM MIF file  with lower case, some graphics, and reverse video characters. Unless you have a CPLD larger than a 10K20, you will need to reduce the size of the ROM and edit out some of the characters to get it to fit in 12K bits of EAB memory on the 10K20.

Here is a Verilog version of the simple computer design:

Scomp.v and Scomp.scf are files for a Verilog version of the simple computer. The program.mif file is the same as
the VHDL version that comes on the book's CDROM.

Here is a link for free MIPS and the SPIM simulator documentation:
MIPS information contains a detailed list of MIPS instructions and a free MIPS simulator called SPIM. A PDF version of appendix A from Patterson and Hennessy's text is available there.
 

Here is a nice utility to make slides or listings from VHDL code:
MVP - Georgia Tech's DOS version of Make VHDL Pretty, cleans up messy VHDL code and makes a text, html, or ps output file. VHDL keywords can be put in bold and comments in italics in the listing file.  HTML output files have colored text like the Altera editor. Type mvp without options for command line syntax.  Here is a typical command line mvp -uKF6 -S"My Subject" -N"Who am I?" my_file.vhd > outputfilename. Use "> printername" to redirect postscript output directly to a printer instead of a file.  Text output can also be produced.   Windows beta version of MVP from Scott Barnes. Latest version of MVP from Jason Trammell. (Known bugs: HTML output will strip off ">"s in VHDL code (PS output is OK)).

Here are some relevant Newsgroups

FPGA (comp.arch.fpga)
VHDL (comp.lang.vhdl)
 

--------------------------------------------------------------------------------