RU183846U1 - MATRIX SIGNAL PROCESSOR FOR KALMAN FILTRATION - Google Patents
MATRIX SIGNAL PROCESSOR FOR KALMAN FILTRATION Download PDFInfo
- Publication number
- RU183846U1 RU183846U1 RU2018126263U RU2018126263U RU183846U1 RU 183846 U1 RU183846 U1 RU 183846U1 RU 2018126263 U RU2018126263 U RU 2018126263U RU 2018126263 U RU2018126263 U RU 2018126263U RU 183846 U1 RU183846 U1 RU 183846U1
- Authority
- RU
- Russia
- Prior art keywords
- matrix
- block
- outputs
- blocks
- operations
- Prior art date
Links
- 239000011159 matrix material Substances 0.000 title claims abstract description 54
- 238000001914 filtration Methods 0.000 title claims abstract description 9
- 230000017105 transposition Effects 0.000 abstract description 2
- 238000010977 unit operation Methods 0.000 abstract 1
- 238000000605 extraction Methods 0.000 description 2
- 102100026816 DNA-dependent metalloprotease SPRTN Human genes 0.000 description 1
- 101710175461 DNA-dependent metalloprotease SPRTN Proteins 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000004907 flux Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
Abstract
Полезная модель относится к области вычислительной техники, а именно к матричному сигнальному процессору для калмановской фильтрации, включающему двухвходовые блоки памяти матричных операндов, подключенные к коммутатору, выходы и входы/выходы которого подключаются к блоку транспонирования, два выхода которого подключаются к двум блокам наложения шаблона, а два других входа/выхода блока транспонирования подключаются к блоку матричных операций, к которому также подключаются выходы блоков наложения шаблона, при этом блок матричных операций подключается к блоку скалярных операций и регистрам управления, которые также подключаются к микропроцессорному ядру, коммутатору, блоку транспонирования и блокам наложения шаблона. Полезная модель обеспечивает повышение производительности вычисления матричных операций за такт в задачах калмановской фильтрации.The utility model relates to the field of computer engineering, namely to a matrix signal processor for Kalman filtering, including two-input memory blocks of matrix operands connected to a switch, the outputs and inputs / outputs of which are connected to a transpose block, two outputs of which are connected to two overlay blocks of a template, and the other two inputs / outputs of the transpose block are connected to the matrix operations block, to which the outputs of the template overlay blocks are also connected, while the matrix opera block ations is connected to the scalar unit operations and control registers, which are also connected to the microprocessor core, a switch unit transposition blocks and a template overlay. The utility model provides an increase in the performance of computing matrix operations per cycle in Kalman filtering problems.
Description
Полезная модель относится к области вычислительной техники и может быть использована в различных областях науки и промышленности при создании устройств управления и цифровой обработки сигналов.The utility model relates to the field of computer technology and can be used in various fields of science and industry to create control devices and digital signal processing.
Из существующего уровня техники известен сигнальный процессор [Lapsley P. et al. DSP processor fundamentals: architectures and features. - New York, NY, USA: IEEE press, 1997]. Такое устройство содержит микропроцессорное ядро, дополнительные блоки памяти, блоки вычислительных операций.The signal processor [Lapsley P. et al. DSP processor fundamentals: architectures and features. - New York, NY, USA: IEEE press, 1997]. Such a device contains a microprocessor core, additional memory blocks, blocks of computational operations.
Недостатками данного устройства является низкая производительность вычисления матричных операций за такт в задачах калмановской фильтрации.The disadvantages of this device is the low productivity of computing matrix operations per cycle in Kalman filtering problems.
Предлагаемая полезная модель направлена на решение технической задачи по устранению указанного недостатка.The proposed utility model is aimed at solving the technical problem of eliminating this drawback.
Достигаемый при этом технический результат заключается в повышении производительности вычисления матричных операций за такт в задачах калмановской фильтрации.The technical result achieved in this case consists in increasing the productivity of computing matrix operations per cycle in Kalman filtering problems.
Технический результат достигается тем, что матричный сигнальный процессор для калмановской фильтрации включает двухвходовые блоки памяти матричных операндов, подключенные к коммутатору, выходы и входы/выходы которого подключаются к блоку транспонирования, два выхода которого подключаются к двум блокам наложения шаблона, а два других входа/выхода блока транспонирования подключаются к блоку матричных операций, к которому также подключаются выходы блоков наложения шаблона, при этом блок матричных операций подключается к блоку скалярных операций и регистрам управления, которые также подключаются к микропроцессорному ядру, коммутатору, блоку транспонирования и блокам наложения шаблона.The technical result is achieved by the fact that the matrix signal processor for Kalman filtering includes two-input memory blocks of matrix operands connected to the switch, the outputs and inputs / outputs of which are connected to the transpose block, two outputs of which are connected to two overlay blocks of the template, and two other inputs / outputs the transpose block are connected to the matrix operations block, to which the outputs of the template overlay blocks are also connected, while the matrix operations block is connected to the scalar block x operations and control registers, which are also connected to the microprocessor core, a switch unit transposition blocks and a template overlay.
Указанные признаки полезной модели являются существенными и совокупность этих признаков достаточна для получения требуемого технического результата.These features of the utility model are significant and the combination of these features is sufficient to obtain the desired technical result.
Полезная модель поясняется следующим чертежом.The utility model is illustrated by the following drawing.
На фиг. 1 показана блок-схема заявляемой полезной модели. Она содержит двухвходовые блоки памяти матричных операндов 1 и 2, коммутатор 3, блок транспонирования 4, блоки наложения шаблона 5 и 6, блок матричных операций 7, блок скалярных операций 8, регистры управления 9, микропроцессорное ядро 10.In FIG. 1 shows a block diagram of the claimed utility model. It contains two-input memory blocks of
Работает устройство следующим образом. Микропроцессорное ядро 10, при помощи регистров управления 9 осуществляет выборку и запуск требуемой операции блока матричных операций 7, а также определяет параметры ее исполнения. Также микропроцессорное ядро 10 через регистры управления 9 устанавливает режим функционирования коммутатора 3, блоков наложения шаблона 5 и 6 и блока транспонирования 4, которые фиксируются на момент выполнения операции. После завершения операции информация об этом поступает от блока матричных операций 7 через регистры управления 9 на микропроцессорное ядро 10, которое при помощи коммутатора 3, конфигурируемого при помощи регистров управления 9, осуществляет коммутацию двухвходовых блоков памяти матричных операндов 1 и 2 на регистры управления 9, из которых микропроцессорное ядро 10 вычитывает результаты проведенной операции.The device operates as follows. The
Каждый из блоков наложения шаблона 5 и 6 в зависимости от установленного при помощи регистров управления 9 одного из четырех режимов работы передает в блок матричных операций 7 значения, вычитанные из двухвходовых блоков памяти матричных операндов 1 и 2 (режим 0) или «на лету» подменяет их на 1 (режим 1), 0 (режим 2) или -1 (режим 3). Блок транспонирования 4 осуществляет передачу данных между двухвходовыми блоками памяти матричных операндов 1 и 2, блоками наложения шаблонов 5 и 6 и блоком матричных операций 7, позволяя «на лету» менять между собой значения строки и столбца ячейки, вычитываемой или записываемой в матричную переменную, хранимую в двухвходовых блоках памяти матричных операндов 1 и 2. Блок матричных операций 7 включает в себя независимо аппаратно реализованные матричные операции сложения двух матриц, каждая из которых умножена на константу; умножения двух матриц; поэлементного умножения матриц; поэлементного извлечения квадратного корня; поэлементной инверсии матрицы; инверсии квадратной матрицы с нахождением ее определителя; быстрой инверсии матрицы 2×2 с нахождением ее определителя; декомпозиции Холецкого. Выбор того, какая операция будет использоваться следующей, осуществляется микропроцессорным ядром 10 при помощи регистров управления 9. Блок матричных операций 7 имеет вход для подключения двухвходового блока памяти матричных операндов, который будет использоваться для чтения операндов, и вход/выход для подключения двухвходового блока памяти матричных операндов, который будет использоваться для записи результатов операции. Вход блока матричных операций 7, используемый для чтения операндов, подключается к двухвходовым блокам памяти матричных операндов 1 и 2 через блоки наложения шаблона 5 и 6 и блок транспонирования 4. Вход/выход блока матричных операций 7, используемый для записи результатов операции, подключается к двухвходовым блокам памяти матричных операндов 1 и 2 через блок транспонирования 4. Коммутатор 3 осуществляет коммутацию двухвходовых блоков памяти матричных операндов / и 2, определяя какой из двух двухвходовых блоков памяти матричных операндов 1 или 2 будет в течении следующей операции скоммутирован на вход блока матричных операций 7, используемый для чтения операндов, а какой будет скоммутирован на вход блока матричных операций 7, используемый для записи результатов операции. Управление коммутатором 3 осуществляется микропроцессорным ядром 10 при помощи регистров управления 9. Также коммутатор позволяет коммутировать входы/выходы двухвходовых блоков памяти матричных операндов 1 и 2 на. регистры управления 9, позволяя микропроцессорному ядру 10 через них осуществлять чтение и запись матричных переменных. Двухвходовые блоки памяти матричных операндов 1 и 2 представляют из себя независимые блоки двухпортовой статической памяти объемом 22L+K ячеек, хранящих числа с фиксированной точкой, адресация которой построена таким образом, что старшие К-бит, адреса определяют номер матричной переменной, средние L-бит адреса определяют номер столбца элемента матричной переменной, а младшие L-бит адреса определяют номер строки элемента матричной переменной. Для проведения математических операций над отдельными элементами матричных переменных, блок матричных операций 7 передает их значения на соответствующие входы блока скалярных операций 8, который включает в себя независимо аппаратно реализованные два сумматора с поддержкой конвейеризации, два умножителя с поддержкой конвейеризации, один блок делений, один блок извлечения квадратного корня, и по завершении скалярной операции ее результат поступает на блок матричных операций 7.Each of the overlapping blocks of
Работоспособность была проверена на макете, который наглядно продемонстрировал получение требуемого технического результата. Предложенное устройство с К=2 и L=3 было реализовано при помощи программируемой логической интегральной схемы Xilinx Spartan 6, работающей с тактовой частотой 100 МГц. На базе устройства был реализован расширенный фильтр Калмана 5-го порядка, предназначенный для предсказания потокосцепления асинхронного двигателя, обеспечивающий расчет одной итерации фильтрации за 10 мкс. Аналогичный фильтр, реализованный на базе сигнального процессора Freescale МРС555, работающего с тактовой частотой 40 МГц, имел время расчета одной итерации 1000 мкс. Таким образом производительности вычисления матричных операций за такт в задачах калмановской фильтрации за счет применения полезной модели была повышена в 40 раз, что говорит о достижении заявленного технического результата.Performance was tested on the layout, which clearly demonstrated the receipt of the required technical result. The proposed device with K = 2 and L = 3 was implemented using a Xilinx Spartan 6 programmable logic integrated circuit operating at a clock frequency of 100 MHz. On the basis of the device, an expanded fifth-order Kalman filter was implemented, designed to predict the flux linkage of an asynchronous motor, which provides the calculation of one filtration iteration per 10 μs. A similar filter, implemented on the basis of the Freescale MPC555 signal processor operating at a clock frequency of 40 MHz, had a calculation time of one iteration of 1000 μs. Thus, the productivity of computing matrix operations per cycle in Kalman filtering problems due to the use of a utility model was increased by 40 times, which indicates the achievement of the claimed technical result.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2018126263U RU183846U1 (en) | 2018-07-17 | 2018-07-17 | MATRIX SIGNAL PROCESSOR FOR KALMAN FILTRATION |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2018126263U RU183846U1 (en) | 2018-07-17 | 2018-07-17 | MATRIX SIGNAL PROCESSOR FOR KALMAN FILTRATION |
Publications (1)
Publication Number | Publication Date |
---|---|
RU183846U1 true RU183846U1 (en) | 2018-10-05 |
Family
ID=63794032
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2018126263U RU183846U1 (en) | 2018-07-17 | 2018-07-17 | MATRIX SIGNAL PROCESSOR FOR KALMAN FILTRATION |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU183846U1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2288509C1 (en) * | 2005-10-14 | 2006-11-27 | Общество с ограниченной ответственностью "АЛЬТОНИКА" (ООО "АЛЬТОНИКА") | Method for monitoring, tracking and controlling ground-based vehicles |
US7917370B2 (en) * | 2007-09-04 | 2011-03-29 | National Central University | Configurable common filterbank processor applicable for various audio standards and processing method thereof |
US8515759B2 (en) * | 2007-04-26 | 2013-08-20 | Dolby International Ab | Apparatus and method for synthesizing an output signal |
RU2576595C2 (en) * | 2013-08-21 | 2016-03-10 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗ ГУ) | Independent intellectual measuring module |
-
2018
- 2018-07-17 RU RU2018126263U patent/RU183846U1/en active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2288509C1 (en) * | 2005-10-14 | 2006-11-27 | Общество с ограниченной ответственностью "АЛЬТОНИКА" (ООО "АЛЬТОНИКА") | Method for monitoring, tracking and controlling ground-based vehicles |
US8515759B2 (en) * | 2007-04-26 | 2013-08-20 | Dolby International Ab | Apparatus and method for synthesizing an output signal |
US7917370B2 (en) * | 2007-09-04 | 2011-03-29 | National Central University | Configurable common filterbank processor applicable for various audio standards and processing method thereof |
RU2576595C2 (en) * | 2013-08-21 | 2016-03-10 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗ ГУ) | Independent intellectual measuring module |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
NZ204954A (en) | Associative processor cell | |
US10693466B2 (en) | Self-adaptive chip and configuration method | |
RU183846U1 (en) | MATRIX SIGNAL PROCESSOR FOR KALMAN FILTRATION | |
JPH0368021A (en) | High speed numerical processor | |
CN109669670A (en) | Data processing method and device for the unequal piecemeal in montgomery modulo multiplication | |
JP7250953B2 (en) | Data processing equipment and artificial intelligence chips | |
JPS5935451B2 (en) | General purpose register access method | |
TW201917573A (en) | Task processing method, device and system capable of saving computing resources | |
JP7078129B2 (en) | Arithmetic processing device and control method of arithmetic processing device | |
JPH04222111A (en) | Digital filter | |
JPS58147223A (en) | Digital filter | |
JPH023203B2 (en) | ||
SU1748152A1 (en) | Computing device | |
RU2018116998A (en) | PROCESSOR OF INCREASED OPERATING RELIABILITY | |
JPS6162174A (en) | Information processor | |
JP2006270178A (en) | Fir digital filter | |
JPH02181821A (en) | Arithmetic device | |
JP3166781B2 (en) | Adder circuit | |
SU491946A1 (en) | Root degree extractor | |
JPH10260958A (en) | Address generating circuit | |
SU610116A1 (en) | Device for solving mathematical physics two-dimensional problems | |
JP3099255B2 (en) | Remainder multiplier | |
JPS642290B2 (en) | ||
JPH04364525A (en) | Parallel arithmetic unit | |
KR20070046496A (en) | Register file structure of digital signal processor having enhanced multiplication speed |