реклама на сайте
подробности

 
 
> Внутренний генератор тактовой частоты на MAX-10., Запустил внутренний генератор на MAX-10. Можете пояснить, как?
flammmable
сообщение Jun 4 2018, 07:47
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 4-06-18
Пользователь №: 104 848



Осваиваю Verilog и MAX-10.
Захотел запустить внутренний тактовый генератор.
Посмотрел в Tools->IP-catalog (Quartus prime 17.1.0) - в разделе Library->Clock;PLLs and Resets.
Там - ALTCLKCTRL, ALTPLL и ALTPLL_RECONFIG.
Интуитивно понятно, что всё не то.
Полистал документ UG-M10CLKPLL (Intel® MAX® 10 Clocking and PLL User Guide).
Там были в т.ч. четыре раздела:
1) ALTCLKCTRL IP Core References
2) ALTPLL IP Core References
3) ALTPLL_RECONFIG IP Core References
4) Internal Oscillator IP Core References
"Номер четыре - это то, что нужно!" - подумал я. Заодно прочитал, что:
Clock Frequency 10M02, 10M04, 10M08, 10M16, and 10M25: 55 MHz, 116 MHz.
Отлично! Значит я смогу назначить своей 10M02 или 55МГц или 116МГц.
Но где его взять, это IP Core?
Начал гуглить по словам - на сочетание "Internal Oscillator IP Core References" попадался лишь этот самый раздел даташита.
Начал рыться в папках Квартуса. Нашел altera_int_osc. Даже без глубокого знания Verilog было видно, что это обертка над функцией (мегафункцией? модулем?) "fiftyfivenm_oscillator". О!! fiftyfive - это же "пятьдесят пять" по английски. Как одна из двух возможных частот для 10M02.
Загуглил "fiftyfivenm_oscillator" и получил от гугла... ровно две ссылки. Одну - на текст "altera_int_osc", вторую - на альтеровский форум где она вскользь упоминается в контексте невозможности на MAX-10 присоединить внутренний генератор к внутреннему PLL-у.
Скопировал текст загадочной функции из altera_int_osc в свой модуль прописав свой проводок-выход clk_test в .clkout и лог.1 в .oscena
Код
            fiftyfivenm_oscillator # (
                .device_id("08"),
                .clock_frequency("dummy")
            ) oscillator_dut (
                .clkout(clk_test),
                .clkout1(),
                .oscena(1'b1));
            end

На выходе появился меандр на частоте 80МГц. Это и не 55МГц и не 116МГц. Попробовал наугад поменять параметр .clock_frequency - без изменений, меандр 80МГц. Попробовал поменять параметры .clock_frequency и .device_id на откровенную белиберду. Без изменений, меандр на 80МГц.
В общем. Что это за "fiftyfivenm_oscillator", где про нее прочитать, есть ли более правильный способ включения внутреннего тактового генератора, где мои 55МГц?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 20:53
Рейтинг@Mail.ru


Страница сгенерированна за 0.01263 секунд с 7
ELECTRONIX ©2004-2016