CN116820399A - 一种串行的数据移位电路设计方法 - Google Patents
一种串行的数据移位电路设计方法 Download PDFInfo
- Publication number
- CN116820399A CN116820399A CN202310882043.6A CN202310882043A CN116820399A CN 116820399 A CN116820399 A CN 116820399A CN 202310882043 A CN202310882043 A CN 202310882043A CN 116820399 A CN116820399 A CN 116820399A
- Authority
- CN
- China
- Prior art keywords
- bits
- data
- xor
- cycle
- sas
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 17
- 238000013461 design Methods 0.000 title description 8
- 238000012545 processing Methods 0.000 claims abstract description 6
- 238000004364 calculation method Methods 0.000 abstract description 13
- 230000006870 function Effects 0.000 abstract description 6
- 230000008569 process Effects 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/57—Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
- G06F7/575—Basic arithmetic logic units, i.e. devices selectable to perform either addition, subtraction or one of several logical operations, using, at least partially, the same circuitry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及数据处理技术领域,尤其涉及一种串行的数据移位电路,包括用于接通或断开信号的CMOS开关、用于执行读取或者写入操作SA、同于信号比较的XOR门和用于暂存数据的移位寄存器,所述CMOS开关连接有SA,所述SA连接有XOR门,所述XOR门连接有移位寄存器,本发明在优化电路结构的基础上利用串行操作大幅降低SA个数,不仅有效降低了哈希函数XOR运算功耗,还提升了哈希算法在各类加密场景中的运算效率。解决了哈希算法在计算场景中产生功耗较高的难题,以电路结构匹配算法需求,从根本上规避高功耗对哈希算法计算效率的影响,提升了哈希算法的安全性和可靠性,可广泛用于智慧工业、智能安防等常用安全加密功能的人工智能场景。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种串行的数据移位电路设计方法。
背景技术
随着AI芯片电路的设计逐渐贴合低功耗、高计算能效的智能设备特性,硬件性能优化已成为顺应人工智能发展的必然趋势。在经济社会进行数字化转型的当下,数据的安全性需求推动了哈希算法在信息加密场景的应用。哈希算法即散列函数,是指将任意长度的二进制值串映射为固定长度的二进制值串,把消息或信息压缩成摘要,使数据量变小。该函数将数据打乱混合,重新创建一个散列值,散列值通常以一个随机字母或数字字符串代表,作为一种加密算法,可应用于安全加密、唯一标识、数据校验、散列函数、负载均衡、数据分片、分布式存储等场景,可满足加密存储、快速检索海量数据的需求。
近年来,随着人工智能技术在各个领域广泛应用,计算机硬件性能也随之迭代优化,现有的AI芯片不断追求高算力、低功耗和低成本的优越性,以满足人工智能领域各类算法的计算,哈希算法的实现过程具有运算数据量大、访问次数多的特点,易产生大量的功耗,随着数据运算量的增加,以及算法本身计算结构的复杂性,以传统的代码形式实现运算,其功耗难以降低,因此,哈希算法在实际应用中所产生的功耗问题始终未能解决,如何降低哈希算法操作带来的功耗,成为目前亟待优化的问题。
发明内容
本发明的目的是为了解决背景技术中存在的缺点,而提出的一种串行的数据移位电路设计方法。
为达到以上目的,本发明采用的技术方案为:一种串行的数据移位电路,包括用于接通或断开信号的CMOS开关、用于执行读取或者写入操作SA、同于信号比较的XOR门和用于暂存数据的移位寄存器,其特征在于:所述CMOS开关连接有SA,所述SA连接有XOR门,所述XOR门连接有移位寄存器。
优选的,移位寄存器由D触发器组成。
优选的,一种串行的数据移位电路的运算方法,包括以下运算步骤:
S1:先选择移位后数据上的对应的1个bit,统一输送至XOR单元上处理和读出,一个cycle输出1bit,共32个cycle;
S2:将第一个cycle的数据右移3位、7位和18位,并做XOR运算;将第二个cycle的数据右移4位、8位和19位,并做XOR运算,将第三个cycle的数据右移5位、9位和20位,并做XOR运算,以此类推;
S3:利用D触发器做成的移位寄存器,将时钟分成32个周期,第一个CLK cycle作为开关,数据右移3位、7位、18位后送到3个SA上;第二个CLK cycle作为开关的,将数据右移4位、8位、19位后送到3个SA上;第三个CLK cycle作为开关的,将数据右移5位、9位、20位后送到3个SA上以此类推,最后对3个SA做XOR操作。
与现有技术相比,本发明具有以下有益效果:
1、本发明多了32个DFF、96个CMOS开关,少了29个SA,62个XOR门,后面做串行加法操作,也会减少一部分DFF的个数,通过改变哈希算法中的数据移位计算方式,在优化电路结构的基础上利用串行操作大幅降低SA个数,不仅有效降低了哈希函数XOR运算功耗,还提升了哈希算法在各类加密场景中的运算效率,解决了哈希算法在计算场景中产生功耗较高的难题,以电路结构匹配算法需求,从根本上规避高功耗对哈希算法计算效率的影响,提升了哈希算法的安全性和可靠性,可广泛用于智慧工业、智能安防等常用安全加密功能的人工智能场景。
附图说明
图1为本发明一种串行的数据移位电路设计方法的移位示意图;
图2为本发明一种串行的数据移位电路设计方法的时序示意图;
图3为本发明一种串行的数据移位电路设计方法的运算示意图。
具体实施方式
以下描述用于揭露本发明以使本领域技术人员能够实现本发明。以下描述中的优选实施例只作为举例,本领域技术人员可以想到其他显而易见的变型。
如图1-图3所示的一种串行的数据移位电路,包括用于接通或断开信号的CMOS开关、用于执行读取或者写入操作SA、同于信号比较的XOR门和用于暂存数据的移位寄存器,CMOS开关连接有SA,SA是将位线和互补位线上的小电压差进行放大,进而执行读取或者写入操作,SA连接有XOR门,异或门是一种重要的数字逻辑门,可以实现异或逻辑,即当且仅当其中一个输入为高时,输出为高,如果两个输入均为低或高,则输出为低,XOR门连接有移位寄存器,移位寄存器能够以bit为单位存储数据,每当D触发器的时钟发生变化时(上升沿或下降沿,取决于触发器的规格),输出的数据与输入的数据相同,触发器的输出将保持在该值,直到下一个时钟周期,然后它将再次更改为输入处的值,综上,首先,选择移位后数据上的对应的1个bit,统一输送至XOR单元上处理和读出,一个cycle输出1bit,共32个cycle,接着将第一个cycle的数据右移3位、7位和18位,并做XOR运算;将第二个cycle的数据右移4位、8位和19位,并做XOR运算,将第三个cycle的数据右移5位、9位和20位,并做XOR运算,以此类推,最后,利用D触发器做成的移位寄存器,将时钟分成32个周期,第一个CLK cycle作为开关,数据右移3位、7位、18位后送到3个SA上;第二个CLK cycle作为开关的,将数据右移4位、8位、19位后送到3个SA上;第三个CLK cycle作为开关的,将数据右移5位、9位、20位后送到3个SA上以此类推。
移位寄存器由D触发器组成,D触发器是一个具有记忆功能的,具有两个稳定状态的信息存储器件,是构成多种的最基本逻辑单元,也是数字逻辑电路中一种重要的单元电路,触发器具有两个稳定状态,即0和1,在一定的外界信号作用下,可以从一个稳定状态翻转到另一个稳定状态。
一种串行的数据移位电路的运算方法,包括以下运算步骤:
S1:先选择移位后数据上的对应的1个bit,统一输送至XOR单元上处理和读出,一个cycle输出1bit,共32个cycle;
S2:将第一个cycle的数据右移3位、7位和18位,并做XOR运算;将第二个cycle的数据右移4位、8位和19位,并做XOR运算,将第三个cycle的数据右移5位、9位和20位,并做XOR运算,以此类推;
S3:利用D触发器做成的移位寄存器,将时钟分成32个周期,第一个CLK cycle作为开关,数据右移3位、7位、18位后送到3个SA上;第二个CLK cycle作为开关的,将数据右移4位、8位、19位后送到3个SA上;第三个CLK cycle作为开关的,将数据右移5位、9位、20位后送到3个SA上以此类推,最后对3个SA做XOR操作,此过程大约需要32个DFF、96个CMOS开关、3个SA,以及2个XOR门,而常规数据移位计算的并行操作,一个cycle完成所有32bit数据移位计算的计算过程需要32个SA,32个3组输入XOR单元,或64个2组输入XOR单元,两相比较,多了32个DFF、96个CMOS开关,少了29个SA,62个XOR门,后面做串行加法操作,也会减少一部分DFF的个数。
工作原理:首先,选择移位后数据上的对应的1个bit,统一输送至XOR单元上处理和读出,一个cycle输出1bit,共32个cycle,接着将第一个cycle的数据右移3位、7位和18位,并做XOR运算;将第二个cycle的数据右移4位、8位和19位,并做XOR运算,将第三个cycle的数据右移5位、9位和20位,并做XOR运算,以此类推,最后,利用D触发器做成的移位寄存器,将时钟分成32个周期,第一个CLK cycle作为开关,数据右移3位、7位、18位后送到3个SA上;第二个CLK cycle作为开关的,将数据右移4位、8位、19位后送到3个SA上;第三个CLKcycle作为开关的,将数据右移5位、9位、20位后送到3个SA上以此类推,通过创新哈希算法数据移位计算的方式,改变原有电路结构,改进数据移位计算原有的并行操作方式,大约需要32个DFF、96个CMOS开关、3个SA,以及2个XOR门,而常规数据移位计算的并行操作,一个cycle完成所有32bit数据移位计算的计算过程需要32个SA,32个3组输入XOR单元,或64个2组输入XOR单元,两相比较,多了32个DFF、96个CMOS开关,少了29个SA,62个XOR门,后面做串行加法操作,也会减少一部分DFF的个数,大大减少异或运算的功耗,减少灵敏放大器的个数,进而降低哈希函数运算功耗,提高整体运算效率,一定程度上可促进哈希算法的多样性发展,以低成本、高效能的优势实现哈希算法运算,可广泛应用于加密、解密、校验的人工智能计算场景。
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是本发明的原理,在不脱离本发明精神和范围的前提下本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明的范围内。本发明要求的保护范围由所附的权利要求书及其等同物界定。
Claims (3)
1.一种串行的数据移位电路,包括用于接通或断开信号的CMOS开关、用于执行读取或者写入操作SA、同于信号比较的XOR门和用于暂存数据的移位寄存器,其特征在于:所述CMOS开关连接有SA,所述SA连接有XOR门,所述XOR门连接有移位寄存器。
2.根据权利要求1所述的一种串行的数据移位电路,其特征在于:移位寄存器由D触发器组成。
3.根据权利要求1-2任一条所述的一种串行的数据移位电路的运算方法,其特征在于:包括以下运算步骤:
S1:先选择移位后数据上的对应的1个bit,统一输送至XOR单元上处理和读出,一个cycle输出1bit,共32个cycle;
S2:将第一个cycle的数据右移3位、7位和18位,并做XOR运算;将第二个cycle的数据右移4位、8位和19位,并做XOR运算,将第三个cycle的数据右移5位、9位和20位,并做XOR运算,以此类推;
S3:利用D触发器做成的移位寄存器,将时钟分成32个周期,第一个CLK cycle作为开关,数据右移3位、7位、18位后送到3个SA上;第二个CLK cycle作为开关的,将数据右移4位、8位、19位后送到3个SA上;第三个CLK cycle作为开关的,将数据右移5位、9位、20位后送到3个SA上以此类推,最后对3个SA做XOR操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310882043.6A CN116820399A (zh) | 2023-07-18 | 2023-07-18 | 一种串行的数据移位电路设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310882043.6A CN116820399A (zh) | 2023-07-18 | 2023-07-18 | 一种串行的数据移位电路设计方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116820399A true CN116820399A (zh) | 2023-09-29 |
Family
ID=88141267
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310882043.6A Pending CN116820399A (zh) | 2023-07-18 | 2023-07-18 | 一种串行的数据移位电路设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116820399A (zh) |
-
2023
- 2023-07-18 CN CN202310882043.6A patent/CN116820399A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101681249B (zh) | 先进先出缓冲器 | |
Shahbazi et al. | Area-efficient nano-AES implementation for Internet-of-Things devices | |
TWI784457B (zh) | 時鐘電路系統、計算晶片、算力板和資料處理設備 | |
CN214154471U (zh) | 动态d触发器、寄存器、芯片和执行比特币挖矿的装置 | |
Kim et al. | Bitwise competition logic for compact digital comparator | |
Natesan et al. | Shift invert coding (SINV) for low power VLSI | |
CN111488627B (zh) | 一种安全散列算法的消息拓展电路 | |
CN100407109C (zh) | 数据转换电路和半导体装置 | |
US20170310412A1 (en) | High speed serializer using quadrature clocks | |
CN114968179A (zh) | 一种基于时钟抖动和亚稳态的真随机数产生电路 | |
CN112949229A (zh) | 超导高速存储器 | |
CN115220694A (zh) | 随机数据生成电路及读写训练电路 | |
CN103595371A (zh) | 一种基于n型sabl逻辑的双边沿d触发器 | |
CN112350819B (zh) | 一种全流水线sms4加解密方法及系统 | |
CN114629469A (zh) | 动态d触发器、寄存器、芯片和执行比特币挖矿的装置 | |
CN116820399A (zh) | 一种串行的数据移位电路设计方法 | |
WO2023245727A1 (zh) | 随机数据生成电路及读写训练电路 | |
Alamgir et al. | Improved bus-shift coding for low-power I/O | |
Sharma et al. | Shift register design using two bit flip-flop | |
Sikarwar et al. | Low power implementation of advanced encryption standard using efficient shift registers in 45 nm technology | |
CN110532815A (zh) | 一种基于cnfet的三值sram-puf电路 | |
US20230420005A1 (en) | Random data generation circuit and read/write training circuit | |
Leung et al. | A low power asynchronous GF (2ˆ173) ALU for elliptic curve crypto-processor | |
CN113364599B (zh) | 一种双态物理不可克隆函数电路 | |
CN112751663B (zh) | 一种数据加密方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |