G06F13/38 G06F13/40
1.一种片上系统总线(10),用于主设备和从设备之间的通信,其特 征在于,包括请求优先级队列(201)、仲裁器组(202)、地址与控制信号 选择器(204)、互联网络(206)及地址译码器(207);其中,
所述主设备发送总线请求信号至所述地址译码器(207),并发送对应 的地址信号和控制信号至所述地址与控制信号选择器(204);
所述地址译码器(207)根据所述总线请求信号,向仲裁器组发送即 时申请向量,同时将所述即时申请向量发送至请求优先级队列(201);
所述请求优先级队列(201)将所述即时申请向量锁存,生成片选信 号,并将所述片选信号发送至所述互联网络(206),同时,生成队列申请 向量发送至所述仲裁器组(202);
所述仲裁器组(202)根据所述申请信号发出仲裁结果信号给所述地 址与控制信号选择器(204)和所述互联网络;
所述地址与控制信号选择器(204)根据所述仲裁结果信号选择所述 主设备的地址信号与控制信号,并传输至所述从设备;
所述互联网络(206)根据所述仲裁结果信号选择主设备至从设备方 向的数据和握手信号,并根据所述片选信号控制从设备至主设备方向的数 据和握手信号。
2.根据权利要求1所述的片上系统总线(10),其特征在于,还包括 一个地址与控制信号存储器(203),所述仲裁器组(202)还返回一个授 权信号给请求优先级队列(201),根据所述授权信号使所述主设备的所述 总线请求信号进入所述请求优先级队列(201),同时使所述主设备的地址 信号和所述控制信号进入地址与控制信号存储器(203)。
3.根据权利要求2所述的片上系统总线(10),其特征在于,还包括 一个第一选择器(208),当所述请求优先级队列(201)为空时,所述请 求优先级队列(201)发送队列空信号至所述第一选择器的控制端,所述 第一选择器直接选择所述主设备发送的地址信号和控制信号至所述地址 与控制信号选择器(204),否则,所述第一选择器选择所述地址与控制信 号存储器(203)中的地址信号和控制信号至所述地址与控制信号选择器 (204)。
4.根据权利要求1所述的片上系统总线(10),其特征在于,还包括 一个第二选择器,当所述请求优先级队列(201)为空时,所述请求优先 级队列(201)发送队列空信号至所述第二选择器的控制端,所述第二选 择器直接选择地址译码器(207)发送的即时申请向量至所述仲裁器组 (202),否则,所述第二选择器选择所述请求优先级队列(201)发送的 队列申请向量至所述仲裁器组(202)。
5.根据权利要求1所述的片上系统总线(10),其特征在于,所述仲 裁器组(202)包括至少一个仲裁器,所述仲裁器的数量与所述从设备的 数量相同。
6.根据权利要求5所述的片上系统总线(10),其特征在于,所述仲 裁器中的仲裁逻辑为优先编码器。
7.根据权利要求1所述的片上系统总线(10),其特征在于,还包括 仲裁结果寄存器(205),所述仲裁器组(202)先发送所述仲裁结果信号 至所述仲裁结果寄存器(205),再通过所述仲裁结果寄存器(205)将仲 裁结果信号发送至所述互联网络(206)。
8.根据权利要求1所述的片上系统总线(10),其特征在于,所述请 求优先级队列(201)包括:第一存储器(501)、第二存储器(502)及第 三存储器(503),其中,所述第一存储器(501)用于存储有效的地址译 码值,所述第二存储器(502)用于存储从设备组最大优先值,所述第三 存储器(503)用于存储主设备优先值。
9.根据权利要求1所述的片上系统总线(10),其特征在于,其按如 下协议进行信号传输:
所述主设备在本周期发送完信号后,无需等待授权信号,在下一个周 期直接发送写数据至所述从设备,并监听所述从设备发送的握手信号。
10.根据权利要求1所述的片上系统总线(10),其特征在于,其通 过一个或多个时钟周期使所述主设备发送的信号传输至所述从设备。
11.根据权利要求1所述的片上系统总线(10),其特征在于,所述 主设备发送的控制信号中带有主设备时序信息,通过所述主设备时序信息 控制所述从设备的响应周期,以匹配所述主设备与所述从设备之间的传输 速率。
本发明属于片上通信领域,尤其涉及一种具有非等时传输结构的片上 系统总线。
随着集成电路技术的发展,片上系统需求更多的处理器核、协处理器 核以及更多的片上外设。而且多媒体、通信等技术的快速发展,要求片上 的各设备之间拥有高速、并行、实时的通信方式。
为了追求更高的传输速率,系统总线的频率在不断提高,但是因为多 核、多外设等更多的功能需求,即使在更精密工艺的支持下,芯片的面积 也在不断的膨胀,这导致片上设备传输时间与总线频率之间的矛盾。当前 存在的多种总线系统,使用在大面积芯片中的高频高带宽系统上时,若将 数据进行流水式的传输,者将导致使用较多的流水线寄存器,消耗大量资 源;否则只能降低总线时钟频率,这样就影响总线整体的性能。
如果只有一条数据总线,当两个设备进行数据通信时,其他设备如果 希望对另一个设备进行访问,虽然设备与设备之间并不冲突,但是该设备 只能等待,或者允许更高优先级的设备打断当前的通信。单数据总线限制 了整个系统的数据吞吐量,对数据吞吐量要求较高的系统需要多组设备之 间同时进行通信:只要不是因为设备产生相关(例如两个主设备同时访问 一个从设备),就可以并行的进行通信。
图1是现有技术的某个系统中片上设备的连接示意图,其中从设备0 (从0)只能由主设备0和主设备1访问,从设备1、从设备组2可以被 所有主设备访问。从设备0、从设备1和从设备组2可以并行得被三个不 同的主设备访问。图中结构10即总线的简单示意。总线的仲裁机制可以 使高优先级的设备优先使用总线,于是较低优先级的设备就需要等待。若 没有适当的方式,当优先级较高的设备不断发出总线请求,低优先级设备 会长时间得不到总线的使用权。对于实时性要求较高的系统,例如通信系 统,需要总线有能力保证一个设备在指定的总线周期之内,获得总线的使 用权。
(一)要解决的技术问题
本发明的目的在于,提供了一种片上系统总线,特别是在大面积芯片 上不同的主从设备之间具有不同的传输时间(时钟周期),实现高速、并 行、实时的设备间通信。
(二)技术方案
本发明提供一种片上系统总线,用于主设备和从设备之间的通信,包 括请求优先级队列、仲裁器组、地址与控制信号选择器、互联网络及地址 译码器;其中,
主设备发送总线请求信号至地址译码器,并发送对应的地址信号和控 制信号至地址与控制信号选择器;
所述地址译码器根据所述总线请求信号,向仲裁器组发送即时申请向 量,同时将所述即时申请向量发送至请求优先级队列;
所述请求优先级队列将所述即时申请向量锁存,生成片选信号,并将 所述片选信号发送至所述互联网络,同时,生成队列申请向量发送至所述 仲裁器组;
仲裁器组根据申请信号发出仲裁结果信号给地址与控制信号选择器, 地址与控制信号选择器根据仲裁结果信号选择主设备的地址信号与控制 信号,并传输至从设备;
仲裁器组还发送仲裁结果信号至互联网络,互联网络根据仲裁结果信 号选择主设备至从设备方向的数据和握手信号,互联网络还根据片选信号 控制从设备至主设备方向的数据和握手信号。
(三)有益效果
1、本发明提供一种片上系统总线,在该总线中允许设备之间的传输 周期不同,而总线频率由其中传输时间较短的设备决定,传输距离多于一 个总线周期的设备间路径由多周期路径进行约束,使得以统一的总线形式, 最小的硬件开销解决了在大面积芯片上总线频率与设备间传输时间的矛 盾,总线频率因此可以根据设计需求而更高;传输时间短的设备之间可以 以总线周期进行高速的数据传输;传输时间较长的设备之间的无需使用流 水寄存器以及总线代理,减少资源消耗。
2、本发明提供的片上系统总线,给出了相应总线协议,该协议是单 边沿的流水式总线协议,该协议将总线申请、地址和控制信号的发送与数 据的发送分在两个流水级进行操作,关键是不需要额外的总线申请操作, 在申请总线时给出地址和控制信号,下一拍根据握手信号接发数据,使得 单边沿操作保证了高总线频率,流水式操作以及无需额外的总线申请时间, 保证了即使在总线交接时的总线效率;特别的,在非突发传输时,多周期 路径的主设备不会影响总线和从设备的响应效率。
3、本发明提供的片上系统总线,具有请求优先级队列,以进入队列 的先后决定请求的优先级,保证了设备请求响应的实时性。
图1是现有技术中片上系统设备连接的简单示意图。
图2是本发明实施例提供的片上系统总线的结构图。
图3是本发明实施例中仲裁器组的结构图。
图4是本发明实施例中主从设备之间3对3全互联示意图。
图5是本发明实施例中申请优先级队列的结构图。
图6是本发明实施例中主设备和从设备的接口框图。
图7是本发明实施例中主从设备间一对一的传输时序图。
图8是本发明实施例中主线交接时序图。
图9是本发明实施例中一个双周期路径和一个单周期路径的主设备相 互使用总线进行读写的时序图。
图10本发明实施例中是一个突发写时序以及总线交接时序图。
图11本发明实施例中是两周期路径的突发传输时序图。
图12本发明实施例中是多个主设备同时竞争一个总线的时序图。
本发明提供一种片上系统总线,包括请求优先级队列、仲裁器组、地 址与控制信号选择器、互联网络及地址译码器;主设备发送总线请求信号 至地址译码器,并发送对应的地址信号和控制信号至地址与控制信号选择 器;地址译码器根据总线请求信号,向仲裁器组和请求优先级队列发送即 时申请向量;请求优先级队列将申请信号锁存,生成片选信号,并将片选 信号发送至互联网络,同时,根据先进先出原则给出每个从设备组的申请 向量,队列空直接选择地址译码器的结果作为当前周期的申请信号发送到 仲裁器组;仲裁器组根据申请信号发出仲裁结果信号给地址与控制信号选 择器,地址与控制信号选择器根据仲裁结果信号选择主设备的地址信号与 控制信号,并传输至从设备仲裁器组还发送仲裁结果信号至互联网络,互 联网络根据仲裁结果信号选择主设备至从设备方向的数据和握手信号,互 联网络还根据片选信号控制从设备至主设备方向的数据和握手信号。
在一种实施方式中,该片上系统总线还包括一个地址与控制信号存储 器,所述仲裁器组还返回一个授权信号给请求优先级队列,根据授权信号 使主设备的总线请求信号进入请求优先级队列,同时使主设备的地址信号 和控制信号进入地址与控制信号存储器。
在一种实施方式中,该片上系统总线还包括一个第一选择器,当请求 优先级队列为空时,请求优先级队列发送队列空信号至第一选择器的控制 端,第一选择器直接选择主设备发送的地址信号和控制信号至地址与控制 信号选择器,否则,第一选择器选择地址与控制信号存储器中的地址信号 和控制信号至地址与控制信号选择器。
在一种实施方式中,该片上系统总线还包括一个第二选择器,当请求 优先级队列为空时,请求优先级队列发送队列空信号至第二选择器的控制 端,第二选择器直接选择地址译码器发送的申请信号至仲裁器组,否则, 第二选择器选择请求优先级队列发送的申请信号至仲裁器组。
在一种实施方式中,仲裁器组包括一个或多个仲裁器,仲裁器的数量 与从设备的数量相同。
在一种实施方式中,仲裁器中的仲裁逻辑为优先编码器。
在一种实施方式中,该片上系统总线还包括仲裁结果寄存器,仲裁器 组先发送所述仲裁结果信号至所述仲裁结果寄存器,再通过所述仲裁结果 寄存器将仲裁结果信号发送至所述互联网络。
在一种实施方式中,主设备在本周期发送完信号后,无需等待授权信 号,在下一个周期直接发送写数据至从设备,并监听所述从设备发送的握 手信号。
在一种实施方式中,片上系统总线通过一个或多个时钟周期使主设备 发送的信号传输至从设备。
在一种实施方式中,主设备发送的控制信号中带有主设备时序信息, 通过主设备时序信息控制所述从设备的响应周期,以匹配主设备与从设备 之间的传输速率。本发明的片上系统总线在大面积芯片上不同的主从设备 之间具有不同的传输时间(时钟周期),实现高速、并行、实时的设备间 通信。
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实 施例,并参照附图,对本发明进一步详细说明。
图2是本发明提供的片上系统总线的结构图,如图2所示,总线10 包括请求优先级队列201、仲裁器组202、地址与控制信号存储器203、地 址与控制信号选择器204、仲裁结果寄存器205、互联网络206、地址译码 器207、第一选择器208及第二选择器209(图中结构框图的左下角有时 钟输入三角标记的表示该结构是时序逻辑或其中存在时序逻辑,该标记适 用于本文中的其他图)。每个主设备可以在任何时刻发出总线请求信号, 同时给出该请求的地址和控制信号;地址译码器207根据主设备给出的地 址向对应的从设备(组)给出即时申请向量,并将即时申请向量发送至请 求优先级队列201,锁存后作为片选信号控制从设备端至主设备端方向的 数据选择,同时请求优先级队列根据先入先出的原则,给出队列申请向量; 针对每个从设备(组),根据请求优先级队列201中对应从设备队列的“队 列空”信号,如果空则选择即时申请向量,如果非空则选择队列申请向量, 选择结果作为仲裁器组202的输入即总线请求信号;经过仲裁后,每个仲 裁器的结果返回应答信号给请求优先级队列201,使能没有被即时授予总 线的请求进入请求优先级队列201,同时相关的地址/控制信号进入地址与 控制信号存储器203中,而被授予总线的主设备的地址与控制信号由仲裁 结果控制地址与控制信号选择器204选择传输至每个从设备端口,由从设 备进行锁存,便于下一周期读写数据;同时仲裁结果也将锁存在仲裁结果 寄存器205,用于互联网络206选择主设备至从设备方向的数据(写数据) 和握手信号,锁存在请求优先级队列201中的片选信号将控制互联网络 206从设备至主设备方向的数据(读数据)和握手信号。主设备在送出请 求信号的下一个操作周期,就可以给出写数据或者读取来自从设备的数据, 同时给出下一个总线请求。其中,仲裁器组202中的仲裁器数量与当前从 设备(组)的数量相同,两者的对应关系如图1中仲裁器和从设备(组) 的对应关系。
图3是本实施例中仲裁器202的内部结构图。首先每个仲裁器的输入 是一个位宽与可以访问该从设备(组)的主设备数量相同的一个申请向量, 向量中值为“高”表示对应主设备需要申请对该从设备(组)的访问,而 仲裁逻辑就是从这些申请中选择一个主设备给予总线。因为总线申请优先 级队列201的存在,此处的仲裁逻辑的主要作用就是从同时申请总线的主 设备中选择一个,所以仲裁逻辑可以是一个较为简单的固定优先级的仲裁 逻辑,比如优先编码器。每个仲裁器输出是与输入同样位宽的向量,有效 输入对应的输出是“独热”的,即只有一个主设备被授予总线;无效输入 (0向量)对应无效输出(0向量)。每个仲裁器的输出将会控制对应从设 备(组)的输入选择,被授权主设备的数据/控制信号可以驱动该从设备(组) 的数据/控制总线。针对同一个主设备,每个仲裁器都会给出授权信号,将 所有对应主设备的授权位进行“或”操作,就是该主设备的授权信号,该 信号主要用于控制总线上的存储逻辑:请求优先级队列201,地址与控制 信号存储器203。
图4是本实施例中互联网络206的一个3对3全互联示例图。其中, 仲裁结果寄存器205的值用于选择主设备至从设备方向的选择器,请求优 先级队列201中的片选信号用于选择从设备至主设备方向的选择器。其中 地址与控制信号选择器204与图4中右侧一列的选择器相似,不同点在于, 地址与控制信号选择器204的选择信号并不是寄存之后的仲裁结果,而是 当前由仲裁器产生的仲裁结果。
图5是本实施例中请求优先级队列201的结构图。其包括第一存储器 501、第二存储器502及第三存储器503,其中,第一存储器201用于存储 有效的地址译码值,存储大小为m×n位(m表示主设备数,n表示从设 备组数,下同);第二存储器502用于存储从设备组最大优先值,存储大 小为n×log2m,即每个从设备组对应一个宽度为log2m的存储器;第三存 储器503用于存储主设备优先值,存储大小为m×log2m,即每个主设备 对应一个log2m的存储器。存储器502的初始值为0,表示对应从设备组 的申请队列为空,以此产生的队列空信号用于控制第一选择器208和第二 选择器209。第三存储器503是每个主设备的优先级,当有请求没有被即 时授权需要入列,选择申请对象的第二存储器502的“自增1”值作为该 主设备的优先值,同时该第二存储器502也需要“自增1”。队列输出时只 选择优先值等于“1”的主设备的请求作为输出。当输出中针对某个从设 备组的请求是独热的,且该从设备组给出有效“SValid”信号,则对应第 二存储器502需要“自减1”,该“自减1”信号通过片选信号选择,使能 主设备优先值“自减1”。对于第二存储器502,当“自增1”信号与“自 减1”信号相同(“同或”),则保持原值。
下文描述该总线的使用方法,即其总线协议。
从主设备发起总线请求到使用总线传输数据分为两位阶段,阶段一是 主设备发起请求,阶段二是主从设备间数据传输。阶段一和阶段二是总线 操作中的两个流水级,即在第一个请求进行阶段二时,主设备可以同时给 出第二个请求(针对同一从设备组)的阶段一的信号。
S1主设备发送请求、地址和控制信号,同时判断输入从设备有效信 号,这属于阶段一;
S2在从设备有效为高后,在下一个时钟周期,若是写操作,主设备 发送写数据,并给出主设备有效信号,若是读操作,主设备在从设备有效 信号为高时锁存读数据,这属于阶段二;
S3在S2进行的同时,主设备可以同时进行下一个总线请求的S1;
S4在S1进行的同时,从设备将接收到主设备发出的地址和控制信号 锁存,这属于阶段一;
S5在S2进行的同时,根据地址和控制信号,若是写操作,则从设备 在主设备有效信号为高时将写数据写入对应地址,若是读操作,则发送对 应地址的数据及从设备有效信号,这属于阶段二;
S6在S5进行的同时,从设备可以根据主设备进行的下一个S1而进 行S4。
与其他的片上总线协议不同在于,其他片上总线需要一个单独的总线 申请环节,总线授权之后设备占有总线,发送地址信号、控制信号以及读 写数据;而本发明中,将总线申请与地址、控制信号同时发出作为阶段一, 只要当前申请优先级队列中没有对应主设备的申请向量,则自动进入阶段 二,发送写数据或接收读数据,若双方握手信号有效则结束本次请求(突发 操作除外)。
每个设备的操作周期并不相同,具体操作时间由主设备与总线控制、 选择逻辑之间的传输时间决定。主设备的信号传输到某个特定的结构所需 的时间超过当前总线频率要求的周期,则该设备将自动降频至相应的频率 采样来自总线的数据和握手信号。当一个从设备接受到多周期路径主设备 的突发请求,从设备也自动降频至相应的频率进行数据和握手信号采样。
图6是本发明中主设备和从设备的接口框图。其中数据位宽根据设备 实际位宽需求而确定,一般位宽为16/32/64/128位。控制信号(Ctrl)中 至少包含读/写、突发、主设备时序信息等控制信息。从设备的片选信号(Sel) 用于从设备组中,若某仲裁器对应单一的从设备,则该从设备无须该信号。
表1是对主从设备接口信号的具体描述。
表1
图7所示的时序图,是针对某个从设备(组)且对应请求队列为空时, 某个主设备对该从设备(组)的访问时序图。图中主设备连续发出了四次 非突发读/写请求,其中SValid信号由从设备发出的握手信号,总线以及 主设备通过读取该信号确定当前数据是否结束当前操作,或者维持上一周 期的数据。其中Req信号表示当前该主设备提出一次有效的总线申请,该 信号主要作为申请优先级队列201的入队使能信号之一,如果该请求没有 被授权,则会进入请求队列中。图中由于对于地址C的请求无法及时响应, 主设备在维持写数据输出的同时,也需要维持其对地址D的请求,因为 SValid信号为低时当前请求无法进入队列。
图8所示是针对某个从设备(组)且对应请求队列为空时,两个主设 备交接总线的时序示意图。图中两个主设备在连续的两个周期中分别发出 总线请求,并且顺利的无等待的获得了总线的使用权。
图9是一个双周期路径和一个单周期路径的主设备相互使用总线进行 读写的时序图。其中后缀是“_p1”的信号表示该条信号靠近输出端的值, “_p2”表示靠近输入端的值。“WData
本文发布于:2023-04-14 01:11:24,感谢您对本站的认可!
本文链接:https://patent.en369.cn/patent/1/86858.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |