Hardware

Hardware

Mikroprocesor

Firma poza rozwiązaniami dotyczącymi Internetu oraz oprogramownia, ma do zaoferowania gotowy projekt mikroprocesora. Mikroprocesor, wyróżnia się bardzo dobrymi osiągami, oraz nieprzeciętną wydajnością.

Poniżej przedstawione zostały ważniejsze informacje związane z danym projektem oraz przykład współpracy z wyświetlaczem LCD.

Opis

Opis układu został wykonany w języku VHDL. Dokonano podziału projektu na moduły. Wyróżniono trzy moduły:

SEKWENCER - kontroluje linie sterujące M, R, I, E

Sekwencer opisany jest za pomocą dwóch procesów - Jeden proces odpowiada za opis rejestru stanów (nazwa procesu: 'seq') a drugi za logikę wyjść i stanu następnego (proces 'refresh').

MEM - składa się z 1 modułu pamięć blockRAM, logiki obsługi skoków, pobierania danych z pamięci oraz wskaźnika adresu. Jako, że sekwencer nie musi pracować z pełną częstotliwością zegara należy zabezpieczyć układ przed sytuacją gdy sekwencer ustawia linię M a pamięć prześle w tym czasie kilka rozkazów (bo działa z pełną częstotliwością). Zabezpieczenie stanowi flaga zerowana po pobraniu rozkazu i ustawiana gdy odczyt jest niemożliwy (M='0').

DEKODER - Dekoder rozdziela magistralę rozkazową na magistralę danych (DB) oraz kod rozkazu. W zależności od rodzaju rozkazu ustawia lub nie linię OE gdy E=1. Wejścia dekodera I oraz clock pozwalają także na dalszą rozbudowę układu.

Przykładowy program

Przykładowy program na układ (współpraca z kontrolerem LCD Hitachi HD44780U):

  • 0 => "000000000001", --reset LCD
  • 1 => "000000111000", --ustalenie długości danych na 8 bit, włącznie 2 linii LCD
  • 2 => "000000001100", --wyłączenie kursora,
  • 3 => "000000000110", --określenie kierunku przesuwania kursora,
  • 4 => "110000000101", --skok pod 6
  • 5 => "001000110001", --wysłanie znaku 1
  • 6 => "001000110010", -- 2
  • 7 => "001000110011", -- 3
  • 8 => "000011000000", --przejście do 2 linii
  • 9 => "001000110100", --wysłanie znaku 4
  • 10 => "001000110101", -- 5
  • 11 => "001000110110", -- 6
  • 12 => "110000001100", --skok pod 12

Schemat kontrolera Hitachi HD44780U:

Hitachi HD44780U

Symulacja po rozmieszczeniu w układzie, dane na magistrali wyświetlone w kodzie heksadecymalnym:

Symulacja

Parametry pierwotnej wersji układu

  • Device utilization summary:
  • ---------------------------
  • Selected Device : 2s30vq100-5
  • Number of Slices: 24 out of 432 5%
  • Timing Summary:
  • ---------------
  • Speed Grade: -5
  • Minimum period: 9.364ns (Maximum Frequency: 106.792MHz)
  • Minimum input arrival time before clock: No path found
  • Maximum output required time after clock: 12.474ns