Main — различия между версиями
Материал из Модулярная арифметики
Turbo (обсуждение | вклад) |
Turbo (обсуждение | вклад) |
||
| (не показано 9 промежуточных версии 2 участников) | |||
| Строка 3: | Строка 3: | ||
=== Модулярные сумматоры === | === Модулярные сумматоры === | ||
| − | # [http://vscripts.ru/2012/generator-sum-2n-1.php Генератор Verilog для сумматора по модулю 2<sup>n</sup>-1] - реализация на базе двух сумматоров и мультиплексора ( | + | # [http://vscripts.ru/2012/generator-sum-2n-1.php Генератор Verilog для сумматора по модулю 2<sup>n</sup>-1] - реализация на базе двух сумматоров и мультиплексора (Р-2012). |
| − | # [http://vscripts.ru/dima/adder.php Генератор Verilog для сумматора по модулю 2<sup>n</sup>-1] - полностью комбинационная реализация без мультиплексора ( | + | # [http://vscripts.ru/dima/adder.php Генератор Verilog для сумматора по модулю 2<sup>n</sup>-1] - полностью комбинационная реализация без мультиплексора (Д-2012). |
# [http://vscripts.ru/dima/all_adders.php?n=31 Генератор Verilog для сумматора по произвольному модулю] - реализация предлагающая оптимальный вариант. | # [http://vscripts.ru/dima/all_adders.php?n=31 Генератор Verilog для сумматора по произвольному модулю] - реализация предлагающая оптимальный вариант. | ||
# [http://vscripts.ru/2014/modular-multi-sum.php Генератор Verilog для многовходового сумматора по произвольному модулю] - несколько различных вариантов сумматора нескольких переменных по модулю. | # [http://vscripts.ru/2014/modular-multi-sum.php Генератор Verilog для многовходового сумматора по произвольному модулю] - несколько различных вариантов сумматора нескольких переменных по модулю. | ||
| + | # [http://vscripts.ru/dima/Gorodecky_adder_web.php Генератор Verilog для многовходового сумматора по произвольному модулю] - реализация на базе метода сложения в позиционных кодах (Г-2015). | ||
=== Модулярные умножители === | === Модулярные умножители === | ||
| Строка 12: | Строка 13: | ||
# [http://vscripts.ru/2012/index-modulo-multiplication-sqr.php Генератор Verilog для умножения по модулю (метод 2)] - от 3 до 1000 по методу разности квадратов (X*Y = (1/4)*(X+Y)<sup>2</sup> - (1/4)*(X-Y)<sup>2</sup>) | # [http://vscripts.ru/2012/index-modulo-multiplication-sqr.php Генератор Verilog для умножения по модулю (метод 2)] - от 3 до 1000 по методу разности квадратов (X*Y = (1/4)*(X+Y)<sup>2</sup> - (1/4)*(X-Y)<sup>2</sup>) | ||
# [http://vscripts.ru/2015/index-modulo-multiplication-def.php Генератор Verilog для умножения по модулю (метод 3)] - позиционное умножение с последующим прямым преобразованием | # [http://vscripts.ru/2015/index-modulo-multiplication-def.php Генератор Verilog для умножения по модулю (метод 3)] - позиционное умножение с последующим прямым преобразованием | ||
| − | # [http://vscripts.ru/2015/index-modulo-multiplication-table.php Генератор Verilog для умножения по модулю (метод 4)] - модулярный умножитель на базе таблицы (case) | + | # [http://vscripts.ru/2015/index-modulo-multiplication-table.php Генератор Verilog для умножения по модулю (метод 4)] - модулярный умножитель на базе большой таблицы (case) |
| + | # [http://vscripts.ru/2015/index-modulo-multiplication-sum.php Генератор Verilog для умножения по модулю (метод 5)] - на базе частичных сумм | ||
# [http://vscripts.ru/2013/multiplication-mod-2-pow-n-plus-1.php Генератор Verilog для умножителя по модулю 2<sup>n</sup>+1] - для n от 3 до 43. | # [http://vscripts.ru/2013/multiplication-mod-2-pow-n-plus-1.php Генератор Verilog для умножителя по модулю 2<sup>n</sup>+1] - для n от 3 до 43. | ||
# [http://vscripts.ru/2013/multiplication-mod-2-pow-n-minus-1.php Генератор Verilog для умножителя по модулю 2<sup>n</sup>-1] - для n от 3 до 43. | # [http://vscripts.ru/2013/multiplication-mod-2-pow-n-minus-1.php Генератор Verilog для умножителя по модулю 2<sup>n</sup>-1] - для n от 3 до 43. | ||
| Строка 24: | Строка 26: | ||
=== Прямые модулярные преобразователи === | === Прямые модулярные преобразователи === | ||
| − | # [http://vscripts.ru/2012/forward-converter-2supn-generator.php Модулярный базис (2<sup>n</sup>-1, 2<sup>n</sup>, 2<sup>n</sup>+1)] - прямой преобразователь из позиционной системы счисления в систему остаточных классов ( | + | # [http://vscripts.ru/2012/forward-converter-2supn-generator.php Модулярный базис (2<sup>n</sup>-1, 2<sup>n</sup>, 2<sup>n</sup>+1)] - прямой преобразователь из позиционной системы счисления в систему остаточных классов (Р-2012). |
| − | # [http://vscripts.ru/dima/fwd_generator.php Модулярный базис (2<sup>n</sup>-1, 2<sup>n</sup>, 2<sup>n</sup>+1)] - прямой преобразователь из позиционной системы счисления в систему остаточных классов ( | + | # [http://vscripts.ru/dima/fwd_generator.php Модулярный базис (2<sup>n</sup>-1, 2<sup>n</sup>, 2<sup>n</sup>+1)] - прямой преобразователь из позиционной системы счисления в систему остаточных классов (Д-2012). |
# [http://vscripts.ru/2013/forward-converter-4-mod-generator.php Модулярный базис (2<sup>n</sup>-1, 2<sup>n</sup>+1, 2<sup>n+1</sup>-1, 2<sup>n+1</sup>+1)] - прямой преобразователь из позиционной системы счисления в систему остаточных классов. | # [http://vscripts.ru/2013/forward-converter-4-mod-generator.php Модулярный базис (2<sup>n</sup>-1, 2<sup>n</sup>+1, 2<sup>n+1</sup>-1, 2<sup>n+1</sup>+1)] - прямой преобразователь из позиционной системы счисления в систему остаточных классов. | ||
| − | # [http://vscripts.ru/ | + | # [http://vscripts.ru/2015/forward-converter-universal.php Универсальный прямой преобразователь] - прямой преобразователь из позиционной системы счисления в СОК для произвольной системы модулей (Две версии: комбинационный и конвейерный). |
=== Обратные модулярные преобразователи === | === Обратные модулярные преобразователи === | ||
| Строка 36: | Строка 38: | ||
# [http://vscripts.ru/2014/reverse-converter-pipeline-mixed-radix-with-error-correction.php Генератор Verilog конвеерного обратного преобразователя на базе полиадического кода с коррекцией ошибок] - универсальный обратный преобразователь в позиционную систему для произвольного числа модулей с коррекцией одиночной ошибки в одном из каналов. Два старших модуля являются избыточными. Используется перспективная схема с уменьшенной площадью. | # [http://vscripts.ru/2014/reverse-converter-pipeline-mixed-radix-with-error-correction.php Генератор Verilog конвеерного обратного преобразователя на базе полиадического кода с коррекцией ошибок] - универсальный обратный преобразователь в позиционную систему для произвольного числа модулей с коррекцией одиночной ошибки в одном из каналов. Два старших модуля являются избыточными. Используется перспективная схема с уменьшенной площадью. | ||
# [http://vscripts.ru/2014/straightforward_error_correction_reverse_converter.php Генератор Verilog конвеерного обратного преобразователя на базе полиадического кода с коррекцией ошибок] - универсальный обратный преобразователь в позиционную систему для произвольного числа модулей с коррекцией одиночной ошибки в одном из каналов. Два старших модуля являются избыточными. Используется стандартный метод проекций. | # [http://vscripts.ru/2014/straightforward_error_correction_reverse_converter.php Генератор Verilog конвеерного обратного преобразователя на базе полиадического кода с коррекцией ошибок] - универсальный обратный преобразователь в позиционную систему для произвольного числа модулей с коррекцией одиночной ошибки в одном из каналов. Два старших модуля являются избыточными. Используется стандартный метод проекций. | ||
| + | |||
=== КИХ-фильтры === | === КИХ-фильтры === | ||
# [http://vscripts.ru/2013/simple-fir-filter-generator.php Генератор Verilog для КИХ-фильтров (простейший метод)] - конвейерная структура сделанная по формуле свертки O(N<sup>2</sup>). | # [http://vscripts.ru/2013/simple-fir-filter-generator.php Генератор Verilog для КИХ-фильтров (простейший метод)] - конвейерная структура сделанная по формуле свертки O(N<sup>2</sup>). | ||
| − | # [http://vscripts.ru/2013/simple-modular-fir-filter-generator.php Генератор Verilog для конвейерных КИХ-фильтров на базе модулярного базиса (2<sup>n</sup>-1, 2<sup>n</sup>, 2<sup>n</sup>+1)] | + | # [http://vscripts.ru/2013/simple-modular-fir-filter-generator.php Генератор Verilog для конвейерных КИХ-фильтров на базе модулярного базиса (2<sup>n</sup>-1, 2<sup>n</sup>, 2<sup>n</sup>+1)], [http://vscripts.ru/2013/simple-modular-fir-filter-generator_v2.php Вторая версия] |
# [http://vscripts.ru/dima/verilog_generator_modular_fir_filter.php Генератор Verilog для конвейерных КИХ-фильтров на базе модулярной арифметики и БПФ] - перспективный метод с использование БПФ в конечном поле и сложностью O(N*logN) | # [http://vscripts.ru/dima/verilog_generator_modular_fir_filter.php Генератор Verilog для конвейерных КИХ-фильтров на базе модулярной арифметики и БПФ] - перспективный метод с использование БПФ в конечном поле и сложностью O(N*logN) | ||
| Строка 52: | Строка 55: | ||
# [http://vscripts.ru/dima/fast_fourier_transform_web.php?p=257&len=128 Генератор Verilog для прямых и инверсных Теоретико Числовых БПФ] - используется конвейерная структура Radix2SPDF. | # [http://vscripts.ru/dima/fast_fourier_transform_web.php?p=257&len=128 Генератор Verilog для прямых и инверсных Теоретико Числовых БПФ] - используется конвейерная структура Radix2SPDF. | ||
# [http://vscripts.ru/2014/coder_decoder_galua_generator.php Генератор Verilog для кодера и декодера Галуа] - только отдельные кодер и декодер. | # [http://vscripts.ru/2014/coder_decoder_galua_generator.php Генератор Verilog для кодера и декодера Галуа] - только отдельные кодер и декодер. | ||
| + | # [https://vscripts.ru/dima/systolic_matrix_mult.php Генератор Verilog для умножения матриц (систолический массив)] | ||
== SAD процессоры (поиск различия между двумя картинками) == | == SAD процессоры (поиск различия между двумя картинками) == | ||
| Строка 63: | Строка 67: | ||
# [http://vscripts.ru/2012/sad-modular-basis-calculator.php Генератор базисов для SAD процессоров разной размерности] - базисы специального вида и обычного. | # [http://vscripts.ru/2012/sad-modular-basis-calculator.php Генератор базисов для SAD процессоров разной размерности] - базисы специального вида и обычного. | ||
# [http://vscripts.ru/2013/draw_complex_mod.php Рисовалка области значений комплексного вычета] - вычет комплексного числа по комлексному переменному | # [http://vscripts.ru/2013/draw_complex_mod.php Рисовалка области значений комплексного вычета] - вычет комплексного числа по комлексному переменному | ||
| − | # [http://vscripts.ru/ | + | # [http://vscripts.ru/2015/check_basis.php Проверка базиса и расчет его динамического диапазона] |
# [http://vscripts.ru/2013/find-inverse-by-mod.php Нахождение обратного элемента по модулю] | # [http://vscripts.ru/2013/find-inverse-by-mod.php Нахождение обратного элемента по модулю] | ||
# [http://vscripts.ru/2013/radix_converter.php Преобразование позиционной системы счисления для заданного числа] | # [http://vscripts.ru/2013/radix_converter.php Преобразование позиционной системы счисления для заданного числа] | ||
| Строка 101: | Строка 105: | ||
* [[(Prog) Расчет FIR-фильтра через ДПФ метод Overlap-Save|Расчет FIR-фильтра через ДПФ метод Overlap-Save]] | * [[(Prog) Расчет FIR-фильтра через ДПФ метод Overlap-Save|Расчет FIR-фильтра через ДПФ метод Overlap-Save]] | ||
* [[(Prog) Расчет FIR-фильтра через ДПФ над конечным полем|Расчет FIR-фильтра через ДПФ над конечным полем]] | * [[(Prog) Расчет FIR-фильтра через ДПФ над конечным полем|Расчет FIR-фильтра через ДПФ над конечным полем]] | ||
| + | * [[Программа для проверки представимости булевой функции линейным арифметическим полиномом (PHP)]] | ||
=== Разное === | === Разное === | ||
| Строка 116: | Строка 121: | ||
== Результаты исследований == | == Результаты исследований == | ||
| + | # 2015.11 - [[Простой прототип модулярного процессора с коррекцией сбоев]] | ||
# 2014.07 - [[Исследование надежностных характеристик различных методов резервирования комбинационных схем с помощью метода инжектирования ошибок]] | # 2014.07 - [[Исследование надежностных характеристик различных методов резервирования комбинационных схем с помощью метода инжектирования ошибок]] | ||
# 2013.11 - [[Результаты синтеза прямых преобразователей для простых модулей в пределах 8 бит]] | # 2013.11 - [[Результаты синтеза прямых преобразователей для простых модулей в пределах 8 бит]] | ||