Companion CD-ROM: unsw/elec2041 directory

The unsw/elec2041 directory contains information specifically for ELEC2041 Microprocessors and Interfacing. In particular, you can find the full text of the experiments you will be doing in the Digital Systems Laboratory; see the Laboratory Manual below to access these.

Please Note: This version of the Companion CD-ROM does not contain the lecture notes for ELEC2041 Microprocessors and Interfacing: you can obtain these notes and other course-specific information from the ELEC2041 Web site.

You should take the time to familiarise yourself with the contents of this CD-ROM. In particular, you will find the information in this unsw/elec2041 directory and in the unsw/common directory most useful. If at all possible, you should read through at least some of the example programs — these will definitely help you with your ARM assembly language programming. And all of the other directories on this CD-ROM are also worth investigating!

The Laboratory Manual

This Companion CD-ROM contains the complete Laboratory Manual for ELEC2041 Microprocessors and Interfacing. The actual laboratory experiments are in this directory; the appendices may be found in other directories on this CD-ROM. For your convenience, the complete Laboratory Manual is shown in tabular format. Please note that you will need Adobe Acrobat Reader (or another PDF viewer) installed on your computer to be able to read these documents:

  Document Title Location on Companion CD-ROM
  [PDF] Cover/Title pages for the Laboratory Manual [Dir] unsw/elec2041
1 [PDF] Introduction to the Laboratory [Dir] unsw/elec2041
2 [PDF] Introduction to Assembly Language Programming [Dir] unsw/elec2041
3 [PDF] Data Types, Data Structures and Functions [Dir] unsw/elec2041
4 [PDF] Interfacing to Input/Output Devices [Dir] unsw/elec2041
5 [PDF] Operating Modes, System Calls and Interrupts [Dir] unsw/elec2041
A [PDF] Introduction to the GNU Assembler [Dir] unsw/common
B [PDF] Introduction to the GNU Compiler [Dir] unsw/common
C [PDF] Introduction to the GNU Debugger [Dir] unsw/common
D [PDF] Introduction to Komodo [Dir] unsw/common
E [PDF] DSLMU Microcontroller Board Hardware Reference Manual [Dir] board/doc
F [PDF] ARMv4T Partial Instruction Set Summary [Dir] unsw/common
G [PDF] ARM Instruction Set Quick Reference [Dir] reference
H [PDF] Atmel AT91R40008 Microcontroller Datasheet Summary [Dir] board/doc/data
I [HTML] The ASCII Character Set + [PDF] Unicode page U+0000 [Dir] reference/misc

Please note that you will need to refer to other documents and directories apart from those listed above! In particular, each experiment has its own source code directory that you will need to use; these directories are listed in the following table. In addition, some experiments come with a page of typical questions: you should answer these questions as part of your Laboratory preparation, as you will almost certainly be asked one or more of them.

  Source Code Directory on Companion CD-ROM Typical Questions
1 [List] unsw/elec2041/labs-src/exp1 [PDF] Typical Questions for Experiment 1
2 [List] unsw/elec2041/labs-src/exp2 (None available; you may wish to use the checking scripts instead)
3 [List] unsw/elec2041/labs-src/exp3 (None available; you may wish to use the checking scripts instead)
4 [List] unsw/elec2041/labs-src/exp4 [PDF] Typical Questions for Experiment 4
5 [List] unsw/elec2041/labs-src/exp5 [PDF] Typical Questions for Experiment 5

Installing the Software

If you like, you may install the software on this CD-ROM onto your home computer. This will allow you to use the simulator to do parts of your experiments outside of the Laboratory. Simply follow the list of steps in the Getting Started section of the main README.html file.

Please note: You do not have to install the Xilinx FPGA Tools for this course; you only need the GNU Tools.

Please note that although the source code to the Komodo debugger is available, it is not supported for use outside the Laboratory at the present time. In other words, although you can follow the instructions to install Komodo on your system, “if it breaks, you get to keep both pieces”! This may change in the future; please make sure you check the ELEC2041 Web site for any updates.

Using the Checking Scripts

You can use the checking scripts in the [List] unsw/elec2041/checking directory to help check whether your programs for Experiments 2 and 3 work correctly. Remember, however, that even if your program passes the checking script, it does not mean that it is correct and without bugs! (See the challenge in Experiment 1 Task 3 for an example of this). Furthermore, these scripts are not supported for use outside the Laboratory.

In order to use these checking scripts successfully, you need to ensure that you have the Expect package installed on your system. How to do so is beyond the scope of this note; a good way to check if it is installed is to type “expect -v”: if the result is similar to “expect version 5.x.y” (for some x and y), then you have the necessary program. If not, consult expert help…

To actually use these checking scripts, simply mount the CD-ROM as usual and run the appropriate script. For example, to check if your program works for Experiment 3 Checkpoint 1, type the following at the Linux shell prompt:

/mnt/cdrom/unsw/elec2041/checking/checkit-exp3-1

Please note that the “$” indicates the Linux shell prompt: you don’t type it in. This command also assumes that you have already mounted this CD-ROM on your computer, and that the mount point (where the CD-ROM can be found within the file system) is /mnt/cdrom; see the instructions for mounting the CD-ROM for more details.

Updates

This Companion CD-ROM may be updated at any time. Please make every effort to keep up-to-date by regularly checking the Companion CD-ROM Web site for any updates, changes, corrections and additions. In particular, you should always check that site before starting any particular laboratory experiment!

If you find any problems with this CD-ROM, please let your lecturer (Dr. Saeid Nooshabadi, saeid@unsw.edu.au) know. Alternatively, you might like to contact John Zaitseff (the author of this CD-ROM) directly by sending e-mail to J.Zaitseff@unsw.edu.au. You can send any comments, suggestions and corrections to either your lecturer, Dr. Saeid Nooshabadi, or to John Zaitseff.

Directory Contents

[Root] CD-ROM Root Directory
[Dir] unsw: Information specific to the Digital Systems Laboratory
[Dir] elec2041: Information for ELEC2041 Microprocessors and Interfacing   This is the current directory
[File] README.html: The file you are currently reading
[File] experiments-cover.pdf: Cover/Title pages for the Laboratory Manual
[File] experiment1.pdf: Laboratory Experiment 1: Introduction to the Laboratory
[File] experiment2.pdf: Laboratory Experiment 2: Introduction to Assembly Language Programming
[File] experiment3.pdf: Laboratory Experiment 3: Data Types, Data Structures and Functions
[File] experiment4.pdf: Laboratory Experiment 4: Interfacing to Input/Output Devices
[File] experiment5.pdf: Laboratory Experiment 5: Operating Modes, System Calls and Interrupts
[File] experiment1-questions.pdf: Typical Questions for Laboratory Experiment 1
[File] experiment4-questions.pdf: Typical Questions for Laboratory Experiment 4
[File] experiment5-questions.pdf: Typical Questions for Laboratory Experiment 5
[Dir] labs-src: Source code for the Laboratory Experiments
[Dir] exp1: Source code for Experiment 1
[Dir] exp2: Source code for Experiment 2
[Dir] exp3: Source code for Experiment 3
[Dir] exp4: Source code for Experiment 4
[Dir] exp5: Source code for Experiment 5
[Dir] misc: Miscellaneous source code
[Dir] checking: Checking scripts for the Laboratory Experiments 2 and 3