vhdll

witam, mam takie szybkie pytanie..

powiedzmy ze mam

component IOBUF port (O : out STD_ULOGIC; IO : inout STD_ULOGIC; I : in STD_ULOGIC; T : in STD_ULOGIC); end component;

z bliblioteki UNISIM Xilinx.

Teraz chce do tego podlaczyc urzadzeni zewnetrzne, to znaczy takie ktore by odbieralo dane z IO, oraz wysylalo je ta sama linia.

generalnie na chlopski rozum wszystko jest proste. Gdy T odcina nadawce, wtedy odbiorca moze nadawac.

ale jak tu uniknac Multi-source in Unit??

jesli odbiorce zmapuje to musze jego wyjscie pod cos podlaczyc, jesli podlacze pod szyne IO, to niestety bedzie multi source...

ktos moze ma jakis pomysl?

zlotawy

Reply to
zlotawy
Loading thread data ...

zlotawy schrieb:

Zalezy z czym dokladnie masz problem: wersja 1) nie wiesz jak powiedzec "swojemu" modolowi zeby przestal nadawac? Przypisz mu stan "Z" (cos w stylu data <= 'Z' when enable='1' else data_src; ) wersja 2) usilujesz zbudowac magistrale wewnetrz scalaka (wszystkie unity komunikujace sie po linii IO siedza w tym samym ukladzie) - kompilator ostrzega ze wewnetrze bloki nie udostepniaja takiej funkcjonalnosci i ze sprobuje ja zasymulowac przy pomocy multiplekserow

- dziala to tak sobie i najrozsadniej jest zmienic projekt. GRG

Reply to
abert zielonka

zlotawy schrieb:

Zasadniczo tak - tylko uzyj sygnalow typu std_logic zamiast std_ulogic. To praktycznie to samo tylko std_logic obsluguje poprawnie multiple source a std_ulogic nie. Jesli uzyjesz std_logic projekt powinien byc kompilowalny nawet bez zmian konstrukcyjnych - do symulacji przynajmniej bo z ukladaniem tego w hardware beda problemy (jak w poprzednim liscie) GRG

Reply to
grg12

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.