Parus16.ru

Парус №16
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Генератор тактовых импульсов

Генератор тактовых импульсов

Генератор тактовых импульсов (генератор тактовой частоты) предназначен для синхронизации различных процессов в цифровых устройствах — ЭВМ, электронных часах, таймерах и других. Он вырабатывает электрические импульсы (обычно прямоугольной формы) заданной частоты, которая часто используется как эталонная — считая количество импульсов, можно, например, измерять временные интервалы.

В микропроцессорной технике один тактовый импульс, как правило, соответствует одной атомарной операции. Обработка одной инструкции может производиться за один или несколько тактов работы микропроцессора, в зависимости от архитектуры и типа инструкции. Частота тактовых импульсов определяет скорость вычислений.

Содержание

Типы генераторов

В зависимости от сложности устройства, используют разные типы генераторов.

Классический

В несложных конструкциях, не критичных к стабильности тактового генератора, часто используется последовательное включение нескольких инверторов через RC-цепь. Частота колебаний зависит от номиналов резистора и конденсатора. Основной недостаток данной конструкции — низкая стабильность, достоинство — предельная простота.

Кварцевый

Кварц + микросхема генерации

Микросхема генерации при подключении к её входам кварцевого резонатора будет выдавать на остальных выводах частоту, делённую или умноженную на исходную. Такой способ используется в часах, а также на старых материнских платах (где частоты шин были заранее известны, только внутренняя частота центрального процессора умножалась).

Для построения тактового генератора не требуется никакая специальная микросхема.

Программируемая микросхема генерации

В современных материнских платах необходимо большое количество разных частот, помимо опорной частоты системной шины, которые, по возможности, не должны быть зависимы друг от друга. Хотя базовая частота всё же формируется кварцевым резонатором, она необходима лишь для работы самой микросхемы. Выходные же частоты корректируются самой микросхемой. Например, частота периферийной шины AGP может быть всегда равна стандартной (66 МГц) и не зависеть от частоты системной шины процессора.

Если в электронной схеме необходимо разделить частоту на 2, используют Т-триггер в режиме счётчика импульсов. Соответственно, для увеличения делителя увеличивают количество счётчиков (триггеров).

Тактовый генератор

Тактовый генератор — автогенератор, формирующий рабочие такты процессора («частоту»). В некоторых микропроцессорах и микроконтроллерах выполняется встроенным.

Кроме тактирования процессора, в обязанности тактового генератора входит организация циклов системной шины. Поэтому его работа часто тесно связана с циклами обновления памяти, контроллером ПДП и дешифратором сигналов состояния процессора.

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

Приветствую всех читателей. Мне будет особенно приятно порадовать вас своим рассказом на тему что такое тактовая частота процессора. Возможно, для некоторых эта тема покажется азбучной и малополезной, но я уверен что несколько интересных фактов и простых сравнений позволит по-новому взглянуть на работу ЦПУ.

Подбирая железо для компьютера или новый смартфон мы первым делом интересуемся, сколько ядер имеет процессор и какова частота их работы. Бренд самого ЦПУ в этом случае – дело вкуса (AMD или Intel, MTK или Snapdragon). Но, если из представленных моделей, одна имеет в характеристиках большее значение частоты, но наверняка выбор будет сделан в ее пользу. Давайте разберемся, почему это так важно.

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

«Импульсивное поведение» процессора

Процессор это сердце любой вычислительной машины, а к таковым относятся не только калькуляторы и компьютеры, используемые в сложных расчетах, но и любое устройство, работающее с оцифрованными данными. Чтобы преобразовать их в музыку, видео, изображение или, тем более, заставить программу совершить определенные операции, поток «нулей» и «единиц» записанный в двоичном коде необходимо пропустить через блок, выполняющий логические операции.

Такие обрабатывающие модули, созданные из множества полупроводниковых микротранзисторов и составляют основу кристалла процессора. Или, как говорят знатоки «камня».

Микротранзисторы

Но вернемся к оцифрованному потоку данных, которые в реальности представляют собой наличие или отсутствие сигнала в электроцепи. Ведь именно его и обрабатывает транзистор. Но чтобы сделать такие сигналы читаемыми (отличаемыми друг от друга) его подают импульсами. Создает их тактовый генератор, интегрированный в архитектуру самого процессора.

В лучших современных ЦПУ за одну секунду происходит до 5 000 000 000 (пяти миллиардов!) импульсов. Это величина измеряется в гигагерцах (ГГц) и является тактовой частотой работы ядра процессора, выполняющего главные вычислительные функции. Чем больше она, тем лучше.

Но за дополнительные герцы приходится расплачиваться повышенным энергопотреблением и сильным нагревом.

Читайте так же:
Есть ли в ноутбуке блок питания

Перегрев

А вы знаете частоту своего ЦПУ?

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

  • Заглянуть в паспорт, лежащий в коробке от CPU;
  • Найти на мониторе «Мой компьютер», открыть в его контекстном меню «Свойства» и изучить общие параметры устройства;

Инфа о частоте процессора

  • Установить программы AIDA64 или CPU-Z, которые показывают максимально подробную информацию о вашем процессоре.

Тоже самое в cpu-z

Считаем ядра и гигагерцы

В реальности более объективным показателем скорости работы ЦПУ является количество операций, выполняемых в единицу времени. А на это уже влияет количество микротранзисторов, способных одновременно обработать несколько сигналов. Может вы что-то слышали о нано технологиях? Так вот чем меньшего размера вычислительный элемент, тем их больше можно разместить на «камне» процессора.

Так же тактовую производительность процессора определяет его архитектура (оптимизация взаимодействия между отдельными модулями) и количество потоков (каналов одновременного обращения к ядру).

Platform Topologies

Кроме того, для одновременного решения нескольких задач в ЦПУ используется несколько ядер. Причем имеются процессоры для смартфонов с различной тактовой частотой отдельных ядер: по 4-е энергоэффективных (1,8 ГГц) и по 4-е мощных (свыше 2,3 Ггц). Многоядерные устройства, установленные на ПК, имеют свой алгоритм оптимизации. Что дает ядрам возможность работать с разной тактовой частотой.

Раз, уж я затронул тему многоядерности, то расскажу вам об одном распространенном заблуждении, касающимся нашей основной темы. Некоторые пользователи, покупая, например, процессор Intel Core 2 Quad, с частотой каждого ядра 2,5 ГГц считают, что они получат устройство способное выдавать 4 х 2,5 = 10 млрд. тактов в секунду.

Это, друзья мои, заблуждение. Потому как тактовый генератор быстрее работать от этого не станет. Единственно, чем я могу вас порадовать, что каждое ядро теоретически может выполнять отдельную операцию. Но и для этого обычно требуется несколько тактов.

Кристаллы разных лет

Разгон, троттлинг и нагрев

Здесь же считаю нужным ответить на часто задаваемый вопрос. Что важнее при выборе процессора количество ядер или тактовая частота?

Оба показателя определяют производительность процессора. Поэтому 2-а ядра на 4,5 GHz могут работать не хуже 4-х на 2,5 GHz. Все зависит от выполняемых задач и от реализованной в чипе архитектуры.

Правда, все-таки есть один нюанс. Ядер вы в ЦПУ не добавите, а вот разогнать процессор, увеличив его тактовую частоту можно. Для этого существует несколько способов, но все они требуют выполнения ряда условий:

  • Теоретическая возможность разгона процессора;
  • Устойчивость его элементов к работе в высокотемпературном режиме или наличие дополнительной эффективной системы охлаждения;
  • Необходимый разгонный потенциал материнской платы.

Есть даже несколько недорогих ЦПУ, наиболее приспособленных к такому частотному апгрейду: AMD FX-6300, AMD FX-4350, AMD Athlon X4 860K, Intel Pentium G3258.

Наверное, вы уже заметили, что в нашем разговоре о тактовой частоте периодически упоминается такое явление как нагрев процессора. Эти два параметра тесно взаимосвязаны между собой. Уже понятно, что искусственное увеличение температуры повлечет за собой повышение температуры CPU.

А что будет, если в силу определенных причин нагреется сам процессор? К примеру: поломка или загрязнение кулера, высыхание термопасты, работа в жару?

В этом случае разработчики ЦПУ предусмотрели функцию тротлинга, которая отслеживает температуру чипа, и при достижении критических значений автоматически снижает тактовую частоту ядер и, соответственно, быстродействие всей системы.

Троттлинг

Напоследок хочу отметить, ещё кое что. Своя рабочая частота имеется и у ОЗУ, и у системной шины материнской платы. И даже у кэш-памяти самого процессора, но именно тактовая частота ядер является максимальной.

Читайте так же:
Выключил компьютер и больше не включается

Запомните это, чтобы случайно не запутаться в терминах и устройствах.

На этом я заканчиваю свой рассказ о том, что такое тактовая частота процессора. Пойду готовить новую статью, с целью порадовать вас новыми интересными сведениями из жизни компьютерного железа.

Как разогнать процессор через Биос. Пошаговая инструкция

Здравствуйте, дорогие читатели. Многие хотят ощущать большую скорость работы за компьютером. Хорошо, если у Вы недавно купили себе новенький компьютер с новым железом, и у Вас не возникает проблем с загрузкой и скоростью работы приложений. А что делать тем пользователям, у которых железный друг морально устарел, а денег на покупку нового нет. Тогда Вы попали по адресу. Одним из способов повысить производительность компьютера — это разогнать его процессор.

Сегодня мы Вас научим, как разогнать процессор через Биос. Эта статья будет полезной, в первую очередь, для пользователей с процессором Intel, так как хороших программ по разгону со среды Windows для них нет (не считая те, которые делаются самим производителем для конкретного процессора).

Но это вовсе не означает, что пользователи с процессором AMD не смогут разогнать свой процессор через Биос. Просто для них существует очень удобная и полезная утилита, которая работает с ОС Windows и о которой Вы можете подробнее почитать здесь. Это намного удобнее и практичнее.

Важное отступление: Перед тем, как начать разгон процессора, ознакомьтесь со статьей Как сбросить Биос на заводские настройки. Это поможет Вам исправить ситуацию, если компьютер после разгона перестанет включаться.

Ну, поехали разгонять)) Разгонять процессор мы будем путем повышения его тактовой частоты. Частота процессора состоит из произведения частоты генерируемого сигнала (формируется в генераторе) и множителя ядра. Для того, что бы найти данные параметры , нам необходимо войти в Биос. Все, что описано далее, делается для версии Биоса F1. У Вас же может быть установлен и другой Биос. Но на принцип разгона это не повлияет. единственное что, так это может отличатся расположение вкладок.

Для запуска Биоса необходимо перезагрузить компьютер и в процессе перезагрузки нажимать клавишу «Del» или «F2». После чего перед Вами откроется рабочее окно Биоса. Здесь нам нужно будет войти во вкладку «MB Intelligent Tweaker».

Биос

Менять частоту можно путем изменения множителя, который обозначен пунктом 1. Выбираете стрелками пункт 1 и нажимаете Enter. Пункт 2 — это текущая частота процессора. Для изменения частоты на генераторе необходимо выбрать пункт 3 и выставить в нем ручные настройки (Manual), после чего для редактирования будет доступен пункт 4 — изменения частоты генератора.

Выставление настроек

При изменении частоты генератора в пункте 4 перед Вами откроется окошко, в котором Вы можете задавать диапазон от минимального до максимального значения.

Настройка генератора

ПРОЦЕСС РАЗГОНА ПРОЦЕССОРА

Теперь приступим к самому разгону процессора. Как уже отмечалось выше, разгонять мы будем путем повышения множителя и частоты генератора. Разгон при помощи множителя: Зайдите в пункт 1 и увеличивайте множитель по одному пункту.

То есть переместили множитель на одну позицию выше, сохраните настройки Биос и перезагрузитесь. Если все работает стабильно и без тормозов, мерцаний монитора и зависаний, продолжайте понемногу повышать множитель. Следите, что бы шаг по частоте не превышал 200 МГц (показан на рисунке выше в пункте 2).

Читайте так же:
Вентилятор на ноутбуке работает рывками

Выбор множителя процессора

Тоесть сначала у меня было 2800 МГц, потом ставим множитель так, что бы было 3000 МГц. Если сразу много задать, то компьютер может перестать включаться. И Вам придется сбрасывать настройки Биоса.

Разгон при помощи изменения тактовой частоты генератора: Для того, что бы изменить частоту генератора, Вам необходимо установить ручные настройки в пункте 3 (Поменять позицию «Auto» на «Manual» ).

После чего в пункте 4 понемногу выставляем значения, начиная с самого минимального. Значения подбирайте таким образом, что бы шаг по общей частоте процессора (указан пунктом 2) не превышал 200 МГц.

Не забывайте после каждой такой выставки сохранять настройки Биоса, перезагружаться и контролировать его стабильность, как и в предыдущем случае. Вот как выглядит установка значений частоты на моем Биосе.

Задание Частоты генератора

Давайте осмотрим, насколько поменялась частота процессора после увеличения частоты генератора.

Измененная частота процессора

Как видно из рисунка выше, частота процессора возросла, примерно, на 150 МГц, что является допустимым шагом. Для разгона процессора можно применять как первый метод, так и второй. Их можно даже комбинировать, но это стоит делать лишь тогда, когда Вам не удается существенно поднять частоту процессора выше штатного уровня работы.

Помните: Повышать частоту процессора больше, чем на 1 Гц., я не рекомендую.

Поверьте, если Вы достигните даже таких показателей, то это можно считать успехом. И помните еще одно — если у Вас не стоит хорошей системы охлаждения, то сильно играться разгоном я Вам не советую. В противном случае Вы можете просто сломать процессор. Вот еще одно замечание: После каждого повышения частоты при разгоне контролируйте температу

ру процессора, которую Вы можете найти на вкладке «PC Health Status»: она не должна превышать 60 градусов по Цельсию в при уже разогнотом процессоре. Процессор может выдержать, конечно, и большую температуру, но не забывайте о том, что Вы его еще будете нагружать его различного рода задачами, выполнение которых будет греть его еще больше. Поэтому нужно оставить некоторый запас.

Температура процессора

Напоследок мы предлагаем Вам посмотреть видео на соответствующую тематику.

Подводим итоги: Сегодня, дорогие друзья, мы с Вами ознакомились, как можно разогнать процессор через Биос. В разгоне нет ничего страшного и сверхъестественного, просто нужно быть внимательным и ничего не напутать.

Генератор тактовой частоты процессора

Тактовая частота, на которой работает микроконтроллер AVR, определяет скорость его работы. Для некоторых realtime приложений (например для библиотеки V-USB) тактовая частота критически важный параметр, от которого зависит — будет программа работоспособна или нет. Поэтому важно уметь определять тактовую частоту, на которой работает микроконтроллер.

[На что влияет тактовая частота микроконтроллера?]

Ответ на этот вопрос прост — на скорость работы. Длительность каждого такта микроконтроллера AVR обычно соответствует времени выполнения одной инструкции на языке ассемблера (хотя есть инструкции ассемблера, время выполнения которых составляет 2, 3, и даже 4 такта). То есть чем выше тактовая частота, тем быстрее микроконтроллер работает, тем точнее его реакция на внешние события. Для приложений реального времени (например для программной работы с протоколом USB через библиотеку V-USB) бывает нужно очень точно знать длительность выполнения каждой инструкции программы.

Кроме того, в ядро AVR встроено множество периферийных аппаратных устройств — АЦП, UART, SPI, I2C и многое другое. Работа всех этих узлов зависит от тактовой частоты. Например, Вы не сможете точно задать скорость работы UART (RS-232), если не знаете его тактовую частоту.

Для вычисления задержек в программе часто используют удобные макросы-функции delay_us и delay_ms. Корректность их работы напрямую зависит от того, насколько рабочая частота микроконтроллера AVR соответствует программной константе F_CPU.

Читайте так же:
Бесплатно восстановить фото с карты памяти

Таким образом, важно знать, как формируется тактовая частота, и уметь определять её действительное значение. Давайте разберем самые популярные варианты тактирования микроконтроллера AVR, чтобы научиться определять рабочую тактовую частоту.

[Кварцевый резонатор]

Очень часто (и это относится к макетным платам AVR-USB-MEGA16, AVR-USB162, AVR-USB162MU, metaboard, userial [1]) рабочая тактовая частота AVR точно равна частоте кварцевого резонатора (или просто кварца), который подключен к микроконтроллеру. В этом случае фьюзами (или программно) выключен встроенный предделитель тактовой частоты (prescaler). Ниже представлены примеры внешнего вида кварцевых резонаторов с маркировкой, где цифрами указана рабочая частота кварцевого резонатора.

ATmega16-16MHzATmega32A-12MHz

На фотографии слева показан фрагмент старого варианта макетной платы AVR-USB-MEGA16 с кварцевым резонатором на 16 МГц. Многие примеры программ и готовые прошивки скомпилированы именно для этой частоты кварца. Справа показан новый вариант AVR-USB-MEGA16 с кварцем на 12 МГц.

В программе тактовая частота задается специальными константами (например F_CPU), которые потом проверяются препроцессором компилятора — чтобы правильно подключить нужный модуль кода. Константа F_CPU часто задается в makefile, и передается компилятору через опции командной строки. Константа может быть также задана в заголовочном файле программы на языке C (так называемом хедере, файле с расширением *.h).

Будьте внимательны, когда выбираете в программе тактовую частоту для микроконтроллера — если Вы случайно запрограммируете микроконтроллер, который работает на частоте 12 МГц, не той прошивкой (например, которая рассчитана на работу с частотой 16 МГц), то получите неработоспособное устройство USB, которое не будет определяться операционной системой. Очень много вопросов пользователей (почему мое устройство USB не работает. ) связано с некорректной тактовой частотой прошивки.

ATmega328-PU-16Mhz

На этом фото показана макетная плата metaboard с микроконтроллером ATmega328-PU и кварцевым резонатором на 16 МГц. Здесь тоже для приложений USB используется программная обработка протокола на основе библиотеки V-USB. Поэтому все, что было сказано по поводу частоты кварца для макетной платы AVR-USB-MEGA16, в равной степени относится и к metaboard.

AT90USB162-16MHz

На этой фотографии показан фрагмент макетной платы AVR-USB162 с установленным кварцем на 16 МГц. Здесь используется микроконтроллер AT90USB162 с аппаратным интерфейсом USB, поэтому он намного быстрее справляется с задачей обработки протокола USB, чем обычный микроконтроллер AVR. Здесь тоже важна тактовая частота, на которой работает микроконтроллер — для приложений USB можно использовать кварцы на частоты 8 или 16 МГц, но программа очень строго должна это учитывать.

[Работа микроконтроллера от внутреннего тактового генератора]

Для приложений, где не нужно точно генерировать нужные интервалы времени, или когда не надо получить максимальное быстродействие микроконтроллера AVR, можно использовать встроенный в микроконтроллер RC-генератор. Частота этого генератора равна 8 МГц, по умолчанию она поделена на 8, и в результате микроконтроллер работает на частоте 1 МГц. Делитель может быть запрограммирован на разные коэффициенты деления, и также может быть отключен, так что максимальная рабочая тактовая частота микроконтроллера может быть 8 МГц. Достоинство такого генератора в том, что не нужно использовать внешний кварцевый резонатор, схема упрощается, конечное радиоэлектронное устройство можно сделать дешевле в производстве. Недостаток в том, что неточность RC-генератора ограничивает область применения такого варианта получения тактовой частоты.

Вариант работы генератора (RC-генератор, внешний кварц, коэффициент деления частоты) определяется фьюзами микроконтроллера AVR. Фьюзы микроконтроллера AVR могут быть изменены только с помощью внешнего программатора (интерфейсы ISP, JTAG, или может быть применен так называемый «параллельный» интерфейс программирования). Большинство микроконтроллеров AVR, которые выходят с заводов Atmel, поставляются настроенными на работу от внутреннего генератора, с включенным делителем на 8, т. е. при подаче питания они сразу заработают на частоте 1 МГц. В некоторых пределах тактовую частоту можно подстраивать программно с помощью записи значений констант в специальный настроечный регистр. Подробнее про фьюзы и настройку тактирования микроконтроллера AVR Вы можете узнать из даташита на Ваш микроконтроллер.

