Streszczenie Architektury systemów komputerowych

Architektury systemów komputerowych: Kompletny przewodnik dla studentów

Wprowadzenie

Architektura systemu komputerowego określa, w jaki sposób są ze sobą połączone i zorganizowane główne komponenty komputera: procesor (CPU), pamięć i urządzenia wejścia-wyjścia. Z punktu widzenia dostępu do pamięci rozróżniamy podstawowe modele, które wpływają na wydajność, złożoność projektu i zastosowanie systemu.

Definicja: Architektura pod względem pamięci opisuje, czy instrukcje i dane mają wspólną czy oddzielną pamięć oraz jakimi ścieżkami się do niej uzyskuje dostęp.

1. Architektura von Neumanna

Kluczowe cechy

  • Jedna wspólna pamięć dla programów i danych
  • Jedna wspólna magistrala do przesyłania danych i instrukcji
  • Sekwencyjne przetwarzanie instrukcji: CPU pobiera instrukcje i dane tą samą drogą

Definicja: Architektura von Neumanna to model, w którym instrukcje i dane współdzielą tę samą pamięć adresową i danych.

Zalety

  • Prosta konstrukcja
  • Łatwa programowalność
  • Niższe koszty produkcji

Wady

  • Wąskie gardło von Neumanna: współdzielona magistrala ogranicza maksymalną przepustowość między CPU a pamięcią

Praktyczny przykład

Podstawowe komputery osobiste i starsze systemy wbudowane często wykorzystują koncepcje zbliżone do architektury von Neumanna, zwłaszcza tam, gdzie priorytetem jest prostota projektu.

2. Architektura harwardzka

Kluczowe cechy

  • Oddzielna pamięć na instrukcje i dane
  • Oddzielne magistrale dla danych i instrukcji
  • Możliwość jednoczesnego dostępu do instrukcji i danych

Definicja: Architektura harwardzka posiada fizycznie oddzielne przestrzenie pamięci i magistrale dla instrukcji i danych, co umożliwia równoległy dostęp.

Zalety

  • Wyższa wydajność dzięki równoległemu dostępowi
  • Eliminacja konfliktów między dostępem do instrukcji a danych

Wady

  • Bardziej złożony projekt
  • Wyższy koszt
  • Niższa elastyczność w zakresie współdzielenia pamięci między kodem a danymi

Zastosowanie

  • Mikrokontrolery
  • Systemy wbudowane (embedded)

Praktyczny przykład

Wiele mikrokontrolerów (np. w przemyśle motoryzacyjnym lub automatyce przemysłowej) wykorzystuje zasadę harwardzką w celu zapewnienia szybkiego i deterministycznego działania.

3. Zmodyfikowana architektura harwardzka

Kluczowe cechy

  • Oddzielne pamięci podręczne dla instrukcji i danych
  • Pamięć główna może być wspólna lub częściowo oddzielona
  • Łączy zalety architektury von Neumanna i harwardzkiej

Definicja: Zmodyfikowana architektura harwardzka wykorzystuje oddzielne linie pamięci podręcznej dla instrukcji i danych, podczas gdy pamięć główna może być współdzielona.

Zalety

  • Wyższa wydajność niż czysta architektura von Neumanna
  • Elastyczność w pracy z pamięcią główną (np. współdzielenie danych i kodu w razie potrzeby)

Zastosowanie

  • Nowoczesne procesory (CPU) (PC, laptopy, serwery)

Praktyczny przykład

Procesory wielordzeniowe obecnie często wykorzystują oddzielne pamięci podręczne L1 dla instrukcji i danych, podczas gdy pamięci podręczne L2/L3 oraz RAM są współdzielone.

4. Klasyfikacja Flynna (dodatkowe spojrzenie)

Podział architektur ze względu na przepływ instrukcji i danych:

  • SISD – jeden strumień instrukcji, jeden strumień danych (klasyczna maszyna jednordzeniowa)
  • SIMD – jeden strumień instrukcji, wiele strumieni danych (operacje wektorowe, GPU)
  • MISD – rzadko stosowane (wiele instrukcji, jeden strumień danych)
  • MIMD – wiele strumieni instrukcji i danych (procesory wielordzeniowe)

Definicja: Klasyfikacja Flynna kategoryzuje komputery ze względu na liczbę równoczesnych strumieni instrukcji i danych.

5. Porównanie architektur

ArchitekturaPamięć programów i danychMagistralaWydajność
Von NeumannWspólnaWspólnaNiższa
HarvardOddzielnaOddzielnaWysoka
Zmodyfikowana HarvardCzęściowo oddzielnaKombinowanaWysoka

6. Kiedy wybrać którą architekturę

  1. Niskie koszty i prostota: Von Neumann
  2. Deterministyczny i szybki system wbudowany: Harvard
  3. Wyso
Zarejestruj się po pełne podsumowanie
FiszkiTest wiedzyStreszczeniePodcastMapa myśli
Zacznij za darmo

Masz już konto? Zaloguj się

Architektura pamięci komputerów

