Архитектура микропроцессора с функцией автоматического программирования микроконтроллеров



Архитектура микропроцессора с функцией автоматического программирования микроконтроллеров
Архитектура микропроцессора с функцией автоматического программирования микроконтроллеров
Архитектура микропроцессора с функцией автоматического программирования микроконтроллеров

Владельцы патента RU 2675045:

Ткаченко Юрий Анатольевич (RU)

Изобретение относится к области электроники. Технический результат заключается в повышении быстродействия и повышении надежности. Технический результат достигается за счет архитектуры микропроцессора с функцией автоматического программирования, которая содержит электрически соединенные блок автономных вычислений (БАВ), выполненный с возможностью дешифрования и разделения данных и команд управления, блок передачи команд (БПК), выполненный с возможностью анализа задания, содержащий блок определения порядка работы (БОПР), выполненный с возможностью определения порядка действий синхронизатора кластеров (СК) гибридных процессоров, создания инструкций для его работы и выдачи их в синхронизатор кластеров, а также выполненный с возможностью анализа выполняемых действий, программируемую логическую интегральную схему (ПЛИС) для реализации взаимодействия архитектуры и системы команд, выполненную с возможностью создания инструкций и передачи их в СК гибридных процессоров, и не менее двух гибридных процессоров, при этом СК гибридных процессоров выполнен с возможностью разделения инструкций на то количество гибридных процессоров, которое подключено к СК. 1 з.п. ф-лы, 2 ил.

 

Изобретение относится к области электроники, в частности к микропроцессорным архитектурам, а именно к гибридным кластерным процессорам.

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

API (англ. application programming interface - программный интерфейс приложения, интерфейс прикладного программирования) - набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) или операционной системой для использования во внешних программных продуктах.

BIOS (англ. basic input/output system - базовая система ввода-вывода), БИОС, также БСВВ - набор микропрограмм, реализующих API для работы с аппаратурой компьютера и подключенными к нему устройствами.

CISC (англ. complex instruction set computing или complex instruction set computer) - тип процессорной архитектуры, которая характеризуется следующим набором свойств: нефиксированное значение длины команды; арифметические действия кодируются в одной команде; небольшое число регистров, каждый из которых выполняет строго определенную функцию.

EEPROM (англ. Electrically Erasable Programmable Read-Only Memory) - электрически стираемое перепрограммируемое ПЗУ (ЭСППЗУ), один из видов энергонезависимой памяти.

EFI (англ. Extensible Firmware Interface - интерфейс расширяемой прошивки) - интерфейс между операционной системой и микропрограммами, управляющими низкоуровневыми функциями оборудования, его основное предназначение: корректно инициализировать оборудование при включении системы и передать управление загрузчику операционной системы.

GPU (англ. graphics processing unit - графический процессор) - отдельное устройство персонального компьютера или игровой приставки, выполняющее графический рендеринг.

LAN (англ. Local Area Network - локальная вычислительная сеть) - компьютерная сеть, покрывающая обычно относительно небольшую территорию или небольшую группу зданий (дом, офис, фирму, институт).

RISC (англ. reduced instruction set computer - компьютер с сокращенным набором команд) - архитектура процессора, в котором быстродействие увеличивается за счет упрощения инструкций, чтобы их декодирование было более простым, а время выполнения - меньшим.

WAN (англ. Wide Area Network - глобальная вычислительная сеть) - компьютерная сеть, охватывающая большие территории и включающая большое число узлов.

БАВ - блок автономных вычислений.

БПК - блок передачи команд.

БОПР - блок определения порядка работы.

ВКЕМП - вычислительный кластер единых монтажных вычислительных приборов.

ЕМП - единый монтажный вычислительный прибор.

СК - синхронизатор кластеров.

ПЗУ (постоянное запоминающее устройство) - энергонезависимая память, используется для хранения массива неизменяемых данных.

ПЛИС (программируемая логическая интегральная схема) - электронный компонент, используемый для создания цифровых интегральных схем.

БШ - блок шифрования.

СРВ - синхронизация результатов вычислений.

Известна техника неспециализированных вычислений на графических процессорах (General-purpose computing for graphics processing units) в части того, что вычисления ведутся как неспециализированные вычисления или вычисления широкого профиля на гетерогенном оборудовании.

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

Основной недостаток шейдерной архитектуры заключается в том, что представляет собой готовую прикладную программу, несмотря на то, что написана и скомпилирована для выполнения на GPU. Во время работы шейдеры обращаются к 3D API GPU строго в рамках, определенных программистом.

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

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

Указанный технический результат достигается за счет того, что архитектура микропроцессора с функцией автоматического программирования, где микропроцессор содержит электрически соединенные БАВ, выполненный с возможностью дешифрования и разделение данных и команд управления; БПК, выполненный с возможностью анализа задания, содержащий БОПР, выполненный с возможностью определения порядка действий СК гибридных процессоров, создания инструкций для его работы и выдачи их в синхронизатор кластеров, а так же выполненный с возможностью анализа выполняемых действий; ПЛИС для реализации взаимодействия архитектуры и системы команд, выполненную с возможностью создания инструкций и передачи их в СК гибридных процессоров, и не менее двух гибридных процессоров, при этом СК гибридных процессоров выполнен с возможностью разделения инструкций на то количество гибридных процессоров, которое подключено к СК.

Гибридные процессоры выполнены с возможностью сочетания как RISC процессоров, так и CISC процессоров, а БАВ - с возможностью перераспределения работы RISC и CISC процессорами.

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

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

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

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

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

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

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

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

Внизу расположен БОС, в котором происходит непосредственно вычисление.

Раскрытие заявляемого изобретения показано с помощью фиг. 1, 2, на которых изображены:

Фиг. 1 - блок схема работы архитектуры микропроцессора;

Фиг. 2 - функциональная схема архитектуры микропроцессора.

Архитектура микропроцессора содержит блок автономных вычислений (БАВ), блок передачи команд, память (БПК), синхронизатор кластеров (СК) и не менее двух гибридных процессоров (Р1-Р4).

В БПК находится блок определения порядка работы (БОПР). БПК содержит ПЛИС.

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

В БАВ приходит общий поток данных и команд. После расшифровки видны данные и задание, что необходимо сделать с этими данными. Данные и задание отправляются в БПК.

Данные напрямую загружаются в память, например, EEPROM.

На первоначальном этапе в БПК происходит выборка, какое действие необходимо выполнить, например, кодирование видео, передача голосового сигнала по линиям связи в реальном времени, просмотр видео из WAN сети, просмотр видео из LAN сети по коммутируемому каналу, работа с базой данных, работа с базой данных в реальном времени.

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

Затем происходит определение необходимых инструментов для выполнения задания на основе имеющихся инструкций.

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

При регистрации пользователя в системе ему присваивают приоритет в системе (иерархия) и время действия приоритета или условия действий и смены приоритетов во времени.

Затем в БОПР происходит анализ выполняемых действий, т.е. что конкретно нужно сделать, и есть ли возможность выполнить задачу, разделив задание на параллельные процессоры.

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

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

БАВ 1 напрямую управляет работой гибридных процессоров 5, сочетающих как RISC процессоры, так и CISC процессоры.

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

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

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

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

ПЛИС реализует микропрограмму взаимодействия архитектуры и системы команд.

Пример обработки задачи.

Необходимо кодировать видео, файл f1 из формата avi1 в формат avi2 и сохранить как f2. Задача и данные перекодирования видео из одного формата в другой поступают в БПК. Устанавливают приоритет задачи на основании приоритета пользователя. Определяют с помощью БПК задачи и возможности вести вычисления параллельно. Определяют свободные вычислительные ресурсы, подходящие для решения вычислительной задачи. Обеспечивают построение матрицы аппаратных модулей для выполнения задания и разделение задания на модули вычислений. Осуществляют отправку задания на множество аппаратных устройств CISC процессоров и RISC процессоров и получение БАВ модулей вычисления. Производят расшифровку и разделение данных и команд управления. Определяют порядок работ с помощью БОПР и отправляют задания в кластер гибридных процессоров. Получают с помощью БПК результаты вычислений. Через БПК на периферийные устройства отправляют результаты вычислений.

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

Таким образом, заявляемая архитектура обеспечивает:

- увеличение быстродействия, за счет параллельного вычисления;

- повышение надежности, за счет заявляемой структуры микропроцессора;

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

- увеличение быстродействия, выполнения всех вычислений в одном массиве памяти и отсутствия необходимости переправлять на другой ВКЕМП при дальнейшем вычислении;

- обеспечение безопасности, за счет того, что все данные пересылаются в зашифрованном виде по любым каналам связи;

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

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

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

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

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

1. Архитектура микропроцессора с функцией автоматического программирования, характеризующаяся тем, что микропроцессор содержит электрически соединенные блок автономных вычислений (БАВ), выполненный с возможностью дешифрования и разделения данных и команд управления, блок передачи команд (БПК), выполненный с возможностью анализа задания, содержащий блок определения порядка работы (БОПР), выполненный с возможностью определения порядка действий синхронизатора кластеров (СК) гибридных процессоров, создания инструкций для его работы и выдачи их в синхронизатор кластеров, а также выполненный с возможностью анализа выполняемых действий, программируемую логическую интегральную схему (ПЛИС) для реализации взаимодействия архитектуры и системы команд, выполненную с возможностью создания инструкций и передачи их в СК гибридных процессоров, и не менее двух гибридных процессоров, при этом СК гибридных процессоров выполнен с возможностью разделения инструкций на то количество гибридных процессоров, которое подключено к СК.

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



 

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

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

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

Изобретение относится к области компьютерной техники. Технический результат заключается в повышении эффективности управления ресурсами.

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

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

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

Группа изобретений относится к технической поддержке пользователей. Технический результат – повышение качества технической поддержки пользователей.

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

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

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

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

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

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

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

Изобретение относится к области электроники и вычислительной техники. Технический результат - повышение надежности работы устройства и сохранение работоспособности устройства при возникновении отказов/повреждений в его оборудовании.

Изобретение относится к области радиотехники. Техническим результатом изобретения является существенное сокращение количества контролируемых системой контроля параметров.

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

Изобретение относится к вычислительной технике. Технический результат - повышение скорости обработки цифровой информации.

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

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