Official catalog course description
Architectural features of modern computer architectures, including instruction set design, pipelining, memory management and bus structures. Quantitative analysis of computer design choices. Prerequisites: CSCI 202, 255.
Meetings
The course instructor for CSCI 320 is J Dean Brock. The course lectures will be delivered on Tuesday and Thursday from 1:45 PM to 3:00 PM in Robinson 217.
There will be labs held from 4:25 PM to 5:40 PM on Thursday. in Robinson 223. Because enrollment in the class exceeds the capacity of Robinson 223, the labs will occur biweekly with half the class attending each lab.If UNC Asheville is following its Late Start Schedule, the class will meet from 2:30 PM to 3:30 PM and the lab will meet from 4:50 PM to 5:50 PM.
Class home page
All class handouts, including homework assignments, can be found through the following URL:
Course topics
Fairly specific, though sometimes tentative, information about the topics covered in the course can be found on the class topics and schedule pages.
Learning objectives
- Understand the internal workings of the computer at both a hardware and software level including binary representations
- Apply Boolean logic to create digital circuits for various computer functions
- Understand the role and structure of the CPU, memory, I/O system, bus and interrupt system
- Understand the use of Hardware Description Languages for architecture design
- Understand how computer architecture impacts the efficiency of software applications.
Textbook and readings
The required textbook for the course is Digital Design and Computer Architecture, written by David Harris and Sarah Harris of Harvey Mudd’s Engineering program. This book is published by Morgan Kauffman (ISBN 978-0-12-370497-9). and has a useful collection of companion materials.
Microcontrollers: From Assembly Language to C Using the PIC24 Family, the required textbook from last term’s CSCI 255, becomes the recommended textbook for this course. This book is written by Robert Reese, J. W. Bruce, and Bryan A. Jones and published by Course Technology (ISBN 978-1-58450-583-9).
Software
Software used in this course will be available in the department’s workstation laboratory.
You can install the free web edition of Quartus II on your personal computer, if you have 11GB of disk space. However, you should be fine just installing the ModelSim-Altera Verilog simulator, which still requires 3GB. This software is not available for Mac OS X.
We will also use the QtSpim simulator which is available for Linux, Mac OS X, and Windows.
If you want to work on the Microchip PIC at home, you will need the MPLAB X IDE and the MPCLAB XC16 compiler. This are also available for Linux, Mac OS X, and Windows.
Grades
The following weights are used in computing the course grade.
Grade component | Weight |
---|---|
Three in-class exams | 40% |
Homework | 30% |
Class project and presentation | 20% |
Lab participation | 10% |
Exams
There will be three exams given in the class. The first two will last the entire class period and the last exam will last about one half of the class period. The two longer exams will each count for 16% of the class grade and the shorter exam will count for 8% of the class grade.
All exams will be closed book and closed notes. A reference sheet will be provided which lists detailed information, such as the syntax of Verilog, which would be burdensome (and unproductive) to memorize.
UNC Asheville’s Academic Policies and Procedures do provide excused absences for “travel on university-sanctioned business” and “up to two excused absences per semester for religious observances” when seven days notice is given. The seven day notice will allow students to avoid scheduled exams. For this reason, attendance at all exams is mandatory.
Homework and assignments
Students will complete near-weekly assignments to be turned in at class or submitted via the UNCA moodle system.
Homework ranges from simple written exercises to Verilog or assembler or circuit design assignments.
Students are required to cite any sources, including other the work of other students, used in completing their assignments. If this is not done, no credit will be given for the homework. Use of other sources can result in adjustments to the homework grade.
All homework has a specific due time. Any late homework must be submitted to the late assignment bin as discussed in the policy on late assignments.
Project and presentation
Each student in this class will complete and present a project related to a chosen course topic in the last half of the course. Here are some examples of appropriate projects. Notice that many of these do require acquiring knowledge beyond that presented in class exercises.
- Produce a tutorial and examples, appropriate for a Junior-level CSCI students, on some small aspect of Verilog.
- Write and document the use of a SPI or I2C device with the Microchip PIC, the Arduino, or the Raspberry Pi.
- Write a useful JavaScript application to illustrate an aspect of computer architecture, such as virtual memory or cache access.
- Write and test a Verilog program to simulate a computer architecture.
- Write an parallelized Verilog application.
Labs
Because the number of students enrolled in CSCI 343 exceeds the capacity of available computer labs, the class will be divided into two groups. The groups will meet on alternating weeks.
In general, the lab grade is passed on participation. Students attending lab and working diligently should do well on the lab component. Students sending TXT message may not. Each student is expected to type every keystroke required to complete a lab assignment.
The lowest lab grade will dropped in computing the lab grade average.
Scale
The following numerical scale will be used in assigning grades based on Score, the score computed using the weights described above.
Score ≥ 93 | A |
Score ≥ 90 & Score < 93 | A- |
Score ≥ 87 & Score < 90 | B+ |
Score ≥ 83 & Score < 87 | B |
Score ≥ 80 & Score < 83 | B- |
Score ≥ 77 & Score < 80 | C+ |
Score ≥ 73 & Score < 77 | C |
Score ≥ 70 & Score < 73 | C- |
Score ≥ 67 & Score < 70 | D+ |
Score ≥ 60 & Score < 67 | D |
Score < 60 | F |
There will no “rounding-up” in computing the final grade. A score of 69.95 is less than 70 and results in a grade of D+.
Accommodations for Students with Disabilities
The University of North Carolina at Asheville is committed to making courses, programs and activities accessible to persons with documented disabilities. Students requiring reasonable accommodations must register with the Disability Services Office by providing supporting documentation. All information provided will remain confidential. For more information please contact the Disability Services Office at (828)232-5050 or disabilityservices@unca.edu or visit them in the OneStop Student Services Center.
Preventing Sexual Harassment
Title IX of the Education Amendments of 1972 prohibits sex discrimination against any participant in an educational program or activity that receives federal funds. The act is intended to eliminate sex discrimination in education. Title IX covers discrimination in programs, admissions, activities, and student-to-student sexual harassment. UNC Asheville’s policy against sexual harassment extends not only to employees of the university but to students as well. If you encounter unlawful sexual harassment or gender based discrimination, please talk to any University Responsible Employee who will report the incident; contact Jill Moffit, UNC Asheville’s Title IX Administrator, at (828)232-5658; or report anonymously at http://publicsafety.unca.edu/police/anonymous-crime-tip-submission . For more information regarding Title IX and resources concerning sexual harassment and its prevention please visit: http://publicsafety.unca.edu/title-ix .
Email Communication
Academic administrators at UNCA have told instructors that information protected by the Family Educational Rights and Privacy Act should only be sent to official university email addresses. Information related to recorded grades is clearly protected, as is any discussion that would allow a reader to draw conclusions about your performance or attendance in class.
For more information
The best way to get in touch with me is to send email to brock@unca.edu. If you need to see me, send me email to arrange an appointment.
I get lots of email, so please include CSCI 320 in the subject line.