C S C 2 1 4 COMPUTER ORGANIZATION AND ARCHITECTURE ...

6 downloads 110 Views 142KB Size Report
The Essentials of Computer Organization and Architecture, 3rd Ed., Null and Lobur,. ISBN 978-1-4496-0006-8, Jones & Bartlett, 2012. OTHER MATERIALS:.
CSC 214 COMPUTER ORGANIZATION AND ARCHITECTURE Spring 2014, MW 2:30 p.m.-3:45 p.m., BU 343 Dr. Robert Strader, 303t McGee, [email protected] PREREQUISITE:

CSC 202 with a C or better

OFFICE HOURS:

9:45 a.m. - 11:00 a.m., 2:00-2:30 p.m. - 3:45-4:15 p.m., MW; 11:00 a.m. - 12:15 p.m., 12:30 p.m. - 2:00 p.m. TTh By Appointment, M-F.

REQUIRED MATERIALS FOR CSC 214: The Essentials of Computer Organization and Architecture, 3rd Ed., Null and Lobur, ISBN 978-1-4496-0006-8, Jones & Bartlett, 2012. OTHER MATERIALS: Any C programming reference book. Calculator – “four function” for homework and tests. EXAMINATIONS: (~57% of the course grade) 2 Class Examinations (each 100 points) Final Examination -- Comprehensive (200 points) Note: There are no exemptions from the final examination. Check the final exam time. If the final exam time (F, 05/09/14 10:30 a.m. - 12:30 p.m.) is a problem, you need to drop this course. ASSIGNMENTS: (~43% of the course grade) Lab assignments (100 pts) Projects (100 pts) Homework assignments (100 pts) Attendance and class participation - expected GRADING: 89 A; adjusted for difficulty LITERATURE: IEEE/CS Computer ACM Communications

TK 7885 A1 I6 QA 76 A772 CLASS INFORMATION AND POLICIES

