一种dcr总线和apb总线之间的总线桥的制作方法

文档序号:6627979阅读:387来源:国知局
一种dcr总线和apb总线之间的总线桥的制作方法
【专利摘要】本发明提供一种DCR总线到APB总线之间的总线桥,所述的总线桥使用地址比较逻辑单元,用于确定总线桥是否接收DCR总线的请求;使用协议转换正向数据通路单元,用于将接收的DCR总线请求的地址信号,控制信号和写数据信号转换为符合APB总线协议的地址信号,控制信号和写数据信号。使用协议转换反向数据通路单元,用于将接收的APB总线协议的应答信号和读数据信号转换为符合DCR总线协议的应答信号和读数据信号。本发明的优点是:可以将DCR总线标准通过该总线桥映射为APB总线标准。该总线桥可以作为一个IP连接DCR总线和APB总线,将符合DCR总线协议的读写请求转换为符合总线协议的读写请求。
【专利说明】-种DCR总线和APB总线之间的总线桥

【技术领域】
[0001] 本发明属于处理器总线【技术领域】,尤其是涉及一种DCR总线和APB总线之间的总 线桥。

【背景技术】
[0002] 片上系统(System-on-chip,SoC)尽年来正逐渐成为集成电路设计中的主流发展 趋势。可重复使用的集成电路IC(integrated circuit)模块越来越多的在SoC芯片设计 中应用,因此SoC芯片的设计速度显著地加快。这种可重复使用的1C模块又被称为IP。IP 是具有知识产权(Intellectual Property)的集成电路芯核的简称。IP被预先设计好,经 过验证,并且具有某种确定功能。
[0003] 设备控制寄存器总线(Devices Control Register, DCR)和高级外围总线 (Advanced Peripheral Bus,APB)是片上系统模块中重要的寄存器配置接口。在工业控制, 航空航天等领域的SoC芯片使用的处理器中,PowerPC处理器占据了很大的份额,DCR总线 是其重要的寄存器配置接口。而随着SoC芯片复杂性和规模性的增加,越来越多的具有APB 寄存器配置接口的IP需要应用在一个PowerPC处理器的SoC芯片中。为了能够使PowerPC 处理器通过DCR寄存器配置接口访问具有APB配置寄存器接口的IP,该IP的配置寄存器接 口需要修改,以兼容DCR总线协议,这样的修改非常不利于IP的可重复使用。


【发明内容】

[0004] 本发明要解决的问题是提供一种DCR总线和APB总线之间的总线桥,可以将DCR 总线标准通过该总线桥映射为APB总线标准。
[0005] 为解决上述技术问题,本发明采用的技术方案是:
[0006] 一种DCR总线和APB总线之间的总线桥,包括:
[0007] 地址比较逻辑单元,负责判断DCR读或写请求的地址是否在所连接的APB接口设 备允许访问的范围内,即是否能接收该DCR请求;如果在允许范围内,进行DCR协议到APB 协议的转换;否则,不做协议转换;
[0008] 协议转换正向数据通路单元,用于将接收的DCR总线请求的地址信号,控制信号 和写数据信号转换为符合APB总线协议的地址信号,控制信号和写数据信号
[0009] 协议转换反向数据通路单元,用于将接收的APB总线协议的应答信号和读数据信 号转换为符合DCR总线协议的应答信号和读数据信号。
[0010] 进一步的,所述地址比较逻辑单元包括两个比较器、两个与门和一非门;两个比较 器的输出端连接一与门的输入端,其输出端和非门的输出端作为另一个与门的输入端,两 个比较器实现DCR请求的地址信号DCR_ADDR分别与硬件固化的DCR总线地址的最大值和 最小值的比较,DCR请求的控制信号DCR_READ和DCR_WRITE作为非门的输入信号。
[0011] 进一步的,所述协议转换正向数据通路单元包括两个电路结构相同的第一转换电 路和第二转换电路,均由依次连接的一脉冲产生电路、多路选择器一、多路选择器二、一寄 存器组成,寄存器的输出端连接多路选择器一的一个输入端,其中脉冲产生电路的输出信 号作为多路选择器一的通道选择信号,第一转换电路的寄存器的输出端连接第二转换电路 的脉冲产生电路的输入端;地址比较逻辑单元的输出信号作为第一转换电路的脉冲产生电 路的输入信号,APB总线的应答信号APB_PREADY作为第一转换电路和第二转换电路的多路 选择器二的通道选择信号。
[0012] 进一步的,所述协议转换反向数据通路单元包括应答信号转换电路和读数据信号 转换电路,
[0013] 所述应答信号转换电路包括依次连接的一脉冲产生电路、多路选择器三、多路选 择器四、寄存器;APB总线的应答信号APB_PREADY作为脉冲产生电路的输入信号,脉冲产生 电路的输出信号作为多路选择器三的通道选择信号,寄存器的输出端连接多路选择器三的 一输入端,DCR请求的控制信号DCR_READ和DCR_WRITE依次经过或门、非门后的信号作为 多路选择器四的通道选择信号;
[0014] 所述读数据信号转换电路包括多路选择器五、多路选择器六、两个寄存器,所述应 答信号转换电路的脉冲产生电路的输出端连接多路选择器五的通道选择端,APB总线的读 数据信号apb_rdata从多路选择器五输入后经一寄存器的输出信号,一个分支作为多路选 择器五的输入信号,另一个分支作为多路选择器六的输入信号;地址比较逻辑单元的输出 信号和DCR请求的控制信号DCR_READ依次经过一与门、另一个寄存器后作为多路选择器六 的通道选择电路。
[0015] 本发明具有的优点和积极效果是:
[0016] 可实现将符合DCR总线协议的读写请求转换为符合APB总线协议的读写请求,可 以将DCR总线标准通过该总线桥映射为APB总线标准;可以作为一个IP连接DCR总线和 APB总线;
[0017] 数字电路简单,实现方便。

【专利附图】

【附图说明】
[0018] 图1是本发明所述总线桥和DCR总线,APB总线的连接关系示意图;
[0019] 图2是本发明所述总线桥的结构框图;
[0020] 图3是本发明地址比较逻辑单元的一种具体实施电路;
[0021] 图4是本发明协议转换正向数据通路单元的一种具体实施电路;
[0022] 图5是本发明协议转换反向数据通路单元的一种具体实施电路;
[0023] 图6是本发明所述总线桥的工作流程图。

【具体实施方式】
[0024] 为了使本【技术领域】的人员更好地理解本申请中的技术方案,下面将结合本申请实 施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施 例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通 技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护 的范围。
[0025] 本发明的DCR总线和APB总线的连接关系如图1所示,DCR总线接口的处理器100 发出寄存器配置读或写请求,该请求符合DCR总线协议;该请求传递到DCR总线101上的总 线桥102上;该总线桥将接收符合DCR总线协议的读写请求,并转换为符合APB总线协议的 读写请求;转换后的符合APB总线协议的读写请求通过APB总线103传递到具有APB接口 的设备104。
[0026] 本申请一种DCR总线和APB总线之间的总线桥,总线桥102包括地址比较逻辑单 元201、协议转换正向数据通路单元202和协议转换反向数据通路单元203,如图2所示,
[0027] 所述地址比较逻辑单元201,负责判断DCR读或写请求的地址是否在所连接的APB 接口设备允许访问的范围内,即是否能接收该DCR请求;如果在允许范围内,进行DCR协议 到APB协议的转换;如果不在,不接收该DCR请求,即不做协议转换;
[0028] 所述协议转换正向数据通路单元202,用于将接收的DCR总线请求的地址信号,控 制信号和写数据信号转换为符合APB总线协议的地址信号,控制信号和写数据信号
[0029] 所述协议转换反向数据通路单元203,用于将接收的APB总线协议的应答信号和 读数据信号转换为符合DCR总线协议的应答信号和读数据信号。
[0030] 具体的,地址比较逻辑单元201的一种具体实施电路如图3所示,包括两个比较 器、两个与门和一非门;其中APB接口的设备能容许的访问地址范围映射为DCR总线地址的 最大值和DCR总线地址的最小值,上述最大值和最小值的地址映射关系确定后,固化成硬 件参数;收到的DCR请求的地址信号DCR_ADDR分别通过两个比较器与硬件固化的DCR总线 地址的最大值和DCR总线地址的最小值进行比较,比较后的结果通过一个与门实现只有当 DCR请求的访问地址在DCR总线地址的最大值和DCR总线地址的最小值所确定的范围内,该 DCR请求才会被接收;
[0031] 在该具体实施方法中,还使用了 DCR请求的控制信号DCR_READ和DCR_WRITE,先通 过一个或门将DCR_READ和DCR_WRITE信号进行逻辑或运算,将运算结果和上述得到的地址 比较结果通过一个与门进行逻辑与运算,实现只有当DCR_READ和DCR_WRITE信号的其中之 一有效时,地址比较逻辑的结果才会被输出;目的是只有当DCR总线上出现符合DCR协议的 请求时,地址译码逻辑才会输出有效的结果;而当DCR总线没有请求时,地址译码逻辑的输 出被屏蔽。
[0032] 在本具体实施例中,地址比较逻辑单元201输出的结果ADDR_HIT为1时,表示DCR 总线上有符合DCR总线协议的读或写请求,并且该请求的地址在所连接的APB设备容许的 访问地址范围内,能够被接收;如果ADDR_HIT为0,表示DCR总线上没有请求或DCR请求的 访问地址超出了所连接的APB设备容许的访问地址范围而不被接收;其中图3为本发明所 述总线桥的地址比较逻辑的一种具体实施电路,还可以有其它的实施方法比如将DCR地址 某高位地址段和某一个硬件固化参数比较作为判断依据的实现电路。
[0033] 地址转换逻辑单元201的输出ADDR_HIT为1时,协议转换正向数据通路单元202 和协议转换反向数据通路单元203才会工作。
[0034] 具体的,所述协议转换正向数据通路单元202的一种具体实施电路如图4所示:包 括两个电路结构相同的第一转换电路和第二转换电路,均由依次连接的一脉冲产生电路、 多路选择器一、多路选择器二、一寄存器组成;寄存器的输出端连接多路选择器一的一个输 入端,其中脉冲产生电路的输出信号作为多路选择器一的通道选择信号,第一转换电路的 寄存器的输出端连接第二转换电路的脉冲产生电路的输入端;
[0035] APB总线的地址信号APB_PADDR,写数据信号APB_PWDATA和写控制信号APB_ PWRITE由DCR请求的地址信号DCR_ADDR,写数据信号DCR_WRBUS和写请求信号DCR_WRITE 直接映射;
[0036] APB总线的控制信号APB_PSEL和APB_PENABLE分别通过第一转换电路和第二转换 电路实现:首先使用地址比较逻辑单元201的输出信号ADDR_HIT通过脉冲产生电路产生一 个周期的脉冲信号401,该脉冲信号401的产生方法为将ADDR_HIT信号通过一寄存器实现 延时一个周期后再通过一非门取反后和原ADDR_HIT信号通过一与门做与逻辑;将脉冲信 号401作为多路选择器一选通脉冲,将置位APB总线的控制信号APB_PSEL ;APB总线的控制 信号APB_PENABLE可复位APB总线的控制信号APB_PSEL ;
[0037] 脉冲信号401和APB_PREADY信号控制APB_PSEL信号置位或复位的方式,它们分 别作为第一转换电路的多路选择器一、多路选择器二的片选信号;实现脉冲信号401为1并 且 APB_PREADY 为 0 时,APB_PSEL 置位为 1 ;APB_PREADY 为 1 时,APB_PSEL 复位为 0 ;脉冲信 号401和APB_PREADY都为0时,APB_PSEL保持不变。
[0038] APB_PSEL信号又经过与脉冲信号401产生的电路结构同样的电路,产生选通脉冲 402,置位APB总线的控制信号APB_PENABLE,而APB总线的应答信号APB_PREADY信号和复 位APB总线的控制信号APB_PENABLE ;选通脉冲402和APB_PREADY控制PENABLE信号置位 或复位的方式如图4所示,它们分别作为第二转换电路的多路选择器一、多路选择器二的 片选信号,实现选通脉冲402为1并且APB_PREADY为0时,PENABLEL置位为1 ;APB_PREADY 为1时,PENABLE复位为0 ;选通脉冲402和APB_PREADY都为0时,PENABLE保持不变。
[0039] 具体的,只有地址转换逻辑201的输出ADDR_HIT为1时,协议转换反向数据通路 203才会工作;所述协议转换反向数据通路单元203的一种具体实施电路如图5所示:包括 应答信号转换电路和读数据信号转换电路,
[0040] 所述应答信号转换电路包括依次连接的一脉冲产生电路、多路选择器三、多路选 择器四、寄存器;APB总线的应答信号APB_PREADY作为脉冲产生电路的输入信号,脉冲产生 电路的输出信号作为多路选择器三的通道选择信号,寄存器的输出端连接多路选择器三的 一输入端,DCR请求的控制信号DCR_READ和DCR_WRITE依次经过或门、非门后的信号作为 多路选择器四的通道选择信号;
[0041] 所述读数据信号转换电路包括多路选择器五、多路选择器六、两个寄存器,所述应 答信号转换电路的脉冲产生电路的输出端连接多路选择器五的通道选择端,APB总线的读 数据信号apb_rdata从多路选择器五输入后经一寄存器的输出信号,一个分支作为多路选 择器五的输入信号,另一个分支作为多路选择器六的输入信号;地址比较逻辑单元的输出 信号和DCR请求的控制信号DCR_READ依次经过一与门、另一个寄存器后作为多路选择器六 的通道选择电路;
[0042] 上述电路结构实现APB_PREADY产生一个周期的脉冲信号501,该脉冲信号501的 产生方法为将APB_PREADY信号通过一个寄存器延时一个周期后通过一非门取反后和原 APB_PREADY信号通过一与门做与逻辑。
[0043] 然后将脉冲信号501作为多路选择器三和多路选择器五的选通脉冲,将通过多路 选择器四置位DCR总线的应答信号DCR_ACK ;DCR总线的控制信号DCR_WRITE和DCR_READ 通过协议转换反向数据通路203的逻辑电路复位DCR总线的应答信号DCR_ACK ;
[0044] DCR总线的控制信号DCR_WRITE和DCR_READ信号在协议转换反向数据通路203中 先经过一或门进行或逻辑,再经过一非门进行取反,得到的信号502控制DCR总线的应答信 号DCR_ACK的复位;脉冲信号501为1并且信号502为0,DCR_ACK置位为1 ;信号502为1, DCR_ACK复位为0 ;脉冲信号501为0并且信号502为0, DCR_ACK保持不变。
[0045] 由APB_PREADY产生的脉冲信号501还作为使能信号,将APB总线的读数据信号 APB_RDATA 寄存,
[0046] 地址比较逻辑201的输出信号ADDR_HIT和DCR总线的控制信号DCR_READ做经一 与门进行与逻辑后经过一寄存器实现一个周期的延时后作为选择信号503,为DCR总线的 读数据信号DCR_RDBUS选择数据源;如果选择信号503为1,将选择经过寄存的APB总线读 数据信号APB_RDATA作为DCR总线的读数据信号DCR_RDBUS输出,如果选择信号503为0, 将选择DCR_BYPASS_DATA作为DCR总线的读数据信号DCR_RDBUS输出。
[0047] 请参见图6示出了本发明的一种DCR总线和APB总线之间的总线桥的转换流程示 意图,包括以下步骤:
[0048] 步骤600 :等候接收符合DCR总线协议的读写请求;
[0049] 步骤601 :收到符合DCR总线协议的读写请求后,判断DCR读或写请求的地址是否 在所连接的APB接口设备所允许访问的范围内,在范围内则进行接收,否则不接收;如果能 够接收,进入步骤602 ;如果不能接收,返回步骤600。
[0050] 步骤602 :将接收的DCR总线请求的地址信号和控制信号转换为符合APB总线协 议的地址信号和控制信号;如果接收的DCR请求为写请求,将接收的DCR总线请求的写数据 信号转换为符合APB总线协议的写数据信号;
[0051] 步骤603 :发出APB总线请求后,等候APB总线的应答;
[0052] 步骤604 :收到APB总线的应答信号后,将接收的APB总线协议的应答信号转换为 符合DCR总线协议的应答信号;对于读请求,将接收的APB总线协议的读数据信号转换为符 合DCR总线协议的读数据信号;
[0053] 步骤605 :返回DCR总线应答信号,对于读请求,总线桥还要同时返回DCR总线协 议的读数据信号。
[0054] 由上所述,完成了一次将DCR总线请求转换为APB总线请求的过程,返回步骤600。
[0055] 以上对本发明的实施例进行了详细说明,但所述内容仅为本发明的较佳实施例, 不能被认为用于限定本发明的实施范围。凡依本发明申请范围所作的均等变化与改进等, 均应仍归属于本发明的专利涵盖范围之内。
【权利要求】
1. 一种DCR总线和APB总线之间的总线桥,其特征在于所述总线桥包括: 地址比较逻辑单元,负责判断DCR读或写请求的地址是否在所连接的APB接口设备允 许访问的范围内,即是否能接收该DCR请求;如果在允许范围内,进行DCR协议到APB协议 的转换;否则,不做协议转换; 协议转换正向数据通路单元,用于将接收的DCR总线请求的地址信号,控制信号和写 数据信号转换为符合APB总线协议的地址信号,控制信号和写数据信号 协议转换反向数据通路单元,用于将接收的APB总线协议的应答信号和读数据信号转 换为符合DCR总线协议的应答信号和读数据信号。
2. 根据权利要求1所述的DCR总线和APB总线之间的总线桥,其特征在于:所述地址 比较逻辑单元包括两个比较器、两个与门和一非门;两个比较器的输出端连接一与门的输 入端,其输出端和非门的输出端作为另一个与门的输入端,两个比较器实现DCR请求的地 址信号DCR_ADDR分别与硬件固化的DCR总线地址的最大值和最小值的比较,DCR请求的控 制信号DCR_READ和DCR_WRITE作为非门的输入信号。
3. 根据权利要求1或2所述的DCR总线和APB总线之间的总线桥,其特征在于:所述 协议转换正向数据通路单元包括两个电路结构相同的第一转换电路和第二转换电路,均由 依次连接的一脉冲产生电路、多路选择器一、多路选择器二、一寄存器组成,寄存器的输出 端连接多路选择器一的一个输入端,其中脉冲产生电路的输出信号作为多路选择器一的通 道选择信号,第一转换电路的寄存器的输出端连接第二转换电路的脉冲产生电路的输入 端;地址比较逻辑单元的输出信号作为第一转换电路的脉冲产生电路的输入信号,APB总 线的应答信号APB_PREADY作为第一转换电路和第二转换电路的多路选择器二的通道选择 信号。
4. 根据权利要求1或2所述的DCR总线和APB总线之间的总线桥,其特征在于:所述 协议转换反向数据通路单元包括应答信号转换电路和读数据信号转换电路, 所述应答信号转换电路包括依次连接的一脉冲产生电路、多路选择器三、多路选择器 四、寄存器;APB总线的应答信号APB_PREADY作为脉冲产生电路的输入信号,脉冲产生电路 的输出信号作为多路选择器三的通道选择信号,寄存器的输出端连接多路选择器三的一输 入端,DCR请求的控制信号DCR_READ和DCR_WRITE依次经过或门、非门后的信号作为多路 选择器四的通道选择信号; 所述读数据信号转换电路包括多路选择器五、多路选择器六、两个寄存器,所述应答信 号转换电路的脉冲产生电路的输出端连接多路选择器五的通道选择端,APB总线的读数据 信号APB_RDATA从多路选择器五输入后经一寄存器的输出信号,一个分支作为多路选择器 五的输入信号,另一个分支作为多路选择器六的输入信号;地址比较逻辑单元的输出信号 和DCR请求的控制信号DCR_READ依次经过一与门、另一个寄存器后作为多路选择器六的通 道选择电路。
【文档编号】G06F13/42GK104216856SQ201410490661
【公开日】2014年12月17日 申请日期:2014年9月23日 优先权日:2014年9月23日
【发明者】李楠, 王忠海, 肖佐楠, 郑茳 申请人:天津国芯科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1