Aktyw Forum

Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.

Sprawdź punkty Zarejestruj się

Zadanie - układy iteracyjne.

Moderatorzy: Jacek Bogusz, Moderatorzy

quatERo
-
-
Posty: 4
Rejestracja: 20 maja 2008, o 16:26
Lokalizacja: Ślężyno

Zadanie - układy iteracyjne.

Postautor: quatERo » 20 maja 2008, o 16:48

Witam. Piszę tutaj z prośbą o pomoc w zadaniu jakie dostałem na zajęciach Techniki cyfrowej. Zadanie jest dla mnie na tyle trudne, że nie udało mi się znaleźć rozwiązania przez 2 tygodnie. Jak się później okazało żadna z grup, które miały to zadanie nie wykonały go (to chyba najtrudniejszy projekt z jakim do tej pory się spotkałem). Przejdę do treści zadania.
Dane jest słowo n-bitowe, w którym sekwencja jedynek jest nie dłuższa od 4, np.:

0110011110101110101111

Zaprojektuj układ iteracyjny, który pozostawia w takim ciągu wyłącznie sekwencję jedynek o maksymalnej długości. Resztę zastępuje zerami, np.:

001010 --------------> 001010
01101010 -----------> 01100000
01100110101 -------> 01100110000
011011101011 ------> 000011100000

Zrealizuj układ na NAND-ach.
Profesor wymaga by słowo nie było krótsze niż 9-bitowe. Także można uznać, że trzeba zbudować układ który będzie obsługiwał słowa 9-bitowe.
Jak już pisałem siedziałem nad nim 2 tygodnie, niestety bezowocnie. Ja sam już nie potrafię nic wymyślić i proszę Was o pomoc, jesteście moją jedyną nadzieją w tym projekcie. Jeżeli jest tu ktoś kto potrafi zbudować taki układ prosiłbym o pomoc. Generalnie miałem kilka dobrych pomysłów, lecz były za trudne do zrealizowania, bądź okazywały się "złymi" pomysłami. Dziękuję z góry za pomoc.

marek1
-
-
Posty: 104
Rejestracja: 11 kwie 2007, o 18:46
Lokalizacja: Cieszyn

Postautor: marek1 » 20 maja 2008, o 18:40

Witam

Może już trochę dawno zajmowałem się układami iteracyjnymi,ale nie jestem pewien czy ten układ można wogóle w takiej formie zrealizować.
Jeżeli dobrze rozumiem to ma w ciągu zer i jedynek pozostać tylko najdłuższy ciąg jedynek, ale żeby sprawdzić który jest najdłuższy to trzeba najpierw wszystkie bity wczytać, a w układzie iteracyjnym do końca nie wiadomo ile ich jest.

Dało by się pewnie to zrealizować gdyby układ miał przepuszczać np. wszystkie ciągi czterech jedynek, czyli najdłuższy możliwy ciąg jedynek, ale wtedy i tak sygnał na wyjściu musiałby być opóźniony o minimum 4 bity.

Może warto poprosić Profesora o uszczegółowienie zadania.

Pozdrawiam
Marek

rafszym
-
-
Posty: 44
Rejestracja: 4 gru 2007, o 12:39
Lokalizacja: Warszawa

Postautor: rafszym » 21 maja 2008, o 14:32

heja,

Moim skromnym zdaniem układ iteracyjny to nazwa wynikająca ze sposobu projektowania.
Mianowicie projektujemy jedną "komórkę" układu dla jednego bitu, natępnie dla danej liczby bitów w sygnale łaczymy odpowiednią liczbę zaprojektowanych komórek.
Jest to samo jak dla sumatora: znany jest symator 1-bitowy, a łączymy ich tyle ile bitów ma mieć docelowy sumator.

pzdr.

quatERo
-
-
Posty: 4
Rejestracja: 20 maja 2008, o 16:26
Lokalizacja: Ślężyno

Postautor: quatERo » 24 maja 2008, o 18:05

heja,

Moim skromnym zdaniem układ iteracyjny to nazwa wynikająca ze sposobu projektowania.
Mianowicie projektujemy jedną "komórkę" układu dla jednego bitu, natępnie dla danej liczby bitów w sygnale łaczymy odpowiednią liczbę zaprojektowanych komórek.
Jest to samo jak dla sumatora: znany jest symator 1-bitowy, a łączymy ich tyle ile bitów ma mieć docelowy sumator.

pzdr.
Wiem co to jest układ iteracyjny i jak on wygląda... przeczytaj mój pierwszy post jeszcze raz, bo chyba nie zrozumiałeś mojego problemu.

tg3a
-
-
Posty: 243
Rejestracja: 26 maja 2008, o 19:46
Lokalizacja: Warszawa

Postautor: tg3a » 26 maja 2008, o 20:41

Ja myślę, że iteracyjność tego projektu polega na tym, że można go zrealizować w postaci bardzo podobnych do siebie warstw. 1-sza warstwa będzie zawierała sześć 4-wejściowych bramek NAND wykrywających wszystkie najdłuższe sekwencje 4-jedynkowe, oraz 6-wejściowej bramki NAND zanegowanej na wyjściu (albo, gdy profesor się zgodzi, to po prostu AND), wypracowującej sygnał zezwolenia, który, jeśli jest równy zeru, oznacza, że wykryto co najmniej jedną sekwencję 4 jedynek, i blokuje następne warstwy. Warstwa następna będzie zawierała siedem 4-wejściowych bramek NAND (ze względu na sekwencje 3-jedynkowe potrzebne byłyby 3-wejściowe, ale dodatkowo mamy sygnał zezwolenia), oraz jedną bramkę 7-wejściową AND lub NAND + negator. Analogicznie warstwy następne zawierają odpowiednio 8 i 9 bramek NAND również 4-wejściowych, bo za każdym razem maleje ilość wejść detekujących sekwencje, a rośnie ilość wejść zezwolenia (a warstwa sekwencji 2-jedynkowych również 8-wejściową bramkę AND lub NAND zanegowaną). Ponieważ nie ma następnych warstw, to ostatnia warstwa nie musi wypracowywać sygnału zezwolenia. Na wyjściu jest 9 bramek NAND maksymalnie 10-wejściowych, do których wejść są podłączone wyjścia wszystkich bramek NAND detekujących sekwencje jedynek (z wszystkich warstw), na których wejścia jest podawany odpowiedni sygnał wejściowy. Przykładowo bramka wyjściowa 1-szego bitu ma podłączone wejścia do wyjścia 1-szej bramki detekującej czwórki jedynek (na wejściach 1, 2, 3 i 4), do 1-szej bramki detekującej trójki jedynek (na wejściach 1, 2 i 3), do 1-szej bramki detekującej pary jedynek (na wejściach 1 i 2), oraz do 1-szej bramki detekującej pojedyncze jedynki (na wejściu 1). Bramki wyjść 4, 5 i 6 będą musiały mieć komplet 10-ciu wejść (4 z warstwy 1-szej, 3 z warstwy 2-giej, 2 z warstwy 3-ciej i 1 z warstwy 4-tej).
Jeśli ten opis słowny będzie zbyt skomplikowany, to postaram się narysować jakiś schemat. Mam nadzieję, że się nie pomyliłem, i moja koncepcja jest poprawna.
Pozdrawiam, i życzę zaliczenia tematu.

quatERo
-
-
Posty: 4
Rejestracja: 20 maja 2008, o 16:26
Lokalizacja: Ślężyno

Postautor: quatERo » 29 maja 2008, o 00:54

Zrobiłem ten projekt. Jeżeli ktoś jest zainteresowany jak to wygląda/działa to mogę wysłać plik układem w Multisim v10.

KonradB
-
-
Posty: 12
Rejestracja: 29 lis 2003, o 12:22
Lokalizacja: Warszawa

Postautor: KonradB » 29 maja 2008, o 11:39

Ile bramek na jeden blok Ci wyszło ? ;)

hkane
-
-
Posty: 1
Rejestracja: 29 maja 2008, o 18:18
Lokalizacja: Ostrów

Postautor: hkane » 29 maja 2008, o 18:20

Ja bym prosił o taki plik(tzn. w multisime). Rownież mam takie zadanie i nie mam pojęcia jak sie za nie zabrać. Z góry dziękuje za pomoc:)

quatERo
-
-
Posty: 4
Rejestracja: 20 maja 2008, o 16:26
Lokalizacja: Ślężyno

Postautor: quatERo » 29 maja 2008, o 20:21

Ile bramek na jeden blok Ci wyszło ? ;)
22 NANDy z 2-wejściowe
ostatni blok tych bramek miał 47
Ja bym prosił o taki plik(tzn. w multisime). Rownież mam takie zadanie i nie mam pojęcia jak sie za nie zabrać. Z góry dziękuje za pomoc:)
Wyślę Ci, ale jeżeli studiujesz w Politechnice Białostockiej to obiecaj mi, że nie oddasz identycznego projektu;P chyba powód jest znany;P
Do tego trzeba używać Logic Convertera ustawiając tablicę prawdy taką jaką potrzebujesz, szukasz skrócony wzór i każesz mu budować układ na NANDach, inaczej nie da rady;P
Wyślij mi na PM swój adres email, bo nie mogę sprawdzić jaki masz, a za pośrednictwem forum nie mogę wysyłać plików.

gabii
-
-
Posty: 2
Rejestracja: 1 lut 2010, o 12:14
Lokalizacja: wawa

Postautor: gabii » 1 lut 2010, o 21:44

hej :) ja tez mam zrobic zadanko z układów iteracyjnych, czy mógłby mi ktoś pomóc??? albo czy zna kogoś kto by dla mnie rozwiązał takie zadanko, oczywiście nie za darmo... gg:5013987

Wróć do „PLD/FPGA i inne zagadnienia techniki cyfrowej”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość