Jump to content

    

Миграция с SX2 (CY680001) на FX2LP (CY68001?A)

Добрый день.

 

Проконсультируйте пожалуйста по вопросу миграции с Cypress SX2 на FX2LP в режиме Slave FIFO.

 

Что есть:

FPGA <-> SX2 SSOP56. Всё радостно работает и вполне устраивает, кроме температурного диапазона (хотя все использованные чипы SX2 работают на -40 °C, что удивительно) и потребления (что косвенно объясняет почему оно работает на -40 °C -- видимо быстро разогревается, ибо лопает как не в себя). И устарел чип лет десять назад.

 

Хотелось бы:

FPGA <-> FX2LP SSOP56.

 

После перелопачивания интернетов и этого форума так и не удалось найти информации по взаимодействию мастера (FPGA) и FX2LP (в режиме Slave FIFO). С обменом bulk пакетами по USB endpoints всё понятно (ничем не отличается от SX2). Но совершенно непонятно, как, к примеру, проинформировать мастера о возникновении события SET_CONFIGURATION/USB_CONNECT/USB_DISCONNECT или как мастер может установить/сбросить STALL на какой-нибудь endpoint. Это необходимо для реализации протокола обмена по USB и общего функционирования устройства.

 

В SX2 для этого есть командный интерфейс (дополнительная нога ADDRESS[2] для адресации и INT#, RDY для квитирования событий) -- события приходят и состояние endpoint'ов управляется. В FX2LP такого интерфейса нет. Есть 3 (или 4) свободные ноги GPIO, но после беглого прочтения datasheet и TRM сложилось впечатление, что один-в-один как SX2 интерфейс не реализовать (или есть варианты?)

 

В голову приходит только идея применить неиспользуемые FIFO (поскольку для передачи данных по USB задействовано всего два endpoint'а) для реализации двустороннего обмена между 8051 <-> FPGA: мастер пишет в одно FIFO команду (некую определённую последовательность байт) и ожидает в другом FIFO подтверждение и статус выполнения этой команды, в это же FIFO вываливаются коды необходимых событий, а мастер мониторит состояние этого FIFO.

 

Собственно вопрос: как правильно (и с минимальными затратами) организовать обмен между мастером и FX2LP? И реализуема ли идея предложенная выше?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this