Вернуться   Биткоин Форум > - Помощь начинающим
23 июня 2011, 8:14:37 PM   # 1
 
 
Сообщения: 247
Цитировать по имени
цитировать ответ
по умолчанию Re: Новая масштабируемая конвейерная ядро ​​FPGA для SHA-256 - любой интерес?

Взлом Биткоин адресов.
500 Биткоинов взломаны в "мозговом кошельке" с паролем "bitcoin is awesome"
Адрес кошелька: 14NWDXkQwcGN1Pd9fboL8npVynD5SfyJAE
Приватный ключ: 5J64pq77XjeacCezwmAr2V1s7snvvJkuAz8sENxw7xCkikceV6e
подробнее...


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru
Привет, я разрабатывала новый оптимизированный SHA-256 ядра в VHDL. Философия дизайна этой версии вращается вокруг этих точек:

  • Реорганизовать и агрессивно Трубопроводный круглый процессор таким образом, чтобы достичь тактовой частоты (и эффективности аппаратного обеспечения) близко к максимально возможному на данном FPGA. (Задержка критического пути этой конкретной конструкции, на мой взгляд, не более чем один 32-битный добавить задержку, а также зарегистрировать время установки.)

  • Для получения улучшенной масштабируемости, чтобы максимально использовать FPGAs любого размера, не раскатать круглый контур, но вместо того, чтобы построить небольшие итеративные, однообходной процессор, множество копий которых может работать параллельно. Каждый из этих ядер может одновременно хэш столько кандидатов блоков, как это имеет этапы трубопровода (4 в этой конструкции). Правильно спроектированная блок работы диспетчеризации (по-прежнему быть написано) может гарантировать, что все ядра всегда оставаться полностью использовать кандидат блока хэширования.

В качестве примера выполнения этого подхода, вот несколько примеров статистики, полученной для текущего проекта, на основе его компиляции для Стратикса III FPGA (EP3SL150F1152C2N, как найти в плате Altera / Terasic DE3).

  • Площадь 1 сердечник, в том числе испытательной установки: 2,113 клеток (плюс немного памяти)
  • Максимальная частота: 385 - 421 МГц (в зависимости от температуры)
  • Тактовых циклов на SHA-256 (1 порция): 64 (в среднем, если трубопровод хранится полностью)
  • тактовых циклов в двойном SHA-256: 128 (то же самое)
  • Биткойн Mhash / с на ядро: 3.0 - 3.3 (Темп-зависимый)
  • Сердечники на FPGA: По крайней мере 50
  • Биткойн Mhash / с на FPGA: 150 - 165 Mhash / с (в зависимости от температуры)

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

С Уважением,
-Майк
mpfrank сейчас офлайн Пожаловаться на mpfrank   Ответить с цитированием Мультицитирование сообщения от mpfrank Быстрый ответ на сообщение mpfrank


Как заработать Биткоины?
Без вложений. Не майнинг.


23 июня 2011, 9:11:57 PM   # 2
 
 
Сообщений: 60
Цитировать по имени
цитировать ответ
по умолчанию Re: Новая масштабируемая конвейерная ядро ​​FPGA для SHA-256 - любой интерес?

Получил 1806 Биткоинов
Реальная история.





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


150+ Mhash / s может быть хорошо, если вы можете достичь что-то похожее на менее дорогое устройство. Анализы, которые я видел до сих пор (только краткое чтения) подразумевали FPGAs они проверили может дать отличную скорость хеширования в расчете на ватт, но не за один доллар погрузились в аппаратных средств.

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

После того, как затраты на электроэнергию становятся главной заботой позже, ПВМ / СИС может особенно блещут. Это облегчение для меня, потому что я разочарован в чрезвычайно количестве намеренно бесполезен * & расточительно * вычислительная обработка, что этот проект побуждает людей осуществлять по всему миру, а также возможное влияние на окружающую среду, так как большинство наших мощных компьютеров, в конечном счете ... угле.


