Перейти к содержанию
    

Помогите с двунаправленным портом

Порылся на форуме нашёл тему: http://electronix.ru/forum/index.php?showtopic=41839, но рабочегго кода, того что мне надо нет. Суть в том, что бы как то организовать ввод/вывод по одной и той же линии, это всё надо для контролёра PCI. Сделать как то подругому не представляю как! Если есть идеи поделитесь!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Предположим, что у Вас есть шина адреса/данных, описанная в entity следующим образом:

PCI_AD : inout std_logic_vector(31 downto 0);

Есть внутренний регистр (или шина), на которой находятся данные для выдачи на шину PCI:

signal iDOUT : std_logic_vector(31 downto 0);

И есть внутренний сигнал, по которому из внутреннего регистра (или внутренней шины) на шину PCI должны выдаваться данные:

signal iOE : std_logic;

 

Тогда для организации выдачи данных на шину Вам достаточно написать следующее:

PCI_AD <= iDOUT when iOE='1' else (others => 'Z');

И реализовать корректное формирование данных на шине iDOUT и значения сигнала iOE.

 

PS: Скачайте на opencores.org реализацию ядра интерфейса шины PCI и посмотрите, как там это сделано.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...