Department of Computer Science, McGee 303, 468-2508 Attendance & Class Behavior: Roll will be taken regularly. Attendance will not be taken into consideration for your final grade. If you are absent from class, please do not come by my office and ask me to repeat the class lecture. There will be no smoking, no chewing of tobacco, no eating or drinking, no bare feet, and no wearing of hats during class. Please keep your feet off of the seat backs and seats. No disruptive behavior including offensive language will be tolerated in a computer science facility or related activity. Such behavior may result in administrative removal from class. Cell phones and pagers should be turned off for the duration of class. Only students officially registered for the course and approved assistants may attend class. Examination Policy: All class examinations are considered to be a major part of the course work upon which a large part of the course grade depends. There are NO make-up exams! Class examinations will be announced at least two classes prior to the examination. If you have a conflict with another university event, you must contact me well in advance of the examination. In case of an extreme emergency, contact me before the scheduled examination. Failure to do so may result in an examination grade of zero. Assignment Policy: All assignments are due at the BEGINNING of class (or by an announced time) on the specified due date. That means any assignment given to me after I have collected the assignments from the class is considered to be late. There will be NO late assignments accepted without an appropriate reason (doctor's note, university event see above, etc.). Under NO circumstances will any assignment be accepted for credit after the collected class assignments have been graded and returned. DO NOT place assignments in my box or under my office door. If you have a conflict, please contact me in advance. PLEASE NOTE: You may be given assignments during the last five class days of the semester. Software Policy: Disciplinary action will be taken against individuals who perform unauthorized duplication of software or who are involved in the unauthorized use of duplicated software. Such action may make it impossible for you to successfully complete this course. Computer Laboratory Usage: Students utilizing equipment in university computing laboratories are expected to read and abide by all posted policies for the laboratories. Please note that no children and no pets are permitted in university computing laboratories. Drop Policy (Univ.): The date (03/19/14) is the last day to drop this course with a W. Special Accommodation Requests: Students with special accommodation requests have the responsibility to immediately initiate a meeting with the instructor to discuss how the special accommodations will be provided. Students who are aware of these special needs at the beginning of the semester must inform the instructor in person before the fourth class day about any class activity, which will require special accommodations. Computer Account Policy: All assignments that require the use of the University Computer must be done under the computer account that is assigned to you in this class. You should NOT do other class assignments in this account, and you should NOT do assignments from this class in other accounts. Failure to abide by university and departmental computer account policies could mean receiving a grade of F in this course. Cheating Policy: If in my judgment a student is found cheating on an examination, a grade of zero will be assigned as the examination grade and a minimum of one (1) letter grade will be lost in the course grade. A course grade of F may be assigned depending on the situation. A student found cheating on an examination may not drop the course. All class assignments are to be done INDEPENDENTLY unless part of a team project. If in my judgment two or more people hand in (non-team) assignments that I judge to be the same, a grade of zero may be awarded to all involved assignments and a minimum of one letter grade may be lost in the course grade. A recurrence of this

by any individual will result in a grade of F in the course. Students should save all developmental copies of their programs so that individual program development can be verified by me if I think it is necessary. DO YOUR OWN WORK!!!!! Do NOT show other students your code!!! Identification: Valid student I.D. cards must be presented on each examination day. (No I.D...No exam...Grade of zero) The following web pages contain pertinent information: The program learning outcomes for this course can be found at: http://www.sfasu.edu/cob/documents/undergraduateprogram_pdf_03.pdf, (CIS) _pdf_04.pdf , (CSC) _pdf_08.pdf (ITEC) General student policies and information can be found at:  University Academic Integrity policy: http://www.sfasu.edu/policies/academic_integrity.asp  University Withheld Grades policy: http://www.sfasu.edu/policies/course-grades.pdf  Students with disabilities information: http://www.sfasu.edu/policies/academic-accommodation-for-studentswith-disabilities.pdf Acceptable Student Behavior: Classroom behavior should not interfere with the instructor’s ability to conduct the class or the ability of other students to learn from the instructional program (see the Student Conduct Code, policy D34.1). Unacceptable or disruptive behavior will not be tolerated. Students who disrupt the learning environment may be asked to leave class and may be subject to judicial, academic or other penalties. This prohibition applies to all instructional forums, including electronic, classroom, labs, discussion groups, field trips, etc. The instructor shall have full discretion over what behavior is appropriate/inappropriate in the classroom. Students who do not attend class regularly or who perform poorly on class projects/exams may be referred to the Early Alert Program. This program provides students with recommendations for resources or other assistance that is available to help SFA students succeed. (01/13/14)

CSC 214 - COMPUTER ORGANIZATION AND ARCHITECTURE CREDIT HOURS: 3 PREREQUISITES: CSC 202 GRADE REMINDER: Must have a grade of C or better in each prerequisite course. CATALOG DESCRIPTION Architectural structure and organization of computers. Analysis of the processor components, memory structure, I/O section, and bus. Study of system component interrelationships and interactions with the system kernel and selected programming techniques.

PURPOSE OF COURSE To provide the student with a solid foundation in system level organization and architecture concepts using the operating system’s application programmer’s interface, kernel mechanisms, and data structures. To expose the student to system hardware component relationships and interactions with the system kernel via C language programming. Upon completion of this course, students should have a complete understanding of the role played by each major component of a modern computer system.

EDUCATIONAL OBJECTIVES Upon successful completion of the course, students should be able to:

1. 2.

3. 4. 5. 6. 7.

8.

Elaborate the basic principles of computer architecture and organization and to identify the factors that influence the performance of the system. Demonstrate a solid knowledge of and an ability to properly use the following C language features and facilities: indirection (pointers), data storage, selection structures, bit operations, and interrupt facilities. Describe some modern architectures such as RISC, Superscalar, VLIW (very large instruction word). Describe the operation of performance enhancements such as pipelines, dynamic scheduling, branch prediction, and caches. Describe the principles of computer system design. Explore operating system kernel interactions with the memory, I/O, peripherals, and bus system components.

Demonstrate an understanding of the standard models of computers including the instruction fetch cycle and the physical components involved in this process; memory, CPU, I/O. Demonstrate skills in problem analysis and program design.

CONTENT

Hours

Bits, Data Types, and Operations ......................................................................................................................3 Bits and the concept of a data type, type conversions Logical and arithmetic operations Integer and floating point data types, ASCII codes Digital Logic Structures .....................................................................................................................................3 Boolean algebra and DeMorgan’s Law CPU design: registers, and combinatorial logic structures Memory design; address space and addressability Computer structures, function, interconnection .................................................................................................9 Processor and register organization, bus, clock Instruction pipelining Memory organization and addressing Bus interconnection structures Input and Output in Interfacing and Communications ......................................................................................3 I/O architectures, Programmed and Interrupt-driven I/O Direct memory access I/O channels and processes Machine Issues and Concepts ............................................................................................................................6 Instruction Set Architecture: instruction organizations Memory addressing CPU structures and operations Memory Systems Organization..........................................................................................................................3 Semiconductor memory design and operation

Cache memory Memory hierarchy RISC and Multiprocessor Architectures ............................................................................................................6 Parallel and multiprocessor architectures RISC, CISC, VLIW, current High-level Language Utilization of Hardware Components .............................................................................9 C data types and variables, global and local scope Tables and space allocation for resources Control stack organization and allocation Expressions and statements; arithmetic and logical operators Control structures, data structures, and pointers Functions and parameter passing Exams (plus final) ..............................................................................................................................................3 TOTAL REFERENCES Beck, M., et.al., Linux Kernel Programming, Addison-Wesley Longman, Inc., 3rd. Ed. 2002. Bryant, R. and O’Hallaron, D., Computer Systems: A Programmer’s Perspective, Prentice Hall, 2003. Kelly, A. and Pohl, I., A Book on C: Programming in C, 4th Ed., Addison-Wesley Professional, 1998. Null, L. and Lobur, J., Essentials of Computer Organization and Architecture, 3rd. Ed., Jones & Bartlett, 2012 (will print in 4th. Ed., Spring 2014). Patt, Y. and Patel, S., Introduction to Computing Systems Second Edition, McGraw-Hill, 2004. Petzold, Code, Microsoft Press, 1999. Stallings, W., Computer Organization and Architecture, Prentice Hall, 8th Ed., 2010. Tanenbaum, A. and Austin, T., Structured Computer Organization, Peasrson, 6th. Ed., 2013. WEB REFERENCES http://www.lulu.com/product/file-download/computer-organization-and-design-fundamentals-ebook/1242053 http://www.cprogramming.com/tutorial/c-tutorial.html

45

CSC 214 - Spring 2014 Tentative Schedule

Date

Day

Topic/Reading

Ch

Assignment Completion

1/13 15 20 22 27 29 2/03 05 10 12 17 19 24 26 3/03 05 10 12 17 19 24 26 31 4/02 07 09 14 16 21 23 28 30 5/09

M W M W M W M W M W M W M W M W M W M W M W M W M W M W M W M W F

Intro., Hist., Compon., Models, PVS Ch 1 C Intro., structure, envir., C data, cntr.,func. Notes ---- MLK ---Num. sys, bases, ints, of, C arrays, ptrs, files Ch 2/Notes Booth, mult., div., Floating IEEE 754 Ch 2 Char. codes, correction/detection Ch 2 Boolean algebra, iden., comp., func. Ch 3 Logic gates, component, comb. circuits Ch 3 Combinatorial circuits Ch 3 Sequential circuits, FSM, KMaps Ch 3 Circuit Examples, Internal Circuits, Review Ch 3 Test 1 Ch 1-3 CPU basics, clocks, Marie intro., I/O Ch 4 Buses, Memory org., Interrupts process. Ch 4 Assemblers, extended instr., control, ex. Ch 4 ISAs, formats, stacks and registers Ch 5 Spring Break Instruction types, addressing, pipelining Ch 5 Pipelining, Examples, Review - Last W Ch 5 Test 2 Ch 4-5 Memory, hierarchy, caches, repl., perf. Ch 6 Virtual memory – paging, seg., examples Ch 6 I/O, Storage – perf., Amdahl, trans. Ch 7 Disks – magnetic, optical, mag. tape Ch 7 RAID, future, System software, O/S serv. Ch 7/Ch 8 System Software – VMs prog. tools Ch 8 Alt. Arch. – RISC, Flynn’s Tax., Parallel Ch 9 Easter Break Performance – measures, benchmarks Ch 9/Ch 11 Performance – opt., disks Ch 11 Summary, Review Ch 1-9,11 Final Exam (10:30 a.m. – 12:30 p.m.) All

Lab 1 Hw 1 Lab 2 Hw 2 Lab 3 Hw 3 Lab 4

Hw 4

Lab 5 Hw 5

Hw 6 Proj1a Hw 7

Proj1b Hw 8