Slides:
Powerpoint Slides of Figures in TextMeta Assembler for Altera Computer Design ProjectsFor a free Powerpoint Viewer from Microsoft click here,
go to the download area and search for Powerpoint Viewer
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 pagesRealplayer 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.eduCmpE 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.comor
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 30132Phone: 770-445-2345
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.
Here are some links for robot parts:
Mail order R/C prices can be as much as 50% lower than a local hobby shop.
IR Proximity, Line Tracker, and Sonar sensor kits for robots can be obtained via mail order from:
Mondotronics
http://www.robotstore.com
IR data sheets and Polaroid Sonar sensor kits can be obtained via mail order from:
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:
Low-cost digital and analog compass sensors are available via mail order from:
We had problems with students not adding a time delay for compass measurements after turning the robot,
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:
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)
--------------------------------------------------------------------------------