Pamięci

Do dyspozycji są pamięci: RAM16x1, RAM16x1D, RAM16x1S z osobnym wejściem danych do odczytu i zapisu oraz z asynchronicznym odczytem i asynchronicznym / synchronicznym zapisem. Dla pamięci dwu-portowej RAM16x1D zapis może odbywać się tylko dla jednego portu. Dodatkowo można użyć w pełni dwuportowej pamięci blokowej: RAMB4_S?_S?. W projektach można użyć predefiniowanych liczników binarnych CC.

    Ocena 3.0

  1. Zaprojektować układ zerujący po kolei wszystkie komórki pamięci.
  2. Zaprojektować pamięć 128x1 z użyciem pamięci RAM32x1 i odpowiednio zasymulować zapis i odczyt tej pamięci.
  3. Zaprojektować pamięć synchroniczną jednoportową 4x1 z użyciem przerzutników i multiplekserów.
  4. Zaprojektować pamięć synchroniczną dwuportową 4x1 z użyciem przerzutników i multiplekserów (sygnał zegarowy wspólny dla obu portów). Zapis tylko na jednym porcie.
  5. Mając pamięć SRAM 16x1 skonstruować interface, który emulowałby pamięć DRAM (dodatkowe sygnały RASN (not RAS) i CASN, wspólna magistrala do odczytu i zapisu danych).
  6. Realizacja funkcji: a) y=x2  y= LUT(x) (x= 0-7)  b) y= 100/x  y= LUT(x) (x= 1-7, zaokrąglanie w dół) z użyciem pamięci LUT (Look Up Table). Nadawanie wartości poszczególnym komórkom pamięci odbywa się podczas symulacji.
  7. Sprawdzić i pokazać podczas symulacji ewentualne konflikty (zapisu i odczytu pod ten sam adres) dla pamięci dwuportowej a) RAM16x4D b) np. RAMB4_S4_S8.
    Ocena 4.0
  8. Używając RAM16x4 oraz dodatkowych buforów trójstanowych, rejestrów i dodatkowego sygnału Adr/NoData zaprojektuj pamięć w której dane i adres nadawane i odbierane są na tej samej magisrali. Zatrzaskiwanie informacji odbywa się przy narastającym sygnale zegarowym. W celu dokonania odczytu w pierwszym cyklu zegara przesylany jest adres a w następnym cyklu zegara odbierane dane na tej samej magistrali.
  9. Zaprojektuj bufor opóźniający o stałą wartoć n= 3-32 cykli zegara przy użyciu pamięci dwuportowej 16x1.
  10. Mając pamięć SRAM 16x1 skonstruować interface, który emulowałby pamięć DRAM (dodatkowe sygnały RASN i CASN, wspólna magistrala do odczytu i zapisu danych) pracującą w trybie Fast Page Mode (nie jest konieczne powtórne nadawanie adresu wiersza).
  11. Moduł obliczający histogram - zaprojektować układ inkrementujący o jeden w każdym cyklu zegara zawartość danej komórki pamięci (adres komórki jest podawany podczas symulacji).
  12. Moduł obliczający histogram z możliwością odczytu i zerowania.
    Ocena 5.0
  13. Zaprojektować moduł histogramu, zbudowanego na pamięci dwuportowej RAMB4_S8_S8, dla której drugi port służy do odczytu i zerowania histogramu
  14. Zaprojektować pamięć synchroniczną dwuportową 2x1 z użyciem przerzutników i multiplekserów (sygnał zegarowy wspólny dla obu portów). Zapis może następować na dwóch portach równoczenie. Zaprojektować również układ sterujący sygnałem 'konflikt', który jest aktywny w momencie kiedy następuje równoczesny zapis pod ten sam adres.
  15. Zaprojektować układ FIFO (First-In First Out) z użyciem pamięci dwuportowej ram16x1D i maksymalnej długości 8- 32.
  16. Zaprojektować układ FIFO z użyciem pamięci dwuportowej ram16x1D i maksymalnej długości 8- 16 z dodatkowymi sygnałami FULL i EMPTY.
  17. Zaprojektować pamięć stosu, tj. układ (LIFO) Last-In First-Out z sygnałami FULL i EMPTY o długości 8-16.
    Ocena 6.0
  18. Zaprojektować pamięć CAM (Content-Addressable Memory), jest to pamięć, dla której podaje się na wejcie dane a na wyjciu wystawiany jest adres komórki, pod którą zapisana jest dana wejciowa.
  19. Zaprojektować moduł histogramu z użyciem pamięci RAMB4_S8_S8, dla której czas potrzebny do obliczenia pojedynczego punktu wynosi 1 cykl zegara (podczas obliczania histogramu jeden port służy do odczytu a drugi do zapisu - należy uwzględnić sytuację konfliktową, podczas której dwa (lub więcej) następujące po sobie punkty mają taką sama wartość.
     

     

    Teoria
    Opis Projektów