CN113742262A - 一种基于高速差分信号的芯片级联方法 - Google Patents
一种基于高速差分信号的芯片级联方法 Download PDFInfo
- Publication number
- CN113742262A CN113742262A CN202010460951.2A CN202010460951A CN113742262A CN 113742262 A CN113742262 A CN 113742262A CN 202010460951 A CN202010460951 A CN 202010460951A CN 113742262 A CN113742262 A CN 113742262A
- Authority
- CN
- China
- Prior art keywords
- data
- speed
- calculation
- computing
- data packet
- 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 23
- 238000004364 calculation method Methods 0.000 claims abstract description 66
- 230000005540 biological transmission Effects 0.000 claims description 10
- 238000012546 transfer Methods 0.000 claims description 4
- 238000013461 design Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Neurology (AREA)
- Computer Hardware Design (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明提供了一种基于高速差分信号的芯片级联方法,所述方法包括:通过差分高速输入接口的高速差分总线将数据输入到总线仲裁模块,由总线仲裁模块判断数据流中的某一部分或者全部是否进入计算单元的存储模块,没有进入本计算单元的继续从差分高速输出接口发出,流向下一个计算单元;进入本计算单元的数据,交由计算引擎模块计算结果,结果数据返回存储模块中,再从差分高速输出接口发送到下一个计算单元;当计算引擎处于计算状态中并没有到达输出结果的这段时间里,该计算单元处于忙碌状态;否则处于空闲状态。
Description
技术领域
本发明涉及并行计算技术领域,特别涉及一种基于高速差分信号的芯片级联方法。
背景技术
当今社会是一个高度数字化的社会,特别是随着移动通信技术的不断发展和演进。MIPI/DVP/BT所传送的一般是普通视频流,它们也可以作为高速数据端口使用。现有技术中的常用术语包括:
PCI-Express(peripheral component interconnect express)是一种高速串行计算机扩展总线标准,PCIE属于高速串行点对点双通道高带宽传输,所连接的设备分配独享通道带宽,不共享总线带宽,主要支持主动电源管理,错误报告,端对端的可靠性传输,热插拔以及服务质量(QOS)等功能。
移动产业处理器接口(Mobile Industry Processor Interface简称MIPI)是MIPI联盟发起的为移动应用处理器制定的开放标准。MIPI是专门在高速(数据传输)模式下采用低振幅信号摆幅,针对功率敏感型应用而量身定做的。MIPI联盟定义了一套接口标准,把移动设备内部的接口如摄像头、显示屏、基带、射频接口等标准化,从而增加设计灵活性,同时降低成本、设计复杂度、功耗和EMI。由于MIPI是采用差分信号传输的,所以在设计上需要按照差分设计的一般规则进行严格的设计,关键是需要实现差分阻抗的匹配,MIPI协议规定传输线差分阻抗值为80-125欧姆。
如何有效的提高效率,有效利用差分高速数据传输实现数据在芯片级联并行计算中的作用成为亟待解决的问题。
发明内容
为了解决上述现有技术中存在的问题,本发明的目的在于:通过本发明的方法可以用来加速深度神经网络计算,语音智能算法计算,数学计算以及区块链计算。
为了实现上述目的,本申请提供了一种基于高速差分信号的芯片级联方法,所述方法包括:
通过差分高速输入接口的高速差分总线将数据输入到总线仲裁模块,由总线仲裁模块判断数据流中的某一部分或者全部是否进入计算单元的存储模块,没有进入本计算单元的继续从差分高速输出接口发出,流向下一个计算单元;
进入本计算单元的数据,交由计算引擎模块计算结果,结果数据返回存储模块中,再从差分高速输出接口发送到下一个计算单元;
当计算引擎处于计算状态中并没有到达输出结果的这段时间里,该计算单元处于忙碌状态;否则处于空闲状态。
所述的差分高速差分总线中的数据会同时包含下列任意一种或多种类型:
1)该数据包是计算数据,其中明确标志了接收本数据包的计算单元的ID信息,则该数据包只会被包含该ID的计算单元总线仲裁模块接收,其他计算单元对此数据包只执行过顶传输操作;如果没有符合条件的计算单元,该数据包会传递返回计算控制模块;
2)该数据包是计算数据,但没有标志接收本数据包的计算单元的ID信息,则该数据包会被第一个空闲状态的计算单元接收,处于忙碌状态的计算单元对此数据包只执行过顶传输操作;如果没有符合条件的计算单元,该数据包会传递返回计算控制模块;
3)该数据包是结果数据;则所有计算单元对此数据包只执行过顶传输操作。
每个所述的计算单元就是一颗独立的SOC/ASIC芯片,所述芯片内置计算单元。
所述的计算单元支持MIPI/LVDS接口和SPI/I2C/UART接口。
所述的差分高速总线为MIPI总线,也可以为LVDS/BT1120高速总线。
所述方法利用高速总线协议来统一传输计算数据和结果数据,并不需要分开两条数据通路。
所述的计算控制模块由FPGA或者ASIC芯片实现。
本发明的优势在于:采用本方法,以深度神经网络计算为例,计算单元中内置CNN加速引擎,每个计算单元提供8Tops的算力,通过16单元的级联,就可以达到共计整板128T的算力。用这种方式,比GPGPU或者FPGA有更好的灵活性、更高的性价比和更好的能耗比。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。
图1是本发明方法应有于的系统的结构示意图。
图2是本发明方法涉及的环型数据通路的图示。
图3是本发明方法的流程框图。
具体实施方式
本发明的系统结构,如图1所示。该系统由以下几个部分组成:计算控制模块,计算阵列,环型数据通路和星型数据通路。
计算控制模块:由FPGA或者ASIC芯片实现,该模块支持PCIE接口,MIPI/LVDS等接口,SPI/I2C/UART等接口。该模块的流程是:1.通过星型数据通路,2.给计算阵列的每个计算单元配置工作模式,3.从PCIE接收待计算数据,4.通过环型数据接口把数据发送到计算阵列的第一个计算单元,5.从技术阵列的最后一个技术单元的环型数据接口接收计算结果数据,6.通过PCIE把结果数据和反馈数据输出到系统外
计算阵列:计算阵列是若干个计算单元的集合。每个计算单元就是一颗独立的SOC/ASIC芯片,该芯片内置高性能的计算单元,并支持MIPI/LVDS等接口和SPI/I2C/UART等接口。计算单元之间,用高速串行差分接口相连,统一接口传输数据,输入数据和输出数据都通过该接口总线传输。计算阵列内包含计算单元的数量根据应用的强度可以灵活选择,例如:4个计算单元组成一个技术阵列,16个计算单元组成一个技术阵列,32个计算单元组成一个技术阵列等。但在板卡的实现上,由于PCB面积的限制,同一个计算阵列无法无限量增加计算单元。
环型数据通路:环型数据通路是连接计算控制模块与每个计算单元的高速数据接口。计算模块内部,每个计算单元之间的接口连接属于环型数据通路的一部分;计算控制模块与第一个计算单元之间的接口连接属于环型数据通路的一部分;计算控制模块与最后一个计算单元之间的接口连接也属于环型数据通路的一部分。环型数据通路的数据吞吐速率很高,其中一些实现技术是通过MIPI或者LDVS等差分高速接口。以MIPI接口为例,环型数据通路的技术细节如图2所示。
该结构中,MIPI-input高速差分总线数据输入仲裁模块,由仲裁模块判断数据流中的某一部分或者全部是否进入本单元的memory,没有进入本单元的继续从MIPI-output中发出,流向下一个计算单元。进入本单元的数据,交由计算引擎计算结果,结果数据返回memory中,再从MIPI-output发送到下一个计算单元。当计算引擎处于计算状态中并没有到达输出结果的这段时间里,该计算单元处于busy状态;否则处于idle状态。
在该实例中,MIPI高速差分总线中的数据会同时包含下列任意一种或多种类型:
1.该数据包是计算数据,其中明确标志了接收本数据包的计算单元的ID信息。则该数据包只会被包含该ID的计算单元总线仲裁模块接收,其他计算单元对此数据包只执行过顶传输操作;如果没有符合条件的计算单元,该数据包会传递返回计算控制模块。
2.该数据包是计算数据,但没有标志接收本数据包的计算单元的ID信息。则该数据包会被第一个idle状态的计算单元接收,处于busy状态的计算单元对此数据包只执行过顶传输操作;如果没有符合条件的计算单元,该数据包会传递返回计算控制模块。
3.该数据包是结果数据。则所有计算单元对此数据包只执行过顶传输操作。
以上控制逻辑,主要通过每个计算单元内部的总线仲裁模块联动来实现,也就是说,上述的逻辑就是计算单元内部的总线仲裁模块的主要工作模式。
一般情况下,计算控制模块只会向环型数据通路中发送计算数据包;而计算单元既可能向发出环型数据通路中发送计算数据包,也可能向发出环型数据通路中发送结果数据包,以实现接力计算的功能。
以上只是该环型数据通路用MIPI总线协议来实现的一个实例,除了MIPI总线,也可以用其他类似LVDS/BT1120等高速总线。该环型数据通路最大的特点是利用了高速总线协议来统一传输计算数据和结果数据,并不需要分开两条数据通路。
星型数据通路:星型数据通路的主要作用是,对每个计算单元进行差异化配置,如设置每个计算单元的身份信息,配置总线仲裁模块的工作方式,配置计算任务,启停计算等等。该星型数据通路有别于环型数据通路,是低速的,差异化的点对点通讯链路。所以只需要SPI/I2C/UART等常用接口即可实现。
以上模块的有机组合,形成一个芯片级联并行计算系统。
具体地,如图3所示,一种基于高速差分信号的芯片级联方法,所述方法包括:
通过差分高速输入接口的高速差分总线将数据输入到总线仲裁模块,由总线仲裁模块判断数据流中的某一部分或者全部是否进入计算单元的存储模块,没有进入本计算单元的继续从差分高速输出接口发出,流向下一个计算单元;
进入本计算单元的数据,交由计算引擎模块计算结果,结果数据返回存储模块中,再从差分高速输出接口发送到下一个计算单元;
当计算引擎处于计算状态中并没有到达输出结果的这段时间里,该计算单元处于忙碌状态;否则处于空闲状态。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种基于高速差分信号的芯片级联方法,其特征在于,所述方法包括:通过差分高速输入接口的高速差分总线将数据输入到总线仲裁模块,由总线仲裁模块判断数据流中的某一部分或者全部是否进入计算单元的存储模块,没有进入本计算单元的继续从差分高速输出接口发出,流向下一个计算单元;
进入本计算单元的数据,交由计算引擎模块计算结果,结果数据返回存储模块中,再从差分高速输出接口发送到下一个计算单元;
当计算引擎处于计算状态中并没有到达输出结果的这段时间里,该计算单元处于忙碌状态;否则处于空闲状态。
2.根据权利要求1所述的一种基于高速差分信号的芯片级联方法,其特征在于,所述的差分高速差分总线中的数据会同时包含下列任意一种或多种类型:
1)该数据包是计算数据,其中明确标志了接收本数据包的计算单元的ID信息,则该数据包只会被包含该ID的计算单元总线仲裁模块接收,其他计算单元对此数据包只执行过顶传输操作;如果没有符合条件的计算单元,该数据包会传递返回计算控制模块;
2)该数据包是计算数据,但没有标志接收本数据包的计算单元的ID信息,则该数据包会被第一个空闲状态的计算单元接收,处于忙碌状态的计算单元对此数据包只执行过顶传输操作;如果没有符合条件的计算单元,该数据包会传递返回计算控制模块;
3)该数据包是结果数据;则所有计算单元对此数据包只执行过顶传输操作。
3.根据权利要求1所述的一种基于高速差分信号的芯片级联方法,其特征在于,每个计算单元就是一颗独立的SOC/ASIC芯片,所述芯片内置计算单元。
4.根据权利要求3所述的一种基于高速差分信号的芯片级联方法,其特征在于,所述的计算单元支持MIPI/LVDS接口和SPI/I2C/UART接口。
5.根据权利要求1所述的一种基于高速差分信号的芯片级联方法,其特征在于,所述的差分高速总线为MIPI总线,也可以为LVDS/BT1120高速总线。
6.根据权利要求1所述的一种基于高速差分信号的芯片级联方法,其特征在于,所述方法利用高速总线协议来统一传输计算数据和结果数据,并不需要分开两条数据通路。
7.根据权利要求1所述的一种基于高速差分信号的芯片级联方法,其特征在于,所述的计算控制模块由FPGA或者ASIC芯片实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010460951.2A CN113742262A (zh) | 2020-05-27 | 2020-05-27 | 一种基于高速差分信号的芯片级联方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010460951.2A CN113742262A (zh) | 2020-05-27 | 2020-05-27 | 一种基于高速差分信号的芯片级联方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113742262A true CN113742262A (zh) | 2021-12-03 |
Family
ID=78723708
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010460951.2A Pending CN113742262A (zh) | 2020-05-27 | 2020-05-27 | 一种基于高速差分信号的芯片级联方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113742262A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114968875A (zh) * | 2022-05-31 | 2022-08-30 | 重庆长安汽车股份有限公司 | 一种支持车载串行解串链路自适应系统及自动驾驶汽车 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2149479A1 (en) * | 1994-07-28 | 1996-01-29 | Andre Steimle | Improved neural semiconductor chip architectures and neural networks incorporated therein |
CN101237346A (zh) * | 2008-02-29 | 2008-08-06 | 中兴通讯股份有限公司 | 网络处理器及网络处理器的读写串口的方法 |
CN108415771A (zh) * | 2018-02-01 | 2018-08-17 | 深圳市安信智控科技有限公司 | 多芯片分布式并行计算加速系统 |
CN109840240A (zh) * | 2018-12-31 | 2019-06-04 | 武汉芯动科技有限公司 | 芯片、分布式计算装置及方法 |
-
2020
- 2020-05-27 CN CN202010460951.2A patent/CN113742262A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2149479A1 (en) * | 1994-07-28 | 1996-01-29 | Andre Steimle | Improved neural semiconductor chip architectures and neural networks incorporated therein |
CN101237346A (zh) * | 2008-02-29 | 2008-08-06 | 中兴通讯股份有限公司 | 网络处理器及网络处理器的读写串口的方法 |
CN108415771A (zh) * | 2018-02-01 | 2018-08-17 | 深圳市安信智控科技有限公司 | 多芯片分布式并行计算加速系统 |
CN109840240A (zh) * | 2018-12-31 | 2019-06-04 | 武汉芯动科技有限公司 | 芯片、分布式计算装置及方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114968875A (zh) * | 2022-05-31 | 2022-08-30 | 重庆长安汽车股份有限公司 | 一种支持车载串行解串链路自适应系统及自动驾驶汽车 |
CN114968875B (zh) * | 2022-05-31 | 2023-08-25 | 重庆长安汽车股份有限公司 | 一种支持车载串行解串链路自适应系统及自动驾驶汽车 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220066976A1 (en) | PCI Express to PCI Express based low latency interconnect scheme for clustering systems | |
EP1558987B1 (en) | A multi-rate, multi-port, gigabit serdes transceiver | |
CN100511200C (zh) | 单串口多cpu的控制方法、系统及设备 | |
CN109120624B (zh) | 一种多平面松耦合高带宽数据交换系统 | |
US20100250821A1 (en) | Inter-processor communication link with manageability port | |
CN103049414A (zh) | Fc总线与can总线间数据的转换及传输方法 | |
CN109857690A (zh) | 驱动器的应用系统、驱动器和数据传输方法 | |
CN110334044B (zh) | 一种mipi dphy发送电路及设备 | |
CN211427332U (zh) | 一种基于fpga阵列的vpx板卡 | |
CN113742262A (zh) | 一种基于高速差分信号的芯片级联方法 | |
CN201699992U (zh) | 一种无线接入点共享基站带宽的系统 | |
CN113742270A (zh) | 一种芯片级联并行计算系统 | |
CN118211540A (zh) | 一种基于fpga的can总线控制器设计方法及系统 | |
CN110708324A (zh) | 一种实现fpga板卡间点对点通信方法及系统 | |
CN103049410A (zh) | 服务器及其串口切换电路 | |
CN117812104A (zh) | 一种基于智驾域控制器的电子电气通信装置 | |
CN112069111A (zh) | 一种兼容双向传输的Retimer转接卡电路设计 | |
CN112148663A (zh) | 一种数据交换芯片及服务器 | |
CN114817111B (zh) | 支持多卡并行的嵌入式智能计算装置 | |
CN107332841A (zh) | 基于PowerPC的多协议混合交换模块 | |
US11290579B2 (en) | Communication system, communication method, and mac circuit | |
CN213403348U (zh) | 适用于正交架构设备的控制链路 | |
CN210721160U (zh) | 温控电路及温控装置 | |
CN209844989U (zh) | 一种基于can总线的医疗多参数监护仪 | |
CN209860929U (zh) | 一种通信总线结构 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |