当前位置: 首页 > 专利查询>北京大学专利>正文

一种基于异步握手协议的跨时钟域通信传输方法及系统技术方案

技术编号:37623498 阅读:8 留言:0更新日期:2023-05-18 12:14
本发明专利技术涉及一种基于异步握手协议的跨时钟域通信传输方法及系统,对于64bit数据跨时钟域通信通过请求信号与确认信号对应状态变化标记待传输数据的高32bit部分与低32bit部分传输,在通信系统与芯片传输信息的过程中,基于两相单轨异步握手协议完成通信,采用通信协议的改进解决了信息跨时钟域传输不够稳定的问题,在利用异步握手协议代替原有基于异步FIFO的跨时钟域传输方法之后,使整个系统传输信息更为稳定。信息更为稳定。信息更为稳定。

【技术实现步骤摘要】
一种基于异步握手协议的跨时钟域通信传输方法及系统


[0001]本专利技术涉及类脑计算芯片及芯片数据通信
,尤其涉及一种基于异步握手协议的跨时钟域通信传输方法及系统。

技术介绍

[0002]超大规模类脑计算芯片基于类脑计算架构,能够模拟生物的神经元和突触结构,可有效实现脉冲型神经网络SNN(Spiking Neuron Networks)模型,支持相关智能应用。由于类脑计算芯片为特殊计算目的采用特殊的软硬件设计,例如PAICORE2.0芯片的东、西、南、北侧各配置了8组双向数据通道,可以指定每组通道方向并传输64bit数据,其通信系统涉及软硬件协同,设计复杂度较大。
[0003]目前针对类脑芯片的通信系统设计中,由于类脑芯片到通信系统的跨时钟域数据传输问题,导致芯片输入及输出数据信号不够稳定,数据有概率出现亚稳态。在传统的通信系统传输信号的过程中,即便使用了某些方法克服跨时钟域传输、采样信号的问题,也仍有概率出现亚稳态。
[0004]例如对于PAICORE2.0芯片,处于FPGA时钟域和PAICORE2.0时钟域下,进行跨时钟域传输时,需要采用异步FIFO的传统跨时钟域传输方法可以将多bit数据(例如64bit帧数据)进程传输。但在FPGA时钟域与PAICORE2.0时钟域的交界处,同步握手协议Valid

Ready进行跨时钟域传输数据时,仍有一定概率导致信号传输亚稳态,最终导致数据传输错误。
[0005]纵使现有技术中,可以采用两级触发器的同步机制降低亚稳态,但仍不能完全避免通信过程中出现亚稳态问题。通过两级触发器的跨时钟域传输下,第二级寄存器稳定输出概率约为90%,对于特定应用领域仍不能完全满足需要。当面对通信系统设计内容繁多,涉及软硬件协同设计的应用场景时,一旦硬件系统出现亚稳态,系统便很有可能直接崩溃,无法等待亚稳态恢复后继续完成通信。因此,已有技术无法最大程度减少亚稳态的发生,需要采用新的跨时钟域通信方法,更好的规避亚稳态。

技术实现思路

