This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
en:ztex_boards:ztex_fpga_boards:litcoin_mining_on_fpga [2015/05/20 17:17] – alte Version wieder hergestellt (2013/10/13 02:12) stefan | en:ztex_boards:ztex_fpga_boards:litcoin_mining_on_fpga [2017/01/21 14:25] (current) – removed stefan | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Litecoin Mining on FPGA's ====== | ||
- | Due to many requests for LTC mining software for ZTEX FPGA Boards I took a deeper look into the scrypt algorithm. The goal was to estimate development effort and achievable hash rates. Results are presented here. | ||
- | |||
- | **In order to prevent confusions and questions: ZTEX does not plan to develop Litecoin mining software.** | ||
- | |||
- | A description of the scrypt algorithm can be found at [[http:// | ||
- | [[https:// | ||
- | |||
- | * The PBKDF2-HMAC-SHA-256 function can be neglected here. The computations can be done parallelly to the other computations and a single 64 cycle per SHA256 transformation loop is sufficient for many scryptROMix loops | ||
- | * Due to decencies of intermediate results each scryptROMix loop requires about 140,000 computation steps | ||
- | * Each scryptROMix loop (or pipeline stage) requires one 128.125 KByte vector (which has to be stored in some kind of RAM) | ||
- | |||
- | ===== Approach 1: FPGA implementation using Block RAM ===== | ||
- | Easiest way to implement this are non-pipelined loops. Limiting factor is the amount of vectors n which fit into the block RAM. Total hash rate would be | ||
- | < | ||
- | f | ||
- | r = n * --------- | ||
- | 140,000/H | ||
- | </ | ||
- | |||
- | On XC6SLX150 n is 4 and estimated f is 300MHz. **Hash rate would be approximately 8.6 KH/s.** | ||
- | |||
- | ===== Approach 2: FPGA implementation using external RAM ===== | ||
- | |||
- | One implementation approach would be fully unrolling the scryptBlockMix function. This results in an 68 stage pipeline and approx. 8.7 MByte memory requirement. Pipeline clock is defined by the memory read / write delay. Altogether, hash rate is limited by memory bandwidth b: | ||
- | < | ||
- | b | ||
- | r = ---------- | ||
- | 262272 B/H | ||
- | </ | ||
- | |||
- | On [[http:// | ||
- | 6.1 kH/s. Due to latencies of DRAM **a hash rate of 5.0 Kh/s** is more realistic. | ||
- | |||
- | |||
- | **In order to prevent confusions and questions: ZTEX does not plan to develop Litecoin mining software.** |