Блок 16-разрядной арифметики универсального микроконтроллера

 

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

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

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

Полезная модель представляет собой блок, который может быть использован в составе 8-разрядных или 16-разрядных микроконтроллеров, предназначенный для выполнения арифметических и логических операций над 16-разрядными и 32-разрядными операндами. Особенностью полезной модели является настраиваемое время выполнения команд, выбираемое индивидуально для каждого микроконтроллера, в состав которого входит полезная модель. Желаемый технический результат достигается за счет того, что в составе полезной модели находится схема задания времени выполнения, а все логические и арифметические операции выполняются за один такт.Этот один такт может быть равен нескольким тактам микроконтроллера. Количество тактов выбирается так, чтобы не ограничивалась максимальная частота функционирования всего устройства, в состав которого входит полезная модель.

Известны блоки 16-разрядной арифметики, входящие в состав 8-разрядных микроконтроллеров зарубежных производителей [1]. Особенностью этих блоков является выполнение арифметических и логических команд под управлением соответствующей микропрограммы, обеспечивающей необходимую настройку узлов в каждом такте. Эта микропрограмма выполняется за заданное количество тактов, не зависящее от параметров устройства, в состав которого она входит. Каждая выполняемая операция представляется в виде последовательности более простых преобразований, каждое из которых длится один такт. Так умножение 16-разрядной величины на 16-разрядную представляется в виде шестнадцати последовательностей сложений и сдвигов, деление 32-разрядной величины на 16-разрядную - последовательностью тридцати двух вычитаний и сдвигов, сдвиг на тридцать два разряда - последовательностью тридцати двух сдвигов по одному разряду и т.д [2]. В таблице показано время выполнения арифметических операций блоком 16-разрядной арифметики микроконтроллера XC886/888CLM.

Таблица
ОперацияРазрядность результатаРазрядность остаткаКоличество периодов тактового сигнала
Знаковое деление 32 бит/16 бит 32 бита16 бит33
Знаковое деление 16 бит/16 бит 16 бит16 бит17
Знаковое умножение 16 бит на 16 бит 32 бита- 16
Беззнаковое деление32 бит/16 бит 32 бита16 бит32
Беззнакове деление 16 бит/16 бит 16 бит16 бит16
Беззнаковое умножение 16 бит на 16 бит 32 бита- 16
32 битная нормализация-- Количество сдвигов+1 (максимально 32)
32 битный сдвиг влево/вправо -- Количество сдвигов+1 (максимально 32)

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

Полезная модель может быть использована в составе 8-разрядных или 16-разрядных микроконтроллеров и выполняет арифметические и логические операции над 16-разрядными или 32-разрядными операндами за меньшее количество времени. Технический результат достигается тем, что каждой операции, выполняемой блоком, соответствует своя комбинационная схема, реализующая соответствующую функцию за один такт, который может равняться нескольким периодам тактового сигнала устройства, в состав которого может входить полезная модель. Количество периодов выбирается индивидуально исходя из выражения:

Ntпм/tмк мах (1), где

N - целое число периодов тактового сигнала;

tпм - длительность выполнения самой долгой операции в полезной модели, не;

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

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

На фиг. представлена структура полезной модели.

Полезная модель состоит из следующих составных частей:

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

2. Схема задания времени выполнения арифметических или логических операций (сдвиговый регистр или счетчик).

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

4. Схема коммутации регистров операндов.

5. Регистры результатов операций.

6. Схема коммутации регистров результата.

7. Блок комбинационных схем, реализующих арифметические или логические операции за один такт.

8. Схема записи и чтения регистров.

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

1. Беззнаковое умножение двух 16-разрядных величин с получением 32-разрядного результата.

2. Беззнаковое деление 16-разрядного операнда на 16-разрядный, с получением 16-разрядного результата деления и 16-разрядного остатка.

3. Беззнаковое деление 32-разрядного операнда на 16-разрядный, с получением 32-разрядного результата деления и 16-разрядного остатка.

4. Логический сдвиг 32-разрядного операнда.

5. Умножение двух 16-разрядных величин со знаком с получением 32-разрядного результата.

6. Деление 16-разрядного операнда со знаком на 16-разрядный со знаком, с получением 16-разрядного результата деления и 16-разрядного остатка.

7. Деление 32-разрядного операнда со знаком на 16-разрядный со знаком, с получением 32-разрядного результата деления и 16-разрядного остатка.

8. Арифметический сдвиг 32-разрядного операнда.

9. Нормализация 32-разрядного операнда.

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

Литература:

1. XC886/88CLM 8-bit Single Chip Microcontroller. User's manual. V1.3 2010-02.

2. Спиридонов В.В. Проектирование структур АЛУ: Учебное пособие. - СПб.: СЗПИ, 1992. - 72 с.

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



 

Похожие патенты:

Устройство беспроводной или usb оптической ручки - мыши относится к компьютерной технике, а точнее к устройствам ввода информации в ПК.

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

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

Изобретение относится к вычислительной технике и может быть использовано для мониторинга физического состояния пользователя при работе на компьютере

Полезная модель относится к компьютерной технике, а точнее устройствам ввода информации в ПК

Техническим результатом является осуществление возможности обеспечения связи с доступом стандарта TETRA к системам стандарта GSM

Многофункциональная электрическая скороварка-мультиварка с wi-fi управлением относится к столовым принадлежностям, а именно к посуде для приготовления пищи в виде электрической мультиварки, предусматривающей как ручное, так и дистанционное управление основными параметрами приготовления пищи, а именно времени отложенного старта, временем готовки, температурными режимами.
Наверх