Klíčové pojmy: Architektura określa sposób połączenia CPU, pamięci i urządzeń wejścia/wyjścia (I/O)., Architektura von Neumanna: wspólna pamięć i magistrala., Wąskie gardło von Neumanna ogranicza wydajność., Architektura Harvarda: oddzielne pamięci i magistrale., Architektura Harvarda oferuje równoległy dostęp do instrukcji i danych., Zmodyfikowana architektura Harvarda: oddzielne pamięci podręczne (cache), współdzielona pamięć RAM., Klasyfikacja Flynna: SISD, SIMD, MISD, MIMD., Współczesne procesory (CPU) wykorzystują zmodyfikowaną architekturę Harvarda., Wybór architektury zależy od wydajności, kosztu i zastosowania., Procesory graficzne (GPU) często wykorzystują SIMD dla masowego paralelizmu.

## Wprowadzenie Architektura systemu komputerowego określa, w jaki sposób są ze sobą połączone i zorganizowane główne komponenty komputera: procesor (CPU), pamięć i urządzenia wejścia-wyjścia. Z punktu widzenia dostępu do pamięci rozróżniamy podstawowe modele, które wpływają na wydajność, złożoność projektu i zastosowanie systemu. > **Definicja:** Architektura pod względem pamięci opisuje, czy instrukcje i dane mają wspólną czy oddzielną pamięć oraz jakimi ścieżkami się do niej uzyskuje dostęp. ## 1. Architektura von Neumanna ### Kluczowe cechy - Jedna wspólna pamięć dla **programów i danych** - Jedna wspólna magistrala do przesyłania danych i instrukcji - Sekwencyjne przetwarzanie instrukcji: CPU pobiera instrukcje i dane tą samą drogą > **Definicja:** Architektura von Neumanna to model, w którym instrukcje i dane współdzielą tę samą pamięć adresową i danych. ### Zalety - Prosta konstrukcja - Łatwa programowalność - Niższe koszty produkcji ### Wady - Wąskie gardło von Neumanna: współdzielona magistrala ogranicza maksymalną przepustowość między CPU a pamięcią ### Praktyczny przykład Podstawowe komputery osobiste i starsze systemy wbudowane często wykorzystują koncepcje zbliżone do architektury von Neumanna, zwłaszcza tam, gdzie priorytetem jest prostota projektu. ## 2. Architektura harwardzka ### Kluczowe cechy - Oddzielna pamięć na **instrukcje** i **dane** - Oddzielne magistrale dla danych i instrukcji - Możliwość jednoczesnego dostępu do instrukcji i danych > **Definicja:** Architektura harwardzka posiada fizycznie oddzielne przestrzenie pamięci i magistrale dla instrukcji i danych, co umożliwia równoległy dostęp. ### Zalety - Wyższa wydajność dzięki równoległemu dostępowi - Eliminacja konfliktów między dostępem do instrukcji a danych ### Wady - Bardziej złożony projekt - Wyższy koszt - Niższa elastyczność w zakresie współdzielenia pamięci między kodem a danymi ### Zastosowanie - Mikrokontrolery - Systemy wbudowane (embedded) ### Praktyczny przykład Wiele mikrokontrolerów (np. w przemyśle motoryzacyjnym lub automatyce przemysłowej) wykorzystuje zasadę harwardzką w celu zapewnienia szybkiego i deterministycznego działania. ## 3. Zmodyfikowana architektura harwardzka ### Kluczowe cechy - **Oddzielne pamięci podręczne** dla instrukcji i danych - Pamięć główna może być wspólna lub częściowo oddzielona - Łączy zalety architektury von Neumanna i harwardzkiej > **Definicja:** Zmodyfikowana architektura harwardzka wykorzystuje oddzielne linie pamięci podręcznej dla instrukcji i danych, podczas gdy pamięć główna może być współdzielona. ### Zalety - Wyższa wydajność niż czysta architektura von Neumanna - Elastyczność w pracy z pamięcią główną (np. współdzielenie danych i kodu w razie potrzeby) ### Zastosowanie - Nowoczesne procesory (CPU) (PC, laptopy, serwery) ### Praktyczny przykład Procesory wielordzeniowe obecnie często wykorzystują oddzielne pamięci podręczne L1 dla instrukcji i danych, podczas gdy pamięci podręczne L2/L3 oraz RAM są współdzielone. ## 4. Klasyfikacja Flynna (dodatkowe spojrzenie) Podział architektur ze względu na przepływ instrukcji i danych: - SISD – jeden strumień instrukcji, jeden strumień danych (klasyczna maszyna jednordzeniowa) - SIMD – jeden strumień instrukcji, wiele strumieni danych (operacje wektorowe, GPU) - MISD – rzadko stosowane (wiele instrukcji, jeden strumień danych) - MIMD – wiele strumieni instrukcji i danych (procesory wielordzeniowe) > **Definicja:** Klasyfikacja Flynna kategoryzuje komputery ze względu na liczbę równoczesnych strumieni instrukcji i danych. ## 5. Porównanie architektur | Architektura | Pamięć programów i danych | Magistrala | Wydajność | |---|---:|---|---:| | Von Neumann | Wspólna | Wspólna | Niższa | | Harvard | Oddzielna | Oddzielna | Wysoka | | Zmodyfikowana Harvard | Częściowo oddzielna | Kombinowana | Wysoka | ## 6. Kiedy wybrać którą architekturę 1. Niskie koszty i prostota: Von Neumann 2. Deterministyczny i szybki system wbudowany: Harvard 3. Wyso