掌桥专利:专业的专利平台
掌桥专利
首页

一种数据传输更新模块和数据传输更新方法

文献发布时间:2024-04-18 19:52:40


一种数据传输更新模块和数据传输更新方法

技术领域

本发明涉及数据输出更新领域,更具体地,涉及一种数据传输更新模块及数据传输更新方法。

背景技术

随着集成电路产业的发展,芯片集成的规模日益增大,目前人们主要将目标集中在同步数字集成电路上,同步数字系统中,所有的状态翻转发生在同步时钟的跳变沿,系统的状态保存在寄存器中。同步电路具有完善的设计流程和成熟的EDA工具,占据数字大规模集成电路的主导地位,但是由于其时钟偏移、不同工艺角偏差较大、全局时钟功耗大的问题,使得人们又将目光放在了异步电路上。异步电路由于没有全局时钟,电路功耗低;同时由于是事件驱动电路,从本质上避免了时钟偏移问题;因为流水级可以不均匀,在不同工艺角上较同步电路也有较大的裕度,使得电路更加稳定,运行速度也更快。

现有的异步握手单元一般是基于双轨电路或者muller C单元以及触发器构成,占用面积较大、吞吐率也较低。

发明内容

本发明针对现有技术中存在的电路占用面积大、吞吐率低的技术问题,提供一种数据传输更新模块及数据传输更新方法。

根据本发明的第一方面,提供了一种数据传输更新模块,包括传输单元、比较单元和握手单元;

所述比较单元,用于将所述传输单元的输入数据和输出数据进行比较,当所述输入数据和所述输出数据不一致时,输出高电平,将所述高电平输入所述握手单元;

所述握手单元,用于根据所述比较单元输入的高电平,经过延时处理后,输出高电平的时钟信号fire,所述高电平的时钟信号fire驱动所述传输单元开启,使与输出信号不同的输入信号通过,以对传输的数据进行更新。

在上述技术方案的基础上,本发明还可以作出如下改进。

可选的,所述传输单元为D触发器,所述比较单元为异或门,所述D触发器的D端与Q端分别连接所述异或门的两个输入端,其中,所述D触发器的D端为数据输入端,Q端为数据输出端。

可选的,所述握手单元包括锁存器,所述异或门的输出端通过第一延时器连接与门的第一输入端,in_ack信号经过非门连接与门的第二输入端,与门的输出端连接锁存器的EN端,所述锁存器的D端连接1’b1,1’b1为高电平,所述锁存器的Q输出端通过第二延时器连接所述锁存器的RST端,所述锁存器的Q输出端还连接所述D触发器的时钟控制端和out_ack端,其中,输出的out_ack信号用于控制上一级传输单元的工作,确保数据的正确传输,其中第一延时器和第二延时器需要根据每一级组合逻辑单元进行延时匹配。

根据本发明的第二方面,提供一种数据传输更新方法,包括:

初始化D触发器的时钟控制端的时钟信号Clk为低电平;

通过异或门检测D触发器的D端与Q端的数据是否一致,如果不一致,异或门输出信号in_req为高电平;

信号in_req通过第一延时器进入与门的一个输入端,in_ack低电平信号经过非门进入与门的另一个输入端,与门输出高电平,使得锁存器的EN端为高电平,锁存器的Q端输出时钟信号fire,控制D触发器的时钟控制端开启D触发器,使得D触发器的D端的输入数据通过,完成数据传输的更新。

根据本发明的第三方面,提供了一种数据传输更新模块,包括多级组合逻辑单元、多级D触发器、多级比较单元和多级握手单元,上一级D触发器的Q端输出的数据连接本级组合逻辑单元的输入端,本级组合逻辑单元的输出端连接本级D触发器的D端,本级D触发器的Q端连接下一级组合逻辑单元的输入端,本级D触发器的D端和Q端分别连接本级异或门的两个输入端,本级异或门的输出端连接本级握手单元,本级握手单元输出时钟信号fire

