Tomasz O.
Guest
Tue Jul 10, 2007 6:29 pm
Witam,
mam urządzenie które zawiera CPL Xilinx'a (XC95288XL) i do jego
programowania używam ISE Webpack'a. Problem polega na tym, że jak
ustawiam magistralę jako bidirectional to ISE mapuje mi ją w następujący
sposób: 4 młodsze bity inout a 4 starsze jako wyjścia trójstanowe. Czy
ktoś wie jak zrobić żeby cała magistrala była typu inout ??
Pozdrawiam,
Tomasz O.
John Smith
Guest
Wed Jul 11, 2007 10:28 am
Quote:
mam urządzenie które zawiera CPL Xilinx'a (XC95288XL) i do jego
programowania używam ISE Webpack'a. Problem polega na tym, że jak
ustawiam magistralę jako bidirectional to ISE mapuje mi ją w następujący
sposób: 4 młodsze bity inout a 4 starsze jako wyjścia trójstanowe. Czy
ktoś wie jak zrobić żeby cała magistrala była typu inout ??
Na Twój konkretny problem nie odpowiem. Ale... Jaka to wersja ISE?
Do wersji 7.1 z CPLD pamiętam kłopoty, później już nie.
Może wystarczy upgrade?
Pozdrawiam,
K.
Tomasz O.
Guest
Wed Jul 11, 2007 1:39 pm
John Smith pisze:
Quote:
Na Twój konkretny problem nie odpowiem. Ale... Jaka to wersja ISE?
Do wersji 7.1 z CPLD pamiętam kłopoty, później już nie.
Może wystarczy upgrade?
Pozdrawiam,
K.
Mam Ise 9.1i + SP3 najwyżej ściągne 9.2 jeśli nic innego nie wymyśle.
Pozdrawiam,
Tomasz O.
Górski Adam
Guest
Wed Jul 11, 2007 3:17 pm
Tomasz O. napisał(a):
Quote:
Witam,
mam urządzenie które zawiera CPL Xilinx'a (XC95288XL) i do jego
programowania używam ISE Webpack'a. Problem polega na tym, że jak
ustawiam magistralę jako bidirectional to ISE mapuje mi ją w następujący
sposób: 4 młodsze bity inout a 4 starsze jako wyjścia trójstanowe. Czy
ktoś wie jak zrobić żeby cała magistrala była typu inout ??
Pozdrawiam,
Tomasz O.
A może tam gdzie są tylko wyjścia nie są potrzebne wejścia i zostały
"zoptymalizowane"
Bez źródeł nie da rady
Adam
Tomasz O.
Guest
Wed Jul 11, 2007 9:07 pm
Górski Adam pisze:
Quote:
A może tam gdzie są tylko wyjścia nie są potrzebne wejścia i zostały
"zoptymalizowane"
Bez źródeł nie da rady
Adam
Faktycznie po zmienieniu kodu wszystko jest ok (chociaż przedtem też
powinno być w porządku). Mam dodatkowe pytanie ponieważ nie bardzo
działa mi dostęp do pamięci SRAM. Pamięć jest 15ns w jednym takcie
zegara(25MHz) pamięć jest odczytywana a w drugim zapisywana poniżej
zamieściłem kod procesu:
process(clk_50MHz,clk_cnt)
begin
if(clk_50MHz'event and clk_50MHz = '1') then
if(clk_cnt = "00") then -- odblokowanie wyjść
OE <= '0'; -- pam, ustawienie adr
addr_out <= addr_vga; -- ustawienie magistrali
data_IO <= "ZZZZZZZZ"; -- danych jako wejście
r_w <= '1'; -- tryb odczytu
elsif(clk_cnt = "01") then
temp <= data_IO;
-- wpisanie do rej odczytanej inf aby ją później wyświetlić
elsif(clk_cnt = "10") then
OE <= '1'; -- ustawienie adresu
addr_out <= adres; -- ustawienie danych
data_IO <= dana;
elsif(clk_cnt = "11") then
r_w <= '0'; -- tryb zapisu
end if;
end if;
end process;
clk_cnt zlicza mi impulsy zegara 50MHz.
Jeżeli ktoś mógłby na to rzucić okiem to będę wdzięczny.
Pozdrawiam
Tomasz O.