Computer Organization - Organization and Architecture
Introduction:
In the ever-evolving realm of computers, it's crucial to understand the fundamental distinction between computer architecture and computer organization. These two terms often spark curiosity and, to provide some clarity, we'll delve into their definitions, the consensus surrounding them, and their enduring significance in the world of computing. We'll also explore their role in shaping the landscape of computer technology, from mainframes to microprocessors.
Defining the Divide:
Computer architecture, as the name suggests, deals with attributes of a system that are visible to a programmer – those aspects that directly impact the logical execution of a program. A synonym often used interchangeably with computer architecture is "instruction set architecture" (ISA). The ISA encompasses instruction formats, instruction opcodes, registers, instruction and data memory, as well as the effects of executed instructions on registers and memory. It also lays out an algorithm for controlling instruction execution.
On the other hand, computer organization encompasses the operational units and their interconnections that bring architectural specifications to life. It deals with architectural attributes such as the instruction set, data type representation (e.g., numbers and characters), I/O mechanisms, and memory addressing techniques. Organizational attributes, though, remain hidden from programmers and include hardware details like control signals, interfaces with peripherals, and memory technologies in use.
Illustrating the Difference:
To grasp the difference, let's consider an example. Whether a computer should have a multiply instruction is an architectural design question. However, deciding whether this instruction should be implemented through a special multiply unit or by a mechanism repeatedly using the add unit involves organizational considerations. This decision may hinge on factors like the expected frequency of the multiply instruction's use, the relative speed of both approaches, and the cost and physical size of a dedicated multiply unit.
Historical Significance:
Throughout the history of computing and continuing today, the distinction between architecture and organization holds immense importance. Many computer manufacturers offer a range of models with the same architecture but different organizations. Consequently, these models exhibit varying price and performance characteristics. Moreover, a particular architecture can span decades and encompass various computer models, adapting to changing technology. An outstanding example is the IBM System/370 architecture, introduced in 1970. This architecture included multiple models, allowing customers to start with a budget-friendly, slower model and upgrade as needed without losing software compatibility. IBM has consistently introduced new models with improved technology while retaining the same architecture, safeguarding the customer's software investment. Remarkably, the System/370 architecture, with a few enhancements, continues to serve as the foundation of IBM's mainframe product line.Microcomputers and the Interplay:
In the microcomputer class of computers, the relationship between architecture and organization is closely intertwined. Technological advancements not only influence organization but also usher in more powerful and complex architectures. Typically, there's less demand for generation-to-generation compatibility in these smaller machines, allowing for a more dynamic interaction between organizational and architectural design decisions. A prime example of this is the reduced instruction set computer (RISC)
Conclusion:
This exploration of computer organization and architecture showcases the enduring importance of this distinction. It's essential to remember that computer organization must align with a particular architectural specification. Therefore, a comprehensive understanding of organization requires a detailed examination of architecture. As technology continues to advance, these two pillars will undoubtedly shape the future of computing, pushing the boundaries of what's possible in this exciting field.
Comments
Post a Comment