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

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


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 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
Stewart Little
сообщение Jun 4 2018, 11:50
Сообщение #2


Лентяй
******

Группа: Свой
Сообщений: 2 195
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(flammmable @ Jun 4 2018, 10:47) *
Осваиваю Verilog и MAX-10.
Захотел запустить внутренний тактовый генератор.
Посмотрел в Tools->IP-catalog (Quartus prime 17.1.0) - в разделе Library->Clock;PLLs and Resets.

Смотрите в IP Catalog раздел Basic Function - Configuratiion and Programming.
В нем - Internal Oscillator.

Описание: Intel MAX 10 Clocking and PLL Overview , раздел 8 "Internal Oscillator IP Core References", стр.65 (хотя там и читать-то особо нечего..).


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
flammmable
сообщение Jun 4 2018, 12:55
Сообщение #3


Участник
*

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



Большое спасибо!

P.S. Теперь у Гугла будет 3 ссылки на загадочное "fiftyfivenm_oscillator" sm.gif

Сообщение отредактировал flammmable - Jun 4 2018, 12:56
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Jun 4 2018, 13:33
Сообщение #4


Лентяй
******

Группа: Свой
Сообщений: 2 195
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(flammmable @ Jun 4 2018, 15:55) *
Теперь у Гугла будет 3 ссылки на загадочное "fiftyfivenm_oscillator" sm.gif

Что ж тут загадочного-то?
fiftyfivenm = 55 нм, т.е. проектная норма, по которой MAX 10 выпускаются. sm.gif


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
dvladim
сообщение Jun 4 2018, 20:03
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 654
Регистрация: 24-01-07
Из: Воронеж
Пользователь №: 24 737



Цитата(flammmable @ Jun 4 2018, 10:47) *
Отлично! Значит я смогу назначить своей 10M02 или 55МГц или 116МГц.

Вы вставляете мегафункцию и получаете выход клока.
55 и 116 - это крайние значения генератора. Реально вы получите нечто среднее в зависимости от температуры и напряжения питания.
Go to the top of the page
 
+Quote Post
flammmable
сообщение Jun 5 2018, 04:54
Сообщение #6


Участник
*

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



Цитата
fiftyfivenm = 55 нм

Точно!
Цитата
55 и 116 - это крайние значения генератора.

Там прямо в IP Core можно выбрать или 55 или 116 мегагерц. Надо еще проверить, но сдается мне - это точные значения, а не крайние.
Go to the top of the page
 
+Quote Post
flammmable
сообщение Jun 5 2018, 06:03
Сообщение #7


Участник
*

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



Проверил. По прежнему - 80МГц. Вы - правы.
Go to the top of the page
 
+Quote Post
justontime
сообщение Jun 5 2018, 10:51
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 246
Регистрация: 6-12-14
Из: СПб
Пользователь №: 84 003



Кстати, а нафига вообще нужен внутренний генератор с такими параметрами (вернее, с отсутствием таковых), какое у него может быть реальное применение ?
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Jun 5 2018, 10:53
Сообщение #9


В поисках себя...
****

Группа: Свой
Сообщений: 722
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Цитата(justontime @ Jun 5 2018, 13:51) *
Кстати, а нафига вообще нужен внутренний генератор с такими параметрами (вернее, с отсутствием таковых), какое у него может быть реальное применение ?

Ну например когда система не критична к времени работы. Например меряем температуру на улице. По меркам машинного времени температура изменяется бесконечно долго.
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Jun 5 2018, 19:53
Сообщение #10


Лентяй
******

Группа: Свой
Сообщений: 2 195
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(justontime @ Jun 5 2018, 13:51) *
Кстати, а нафига вообще нужен внутренний генератор с такими параметрами (вернее, с отсутствием таковых), какое у него может быть реальное применение ?

Для работы с внутренним флэшом.


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
Jenya7
сообщение Jun 13 2018, 12:28
Сообщение #11


Профессионал
*****

Группа: Участник
Сообщений: 1 757
Регистрация: 29-03-12
Пользователь №: 71 075



вот pll для МАХ10. генерируйте до 4 выходов и подсоединяйте куда хотите.
Код
component pll is
    port
    (
        inclk0 : in STD_LOGIC  := '0';
        c0         : out STD_LOGIC
        --c1         : out STD_LOGIC
    );
end component;
U_SYS_PLL : pll
    port map
    (
        inclk0  =>  CLK,
         c0        => s_pll_clk
        --c1      => open
    );



Прикрепленные файлы
Прикрепленный файл  pll.rar ( 7.22 килобайт ) Кол-во скачиваний: 4
 
Go to the top of the page
 
+Quote Post
Timmy
сообщение Jun 14 2018, 11:57
Сообщение #12


Знающий
****

Группа: Участник
Сообщений: 835
Регистрация: 9-08-08
Из: Санкт-Петербург
Пользователь №: 39 515



Цитата(justontime @ Jun 5 2018, 13:51) *
Кстати, а нафига вообще нужен внутренний генератор с такими параметрами (вернее, с отсутствием таковых), какое у него может быть реальное применение ?

Например, тактировать конфигурирование по SPI внешнего генератора частоты, который потом выдаст на FPGA основной тактовый сигнал.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 19th September 2018 - 08:02
Рейтинг@Mail.ru


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