1 Отредактировано nice.vladi (2018-01-15 08:01:44)

Тема: Запуск PLL

Добрый день!

Отладочная плата SF2 Juinor Kit.

Несколько вопросов:
1. Если я правильно все понял, для входов внешнего опорного генератора используются специальные ноги на микросхеме. В документации к отладочной плате они обозначены как A_XT, A_EXT - для опоры 32768 Гц и M_XT, M_EXT для 20 МГц.
Однако, я не смог использовать эти пины в своем проекте. Их описание в .pdc файлах не принимается Libero (Error: PDC-01: port name doesn't exist in the netlist or is not connected to an IoCell macro at PDC Line : set_io M_EXT -pinname 70 -DIRECTION INPUT).

2. Следует из первого)
Варианты запуска PLL, найденные мною, предполагают использование дизайнеров SystemBuilder и SmartDesign. Мне же более интересна возможность запуска PLL без использования этих дизайнеров (генерация модуля и встраивание его в текстовые файлы .v). Существует ли такая возможность?

На данный момент мои попытки использовать в проекте пины A_XT, A_EXT, M_XT, M_EXT не увенчались успехом и я запустил PLL от приходящего в ПЛИС клока Ethernet (в документации E_ref_Clk). Который, кстати, по схеме должен иметь частоту 25 МГц, но, почему-то, гудит на 50 МГц.

Спасибо!

2

Re: Запуск PLL

1. В качестве источника сигнала тактирования можно использовать внутренние RC-генераторы, внешние кварцевые резонтаторы подключаемые к предопределенным ногам, внешние кварцевые генераторы которые рекомендуется заводить на ноги подключенные к цепям тактирования, но если требования по тактированию проекта не жесткие, то можно к обычным контактам (не рекомендуется).

по ссылке
https://drive.google.com/file/d/1yiegGM … sp=sharing
можно скачать проект, аналогичный проекту 3
"Разработка встраиваемого приложения в среде SoftConsole 4.0."

с нашего сайта,
https://actel.ru/item/novyj-otladochnyj … -psr-aktel

но в котором тактирование осуществляется от клока 51 МГц (значение установлено наобум) полученного с помощью PLL из 20 МГц кварцевого резонтатора.


2. Действительно, для настройки компонентов ПЛИС и СнК Microsemi предлагает разработчикам использовать  соответствующие утилиты. Тем не менее код HDL все-равно создается и его в принципе можно использовать в проектах пользователя именно как HDL код. Например для проекта по ссылке выше код для CCC_PLL находится в папке проекта
...\MyFirstProject\component\work\MyFirstProject\FCCC_0
а для тактового генератора на основе внешнего резонатора 20 МГц
...\MyFirstProject\component\work\MyFirstProject\OSC_0

т.е. возможность существует, но использовать ее не рекомендуется. Рекомендуется использовать стандартные утилиты по настройке компонентов SmartGen (запускается автоматически из SmartDesign при двойном щелчке на компоненете, напрмер OSC или CCC) SmartDesign и SystemBuilder. На мой взгляд настройка с помощью стандартных утилит происходит намного быстрее чем редактирование теста HDL.


По клоку от Ethernet. Микрросхема KSZ8081RNA использует внешний кварцевый резонтатор на 25 МГц (ноги 7 и 8) на основе которого синтезирует 50 МГц на ноге 16, цепь E_ref_Clk по схеме отладочного набора (даташит, стр.1 абзац 4, и стр.10 с описанием ног)
https://drive.google.com/file/d/1KsP69d … sp=sharing

3

Re: Запуск PLL

pitpg пишет:

1. В качестве источника сигнала тактирования можно использовать внутренние RC-генераторы...
2. Действительно, Microsemi предлагает разработчикам использовать с помощью соответствующих утилит...

1. К сожалению, наши версии Libero не совместимы, но общую идею я, кажется, уловил:
Сначала необходимо инициализировать спец. пины, на которое заводится клок, при помощи генерируемых модулей, а затем использовать выходы этих модулей в качестве опорного сигнала для PLL.

2. Как правило, модули, создаваемые автоматически обладают низкой читабельностью и, к тому же, в довесок к синтезируемым модулям (таким, как PLL) создается большое количество файлов, которые просто не нужны и захламляют проект. Я за минимализм)

pitpg пишет:

По клоку от Ethernet...

Виноват, поторопился и сморозил глупость, не разобравшись.


Спасибо за развернутый ответ!