根据本发明的第四方面,提供了一种数据传输更新方法,包括:

输入数据经过第一级组合逻辑单元接入第一级D触发器的D端,根据第一级D触发器的D端数据与Q端数据是否一致,第一级握手单元输出对应的时钟信号fire0;

第一级D触发器的Q端数据通过第二级组合逻辑单元接入第二级D触发器的D端,根据第二级D触发器的D端数据和Q端数据是否一致,第二级握手单元输出对应的时钟信号fire1;

只有当时钟信号fire1为低电平时,fire0才能置1,开启第一级D触发器,允许新的输入数据通过;

以此类推,直到新的输入数据通过最后一级D触发器的Q端输出。

本发明提供的一种数据传输更新模块及数据传输更新方法,通过比较传输单元的输入输出数据,当二者不同时产生时钟脉冲,使新数据通过,最大程度减少电路的翻转,能够解决同步电路时钟树功耗高的问题。

附图说明

图1为本发明一个实施例提供的一种数据传输更新模块的结构示意图;

图2为传输单元和比较单元的结构示意图;

图3为握手单元的结构示意图;

图4为本发明一个实施例提供的一种数据传输更新方法的流程图;

图5为本发明另一个实施例提供的一种数据传输更新模块的结构示意图;

图6为本发明另一个实施例提供的数据传输更新方法的流程图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。另外,本发明提供的各个实施例或单个实施例中的技术特征可以相互任意结合,以形成可行的技术方案,这种结合不受步骤先后次序和/或结构组成模式的约束,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时,应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。

图1为本发明提供的一种数据传输更新模块,包括传输单元、比较单元和握手单元。比较单元,用于传输单元的输入数据和输出数据进行比较,当输入数据和所述输出数据不一致时,输出高电平,将高电平输入握手单元;握手单元,用于根据比较单元输入的高电平,经过延时处理后,输出高电平的时钟信号fire,高电平的时钟信号fire驱动传输单元开启,使与输出数据不同的新的输入数据通过,以对传输的数据进行更新。

其中,参见图2,为图1中的传输单元和比较单元的电路结构,其中,传输单元为D触发器,比较单元为异或门,D触发器的D端与Q端分别连接异或门的两个输入端,异或门的输出端连接握手单元,其中,D触发器的D端为数据输入端,Q端为数据输出端。其中,异或门用于比较D触发器的D端的输入数据与Q端的输出数据进行比较,如果输入数据与输出数据一致,则异或门输出低电平;如果输入数据和输出数据不一致,则异或门输出高电平。

参见图3,为握手单元的电路结构,握手单元包括锁存器,所述异或门的输出端通过第一延时器连接与门的第一输入端,in_ack信号(初始为低电平)经过非门连接与门的第二输入端,与门的输出端连接锁存器的EN端,所述锁存器的D端连接1’b1,1’b1为高电平,所述锁存器的Q输出端通过第二延时器连接所述锁存器的RST端,所述锁存器的Q输出端还连接所述D触发器的时钟控制端和out_ack端,其中,输出的out_ack信号连接上一级握手单元的in_ack信号,用于控制上一级传输单元的工作,确保数据的正确传输,其中第一延时器和第二延时器需要根据每一级组合逻辑单元进行延时匹配。

参见图4,为图1-图3的数据传输更新模块对应的工作原理流程示意图,包括:

步骤1,初始化D触发器的时钟控制端的时钟信号Clk为低电平;

步骤2,通过异或门检测D触发器的D端与Q端的数据是否一致,如果不一致,异或门输出信号in_req为高电平;

步骤3,信号in_req通过第一延时器进入与门的一个输入端,in_ack低电平信号经过非门进入与门的另一个输入端,与门输出高电平,使得锁存器的EN端为高电平,锁存器的Q端输出时钟信号fire,控制D触发器的时钟控制端开启D触发器,使得D触发器的D端的新的输入数据通过,完成数据传输的更新。

