Что такое регистр в электронике

Регистры и их работа

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Что такое регистр. Основой функциональной единицей построения регистров являются RS-триггеры или Д-триггеры.

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

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

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

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

При поступлении тактового импульса код, находящийся в регистре, сдвигается на один разряд. Т.е для нашей схемы, сдвиг кода идет вправо (в направлении младших разрядов).

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

Рассмотрим, работу четырёх разрядного универсальный регистра на микросборке К155ИР1 (SN7495N), который может работать как со сдвигом вправо так и влево.

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

К155ИР1 несет в себе четыре D-триггера, связанные дополнительно между собой с помощью логических элементов И – ИЛИ, позволяюших расширить базовые функции:

Алгоритм работы следующий. Если на V2 подать низкий уровень, тактовые импульсы на первый вход синхронизации C1, а на V1 подавать биты информации, то регистр работает со сдвигом вправо и после приёма четырех разрядов на выходах Q1 – Q4 мы получим параллельный код.

Для обратного преобразования данных параллельный код записывается на D1 – D4, на V2 подают высокий уровень, а тактовых импульсы следуют уже на второй вход С2. Затем подавая на V2 низкий уровень, а синхроимпульсы на С1 мы сдвигаем записанный код, а с выхода последнего триггера идет последовательный код.

Условно-графическое обозначение параллельного, сдвигового и реверсивного регистров на схемах рассмотрено ниже:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Помимо уже перечисленных функций, регистры могут выполнять арифметические и логические операции, временную задержку и даже деление частоты. Сдвиговые регистры в отечественном варианте представлены микросборками: 133ИР1, К155ИР1, КМ155ИР1, 134ИР1

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

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Если использовать дополнительно элемент «НЕ», можно сделать делитель частоты. На схеме ниже приведены делители частоты на 2, 3, 4, 5, 6, 7. При этом сигнал на L=0.

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Импульсы следуют на вход синхронизации С1, а выходные импульсы идут с выхода Q старшего разряда, включенные через инвертор ОС со входом VR.

Микросхема 134ИР8, КР134ИР8, 533ИР8, КМ555ИР8, КР1533ИР8 для хранения восьмиразрядных данных и преобразования их из последовательного в параллельный вид. Запись осуществляется через любой из входов VR по тактовому импольсу. Считывание идет с выходов Q1-Q8 или поразрядно с выхода Q8.

Радиолюбительские самоделки на регистрах

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Цифровой генератор белого шума это временной случайный процесс, близкий по своим свойствам к процессу физических шумов и его называют псевдослучайным процессом. Цифровой последовательностью двоичных символов в цифровых акустических генераторах шума называют псевдослучайной последовательностью, которая представляет собой последовательность прямоугольных импульсов с псевдослучайной длительностью и интервалами между ними. Генератор шума выполнен на цифровых микросхемах: восьмиразрядный регистр сдвига на микросхеме К561ИР2, сумматор по модулю 2 (DD2.1), тактовый генератор (DD2.3, DD2.4) и цепь запуска (DD2.2), на микросхеме К561ЛП2.

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Конструкция тахометра использует 8-разрядный сдвиговый регистр 74HC595 с ЖК дисплеем 16х2.

Источник

Что такое регистр?

Регистр. Регистр сдвига

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Регистр это устройство, выполненное на триггерах для выполнения ряда действий с двоичными числами. Для тех, кто не знает, что такое триггер, рекомендуем познакомиться с простейшим RS-триггером.

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Обычно используются регистры, состоящие из 4, 8, или 16 триггеров. Изображение четырёхразрядного регистра на принципиальных схемах может быть таким.

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

На рисунке не показаны инверсные выхода триггеров и сигнал R. Регистры всегда обозначаются латинскими буквами RG. Если регистр сдвигающий, то под обозначением рисуется стрелка направленная влево, вправо или двойная.

Сдвигающие регистры или регистры сдвига.

Регистр сдвига это устройство, состоящее из нескольких последовательно соединённых триггеров, число которых определяет разрядность регистра. Регистры широко используются в вычислительной технике для преобразования кодов. Параллельного в последовательный и наоборот.

Кроме того сдвигающие регистры являются основой (АЛУ) арифметико-логического устройства, так как при сдвиге записанного в регистр двоичного числа на один разряд влево производится умножение числа на два, а при сдвиге числа на один разряд вправо число делится на два. Поэтому наибольшее распространение получили реверсивные или двунаправленные регистры.

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Регистр работает следующим образом. Первый информационный бит поступает на вход D0. Одновременно с этим битом приходит тактовый синхроимпульс на вход С. Входы С всех триггеров входящих в регистр, объединены между собой. С приходом первого тактового импульса уровень, находящийся на входе D0 записывается в первый триггер и с выхода Q0 приходит на вход следующего триггера, но записи во второй триггер не происходит, так как синхроимпульс уже закончился.

При поступлении следующего тактового импульса уровень, присутствующий на входе второго триггера запоминается в нём и поступает на вход третьего триггера. Одновременно следующий информационный бит запоминается в первом триггере. После прихода четвёртого тактового импульса в четырёх триггерах регистра будут записаны логические уровни, которые последовательно поступали на вход D0.

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

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Регистр содержит четыре D-триггера, которые соединены между собой с помощью дополнительных логических элементов И – ИЛИ, которые позволяют реализовать различные функции. На схеме:

V2 – вход управления. С его помощью выбирается режим работы регистра.

Q1 – Q4 выходы триггеров с которых снимается параллельный код.

V1 – вход для подачи последовательного кода.

C1, C2 – тактовые синхроимпульсы.

D1 – D4 – входы для записи параллельного кода.

Алгоритм работы регистра следующий. Если на вход V2 подать низкий потенциал, тактовые импульсы на C1, а на вход V1 подавать информационные биты, то регистр осуществляет сдвиг вправо. После приёма четырёх разрядов на выходах триггеров Q1 – Q4 мы получаем параллельный код. Таким образом осуществляется преобразование последовательного кода в параллельный.

Для обратного преобразования параллельный код записывается по входам D1 – D4, с подачей на вход V2 высокого потенциала и тактовых импульсов на вход С2. Затем подавая на вход V2 низкий потенциал, а тактовые импульсы на вход С1 мы сдвигаем записанный код, а с выхода последнего триггера снимается последовательный код.

По своей структуре это один из самых простых регистров сдвига.

Регистры сдвига в цифровой технике могут послужить основой, на которой собираются узлы с интересными свойствами. Это, например, кольцевые счётчики, которые называются счётчики Джонсона. Такой счётчик имеет количество состояний вдвое большее, чем число составляющих его триггеров. Например, если кольцевой счётчик состоит из трёх триггеров, то он будет иметь шесть устойчивых состояний. На вход счётчика ничего не подаётся кроме синхроимпульсов. В первоначальном состоянии все триггеры «сброшены», то есть на прямых выходах триггеров логические нули, а вот на входе D первого триггера с инверсного выхода третьего триггера находится логическая единица. Начнём подавать тактовые импульсы и процесс пошёл.

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

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

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике
NQ2Q1Q0
1001
2011
3111
4110
5100
6000

Источник

Начинаем изучать STM32: Что такое регистры? Как с ними работать?

Продолжаем рассмотрение базовых вопросов

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

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Память и регистры

Одним из самых важных навыков необходимых при работе с микроконтроллерами является умение взаимодействовать с регистрами. Давайте для себя разберемся, что же это такое?

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

Каждый из регистров имеет свой порядковый номер – адрес. Адрес регистра обозначается 32-битным числом представленным в шестнадцатеричной системе счисления. Путём записи по адресу регистра определённой комбинации единиц и нулей, которые обычно представлены в шестнадцатеричном виде, осуществляется настройка и управление тем или иным узлом в МК. Вспомним, что в программе для работы с битовыми операциями, мы могли представить в виде шестнадцатеричного числа произвольный набор единиц и нулей. В целом стоит отметить, что существует два вида регистров: регистры общего назначения и специальные регистры. Первые расположены внутри ядра МК, а вторые являются частью RAM-памяти.

Так же стоит отметить, что Reference Manual, который мы скачивали в первом уроке, это один большой справочник по регистрам, содержащимся в целевом микроконтроллере, а библиотека CMSIS позволяет нам оперировать символьными именами регистров вместо числовых адресов. Например, к регистру 0x40011018 мы можем обратиться просто, используя символьное имя GPIOC_BSSR. Конкретные примеры конфигурирования мы рассмотрим в ходе разбора нашей программы из первого занятия.

Итак, обычно структура регистра описывается в виде небольшой таблицы с указанием:

Разбор кода из первого занятия

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

Давайте еще разок взглянем на код программы, которую мы использовали для того, чтобы заставить наш МК дрыгать двумя ногами на которых расположены наши светодиоды:

Первым делом, при работе с STM32, даже для такой простой задачи как включение и выключение светодиода нам необходимо предварительно ответить на ряд вопросов:

Куда подключены наши светодиоды? К какому выводу микроконтроллера?

Для того, чтобы посмотреть где что находится на плате Discovery, а в частности, нужные нам светодиоды — нужно открыть Schematic-файл, либо тот который мы скачали с сайта ST, либо прямо из Keil:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Открыв Schematic мы увидим схему всего того, что есть на плате — схему ST-Link, обвязку всей периферии и многое другое. На текущий момент нас интересуют два светодиода, ищем их обозначение:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Как мы видим, наши светодиоды подключены к порту GPIOC на 8 и 9 пин.

Как включить тактирование на нужный порт GPIO?

В целом, любая работа с периферией в микроконтроллерах STM32 сводится к стандартной последовательности действий:

Внимание! Вопрос касательно системы тактирования, её настройки и использования мы подробно рассмотрим в отдельной статье.

Найти к какой шине подключен наш порт GPIOC можно найти в Datasheet’е на наш МК в разделе Memory Mapping в Таблице 16. STM32F051xx peripheral register boundary addresses.

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Как вы уже успели заметить, необходимая нам шина именуется как AHB2. Для того чтобы подробнее ознакомиться с регистром, в котором включается тактирование на нужный нам порт GPIO на шине AHB, надо перейти в соответствующий раздел в Reference Manual. По названию регистров мы можем определить тот, который нужен нам:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Переходим в этот пункт, и мы видим наш 32-битный регистр, его адрес смещения, значение по умолчанию, способ доступа к регистру и перечисление того, за что отвечает каждый бит в регистре.

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Смотрим на таблицу и видим нечто напоминающее опции включения тактирования на портах GPIO. Переходим к описанию и находим нужную нам опцию:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Соответственно если мы установим 19 бит в значение «1» то это обеспечит включение тактирования на порт I/O C – то есть на наш GPIOC. К тому же — нам нужно включить отдельно один бит из группы, не затрагивая остальные т.к. мы не должны мешать и изменять без надобности другие настройки.

Основываясь на материалах прошлого урока, мы знаем что для того чтобы выставить определенный бит нужно используя логическую операцию «ИЛИ» сложить текущее значение регистра с маской которая содержит те биты которые необходимо включить. Например, сложим значение регистра RCC->AHBENR по умолчанию, т.е. 0x14 и число 0x80000 тем самым включим тактирование GPIOC путем установки 19 бита:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Каким образом мы можем это сделать из программы? Всё достаточно просто. В данном случае у нас два варианта:

То есть, мы могли бы обращаться к адресам регистров напрямую по адресу и написать так:

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

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

Наш код будет выглядеть следующим образом:

Давайте для ознакомления копнём вглубь библиотеки CMSIS.

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

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

И мы переносимся в глубины библиотеки CMSIS, в которой увидим, что все регистры доступные для управления программным способом имеют вид TypeDef-структур, в том числе и наш RCC:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Провалившись подобным образом в RCC_TypeDef мы увидим структуру в которой описаны все поля нашего регистра:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Соответственно, мы можем спокойно обращаться к нужному нам регистру записью вида PERIPH_MODULE->REGISTER и присваивать ему определенное значение.

Помимо мнемонического обозначения регистров есть так же обозначения конкретных битов. Если мы провалимся к объявлению параметра RCC_AHBENR_GPIOCEN из нашей программы, то так же увидим объявление всех параметров:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Таким образом, используя библиотеку CMSIS у нас получается лаконичная читаемая запись нужного нам параметра в регистр, через установку которого мы запускаем тактирование на нужный нам порт:

В качестве задания: определите используя возможности Keil, каким образом получился адрес регистра RCC->AHBENR как 0x40021014.

Как настроить нужные нам пины GPIO для того чтобы можно было включить светодиод?

Итак, мы знаем что нужные нам светодиоды подключены к порту GPIOC к пинам PC8 и PC9. Нам нужно настроить их в такой режим, чтобы загорался светодиод. Хотелось бы сразу же сделать оговорку, что порты GPIO мы рассмотрим подробнее в другой статье и тут мы сконцентрируемся именно на работе с регистрами.

Первым делом нам нужно перевести режим работы пинов PC8 и PC9 в режим Output. Остальные параметры порта можно оставить по умолчанию. Переходим в Reference Manual в раздел 9. General-purpose I/Os (GPIO) и открываем пункт отвечающий за режим работы пинов порта GPIO и видим что за этот параметр отвечает регистр MODER:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Судя по описанию, для установки пинов PC8 и PC9 в режим Output мы должны записать 01 в соответствующие поля регистра GPIOC.

Это можно сделать через прямую установку с помощью числовых значений:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Или через использование определений из библиотеки:

После данной инструкции наши пины PC8 и PC9 перейдут в режим Output.

Как включить светодиод?

