CSC 411: Computer Organization (Fall 2024)
This syllabus is subject to change at the instructor's discretion. Any modifications will be communicated to students with reasonable notice.
Course Description
CSC 411 offers a comprehensive exploration of computer organization fundamentals. The course explores the intricate interplay between hardware and software that forms the foundation of modern computing systems. Key topics include instruction set architectures, assembly language programming, processor design, memory hierarchy, and performance optimization techniques. A particular emphasis is placed on the RISC-V architecture, providing students with hands-on experience with a cutting-edge, open-standard instruction set architecture.
Prerequisites: CSC 212 and admission to a degree-granting college.
Course Information
- Instructor:
- Prof. Marco Alvarez
- Office Hours: By appointment (contact via Ed)
- Lectures:
- MW 4:30-5:45p
- Lab:
- T 5-5:50p (via Zoom)
-
Teaching Assistants:
-
Office Hours: All office hours will be held in the Computer Science Department's lounge on the top floor of Tyler Hall. Office hours will be held in person, but students may also attend virtually via Zoom.
-
Calvin Higgins: M 10-12p
- Emily Light: T 11-1p
- Calvin Higgins: T 3-5p
- Liam Cannon: W 12-2p
- Liam Cannon: Th 11-1p
- Emily Light: Th 2-4p
-
Required Textbook
- Computer Organization and Design RISC-V Edition: The Hardware/Software Interface, 2nd edition, David Patterson and John Hennessy, 2020
Recommended Textbooks
- Digital Design and Computer Architecture, RISC-V Edition, 1st edition, Sarah Harris and David Harris, 2021
- Computer Systems: A Programmer's Perspective, 3rd Edition, Randal E. Bryant and David R. O'Hallaron, 2016
- Computer Organization and Architecture, 11th Edition, William Stallings, 2019
Support Tools and Technologies
Students in this course will utilize the following platforms for communication, assignments, and assessment. All students are required to use their primary email from eCampus for accessing these platforms. Automatic registration will be provided for students.
Ed Discussion: Serves as the primary platform for academic discussions, polls, and quizzes. Ed facilitates student engagement with peers and instructors, fostering knowledge sharing and comprehension of key computer organization concepts. The platform's intuitive interface supports various discussion formats, including text, mathematical equations, code snippets, and circuit diagrams [Ed Help].
Gradescope: Streamlines the assignment submission and grading processes, ensuring prompt and consistent feedback from instructors. Gradescope's advanced features allow for efficient grading of written and programming assignments. Students can review their evaluated work, analyze detailed feedback, and identify areas for improvement. The platform also supports regrade requests, promoting transparency in the assessment process [Gradescope Help Center].
Zoom: Facilitates virtual lab sessions and office hours, providing a flexible means for students to interact with instructors and teaching assistants. Zoom's screen sharing and whiteboard features enable effective remote collaboration. Students can participate in one-on-one or group sessions, enhancing their understanding of course material through direct engagement with instructors [Zoom Support].
Effective utilization of these tools is key to optimizing the learning experience in this course. Students should familiarize themselves with each platform, actively participate in Ed Discussion, submit assignments through Gradescope by the designated deadlines, and attend Zoom sessions prepared to learn and interact.
Assessment and Grading
- Homework Assignments (15%)
- Midterm Exam (30%)
- Technical Presentation (20%)
- Final Exam (35%)
Final letter grades are assigned according to the following scale. The final letter grade corresponds to the highest threshold value less than or equal to the student's final numerical grade.
A A- B+ B B- C+ C C- D+ D F
94 90 87 83 80 77 73 70 67 60 0
Homework Assignments
Homework assignments are to be completed individually unless explicitly stated otherwise in the assignment instructions. Students will typically have 6-9 days to complete each assignment, with specific due dates clearly indicated on the course website.
Late submissions will NOT be accepted. To maximize learning outcomes and receive valuable feedback, students are strongly encouraged to discuss their code, solutions, or questions during the instructor/TA's office hours prior to assignment due dates.
Examinations
The course includes midterm and final examinations, both conducted in-person. These exams assess students' understanding of computer organization concepts. Key points:
- exams are individual and open-book (printed materials only);
- no electronic devices are allowed during exams;
- make-up exams are granted only for exceptional, documented circumstances and must be approved by the instructor.
Technical Presentation
Students will work in teams to conduct an in-depth exploration of a specific topic related to computer organization. The instructor will provide a curated list of potential presentation topics from which teams can make their selection. Each team's mission is to thoroughly research and master their chosen topic, and subsequently engage the class through a well-prepared presentation.
Presentations will take place during the final two weeks of the semester, with each team allotted a maximum of 20 minutes to showcase their insights and findings. Students are expected to deliver their presentations using professionally crafted slides that visually complement their chosen topic.
This collaborative project offers students a valuable opportunity to enhance their communication skills, deepen their understanding of a specialized area within computer organization, and contribute to the collective learning experience of the class.
Academic Integrity
This course encourages collaborative discussions and peer learning to enhance understanding of course topics. However, students must maintain the highest standards of academic integrity in all their work. For written assignments and programming projects, sharing solutions, copying another student's work, or using uncredited AI-generated content is strictly prohibited. These actions constitute plagiarism, a serious academic offense that carries significant consequences as outlined in the University's Academic Honesty Procedures.
AI and Large Language Models (LLMs)
This course embraces the integration of AI tools such as ChatGPT, Gemini, Claude, or Github Copilot as learning aids. Students are encouraged to leverage these technologies for brainstorming, concept exploration, code analysis, and problem-solving approaches. These tools can enhance understanding of computer organization concepts and aid in various aspects of coursework. However, it is crucial to maintain a balance between AI assistance and learning. While AI can enhance learning, it should complement rather than replace students' critical thinking and problem-solving skills. The primary goal remains the development of individual competence in computer organization.
All student submissions that incorporate AI-generated content must include proper citation. This includes, but is not limited to, assignments, presentations, and any other coursework where AI tools have been used to generate, edit, or enhance the content. Students must clearly indicate which portions of their work were created with AI assistance and specify the AI tool used.
Students should view AI-generated content as a starting point, building upon it with their own understanding and critical analysis. For programming assignments, a thorough comprehension of any AI-suggested code is essential before incorporation. Students are encouraged to seek instructor guidance if uncertain about appropriate AI tool usage.
It's crucial to verify AI-generated information, as these tools can produce errors or outdated content.
Disability Accommodations
Students with documented disabilities are encouraged to contact the instructor as early in the semester as possible to arrange appropriate accommodations. As part of this process, students should first contact the Disability Services for Students Office, located in room 302 of the Memorial Union (401-874-2098).
Religious Observances
In accordance with University of Rhode Island policy, students are granted the opportunity to observe their traditional religious holidays. Students wishing to observe a holiday of special importance must provide written notification to the instructor in advance.