快速入门数字芯片设计,UCSD ECE111(十)比特币加密(二)

简介: 快速入门数字芯片设计,UCSD ECE111(十)比特币加密(二)

结构框图如图所示,和SHA256非常类似。

然后说明了一下你的设计大概是怎么样的。

粗略估计了一下需要的时钟周期,上述是采用串行实现的。因此需要的时钟周期较长。

如果采用并行的话,可以大幅加快运算速度。因为对于不同的nonce而言,它们互相之间的运算是完全独立的。所以完全可以并行运算,这就是典型的用空间换时间。

至于它的写法也非常简单,只需要采用一个for循环语句,在运算阶段例化多次即可(这种方式有点类似于GPU,GPU能取得大幅成功的原因也主要在于它的并行计算能力)。

需要注意,上述方式会产生大量的逻辑资源,实际设计过程中是否需要采用这种方式需要谨慎考虑。通常来说,对于计算密集型、不太依赖于IO资源的任务,采用并行化可以有效提高吞吐量,减少运算时间(并不是提高时钟频率,这一点需要注意!)

同样还可以通过例化多个模块来实现。

剩余的课件是一些实验细节的东西,这里就不拿出来讲了。有两页PPT我觉得比较有意义,单独说明一下:

  • 对于一个任务而言,有很多种实现方式,所以没有绝对的“正确的方法”
  • 好的经验法则是使代码易于阅读
  • 如果有大量嵌套的if/else语句的话,代码会变得难以阅读,可以尝试简化代码,这会让你更好的实现你的设计(实际上对于大量嵌套的if/else语句而言,可以考虑用状态机的写法来实现。因为状态机的本质在于反馈,而if/else本质上是隐式的状态机(时序逻辑是隐式状态机,组合逻辑是MUX))。
  • 如果减少状态,需要增加大量的if/else语句,那这并不是一个好方法。因为这本质上也会产生很多状态(隐式状态机)
  • 这个Project理论上可以用300~400行代码实现

这里我再强调一下,状态机的本质在于有没有反馈!在数字电路中,关键在于你当前的Q端输出是否会对你下一轮的Q端输出产生影响!因此本质上一个计数器,0、1、2、3这种的也是一个状态机!你完全可以用状态机的写法去实现它,没有任何本质区别。

因此我建议一定要写成三段式,不要用state表示。用next_state和current_state表示寄存器的D端和Q端,可以让你充分的与实际的数字电路结合。这一点非常重要。

看到没,一个计数器也是一个状态机。cnt_q就是state,cnt_d就是next_state。通过一个加法器去计算next_state,然后吧next_state通过D触发器寄存给state。基于这个大家应该能理解if/else为什么大部分情况下是隐式状态机。因为有反馈啊!

还有你写的软件,C语言,汇编代码本质都是状态机,状态机思想博大精深,大家好好理解一下。

使用模块化设计的方式,在前期调试过程中可以让这个数字小一点,更便于你的调试。

目录
相关文章
|
11月前
|
存储 安全 区块链
快速入门数字芯片设计,UCSD ECE111(十)比特币加密(一)
快速入门数字芯片设计,UCSD ECE111(十)比特币加密
73 0
|
安全 数据安全/隐私保护
RSAC2018 | 芯片级别的加密计算技术应用开始崭露头角
2018年4月16日,以“Now Matters”为主题的RSAC2018在美国旧金山开启。作为全球最负盛名的信息安全行业大会,今年的RSA Conference带来了550场业界专家来分享的课程,也吸引了650多家参展商,官方统计将近5万人参会。
2328 0
|
1天前
|
存储 SQL 安全
网络安全与信息安全:漏洞、加密技术与安全意识
在当今数字化社会中,网络安全与信息安全问题日益严峻。本文探讨了网络安全漏洞的种类与应对措施,加密技术在信息安全中的重要性,以及提升安全意识的关键措施,旨在帮助读者更好地理解和应对网络安全挑战。
7 1
|
1天前
|
安全 网络安全 量子技术
网络安全的前沿防线:从漏洞发现到加密技术再到安全意识
在数字化时代,网络安全和信息安全成为维护个人隐私和企业资产的关键。本文将深入探讨网络安全的三大支柱:漏洞管理、加密技术和用户安全意识。通过分析最新的研究数据和案例,我们将揭示网络攻击的演变趋势,展示如何通过先进的加密算法保护数据,以及提升公众的安全意识来防范潜在威胁。文章旨在为读者提供一套综合性的网络安全防护策略,以应对日益复杂的网络环境。
11 0
|
1天前
|
安全 网络安全 数据安全/隐私保护
网络安全的守护者:漏洞、加密与安全意识的协同进化
在数字化时代的浪潮中,网络安全成为了保护个人隐私与企业资产的关键防线。本文深入探讨了网络安全中的三大支柱——网络漏洞的识别与防范、加密技术的应用与发展以及安全意识的培养与提升。通过分析最新的研究数据和案例,揭示了这些要素如何相互影响,共同构建起一道坚固的安全屏障。文章旨在为读者提供一套综合性的安全策略,以应对日益复杂的网络威胁。
|
1天前
|
安全 算法 网络安全
网络安全的盾牌:漏洞防护与加密技术的双重保障
在数字时代,网络安全的重要性日益凸显。本文深入探讨了网络安全的两个关键方面:漏洞防护和加密技术。通过数据导向的分析,我们揭示了当前网络环境中存在的安全风险,并强调了加强安全意识的必要性。文章结合科学严谨的研究,阐述了如何利用先进的加密技术来保护数据安全,同时指出了逻辑严密的安全策略对于构建坚固防线的重要性。本文旨在为读者提供关于网络安全的全面知识分享,以促进更加安全的网络环境。