Если мы обратим внимание на список доступных регистров для управления портом GPIO то можем увидеть регистр ODR:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Каждый из соответствующих битов отвечает за один из пинов порта. Его структуру вы можете увидеть ниже:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Для того, чтобы обеспечить попеременную смену состояний светодиодов надо с определенным временным интервалом включать/выключать 8 и 9 биты. То есть попеременно присваивать регистру значение 0x100 и 0x200.

Сделать это мы можем через прямое присвоение значений регистру:

Можем через использование определений из библиотеки:

Но так как микроконтроллер работает очень быстро — мы не будем замечать смены состояний светодиодов и визуально будет казаться что они оба горят постоянно. Для того чтобы они действительно моргали попеременно мы внесем искусственную задержку в виде цикла который займет МК бесполезными вычислениями на некоторое время. Получится следующий код:

На этом первоначальное знакомство с регистрами и методами работы с ними мы можем закончить.

Проверка результатов работы нашего кода

Небольшое приятное дополнение в конце статьи: в Keil имеется отличный Debug-инструмент с помощью которого мы можем пошагово выполнить нашу программу и просмотреть текущее состояние любого периферийного блока. Для этого после загрузки прошивки после компиляции мы можем нажать кнопку Start Debug Session:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Рабочая среда Keil переключится в режим отладки. Мы можем управлять ходом программы с помощью данных кнопок:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

И есть еще одна удобная функция работы с периферией в режиме отладки, она позволяет просматривать текущее состояние регистров и менять их состояние простым кликом мышкой.

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

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Если вы кликните по одному из пунктов данного меню, вы увидите адрес регистра и его краткое описание. Так же можно просмотреть описание к каждому отдельному параметру регистра:

Что такое регистр в электронике. Смотреть фото Что такое регистр в электронике. Смотреть картинку Что такое регистр в электронике. Картинка про Что такое регистр в электронике. Фото Что такое регистр в электронике

Попробуйте самостоятельно пошагово выполнить программу, включить/выключить светодиоды не используя программу, а используя данный режим работы с микроконтроллером. Простор для фантазии тут обширный. Так же попробуйте поиграться с длительностями задержек, сделайте одновременное моргание обоими светодиодами. В общем экспериментируйте! )

Источник

Регистр принцип работы

Регистры. Устройство, принцип работы

Регистр — это последовательностное логическое устройство, используемое для хранения n-разрядных двоичных чисел и выполнения преобразований над ними. Регистр представляет собой упорядоченную последовательность триггеров, число которых соответствует числу разрядов в слове. С каждым регистром обычно связано комбинационное цифровое устройство, с помощью которого обеспечивается выполнение некоторых операций над словами.

Типичными являются следующие операции:

● прием слова в регистр;

● передача слова из регистра;

● поразрядные логические операции;

● сдвиг слова влево или вправо на заданное число разрядов;

● преобразование последовательного кода слова в параллельный и обратно;

● установка регистра в начальное состояние (сброс).

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

Классификация

● накопительные (регистры памяти, хранения);

В свою очередь сдвигающие регистры делятся:

● по способу ввода-вывода информации на параллельные, последовательные, комбинированные;

● по направлению передачи информации на однонаправленные, реверсивные.

Для чего нужны регистры

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

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

Любой регистр процессора – это цифровая электронная схема, содержащая последовательность двоичных чисел различной разрядности (16, 32 или 64) и результаты выполнения преобразований между ними. По типу приема и передачи информации могут быть последовательными (сдвиговыми) и параллельными.

Регистры-аккумуляторы универсальны, в них содержится большая часть промежуточных результатов выполнения различных команд (логических, арифметических, ввода/вывод и пр.). Процессор может содержать более одного аккумулятора. Разработчики программного обеспечения используют аккумуляторы для сокращения разрядности команд, упрощения программного кода.

Регистры-флаги известны также как регистры условий. Они показывают определенный результат выполнения операции, который может быть нулевым, положительным, отрицательным, или указывать на переполнение. Обычно коды условий объединяются в группы и образуют регистр другого типа – управляющий. Менять регистры-флаги возможно, но нежелательно, чтобы не исказить цельный результат.

Регистры, содержащие указатели на особые области памяти (стек, базу, команду), называются регистрами-указателями. Самый главный из них – указатель стека. Стек – это часть памяти, состоящая из ячеек, следующих друг за другом, т.е. взять из стека можно только ту ячейку, которая лежит сверху. Именно на эту вершину и указывает регистр стека.

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

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

Индексных регистров два – это индекс источника и индекс приемника. Они используются для получения адреса данных стека в сочетании с регистрами-указателями.

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

Регистры управления контролируют работу процессора и недоступны пользователю. Их выполнение в основном, контролируют машинные программы. В них содержится информация о текущей выполняемой команде, состоянии процессора, а также они локализуют управляющие структуры при работе процессора в защищенном режиме.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *