Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Конфигурация блокирует выход тактового генератора
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Системы на ПЛИС - System on a Programmable Chip (SoPC)
Nedd
Здравствуйте, столкнулся с интересной проблемой. Есть плата Terasic SoCkit. Необходимо поднять гигабитный трансивер. Опорная частота для трансивера подается на внутренний пин( PIN_P9) с микросхемы генератора частот ( si5338) напрямую (через резистор). При запуске платы микросхема генератора конфигурирует заданый порт частотой 100Мгц ( проверено осцилографом), однако, если в прошивке сконфигурирован пин P9 ( как input), на выходе генератора сигнала нет. То есть - включили плату, есть 100МГц, прошили - шум.
Пин необходимо конфигурировать для использования ip ядра.
Очевидно, это особенность квартуса, подскажите в каком направлении нужно копать?
Ход моих мыслей- сделать компоненту i2c и конфигурировать память еще раз уже после прошивки, но неизвестно будет ли это работать.
Corvus
А ПЛИС с этой генерирующей микросхемой соединена только по I2C и выходу CLK. Может ещё какие управляющие есть, ресет, например. И помимо перевода P9 на вход, Ваша прошивка переводит генератор в неактивное состояние другим пином?
krux
мало назначить ножку входом, надо его куда-нибудь подключить внутри плисины, иначе оптимизатор всё выкинет.
в таком случае у вас вывод становится "выводом по умолчанию", и к нему применяются правила, указанные в Assignments -> Device -> Device and pin options

отчет fitter-а смотрели?
там можно посмотреть какие выводы в прошивке реально назначены как In, какие - как Out, какие - Bidir.
Nedd
В том то и дело, что в прошивке отсутствует какое-либо взаимодействие со схемой (i2c специально отключено, остальные пины также).
Касательно использовать пины-да, конечно я все подключал с тем же результатом, методом исключения локализовал проблему до процедуры объявления порта, дальше неясно.
FakeDevice
а что у вас происходит с неиспользуемыми пинами? возможно ли инвертировать подтяжки (к питанию, если сейчас неиспользуемые тянутся к земле, либо наоборот). это навскидку. а по-хорошему, конечно, схему нужно изучать и смотреть какие там ещё завязки с генератором.
Jury093
Цитата(Nedd @ Jun 20 2016, 11:54) *
Здравствуйте, столкнулся с интересной проблемой. Есть плата Terasic SoCkit. Необходимо поднять гигабитный трансивер. Опорная частота для трансивера подается на внутренний пин( PIN_P9) с микросхемы генератора частот ( si5338) напрямую (через резистор). При запуске платы микросхема генератора конфигурирует заданый порт частотой 100Мгц ( проверено осцилографом), однако, если в прошивке сконфигурирован пин P9 ( как input), на выходе генератора сигнала нет. То есть - включили плату, есть 100МГц, прошили - шум.

посмотрите в этой теме:
http://www.alteraforum.com/forum/showthread.php?t=47231
может это чем-то поможет..
как гипотеза - надо сконфигурировать выход si5338 в правильный режим..
Nedd
Приложил схемы трансивера и генератора частоты. Соответственно, искомы сигнал находится на выходах 13 и 14 схемы U35. По умолчанию конфигурируется в 100Мгц. Я пытаюсь подключится к выходу P9 трансивера U25A.




FakeDevice
клок идёт диффпарой. можно ли подключать только одну линию, р9 из двух?

upd: и согласовать стандарты надо, включая питания, внутренние терминаторы со стороны плис и т.д.
Nedd
Принимаем клок тоже дифпарой (PIN_P8, PIN_P9), HCSL. HCSL не требует терминаторов (а в квартусе даже невозможно его назначить при данном стандарте).
FakeDevice
Цитата(Nedd @ Jun 21 2016, 15:55) *
Принимаем клок тоже дифпарой (PIN_P8, PIN_P9), HCSL. HCSL не требует терминаторов (а в квартусе даже невозможно его назначить при данном стандарте).

ок, просто уточнил, вдруг стоит терминатор?
а по подключению не спутали? p-n для генератора 13-14, а для плис 9-8, судя по схеме. хотя, конечно, сложно себе это представить. софт от ксайлинкса, например, в подобных случаях ругается громко.
Nedd
Собрал модуль конфигурации микросхемы по i2c.

Вариант 1 Не объявлен Pin_P9 (clk трансмиттера).
1) При включении платы ( без прошивки, конфигурация по умолчанию) CLK2 =100МГц.
2) После прошивки, но без конфигурации SI5338 CLK2=100МГц.
3) После прошивки и реконфигурации CLK2=125МГц ( согласно осцилографу). Сигнал диффиренциальный.


Вариант 2 Объявлен Pin_P9 (clk трансмиттера).
1) При включении платы ( без прошивки, конфигурация по умолчанию) CLK2 =100МГц.
2) После прошивки, но без конфигурации SI5338 CLK2=0(шум). Сигнал не дифииренциальный.
3) После прошивки и реконфигурации CLK2=0(шум). Сигнал не диффиренциальный.

При прошивке платы обмен по i2c со схемой не производится (проверенно осцилографом).



Nedd
Ну что ж, сам спросил - сам ответил.
Для того, чтобы активировать PIN_P9 необходимо в QSF файле квартуса прописать set_instance_assignment -name INPUT_TERMINATION OFF -to <refclk_pin_name>.
В случае с Cyclone v, строка имеет вид set_instance_assignment -name XCVR_REFCLK_PIN_TERMINATION DC_COUPLING_EXTERNAL_RESISTOR -to <refclk_pin_name>.
Ну и парочка ссылок от Альтеры по теме проблемы:
https://www.altera.com/support/support-reso...242009_258.html
https://www.altera.com/support/support-reso...122012_612.html
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2024 Invision Power Services, Inc.