AI Summary
[DOCUMENT_TYPE: user_assignment]
**What This Document Is**
This is a homework assignment for Computer Systems Architecture I (CSE 560M) at Washington University in St. Louis. It challenges students to apply foundational concepts of computer organization and design by modeling and analyzing a simplified, unpipelined computer architecture. The assignment centers around creating a functional specification and, ultimately, a hardware description language (HDL) implementation of this computer. It requires a deep understanding of data flow, register organization, and basic arithmetic operations within a computational system.
**Why This Document Matters**
This assignment is crucial for students learning the core principles of computer architecture. Successfully completing it will solidify your understanding of how instructions are fetched, decoded, and executed at a low level. It’s particularly beneficial for those preparing for more advanced coursework in areas like processor design, embedded systems, and digital logic. Students will benefit from working through this assignment as they build a practical understanding of the relationship between high-level programming concepts and the underlying hardware. It’s best utilized *after* gaining a solid grasp of basic digital logic and computer organization fundamentals.
**Common Limitations or Challenges**
This assignment focuses on a highly simplified computer model. It does *not* cover advanced topics like pipelining, caching, or memory management. Students should be aware that real-world computer architectures are significantly more complex. The assignment also requires proficiency in a hardware description language (VHDL), which is not taught within the assignment itself – prior knowledge is expected. It also assumes a working knowledge of 2’s complement arithmetic.
**What This Document Provides**
* A detailed specification for a simple, unpipelined computer.
* A defined set of registers and their functionalities.
* A state diagram outlining the operational flow of the computer.
* A list of supported arithmetic and logical operations.
* Specific requirements for status flag setting based on operation results.
* Guidelines for group collaboration and assignment expectations.