* В то же время, финансовые операции сделали Bitcoin пути может быть один из самых полезных & ценные услуги эти люди могли когда-либо помочь облегчить. Это просто беспокойство, что более полезный вычислительный проект не был принят в качестве доказательства правильности работы (хотя я прочитал предложение о только что в этих форумах. (Это было, вероятно обсуждение предлагает новый проект монеты "Bitcoin Plus" ака "BCP" который будет принимать односторонние преобразования из исходной BTC. Никакого отношения не bitcoinplus.com, кстати.)
Чеканка сейчас офлайн Пожаловаться на чеканки   Ответить с цитированием Мультицитирование сообщения от чеканки Быстрый ответ на сообщение чеканка

25 июня 2011, 6:14:18 PM   # 3
 
 
Сообщения: 409
Цитировать по имени
цитировать ответ
по умолчанию Re: Новая масштабируемая конвейерная ядро ​​FPGA для SHA-256 - любой интерес?

Привет Mike

Ваша идея уверена звучит интересно.

Лично я начал нить для развития участвующих шахтеров платформы пользовательского FPGA http://forum.bitcoin.org/index.php?topic=22426.0  так что вы можете иметь вид.

Ваша концепция поможет уменьшить минимальный размер, необходимый fьr чип FPGA.

Некоторые вопросы к вашим данным:

- Как я понимаю вы используете доску Altera, эти 2.113 клетки компании LE?

- Можете ли вы пытаться имитировать программку на Cylone III с 39600 клеток  http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&Имя = 544-2501-ND

- Ваша конструкция была испытана на реальной доске или там просто было сделано расчеты до сих пор?



С уважением


Jens 
O_Shovah сейчас офлайн Пожаловаться на O_Shovah   Ответить с цитированием Мультицитирование сообщения от O_Shovah Быстрый ответ на сообщение O_Shovah

25 июня 2011, 7:32:02 PM   # 4
 
 
Сообщений: 70
Цитировать по имени
цитировать ответ
по умолчанию Re: Новая масштабируемая конвейерная ядро ​​FPGA для SHA-256 - любой интерес?

Здравствуй,

короткий вопрос о разворачивая vs. не разворачивая петлю: предполагая полностью развернутую петлю с 128 ступенями, круглая переменная K (кубические корнями различных простых чисел) жестко закодирован на каждый триггер. Нет MUX не требуется. Если один закатывает трубопровод, делает это не добавляет длинные мультиплексоров?

Это, вероятно, может быть удалено путем использования BlockRAM. Я предполагаю, что вы использовали это. Является ли компилятор достаточно умен, чтобы сделать это для себя, или вы должны кода, что?

Я бы очень хотел увидеть код, чтобы сравнить хэши за площадь на время полностью развернутом версии на одном чипе.
Olaf.Mandel сейчас офлайн Пожаловаться на Olaf.Mandel   Ответить с цитированием Мультицитирование сообщения от Olaf.Mandel Быстрый ответ на сообщение Olaf.Mandel

25 июня 2011, 8:59:19 PM   # 5
 
 
Сообщения: 247
Цитировать по имени
цитировать ответ
по умолчанию Re: Новая масштабируемая конвейерная ядро ​​FPGA для SHA-256 - любой интерес?

Привет Mike

Ваша идея уверена звучит интересно.

Лично я начал нить для развития участвующих шахтеров платформы пользовательского FPGA http://forum.bitcoin.org/index.php?topic=22426.0  так что вы можете иметь вид.

Ваша концепция поможет уменьшить минимальный размер, необходимый fьr чип FPGA.

Некоторые вопросы к вашим данным:

- Как я понимаю вы используете доску Altera, эти 2.113 клетки компании LE?

- Можете ли вы пытаться имитировать программку на Cylone III с 39600 клеток  http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&Имя = 544-2501-ND

- Ваша конструкция была испытана на реальной доске или там просто было сделано расчеты до сих пор?



С уважением


Jens 

Ях, клетками я имел в виду LES. На Stratix, это я думаю, что в основном 5-ввода ТМП (справочные таблицы).

На вашем EP3C40F780C8, я получаю примерно такое же количество клеток (2051) и 3,692 битой памяти. С некоторыми подрезки вы могли поместиться около 20 из них. Это медленный чип (8 нс скорость класса), так что Fmax вниз до 127-142 МГц. Это дает суммарную скорость хеширования около 20-22 Mhash / с на этом $ 111 чипе.

Я еще не проверял, но в моем опыте эти виды расчетов скорости довольно точно (немного консервативны на самом деле).
mpfrank сейчас офлайн Пожаловаться на mpfrank   Ответить с цитированием Мультицитирование сообщения от mpfrank Быстрый ответ на сообщение mpfrank

25 июня 2011, 9:09:08 PM   # 6
 
 
Сообщения: 247
Цитировать по имени
цитировать ответ
по умолчанию Re: Новая масштабируемая конвейерная ядро ​​FPGA для SHA-256 - любой интерес?

Здравствуй,

короткий вопрос о разворачивая vs. не разворачивая петлю: предполагая полностью развернутую петлю с 128 ступенями, круглая переменная K (кубические корнями различных простых чисел) жестко закодирован на каждый триггер. Нет MUX не требуется. Если один закатывает трубопровод, делает это не добавляет длинные мультиплексоров?

Это, вероятно, может быть удалено путем использования BlockRAM. Я предполагаю, что вы использовали это. Является ли компилятор достаточно умен, чтобы сделать это для себя, или вы должны кода, что?

Я бы очень хотел увидеть код, чтобы сравнить хэши за площадь на время полностью развернутом версии на одном чипе.


"длинный" (64-входного сигнала х 32-бит) мультиплексоров для констант K должны составлять, по-моему, в только пару 5-входных ТМП в выходной бит (то есть, 64 ТМП, параллельно) плюс еще 32 ТМП использовать 6-й выбор немного. Эта <100 клеток не добавляет много общего размера конструкции, а не замедлить его на всех либо, так как поиск Мультиплексор может быть сделано параллельно с (и должен быть быстрее, чем) добавляет, что происходит в каждом трубопроводе сцена.

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

Я был бы рад, чтобы опубликовать свой код на Github, но я чувствую, что я действительно должен проверить & отлаживать его первым ... Если вы не хотите, чтобы помочь с этим. 
mpfrank сейчас офлайн Пожаловаться на mpfrank   Ответить с цитированием Мультицитирование сообщения от mpfrank Быстрый ответ на сообщение mpfrank

25 июня 2011, 9:23:57 PM   # 7
 
 
Сообщения: 1268
Цитировать по имени
цитировать ответ
по умолчанию Re: Новая масштабируемая конвейерная ядро ​​FPGA для SHA-256 - любой интерес?

Здравствуйте, конечно, такое ядро ​​будет очень интересным, и я с удовольствием поможет вам испытывать.

Для платы с 2-х последовательными линиями (ep2C35) я сделал testcompile конструкцию с 2 ядрами @ LOOP = 4 вместо одного с LOOP = 3 и получил 10% больше производительности по часовой стрелке. Мой (дикий предположение), что то будет не из-за более низкой потребности маршрутизации, но я не проверял это. Может быть, можно запустить сердечник один за один или даже каждый другой цикл так что в конце концов, мы должны были бы только 1 блок проверки для золотого билета.
lame.duck сейчас офлайн Пожаловаться на lame.duck   Ответить с цитированием Мультицитирование сообщения от lame.duck Быстрый ответ на сообщение lame.duck

25 июня 2011, 9:26:52 PM   # 8
 
 
Сообщений: 70
Цитировать по имени
цитировать ответ
по умолчанию Re: Новая масштабируемая конвейерная ядро ​​FPGA для SHA-256 - любой интерес?

...
Я был бы рад, чтобы опубликовать свой код на Github, но я чувствую, что я действительно должен проверить & отлаживать его первым ... Если вы не хотите, чтобы помочь с этим. 

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

В настоящее время я сосредоточившись на оборудовании, и когда у меня есть, я надеюсь, что разные ветви кода слили: может быть, есть только некоторые дженерики быть сконфигурированы для шахтера, например, num_cores, глубина, do_addition_pipeline, ...

Вот почему мне интересно о вашем коде: сколько накладных расходов делает петлю добавить в код? Если я вас правильно понял, не так много (хотя я не понимаю, как 64x MUX может быть "дешево").
Olaf.Mandel сейчас офлайн Пожаловаться на Olaf.Mandel   Ответить с цитированием Мультицитирование сообщения от Olaf.Mandel Быстрый ответ на сообщение Olaf.Mandel

25 июня 2011, 9:50:53 PM   # 9
 
 
Сообщения: 247
Цитировать по имени
цитировать ответ
по умолчанию Re: Новая масштабируемая конвейерная ядро ​​FPGA для SHA-256 - любой интерес?

...
Я был бы рад, чтобы опубликовать свой код на Github, но я чувствую, что я действительно должен проверить & отлаживать его первым ... Если вы не хотите, чтобы помочь с этим. 

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

В настоящее время я сосредоточившись на оборудовании, и когда у меня есть, я надеюсь, что разные ветви кода слили: может быть, есть только некоторые дженерики быть сконфигурированы для шахтера, например, num_cores, глубина, do_addition_pipeline, ...

Вот почему мне интересно о вашем коде: сколько накладных расходов делает петлю добавить в код? Если я вас правильно понял, не так много (хотя я не понимаю, как 64x MUX может быть "дешево").

64x MUX, просто необходим три 5-бит (32-вход) ТМПА для каждого бита ширина - два, которые используют биты 4-0 из выбора входных данных, а тот, который использует бит 5, а выходы из первых два ТМПА. Я предполагаю, что это скомпилированы таким образом, иначе как память - но я на самом деле не де-затемненный синтезированный достаточно цепи, пока сказать.
mpfrank сейчас офлайн Пожаловаться на mpfrank   Ответить с цитированием Мультицитирование сообщения от mpfrank Быстрый ответ на сообщение mpfrank

25 июня 2011, 10:07:22 PM   # 10
 
 
Сообщений: 70
Цитировать по имени
цитировать ответ
по умолчанию Re: Новая масштабируемая конвейерная ядро ​​FPGA для SHA-256 - любой интерес?

[...]
64x MUX, просто необходимо три 5-бит (32-входа) ТМП для каждого бита ширины [...]

Я не понял, что "5 ввода" имел ввиду "5-битный селектор = 32 ввода" LUT. Это действительно широко. Благодарю.
Olaf.Mandel сейчас офлайн Пожаловаться на Olaf.Mandel   Ответить с цитированием Мультицитирование сообщения от Olaf.Mandel Быстрый ответ на сообщение Olaf.Mandel

25 июня 2011, 10:30:59 PM   # 11
 
 
Сообщения: 247
Цитировать по имени
цитировать ответ
по умолчанию Re: Новая масштабируемая конвейерная ядро ​​FPGA для SHA-256 - любой интерес?

Здравствуйте, конечно, такое ядро ​​будет очень интересным, и я с удовольствием поможет вам испытывать.

Для платы с 2-х последовательными линиями (ep2C35) я сделал testcompile конструкцию с 2 ядрами @ LOOP = 4 вместо одного с LOOP = 3 и получил 10% больше производительности по часовой стрелке. Мой (дикий предположение), что то будет не из-за более низкой потребности маршрутизации, но я не проверял это. Может быть, можно запустить сердечник один за один или даже каждый другой цикл так что в конце концов, мы должны были бы только 1 блок проверки для золотого билета.

Да, немного разворачивания может помочь, и это, безусловно, имеет смысл расслоения это в 1 модуль верхнего уровня, который заботится о переборе и одноразовых номера посылает золотой билет к клиенту, когда нашел ... Родовая карта может указать правильный номер копий внутреннего ядра, чтобы в полной мере использовать ресурсы ПЛИС.

Я буду загружать файлы проекта на Github в течение ближайших нескольких дней ...
mpfrank сейчас офлайн Пожаловаться на mpfrank   Ответить с цитированием Мультицитирование сообщения от mpfrank Быстрый ответ на сообщение mpfrank

20 июля 2011, 2:49:20 AM   # 12
 
 
Сообщений: 44
Цитировать по имени
цитировать ответ
по умолчанию Re: Новая масштабируемая конвейерная ядро ​​FPGA для SHA-256 - любой интерес?

когда я в последний раз смотрел / сост с открытым исходным кодом FPGA шахтером из этого другого потока, я видел самый длинный путь задержки / критический путь участвует 2 32-разрядных сумматоров - Я считаю, что эта линию: "w_out (511 Downto 480) <= S1 + w_in (319 Downto 288) + s0 + w_in (31 Downto 0);"

не знаю, как вы реализовали преобразование ваш SHA-256, и у меня не было времени, чтобы оптимизировать его самостоятельно, но более быстрые тактовые, вероятно, может быть удар, разбив тем, 3 добавляет в 2 этапа. Я компиляции на Xilinx FPGA, и очень низкий конец один в то Spartan 3E-1600, а чипы Xilinx кажется больше маршрутизации неприятности, и, таким образом, больше проблем часов (или скорее того, чтобы использоваться уменьшенные тактовые частоты). Но, возможно, что-то думать о том, когда пытаются втиснуть столько ядер, работающих как можно быстрее в ваш дизайн. Кроме того, если критический путь, что 32-разрядный Уж занимает слишком много времени, что также может быть разбиты на несколько циклы, или, может быть другая реализации сумматора с переносом смотреть вперед.
Magik сейчас офлайн Пожаловаться на Magik   Ответить с цитированием Мультицитирование Сообщения от Magik Быстрый ответ на сообщение Magik



Как заработать Биткоины?

Bitcoin Wallet * Portefeuille Bitcoin * Monedero Bitcoin * Carteira Bitcoin * Portafoglio Bitcoin * Bitcoin Cüzdan * 比特币钱包

bitcoin-zarabotat.ru
Почта для связи: bitcoin-zarabotat.ru@yandex.ru

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW