|
ПЛИС для вычислений с длинной арифметикой |
|
|
|
Nov 27 2017, 15:18
|
Группа: Участник
Сообщений: 9
Регистрация: 27-11-17
Пользователь №: 100 387

|
Помогите пожалуйста с выбором. Нужно делать вычисления с длинной арифметикой - до 8 тысяч бит. Т.е нужно простое АЛУ, но числа очень длинные. Вычисления относительно простые - сложение, вычитание (сложение с отрицательным в обратном коде), сдвиг на бит и пара таких же длинных счетчиков. Никаких умножений или делений. Т.е задаем начальные значения и и девайс должен складывать (вычитать) числа в зависимости от знакового бита, пока не дойдет до конечного или не найдет совпадения с заданным длинным числом. На компьютере такие вычисления крайне медленные. На GPU тоже, так как в любом случае сложение вычисляется группами по 64 бита. Поэтому подумал, что идеальный вариант - собственное АЛУ, которое делает одну операцию со всеми битами за такт. Насколько я понимаю, самый правильный вариант - ПЛИС. Желательно делать перебор с максимальной скоростью - к примеру если есть возможность 1 или 2 Ггц, то именно это и нужно. Почитал про ПЛИС и есть желание разобраться, но не понятно с какого девайса начинать искать. Не хотелось бы покупать плату, которая в итоге не подойдет для этой задачи. Мне не нужны разные интерфейсы, USB и может быть микроконтроллер на плате пригодится, но остальное по большому счету не очень важно. Посоветуйте пожалуйста с чего начинать и какую плату для разработки выбрать. Самый главный критерий - максимальная производительность и возможность "зашить" свою логическую схему.
|
|
|
|
|
 |
Ответов
|
Nov 27 2017, 17:56
|
Группа: Участник
Сообщений: 9
Регистрация: 27-11-17
Пользователь №: 100 387

