位置:51电子网 » 技术资料 » 嵌入式系统

MPSOC中的ISS与SYSTEMC模型集成

发布时间:2008/5/27 0:00:00 访问次数:611

1、引言

随着集成电路工艺的进一步发展,在一个芯片中集成多个核的情况,已经可以实现,并且成为超大规模集成电路发展的一个重要分支。多核技术主要运用于一些实时性能要求比较高,计算量比较大,对功耗和开销有严格要求的应用中,比如在多媒体技术中,通常要进行大量的并行计算,就可以选用多核系统(mpsoc)来解决。但目前mpsoc设计还有很多软硬件方面的问题需要解决,如处理器的可配置性,互联架构的选用以及软硬件的并行设计等。

2、基于c/c++的硬件设计

考虑到软硬件并行设计的要求,我们在系统中嵌入iss(一般由c/c++构成)来运行软件,系统中其它模块的建模在早期的软硬件并行仿真框架中采用hdl建模,这样就形成了一个不同语言的仿真环境,但此环境仿真性能欠佳并且软硬件的集成困难。目前出现的基于c/c++硬件描述方法在软硬件的并行仿真过程中有很好的优势,它使用相同的语言来描述软硬件,这样能弥补软硬件用不同语言来描述所带来的差距。我们在设计中选用sys-temc来描述硬件模块。在这种结构中必须解决两个问题,一是软硬件之问如何有效地进行通讯,另一个是二者之间如何保持仿真的同步。目前主要存在两种解决方法,一种是systemc和iss在主机上作为不同进程运行,如图1所示,它们之间的通讯通过进程通讯(inter-process communication ipc)完成,同步通过systemc模块的封装来实现;第二种方法是并行仿真,在单独的systemc进程中完成,iss被嵌入到systemc的封装模块中,此时的通讯是通过systemc模块的端口以及信号完成。前者在iss和系统中的其余部分通讯比较少时,较为有效,当通讯加大时仿真性能不佳,同时也引入了大量的ipc开销。本设计将后一种方法引入到mpsoc的设计中,这能加快应用程序和硬件模块之间的通讯的能力,以便更快的确定系统的性能。

3、mpsoc的架构

mpsoc的仿真平台如图2所示,包括可配置的iss,对于不同的应用,系统可以通过匹配iss的数目来达到最佳的性能,从而确定它的架构,另外还有私有存储器、共享存储器以及同步存储器和中断器件。其中每个处理器都对应一个私有存储器,用来存储处理器所要运行的程序;共享存储器用来协调多个处理器的通讯,使它们之间可以进行数据交互;同步存储器是为了同步多个处理器对共享资源的访问,使它们不发生冲突。同步存储器设计时采用双态信号量(binary semaphore)的形式,利用semaphore互锁机制去达到处理器之间的通讯同步。中断器件是可写不可读的,它表明有中断产生。另外平台中的互连架构对于整个平台的性能和开销也有非常大的影响,本平台采用的是共享总线的方式,此方式可以降低功耗。具体的系统总线采用的是amba的ahb总线,因为ahb总线在工业中使用非常普及。根据amba规范它支持多个主设备,但任意时刻只有一个主设备被允许访问总线,其它的主设备被仲裁器禁止。为了能够容易的扩张主设备和从没备,构造了主从设备的总线接口。另外总线支持突发传输、分段传输、单字节传输等多种功能。在总线上传输事务时,主设备首先向仲裁器发出请求信号,经仲裁器按照某种算法(本文循环算法)仲裁后,发出准许使用总线信号。主设备在等到拥有总线使用权后,发出地址和控制信号,在下一个时钟周期发出数据,在等到从设备发ready信号后,主或从设备就可以对总线上的数据进行采样。期间使用多路复用器来对多个主从设备进行连接,使用译码器对发出的地址信号进行译码,用来选择从设备。

4、iss与systemc的集成

设计中构造了周期精确的iss,它内部包含了取址、译码、执行三级流水线,并且模拟了时钟的行为,因此它可以进行详细的平台性能分析。对于iss和硬件模块的集成,我们将iss嵌入到systemc的封装模块wrapper中,作为此模块中的一个类成员。

如图3所示wrapper模块所要完成的任务是要接受来自于iss类或ahb主设备接口的控制和数据信号,经过模块的处理后再传递时序匹配的信号到iss或ahb主设备接口。由于需要传递的信号比较多,所以我们采用了结构体的方式,这样可以同时发送一组信号,我们声明了一个结构体pinout,它包括ahb总线和处理器的一些必须的控制和数据信号。之后在wrapper模块和iss中声明此结构体类型的端口和中间变量。因为iss和wrapper模块之间的通讯是通过调用函数中的参数传递的方式来完成的,所以将iss中需要和wrapper进行通讯的结构体变量定义为指针类型,同时在wrapper模块中对调用函数的结构体类型参数采用引用调用(cy-cle(&pinout)。这样就可通过输入端口将iss所

1、引言

随着集成电路工艺的进一步发展,在一个芯片中集成多个核的情况,已经可以实现,并且成为超大规模集成电路发展的一个重要分支。多核技术主要运用于一些实时性能要求比较高,计算量比较大,对功耗和开销有严格要求的应用中,比如在多媒体技术中,通常要进行大量的并行计算,就可以选用多核系统(mpsoc)来解决。但目前mpsoc设计还有很多软硬件方面的问题需要解决,如处理器的可配置性,互联架构的选用以及软硬件的并行设计等。

2、基于c/c++的硬件设计

考虑到软硬件并行设计的要求,我们在系统中嵌入iss(一般由c/c++构成)来运行软件,系统中其它模块的建模在早期的软硬件并行仿真框架中采用hdl建模,这样就形成了一个不同语言的仿真环境,但此环境仿真性能欠佳并且软硬件的集成困难。目前出现的基于c/c++硬件描述方法在软硬件的并行仿真过程中有很好的优势,它使用相同的语言来描述软硬件,这样能弥补软硬件用不同语言来描述所带来的差距。我们在设计中选用sys-temc来描述硬件模块。在这种结构中必须解决两个问题,一是软硬件之问如何有效地进行通讯,另一个是二者之间如何保持仿真的同步。目前主要存在两种解决方法,一种是systemc和iss在主机上作为不同进程运行,如图1所示,它们之间的通讯通过进程通讯(inter-process communication ipc)完成,同步通过systemc模块的封装来实现;第二种方法是并行仿真,在单独的systemc进程中完成,iss被嵌入到systemc的封装模块中,此时的通讯是通过systemc模块的端口以及信号完成。前者在iss和系统中的其余部分通讯比较少时,较为有效,当通讯加大时仿真性能不佳,同时也引入了大量的ipc开销。本设计将后一种方法引入到mpsoc的设计中,这能加快应用程序和硬件模块之间的通讯的能力,以便更快的确定系统的性能。

3、mpsoc的架构

mpsoc的仿真平台如图2所示,包括可配置的iss,对于不同的应用,系统可以通过匹配iss的数目来达到最佳的性能,从而确定它的架构,另外还有私有存储器、共享存储器以及同步存储器和中断器件。其中每个处理器都对应一个私有存储器,用来存储处理器所要运行的程序;共享存储器用来协调多个处理器的通讯,使它们之间可以进行数据交互;同步存储器是为了同步多个处理器对共享资源的访问,使它们不发生冲突。同步存储器设计时采用双态信号量(binary semaphore)的形式,利用semaphore互锁机制去达到处理器之间的通讯同步。中断器件是可写不可读的,它表明有中断产生。另外平台中的互连架构对于整个平台的性能和开销也有非常大的影响,本平台采用的是共享总线的方式,此方式可以降低功耗。具体的系统总线采用的是amba的ahb总线,因为ahb总线在工业中使用非常普及。根据amba规范它支持多个主设备,但任意时刻只有一个主设备被允许访问总线,其它的主设备被仲裁器禁止。为了能够容易的扩张主设备和从没备,构造了主从设备的总线接口。另外总线支持突发传输、分段传输、单字节传输等多种功能。在总线上传输事务时,主设备首先向仲裁器发出请求信号,经仲裁器按照某种算法(本文循环算法)仲裁后,发出准许使用总线信号。主设备在等到拥有总线使用权后,发出地址和控制信号,在下一个时钟周期发出数据,在等到从设备发ready信号后,主或从设备就可以对总线上的数据进行采样。期间使用多路复用器来对多个主从设备进行连接,使用译码器对发出的地址信号进行译码,用来选择从设备。

4、iss与systemc的集成

设计中构造了周期精确的iss,它内部包含了取址、译码、执行三级流水线,并且模拟了时钟的行为,因此它可以进行详细的平台性能分析。对于iss和硬件模块的集成,我们将iss嵌入到systemc的封装模块wrapper中,作为此模块中的一个类成员。

如图3所示wrapper模块所要完成的任务是要接受来自于iss类或ahb主设备接口的控制和数据信号,经过模块的处理后再传递时序匹配的信号到iss或ahb主设备接口。由于需要传递的信号比较多,所以我们采用了结构体的方式,这样可以同时发送一组信号,我们声明了一个结构体pinout,它包括ahb总线和处理器的一些必须的控制和数据信号。之后在wrapper模块和iss中声明此结构体类型的端口和中间变量。因为iss和wrapper模块之间的通讯是通过调用函数中的参数传递的方式来完成的,所以将iss中需要和wrapper进行通讯的结构体变量定义为指针类型,同时在wrapper模块中对调用函数的结构体类型参数采用引用调用(cy-cle(&pinout)。这样就可通过输入端口将iss所

相关IC型号

热门点击

 

推荐技术资料

DFRobot—玩的就是
    如果说新车间的特点是“灵动”,FQPF12N60C那么... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!