Skocz do zawartości

Pomocna odpowiedź

Mam za swoje, ale chyba mi się nie należało, bo naprawdę chciałbym zobaczyć przykład którego Koleżanka nie rozumie. To zwykle kieruje dyskusję na jakieś konkretne tory zamiast blabla i "poczytaj sobie". Poza tym nawet Ty sama pewnie lepiej byś się czuła startując od jakiegoś działającego rozwiązania i modyfikując je tak by spełniło Twoje oczekiwania niż stając przed czarną (białą?) tablicą z kredą w ręku i.. niekomfortową pustką w głowie 😐

No i nareszcie dowiedzieliśmy się, na czym pracujesz. W tym kontekście moje wynurzenia o procesorach są trochę nie na miejscu, ale - tak jak zdecydowana większość tutaj - nie jestem jasnowidzem. Warto takie podstawowe rzeczy umieszczać w pierwszych postach.

Udostępnij ten post


Link to post
Share on other sites

:-> mysle ze nic zlego nie napisalam. 🙂

dobrze, mam tutaj przyklad, napisalam go z internetu (nie sama), zeby bylo jasne

🙂

w entity nie wiem czy dobrze rozumiem

clkin-wejscie zegara

reset-reset

exin-?

clkout - wyjscie zegara

msg- wyjscie danych?

synteza przechodzi ok, ale nie jestem w stanie zdefiniowac pinow.

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity wtch is
   Port ( clkin : in STD_LOGIC;
          reset : in STD_LOGIC;
          exin : in STD_LOGIC;
          clkout :out STD_LOGIC;
          msg : out STD_LOGIC);
end wtch;

architecture Behavioral of wtch is

       signal toggle: std_logic :='0';
       signal xu: std_logic_vector(22 downto 0);
begin
   process (clkin, reset, exin)
       begin
           if reset ='1' then
               xu <=(others =>'0');
               clkout <='1';

               elsif rising_edge (clkin) then

                   xu <= xu +1;
                   if exin ='1' then
                   xu <= (others =>'0');
                   msg <='0';--Resetting der Ausgabe(Resetowanie problemu)
                   end if;


                   if exin = '0' and xu ="11111111111111111111111" then
                   msg <='1';-- Setzen Sie den Interrupt(ustawic przerwanie)
                   end if;

                   if(xu = "11111111111111111111111" ) then
                   toggle <= not toggle;--um den Clark zu verlassen(do wyczszczenia clk)
                   xu <=(others =>'0');
                   end if;


               end if;
               end process;

end Behavioral;
]

Udostępnij ten post


Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.


×
×
  • Utwórz nowe...