|
Спасибо всем за ответы. Согласен, что сумматор - самая тормозная часть и разбивать 8000 бит на части в любом случае придется. Думаю, что можно оптимизировать маленькие блоки по несколько бит таблицей истинности или что-то типа этого. Я пробовал реализовать этот алгоритм на CPU. Маленькие числа по 64 бит считаются к примеру чуть меньше секунды. Но то же самое число в виде длинного (т.е реально число маленькое, но операции выполняем над всеми битами блоками по 64 бит) считается примерно в 1000 раз медленнее. Пробовал сугубо для проверки арифметики с битами. Сначала хотел попробовать на GPU, у меня 1080Ti, но потом подумал, что в любом случае это операции над блоками. Ну и процессор есть процессор - обработка команд, работа с памятью. Поэтому подумал, что ПЛИС возможно будет в данном случае намного быстрее. Например сдвиг вправо на бит и установка нулевого бита в 1 (умножение на 2 и +1) это вообще можно сделать за один реальный такт. Т.е один регистр содержит все биты числа, а второй регистр будет сразу содержать это число * 2 + 1. Проблема скорости только в сумматоре. Поглядывал вот на этот девайс www.amazon.com/dp/B00N3LHRYU?m=A2D3CNDMUB3UW1&ref_=v_sp_detail_page www2.hdl.co.jp/en/plink/xcm-111.html но не уверен, что подходит для этих целей.
|
|
|
|
Сообщений в этой теме
planetzeus ПЛИС для вычислений с длинной арифметикой Nov 27 2017, 15:18 x736C 8000 тыс за такт на частоте 1 гиг — забудьте.
Мож... Nov 27 2017, 15:54 planetzeus Цитата(x736C @ Nov 27 2017, 19:54) 8000 т... Nov 27 2017, 16:11 x736C Ошибся. Имелось в виду 8 тыс., а не 8000 тыс.
ПЛИ... Nov 27 2017, 16:37 RobFPGA Цитата(planetzeus @ Nov 27 2017, 18:18) .... Nov 27 2017, 16:51 _pv а вот это вот вычитание/сложение одного и того же ... Nov 27 2017, 17:41 _pv тогда уж
https://www.aliexpress.com/item/Xilinx-FP... Nov 27 2017, 18:04 ViKo Это что, майнеры криптовалюты ищут черный ход? Nov 27 2017, 20:00 _Ivan_33 А что мешает написать это все на opencl под видеок... Nov 28 2017, 08:29 planetzeus Цитата(_Ivan_33 @ Nov 28 2017, 12:29) А ч... Nov 28 2017, 10:37  AVR Цитата(planetzeus @ Nov 28 2017, 13:37) И... Nov 28 2017, 10:54   planetzeus Цитата(AVR @ Nov 28 2017, 14:54) Не, не т... Nov 28 2017, 11:07    blackfin Цитата(planetzeus @ Nov 28 2017, 14:07) М... Nov 28 2017, 11:21    AVR Цитата(planetzeus @ Nov 28 2017, 14:07) П... Nov 28 2017, 14:14     Fat Robot Использовать CLA.
Если есть ограничения на pipel... Nov 28 2017, 15:20  blackfin Цитата(planetzeus @ Nov 28 2017, 13:37) Я... Nov 28 2017, 11:00  Alex77 Цитата(planetzeus @ Nov 28 2017, 13:37) В... Nov 28 2017, 11:21   planetzeus Цитата(Alex77 @ Nov 28 2017, 15:21) ... Nov 28 2017, 11:38    blackfin Цитата(planetzeus @ Nov 28 2017, 14:38) М... Nov 28 2017, 11:44     jojo Цитата(blackfin @ Nov 28 2017, 14:44) Выб... Nov 28 2017, 12:23      blackfin Цитата(jojo @ Nov 28 2017, 15:23) Или Xil... Nov 28 2017, 12:28       jojo Цитата(blackfin @ Nov 28 2017, 15:28) Да ... Nov 28 2017, 12:45        x736C Цитата(jojo @ Nov 28 2017, 15:45) Кстати,... Nov 28 2017, 22:30         jojo Цитата(x736C @ Nov 29 2017, 01:30) Я бы е... Nov 29 2017, 05:33    Realking Цитата(planetzeus @ Nov 28 2017, 14:38) В... Nov 28 2017, 12:57    RobFPGA Приветствую.
Цитата(planetzeus @ Nov 28 2017,... Nov 28 2017, 13:55 AVR Не увидел, чтобы кто-то спросил автора темы: зачем... Nov 28 2017, 10:08 ViKo Инкрементировать 8000-разрядное число (т.е. + 1) н... Nov 28 2017, 10:57 _Ivan_33 И все-таки по поводу девайса, посмотрите на решени... Nov 28 2017, 12:55 krux planetzeus
Перенос в FPGA "только АЛУ", ... Nov 28 2017, 17:09 planetzeus Цитата(krux @ Nov 28 2017, 21:09) в FPGA ... Nov 28 2017, 18:01  krux Цитата(planetzeus @ Nov 28 2017, 21:01) П... Nov 28 2017, 18:25 iiv Цитата(planetzeus @ Nov 27 2017, 20:18) П... Nov 28 2017, 18:23 planetzeus Цитата(iiv @ Nov 28 2017, 22:23) То есть ... Nov 28 2017, 18:42  AVR Цитата(planetzeus @ Nov 28 2017, 21:42) С... Nov 28 2017, 19:23   planetzeus Цитата(AVR @ Nov 28 2017, 23:23) Только в... Nov 28 2017, 20:05    jojo Цитата(planetzeus @ Nov 28 2017, 23:05) И... Nov 28 2017, 20:45     blackfin Цитата(jojo @ Nov 28 2017, 23:45) На вдав... Nov 28 2017, 21:39     blackfin Цитата(jojo @ Nov 28 2017, 23:45) 25*2*80... Nov 29 2017, 05:05      jojo Цитата(blackfin @ Nov 29 2017, 08:05) Рез... Nov 29 2017, 05:39       blackfin Цитата(jojo @ Nov 29 2017, 08:39) Тем не ... Nov 29 2017, 05:43    Plain Цитата(planetzeus @ Nov 28 2017, 23:05) П... Nov 28 2017, 23:24 Shivers Я там выше уже писал про систему остаточных классо... Nov 29 2017, 05:15 blackfin Цитата(Shivers @ Nov 29 2017, 08:15) Все ... Nov 29 2017, 05:36 vladec И все таки, почему как предлагает Shivers не хотит... Nov 29 2017, 07:29 Александр С. Когда-то Mentor Graphics агитировал всем делать AS... Dec 13 2017, 16:23 jojo Цитата(Александр С. @ Dec 13 2017, 19:23)... Dec 13 2017, 16:42 iosifk Цитата(Александр С. @ Dec 13 2017, 19:23)... Dec 13 2017, 19:06
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|