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

SATA2->3(xilinx)

Реализовали SATA2 на плате ML506 все заработало.

Решили перейти на SATA3. Взяли плату KC705. на FMC одели мезонин 4-Port SFP/SFP+ and SATA I/II/III FMC Module фирмы HiTech Global.

САПР - Vivado. Используем стандартный шаблон настройки трансивера для SATA3. И начались проблемы..

Линк поднимается (устанавливается соединение по ООВ) через раз. Ошибки при передаче данных(контрольная сумма). Читаем форум XILINX -

там пишут странные вещи про настройки трансивера.

Кто нибудь сделал SATS3 на KINTEX?

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


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

А рекомендации, которые там давали, выполнили?

А можно поинтересоваться о каких рекомендациях идет речь?

Встречал эти документы:

 

http://www.xilinx.com/support/answers/53364.html#solution

http://www.xilinx.com/support/answers/63869.html

http://www.xilinx.com/Attachment/edoc_k7_g...OB_diagrams.pdf

 

Там где речь идёт об electrical Idle не совсем понятно что в алгоритме для sata 2 и 3 значит "incoming data Valid". Какие данные можно считать валидными?

Что ещё рекомендуете посмотреть по данной теме?

 

На данный момент девайс мне отвечает COMINIT и COMWAKE, где то проскакивает ALIGN и совсем не могу дождаться SYNC

За любые полезные рекомендации буду очень благодарен!

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


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

Сначала сам написал, потом нашел где то на форуме информацию о том, что из-за этого могут быть проблемы. Задействовал тот который идет с ядром. Но ситуация не изменилась.

 

И на выходе RXELECIDLE почти всегда высокий уровень

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


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

Сначала сам написал, потом нашел где то на форуме информацию о том, что из-за этого могут быть проблемы. Задействовал тот который идет с ядром. Но ситуация не изменилась.

 

И на выходе RXELECIDLE почти всегда высокий уровень

 

Судя по даташиту на высокий уровень rxelecidle вообще не нужно обращать внимания, только его переход из высокого в низкое состояние + следить за валидность данных. А для этого много разных флагов задействуется.

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


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

Не буду создавать новую тему, спрошу здесь.

Имеется плата Z7 MiniITX на XC7Z100. В режиме SATA gen2. все работает нормально. Перенастраиваю GTX в режим SATA gen1 - получаю следующий эффект:

Линк поднимается на некоторое время. Успеваю даже принять Device to Host Register. Через какое-то время получаю rxelecidle на пару тактов, rxcdrlock падает и соответственно следующего ALIGN от девайса больше не получаю.

 

Как себя должен вести rxcdrlock? У меня он в "иголках" но на форумах Xilinx пишут, что это вроде как нормально...

Как определить причину, почему пропадает rxcdrlock?

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


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

Не буду создавать новую тему, спрошу здесь.

Имеется плата Z7 MiniITX на XC7Z100. В режиме SATA gen2. все работает нормально. Перенастраиваю GTX в режим SATA gen1 - получаю следующий эффект:

Линк поднимается на некоторое время. Успеваю даже принять Device to Host Register. Через какое-то время получаю rxelecidle на пару тактов, rxcdrlock падает и соответственно следующего ALIGN от девайса больше не получаю.

 

Как себя должен вести rxcdrlock? У меня он в "иголках" но на форумах Xilinx пишут, что это вроде как нормально...

Как определить причину, почему пропадает rxcdrlock?

Приемную часть трансивера корректно сбрасываете после появления rxelecidle?

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


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

Когда-то занимался запуском SATA на Kintex7 - были примерно похожие проблемы. SATA2 работал (да и SATA3), SATA1 так и не взлетел. Списал на настройки трансивера /которые можно крутить до бесконечности/, благо что сильной потребности в том режиме не было.

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


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

Когда-то занимался запуском SATA на Kintex7 - были примерно похожие проблемы. SATA2 работал (да и SATA3), SATA1 так и не взлетел. Списал на настройки трансивера /которые можно крутить до бесконечности/, благо что сильной потребности в том режиме не было.

 

Моя проблема оказалась в тактировании oob-части трансивера. Потребовалось завести более медленный клок на CLKRSVD[0]

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


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

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

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

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

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

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

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

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

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

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