slama.dev

Principy Počítačů

poznámky z přednášky, vydáno 17. 1. 2020; dostupné v [PDF]

Úvodní informace

Tato stránka obsahuje moje poznámky z přednášky Pavla Ježka z akademického roku 2019/2020. Pokud by byla někde chyba/nejasnost, nebo byste rádi někam přidali obrázek/text, tak stránku můžete upravit pull requestem (případně mi dejte vědět na mail).

Zjednodušené schéma počítače

Harvardská architektura

Historie

Charles Babbage (1837)

Ada Lovelace

Kódování informace v počítači

Analogový přenos

ztrátovost analogového přenosu

Digitální přenos

digitální přenos
Sériový přenos
přenos čísla 1011, znázornění odporu vůči změně napájení
  1. měření hodnoty na měřáku
    • nezapomínat na to, že napětí je relativní
referenční přenos (barvy ukazují způsoby, jakými lze signál vést do cíle)
  1. měření rozdílu napětí dvou vodičů
    • výhoda – elektromagnetické rušení signál neovlivňuje, jelikož rozdíl je relativní
diferenciální přenos (vlevo); USB konektor (vpravo)
MSb/LSb odbočka

Dohoda přenosu

Řešení (1): nový stav

  1. odpojení vodiče = floating state (plovoucí stav)
    • lze detekovat, že je linka odpojena
    • není to ideální, moc se nepoužívá
  2. idle stav
    • na začátku je linka idle (tzn. přenos neprobíhá)
    • používá RS-232
    • start dohodou, většinou rising edgem (dobře se detekuje), poté držen (většinou 1) start bit
      • start (a end) bit je potřeba – když by to jen vystřelilo, tak by to druhá strana kvůli šumu vůbec nemusela detekovat
    • se startem (rising edge) se synchronizují hodiny
      • nejsou perfektní (mají tendenci se rozcházet) – omezení přenosu na nn bitů, kde nn je konstanta (v reálu 8b=1B8b = 1B)
        • pozn.: 1B1B jsou 2 šestnáctkové znaky
    • velký overhead… z 10b10b je jen 8b8b datových… 1000clock8/10start + end=800 bps\underbrace{1000}_{\text{clock}} \cdot \underbrace{8/10}_{\text{start + end}} = 800\ bps