一种AHB总线和OPB总线的转换方法及桥装置与流程

文档序号:12597238阅读:411来源:国知局
一种AHB总线和OPB总线的转换方法及桥装置与流程
本发明涉及计算机体系结构和协议转换,具体是一种AHB总线和OPB总线的转换方法和实际的桥装置。
背景技术
:随着集成电路的深亚微米制造技术、设计技术的迅速发展,集成电路已进入片上系统时代。所谓片上系统,也就是系统级集成电路(SOC,Systemonchip)。与此同时,IC的设计方法也从基于时序驱动的方式,发展到了基于IP(IntellectualProperty,知识产权核)资源复用的方式。在我们日常所接触到的电子设备,如手机,PAD等娱乐设备领域AHB(AdvancedHighPerformanceBus)总线协议是一种非常常用的总线协议。而OPB(On-ChipPeripheralBus)总线是一种在信息安全等领域很常用的总线,因此有很多成熟的基于OPB总线协议的IP。在很多的实际应用中,往往需要在AHB总线系统设计中会需要用到这些基于OPB总线协议的成熟IP,如果对这些IP针对AHB总线重新进行设计验证,不但需要很长的时间,而且还会大大的降低设计的进行速度。技术实现要素:有鉴于此,为了解决上述问题,增强模块的复用性,加快系统设计的速度,本发明提出了一种AHB总线和OPB总线的转换方法和桥装置,使用本发明可以在不重新设计原有的基于OPB总线协议的IP的条件下,只增加一个桥装置,把原有的成熟的基于OPB总线协议的IP复用到AHB总线系统中。这样就可以很大的减少IP设计验证的时间,加快系统设计集成的速度,从而提高产品的市场竞争力。为达到上述目的,本发明的技术方案是这样实现的:首先,本发明提出一种AHB总线和OPB总线的转换方法,包括步骤如下:(1)、缓存来自AHB总线上的控制信号,通过对这些信号的缓存,来调整输出信号的时序,从而满足OPB总线对控制信号的时序要求;(2)、通过接收步骤(1)产生的选择信号、传输控制信号来判断是否可以产生有效的OPB总线选择信号;(3)、如果步骤(2)产生有效的OPB总线选择信号,则接收经过步骤(1)的地址信号、读/写控制信号、写特性信号和来自AHB总线的写数据信号并将其转换为符合OPB总线协议的地址信号、读/写控制信号和写数据信号;(4)、缓存来自OPB总线的响应、重发、错误信号和读数据信号,通过对这些信号的缓存来调整输出信号时序,以满足AHB总线对响应及读数据信号时序的要求;(5)、如果步骤(2)产生有效的OPB总线选择信号,则将接收到的步骤(4)中的经过缓存的OPB总线协议的响应、重发、错误和读数据信号转换为符合AHB总线协议的应答信号和读数据信号;(6)完成本次完整的AHB总线系统和OPB总线接口的数据传输。进一步的,所述步骤(1)具体为:在写操作时,AHB总线上的地址信号,读/写控制信号,传输特性信号是在一个周期同时有效的,而写数据信号是在它们有效之后的一个周期才有效,缓存并调整地址信号,读/写控制信号,传输特性信号至写数据信号有效的周期。进一步的,所述步骤(2)具体为:从步骤(1)接收AHB总线选择信号,AHB传输控制信号和AHB总线准备就绪信号,当这三个信号同时有效时,表示有一个有效的AHB总线请求,此时本单元就会产生一个有效的OPB选择信号。进一步的,所述步骤(3)转换方法为:(301)对于AHB和OPB两种协议都存在且功能相同的地址信号HADDR和OPB_ADDR,直接将两个信号连接到一起,从而达到AHB总线到OPB总线地址的转换;(302)对于两种协议都存在,但是功能不同的HWRITE信号和OPB_RNW信号:HWRITE信号有效表示是一次写操作,而OPB_RNW有效则表示是一次读操作,所以在转换时就通过一个反相器将OPB_RNW和HWRITE连接到一起,从而达到功能转换的目的;(303)AHB总线协议中含有的HSIZE信号,在OPB总线协议中没有对应的一个信号,但是有一组OPB_FWXFER和OPB_HWXFER信号和此信号功能类似,需要一组译码逻辑来实现它们之间的转换,其对应关系如下表;HSIZE[1:0]OPB_HWXFEROPB_FWXFER00000110101111(不能出现)--(304)AHB默认为小端总线,而OPB默认为大端总线,在进行数据传输时需要对数据HWDATA进行转换为OPB_WDATA,转换规则如下表所示:进一步的,所述步骤(4)在OPB响应有效的时候锁存OPB读数据,以保证只有在OPB总线的有效响应到来的时候,OPB总线的数据才会被采样,同时使其符合AHB总线协议对这些信号的要求。进一步的,所述步骤(5)转换方法为:(501)对于OPB总线的OPB_FWACK,OPB_HWACK,OPB_RETRY和OPB_XFEACK信号,就功能而言,这些信号都是为了表达一次传输是否完成,此功能与AHB总线的HREADY信号功能类似,因此通过HREADY产生逻辑来把这些信号进行处理,最终得到AHB总线可以识别的HREADY信号,HREADY产生的规则为只有当OPB_RETRY信号无效,OPB_XFEACK有效时HREADY信号有效,其它任意信号组合,HREADY无效;(502)对于OPB总线的OPB_ERR信号,和AHB总线的HRESP信号功能类似,直接映射为HRESP等于OPB_ERR信号;(503)对于OPB总线的OPB_RDATA数据需要经过转换得到AHB总线的HRDATA,其转换关系如下表所示;本发明还提出了一种AHB总线和OPB总线的桥装置,包括:AHB信号缓存单元:用来对AHB总线上的控制信号进行缓存,从而实现OPB总线对时序的要求;选择信号产生单元:通过接收AHB信号缓存单元产生的选择信号、传输控制信号来判断是否可以产生有效的OPB总线选择信号;AHB2OPB单元:用于在选择信号产生单元产生有效的OPB总线选择信号时,接收经过AHB信号缓存单元的地址信号、读/写控制信号、写特性信号和来自AHB总线的写数据信号并将其转换为符合OPB总线协议的地址信号、读/写控制信号和写数据信号;OPB信号缓存单元:用于缓存来自OPB总线的响应、重发、错误信号和读数据信号,通过对这些信号的缓存来调整输出信号时序,以满足AHB总线对响应及读数据信号时序的要求;OPB2AHB单元:用于在选择信号产生单元产生有效的OPB总线选择信号时,将接收到的OPB信号缓存单元中的经过缓存的OPB总线协议的响应、重发、错误和读数据信号转换为符合AHB总线协议的应答信号和读数据信号。进一步的,所述AHB2OPB单元设有用于连接两种总线协议信号的开关电路模块,用于转换HWRITE信号为OPB_RNW信号的反相器模块,用于转换HSIZE信号为OPB_FWXFER和OPB_HWXFER信号的译码逻辑模块,用于转换HWDATA为OPB_WDATA数据的转换器模块,所述反相器模块、译码逻辑模块、转换器模块将信号转换后连接至开关电路模块。进一步的,所述OPB2AHB单元设有用于连接两种总线协议信号的开关电路模块,用于转换OPB_FWACK,OPB_HWACK,OPB_RETRY和OPB_XFEACK信号为HREADY信号的HREADY产生逻辑模块,用于转换OPB_RDATA为HRDATA的转换逻辑模块,所述HREADY产生逻辑模块、转换逻辑模块将信号转换后连接至开关电路模块。相对于现有技术,本发明所述的方法的有益效果为:使用本发明提供的一种AHB总线和OPB总线的桥装置以及转换方法,可以在不重新设计原有的基于OPB总线协议的IP的条件下,将标准的OPB总线协议的IP桥接到AHB总线协议,集成到AHB总线系统中,增强了原有OPB总线IP的复用性,很大程度减少IP设计验证的时间,加快了系统设计集成的速度,规避了重新开发设计IP的风险,从而提高产品的市场竞争力。附图说明构成本发明的一部分的附图用来提供对本发明创造的进一步理解,本发明创造的示意性实施例及其说明用于解释本发明创造,并不构成对本发明创造的不当限定。在附图中:图1是本发明实施例的的桥装置结构示意图;图2是本发明实施例的AHB2OPB单元结构示意图;图3是本发明实施例的OPB2AHB单元结构示意图。具体实施方式需要说明的是,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。如图1所示,本发明提出的一种AHB总线和OPB总线的桥装置,主要由以下部分组成:AHB信号缓存单元,通过缓存来自AHB总线上的控制信号来实现OPB总线对时序的要求;选择信号产生单元,通过接收来自AHB总线上的选择信号,传输控制信号等来判断是否可以产生有效的OPB总线选择信号;AHB2OPB单元,该单元用于将接收到的AHB信号缓存单元及AHB总线的地址信号、读/写控制信号、写特性信号和写数据信号等转换为符合OPB总线协议的地址信号、读/写控制信号、字节使能信号和写数据信号;OPB信号缓存单元,该单元通过缓存OPB总线的控制信号,来实现AHB总线对时序的要求;OPB2AHB单元,用于将接收到的OPB信号缓存单元的OPB总线协议的响应、重发、错误和读数据信号转换为符合AHB总线协议的应答信号和读数据信号。具体说明如下:步骤1、AHB信号缓存单元:本单元用来对AHB总线上的控制信号进行缓存,从而实现OPB总线对时序的要求。在写操作时,AHB总线上的地址信号,读/写控制信号,传输特性信号是在一个周期同时有效的,而写数据信号是在它们有效之后的一个周期才有效。而OPB总线要求所有的写相关的信号都在同一周期有效,这就需要本单元对AHB总线的相关信号进行缓存,以达到OPB总线对写时序的要求;步骤2、选择信号产生单元:该单元从步骤1接收AHB总线选择信号,AHB传输控制信号和AHB总线准备就绪信号,当这三个信号同时有效时,表示有一个有效的AHB总线请求,此时本单元就会产生一个有效的OPB选择信号,否则本单元不会产生有效的OPB选择信号;步骤3、AHB2OPB单元:其结构如图2所示,首先,本单元会依据步骤2中产生的选择信号是否有效来决定是否进行协议转换;如果步骤2中的选则信号无效,那么本装置将不会进行转换操作即步骤2的结果当做本单元中开关电路的开关;如果步骤2产生的选则信号有效,那么本装置就会认为需要进行一次协议转换;对于地址信号HADDR和OPB_ADDR两种协议都存在,且功能相同,本单元则直接将两个信号连接到一起,从而达到AHB总线到OPB总线地址的转换;而对于HWRITE信号和OPB_RNW信号两种协议都存在,但是功能不同:HWRITE信号有效表示是一次写操作,而OPB_RNW有效则表示是一次读操作,所以本单元在转换时就通过一个反相器将OPB_RNW和HWRITE连接到一起,从而达到功能转换的目的;再有AHB总线系统中含有的HSIZE信号,在OPB总线协议中则没有对应的一个信号,但是有一组OPB_FWXFER和OPB_HWXFER信号和此信号功能类似,此时,就需要一组译码逻辑来实现它们之间的转换,其对应关系如下表所示;同时,因为AHB默认为小端总线,而OPB默认为大端总线,所以在进行数据传输时也需要对数据进行转换,其规则如下表所示;步骤4、OPB信号缓存单元:本单元缓存来在OPB总线的响应、重发、错误和读数据信号,本单元在OPB响应有效的时候锁存OPB读数据,这样就可以保证只有在OPB总线的有效响应到来的时候,OPB总线的数据才会被采样,同时使其符合AHB总线协议对这些信号的要求;步骤5、OPB2AHB单元:其结构如图3所示,首先,本单元会依据步骤2产生的OPB选择信号是否有效来判断是否需要进行一次OPB总线协议想AHB总线协议的转换;如果步骤2中的OPB选择信号无效,那么本单元将不会有任何操作;如果步骤2产生的选则信号有效,那么本单元即会进行一次OPB总线协议向AHB总线协议转换的操作;对于OPB_FWACK,OPB_HWACK,OPB_RETRY和OPB_XFEACK信号,就功能而言,这些信号都是为了表达一次传输是否完成,此功能与AHB总线的HREADY信号功能类似,因此本单元可以通过HREADY产生逻辑来把这些信号进行处理,最终得到AHB总线可以识别的HREADY信号,HREADY产生的规则为只有当OPB_RETRY信号无效,OPB_XFEACK有效时HREADY信号有效,其它任意信号组合,HREADY无效;OPB_ERR信号和HRESP信号功能类似,可以直接映射为HRESP等于OPB_ERR信号;同步骤3一样,HRDATA也需要OPB_RDATA经过一系列的转换才能得到,其转换关系如下表所示;步骤6、通过步骤1、步骤2、步骤3、步骤4和步骤5的转换,就可以完成一次完整的由AHB总线访问OPB总线的传输。由此可见,通过本发明的一种AHB总线和OPB总线的桥装置的转换可以将OPB总线上成熟的IP模块集成到AHB总线系统中。这样就可以很大程度上复用原有的IP,增强原来有IP的复用性,同时加快了系统设计和集成的速度,降低了系统设计的风险。以上描述了本发明的基本原理、主要特征和实施方案等信息,但是本发明不受上述实施过程的限制,在不脱离发明精神和范围的前提下,本发明还可以有各种变化和改进。因此,除非这种变化和改进脱离了本发明的范围,它们应该被看作包含在本发明中。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1