ECE573 Project Home Page

Project Help

No TA is available for ECE573. However, TAs for ECE495S provide some help for ECE573 students. The first six project steps are the same for both classes.
Check the ECE495S Project Home Page for details.

In case of differences (for the first six steps) between the project specifications for ECE495S and the ones given on the ECE573 syllabus, the ECE495S specifications take precedence. Note, however, that the ECE573 project deadlines are earlier.

Project Step 7

Contrary to the brief description on the syllabus, it is recommended to add the scheduling pass after register allocation.
Use the following cycles per instructions:
  • all instructions that read or write memory: 4 cycles
  • multiply and divide operations (on registers): 2 cycles
  • others: 1 cycle

    Note that project steps 7 through 9 will be submitted to and graded differently that the first 6 steps.

    Submission Instructions (steps 7 through 9)

    There are two options for turning in your project. For either method, include any useful instructions in a README file and indicate ECE573 in the subject of your email.

    Please do not include the binary for the simulator.

    New: If possible, please provide flags to turn on/off instruction scheduling and global common subexpression elimination.

    Option A:

    1. tar-gzip your project directory
    2. Upload the tar.gz file to a web-accessible location
    3. Email the URL for the file to troyj at ecn dot purdue dot edu

    Option B:

    1. tar-gzip your project directory
    2. Email the tar.gz file as an attachment to troyj at ecn dot purdue dot edu

    The code in TinyNew.C has the following instruction latencies. You can use these, or the latencies given above. Some projects have already been turned in using the latencies above.

    #define LAT_MOV_rl 1
    #define LAT_MOV_m 5
    #define LAT_INT_rl 1
    #define LAT_INT_m 6
    #define LAT_FP_rl 3
    #define LAT_FP_m 8