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

Modератор:

не забываем, что сущестует личная переписка. Всякие "суперинформативные" для широкой общественности сообщения отправляйте личной почтой.

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


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

Возникли проблемы при переходе с v2.1 на v2.2 (до этого был v1.2) . Сразу скажу использую готовые куски инфенеоновского кода в коде сильно не копался. При переходе с 1.2 на 2.1 изменил только значения GCM1-8 согласно errata, и вроде все заработало. Сейчас поставил v2.2 и прописываю GCM согласно datasheet или F56v2.2FMRClkCalcR1.zip получается полная фигня. Устройство не выдает в линию правильные сигнал. Возможно, что опять проблемы с pll. И еще WID как-то странно читается 0E для 2.1 и 07 для 2.2.

Изменено пользователем Меандр

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


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

2Меандр

Какую схему питания используете? Если - Single Voltage Power Supply Mode, убедитесь, что на Vddc (pin 74) стоит кондер на землю. В версии 1.2 он был N.C., а в 2.2 ( согласно DS стр. 68, 5.4.1 Power Supply Configuration) должен иметь кондер на землю.

Это критично, проверено.

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


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

С питанием все нормально, с v2.1 устройство работает работало раньше хоть как-то, с v2.2 оно не работает на PRI линию совсем. Боюсь я что-то не прописываю, что следовало бы прописать. Но в тоже время тактовые sclkr и sypr не сбоят. :help: Если у кого есть errata на 2.2 большая просьба выслать meandr.5(at)gmail.com

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


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

Странная выходит ситуация - когда загружаю значения со стр. 301 Table 66 GCMx Register Programming PRI синхронизируется, но кривой TDM, когда из Table 1 MCLK Selection(или программой для расчета) стр. 18 наоборот. То же самое было и с версией v2.1. При этом с v1.2 все работает нормально и там и там. Data Sheet Rev. 1.1, 2005-06-13.

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


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

Для 2.2 и 2.1 важно не обнулять после сброса некоторые регистры. Лучше оставить все как есть, прописывать только то, что, например, нагенерил AppWiz, как в нашем случае. Кроме того, попался чип с маркировкой как у 2.2 и поведением как 1.2. :07:

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


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

да да было такое

закупили партию чипов с маркировкой V2.2 и датой производства 2004 года, хотя тогда их ещё и не делали...

так как они работать отказались, пришлось менять

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


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

В общем достал я Errata. Теперь я знаю что мне делать, но есть проблема. В Errata написано нужно перепрограммировать эквалайзер приемника, написан алгоритм как это сделать, но вот беда - нету самих значений которыми надо программировать эквалайзер. Написано, что эти значения доступны в виде ASCII txt файла, спросил у дистрибьютеров infeneon которые мне Errata дали - сказали нет у них ничего. Может у кого есть этот самый файл - выложите плиз.

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


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

В Errata написано нужно перепрограммировать эквалайзер приемника...

Ну так бросьте сюда то, что написано - почитаем. А в чем собственно сама проблема? Дальность выжать не смогли?

Эти значения доступны в виде ASCII txt файла..

Возможно его просто один из визардов генерит?

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


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

Ну так бросьте сюда то, что написано - почитаем. А в чем собственно сама проблема? Дальность выжать не смогли?

 

Возможно его просто один из визардов генерит?

Визардов у них тока два. Один генерирует только значения для внутреннего генератора (значения GCM), другой считает параметры входной и выходной цепи. ни у одного из них нет кнопок для генерации каких-либо файлов.

 

Собственно проблема в том, что по тех. заданию на устройство у меня чувствительность -40дБ.

В данный момент фреймер мне обеспечивает -18 дБ, чтобы улучшить нужно перепрограммировать эквалайзер

вот то что в errata написано

 

TBR4 compliance tests showed that immunity against noise caused by 18 dB attenuated HDB3 coded E1 signals

according to the test description in TBR4 (Annex B.3.2) is not given with the standard configuration of the device.

Description

Optimization of the receive equalizer logic for clock and data recovery of up to -43 dB attenuated E1 signals

introduced an immunity against noise for lower attenuated signals.

Fix

None.

Workaround

To improve the Receiver Sensitivity to the specified value of -43 dB and an improved immunity against noise to

meet the TBR4 specification, a modified parameter set must be loaded into the Receive Equalizer RAM.

Please take into account that the access to the Receive Equalizer Parameters is not possible, if the

microprocessor interface is operated in “INTEL Multiplexed Mode” (See chapter 2.5 of the Data Sheet).

 

Ну и описана процедура програмирования Receive Equalizer Parameters.

 

также указано

RAM data values to be programmed are available in an electronic format as ASCII files, defining address and data

to be written.