步骤4,如果异或门检测D触发器的D端与Q端的数据一致,则说明输入数据没有更新,与之前的输出数据相同,那么异或门输出低电平,那么锁存器的EN端为低电平,输出的时钟信号fire为低电平,控制D触发器锁定,不进行工作。

参见图5,为本发明的另一个实施例的数据传输更新模块,包括多级组合逻辑单元、多级D触发器、多级比较单元和多级握手单元,上一级D触发器的Q端输出的数据连接本级组合逻辑单元的输入端,本级组合逻辑单元的输出端连接本级D触发器的D端,本级D触发器的Q端连接下一级组合逻辑单元的输入端,本级D触发器的D端和Q端分别连接本级与或门的两个输入端,本级异或门的输出端连接本级握手单元,本级握手单元输出时钟信号fire

可理解的是,图5中的数据传输更新模块由图1-图3中的多个数据传输更新模块级联组成,输入数据进入第一级模块,通过多个级联的模块后,又最后一级模块输出。

需要说明的是,如图5所示,比如在第一级D触发器检测到输入数据与输出数据不一致时,根据握手单元应该输出高电平的时钟信号fire0,使得新输入数据通过第一级D触发器达到第二级组合逻辑单元。但是此时需要考虑第二级D触发器是否也在工作中,当第二级握手单元输出的时钟信号fire1为1时,表明第二级D触发器也在工作中,那么如果第一级D触发器的数据也输入第二级D触发器,那么会出现混乱状态。因此,只有当第二级D触发器输出的时钟信号fire1为0时,第一级握手单元才会输出高电平的时钟信号fire0,开启第一级触发器,使新的输入数据通过第一级D触发器。

参见图6,为图5中的数据传输更新模块的工作原理流程示意图,包括:

步骤1’,输入数据经过第一级组合逻辑单元接入第一级D触发器的D端,根据第一级D触发器的D端数据与Q端数据是否一致,第一级握手单元输出对应的时钟信号fire0;

步骤2’,第一级D触发器的Q端数据通过第二级组合逻辑单元接入第二级D触发器的D端,根据第二级D触发器的D端数据和Q端数据是否一致,第二级握手单元输出对应的时钟信号fire1;

步骤3’,只有当时钟信号fire1为低电平时,fire0才能置1,开启第一级D触发器,允许新的输入数据通过;

步骤4’,以此类推,直到新的输入数据通过最后一级D触发器的Q端输出。

其中,本实施例以32位乘加单元为例,基于图二所示的异步握手电路,在vivado上完成了电路的仿真和布线包括以下步骤:

输入数据位宽为16位,输入为data_a,data_b,将每级运算公式列出如下,划分为三级流水。根据上述电路结构,采用基于数据改变的握手单元微流水线结构其中第一级组合逻辑为乘法,第二级组合逻辑为加法,第三级组合逻辑为乘法。

p0=data_a*data_b;

p1=p0[31:16]+p0[15:0];

p2=p0[31:8]*p0[7:0];

使用verilog代码对该电路进行硬件描述,在仿真时,电路中的延时单元DELAY1和DELAY2可以手动添加需要的延时,具体物理实现需要采用延时链来完成RTL设计。添加xdc文件对电路进行综合布线后,就可以看到后仿波形,判断功能是否正确。

本发明提供的一种数据传输更新模块和数据传输更新方法,具有以下优点:

1、本发明通过检测电路中数据变化来产生时钟脉冲,最大限度减少电路翻转,降低电路功耗。

2、本发明采用锁存器产生fire信号,相比于由触发器构成的握手单元更省面积。

3、本发明采用两相单轨数据传输,相比四相电路吞吐率更高。

需要说明的是,在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其它实施例的相关描述。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。

相关技术
  • 一种全服役温度区间内粘接试件冲击测试装置及测试方法
  • 一种用于激光冲击强化平板试样的快速装夹夹具
  • 一种可增大激光冲击修复区域的试件装卡装置
  • 一种可增大激光雷达射线区域增大覆盖的装置
技术分类

06120116334747