[0006]为解决现有技术的不足,本专利技术提出一种基于异步握手协议的跨时钟域通信传输方法及系统,在通信系统与芯片传输信息的过程中,基于两相单轨异步握手协议完成通信,采用通信协议的改进解决了信息跨时钟域传输不够稳定的问题,在利用异步握手协议代替原有跨时钟域传输方法之后,使整个系统传输信息更为稳定。通过捕获相关信号、并与正确参数逐帧对比得知,在类脑芯片计算的过程中,采用本专利技术的通信传输方法获得的信息传输正确率可达99%。
[0007]为实现以上目的,本专利技术所采用的技术方案包括:
[0008]一种基于异步握手协议的跨时钟域通信传输方法,其特征在于,由第一时钟域向第二时钟域发送64bit数据时执行如下步骤:
[0009]S1、获取第一时钟域下的待传输数据,将对应待传输数据的传输使能信号置于高
位;
[0010]S2、发送侧识别置于高位的传输使能信号,对应将请求信号置于高位,并对待传输数据的高32bit部分执行传输;
[0011]S3、接收侧识别置于高位的请求信号,对应将确认信号置于高位;
[0012]S4、判断请求信号与确认信号是否同时置于高位;
[0013]S5、当判断请求信号与确认信号同时置于高位时,完成待传输数据的高32bit部分传输,发送侧将请求信号置于低位,并对待传输数据的低32bit部分执行传输;
[0014]S6、接收侧识别置于低位的请求信号,对应将确认信号置于低位;
[0015]S7、判断请求信号与确认信号是否同时置于低位;
[0016]S8、当判断请求信号与确认信号同时置于低位时,完成待传输数据的低32bit部分传输。
[0017]进一步地,所述方法还包括:
[0018]当识别置于高位的请求信号时,将对应待传输数据的传输使能信号重新置于低位。
[0019]进一步地,所述步骤S3还包括:
[0020]判断当前确认信号是否已置于高位;
[0021]当判断当前确认信号已置于高位时,将确认信号置于低位;
[0022]接收侧识别置于高位的请求信号,对应将置于低位的确认信号置于高位。
[0023]进一步地,所述第一时钟域选择为FPGA时钟域或类脑计算芯片时钟域,所述第二时钟域选择为FPGA时钟域或类脑计算芯片时钟域,且第一时钟域和第二时钟域不相同。
[0024]进一步地,所述方法还包括:
[0025]配置数据传输状态标识,所述数据传输状态标识缺省为待传输状态;
[0026]当获取第一时钟域下的待传输数据时,将数据传输状态标识转换为第一传输状态;
[0027]当请求信号置于高位时,将数据传输状态标识转换为第二传输状态;
[0028]当请求信号置于低位时,将数据传输状态标识转换为第三传输状态。
[0029]进一步地,所述方法还包括:
[0030]判断待传输数据的高32bit部分和低32bit部分是否均传输完成;
[0031]当判断待传输数据的高32bit部分和低32bit部分均传输完成时,将当前帧数据传输状态标识转换为传输完成状态,并继续传输下一帧待传输数据;当判断全部待传输数据传输完成时,对应发送64bit数据的结束信号。
[0032]本专利技术还涉及一种基于异步握手协议的跨时钟域通信传输系统,其特征在于,包括:
[0033]待传输数据模块,用于获取第一时钟域下的待传输数据,以及控制对应待传输数据的传输使能信号置于高位或低位;
[0034]发送侧模块,用于识别传输使能信号,以及控制请求信号置于高位或低位;
[0035]接收侧模块,用于识别请求信号,以及控制确认信号置于高位或低位;
[0036]信号判断模块,用于判断请求信号与确认信号是否同时置于高位或低位;
[0037]数据传输执行模块,用于对待传输数据的高32bit部分和低32bit部分执行传输。
[0038]本专利技术还涉及一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法。
[0039]本专利技术还涉及一种电子设备,其特征在于,包括处理器和存储器;
[0040]所述存储器,用于存储待传输数据、传输使能信号、请求信号与确认信号;
[0041]所述处理器,用于通过调用待传输数据、传输使能信号、请求信号与确认信号,执行上述的方法。
[0042]本专利技术还涉及一种计算机程序产品,包括计算机程序和/或指令,其特征在于,该计算机程序和/或指令被处理器执行时实现上述方法的步骤。
[0043]本专利技术的有益效果为:
[0044]采用本专利技术所述基于异步握手协议的跨时钟域通信传输方法及系统,在通信系统与芯片传输信息的过程中,基于两相单轨异步握手协议完成通信,采用通信协议的改进解决了信息跨时钟域传输不够稳定的问题,在利用异步握手协议代替原有跨时钟域传输方法之后,使整个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于异步握手协议的跨时钟域通信传输方法,其特征在于,由第一时钟域向第二时钟域发送64bit数据时执行如下步骤:S1、获取第一时钟域下的待传输数据,将对应待传输数据的传输使能信号置于高位;S2、发送侧识别置于高位的传输使能信号,对应将请求信号置于高位,并对待传输数据的高32bit部分执行传输;S3、接收侧识别置于高位的请求信号,对应将确认信号置于高位;S4、判断请求信号与确认信号是否同时置于高位;S5、当判断请求信号与确认信号同时置于高位时,完成待传输数据的高32bit部分传输,发送侧将请求信号置于低位,并对待传输数据的低32bit部分执行传输;S6、接收侧识别置于低位的请求信号,对应将确认信号置于低位;S7、判断请求信号与确认信号是否同时置于低位;S8、当判断请求信号与确认信号同时置于低位时,完成待传输数据的低32bit部分传输。2.如权利要求1所述的方法,其特征在于,所述方法还包括:当识别置于高位的请求信号时,将对应待传输数据的传输使能信号重新置于低位。3.如权利要求1所述的方法,其特征在于,所述步骤S3还包括:判断当前确认信号是否已置于高位;当判断当前确认信号已置于高位时,将确认信号置于低位;接收侧识别置于高位的请求信号,对应将置于低位的确认信号置于高位。4.如权利要求1所述的方法,其特征在于,所述第一时钟域选择为FPGA时钟域或类脑计算芯片时钟域,所述第二时钟域选择为FPGA时钟域或类脑计算芯片时钟域,且第一时钟域和第二时钟域不相同。5.如权利要求1所述的方法,其特征在于,所述方法还包括:配置数据传输状态标识,所述数据传输状态标识缺省为待传输状态;当获取第一时钟域下的待传输数据时,将数据传输状态标识...

【专利技术属性】
技术研发人员:曹健杨辰涛王源丁亚伟陈光
申请(专利权)人:北京大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1