位置:51电子网 » 技术资料 » 显示光电

开放核协议—IP核在SoC设计中的接口技术 作者: 电子科技大学 焦原军 李广军 罗佳慧

发布时间:2007/8/24 0:00:00 访问次数:434

     摘    要:本文介绍了IP核的概念及其在SoC设计中的应用,讨论了为提高IP核的复用能力而采用的IP核与系统的接口技术。

    关键词:SoC;IP核;OCP

  引言

  随着半导体技术的发展,深亚微米工艺加工技术允许开发上百万门级的单芯片,已能够将系统级设计集成到单个芯片中即实现片上系统SoC。IP核的复用是SoC设计的关键,但困难在于缺乏IP核与系统的接口标准,因此,开发统一的IP核接口标准对提高IP核的复用意义重大。本文简单介绍IP核概念,然后从接口标准的角度讨论在SoC设计中提高IP核的复用度,从而简化系统设计和验证的方法,主要讨论OCP(开放核协议)。

                  

                                图1 OCP工作原理示意图

                    
                                 图2  读/写操作的时序
                    
                                     图3  读/写状态机

  OCP简介

  基于IP核复用技术的SoC 设计使芯片的设计从以硬件为中心转向以软件为中心,芯片设计不再是门级的设计,而是IP核和接口及其复用设计。IP核集成到系统所要考虑的问题包括:同步,例如全局执行、数据交换和协议方面的同步操作;协议转换,不同模块间不兼容的协议的转换,封装可用来解决这个问题,但需要考虑时序约束;I/O缓存,为满足系统行为和时序约束可能需要缓存数据。另外,出于对核设计的保护会故意隐藏一些信息,而这些信息在集成时可能需要。为解决这些问题需要一个好的接口标准,一些大公司现在已有自己的IP核接口标准,比如Altera的Avalon,Atlantic、IBM的CoreConnect、ARM的AMBA等。因为核的多样性,使用完全相同的接口是不现实的,OCP将软件中的分层概念应用到IP核接口,提供一种具有通用结构定义、可扩展的接口协议,方便了IP核与系统的集成。

  OCP协议使IP核与系统的接口与IP核的功能无关,设计人员不需要了解核内部也能利用它进行系统设计。OCP接口允许设计者根据不同的目的配置接口,包括接口的数据宽度、交换的握手协议等,在SoC设计中可以裁剪核的功能,降低设计复杂性,减小面积,同时满足SoC的要求;OCP接口还保持核在集成到系统的过程中自身完全不被改变,就是说在总线宽度、总线频率或电气负载有变化时核保持不变。使用OCP接口的设计可以交付即插即用的模块,同时支持核的开发与系统设计并行,节省设计时间。

  OCP接口运行机制

  OCP定义两个通信实体间点到点的接口。其中一个实体作为通信的主体(Master),另一个作为从体(Slave)。只有Master可以发命令,Slave响应Master的命令,接收或发送数据。封装接口模块必须担当每个连接实体的对应端,当连接实体是Master时,封装接口模块就作为对应的Slave;当连接实体是Slave时,封装接口模块作Master。

  OCP的工作原理如图1所示。图中有三个IP核,其中左边标有Initiator的IP核是通信的发起方,作Master;右边标有Target的是通信的目标方,作Slave;中间的既可作Master又可作Slave;下面的框图代表封装接口模块;从Master出来并进入Slave的箭头表示请求命令,从Slave出来并进入Master的箭头表示响应;加黑的线段代表片上互连总线。两个IP核通过接口通信的过程是:作为Master的 IP核发出请求命令给对应的Slave端(总线封装接口模块);封装接口模块通过片上总线将请求命令(OCP并不指定片上互连总线的工作机制,而是把OCP命令转换成总线上的传送)传送给接收方的总线封装模块;接收方的总线封装模块再作为Master把这种内部总线传输转换成合法的OCP命令传送给目标IP核;其作为Slave方接收命令

     摘    要:本文介绍了IP核的概念及其在SoC设计中的应用,讨论了为提高IP核的复用能力而采用的IP核与系统的接口技术。

    关键词:SoC;IP核;OCP

  引言

  随着半导体技术的发展,深亚微米工艺加工技术允许开发上百万门级的单芯片,已能够将系统级设计集成到单个芯片中即实现片上系统SoC。IP核的复用是SoC设计的关键,但困难在于缺乏IP核与系统的接口标准,因此,开发统一的IP核接口标准对提高IP核的复用意义重大。本文简单介绍IP核概念,然后从接口标准的角度讨论在SoC设计中提高IP核的复用度,从而简化系统设计和验证的方法,主要讨论OCP(开放核协议)。

                  

                                图1 OCP工作原理示意图

                    
                                 图2  读/写操作的时序
                    
                                     图3  读/写状态机

  OCP简介

  基于IP核复用技术的SoC 设计使芯片的设计从以硬件为中心转向以软件为中心,芯片设计不再是门级的设计,而是IP核和接口及其复用设计。IP核集成到系统所要考虑的问题包括:同步,例如全局执行、数据交换和协议方面的同步操作;协议转换,不同模块间不兼容的协议的转换,封装可用来解决这个问题,但需要考虑时序约束;I/O缓存,为满足系统行为和时序约束可能需要缓存数据。另外,出于对核设计的保护会故意隐藏一些信息,而这些信息在集成时可能需要。为解决这些问题需要一个好的接口标准,一些大公司现在已有自己的IP核接口标准,比如Altera的Avalon,Atlantic、IBM的CoreConnect、ARM的AMBA等。因为核的多样性,使用完全相同的接口是不现实的,OCP将软件中的分层概念应用到IP核接口,提供一种具有通用结构定义、可扩展的接口协议,方便了IP核与系统的集成。

  OCP协议使IP核与系统的接口与IP核的功能无关,设计人员不需要了解核内部也能利用它进行系统设计。OCP接口允许设计者根据不同的目的配置接口,包括接口的数据宽度、交换的握手协议等,在SoC设计中可以裁剪核的功能,降低设计复杂性,减小面积,同时满足SoC的要求;OCP接口还保持核在集成到系统的过程中自身完全不被改变,就是说在总线宽度、总线频率或电气负载有变化时核保持不变。使用OCP接口的设计可以交付即插即用的模块,同时支持核的开发与系统设计并行,节省设计时间。

  OCP接口运行机制

  OCP定义两个通信实体间点到点的接口。其中一个实体作为通信的主体(Master),另一个作为从体(Slave)。只有Master可以发命令,Slave响应Master的命令,接收或发送数据。封装接口模块必须担当每个连接实体的对应端,当连接实体是Master时,封装接口模块就作为对应的Slave;当连接实体是Slave时,封装接口模块作Master。

  OCP的工作原理如图1所示。图中有三个IP核,其中左边标有Initiator的IP核是通信的发起方,作Master;右边标有Target的是通信的目标方,作Slave;中间的既可作Master又可作Slave;下面的框图代表封装接口模块;从Master出来并进入Slave的箭头表示请求命令,从Slave出来并进入Master的箭头表示响应;加黑的线段代表片上互连总线。两个IP核通过接口通信的过程是:作为Master的 IP核发出请求命令给对应的Slave端(总线封装接口模块);封装接口模块通过片上总线将请求命令(OCP并不指定片上互连总线的工作机制,而是把OCP命令转换成总线上的传送)传送给接收方的总线封装模块;接收方的总线封装模块再作为Master把这种内部总线传输转换成合法的OCP命令传送给目标IP核;其作为Slave方接收命令

相关IC型号

热门点击

 

推荐技术资料

按钮与灯的互动实例
    现在赶快去看看这个目录卞有什么。FGA15N120AN... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!