[an error occurred while processing this directive]
Ответ: (+)
(«Телесистемы»: Конференция «Программируемые логические схемы и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено d_y 11 января 2005 г. 11:32
В ответ на: Ответ: код в студию! отправлено Mad Makc 10 января 2005 г. 19:21

Делаю PCI-CAN плату на основе CAN контроллера SJA1000.
В процессах выше вырабатываю управляющие стробы адреса, записи, чтения.
шина AD - мультиплексированная адрес данные CAN контроллера SJA1000.
RD_s - строб чтения
WR_s - строб записи
cbe - BE с PCI
l_dato_in- локальный выход данных с PCI корки.
l_adi_s - локальный вход данных с PCI корки
process
begin
if rst='0' or RD_s='0'-- если строб чтения = 0 то записываем на AD_s<='Z'
then
AD_s<="ZZZZZZZZ";
elsif WR_s='0' --иначе если строб запси = 0 то анализируя BE пишем на AD соответствующий байт.
then
if cbe="1110"
then AD_s(7 DOWNTO 0)<=l_dato_in (7 DOWNTO 0);
end if;
if cbe="1101"
then AD_s(7 DOWNTO 0)<=l_dato_in (15 DOWNTO 8);
end if;
if cbe="1011"
then AD_s(7 DOWNTO 0)<=l_dato_in (23 DOWNTO 16);
end if;
if cbe="0111"
then AD_s(7 DOWNTO 0)<=l_dato_in (31 DOWNTO 24);
end if;
else
AD_s<=adr_in_obsh ; -- адрес пишу всегда, по заднему фронту строба адреса я его защелкиваю в SJA1000.
end if;
end process;

В след процессе читаю шину AD SJA1000 и пишу на локальный вход PCI корки, анализируя при этом CBE.

process (cbe)
begin
if RD_s='0' then
CASE cbe IS
WHEN "1110" => l_adi_s(7 DOWNTO 0)<=AD_s (7 DOWNTO 0);
WHEN "1101" => l_adi_s(15 DOWNTO 8)<=AD_s (7 DOWNTO 0);
WHEN "1011" => l_adi_s(23 DOWNTO 16)<=AD_s (7 DOWNTO 0);
WHEN "0111" => l_adi_s(31 DOWNTO 24)<=AD_s (7 DOWNTO 0);
WHEN OTHERS => l_adi_s<=( others=>'Z');
END CASE;
end if;
end process;
AD<=AD_s;
l_adi<=l_adi_s;

Когда идет чтение то с PCI вычитаваю FF. Как будто неопределенное значение на AD во время чтения.
Пробовал ставить lpm_constant на AD - вычитываю то число которое задал.



Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru