CN111611187A - 一种针对CHI总线的通用协议转换桥及SoC - Google Patents
一种针对CHI总线的通用协议转换桥及SoC Download PDFInfo
- Publication number
- CN111611187A CN111611187A CN202010597470.6A CN202010597470A CN111611187A CN 111611187 A CN111611187 A CN 111611187A CN 202010597470 A CN202010597470 A CN 202010597470A CN 111611187 A CN111611187 A CN 111611187A
- Authority
- CN
- China
- Prior art keywords
- bus
- message
- chi
- state
- transaction
- 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.)
- Granted
Links
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/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
-
- 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/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/38—Universal adapter
- G06F2213/3852—Converter between protocols
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Bus Control (AREA)
Abstract
本发明公开了一种针对CHI总线的通用协议转换桥及SoC,通用协议转换桥包括事务层处理模块、状态机、报文缓存模块以及两个链路层处理模块,链路层处理模块用于处理CHI总线和类CHI总线信用控制和事务ID转换,事务层处理模块用于处理CHI总线报文各域段与类CHI总线各域段之间的转换,状态机用于控制CHI总线与类CHI总线间的数据传输,报文缓存模块用于缓存未完成的CHI总线报文和类CHI总线报文,为协议层转换模块提供数据支持。本发明能够实现标准CHI总线与类CHI总线协议间的协议转换,能够满足SoC设计中集成带有标准CHI接口IP的需求。
Description
技术领域
本发明属于集成电路设计领域中的数字接口协议转换领域,具体涉及一种针对CHI总线的通用协议转换桥及SoC。
背景技术
随着半导体工艺的不断发展和市场需求的不断提高,SoC(System on Chip,片上系统)的复杂度也不断提高。基于IP(Intellectual Property,知识产权)复用技术成为开发复杂SoC的重要技术,这种技术是将多个具有完整独立功能的模块IP模块集成到同一个SoC上,使之成为一个独立的系统并实现特定功能,而实现这种设计的关键是SoC的片上总线系统,一个高效灵活的片上总线系统对整个SoC系统的性能是至关重要的。CHI总线是目前广泛采用的一种总线系统,CHI协议包含事务层和链路层,事务由多个报文组成,报文分布在请求通道、响应通道、数据通道和监听通道,各通道互不干扰并通过信用机制实现流量控制,新事务的发送不受之前未完成事务的影响,具有高带宽、多并发的优点。为满足不同的功能、性能或功耗需求,IC设计师需要实现拥有上述CHI总线协议特点的定制化总线协议,以满足特定SoC的设计要求,本发明中将这类拥有CHI总线协议特点的定制化总线协议称为类CHI片上总线协议,基于该协议开发的片上总线系统称为类CHI的片上总线系统。
当这种带有类CHI片上总线系统的SoC需要集成带有标准CHI接口的IP时,需要一种协议转换桥实现类CHI协议接口与标准CHI协议接口间通信时的协议转换。许多IC公司针对自己的SoC开发了各自的类CHI协议,广泛地存在着协议转换桥的开发需求,但是目前没有一种通用的转换桥来实现类CHI总线协议与标准CHI总线协议间的转换。
发明内容
本发明要解决的技术问题:针对现有技术的上述问题,提供一种针对CHI总线的通用协议转换桥及SoC,本发明能够实现标准CHI总线与类CHI总线协议间的协议转换,能够满足SoC设计中集成带有标准CHI接口IP的需求。
为了解决上述技术问题,本发明采用的技术方案为:
一种针对CHI总线的通用协议转换桥,包括事务层处理模块、状态机、报文缓存模块以及两个链路层处理模块,所述链路层处理模块用于处理CHI总线和类CHI总线信用控制和事务ID转换,所述事务层处理模块用于处理CHI总线报文各域段与类CHI总线各域段之间的转换,所述状态机用于控制CHI总线与类CHI总线间的数据传输,所述报文缓存模块用于缓存未完成的CHI总线报文和类CHI总线报文,为协议层转换模块提供数据支持,所述事务层处理模块、状态机、报文缓存模块依次相连,且所述事务层处理模块、状态机、报文缓存模块分别与两个链路层处理模块相连,所述两个链路层处理模块中一个链路层处理模块用于与CHI总线接口相连、另一个链路层处理模块用于与被转换的定制总线接口相连。
可选地,所述链路层处理模块包括:
链路状态处理模块,用于完成CHI总线的链路管理,保证CHI总线处在合理的工作状态,CHI总线的链路管理通过一组握手信号完成,所述通用协议转换桥接收到CHI总线主机的链路激活请求后,拉高链路激活应答信号,链路进入正常工作状态;CHI总线主机拉低链路请求信号后,所述通用协议转换桥拉低链路激活应答信号,链路进入IDLE状态;
报文通道转换模块,用于确保所述通用协议转换桥从一端的各通道接收的报文被正确从另一端的相应通道发送出去,CHI总线请求通道中的报文必定进入定制总线的请求通道,CHI总线监听通道中的报文必定进入定制总线的监听通道;报文通道转换模块集中在CHI总线的响应通道、数据通道与定制总线的响应通道、应答通道之间;报文通道转换模块进行报文通道转换的原则为:CHI总线数据通道发往定制总线从机的报文,全部由定制总线的响应通道发出;定制总线响应通道和应答通道发往CHI总线从机的带数据的报文通过CHI总线的数据通道发出;定制总线响应通道和应答通道发往CHI总线从机的不带数据的报文通过CHI总线的应答通道发出;
信用控制模块,分为CHI总线端信用控制模块和定制总线端信用控制模块,所述通用协议转换桥接收通道的信用值由对应通道的报文缓存FIFO深度决定,发送通道的信用值由通道对应接收方的实现决定,CHI总线的信用控制采用显式预授方式,信用值通过信用控制信号上的脉冲从报文接收方发给报文发送方,报文发送方拿到信用后发送报文给接收方;定制总线的信用控制采用隐式约定方式,报文发送方默认报文接收方拥有默认个数的信用,在初始化完成后可连续发出默认个数的报文,报文接收方每接收一个报文向报文发送方返回一个信用;
事务ID处理模块,包括事务ID监控模块、事务ID分配模块和事务ID还原模块,事务ID监控模块用于监控所有通过协议转换桥的事务,收集事务ID使用状态,每种事务的流程各不相同,所包含的报文也不同,同一种事务在不同配置下流程也会不同,协议桥需要根据事务类型及配置做相关处理,保证事务ID的监控完整正确;事务ID分配模块用于根据事务ID使用状态为新到达转换桥的事务分配ID,新分配的事务ID必须处于IDLE状态,CHI总线和定制总线协议的事务有两类:请求节点发出的请求事务、Home节点发出的监听事务,事务ID的分配也按照请求事务和监听事务分别处理;事务ID还原模块用于将重新分配了ID的事务的响应报文还原为原始请求报文的事务ID,返回给事务请求方,事务ID还原模块保证所述通用协议转换桥两端的事务ID完全独立,解决CHI总线和定制总线对事务ID不同的要求。
可选地,所述事务层处理模块包括报文类型转换模块和报文缺失域段填充模块,CHI总线协议与定制总线协议支持的报文类型不完成一致,同一报文类型的编码也不相同,报文类型转换模块用于将从CHI总线主机发往定制总线从机报文中CHI总线的报文类型转换为定制总线支持的报文类型,将从定制总线主机发往CHI总线从机报文中定制总线的报文类型转换为CHI总线支持的报文类型;报文缺失域段填充模块,用于在CHI总线主机报文转换为定制总线从机报文时,填充定制总线报文需要但CHI总线报文缺少的报文信息,填充的报文信息由在桥上新增的输入接口提供;合并或过滤CHI总线报文中存在但定制总线报文中不需要的报文信息。
可选地,所述状态机的状态包括IDLE状态、WAIT_FLIT_HEAD状态、FLIT_HEAD状态、FLIT_0状态、FLIT_1状态、FLIT_2状态、FLIT_3状态、WAIT_CREDIT状态,其中:
IDLE状态表示CHI总线主机发往定制总线从机的数据通路处于空闲状态,没有数据传输;当所述通用协议转换桥从CHI总线主机接收到完整的数据通道报文,一个完整的数据通道报文可以在1个始终拍、2个时钟拍或4个时钟拍内完成,状态机由IDLE状态进入WATI_FLIT_HEAD状态;
WAIT_FLIT_HEAD状态表示CHI总线的数据通路报文没有专门的头报文,定制总线的带数据报文均由一个头报文和若干数据报文组成,WAIT_FLIT_HEAD状态下由状态机控制从报文缓存模块读取数据,生成定制总线带数据报文的头报文;
FLIT_HEAD状态表示将生成好的带数据报文的头报文发往定制总线从机;
FLIT_0状态表示在信用可用状态下,向定制总线从机发送带数据报文的第1个数据;在信用不可用状态下,记录当前状态,并跳转到WAIT_CREDIT状态;如果数据报文携带的有效数据位数大于定制总线位宽,则状态机跳转到FLIT_1状态,否则跳转到IDLE状态;
FLIT_1状态表示在信用可用状态下,向定制总线从机发送带数据报文的第2个数据;如果数据报文携带的有效数据位数大于定制总线位宽的2倍,则状态机跳转到FLIT_2状态;
FLIT_2状态表示在信用可用状态下,向定制总线从机发送带数据报文的第3个数据;进入FLIT_2状态后,状态机必然跳转到FLIT_3状态;
FLIT_3状态表示在信用可用状态下,向定制总线从机发送带数据报文的第4个数据;
WAIT_CREDIT状态表示进入FLIT_HEAD状态、FLIT_0状态、FLIT_1状态、FLIT_2状态和FLIT_3状态前均需要检查信用状态,如信用耗尽,则状态机跳转到WAIT_CREDIT状态并记录原本将要跳转的状态,直到定制总线从机信用返回,状态机重新跳转到记录的状态;
CHI总线的数据通道报文支持乱序发送,同一个数据报文的多拍数据间允许发送其他数据报文,在所述通用协议转换桥接收到完整的数据报文前,不会进入状态机处理流程。
可选地,所述报文缓存模块包括CHI总线和定制总线的各通道缓存FIFO和报文信息记录RAM,CHI总线和定制总线的各通道缓存FIFO用于缓存转换桥接收到的各通道的报文,在信用可用状态时读出发往目标端;转换桥内部报文信息记录RAM用于记录CHI总线和定制总线的请求通道和监听通道的报文信息,为事务后续报文的域段填充和事务ID还原提供数据。
此外,本发明还提供一种SoC,包括CHI总线和定制总线,所述CHI总线的CHI总线接口、所述定制总线的定制总线接口之间设有所述针对CHI总线的通用协议转换桥。
此外,本发明还提供一种计算机设备,该计算机设备包括CHI总线和定制总线,所述CHI总线的CHI总线接口、所述定制总线的定制总线接口之间设有所述针对CHI总线的通用协议转换桥。
此外,本发明还提供一种移动终端设备,该移动终端设备包括CHI总线和定制总线,所述CHI总线的CHI总线接口、所述定制总线的定制总线接口之间设有所述针对CHI总线的通用协议转换桥。
和现有技术相比,本发明具有下述优点:本发明的通用协议转换桥包括事务层处理模块、状态机、报文缓存模块以及两个链路层处理模块,链路层处理模块用于处理CHI总线和类CHI总线信用控制和事务ID转换,事务层处理模块用于处理CHI总线报文各域段与类CHI总线各域段之间的转换,状态机用于控制CHI总线与类CHI总线间的数据传输,报文缓存模块用于缓存未完成的CHI总线报文和类CHI总线报文,为协议层转换模块提供数据支持。本发明能够实现标准CHI总线与类CHI总线协议间的协议转换,能够满足SoC设计中集成带有标准CHI接口IP的需求。
附图说明
图1是本发明实施例针对CHI总线的通用协议转换桥的结构示意图。
图2是本发明实施例中的状态机的状态转换图。
具体实施方式
为了使本发明所解决的技术问题、技术方案及有益效果更加清晰,以下结合附图和实施案例,对本发明进行进一步详细说明。需要理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限制本发明。
如图1所示,本实施例针对CHI总线的通用协议转换桥包括事务层处理模块2、状态机3、报文缓存模块4以及两个链路层处理模块1,该链路层处理模块1用于处理CHI总线和类CHI总线信用控制和事务ID转换,该事务层处理模块2用于处理CHI总线报文各域段与类CHI总线各域段之间的转换,该状态机3用于控制CHI总线与类CHI总线间的数据传输,该报文缓存模块4用于缓存未完成的CHI总线报文和类CHI总线报文,为协议层转换模块提供数据支持,该事务层处理模块2、状态机3、报文缓存模块4依次相连,且该事务层处理模块2、状态机3、报文缓存模块4分别与两个链路层处理模块1相连,该两个链路层处理模块1中一个链路层处理模块1用于与CHI总线接口相连、另一个链路层处理模块1用于与被转换的定制总线接口相连。如无特别指出,下文的CHI转换桥即为本实施例针对CHI总线的通用协议转换桥的简称。
本实施例中,链路层处理模块1包括:
链路状态处理模块,用于完成CHI总线的链路管理,保证CHI总线处在合理的工作状态,CHI总线的链路管理通过一组握手信号完成,该通用协议转换桥接收到CHI总线主机的链路激活请求后,拉高链路激活应答信号,链路进入正常工作状态;CHI总线主机拉低链路请求信号后,该通用协议转换桥拉低链路激活应答信号,链路进入IDLE状态;
报文通道转换模块,用于确保该通用协议转换桥从一端的各通道接收的报文被正确从另一端的相应通道发送出去,CHI总线请求通道中的报文必定进入定制总线的请求通道,CHI总线监听通道中的报文必定进入定制总线的监听通道;报文通道转换模块集中在CHI总线的响应通道、数据通道与定制总线的响应通道、应答通道之间;报文通道转换模块进行报文通道转换的原则为:CHI总线数据通道发往定制总线从机的报文,全部由定制总线的响应通道发出;定制总线响应通道和应答通道发往CHI总线从机的带数据的报文通过CHI总线的数据通道发出;定制总线响应通道和应答通道发往CHI总线从机的不带数据的报文通过CHI总线的应答通道发出;
信用控制模块,分为CHI总线端信用控制模块和定制总线端信用控制模块,该通用协议转换桥接收通道的信用值由对应通道的报文缓存FIFO(First In First Out,先进先出)深度决定,发送通道的信用值由通道对应接收方的实现决定,CHI总线的信用控制采用显式预授方式,信用值通过信用控制信号上的脉冲从报文接收方发给报文发送方,报文发送方拿到信用后发送报文给接收方;定制总线的信用控制采用隐式约定方式,报文发送方默认报文接收方拥有默认个数的信用,在初始化完成后可连续发出默认个数的报文,报文接收方每接收一个报文向报文发送方返回一个信用;
事务ID处理模块,包括事务ID监控模块、事务ID分配模块和事务ID还原模块,事务ID监控模块用于监控所有通过协议转换桥的事务,收集事务ID使用状态,每种事务的流程各不相同,所包含的报文也不同,同一种事务在不同配置下流程也会不同,协议桥需要根据事务类型及配置做相关处理,保证事务ID的监控完整正确;事务ID分配模块用于根据事务ID使用状态为新到达转换桥的事务分配ID,新分配的事务ID必须处于IDLE状态,CHI总线和定制总线协议的事务有两类:请求节点发出的请求事务、Home节点发出的监听事务,事务ID的分配也按照请求事务和监听事务分别处理;事务ID还原模块用于将重新分配了ID的事务的响应报文还原为原始请求报文的事务ID,返回给事务请求方,事务ID还原模块保证该通用协议转换桥两端的事务ID完全独立,解决CHI总线和定制总线对事务ID不同的要求。
本实施例中,事务层处理模块2包括报文类型转换模块和报文缺失域段填充模块,CHI总线协议与定制总线协议支持的报文类型不完成一致,同一报文类型的编码也不相同,报文类型转换模块用于将从CHI总线主机发往定制总线从机报文中CHI总线的报文类型转换为定制总线支持的报文类型,将从定制总线主机发往CHI总线从机报文中定制总线的报文类型转换为CHI总线支持的报文类型;报文缺失域段填充模块,用于在CHI总线主机报文转换为定制总线从机报文时,填充定制总线报文需要但CHI总线报文缺少的报文信息,填充的报文信息由在桥上新增的输入接口提供;合并或过滤CHI总线报文中存在但定制总线报文中不需要的报文信息。事务层处理模块2具有报文类型转换功能、报文缺失域段填充功能、合并功能和删除功能,实现CHI总线与类CHI总线报文中与事务层相关的各域段信息的正确转换。报文类型转换功能,是指将从CHI总线发往类CHI总线报文中CHI总线的报文类型转换为类CHI总线报文类型,将从类CHI总线发往CHI总线报文中类CHI总线的报文类型转换为CHI总线报文类型。报文缺失域段填充功能,是指在CHI总线报文转换为类CHI总线报文时,填充类CHI总线需要但CHI总线报文缺少的报文信息。所述填充的报文信息由转换桥通过计算得到或在转换桥上增加新的输入接口并由外部模块提供。删除功能是指删除CHI总线报文中有但类CHI总线报文中不需要的域段。合并功能是指合并CHI总线报文中的多个域段到类CHI总线的某个域段内,反之亦然。
状态机3用于处理由于转换桥两端数据位宽、数据报文是否支持乱序发送等差异引发的问题,实现转换桥两端数据报文的正确传输。如图2所示,状态机3的状态包括IDLE状态、WAIT_FLIT_HEAD状态、FLIT_HEAD状态、FLIT_0状态、FLIT_1状态、FLIT_2状态、FLIT_3状态、WAIT_CREDIT状态,其中:
IDLE状态表示CHI总线主机发往定制总线从机的数据通路处于空闲状态,没有数据传输;当该通用协议转换桥从CHI总线主机接收到完整的数据通道报文,一个完整的数据通道报文可以在1个始终拍、2个时钟拍或4个时钟拍内完成,状态机由IDLE状态进入WATI_FLIT_HEAD状态;
WAIT_FLIT_HEAD状态表示CHI总线的数据通路报文没有专门的头报文,定制总线的带数据报文均由一个头报文和若干数据报文组成,WAIT_FLIT_HEAD状态下由状态机控制从报文缓存模块读取数据,生成定制总线带数据报文的头报文;
FLIT_HEAD状态表示将生成好的带数据报文的头报文发往定制总线从机;
FLIT_0状态表示在信用可用状态下,向定制总线从机发送带数据报文的第1个数据;在信用不可用状态下,记录当前状态,并跳转到WAIT_CREDIT状态;如果数据报文携带的有效数据位数大于定制总线位宽,则状态机跳转到FLIT_1状态,否则跳转到IDLE状态;
FLIT_1状态表示在信用可用状态下,向定制总线从机发送带数据报文的第2个数据;如果数据报文携带的有效数据位数大于定制总线位宽的2倍,则状态机跳转到FLIT_2状态;
FLIT_2状态表示在信用可用状态下,向定制总线从机发送带数据报文的第3个数据;进入FLIT_2状态后,状态机必然跳转到FLIT_3状态;
FLIT_3状态表示在信用可用状态下,向定制总线从机发送带数据报文的第4个数据;
WAIT_CREDIT状态表示进入FLIT_HEAD状态、FLIT_0状态、FLIT_1状态、FLIT_2状态和FLIT_3状态前均需要检查信用状态,如信用耗尽,则状态机跳转到WAIT_CREDIT状态并记录原本将要跳转的状态,直到定制总线从机信用返回,状态机重新跳转到记录的状态;
CHI总线的数据通道报文支持乱序发送,同一个数据报文的多拍数据间允许发送其他数据报文,在该通用协议转换桥接收到完整的数据报文前,不会进入状态机处理流程。
参见图2,状态机3包括以下状态:IDLE状态、WAIT_FLIT_HEAD状态、FLIT_HEAD状态、FLIT_0状态、FLIT_1状态、FLIT_2状态、FLIT_3状态和WAIT_CREDIT状态。IDLE状态,表示CHI总线发往类CHI总线的数据通路处于空闲状态,等待转换桥接收到完整的数据报文;WAIT_FLIT_HEAD状态,表示CHI总线的数据通路报文没有专门的头报文,该状态用于生成类CHI总线带数据报文的头报文;FLIT_HEAD状态,表示向类CHI总线从机发送带数据报文的头报文;FLIT_0状态,在信用可用状态下,表示转换桥向类CHI总线从机发送带数据报问的第1个数据报文;FLIT_1状态,在信用可用状态下,表示转换桥向类CHI总线从机发送带数据报问的第2个数据报文;FLIT_2状态,在信用可用状态下,表示转换桥向类CHI总线从机发送带数据报问的第3个数据报文;FLIT_3状态,在信用可用状态下,表示转换桥向类CHI总线从机发送带数据报问的第4个数据报文;WAIT_CREDIT状态,在信用不可用状态下,表示等待类CHI总线从机返回信用。所述信用可用状态,是指通道的报文接收端的信用值大于0,报文接收端能够处理接收到的报文,不会导致因FIFO溢出等原因而丢失数据。状态机3的状态按如下规则转换:
IDLE状态:当转换桥从CHI总线主机接收到完整的数据通道报文,一个完整的数据通道报文的传输需耗时1个时钟拍、2个时钟拍或4个时钟拍,状态机由IDLE状态进入WATI_FLIT_HEAD状态。
WAIT_FLIT_HEAD状态:在状态机控制下,从报文缓存模块读取数据,生成类CHI总线带数据报文的头报文,并在判断信用可用后进入FLIT_HEAD状态。
FLIT_HEAD状态:将生成的带数据报文的头报文发往类CHI总线从机,并在判断信用可用后进入FLIT_0状态。
FLIT_0状态:转换桥向类CHI总线从机发送带数据报文的第1个数据。在信用不可用状态下,记录当前状态,并跳转到WAIT_CREDIT状态。在信用可用状态下,如果数据报文携带的有效数据位数大于类CHI总线位宽,则状态机跳转到FLIT_1状态,否则跳转到IDLE状态。
FLIT_1状态:转换桥向类CHI总线从机发送带数据报文的第2个数据。在信用不可用状态下,记录当前状态,并跳转到WAIT_CREDIT状态。在信用可用状态下,如果数据报文携带的有效数据位数大于类CHI总线位宽的2倍,则状态机跳转到FLIT_2状态。
FLIT_2状态:转换桥向类CHI总线从机发送带数据报文的第3个数据。在信用不可用状态下,记录当前状态,并跳转到WAIT_CREDIT状态。在信用可用状态下,进入FLIT_2状态后,状态机必然跳转到FLIT_3状态。
FLIT_3状态:转换桥向类CHI总线从机发送带数据报文的第4个数据。在信用不可用状态下,记录当前状态,并跳转到WAIT_CREDIT状态。在信用可用状态下,判断桥是否有已收到的完整数据报文等待处理,如果有,则进入WAIT_FLIT_HEAD状态,否则进入IDEL状态。
WAIT_CREDIT状态:进入FLIT_HEAD状态、FLIT_0状态、FLIT_1状态、FLIT_2状态和FLIT_3状态前均需要检查信用状态,如果信用耗尽,则状态机跳转到WAIT_CREDIT状态并记录原本将要跳转的状态,直到类CHI总线从机信用返回,状态机重新跳转到所述记录的状态。
本实施例中,报文缓存模块4包括CHI总线和定制总线的各通道缓存FIFO和报文信息记录RAM,CHI总线和定制总线的各通道缓存FIFO用于缓存转换桥接收到的各通道的报文,在信用可用状态时读出发往目标端;转换桥内部报文信息记录RAM用于记录CHI总线和定制总线的请求通道和监听通道的报文信息,为事务后续报文的域段填充和事务ID还原提供数据。
本实施例前述针对CHI总线的通用协议转换桥有效解决了CHI总线与定制总线数据传输的技术问题,实现CHI总线与定制总线的数据传输。
此外,本实施例还提供一种SoC,包括CHI总线和定制总线,该CHI总线的CHI总线接口、该定制总线的定制总线接口之间设有前述针对CHI总线的通用协议转换桥。
此外,本实施例还提供一种计算机设备,该计算机设备包括CHI总线和定制总线,该CHI总线的CHI总线接口、该定制总线的定制总线接口之间设有前述针对CHI总线的通用协议转换桥。
此外,本实施例还提供一种移动终端设备,该移动终端设备包括CHI总线和定制总线,该CHI总线的CHI总线接口、该定制总线的定制总线接口之间设有前述针对CHI总线的通用协议转换桥。该移动终端设备可为智能手机、平板电脑或其他便携式计算设备。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (8)
1.一种针对CHI总线的通用协议转换桥,其特征在于:包括事务层处理模块(2)、状态机(3)、报文缓存模块(4)以及两个链路层处理模块(1),所述链路层处理模块(1)用于处理CHI总线和类CHI总线信用控制和事务ID转换,所述事务层处理模块(2)用于处理CHI总线报文各域段与类CHI总线各域段之间的转换,所述状态机(3)用于控制CHI总线与类CHI总线间的数据传输,所述报文缓存模块(4)用于缓存未完成的CHI总线报文和类CHI总线报文,为协议层转换模块提供数据支持,所述事务层处理模块(2)、状态机(3)、报文缓存模块(4)依次相连,且所述事务层处理模块(2)、状态机(3)、报文缓存模块(4)分别与两个链路层处理模块(1)相连,所述两个链路层处理模块(1)中一个链路层处理模块(1)用于与CHI总线接口相连、另一个链路层处理模块(1)用于与被转换的定制总线接口相连。
2.根据权利要求1所述的针对CHI总线的通用协议转换桥,其特征在于:所述链路层处理模块(1)包括:
链路状态处理模块,用于完成CHI总线的链路管理,保证CHI总线处在合理的工作状态,CHI总线的链路管理通过一组握手信号完成,所述通用协议转换桥接收到CHI总线主机的链路激活请求后,拉高链路激活应答信号,链路进入正常工作状态;CHI总线主机拉低链路请求信号后,所述通用协议转换桥拉低链路激活应答信号,链路进入IDLE状态;
报文通道转换模块,用于确保所述通用协议转换桥从一端的各通道接收的报文被正确从另一端的相应通道发送出去,CHI总线请求通道中的报文必定进入定制总线的请求通道,CHI总线监听通道中的报文必定进入定制总线的监听通道;报文通道转换模块集中在CHI总线的响应通道、数据通道与定制总线的响应通道、应答通道之间;报文通道转换模块进行报文通道转换的原则为:CHI总线数据通道发往定制总线从机的报文,全部由定制总线的响应通道发出;定制总线响应通道和应答通道发往CHI总线从机的带数据的报文通过CHI总线的数据通道发出;定制总线响应通道和应答通道发往CHI总线从机的不带数据的报文通过CHI总线的应答通道发出;
信用控制模块,分为CHI总线端信用控制模块和定制总线端信用控制模块,所述通用协议转换桥接收通道的信用值由对应通道的报文缓存FIFO深度决定,发送通道的信用值由通道对应接收方的实现决定,CHI总线的信用控制采用显式预授方式,信用值通过信用控制信号上的脉冲从报文接收方发给报文发送方,报文发送方拿到信用后发送报文给接收方;定制总线的信用控制采用隐式约定方式,报文发送方默认报文接收方拥有默认个数的信用,在初始化完成后可连续发出默认个数的报文,报文接收方每接收一个报文向报文发送方返回一个信用;
事务ID处理模块,包括事务ID监控模块、事务ID分配模块和事务ID还原模块,事务ID监控模块用于监控所有通过协议转换桥的事务,收集事务ID使用状态,每种事务的流程各不相同,所包含的报文也不同,同一种事务在不同配置下流程也会不同,协议桥需要根据事务类型及配置做相关处理,保证事务ID的监控完整正确;事务ID分配模块用于根据事务ID使用状态为新到达转换桥的事务分配ID,新分配的事务ID必须处于IDLE状态,CHI总线和定制总线协议的事务有两类:请求节点发出的请求事务、Home节点发出的监听事务,事务ID的分配也按照请求事务和监听事务分别处理;事务ID还原模块用于将重新分配了ID的事务的响应报文还原为原始请求报文的事务ID,返回给事务请求方,事务ID还原模块保证所述通用协议转换桥两端的事务ID完全独立,解决CHI总线和定制总线对事务ID不同的要求。
3.根据权利要求2所述的针对CHI总线的通用协议转换桥,其特征在于:所述事务层处理模块(2)包括报文类型转换模块和报文缺失域段填充模块,CHI总线协议与定制总线协议支持的报文类型不完成一致,同一报文类型的编码也不相同,报文类型转换模块用于将从CHI总线主机发往定制总线从机报文中CHI总线的报文类型转换为定制总线支持的报文类型,将从定制总线主机发往CHI总线从机报文中定制总线的报文类型转换为CHI总线支持的报文类型;报文缺失域段填充模块,用于在CHI总线主机报文转换为定制总线从机报文时,填充定制总线报文需要但CHI总线报文缺少的报文信息,填充的报文信息由在桥上新增的输入接口提供;合并或过滤CHI总线报文中存在但定制总线报文中不需要的报文信息。
4.根据权利要求3所述的针对CHI总线的通用协议转换桥,其特征在于:所述状态机(3)的状态包括IDLE状态、WAIT_FLIT_HEAD状态、FLIT_HEAD状态、FLIT_0状态、FLIT_1状态、FLIT_2状态、FLIT_3状态、WAIT_CREDIT状态,其中:
IDLE状态表示CHI总线主机发往定制总线从机的数据通路处于空闲状态,没有数据传输;当所述通用协议转换桥从CHI总线主机接收到完整的数据通道报文,一个完整的数据通道报文可以在1个始终拍、2个时钟拍或4个时钟拍内完成,状态机由IDLE状态进入WATI_FLIT_HEAD状态;
WAIT_FLIT_HEAD状态表示CHI总线的数据通路报文没有专门的头报文,定制总线的带数据报文均由一个头报文和若干数据报文组成,WAIT_FLIT_HEAD状态下由状态机控制从报文缓存模块读取数据,生成定制总线带数据报文的头报文;
FLIT_HEAD状态表示将生成好的带数据报文的头报文发往定制总线从机;
FLIT_0状态表示在信用可用状态下,向定制总线从机发送带数据报文的第1个数据;在信用不可用状态下,记录当前状态,并跳转到WAIT_CREDIT状态;如果数据报文携带的有效数据位数大于定制总线位宽,则状态机跳转到FLIT_1状态,否则跳转到IDLE状态;
FLIT_1状态表示在信用可用状态下,向定制总线从机发送带数据报文的第2个数据;如果数据报文携带的有效数据位数大于定制总线位宽的2倍,则状态机跳转到FLIT_2状态;
FLIT_2状态表示在信用可用状态下,向定制总线从机发送带数据报文的第3个数据;进入FLIT_2状态后,状态机必然跳转到FLIT_3状态;
FLIT_3状态表示在信用可用状态下,向定制总线从机发送带数据报文的第4个数据;
WAIT_CREDIT状态表示进入FLIT_HEAD状态、FLIT_0状态、FLIT_1状态、FLIT_2状态和FLIT_3状态前均需要检查信用状态,如信用耗尽,则状态机跳转到WAIT_CREDIT状态并记录原本将要跳转的状态,直到定制总线从机信用返回,状态机重新跳转到记录的状态;
CHI总线的数据通道报文支持乱序发送,同一个数据报文的多拍数据间允许发送其他数据报文,在所述通用协议转换桥接收到完整的数据报文前,不会进入状态机处理流程。
5.根据权利要求4所述的针对CHI总线的通用协议转换桥,其特征在于:所述报文缓存模块(4)包括CHI总线和定制总线的各通道缓存FIFO和报文信息记录RAM,CHI总线和定制总线的各通道缓存FIFO用于缓存转换桥接收到的各通道的报文,在信用可用状态时读出发往目标端;转换桥内部报文信息记录RAM用于记录CHI总线和定制总线的请求通道和监听通道的报文信息,为事务后续报文的域段填充和事务ID还原提供数据。
6.一种SoC,包括CHI总线和定制总线,其特征在于,所述CHI总线的CHI总线接口、所述定制总线的定制总线接口之间设有权利要求1~5中任意一项所述针对CHI总线的通用协议转换桥。
7.一种计算机设备,该计算机设备包括CHI总线和定制总线,其特征在于,所述CHI总线的CHI总线接口、所述定制总线的定制总线接口之间设有权利要求1~5中任意一项所述针对CHI总线的通用协议转换桥。
8.一种移动终端设备,该移动终端设备包括CHI总线和定制总线,其特征在于,所述CHI总线的CHI总线接口、所述定制总线的定制总线接口之间设有权利要求1~5中任意一项所述针对CHI总线的通用协议转换桥。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010597470.6A CN111611187B (zh) | 2020-06-28 | 2020-06-28 | 一种针对CHI总线的通用协议转换桥及SoC |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010597470.6A CN111611187B (zh) | 2020-06-28 | 2020-06-28 | 一种针对CHI总线的通用协议转换桥及SoC |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111611187A true CN111611187A (zh) | 2020-09-01 |
CN111611187B CN111611187B (zh) | 2021-11-26 |
Family
ID=72203928
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010597470.6A Active CN111611187B (zh) | 2020-06-28 | 2020-06-28 | 一种针对CHI总线的通用协议转换桥及SoC |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111611187B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113434460A (zh) * | 2021-08-26 | 2021-09-24 | 长沙海格北斗信息技术有限公司 | SoC架构中的多总线拓扑系统及总线互连方法 |
CN113867796A (zh) * | 2021-12-02 | 2021-12-31 | 南湖实验室 | 利用多状态机提高读性能的协议转换桥及实现方法 |
CN114024714A (zh) * | 2021-09-30 | 2022-02-08 | 山东云海国创云计算装备产业创新中心有限公司 | 一种访问请求处理方法、装置、网卡设备及存储计算系统 |
US20220283972A1 (en) * | 2021-03-02 | 2022-09-08 | Arm Limited | Technique for handling protocol conversion |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1620063A (zh) * | 2003-10-28 | 2005-05-25 | 英特尔公司 | 计算机系统中的基于信用的流动控制的方法、系统和设备 |
CN102447692A (zh) * | 2010-09-30 | 2012-05-09 | 马克西姆综合产品公司 | 用于slpi协议的模拟前端协议转换器/适配器 |
CN104731746A (zh) * | 2013-12-20 | 2015-06-24 | 上海华虹集成电路有限责任公司 | 设备控制器装置 |
CN107562673A (zh) * | 2017-08-28 | 2018-01-09 | 上海集成电路研发中心有限公司 | 一种应用于嵌入处理器总线协议转换桥接装置 |
-
2020
- 2020-06-28 CN CN202010597470.6A patent/CN111611187B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1620063A (zh) * | 2003-10-28 | 2005-05-25 | 英特尔公司 | 计算机系统中的基于信用的流动控制的方法、系统和设备 |
CN102447692A (zh) * | 2010-09-30 | 2012-05-09 | 马克西姆综合产品公司 | 用于slpi协议的模拟前端协议转换器/适配器 |
CN104731746A (zh) * | 2013-12-20 | 2015-06-24 | 上海华虹集成电路有限责任公司 | 设备控制器装置 |
CN107562673A (zh) * | 2017-08-28 | 2018-01-09 | 上海集成电路研发中心有限公司 | 一种应用于嵌入处理器总线协议转换桥接装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220283972A1 (en) * | 2021-03-02 | 2022-09-08 | Arm Limited | Technique for handling protocol conversion |
US11537543B2 (en) * | 2021-03-02 | 2022-12-27 | Arm Limited | Technique for handling protocol conversion |
CN113434460A (zh) * | 2021-08-26 | 2021-09-24 | 长沙海格北斗信息技术有限公司 | SoC架构中的多总线拓扑系统及总线互连方法 |
CN114024714A (zh) * | 2021-09-30 | 2022-02-08 | 山东云海国创云计算装备产业创新中心有限公司 | 一种访问请求处理方法、装置、网卡设备及存储计算系统 |
CN113867796A (zh) * | 2021-12-02 | 2021-12-31 | 南湖实验室 | 利用多状态机提高读性能的协议转换桥及实现方法 |
CN113867796B (zh) * | 2021-12-02 | 2022-02-22 | 南湖实验室 | 利用多状态机提高读性能的协议转换桥及实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111611187B (zh) | 2021-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111611187B (zh) | 一种针对CHI总线的通用协议转换桥及SoC | |
KR100687659B1 (ko) | Axi 프로토콜에 따른 락 오퍼레이션을 제어하는네트워크 인터페이스, 상기 네트워크 인터페이스가 포함된패킷 데이터 통신 온칩 인터커넥트 시스템, 및 상기네트워크 인터페이스의 동작 방법 | |
CN101052013B (zh) | 一种网络设备内部管理通道实现的方法及系统 | |
US8990460B2 (en) | CPU interconnect device | |
US7254603B2 (en) | On-chip inter-network performance optimization using configurable performance parameters | |
CN109634900B (zh) | 一种基于axi协议的多层次低延迟互连结构 | |
US20030208566A1 (en) | Composing on-chip interconnects with configurable interfaces | |
JP7266698B2 (ja) | 信号処理チップ、及び信号処理システム | |
US20120030380A1 (en) | Transmission device, transmission method, and control program for transmission device | |
US9116881B2 (en) | Routing switch apparatus, network switch system, and routing switching method | |
US7917728B2 (en) | Integrated circuit and method for transaction retraction | |
JP3989376B2 (ja) | 通信システム | |
CN116431558B (zh) | 一种基于axi协议的请求响应方法、装置、系统及介质 | |
US6799227B2 (en) | Dynamic configuration of a time division multiplexing port and associated direct memory access controller | |
US11636061B2 (en) | On-demand packetization for a chip-to-chip interface | |
CN112468162A (zh) | 双发万兆网中频信号处理机和双路径系统及数据传输方法 | |
CN105915286A (zh) | 数据分流方法及分流器 | |
CN115277299B (zh) | 一种适用于级联型变换器拓扑的同步环路通信系统 | |
CN115827532B (zh) | 一种PCIe HBA IOC内部总线网络互联方法 | |
KR100480951B1 (ko) | 하나의 물리채널을 다수 개의 가상채널로 확장한 다중접속통신장치 | |
CN217428141U (zh) | 网卡、通信设备及网络安全系统 | |
CN118210749A (zh) | 基于SerDes的AXI3总线片间桥接方法及系统 | |
CN114490474B (zh) | 一种通过cpld实现多路uart接口扩展的系统 | |
RU187642U1 (ru) | Устройство коммуникационного интерфейса gigaspacewire | |
CN112398921A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |