Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Układ mnożący 16x16bitów z wyświetlaniem na LED - algorytm

Galertu 20 Oct 2008 20:48 2636 8
  • #1
    Galertu
    Level 10  
    Witam !
    Mam pewien układ do stworzenia... Układ mnozacy 16x16bitów z wyświetlaniem na LEDach. Rozmiar specjalnie tak dobrano żeby nie wykorzystywać ROMu. Dodatkowo nie można używać mikroprocesorów jak i mikrokontrolerów. Dane powinny być wprowadzane za pomocą mikroprzełączników.
    Myślę, że jako algorytm trzeba by wykorzystać może mnożenie z przeniesieniem i dodawanie ?
    Układu nie muszę montować wystarczy mi symulacja.
    Z dziękuje za wszelką pomoc.
    Pozdrawiam
  • #2
    lechoo
    Level 39  
    Jeśli znasz algorytm i wiesz jak zbudować sumator wielobitowy, to poradzisz sobie z tym zadaniem bez problemu. Zacznij od od prostszych układów mnożących np. 4x4bity.
  • #3
    Paweł Es.
    VIP Meritorious for electroda.pl
    A jakie liczby ma mnożyć ta mnożarka ? NKB czy ze znakiem ?

    Czy są jakieś narzucone ograniczenia na realizację (oprócz ROM-u) - np. tylko szeregowy czy tylko równoległy ?
  • #4
    Galertu
    Level 10  
    Paweł Es. wrote:
    A jakie liczby ma mnożyć ta mnożarka ? NKB czy ze znakiem ?

    Czy są jakieś narzucone ograniczenia na realizację (oprócz ROM-u) - np. tylko szeregowy czy tylko równoległy ?


    Witam!
    Układ ma mnożyć liczby bez znaku w NKB. Nie ma ograniczeń czy będzie się to odbywało równolegle czy też szeregowo. Co do realizacji to na razie nic konkretnego mi do głowy niestety nie przychodzi :|
  • #5
    Paweł Es.
    VIP Meritorious for electroda.pl
    No to zrób akumulator (sumator+rejestr) 32 bitowy. Na wejściu daj rejestr przesuwający 32 bitowy. Wpisujesz do niego liczbę A, a potem zależnie od kolejnych bitów liczby B dodajesz przesuniętą w lewo liczbę A do wyniku.
  • #6
    Galertu
    Level 10  
    Witam!
    Dziękuje za wszystkie odpowiedzi i pomoc :) jak tylko moglem zacząć to mi bardzo pomogły:) Jednak mam nadal pewien problem z tym projektem. Mianowicie nie umiem w nim znaleźć błędu w działaniu (sama idea wydaje się być dobra). Wiem oczywiście ze złe mnoży ale nie wiem w czym tkwi problem. O to jak wyglada projekt(plik jpg):

    Układ mnożący 16x16bitów z wyświetlaniem na LED - algorytm

    Generalnie układ ma działać na zasadzie 'mnożenia pisemnego' czyli sumy kolejnych iloczynów. Dwa rejestry i przerzutnik D w lewej górnej części wpisuje mnożnik, a w kolejnych taktach zegarowych wysyła go szeregowo. Andy mnożą poszczególne bity mnożnej z określonym bitem mnożnika. Iloczyn jest wysyłany na sumatory, na które wchodzi wartość poprzedniej sumy z rejestrów. (rejestry te na zmianę przesuwają w lewo albo wpisują) oraz szeregowo wysyłają wynik(do 4 rejestrów na samym dole.Układ jest robiony w technologii TTL, nazwy wszystkich komponentów są opisane.

    Próbowałem na rożne sposoby analizować ten układ takt po takcie itp myślałem, aby zmienić sterowanie wpisu wyniku i wysyłanie mnożnika za pomocą przerzutnika T (aby rejestr z suma zdążył przesunąć wynik i dopiero potem wpisać) ale nie przyniosło to jakiegoś lepszego rezultatu. Próbowałem tez zmieniać clocki poszczególnych części układu ale to już jest chyba całkowicie chybiony pomysł.

    Prosiłbym o jakakolwiek pomoc, poradę. Dołączam plik z symulacjami w multisimie 10 (plik z tym projektem (1.ms10) i jego 'mniejsza' bo 4bitowa(układ wysyłający mnożnik pozostawiłem bez zmian) wersje w pliku 2.ms10)

    Pozdrawiam i z góry dziękuje za wszelką pomoc !



    /Edit: Zmieniłem układ na przesuwający w lewo nie wiem czemu dałem przesuwanie w prawo ;) i działa dla niektórych liczb. Niestety nie wiem dlaczego nadal nie działa dla pozostałych możliwe ze problem przeniesienia w sumatorach (który tu został rozwiązany przerzutnikiem d z wpisem szeregowym na rejestr) ?
  • #7
    Galertu
    Level 10  
    Witam!
    Z gory przepraszam za post pod postem :). Chcialbym zaprezentowac jedno z mozliwych rozwiazan tego ukladu; co o nim sadzicie ;) ?

    Układ mnożący 16x16bitów z wyświetlaniem na LED - algorytm

    Moglem tu wykorzystać inne opóźnianie sygnału ale uznałem ze takie bedzie najlatwiejsze w symulacji.
    Pozdrawiam
  • #8
    User removed account
    User removed account  
  • #9
    Galertu
    Level 10  
    AndrzejHir wrote:
    To schemat bez sensu. Same błędy logiczne. To nie ma prawa działać. Trzeba bedzie zglosić do moderatora. Tak chyba zrobię.


    Dosc ciekawa uwaga, choc wg mnie powinien dzialac. Moze to jakos sprecyzujesz, Zamiast rzucac oskarzenia?