CN104715083B - 使用fpga等效e2的方法和电路 - Google Patents

使用fpga等效e2的方法和电路 Download PDF

Info

Publication number
CN104715083B
CN104715083B CN201310674009.6A CN201310674009A CN104715083B CN 104715083 B CN104715083 B CN 104715083B CN 201310674009 A CN201310674009 A CN 201310674009A CN 104715083 B CN104715083 B CN 104715083B
Authority
CN
China
Prior art keywords
write
read
ram
latch
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201310674009.6A
Other languages
English (en)
Other versions
CN104715083A (zh
Inventor
叶宏伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Huahong Integrated Circuit Co Ltd
Original Assignee
Shanghai Huahong Integrated Circuit Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Huahong Integrated Circuit Co Ltd filed Critical Shanghai Huahong Integrated Circuit Co Ltd
Priority to CN201310674009.6A priority Critical patent/CN104715083B/zh
Publication of CN104715083A publication Critical patent/CN104715083A/zh
Application granted granted Critical
Publication of CN104715083B publication Critical patent/CN104715083B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开了一种使用FPGA等效E2的方法,可实现E2读、写、擦除、以及BANK、CHECK、CHIP操作相同的等效结果,在先锁存后擦写操作步骤上与真实E2功能保持一致,具有E2未经擦除可直接写入的等效功能。本发明还公开了一种在FPGA上实现所述方法的硬件电路,包括:一E2状态机,一页计数器电路,一BANK计数器电路,一CHIP计数器电路,一页锁存器,一双口RAM。本发明使用FPGA内部逻辑和BRAM搭建E2等效电路,用于不需要实现E2掉电保持数据功能的ASIC原型机验证和仿真器中,模拟真实E2的操作结果。

Description

使用FPGA等效E2的方法和电路
技术领域
本发明涉及使用FPGA(Field Programmable Gate Array现场可编程逻辑门阵列)进行ASIC(Application Specific Intergrated Circuits专用集成电路)原型机验证以及使用FPGA作为仿真器载体的领域,特别是涉及一种用FPGA等效E2的方法。本发明还涉及一种用于FPGA上实现所述方法的硬件电路。
背景技术
在各种智能卡领域的ASIC设计阶段通常会需要使用FPGA作为原型机验证,各种芯片厂家也会基于FPGA平台制作与芯片功能一致的仿真器提供给客户开发应用程序。在智能卡芯片设计中经常用E2作为客户应用程序和数据的存储介质,由于在ASIC设计阶段的原型机验证和制作仿真器时很多情况下无法获得IP(intellectual property right知识产权)厂家的E2测试片,一般都使用等效的方案实现E2的各种操作功能。E2的主要功能是读、擦、写,其中读可以按任意地址操作,而一个擦/写动作需要被操作的E2地址在同一个页地址内进行,分为锁存数据和启动擦/写两个阶段实现。锁存阶段把数据暂存入E2的页缓存,擦/写时E2内部启动编程高压完成擦除、写入动作;通常使用时先擦除E2需要写入数据的地址内容然后写入数据,擦除后E2的数据根据E2设计定义成全1或者全0。写入则是根据擦除后的数据把0改成1(擦除后全0),或者1改成0(擦除后全1)。如果E2不经过擦除直接写入,操作后E2中的数据为E2写入数据与E2中原保存数据的位与或者位或(根据E2厂家设计规定)。另外,E2模块还会针对IP可测性具有BANK(块操作模式)、CHECK(奇偶页校验模式)、CHIP(片操作模式)等测试功能,即启动BANK、CHECK和CHIP操作后,对一个页内地址数据的擦、写操作会在此页内所属BANK、所有奇数、偶数页或者整个CHIP内实现。一般在原型机验证和仿真器中常见的等效E2功能的方法是使用商用的SRAM(Static RAM静态随机存储器)外挂在FPGA芯片外,在FPGA内部根据外挂SRAM时序,通过修改ASIC的E2控制器逻辑实现SRAM的读写时序来模拟E2功能。由于E2与SRAM操作时序的差异,造成完全等效E2功能困难。一般只对E2的读和擦、写进行等效,对于E2未擦除直接写入以及测试用的模式功能都不做等效。这样在原型机验证和仿真器使用时造成E2部分功能缺失,影响验证的覆盖率,给使用人员带来不便。
发明内容
本发明要解决的技术问题是提供一种使用FPGA等效E2的方法,能够模拟真实E2的操作结果;为此,本发明还要提供一种在FPGA上实现所述方法的电路。
为解决上述技术问题,本发明的使用FPGA等效E2的方法,所述E2即EEPROM(电可擦可编程只读存储器);
用FPGA的BRAM(block memory块存储器)搭建一块第一双口RAM,模拟E2页锁存器功能;
用FPGA的BRAM搭建一块第二双口RAM,实现E2存储器功能;
用FPGA的逻辑,结合所述第一双口RAM和第二双口RAM实现等效E2的读、擦和写功能,并且实现包括BANK、CHECK、CHIP在内的为可测性设计(DFT)的特殊模式操作;
用同一个计数器电路产生所述第一双口RAM和第二双口RAM的地址信号、读信号和写信号,在一个时钟周期内,从所述第一双口RAM的读端口读出数据和从所述第二双口RAM的读端口读出数据,然后将从第一双口RAM的读端口和从第二双口RAM的读端口读出的数据进行或运算或者进行与运算,将运算结果写入第二双口RAM的写端口,实现E2单写功能。
在FPGA上实施所述的电路,包括:
一E2状态机,根据E2控制器输入的控制信号,识别出E2的读、写、擦、BANK、CHECK和CHIP操作状态;
一页锁存器,用于缓存E2控制器锁存入E2的数据;
一RAM,与所述页锁存器相连接,用于等效EEPROM存储器,存储E2的数据;
一页计数器电路,与所述E2状态机、页锁存器和RAM相连接,在页擦除和页写入状态时产生RAM的地址、读信号和写信号以及页锁存器的地址和读信号;
一BANK计数器电路,与所述E2状态机、页锁存器和RAM相连接,在BANK擦除和写入状态时产生RAM的地址、读信号和写信号以及页锁存器的地址和读信号;
一CHIP计数器电路,与所述E2状态机、页锁存器和RAM相连接,在CHECK与CHIP的擦除和写入状态时产生RAM的地址、读信号和写信号以及页锁存器的地址和读信号。
本发明使用FPGA的内部逻辑和BRAM资源等效E2的读、擦、写功能,并且实现BANK、CHECK、CHIP等为DFT(design for test可测性设计)的特殊模式操作。
本发明在先锁存后擦写操作步骤上与真实E2功能能够保持一致,具有E2未经擦除可直接写入的等效功能。
本发明可用于不需要实现E2掉电保持数据功能的ASIC原型机验证和仿真器中,模拟真实E2的操作结果。
附图说明
下面结合附图与具体实施方式对本发明作进一步详细的说明:
图1是使用FPGA等效EEPROM的电路框图;
图2是EEPROM读时序图;
图3是EEPROM擦、写时序图;
图4是EEPROM编程时序图;
图5是Xilinx(赛灵思)FPGA BRAM读写时序图(先写后读模式);
图6是双口RAM信号时序图。
具体实施方式
以一款ASIC芯片内部包含的E2为例,具体说明如下:
E2模块的读时序如图2所示,READ(读)信号为1时,以E2读数据输出同步信号DOUTSYN作为同步信号,根据输入的E2写入数据的地址EEAD,在E2数据输出端EEDBO读出相应的数据。E2数据操作模式EESEL32和E2操作模式EEMOD是E2控制器输出用来控制操作E2位宽和页、块、片操作模式的控制信号。t6是E2读数据的建立时间,用FPGA等效E2需要满足这个时间关系。
E2模块的擦、写时序如图3所示:ERASE/WRITE信号为1,指示当前的操作是擦/写,PROGRAM_EN信号为1时正式启动擦/写操作,擦/写期间E2根据已锁存的数据擦除或写入对应操作地址的存储空间;除了普通的读、擦、写模式外,E2模块为了自身的可测性会有一些特殊的模式,称为DFT模式;EMOD信号指示当前的擦/写操作是普通页模式、BANK、CHECK和CHIP模式,相对应锁存数据擦除/写入E2的页、BANK、奇、偶页或者整片E2。E2可以单擦、单写操作,单擦除操作后,被操作的E2数据根据E2设计规范被定义成全0或者全1;单写操作后被操作的E2数据根据E2设计是写入数据和原数据的位与或者位或。图3中VALID表示EMOD(E2模式信号)在擦、写过程中都需要保持不变;t15是擦写时间,根据操作模式不同一般为3ms~50ms。另外,E2的编程地址在擦写过程中不允许改变。
图4是一个完整的E2编程操作,首先是锁存数据阶段,设计芯片包含的E2控制器送出的E2清除缓存信号EEBUFCLR(脉冲信号)清除页锁存器中的数据。E2传输使能信号TRANSFER为1阶段,在E2地址线EEAD输入需要写入数据的地址,在E2写数据线EEDBI输入要写入的数据,在E2锁存数据输出同步信号EEDATASYN下写入页锁存器;然后启动擦/写操作,通常的操作为先擦除后写入。结合图1所示,为解决在FPGA上等效真实E2的技术问题,所述使用FPGA等效EEPROM的电路,包括:
一RAM,等效EEPROM存储器,使用FPGA的BRAM搭建成简单双口RAM,作为存储器件存储E2的数据。以Xil inx FPGA的BRAM(块存储器)为例,读写时序如图5所示。在每个时钟CLKA上升沿根据使能信号ENA和写信号WEA的状态读出、写入数据,写WEA、写使能ENA均为高电平有效。所述RAM具有一写端口和一读端口,写端口信号由写端口时钟CLKA、写地址总线ADDRA上的地址、写使能ENA、写WEA、写端口数据线DINA上的数据组成;读端口信号由读端口时钟CLKB、读地址总线ADDRB上的地址、读使能ENB和读出的数据DOUTB组成。RAM的数据宽度和深度根据E2存储器大小设置。对所述RAM写操作时,将从所述页锁存器的读端口读出的数据LATCH_DOUTB与从所述RAM读端口读出的数据DOUTB相与或者相或后,输入所述RAM的写端口数据线DINA。对所述RAM擦操作时,数据根据E2设计规范固定为全1或者全0,用写入RAM来代替擦除E2操作的效果。写入和擦除时根据所述页锁存器读出的数据LATCH_DOUTB最高位包含的锁存标记判断是否对当前地址的数据进行操作,用锁存标记位和RAM的写信号与操作来实现。由于清缓存时缓存中的所有锁存标记都被置为0,在对需要操作的地址锁存操作时,此地址对应数据位的锁存标记置1,锁存标记和RAM的写信号相与后的信号决定了E2地址是否进行写操作,FPGA的块存储器BRAM写操作是高有效,因此只有已锁存操作过的E2地址才可以被写入或擦除。所述RAM的读端口与写端口时钟反相,由所述各个计数器电路根据操作模式提供RAM的读端口的地址、读使能ENB;RAM的写端口的地址、写使能ENA和写WEA信号,如图6所示。为了实现等效E2未擦除直接写入的功能,在RAM的读端口时钟CLKB的上升沿从所述RAM的读端口读出数据DOUTB,在RAM的写端口时钟CLKA的上升沿,将所述读出的数据DOUTB与从所述页锁存器的读端口读出的数据LATCH_DOUTB进行相与或者相或操作后,输入RAM的写端口数据线DINA,写入RAM。
如果写入操作前已经实现过擦操作,被操作的RAM空间已经被写成全1或者全0,则将所述读出的数据DOUTB和从所述页锁存器的读端口读出的数据LATCH_DOUTB进行相与或者相或操作后,仍然保持所述页锁存器的读端口读出的数据LATCH_DOUTB。
一E2状态机,根据E2控制器输入的E2操作模式EMOD、E2读使能READ、E2擦使能ERASE和E2写使能WRITE信号,识别出E2的读、页擦、页写、BANK擦、BANK写、CHECK擦、CHECK写、CHIP擦和CHIP写等操作状态。
所述E2的读状态,用高速时钟采样出图2中E2数据输出同步信号DOUTSYN信号的上升沿,形成一个宽度为1个高速时钟周期的采样信号,将该采样信号和E2读使能信号READ信号与操作,输出E2读状态,并生成RAM读端口的读使能信号ENB。此时根据写入数据的地址EEAD生成地址信号输入RAM的读地址总线ADDRB,从RAM读出的数据DOUTB输出至E2读数据端EEDBO;在非E2读状态,E2数据输出端EEDBO输出0。
E2的页擦、页写状态,用高速时钟采样出图3中E2编程使能PROGRAM_EN信号的上升沿,形成一个宽度为1个高速时钟周期的页擦、写启动信号,用该启动信号启动页计数器电路,生成页擦、写时所述RAM写端口的写使能ENA、写WEA和写地址总线ADDRA上的地址信号,以及所述页锁存器读端口的使能LATCH_ENB和地址LATCH_ADDRB信号。
E2的BANK擦、写状态,控制一BANK计数器电路,生成BANK擦、写时所述RAM写端口的写使能ENA、写WEA和写地址总线ADDRA上的地址信号,以及所述页锁存器读端口的使能LATCH_ENB和地址LATCH_ADDRB信号。
所述E2的奇偶页校验模式CHECK擦、E2的奇偶页校验模式CHECK写、E2的片操作模式CHIP擦和E2的片操作模式CHIP写状态,控制一片操作模式CHIP计数器电路,生成奇偶页校验模式CHECK擦、奇偶页校验模式CHECK写、片操作模式CHIP擦和片操作模式CHIP写时所述RAM写端口的写使能ENA、写WEA和写地址总线ADDRA上的地址信号,以及所述页锁存器读端口的使能LATCH_ENB和地址LATCH_ADDRB信号。
CHECK操作将E2全部地址分为奇数页CHECK0和偶数页CHECK1,将CHIP操作生成的RAM写端口的写使能ENA、写WEA信号与CHIP操作计数器的页进位相与操作,屏蔽掉不需要的奇数或偶数页的写操作即可实现CHECK操作。
一页锁存器,由采用FPGA的BRAM实现的简单双口RAM组成,用来缓存储E2控制器锁存入E2的数据。具有一读端口和一写端口,读操作和写操作分开控制。在锁存操作时,所述RAM的写端口数据线DINA和写地址总线ADDRA分别连接E2控制器的E2写数据线EEDBI、E2地址线EEAD;采用高速时钟采样E2锁存数据输出同步信号EEDATASYN的上升沿,形成一个时钟周期的写信号,将其和E2传输使能TRANSFER信号相与后作为页锁存器写端口的写使能ENA和写WEA信号,将锁存的数据写入所述页锁存器。
所述页锁存器的数据宽度,在E2数据线位宽基础上另外增加一比特,将所述页锁存器读出数据的最高位作为锁存标记位,用于标记当前地址是否已被锁存。写入和擦除时,根据所述锁存标记位判断是否对当前地址的数据进行操作,在当前地址被锁存写入时将所述锁存标记位置1,只有已锁存操作过的E2地址才可以被写入或擦除;在复位或E2清除缓存信号EEBUFCLR置1时,清除所述页锁存器中数据,并将锁存标记位置0,准备下一次锁存操作。在写操作时,将从所述页锁存器读端口读出的数据LATCH_DOUTB和从RAM读出的数据DOUTB相与或者相或操作后,输入RAM的写端口数据线DINA。
一页计数器电路,由一最大计数值为E2页大小的计数器组成,使用高速时钟采样E2编程使能信号PROGRAM_EN的上升沿,生成一个时钟周期的页擦、写启动信号启动所述计数器。当所述页计数器计满一页后停止计数,根据计数值和E2状态机输出的页操作状态生成页锁存器读端口的地址LATCH_ADDRB和读使能LATCH_ENB信号;生成所述RAM写端口的写地址总线ADDRA、写使能ENA和写WEA信号,读端口的读地址总线ADDRB和读ENB使能信号,如图6所示。在页擦除状态时,所述RAM写端口的写使能ENA和写WEA信号与所述锁存标记位的值相与操作,只对已锁存的地址进行擦除。在页写入状态时,所述RAM写端口的写使能ENA和写WEA信号与所述锁存标记位的值相与操作,只对已锁存的地址进行写入,并且把从RAM读端口读出的数据DOUTB和从所述页锁存器读端口读出的数据LATCH_DOUTB相与或者相或操作后,输入写端口数据线DINA,实现写入E2的功能。
一BANK计数器电路,由一最大计数值为E2BANK大小的计数器组成,使用高速时钟采样E2编程使能信号PROGRAM_EN的上升沿,生成一个时钟周期的BANK擦、写启动信号启动计数器。当计数器计满其最大计数值后停止计数,根据计数值和所述E2状态机输出的BANK操作状态,生成所述页锁存器读端口的地址LATCH_ADDRB和读使能LATCH_ENB信号,生成所述RAM写端口的写地址总线ADDRA上的地址、写使能ENA和写WEA信号,生成所述RAM读端口的读地址总线ADDRB上的地址和读使能ENB信号,如图6所示。在BANK擦除状态时,将所述RAM的写使能ENA和写WEA信号与所述锁存标记位的值相与操作,只对已锁存的地址进行擦除。在BANK写入状态时,将所述RAM写使能ENA和写WEA信号与所述锁存标记位的值相与操作,只对已锁存的地址进行写入,并且把从RAM读端口读出的数据DOUTB和从所述页锁存器读出的数据LATCH_DOUTB相与或者相或操作后,输入RAM的写端口数据线DINA,实现写入E2的功能。
一CHIP计数器电路,由一最大计数值为E2CHIP大小的计数器组成,使用高速时钟采样E2编程使能信号PROGRAM_EN的上升沿,生成一个时钟周期的CHIP擦、写启动信号启动计数器,当计数器计满最大计数值后停止计数。根据计数值和E2E2状态机输出的CHIP操作状态生成所述页锁存器读端口的地址LATCH_ADDRB和读使能LATCH_ENB信号,生成所述RAM写端口的写地址总线ADDRA上的地址、写使能ENA和写WEA信号,生成所述RAM读端口的读地址总线ADDRB上的地址和读使能ENB信号,如图6所示。在CHIP擦除状态时,将所述RAM的写使能ENA和写WEA信号与所述锁存标记位的值相与操作,只对已锁存的地址进行擦除。在CHIP写入状态时,将所述RAM的写使能ENA和写WEA信号与所述锁存标记位的值相与操作,只对已锁存的地址进行写入。并且把从RAM读端口读出的数据DOUTB和从所述页锁存器读出的数据LATCH_DOUTB相与或者相或操作后,输入RAM的写端口数据线DINA,实现写入E2的功能。将CHIP擦、写操作生成所述RAM写端口的写使能ENA和写WEA信号与E2地址EEAD的页地址位相与操作后实现CHECK操作的擦、写操作。
FPGA内部都有一定规模的BRAM可供构建成大容量的RAM使用,由于FPGA的BRAM是同步操作,需要外加一同步时钟,另外为了电路稳定工作,将所有E2信号同步到同一时钟域,以E2的最高读速度的4倍左右选择一高速时钟作为E2等效电路的主时钟,等效电路还需一复位信号作为所有寄存器的全局复位。
综上所述,本发明利用FPGA的BRAM分别搭建一块双口RAM做页锁存,一块双口RAM做E2存储器,通过一E2状态机、一页计数器电路、一BANK计数器电路、一CHIP计数器电路协同工作,实现在FPGA上等效E2功能,并且等效模块使用ASIC的E2模块端口信号,方便同一等效方法在不同项目之间的移值。
以上通过具体实施方式和实施例对本发明进行了详细的说明,但这些并非构成对本发明的限制。在不脱离本发明原理的情况下,本领域的技术人员还可做出许多变形和改进,这些也应视为本发明的保护范围。

Claims (20)

1.一种使用FPGA等效E2的方法,所述E2即EEPROM;其特征在于:
用FPGA的块存储器BRAM搭建一块第一双口RAM,模拟E2页锁存器功能;
用FPGA的BRAM搭建一块第二双口RAM,实现E2存储器功能;
用FPGA的逻辑,结合所述第一双口RAM和第二双口RAM实现等效E2的读、擦和写功能,并且实现包括块操作模式BANK、奇偶页校验模式CHECK和片操作模式CHIP在内的为可测性设计的特殊模式操作;
用同一个计数器电路产生所述第一双口RAM和第二双口RAM的地址信号、读信号和写信号;在一个时钟周期内,从所述第一双口RAM的读端口读出数据和从所述第二双口RAM的读端口读出数据,然后将从第一双口RAM的读端口和从第二双口RAM的读端口读出的数据进行相或运算或者进行相与运算,将运算结果写入第二双口RAM的写端口,实现E2单写功能。
2.用于实施权利要求1所述方法的硬件电路,其特征在于,包括:
一E2状态机,根据E2控制器输入的控制信号,识别出E2的读、写、擦、块操作模式BANK、奇偶页校验模式CHECK和片操作模式CHIP操作状态;
一页锁存器,用于缓存E2控制器锁存入E2的数据;
一RAM,与所述页锁存器相连接,用于等效EEPROM存储器,存储E2的数据;
一页计数器电路,与所述E2状态机、页锁存器和RAM相连接,在页擦除和页写入状态时产生RAM的地址、读信号和写信号以及页锁存器的地址和读信号;
一块操作模式BANK计数器电路,与所述E2状态机、页锁存器和RAM相连接,在块操作模式BANK擦除和写入状态时产生RAM的地址、读信号和写信号以及页锁存器的地址和读信号;
一片操作模式CHIP计数器电路,与所述E2状态机、页锁存器和RAM相连接,在奇偶页校验模式CHECK与片操作模式CHIP的擦除和写入状态时产生RAM的地址、读信号和写信号以及页锁存器的地址和读信号。
3.如权利要求2所述的硬件电路,其特征在于:所述RAM,由采用FPGA的块存储器BRAM搭建成的双口RAM所构成;
所述RAM具有一写端口和一读端口;写端口信号由写端口时钟CLKA、写地址总线ADDRA上的地址、写使能ENA、写WEA和写端口数据线DINA上的数据组成;读端口信号由读端口时钟CLKB、读地址总线ADDRB上的地址、读使能ENB和读出的数据DOUTB组成;RAM的数据宽度和深度根据E2存储器大小设置;
在每个写端口时钟CLKA上升沿根据写使能ENA和写WEA信号的状态读出和写入数据,写WEA和写使能ENA信号均为高电平有效。
4.如权利要求2或3所述的硬件电路,其特征在于:
对所述RAM写操作时,将从所述页锁存器的读端口读出的数据LATCH_DOUTB与从所述RAM读端口读出的数据DOUTB相与或者相或后,输入所述RAM的写端口数据线DINA;
对所述RAM擦操作时,数据根据E2设计规范固定为全1或者全0,用写入RAM来代替擦除E2操作的效果;
所述页锁存器的数据宽度,在E2数据线位宽基础上另外增加一比特,将所述页锁存器读出的数据LATCH_DOUTB最高位作为锁存标记位;
进行写入和擦除时,根据所述锁存标记判断是否对当前地址的数据进行操作,只有已锁存操作过的E2地址才可以被写入或擦除。
5.如权利要求2或3所述的硬件电路,其特征在于:所述RAM的读端口时钟CLKB与写端口时钟CLKA反相,由所述各个计数器电路根据操作模式提供RAM的读端口的地址、读使能ENB;RAM的写端口的地址、写使能ENA和写WEA信号;
在RAM的读端口时钟CLKB的上升沿从所述RAM的读端口读出数据DOUTB;在RAM的写端口时钟CLKA的上升沿,将所述读出的数据DOUTB与从所述页锁存器的读端口读出的数据LATCH_DOUTB进行相与或者相或操作后,输入RAM的写端口数据线DINA,写入RAM;
如果写入操作前已经实现过擦操作,被操作的RAM空间已经被写成全1或者全0,则将所述读出的数据DOUTB和从所述页锁存器的读端口读出的数据LATCH_DOUTB进行相与或者相或操作后,仍然保持所述页锁存器的读端口读出的数据LATCH_DOUTB。
6.如权利要求2所述的硬件电路,其特征在于:所述E2状态机,根据E2控制器输入的E2操作模式EMOD、E2读使能READ、E2擦使能ERASE和E2写使能WRITE控制信号,识别出E2的读、页擦、页写、块操作模式BANK擦、块操作模式BANK写、奇偶页校验模式CHECK擦、奇偶页校验模式CHECK写、片操作模式CHIP擦和片操作模式CHIP写操作状态。
7.如权利要求6所述的硬件电路,其特征在于:所述E2的读状态,用高速时钟采样E2读数据输出同步信号DOUTSYN的上升沿,形成一个宽度为1个高速时钟周期的采样信号,将该采样信号和E2读使能信号READ与操作,输出E2读状态信号,并生成RAM读端口的读使能ENB信号;此时根据写入数据的地址EEAD生成地址信号输入RAM的读地址总线ADDRB,从RAM读出的数据DOUTB输出至E2数据输出端EEDBO;在非E2读状态,E2数据输出端EEDBO输出0。
8.如权利要求6所述的硬件电路,其特征在于:所述E2的奇偶页校验模式CHECK擦、E2的奇偶页校验模式CHECK写、E2的片操作模式CHIP擦和E2的片操作模式CHIP写状态,控制一片操作模式CHIP操作计数器,生成奇偶页校验模式CHECK擦、奇偶页校验模式CHECK写、片操作模式CHIP擦和片操作模式CHIP写时所述RAM写端口的写使能ENA、写WEA和写地址总线ADDRA上的地址信号,以及所述页锁存器读端口的使能LATCH_ENB和地址LATCH_ADDRB信号。
9.如权利要求2所述的硬件电路,其特征在于:奇偶页校验模式CHECK操作将E2全部地址分为奇数页CHECK0和偶数页CHECK1;将片操作模式CHIP操作生成的RAM写端口的写使能ENA、写信号WEA与片操作模式CHIP操作计数器电路的页进位相与操作,屏蔽掉不需要的奇数或偶数页的写操作即可实现奇偶页校验模式CHECK操作。
10.如权利要求2所述的硬件电路,其特征在于:所述页锁存器,由采用FPGA的BRAM实现的双口RAM所构成,具有一读端口和一写端口,读操作和写操作分开控制;在锁存操作时,所述RAM的写端口数据线DINA和写地址总线ADDRA分别连接E2控制器的E2写数据线EEDBI、E2地址线EEAD,采用高速时钟采样E2锁存数据输出同步信号EEDATASYN的上升沿,形成一个时钟周期的写信号,将其和E2传输使能TRANSFER信号相与后作为页锁存器写端口的写使能ENA和写WEA信号,将锁存的数据写入所述页锁存器。
11.如权利要求2所述的硬件电路,其特征在于:所述页锁存器的数据宽度,在E2数据线位宽基础上另外增加一比特,将所述页锁存器读出数据的最高位作为锁存标记位;写入和擦除时,根据所述锁存标记位判断是否对当前地址的数据进行操作,在当前地址被锁存写入时将所述锁存标记位置1,只有已锁存操作过的E2地址才可以被写入或擦除;在复位或E2清除缓存信号EEBUFCLR置1时,清除所述页锁存器中数据,并将锁存标记位置0,准备下一次锁存操作。
12.如权利要求2或11所述的硬件电路,其特征在于:在写操作时,将从所述页锁存器读端口读出的数据LATCH_DOUTB和从RAM读出的数据DOUTB相与或者相或操作后,输入所述RAM的写端口数据线DINA。
13.如权利要求2所述的硬件电路,其特征在于:所述页计数器电路由一最大计数值为E2页大小的计数器组成,采用高速时钟采样E2编程使能PROGRAM_EN信号的上升沿,生成一个时钟周期的页擦和页写启动信号启动所述计数器;
当所述页计数器电路计满一页后停止计数,根据计数值和E2状态机输出的页操作状态生成所述页锁存器读端口的地址LATCH_ADDRB和读使能LATCH_ENB信号;生成所述RAM写端口的写地址总线ADDRA上的地址、写使能ENA和写WEA信号,读端口的读地址总线ADDRB上的地址和读ENB使能信号。
14.如权利要求13所述的硬件电路,其特征在于:所述页锁存器的数据宽度,在E2数据线位宽基础上另外增加一比特,将所述页锁存器读出的数据LATCH_DOUTB最高位作为锁存标记位;
在页擦除状态时,所述RAM写端口的写使能ENA和写WEA信号与所述锁存标记位相与操作,只对已锁存的地址进行擦除;
在页写入状态时,所述RAM写端口的写使能ENA和写WEA信号与所述锁存标记位相与操作,只对已锁存的地址进行写入,并且把从RAM读端口读出的数据DOUTB和从页锁存器读端口读出的数据LATCH_DOUTB相与或者相或操作后,输入所述RAM写端口数据线DINA,实现写入E2的功能。
15.如权利要求2所述的硬件电路,其特征在于:所述块操作模式BANK计数器电路由一最大计数值为E2块操作模式BANK大小的计数器组成,使用高速时钟采样E2编程使能信号PROGRAM_EN的上升沿,生成一个时钟周期的块操作模式BANK擦启动信号和写启动信号启动所述计数器;当该计数器计满其最大计数值后停止计数,根据计数值和所述E2状态机输出的块操作模式BANK操作状态,生成所述页锁存器读端口的地址LATCH_ADDRB和读使能LATCH_ENB信号;生成所述RAM读端口的读地址总线ADDRB上的地址和读使能ENB信号;生成所述RAM写端口的写地址总线ADDRA上的地址、写WEA和写使能WEA信号。
16.如权利要求15所述的硬件电路,其特征在于:所述页锁存器的数据宽度,在E2数据线位宽基础上另外增加一比特,将所述页锁存器读出的数据LATCH_DOUTB最高位作为锁存标记位;
在块操作模式BANK擦除状态时,所述RAM写端口的写使能ENA和写WEA信号与所述锁存标记位的值进行相与操作,只对已锁存的地址进行擦除;
在块操作模式BANK写入状态时,所述RAM写端口的写使能ENA和写WEA信号与所述锁存标记位的值进行相与操作,只对已锁存的地址进行写入,并且把从RAM读端口读出的数据DOUTB和所述页锁存器读出的数据LATCH_DOUTB进行相与或者相或操作后,输入所述RAM写端口数据线DINA,实现写入E2的功能。
17.如权利要求2所述的硬件电路,其特征在于:所述片操作模式CHIP计数器电路由一最大计数值为E2片操作模式CHIP大小的计数器组成,使用高速时钟采样E2编程使能信号PROGRAM_EN的上升沿,生成一个时钟周期的片操作模式CHIP擦启动信号和写启动信号启动计数器,当计数器计满其最大计数值时停止计数;根据计数值和E2状态机输出的片操作模式CHIP操作状态,生成所述页锁存器读端口的地址LATCH_ADDRB和读使能LATCH_ENB信号;生成所述RAM写端口的写地址总线ADDRA上的地址、写使能ENA和写WEA信号;生成所述RAM读端口的读地址总线ADDRB上的地址和读使能ENB信号。
18.如权利要求17所述的硬件电路,其特征在于:所述页锁存器的数据宽度,在E2数据线位宽基础上另外增加一比特,将所述页锁存器读出的数据LATCH_DOUTB最高位作为锁存标记位;
在片操作模式CHIP擦除状态时,所述RAM写端口的写使能ENA和写WEA信号与所述锁存标记位的值进行相与操作,只对已锁存的地址进行擦除;
在片操作模式CHIP写入状态时,所述RAM写端口的写使能ENA和写WEA信号与所述锁存标记位的值进行相与操作,只对已锁存的地址进行写入,并且把从RAM读端口读出的数据DOUTB和从所述页锁存器读出的数据LATCH_DOUTB相与或者相或操作后,输入所述RAM写端口的写端数据线DINA,实现写入E2的功能。
19.如权利要求2所述的硬件电路,其特征在于:将所有E2信号同步到同一时钟域,以E2的最高读速度的4倍选择一高速时钟作为所述硬件电路的主时钟;复位信号将所有寄存器全局复位。
20.如权利要求7、10、13、15、或17所述的硬件电路,其特征在于:所述高速时钟,是指以E2的最高读速度的4倍选择一时钟作为高速时钟;且该高速时钟作为所述硬件电路的主时钟。
CN201310674009.6A 2013-12-11 2013-12-11 使用fpga等效e2的方法和电路 Expired - Fee Related CN104715083B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310674009.6A CN104715083B (zh) 2013-12-11 2013-12-11 使用fpga等效e2的方法和电路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310674009.6A CN104715083B (zh) 2013-12-11 2013-12-11 使用fpga等效e2的方法和电路

Publications (2)

Publication Number Publication Date
CN104715083A CN104715083A (zh) 2015-06-17
CN104715083B true CN104715083B (zh) 2018-02-13

Family

ID=53414409

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310674009.6A Expired - Fee Related CN104715083B (zh) 2013-12-11 2013-12-11 使用fpga等效e2的方法和电路

Country Status (1)

Country Link
CN (1) CN104715083B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7090127B2 (en) * 2002-07-08 2006-08-15 The Boeing Company Connector identification module for mobile platform
CN101251753A (zh) * 2008-04-08 2008-08-27 浙江大学 基于fpga的具有并行处理结构的高速伺服控制器
CN101667169A (zh) * 2008-09-03 2010-03-10 中国科学院上海技术物理研究所 一种数字信号的多处理器并行处理系统
CN102063939A (zh) * 2009-11-18 2011-05-18 中兴通讯股份有限公司 一种电可擦除可编程只读存储器的实现方法和装置
CN102508802A (zh) * 2011-11-16 2012-06-20 刘大可 基于并行随机存储器的数据写入、读取方法、装置及系统
CN203084718U (zh) * 2012-11-29 2013-07-24 艺伦半导体技术股份有限公司 一种现场可编程门阵列

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7090127B2 (en) * 2002-07-08 2006-08-15 The Boeing Company Connector identification module for mobile platform
CN101251753A (zh) * 2008-04-08 2008-08-27 浙江大学 基于fpga的具有并行处理结构的高速伺服控制器
CN101667169A (zh) * 2008-09-03 2010-03-10 中国科学院上海技术物理研究所 一种数字信号的多处理器并行处理系统
CN102063939A (zh) * 2009-11-18 2011-05-18 中兴通讯股份有限公司 一种电可擦除可编程只读存储器的实现方法和装置
CN102508802A (zh) * 2011-11-16 2012-06-20 刘大可 基于并行随机存储器的数据写入、读取方法、装置及系统
CN203084718U (zh) * 2012-11-29 2013-07-24 艺伦半导体技术股份有限公司 一种现场可编程门阵列

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于FPGA的E2PROM读写控制设计及实现;宋翠芳 等;《中南民族大学学报(自然科学版)》;20060930;第62-65页 *
基于FPGA的可靠性E2PROM控制器设计;接辉 等;《微计算机信息》;20090715;第146-148、193页 *

Also Published As

Publication number Publication date
CN104715083A (zh) 2015-06-17

Similar Documents

Publication Publication Date Title
CN109783954B (zh) 一种ies联合fpga硬件仿真加速系统
CN201886122U (zh) 一种基于pxi总线的数字测试模块
CN108228526A (zh) 电源隔离电路以及多电源域多电源隔离系统
US9639495B2 (en) Integrated controller for training memory physical layer interface
TWI221614B (en) Tester architecture construction data generating method, tester architecture constructing method and test circuit
CN103914580B (zh) 一种用于fpga电路位流仿真的方法
CN102841950B (zh) 一种逻辑存储单元自动验证的方法及装置
CN103577373B (zh) 用于在串行数据信号中对准和减少歪斜的技术
CN103150228A (zh) 面向高速缓冲存储器的可综合伪随机验证方法及装置
CN109408846A (zh) 集成电路、非暂时性计算机可读介质以及计算系统
CN103996416A (zh) 一种可重用的ftl验证方法
CN109087677A (zh) 存储器装置及其数据读取方法
CN109977558A (zh) 一种芯片寄存器代码结构的生成方法、装置及存储介质
CN106487362A (zh) 半导体电路
US8301933B2 (en) Multi-clock asynchronous logic circuits
CN104715083B (zh) 使用fpga等效e2的方法和电路
CN102565683A (zh) 一种测试向量的生成与验证方法
Che FPGA-based memory test system design and test algorithm implementation
CN107943644A (zh) 一种用于基于local bus总线的设计的功能验证平台的搭建方法
CN107491605A (zh) 一种用于芯片设计的功能验证方法及平台
CN103794245B (zh) 一种spi接口输出电路、相变存储器的读控制电路及方法
CN105260545B (zh) 一种可编程电路系统的验证方法
CN106339282B (zh) 一种信息存储系统和程序烧写及程序启动加载方法
CN112329372B (zh) 一种用于信号完整性分析的码型的产生方法
CN104332180B (zh) 存储器烧录接口电路及烧录方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180213

Termination date: 20191211

CF01 Termination of patent right due to non-payment of annual fee