一种支持PROM和处理器在线配置eFPGA的控制电路的制作方法

文档序号:17816970发布日期:2019-06-05 21:50
一种支持PROM和处理器在线配置eFPGA的控制电路的制作方法

本发明属于SoPC芯片设计技术领域,涉及一种支持PROM和处理器在线配置eFPGA的控制电路。



背景技术:

目前eFPGA(embedded FPGA)是集成在SoPC设计中嵌入式可编程器件中的一种,其优点是在芯片制造之后可以定制芯片额外指定的功能,将配置文件下载到eFPGA的方法有很多种,广泛采用的是板级配置芯片(如PROM)或处理器在线进行eFPGA配置的方法。实际应用中常常仅采取其中的一种方法去实现。使用PROM配置芯片进行配置,是最普遍的一种做法,其需要占用很大的PCB面积和高昂的成本,使用处理器在线配置eFPGA延长了系统的启动时间和容易出现总线竞争。



技术实现要素:

本发明的目的:提供一种支持PROM和处理器在线方式配置eFPGA的控制电路。

本发明的技术方案:一种支持PROM和处理器在线配置eFPGA的控制电路,所述的电路包括数据路径选择模块,数据路径选择模块接收外部CFGSEL信号,该信号为0时选择处理器在线配置方式,通过写控制寄存器将片外存储控制器输出接口的访问权切换到控制电路,由控制电路通过该接口从外部flash指定地址,将事先准备好的配置数据按一定时序加载到eFPGA;

当CFGSEL信号为1时选择PROM配置方式,相应的配置数据寄存后经选择直通到eFPGA配置接口,相应的配置时钟路径上接一电阻。

优选地,所述的控制电路还包括寄存器模块、配置时钟模块、控制加载模块;所述寄存器模块,实现了处理器在线配置方式配置eFPGA的控制接口;所述配置时钟模块提供处理器在线配置eFPGA所需不同的配置时钟;所述控制加载模块控制处理器在线配置eFPGA,并反馈配置过程的状态和结果。

优选地,寄存器模块实现了处理器在线配置eFPGA配置文件存放的地址寄存器,实现了配置eFPGA的配置时钟分频使能寄存器,以提供不同eFPGA系统配置时间的要求,实现了控制寄存器了以使处理器按需求进行eFPGA的配置,实现了状态寄存器来记录整个配置过程的状态或故障指示,实现了时序参数配置寄存器来满足片外存储控制器挂接的不同flash类型。

优选地,配置时钟模块提供了eFPGA不同配置时钟频率,该时钟频率根据系统需求为可配置。

优选地,控制加载模块提供了控制处理器在线配置eFPGA的电路,配置过程如果异常可选择重新配置或停止配置,并将配置过程和结束的状态反馈到寄存器模块。

本发明的有益效果:本技术方案提出了一种控制电路将两种配置方式实现在一起,可以解决如板卡在机箱内在线更换定制的设计逻辑问题,而可以不使用JTAG线加载PROM,对一些系统启动时间要求短,eFPGA配置速率要求很高的设计环境,可采用片外PROM配置芯片实现,两种方式优势互补,对SoPC实现不同功能的可定制提供了极大的灵活性。

附图说明

图1为支持PROM和处理器在线方式配置eFPGA控制电路与eFPGA和片上总线、片外PROM互连的结构示意图;

图2为支持PROM和处理器在线方式配置eFPGA控制电路内部结构示意图;

图3为数据路径选择模块内部结构示意图。

具体实施方式

如图3所示,本实施方式中的所述数据路径选择模块主要用来进行PROM和处理器在线配置两种数据通路的选择,0该电路模块由SoPC芯片外提供CFGSEL信号,其由板级提供上拉或下拉,CFGSEL为0时为处理器在线配置方式,其指的是当确定没有对片外存储控制器外部存在操作时,通过写控制寄存器将片外存储控制器输出接口的访问权切换到配置eFPGA的控制电路,由配置eFPGA控制电路通过该接口从外部flash指定地址,将事先准备好的配置数据按一定时序加载到eFPGA的过程,处理器配置方式仅支持从SelectMap8位模式;CFGSEL为1时,通过PROM方式配置eFPGA,相应的配置数据寄存后经选择直通到eFPGA配置接口,这种方式支持多种配置模式,由eFPGA信号M[2:0]确定,其决定了配置时钟由eFPGA内部晶振提供还是由外部产生,配置时钟路径上接一电阻,提高配置时钟的抗干扰能力,保证PROM方式加载不会受到处理器在线配置方式的影响,配置模式可根据不同系列的eFPGA软硬核做些适应性修改。

本发明提供一种支持PROM和处理器在线方式配置eFPGA的控制电路,还包含以下模块:寄存器模块、数据路径选择模块、配置时钟模块、控制加载模块;

如图1、图2所示,所述寄存器模块,实现了处理器在线配置方式配置文件存放的地址寄存器,该地址空间不能与片外存储器存储处理器固化程序地址冲突,设计前要确定片外存储器地址空间的划分;

所述寄存器模块,实现了配置eFPGA的配置时钟分频使能寄存器,通过配置该寄存器将控制电路时钟可以进行2/4/6/8/10/12分频提供给eFPGA,可以满足不同FPGA配置时间要求,满足一定时间范围内的系统启动,因为eFPGA配置速率一般可以稳定达到50MHZ,因此处理器在线配置时间基本取决于外部存储器的最快访问时间,外部存储器常常采用flash;

所述寄存器模块,实现了控制寄存器以使处理器按需求进行eFPGA的配置,当要进行在线配置eFPGA时,由处理器配置控制寄存器获得外部存储器接口的使用,当配置eFPGA成功后,释放外部存储器接口的控制权;

所述寄存器模块,实现了时序参数配置寄存器来满足片外存储控制器挂接的不同flash类型,不同配置确定了将配置文件下载到eFPGA的时间。

所述配置时钟模块,其提供了配置集成在SoPC中eFPGA的时钟频率,该时钟频率为本控制模块的时钟分频,分频可配置范围为2/4/6/8/10/12分频,以适应不同片外flash的最快访问时间要求;

所述寄存器模块,实现了状态寄存器来记录时序参数配置寄存器时序配置的正确性,记录eFPGA整个配置过程的状态、故障指示及故障次数,并可以向处理器报相应的中断;

所述控制加载模块,主要用来控制处理器方式进行eFPGA的配置,配置异常后可按寄存器的配置重新配置,重新配置的次数也有寄存器模块控制寄存器来确定,并将配置过程和结束的状态反馈到寄存器模块状态寄存器。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1