FPGA上电复位过程的存储单元读写检测系统及方法与流程

文档序号:11829332阅读:404来源:国知局
FPGA上电复位过程的存储单元读写检测系统及方法与流程

本发明属于微电子领域,尤其是一种FPGA上电复位过程的存储单元读写检测方法及系统。



背景技术:

FPGA里含有大量的存储单元,这些存储单元的读写是由位于芯片中心的控制电路经过若干级buffer控制的,由于驱动能力的问题,离芯片中心比较远的存储单元容易发生读写失误。为了能够在上电复位的过程中较早的检测芯片中心的控制电路和若干级buffer的驱动能力是否足以控制所有存储单元的读写,所以本发明通过对芯片边缘额外加测试存储单元并对其进行读写检测的方法来判断芯片有能够的驱动能力控制所有存储单元的读写。



技术实现要素:

本发明所解决的技术问题在于提供一种FPGA上电复位过程的存储单元读写检测系统及方法,在FPGA芯片左上角、左下角、右上角和右下角外侧分别设置测试存储单元,并通过检测测试存储单元的读写是否正常,来判断芯片所有的存储单元是否能正常读写,能够在上电复位过程中获得芯片是否足以控制所有存储单元的读写。

实现本发明目的的技术解决方案为:

FPGA上电复位过程的存储单元读写检测系统,包括:

第一测试存储单元SRAM(1)、第二测试存储单元SRAM(2)、第三测试存储单元SRAM(3)、第四测试存储单元SRAM(4),分别额外设置在芯片左上角、左下角、右上角和右下角,用于写入数据并向信号处理模块(5)读出数据;

信号处理模块(5),设置于芯片中心位置,用于记录第一测试存储单元SRAM(1)、第二测试存储单元SRAM(2)、第三测试存储单元SRAM(3)、第四测试存储单元SRAM(4)的写入数据;以及接收第一测试存储单元SRAM(1)、第二测试存储单元SRAM(2)、第三测试存储单元SRAM(3)、第四测试存储单元SRAM(4)的读出数据;同时,比较记录的写入数据和接收的读出数据;

电压检测及复位延迟电路(6),设置于芯片中心位置,用于检测电压是否正常上电;以及,接收信号处理模块(5)的输出信号EN;同时,输出复位信号;

第一测试存储单元SRAM(1)、第二测试存储单元SRAM(2)、第三测试存储单元SRAM(3)、第四测试存储单元SRAM(4)均与信号处理模块(5)相连,信号处理模块(5)的输出端和电压检测及复位延迟电路(6)相连。

进一步的,本发明的FPGA上电复位过程的存储单元读写检测系统,信号处理模块(5)包括第一寄存器(11)、第二寄存器(12)、第三寄存器(13)、第四寄存器(14),第一同或门(15)、第二同或门(16)、第三同或门(17)、第四同或门(18),以及四输入与非门(19),所述第一寄存器(11)、第二寄存器(12)、第三寄存器(13)、第四寄存器(14)的输出端分别与第一同或门(15)、第二同或门(16)、第三同或门(17)、第四同或门(18)的输入端相连,第一同或门(15)、第二同或门(16)、第三同或门(17)、第四同或门(18)的输出端均与四输入与非门(19)的输入端相连。

进一步的,本发明的FPGA上电复位过程的存储单元读写检测系统,电压检测及复位延迟电路(6)包括三组电压上电检测电路(7)、三输入与非门(9)、延迟模块、二输入或门(10)和上电复位延迟电路(8),三组电压上电检测电路(7)的输出端与三输入与非门(9)的输入端相连,三输入与非门(9)、延迟模块、二输入或门(10)和上电复位延迟电路(8)依次相连。

进一步的,本发明的FPGA上电复位过程的存储单元读写检测系统,上电复位延迟电路(8)包括若干个串联的D触发器,用于根据上电复位信号por_trip发送不同顺序的复位信号。

进一步的,本发明的FPGA上电复位过程的存储单元读写检测系统,三组电压上电检测电路(7)包括1.1V电源检测电路、2.5V电源检测电路好3.3V电源检测电路。

本发明还提出了一种FPGA上电复位过程的存储单元读写检测系统的检测方法,包括以下步骤:

步骤1:分别向第一测试存储单元SRAM(1)、第二测试存储单元SRAM(2)、第三测试存储单元SRAM(3)、第四测试存储单元SRAM(4)写入数据,同时信号处理模块(5)中相对应的第一寄存器(11)、第二寄存器(12)、第三寄存器(13)、第四寄存器(14)记录写入的数据;

