Documentation
- Due Dec 13, 2019 by 11:59pm
- Points 500
- Submitting a file upload
Please do the following as close and as best as possible and turn in the .zip file no later than the end of this week:
- Create a folder and give it your team name, please ensure that you're not zipping up a collection of folders, but this team folder as it will contain the folders described below.
- Follow these instructions to ensure clear organization and reduce the final size of the project folder. We need your final zip folder to be somewhere between 5-10MB but smaller the better. Also ensure this team folder contains the following four folders:
- Quartus project folder
- *IMPORTANT* in order to reduce the size of this folder, sort the folder by size and look at the largest files. Delete any large files created by Quartus and include only files you created. This should reduce the overall size of the project folder to something reasonable. If the folder is still very large, let us know.
- Ensure that all of your verilog files are commented and cleaned up with good indentation for readability.
- Ensure that the correct .dat files (memory initialization files) are contained within this folder.
- Please at least synthesize the project after all commenting/cleanup/deletes to ensure it still works and you didn't break it.
- "Documentation" folder with a single PDF file that includes:
- A complete description of your ISA.
- A complete description of your data path including block diagrams.
- A complete description of your memory with a memory map diagram.
- A complete description of your control including FSM diagram.
- A complete description of your I/O including block diagrams.
- A complete description of your application code including flow charts or other diagrams to illustrate the structure of your software.
- An assembler user's guide. We should be able to run your assembler and assemble your application and example codes following your instructions. Explain any special commands, error messages, platform used, and directions on how to run the assembler.
- An application user's guide. This should explain how your user interface is, and how the application code is controlled by the user. Basically explain how one should run your application, how user inputs are used and how output is presented to the user.
- "Assembler" folder
- Ensure that all of your assembler files (executables, tables, source code, etc) are contained within this folder.
- Source code should be commented, properly indented, and readable.
- Testing assembly code examples associated with the assembler, commented.
- "Application" folder
- Ensure that you have a commented application assembly code and it is readable (.asm)
- The assembled binary file for this application's assembly code (.bin)
- Any other files used in helping your system and application goes here (use descriptive filenames)
Please be diligent in creating this documentation since it will serve as the main reference point to your report, upcoming ABET certification, and to recreate any part of your project for future demos and projects in this class.
Rubric
Criteria | Ratings | Pts | ||
---|---|---|---|---|
Quartus Project files
1. All Verilog files
2. All .dat files 3. Any other additional support files if present
threshold:
pts
|
|
pts
--
|
||
Documentation
1. Make sure it is a PDF file
2. A complete description of ISA 3. A complete description of datapath with block diagrams 4. A complete description of your memory with a memory map diagram 5. A complete description of your control including FSM diagram 6. A complete description of your I/O including block diagrams 7. A complete description of your application code including flow charts or other diagrams to illustrate the structure of your software 8. An assembler user's guide. We should be able to run your assembler and assemble your application and example codes following your instructions. Explain any special commands, error messages, the platform used, and directions on how to run the assembler 9. An application user's guide. This should explain how your user interface is, and how the application code is controlled by the user. Basically explain how one should run your application, how user inputs are used and how the output is presented to the user
threshold:
pts
|
|
pts
--
|
||
Assembler
1. Assembler files
2. Source code 3. Testing assembly code examples
threshold:
pts
|
|
pts
--
|
||
Application
1. Commented application (/assembly code) and it is readable (.asm)
2. The assembled binary file for this application's assembly code (.bin) 3. Any other supporting files if present
threshold:
pts
|
|
pts
--
|
||
Total Points:
500
out of 500
|