Примерно так. Входной клок нужно указывать потому, что этого требует функция create_generated_clock (его параметры нужны для расчёта сгенерированного клока), анализатор будет считать, что фазовый сдвиг между клоками равен нулю, если не указано иное. В реальности в обычном (кажется, он называется Normal) режиме PLL у альтер обеспечивает синфазность между входным пином (внутренним) PLL и выходным пином клока. Поэтому если использовать входной клок для тактирования логики (а не только для подачи на PLL), то связанность, вроде, там должна быть. Другое дело, что параметры джиттера и прочее подобное у этого клока будут отличаться от выходного клока PLL, что и понятно. Для учёта этих эффектов там есть функция defive_clock_uncertainty, квартус выдаёт предупреждение, если её не вызывать.
Если нужна привязка именно ко входу, то это уже надо включать режим компенсации.
Будет ли STA считать клоки связанными, зависит от тула. TimeQuest, насколько помню, считает все клоки связанными, поэтому если есть увязки в коде между этими клоками (переходы между этими клоковыми доменами), то ТК будет их учитывать. Если это не то, что вам надо, то объявить эти клоки асинхронными.
Там как-то можно посмотреть, какой скрипт рожает квартус по derive_pll_clocks, вот его можно взять за основу. Если хочется руками поупражняться или сильно не нравятся автоматически сгенерированные имена.
«Отыщи всему начало, и ты многое поймёшь» К. Прутков