Table of Contents

Logické systémy a procesory

Realizace operací s daty pomocí kombinačních a sekvenčních logických obvodů s vyloučením hazardů a metastability. Obvodová struktura konečných automatů a řadičů procesorů. Popisy obvodů pomocí HDL jazyků a funkční testování obvodů.

Šustovo skriptaVHDL I.VHDL II.Šustovo stránky předmětu

Logická CMOS hradla a jejich vlastnosti. Typy AND, NAND, OR, NOR a XOR.

Struktura NMOS PMOS

Většina logických hradel dnes používá CMOS (Complementary Metal–Oxide–Semiconductor) transistory.

CMOS Invertor

CMOS NAND

CMOS NOR

CMOS AND

CMOS OR

CMOS XOR

Minimalizace log. funkcí v Karnaughových mapách, teoretické zázemí, logická krychle, grayovy kódy, skupinová minimalizace. Hazardy v kombinačních obvodech.

Minimalizace logických funkcí v Karnaughových mapách

Logická krychle

Gray Code

Hazardy

GPT podle skript

Uplatnění De Morganova teorému. Užití Shannonovy expanze a její aplikace ke konstrukci BDD (Binary Decision Diagram), výhody, omezení

Shannon

BDD??

Základní logické obvody: dekodér 1 z N, demultiplexer, multiplexory a jejich kaskády, sčitačka +1 a -1 a úplná sčítačka. Převodníky mezi binárním a zrcadlový grayovým kódem

Dekodér 1 z N

Pravdivostní tabulka 1 z 4 KM a schema

Demultiplexor

Schema demultiplexoru

Multiplexor

Multiplexor 4:1 Kaskáda 5x Mux 4:1 = 16:1

Úplná sčítačka

Úplná sčítačka

Sčítačka +1

Sčítačka -1

Úrovňové klopné obvody RS (RS-Latch) z hradel NAND a NOR, jejich chování a za jakých podmínek u nich mluvíme o zakázaných stavech.

Klopné obvody RS

Klopení RS

Pravdivostní tabulka RS

Synchronní klopné obvody DFF (Data Flip-Flop) architektury Primary-Replica (zastarale Master-Slave). Jejich vlastnosti a podmínky činnosti. Metastabilita DFF. Vysvětlení příčin, jak a kdy lze odstranit

Ukázka DFF a D-Latch

Princip DFF

Princip DFF

Podmínky činnosti

Metastabilita

Čítače a typy jejich spojování do ripple-kaskád a se synchronními přenosy

Registr

4bit registr

Čítač

Dekadický čítač od 0 do 9

Spojování do ripple kaskád?
Spojování se synchonními přenosy

Příkaz process ve VHDL, rozdíl mezi chování blocking := a non-blocking příkazů ⇐. Popis obvodů DFF ve VHDL procesu. VHDL funkce a procedury

Příkaz process ve VHDL

[optional_label:] process [(optional sensitivity list)] [is]
[sequential_declarations]
begin
sequential statements
end process [optional_label];

Rozdíl mezi := (blocking) a <= (non-blocking)

:= (blocking)
<= (non-blocking)

Popis obvodů DFF ve VHDL procesu

 – Importujeme standardní IEEE knihovny pro práci se signály std_logic
library ieee;                   
use ieee.std_logic_1164.all;– Deklarace entity, tedy rozhraní D‐flip‐flopu
entity DataFlipFlop is
  port (
    Data    : in  std_logic;  – Vstup D: data, která chceme ovzorkovat
    CLOCK   : in  std_logic;  – Hodinový signál (CLK), na jehož hranu reagujeme
    ENABLE  : in  std_logic;  – Povolení zápisu: když ENABLE='1', povolíme přepsat Q
    ACLRN   : in  std_logic;  – Asynchronní clear (active‐low): když ACLRN='0', Q se ihned vynuluje
    SCLEAR  : in  std_logic;  – Synchronní clear (active‐high): po náběžné hraně CLK, pokud SCLEAR='1', Q se vynuluje
    Q       : out std_logic   – Výstup Q: zde se objeví poslední uložená hodnota D
  );