步骤2:当电压检测及复位延迟电路(6)中的三组电压上电检测电路(7)正常上电时,三输入与非门(9)输出“0”,并经过延迟模块发送到二输入或门(10);

步骤3:第一测试存储单元SRAM(1)、第二测试存储单元SRAM(2)、第三测试存储单元SRAM(3)、第四测试存储单元SRAM(4)向信号处理模块(5)读出数据,分别通过第一同或门(15)、第二同或门(16)、第三同或门(17)、第四同或门(18)与第一寄存器(11)、第二寄存器(12)、第三寄存器(13)、第四寄存器(14)中记录的数据进行比较,若相同,则输出“1”,若不同,则输出“0”;

步骤4:将第一同或门(15)、第二同或门(16)、第三同或门(17)、第四同或门(18)的输出结果发送给四输入与非门(19),若第一同或门(15)、第二同或门(16)、第三同或门(17)、第四同或门(18)的输出结果均为“1”,则四输入与非门(19)输出信号EN=0,并发送到二输入或门(10),转到步骤5;若第一同或门(15)、第二同或门(16)、第三同或门(17)、第四同或门(18)的输出结果任意为“0”,则四输入与非门(19)输出信号EN=1,并发送到二输入或门(10),转到步骤6;

步骤5:二输入或门(10)输出上电复位信号por_trip=0并发送给上电复位延迟电路(8),上电复位延迟电路(8)正常工作,产生并输出一系列不同顺序的复位信号,控制整个芯片的不同模块的上电顺序,检测结束;

步骤6:二输入或门(10)输出上电复位信号por_trip=1并发送给上电复位延迟电路(8),上电复位延迟电路(8)无输出,整个芯片复位失败,检测结束。

本发明采用以上技术方案与现有技术相比,具有以下技术效果:

本发明的方法能够在上电复位过程中较早的判断芯片是否有足以控制所有存储单元的读写的能力。

附图说明

图1是本发明基于FPGA芯片内部上电电路工作原理结构框图;

图2是可编程存储单元SRAM结构图;

图3是本发明信号处理模块结构图;

图4是本发明电压检测及复位延迟模块结构图;

图5是本发明复位延迟模块结构图。

具体实施方式

下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

FPGA上电复位过程的存储单元读写检测系统,如图1所示,包括:

第一测试存储单元SRAM1、第二测试存储单元SRAM2、第三测试存储单元SRAM3、第四测试存储单元SRAM4,分别设置在FPGA芯片左上角、左下角、右上角和右下角外侧,用于写入数据并向信号处理模块5读出数据;第一测试存储单元SRAM1、第二测试存储单元SRAM2、第三测试存储单元SRAM3、第四测试存储单元SRAM4与FPGA中正常的配置SRAM单元结构相同,如图2所示,写操作时字线WL打开,写入数据“0”时,互补位线BL为“0”BLN为“1”静态存储单元具有双稳态结构,节点Q存入数据“0”,QN存入“1”,写入数据“1”时则相反;读操作时WL关闭,数据通过A端读出;

信号处理模块5,如图4所示,包括第一寄存器11、第二寄存器12、第三寄存器13、第四寄存器14,第一同或门15、第二同或门16、第三同或门17、第四同或门18,以及四输入与非门19,所述第一寄存器11、第二寄存器12、第三寄存器13、第四寄存器14的输出端分别与第一同或门15、第二同或门16、第三同或门17、第四同或门18的输入端相连,第一同或门15、第二同或门16、第三同或门17、第四同或门18的输出端均与四输入与非门19的输入端相连;信号处理模块5设置于芯片中心位置,用于记录第一测试存储单元SRAM1、第二测试存储单元SRAM2、第三测试存储单元SRAM3、第四测试存储单元SRAM4的写入数据;以及接收第一测试存储单元SRAM1、第二测试存储单元SRAM2、第三测试存储单元SRAM3、第四测试存储单元SRAM4的读出数据;同时,比较记录的写入数据和接收的读出数据,最终输出信号EN到电压检测电路7中的二输入或门10;

电压检测及复位延迟电路6,如图3所示,包括三组电压上电检测电路(7)、三输入与非门9、延迟模块、二输入或门10和上电复位延迟电路8,三组电压上电检测电路7的输出端与三输入与非门9的输入端相连,三输入与非门9、延迟模块、二输入或门10和上电复位延迟电路8依次相连;电压检测及复位延迟电路6设置于芯片中心位置,用于检测电压是否正常上电;以及,接收信号处理模块5的输出信号EN;同时,输出复位信号;

其中,三组电压上电检测电路7包括1.1V电源检测电路、2.5V电源检测电路好3.3V电源检测电路,用于检测芯片的三组电源是否正常上电;上电复位延迟电路8,如图5所示,包括若干个串联的D触发器,D触发器的个数由上电复位延迟电路8的延迟时间决定,当上电复位信号por_trip为“0”时,D触发器才能开始工作,上电复位延迟电路8产生一系列不同顺序的复位信号,控制整个芯片的不同模块的上电顺序,说明整个FPGA芯片的存储单元都不会由于驱动能力问题而导致不能够正常读写;当上电复位信号por_trip为“1”时,上电复位延迟电路8不能工作,输出没有达到预期的跳变,整个电路复位失败;

第一测试存储单元SRAM1、第二测试存储单元SRAM2、第三测试存储单元SRAM3、第四测试存储单元SRAM4均与信号处理模块5相连,信号处理模块5的输出端和电压检测及复位延迟电路6相连。

此外,基于以上检测系统,还提出了一种FPGA上电复位过程的存储单元读写检测系统的检测方法,包括以下步骤:

步骤1:在FPGA芯片左上角、左下角、右上角和右下角分别额外设置第一测试存储单元SRAM1、第二测试存储单元SRAM2、第三测试存储单元SRAM3、第四测试存储单元SRAM4,在芯片中心位置设置信号处理模块5和电压检测及复位延迟电路6,第一测试存储单元SRAM1、第二测试存储单元SRAM2、第三测试存储单元SRAM3、第四测试存储单元SRAM4均与信号处理模块5相连,信号处理模块5的输出端和电压检测及复位延迟电路6相连,如图1所示;

步骤2:当电压检测及复位延迟电路6中的三组电压上电检测电路7正常上电时,三输入与非门9输出“0”,并经过延迟模块发送到二输入或门10;

步骤3:分别向第一测试存储单元SRAM1、第二测试存储单元SRAM2、第三测试存储单元SRAM3、第四测试存储单元SRAM4写入数据,同时信号处理模块5中相对应的第一寄存器11、第二寄存器12、第三寄存器13、第四寄存器14记录写入的数据,即:第一寄存器11寄存第一测试存储单元SRAM1的写入数据,第二寄存器12寄存第二测试存储单元SRAM2的写入数据,第三寄存器13寄存第三测试存储单元SRAM3的写入数据,第四寄存器14寄存第四测试存储单元SRAM4的写入数据;

步骤4:第一测试存储单元SRAM1、第二测试存储单元SRAM2、第三测试存储单元SRAM3、第四测试存储单元SRAM4向信号处理模块5读出数据,分别通过第一同或门15、第二同或门16、第三同或门17、第四同或门18与第一寄存器11、第二寄存器12、第三寄存器13、第四寄存器14中记录的数据进行比较,若相同,则输出“1”,若不同,则输出“0”,即:第一测试存储单元SRAM1读出的数据与第一寄存器11寄存的数据经过第一同或门15进行比较,第二测试存储单元SRAM2读出的数据与第二寄存器12寄存的数据经过第二同或门16进行比较,第三测试存储单元SRAM3读出的数据与第三寄存器13寄存的数据经过第三同或门17进行比较,第四测试存储单元SRAM4读出的数据与第四寄存器14寄存的数据经过第四同或门18进行比较;

步骤5:将第一同或门15、第二同或门16、第三同或门17、第四同或门18的输出结果发送给四输入与非门19,若第一同或门15、第二同或门16、第三同或门17、第四同或门18的输出结果均为“1”,则四输入与非门19输出信号EN=0,并发送到电压检测及复位延迟电路6中的二输入或门10,转到步骤6;若第一同或门15、第二同或门16、第三同或门17、第四同或门18的输出结果任意为“0”,则四输入与非门19输出信号EN=1,并发送到电压检测及复位延迟电路6中的二输入或门10,转到步骤7;

步骤6:二输入或门10输出上电复位信号por_trip=0并发送给上电复位延迟电路8,上电复位延迟电路8正常工作,产生并输出一系列不同顺序的复位信号,控制整个芯片的不同模块的上电顺序,检测结束;

步骤7:二输入或门10输出上电复位信号por_trip=1并发送给上电复位延迟电路8,上电复位延迟电路8无输出,整个芯片复位失败,检测结束。

以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进,这些改进应视为本发明的保护范围。

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