CS465: Computer Systems Architecture (Spring 2015)
    
    
    1 Course Basics
    Meeting Time and Location:
    
      - T 4:30-7:10pm, Robinson Hall A111
Instructor: Dr. Yutao Zhong
    
      - Email: yzhong (at) gmu (dot) edu 
- Office: Engineering Building 5337
- Schedule
          (Tentative) 
 
    Graduate TA: TBA
    Course Outcomes:
    
    
      - Be able to explain the organization of the classical von
        Neumann machine and its major functional components 
- Be able to compare performance of simple system configurations
        and understand the performance implications of architectural
        choices 
 
- Be able to show how instructions are represented at both the
        machine level and in the context of a symbolic assembler; be
        able to understand small MIPS programs and write MIPS assembly
        program segments 
 
- Be able to use different formats to represent numerical data
        and convert numerical data from one format to another 
 
- Be able to explain how an instruction is executed and the
        concept of datapaths and control 
 
- Be able to explain basic instruction level parallelism using
        pipelining and the major hazards that may occur 
 
- Be able to explain the effect of memory latency on running
        time; be able to describe the use of memory hierarchy to reduce
        the effective memory latency, in particular, the role of cache
        and virtual memory; be able to understand the principles of
        memory management
- Be able to explain the basic issues related to concurrent
        programming 
 
Prerequisite:
    C or better in CS 367.
    
    Textbook:
    
      - Required - Computer Organization and Design: the
        Hardware/Software Interface, 5th edition, John L. Hennessy and
        David A. Patterson, Morgan Kaufmann, 2014.  Companion
          Material 
Other Useful Resources:
    
      - Piazza:
        Announcements, lecture slides, assignments, discussion. Contacts
        and office hours will be on Piazza too.
 
- Blackboard:
        Grades and assignments submitting.
    
    2 Grading
    
      
        
          | Category 
 | Percent 
 | 
        
          | Homework 
 | 50% 
 | 
        
          | In-class exercises 
 | 5% 
 | 
        
          | Midterm 
 | 20% 
 | 
        
          | Final exam 
 | 25% 
 | 
      
    
    Assessment
    Letter grades will be assigned by subjectively identifying
      brackets in the numeric scores. In order to obtain an A, your
      final score should be at least 90. A total score of less
        than 60 will result in an F.
    Homework
    
      - Homework assignments will require some programming. 
 
- Homework assignments must be done on an individual basis
        unless stated otherwise.
- Please ensure that the assignments are submitted on-time to
        Blackboard, before class begins (hard-copy and soft-copy). No
          late submissions.
- Catastrophic computer failure will not be cause for an
        extension. Use a backup service such as DropBox (or any cloud
        service), emailing yourself, storing to a USB drive, whatever it
        takes. 
 
      
    
    
    Exams
    
      - Exams are closed book/notes unless specified otherwise by
        instructor.
 
- They will be entirely paper and pencil - no computers.
- All students must have their GMU identification available on
        testing days
 
- If you know in advance that you are unable to make an exam for
        a valid and unavoidable reason (such as a scheduled surgery,
        etc), you must notify the professor at least one week before the
        scheduled exam date to make arrangements for a make-up, and
        bring documentation with you when you take the make-up. 
 
- If you miss an exam due to a university-accepted excused
        absence (such as an illness or car accident the day and time of
        the exam), you must notify your professor within 24 hours of
        your absence to make arrangements for a makeup, and bring
        approved documentation with you when you take the make-up exam.
        Failure to follow either of these policies will result in a
        zero. We may also elect to allow the final exam to count the
        extra amount to give you a sort of do-over. 
- The final will not be given early. You are starting the course
        with knowledge of the schedule (see GMU's Final Exam Calendar
        for the latest schedule, updated as weather events require).
 
Attendance
    
      - Attendance is not compulsory but highly recommended for doing
        well in the class. 
 
- In-class exercises require classroom attendance and 5% grade
        is devoted to it.
 
Discussion board
    
      - Students are encouraged to use the discussion board, Piazza,
        to ask and answer questions.  
- No sharing answers to homework assignments on the discussion
        board.  
 
- Under no circumstances should code be posted publicly to the
        discussion board. Students can post questions and code
        privately, although the instructor reserves the right to make
        any post public, so that other students can see the responses. 
Other
    
    
      - There will be no make-up or extra-credit assignments at the
        end of the semester; your grade should be a measure of your
        semester-long progress.
 
- Contesting of grades on any/all submissions must be requested
        within one week of the item's return. No grade changes will be
        considered subsequent to that deadline, or after the final exam
        meeting.
- IN (Incomplete) policy as indicated in the catalog will be
        strictly adhered to. You must provide the necessary back-up
        documentation (e.g. medical certificate) for your application to
        be considered favorably. In all circumstances, the written
        request, with all the back up documentation, must be received
        before the final exam week.
    
    3 Honor Code
    All students are expected to abide by the GMU Honor Code.
      This policy is rigorously enforced. All class-related assignments
      are considered individual efforts unless explicitly expressed
      otherwise (in writing). Cheating on any assignment will be
      prosecuted and result in a notification of the Honor Committee as
      outlined in the GMU Honor Code. Sharing, collaboration, or looking
      at any code or algorithm related to programming assignments that
      is not your own is considered cheating.
      
      The computer science department has an additional, more
      restrictive CS
        Honor Code that you are also subject to. Make sure you read
      and familiarize yourself with these rules. We use automated
      software to flag suspicious cases, and then review them by hand to
      find the cases that must be submitted to the Office of Academic
      Integrity. The penalty for cheating will always be far worse than
      a zero grade, to ensure it's not worth taking the chance.
      Confirmed cases of cheating almost always translate into course
      failure.
      
    
    It is your responsibility to lock your computers with a
    password, to not post your code to websites like Pastebin that are
    publicly accessible, to guard your USB drives and computers, to not
    upload your files to someone else's computer, etc. You will be
    liable for any access gained to your code. Stating that "I don't
    know how he/she got access to my code", or "I left the room and they
    stole my code" are not an acceptable excuses in an honor code
    violation. 
    
    4 Learning Disabilities
    Students with a learning disability or other condition
      (documented with GMU's Office of
        Disability Services) that may impact academic performance
      should speak with the professor ASAP to discuss appropriate
      accommodations.