Читайте так же:
Блок питания не крутится вентилятор

[Использование PLL]

Некоторые микроконтроллеры позволяют для получения тактовой частоты использовать PLL. Эта аббревиатура расшифровывается как Phase Locked Loop, что означает фазовая автоподстройка частоты, ФАПЧ. Смысл этого всего в том, что микроконтроллер работает от внутренней тактовой частоты, которая генерируется путем умножения и деления частоты внутреннего RC-генератора, причем частота RC-генератора подстраивается программно. Хороший пример использования такого генератора — приложения V-USB с микроконтроллером ATtiny45 (или ATtiny85), например USBrelay [2]. Микроконтроллер работает на частоте 16.5 МГц, которая получена с помощью RC-генератора и PLL. Частота точно подстраивается программно по синхросигналам начала фрейма USB (так называемый сигнал SOF, Start Of Frame), которые имеют очень точную периодичность 1 мс. Подробнее про PLL см. даташит микроконтроллера и исходный код USB-Relay [2].

[Определение тактовой частоты с помощью осциллографа]

В некоторых сложных случаях трудно заранее знать, на какой частоте работает микроконтроллер. Например, не промаркирован внешний резонатор, или Вы сомневаетесь в том, как запрограммировали фьюзами внутренний RC-генератор.

Если используется внешний резонатор (кварцевый или керамический), то тактовую частоту можно определить, подключившись к выходной ножке тактового генератора — коснувшись щупом одного из ножек резонатора. Будьте внимательны, подключиться надо именно к выходу генератора, и щуп осциллографа должен иметь малую входную емкость (чем меньше, тем лучше, желательно не более 20 пФ). Обычно малая входная емкость щупа получается, когда щуп осциллографа переключен на коэффициент деления 1:10). Чтобы точно узнать, какая ножка микроконтроллера является выходом, обратитесь к даташиту микроконтроллера. Осциллограф покажет тактовую частоту на выходе генератора, и рабочая тактовая частота микроконтроллера будет равна этой частоте с учетом коэффициента предделителя (если он включен фьюзами или программно).

Когда используется внутренний RC-генератор, и когда Вы не уверены в том, насколько правильно запрограммировали фьюзы предделителя, может помочь измерение длительности выполнения команд программы. Для этого случае Вы можете вставить в главный цикл main программы две простые команды установки и сброса любого выбранного порта микроконтроллера, и потом осциллографом измерить полученную длительность выходного сигнала на этом порте. Вот простой пример такой программы (приведен только фрагмент кода, управляющей ножкой порта PB0):

Принцип определения тактовой частоты прост. В этом примере кода Вы видите две команды, управляющие разрядом 0 порта B, которые следуют друг за другом (запись константы в регистр PORTB). Первая команда устанавливает выходной уровень ножки PB0 в состояние лог. 1, вторая команда в лог. 0. Это измерение уровней можно проконтролировать осциллографом, подсоединив щуп к ножке порта PB0. Каждая команда записи в регистр PORTB компилируется в одну команду ассемблера, длительность которой можно узнать из даташита на микроконтроллер. В данном примере будут использоваться команды ORI и ANDI, имеющие длительность выполнения 1 цикл. Таким образом, между первой и второй командой пройдет время одного цикла, одного периода тактовой частоты микроконтроллера, т. е. длительность импульса лог. 1 будет равна длительности периода рабочей тактовой частоты. На рисунке упрощенно показана форма сигнала на выходе порта PB0 и соответствующая ей тактовая частота.

measure-AVR-clock-freq

Длительность импульса лог. 1 на выходе порта PB0 можно измерить с помощью осциллографа, и по ней определить тактовую частоту, на которой работает микроконтроллер.

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector