Что такое тактовая частота мк и тактовая частота процессора?

Обсуждаем контроллеры компании Atmel.
Ответить
Родился
Сообщения: 12
Зарегистрирован: Вт мар 29, 2016 23:50:53

Сообщение viphorizon »

Такт процессора, по моему, выполняет одну команду ассемблера, а что делает один такт микроконтроллера? И почему частота мк меняется в зависимости от напряжения, а частота процессора остается неизменной?
Реклама
Друг Кота
Аватара пользователя
Сообщения: 73964
Зарегистрирован: Вт дек 20, 2011 12:46:51
Откуда: Петроград

Сообщение Maykill »

современные процессоры тоже способны снижать тактовую частоту в зависимости от загрузки

Тактовая частота процессора и быстродействие компьютеров
http://uprating.ru/it-tech/929-taktovay ... stvie.html
https://www.int-s.spb.ru
" Можно я лягу?"(C)
Контактная информация:
Реклама
Родился
Сообщения: 12
Зарегистрирован: Вт мар 29, 2016 23:50:53

Сообщение viphorizon »

Maykill писал(а):современные процессоры тоже способны снижать тактовую частоту в зависимости от загрузки

Тактовая частота процессора и быстродействие компьютеров
http://uprating.ru/it-tech/929-taktovay ... stvie.html
А что за такт мк.происходит или то что я спросил одно и то же
Друг Кота
Аватара пользователя
Сообщения: 73964
Зарегистрирован: Вт дек 20, 2011 12:46:51
Откуда: Петроград

Сообщение Maykill »

насколько я помню, операция может занимать от двух и более тактов
( за исключением пустой)
https://www.int-s.spb.ru
" Можно я лягу?"(C)
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 6337
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Сообщение Jack_A »

МК - они ведь разные. АВР большинство (но не все) операции выполняет за один такт, ПИКи - вроде за 4 ( врать не буду, не имел ), а старорежимные 51-е -- вообще за 12. Но и это не рекорд. Один мой знакомый МК выполняет одну операцию за 52 такта осциллятора! Фамилия ему ST6265, но он очень старый. Почти как я :)
Изображение
Реклама
Родился
Сообщения: 12
Зарегистрирован: Вт мар 29, 2016 23:50:53

Сообщение viphorizon »

Maykill писал(а):насколько я помню, операция может занимать от двух и более тактов
( за исключением пустой)
Да я спрашиваю про эти частоты, почему в даташите частота указана 20мгц? Если частота процессора 1.2мгц. Это ж совершеннл разные частоты, вот и хочу понять что это за 20мгц
Реклама
Друг Кота
Аватара пользователя
Сообщения: 73964
Зарегистрирован: Вт дек 20, 2011 12:46:51
Откуда: Петроград

Сообщение Maykill »

это частота ТАКТОВОГО ГЕНЕРАТОРА
вполне возможно что она ещё делится внутри
https://www.int-s.spb.ru
" Можно я лягу?"(C)
Контактная информация:
Потрогал лапой паяльник
Сообщения: 312
Зарегистрирован: Вс июл 29, 2012 16:25:39

Сообщение mas123 »

viphorizon писал(а):почему в даташите частота указана 20мгц? Если частота процессора 1.2мгц.
А что конкретно в даташите сказано про 20 МГц и про 1.2 МГц?
Обычно, вокруг цифр в документации много букв, а то и графиков. :)
viphorizon писал(а):а что делает один такт микроконтроллера?
Ровно то же, что и "такт процессора". С чего бы быть разнице?
Количество выполняемых операций за такт - это уже особенности ядра.
viphorizon писал(а):И почему частота мк меняется в зависимости от напряжения
Меняется не частота, а максимально возможная частота. Чем ниже напряжение - тем меньше максимальная частота. Физические особенности! :P
Или ты про частоту внутреннего RC-генератора? Так там тоже самое...
viphorizon писал(а):а частота процессора остается неизменной?
Эм.... На работе на столе лежит процессор, максимальная частота которого ограничивается как напряжением, так и температурным диапазоном.
В этих ваших интернетах куча-куча статей про разгон процессоров в компе с увеличением напряжения!
YS
Друг Кота
Аватара пользователя
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05

Сообщение YS »

Такт процессора, по моему, выполняет одну команду ассемблера, а что делает один такт микроконтроллера?
Вы не поверите, но, по существу, в микроконтроллере тоже есть процессор! Правда, в ПК процессор - отдельная большая микросхема, а микроконтроллере это часть того же кристалла. Но принцип совершенно тот же.

Тактовый сигнал необходим для синхронизации операций. С привязкой к нему выполняются команды. Команда может выполняться за один такт, а может и за несколько.
Да я спрашиваю про эти частоты, почему в даташите частота указана 20мгц?
В даташите на первой странице указана предельная частота. В реальности частоту выбирают в зависимости от задач. В частности, чем выше тактовая частота, тем выше энергопотребление. Потому не всегда имеет смысл разгонять процессор/контроллер до предела.
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Контактная информация:
Встал на лапы
Аватара пользователя
Сообщения: 120
Зарегистрирован: Вс янв 10, 2016 17:27:08

Сообщение Муррчик »

по существу, в микроконтроллере тоже есть процессор!
:) ух ты !!
John O'Callaghan vs Neptune Project - Rhea (Chill Out Mix)
Родился
Сообщения: 12
Зарегистрирован: Вт мар 29, 2016 23:50:53

Сообщение viphorizon »

Maykill писал(а):это частота ТАКТОВОГО ГЕНЕРАТОРА
вполне возможно что она ещё делится внутри
Для _delay_us(ms) я в самом начале пишу #define F_CPU 1200000UL. Вроде с таким значением нормально читает 1-Wire(Там же очень важно время). 1200000 это же 1.2mhz? Если в даташите написано 20mhz, то я могу увеличить от 1.2mhz до 20mhz?
YS
Друг Кота
Аватара пользователя
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05

Сообщение YS »

Если в даташите написано 20mhz, то я могу увеличить от 1.2mhz до 20mhz?
Да. Но зачем? И будет ли ваша 1-Wire библиотека работать на такой частоте?

Надеюсь, вы понимаете, что, чтобы изменить частоту МК, недостаточно просто переписать значение F_CPU - этой константой вы просто сообщаете программе, на какой частоте работает МК. А частота самого МК меняется изменением fuse-битов (мы же про AVR, да?).

И аккуратнее с регистром букв; mhz - миллигерц, MHz - мегагерц, но: kHz - килогерц.
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Контактная информация:
Потрогал лапой паяльник
Сообщения: 315
Зарегистрирован: Пт янв 29, 2010 19:42:27

Сообщение 12val12 »

извините Влезу в тему .подходящую не нашел
хочу разогнать внутренний RC генератор у atttiny24a раза в полтора (с 8 до 12 )точность не критична
просто написать OSCAL=0xFF ?
или OSCAL=0x7F ?
ух ты.... показывает
Собутыльник Кота
Аватара пользователя
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Сообщение Z_h_e »

OSCCAL увеличивайте на 1 в цикле до нужного значения, где-то читал что нельзя сразу разом. Имейте ввиду, что производитель не гарантирует запись во FLASH и EEPROM при сильном отклонении частоты от номинального значения.

В даташите есть график зависимости частоты от OSCCAL. По нему как-то нагляднее.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Ответить

Вернуться в «AVR»