Výuka PB170 - Seminář z konstrukce digitálních systémů

  • výuka bude ve dvou skupinách v místnosti A415
  • ukončení kolokvium - za projekt (s dokumentací)
  • dochazka nutná (povoleny 2 neomluvené absence)

1. cvičení

2. cvičení

  • boolovská algebra (axiomy, zákony… (De Morganův))
  • univerzálnost NANDu a NORu - úplnost
  • úplná normální konjunktivní/disjunktivní forma logické funkce
  • mapa logické funkce - Karnaghova mapa
  • half-adder, full-adder
  • half-adder from NANDs gate

3. cvičení

  • kombinační obvody
  • encoder 4-2
  • decoder 2-4
  • multiplexer / demultiplexer
  • komparator (2×2-bit)
  • základní zapojení 74HC00 - NAND + LED (uložit do šuplíků u stolů)
  • příklady Hades: ripple carry, bcd adder, mult 4×4 - Download
  • HW: 2×2 bits comparator with indicate bigger and lower outputs

4. cvičení

  • sekvenční obvody
  • RS obvod - konstrukce
  • zpětná vazba
  • rozdíl: flipflop - latch
  • jkff, srff, dff, tff, latch
  • příklad: zapojení DFF aby se choval jako TFF
  • čítače (za použití DFF)
  • čítač cyklický 100 - 010 - 001 - 100 - …
  • čítač kumulační (pevný modul řízený stavem) 0 - 1 - 11 - 111 - 1111 - 0 - 1 - ….
  • čítač binarni 0 - 1 - 10 - 11 - 100 - 101 - … (pomocí 2 nebo 4 jednotek)
  • aplikace čítačů: dělička hodin (triviální)

5. cvičení

  • sekvenční obvody - stavové automaty (Mealy, Moore)
  • kódování stavů
  • detekce signálu délky 3 (110)
  • počítání modulo 2 (nebo 3 - pomocí 3 flip-flop)
  • převod sériového signálu na paralelní (vstupy: serial-in, clock, shift; výstupy: 4-bity)
  • Homework: detektor delitelnosti čísla modulo 3 - schéma zapojení

6. cvičení

  • zapojení RS klopného obvodu s tlačítky s obvodem 7400
  • zapojení klopného obvodu pro přepínaní dvou stavů jedním tlačítkem (flip-flop)

7. cvičení

  • dokončení zapojení klopného obvodu flip-flop
  • úvod do prostředí Altera Quartus
  • základní popis, využití a vlastnosti FPGA

8. cvičení

9. cvičení

  • ukázka kitu a programování
  • sčítačka 2x 3b číslo ve Verilogu - kombinační logika
  • always blok - běžící světlo (1 LED)
always@(posedge CLK)
	begin
 
	if(!rst) 
		LEDS <= 8'b0;
 
	else if(div0)
		begin
 
			LEDS <= LEDS * 2 + (LEDS[17] ? 1'b0 : 1'b1) ;
 
		end
	end

10. cvičení

  • modul předděličky - zapsat další děličky pro více blikajících LED

Projekty 2017

  • Paral - PIR cidlo a citani lidi
  • Pecak - ridici obvod hodin
  • Kasaj - stopky (Verilog)

Projekty 2016

  • Hala - prace s grafickym displejem
  • Urban - stopky s log. obvody
  • Koniarik - efekty s RGB LEDs pres I2C
  • Cernaj - test postrehu (HEX)
  • Polak - soft core (12 bit slova)
  • Jakubik - hodiny na LCD
  • Lipcak - inteligentni sterac
  • Boksa - odpocitavaci citac