Flynn's taxonomy is crucial lec 2 - Flynn's taxonomy
This classification system categorizes computer architectures by their concurrent instruction and data streams into four distinct models:
| Term | Definition |
|---|---|
| Bus | A shared communication pathway used to transfer data between processors, memory, and other components. |
| Synchronous | Operating on a predictable, predetermined time schedule. |
| Asynchronous | Operating based on the immediate readiness of devices and availability of data, rather than a fixed clock. |
| Contention | A conflict that occurs when multiple processors attempt to access the single shared bus at the same time. |
| Arbitration | The logical system used to resolve bus contention by deciding which processor gets priority access. |
| Feature | Bus-Based Networks | Switch-Based Networks |
|---|---|---|
| Basic Structure | The simplest way to connect multiprocessor systems, utilizing either a single shared bus or multiple parallel buses. | Utilizes Switching Elements (SE) configured in crossbar, single-stage, or multistage networks. |
| Concurrency | In a single bus system, only one processor can access the bus, and only one memory access can take place at any given time. | Crossbar networks provide simultaneous connections among all inputs and outputs. |
| Contention & Routing | Requires bus arbitration logic and handshaking to resolve bus contention when multiple processors compete for access. | Routing can be achieved via direct switch settings or self-routing based on the destination address (in MINs). |
| Network Blockage | Both single and multiple bus systems are blocking networks. | Crossbars are non-blocking networks, whereas Multistage Interconnection Networks (MINs) can experience blockage (or be rearrangeable). |
| Delay Complexity | O(N) for a single bus and O(mN) for multiple buses. | O(1) for crossbars and O(logN) for MINs. |
| Cost Complexity | O(1) for a single bus and O(m) for multiple buses. | O(N^2) for crossbars and O(NlogN) for MINs. |
this handle the choice regarding a process affect on the global memory

The Write-Once protocol combines both:
this handle the choice regarding a process affect on another process cache
Real shared memory systems combine these approaches to maintain overall coherence, resulting in four possible combinations (e.g., Write-Invalidate with Write-Through, or Write-Update with Write-Back)

