У меня была относительно простой дизайн идея некоторое время назад о том, как ускорить hashrate любого дизайна ASIC / FPGA парой величин за счет гораздо больше логики. Пока я не знаю, если это был гений или умственно отсталый, я был держать эту идею к себе в надежде, что когда-нибудь я бы узнать достаточно о дизайне чипа, чтобы сделать свой собственный FPGA, а потом, что я бы сделать пара друзей в промышленности, что позволит мне сделать небольшой пробег ASICS на выполнимо цене.
К сожалению, мои интересы движется в другом направлении, в последнее время, и ни одна из этих надежд у меня были не увенчались успехом. Таким образом, я мог бы также поделиться идеей с некоторыми из вас прекрасных людей. Просто пообещай мне, что если вы разработчик там, кто хочет реализовать его в вашем дизайне, вы Оставляем мне место на предзаказ и, возможно, дать мне скидку сотрудника. Конечно, я не могу заставить вас сделать что-нибудь, но было бы неплохо.
Во всяком случае, к идее: Основная проблема с проектирования быстрый Scrypt ASIC является тот факт, что Scrypt ресурсы памяти. Мы все знаем, что уже, верно? Ну, что вы, вероятно, не знаете, что проблема не так много, чтобы сделать с физическим объемом памяти, необходимым столько, сколько это делает с количеством индивидуальной памяти доступов необходимо. Зачем? Из-памяти, или, более конкретно, внешнего ОЗУ / кэш-памяти, является медленным. Действительно медленно. И, если вы проектируете один, вы обнаружите, что скорость вашего СИС вскоре становится скорость вашего Asics памяти, разделенной на число ядер вы реализованы, плюс или минус небольшой кусочек накладных расходов.
Итак, моя идея заключается в том, почему использование памяти вообще? Просто потому, что мы должны хранить кучу бит в различных точках в процессе хеширования, чтобы использовать позже, не означает, что мы должны прибегнуть к другому чипу полностью. Просто построить свою собственную память, в логике! Зачем использовать медленную, multipurposed, RAM, когда вы могли бы использовать быструю, специфичные для приложения, память вместо этого? В конце концов, "конкретное приложение" во имя вещи вы разрабатываете!
Все, что вам нужно, это немного умного дизайн и целый хуй триггеров (как в 2 NOR ворота в обратных св зи друг с другом, а не обуви). Там нет времени поиска, потому что вы знаете, где каждый бит находится, и теперь чтения и записи являются менее сложными, чем добавление 1 + 1. Латентность памяти теперь так же быстро, как и остальной части схемы.
Так что ... Хорошая идея или плохая идея? Потому что я предполагаю, что кто-то должен был думать об этом раньше меня.