=============================
Programowalne Układy Logiczne
=============================


Spis treści
===========

.. toctree::
   :includehidden:
   :titlesonly:

   01_intro/index
   02_logic/index
   03_ram/index
   04_sync_design/index
   05_uart/index
   06_clock/index
   l01_intro/index
   l05_uart/index
   z1_divider/index
   z2_bresenham/index
   z3_calc/index
   z3_crypt/index
   z5


Kalendarz
=========

Zajęcia odbywają się we wtorki.  Wykłady odbywają się w godzinach 10:15–11:45, a laboratoria w godzinach 12:15-14:00 za pomocą platformy zoom.  Link do spotkania będzie wysłany mailem do zarejestrowanych studentów — w przypadku nieotrzymania takiego maila, proszę o kontakt pod adresem ``mwk@mimuw.edu.pl``.

========== ============================
Data       Temat wykładu
========== ============================
20.10.2020 | :ref:`w01-intro`
           | :ref:`l01-intro`
27.10.2020 :ref:`w02-logic`
03.11.2020 :ref:`w03-ram`
10.11.2020 :ref:`w04-sync-design`
17.11.2020 | :ref:`w05-uart`
           | :ref:`l05-uart`
24.11.2020 :ref:`w06-clock` — część 1
01.12.2020 :ref:`w06-clock` — część 2
08.12.2020 :ref:`w07-axi`
15.12.2020 Budowa mikroprocesora
22.12.2020 Wejście/wyjście
12.01.2021 :ref:`w09-vga`
19.01.2021 TBD
26.01.2021 TBD
========== ============================


.. warning:: Kolejność wykładów nie jest jeszcze w pełni ustalona i może się zmienić.


Zasady zaliczenia
=================

W trakcie semestru zostanie ogłoszone 5 zadań zaliczeniowych:

=============== ============== ===============
Data ogłoszenia Termin oddania Zadanie
=============== ============== ===============
27.10.2020      24.11.2020     :ref:`z1-divider`
10.11.2020      08.12.2020     :ref:`z2-bresenham`
01.12.2020      12.01.2021     :ref:`z3-calc`
22.12.2020      koniec sesji   :ref:`z4-crypt`
20.10.2020      koniec sesji   :ref:`z5`
=============== ============== ===============

Rozwiązania należy zaprezentować w trakcie zajęć laboratoryjnych, bądź
w innym terminie po indywidualnym ustaleniu.  Za każde z zadań można dostać
1 punkt.

Progi punktowe na poszczególne oceny są następujące:

===== ====
Ocena PrĂłg
===== ====
3     1
3.5   2
4     3
4.5   4
5     5
5!    6
===== ====


Przydatne linki
===============

.. - https://github.com/mwkmwkmwk/pul-examples — przykłady z zajęć

.. - https://reference.digilentinc.com/reference/programmable-logic/basys-2/reference-manual (dokumentacja płytki)
.. - https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/design-tools.html (oprogramowanie do syntezy na Spartan 3E i inne stare FPGA Xilinxa)
.. - http://www.ece.uvic.ca/~fayez/courses/ceng465/vlogref.pdf (Verilog quick reference)
.. - https://www.xilinx.com/support/documentation/data_sheets/ds312.pdf (data sheet do Spartana 3E)
.. - https://www.xilinx.com/support/documentation/sw_manuals/xilinx11/spartan3e_hdl.pdf (dokumentacja prymitywów dostępnych na układzie Spartan 3E)

- https://0x04.net/~mwk/xidocs/ (duĹźo dokumentacji Xilinxa zebranej w jednym miejscu)
- https://www.usenix.org/system/files/1311_05-08_mickens.pdf