end entity DataFlipFlop;– Architekturální popis: popisujeme vnitřní chování entity
architecture rtl_final of DataFlipFlop is
begin
 
 – Proces, který definuje chování DFF
 – Sensitivity list: proces “vidí” změny signálů CLOCK i ACLRN
  process (CLOCK, ACLRN)
  begin
 
 – 1) Ošetření asynchronního clear (ACLRN = '0' → okamžitě nastav Q na '0')
    if ACLRN = '0' then
      Q ⇐ '0';  
 – Jakmile ACLRN přejde na '0', obvod se okamžitě vynuluje, nezávisle na stavu hodiny
 
 – 2) Pokud není aktivní asynchronní clear, čekáme na náběžnou hranu CLOCK
    elsif rising_edge(CLOCK) then
 
 – 2a) Synchronní clear (pokud SCLEAR = '1' na hranu CLK, pak Q ≤ '0')
      if SCLEAR = '1' then
        Q ⇐ '0';
 – Priorita synchronního clear má přednost před povolením ENABLE a před čtením Data
 
 – 2b) Pokud žádný clear není aktivní, řešíme ENABLE
      elsif ENABLE = '1' then
        Q ⇐ Data;
 – Jestliže ENABLE = '1', na hranu CLK se do Q zapíše aktuální hodnota na vstupu Data
 
 – 2c) Když ani synchronní clear, ani ENABLE není aktivní, zachovává se předešlá hodnota Q
 – (nepíšeme žádné další přiřazení; Q zůstane takové, jaké bylo)
      end if;
 
 – 3) Konec detekce hrany: v jiných případech (kdy ACLRN='1' a žádná hrana CLK) se nic neděje
    end if;
 
  end process;
 
end architecture rtl_final;

VHDL funkce a procedury

Funkce
[pure | impure ] function function_name (parameter_list) return type_name is
[sequential_declarations]
begin
sequential statements
end [function] [function_name]
Procedura
procedure identifier [ (formal_parameter_list) ] is
[sequential_declarations]
begin
sequential statement(s)
end [procedure] [identifier]

Konečné automaty typu Moore a Mealy. Jejich definice, popisy pomocí grafu přechodů, tabulky přechodů a stavové tabulky přechodů (jiný název matice přechodů). Minimalizace automatu Moore na Moore a Moore na Mealy. Kdy lze? Návrh automatu a jeho popis ve VHDL

Definice FSM

Definice FSM

Mealy a Moore ilustrace

Popis FSM (graf, tabulka přechodů, stavová tabulka přechodů - matice přechodů)

Matice přechodů

Tabulka přechodů

Graf přechodů Start-Stop

Minimalizace Moore na Moore a Moore na Mealy

FSM ve VHDL

architecture rtlFSM of StartStopFSM is
begin
ifsm: process(CLK)
 type state_t is (ROFF, RON); – enumerated types are reserved only for FSMs
 variable state: state_t:=ROFF;
 begin
  iRedge : if rising_edge(CLK) then
   iClrn: if CLRN='0' then state:=ROFF;always clear
          else
           case state is
            when ROFF ⇒ if START='1' and STOP='0'
                         then state:=RON; end if;
            when RON ⇒ if STOP='1'
                        then state:=ROFF; end if;
   end case; end if iClrn;
  end if iRedge;
  if state=RON then RUN⇐'1'; else RUN⇐'0'; end if;
 end process;
end architecture;

Řadiče a mikroprogrové řadiče. Vlastnosti a architektura

Grafické zobrazení Řadiče kotle

Posuvné registry a posuvné registry s lineární zpětnou vazbou (LFSR), pouze hlavní principy jejich teoretického zázemí a vlastnosti

Posuvné registry

SISO

PISO a SIPO

Posuvné registry s lineární zpětnou vazbou LFSR

Násobení frekvencí fázovými závěsy (Phase-Locked Loop)

Blokové PLL schéma

Správné ošetření vstupů, plovoucí vstupy, pomalé náběžné hrany, odstranění zákmitů tlačítek (debouncing). Chránění výstupů s indukčních zátěží a výkonovou zátěží. Chování logického signálu na vodiči.

Používané FPGA technologie a jejich vlastnosti. Struktura SRAM paměti, paměti s jednoportovou a dvou portovou výběrovou logikou.

Celé GPT

FPGA Technologie

Struktura SRAM pamětí v FPGA