Source code in C-Language is available on the confidential library of Infineon.

Но дистрибьютеры понятия не имеют о каком то Source code in C-Language или ASCII files.

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


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

В общем достал я Errata. Теперь я знаю что мне делать, но есть проблема. В Errata написано нужно перепрограммировать эквалайзер приемника, написан алгоритм как это сделать, но вот беда - нету самих значений которыми надо программировать эквалайзер. Написано, что эти значения доступны в виде ASCII txt файла, спросил у дистрибьютеров infeneon которые мне Errata дали - сказали нет у них ничего. Может у кого есть этот самый файл - выложите плиз.

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

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


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

В общем достал я Errata. Теперь я знаю что мне делать, но есть проблема. В Errata написано нужно перепрограммировать эквалайзер приемника, написан алгоритм как это сделать, но вот беда - нету самих значений которыми надо программировать эквалайзер. Написано, что эти значения доступны в виде ASCII txt файла, спросил у дистрибьютеров infeneon которые мне Errata дали - сказали нет у них ничего. Может у кого есть этот самый файл - выложите плиз.

Попробуйте попросить не ACII txt, а просто исходники драйвера для FALC56 для ихней evalboard. Файл зовется f56.c. Там в процедуре инициализации что-то есть. Может он даже у вас уже есть.

У меня файл древний, 2003 года, содержит в себе

    /*Receiver Sensitivity optimization*/
/*#ifdef F56_21    
    falc = ctx->falc[0].pxReg;
    MEM_WRITE8(falc + FALC56_BB , 0x17);
    MEM_WRITE8(falc + FALC56_BC , 0x55);
    MEM_WRITE8(falc + FALC56_BB , 0x97);
    MEM_WRITE8(falc + FALC56_BB , 0x11);
    MEM_WRITE8(falc + FALC56_BC , 0xAA);
    MEM_WRITE8(falc + FALC56_BB , 0x91);
    MEM_WRITE8(falc + FALC56_BB , 0x12);
    MEM_WRITE8(falc + FALC56_BC , 0x55);
    MEM_WRITE8(falc + FALC56_BB , 0x92);
    MEM_WRITE8(falc + FALC56_BB , 0x0C);
    MEM_WRITE8(falc + FALC56_BC , 0x00);
    MEM_WRITE8(falc + FALC56_BB , 0x8C);
    MEM_WRITE8(falc + FALC56_BB , 0x0C);
#endif*/
}

P.S. Если мне не изменяет память, там по этим адресам далеко не всегда получается писать. То ли, чтоб писалось, надо чтоб шина была 16-разрядная, толи немультиплексированная. Что-то такое в Errata было. Только не помню в какой версии, может в 2.2 уже все нормально. В общем, обратите внимание.

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


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

Попробуйте попросить не ACII txt, а просто исходники драйвера для FALC56 для ихней evalboard. Файл зовется f56.c. Там в процедуре инициализации что-то есть. Может он даже у вас уже есть.

У меня файл древний, 2003 года, содержит в себе

    /*Receiver Sensitivity optimization*/
/*#ifdef F56_21    
    falc = ctx->falc[0].pxReg;
    MEM_WRITE8(falc + FALC56_BB , 0x17);
    MEM_WRITE8(falc + FALC56_BC , 0x55);
    MEM_WRITE8(falc + FALC56_BB , 0x97);
    MEM_WRITE8(falc + FALC56_BB , 0x11);
    MEM_WRITE8(falc + FALC56_BC , 0xAA);
    MEM_WRITE8(falc + FALC56_BB , 0x91);
    MEM_WRITE8(falc + FALC56_BB , 0x12);
    MEM_WRITE8(falc + FALC56_BC , 0x55);
    MEM_WRITE8(falc + FALC56_BB , 0x92);
    MEM_WRITE8(falc + FALC56_BB , 0x0C);
    MEM_WRITE8(falc + FALC56_BC , 0x00);
    MEM_WRITE8(falc + FALC56_BB , 0x8C);
    MEM_WRITE8(falc + FALC56_BB , 0x0C);
#endif*/
}

P.S. Если мне не изменяет память, там по этим адресам далеко не всегда получается писать. То ли, чтоб писалось, надо чтоб шина была 16-разрядная, толи немультиплексированная. Что-то такое в Errata было. Только не помню в какой версии, может в 2.2 уже все нормально. В общем, обратите внимание.

 

Прислали мне исходники, теперь буду пробовать перепрограммировать. Всем спасибо за помощь

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


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

...теперь буду пробовать перепрограммировать.

Мне где-то через месяц тоже придется выжимать максимальную дальность из FALC и QFALC, так что о результатах было-бы интересно узнать.

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


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

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

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

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

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

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

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

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

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

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