CSCE 212 - Introduction to Computer Architecture
Department Course Description
This is the introductory course in computer architecture. Starting with the basic review of digital logic, the course develops materials that build on this foundation--namely, that Boolean logic can be used to build "patterns" of combinational logic structure, and that many of these structure have come to be used to build even higher-level components and architectures. In addition, one of the hallmarks of computer architecture, the ability to define the behavior of storage elements, allows us to create state machines and memory-based architectures. The course generally follows a treatment from the bottom-up, working through the various levels of the computing "virtual machine" hierarchy. Once basic structures for manipulating and storing data are defined in terms of combinational and sequential logic, these structures are used to build register level components of the basic computer architecture.
The basis for most modern computers is founded on the work of Dr. John Von Neumann, done back in the 40s and 50s. The basic structure of the "stored program machine", as it became to be called, was enhanced by the ability to "time slice" the execution of a computer program, and thus share the resources of the computer among program competing for these resources (memory, processor time, I/O). The basic attributes of a modern computer are thus analyzed and evaluated, paying close attention to the functions, structural organization, and performance of these various elements.
Link to Department Course Web Page
(No web page for this course description currently exists on Department site)
212—Introduction to Computer Architecture. (3) (Prereq: CSCE 145, 211) Computer architecture, components, and organization; memory addressing; Input/Output; instruction sets; interrupts; assembly-language programming. Credit may not be received for both CSCE 212 and CSCE 213.
Link to Dr. Cross' 212 Course (Spring 02) Web Page
My Course Syllabus
I taught this course, under various course names and titles, while an Adjunct Professor with the department. This syllabus is for the last time I taught the course. If you have questions about this course, please see Dr. Valerie Cross.
Link to HTML Version of My Syllabus
The Importance of This Course for Computer Engineering
This material is foundational to becoming a Computer Engineer. If you don't "get it", then you are either not trying hard enough or you need to seriously consider changing majors. The essence of computer architecture--starting with the discussion of Boolean logic gates and sequential switching circuits is the building blocks for higher-level components and systems. The register-level treatment of hardware design, and the subsequent application of these concepts to the structure and organization of the basic computer are fundamental to understanding everything within the computer engineering discipline.