用于flash型可编程逻辑器件的数据读写控制电路的制作方法

文档序号:26759846发布日期:2021-09-25 05:30阅读:108来源:国知局
用于flash型可编程逻辑器件的数据读写控制电路的制作方法

1.本发明涉及可编程逻辑器件领域,尤其是一种用于flash型可编程逻辑器件的数据读写控制电路。


背景技术:

2.可编程逻辑器件基于重复配置的存储技术设计,可以通过重新下载编程完成电路的修改,具有开发周期短、成本低、风险小、便于电子系统维护和升级等优点,因此成为了集成电路芯片的主流。
3.现有的可编程逻辑器件的配置存储器架构如图1所示,主要包括读写控制电路、数据移位寄存器dsr、地址译码器asr、存储单元flashcell构成的存储阵列,由于其分布广、遍布整个芯片,具体的级联级数和芯片容量大小有关。在清零阶段,所有的存储单元flashcell输出为0,在配置数据阶段,读写控制电路配置比特流加载到数据移位寄存器dsr,通过地址译码器asr再配置到存储单元flashcell,现有的读写控制电路主要实现存储功能基本配置的功能,功能较为单一,而现有许多复杂的集成电路芯片在芯片复位后需要加载配置信息,或者在工作状态中重新加载指定的配置信息,目前的配置存储器中的读写控制电路难以满足这种功能需求。


技术实现要素:

4.本发明人针对上述问题及技术需求,提出了一种用于flash型可编程逻辑器件的数据读写控制电路,本发明的技术方案如下:
5.一种用于flash型可编程逻辑器件的数据读写控制电路,该数据读写控制电路包括数据选择模块、数据锁存模块、数据驱动模块、回读控制模块和数据修调模块,数据选择模块包括配置数据通道和回写数据通道,配置数据通道的输入端作为数据读写控制电路的数据端获取配置数据,配置数据通道的输出端与回写数据通道的输出端相连并连接数据锁存模块的输入端,数据锁存模块的输出端连接数据驱动模块的输入端,数据驱动模块的输出端作为数据读写控制电路的输出端连接flash存储单元,数据驱动模块的输出端还通过回读控制模块连接数据修调模块的输入端,数据修调模块的输出端连接回写数据通道的输入端;
6.数据读写控制电路在进行数据写入时,数据选择模块选通配置数据通道将配置数据写入数据锁存模块中进行锁存,再通过数据驱动模块输出相应的配置数据并写入flash存储单元;
7.数据读写控制电路在进行数据回写时,通过回读控制模块将输出控制模块的输出端的配置数据传输到数据修调模块进行数据修调得到修调后配置数据,数据选择模块选通回写数据通道将修调后配置数据写入数据锁存模块中进行锁存,再通过数据驱动模块输出并写入flash存储单元。
8.本发明的有益技术效果是:
9.本技术公开了一种用于flash型可编程逻辑器件的数据读写控制电路,该数据读写控制电路能够实现稳定的数据配置、数据回写和数据校验,除了可以实现常规的存储功能基本配置,还可以根据用户应用要求,实现配置数据写入和配置数据校验的功能,不占用额外的寄存器单元,实现灵活,适用于大规模可编程器件。
附图说明
10.图1是现有的可编程逻辑器件的配置存储器架构图。
11.图2是本技术公开的数据读写控制电路的一个实施例的电路图。
12.图3是本技术公开的数据读写控制电路在另一个实施例中包含的数据校验模块的电路图。
13.图4是本技术公开的数据读写控制电路进行数据写入时的部分信号波形示意图。
14.图5是本技术公开的数据读写控制电路进行数据回写和回读校验时的部分信号波形示意图。
具体实施方式
15.下面结合附图对本发明的具体实施方式做进一步说明。
16.本技术公开了一种用于flash型可编程逻辑器件的数据读写控制电路,请参考图2,该数据读写控制电路包括数据选择模块、数据锁存模块、数据驱动模块、回读控制模块和数据修调模块。其中,数据选择模块包括配置数据通道和回写数据通道,配置数据通道的输入端作为数据读写控制电路的数据端d获取配置数据data。配置数据通道的输出端与回写数据通道的输出端相连并连接数据锁存模块的输入端,数据锁存模块的输入端获取到的数据sel_d即为经过选择的数据。数据锁存模块的输出端连接数据驱动模块的输入端,数据驱动模块的输出端作为数据读写控制电路的输出端bl连接flash存储单元(flashcell)。数据驱动模块的输出端还通过回读控制模块连接数据修调模块的输入端,数据修调模块的输出端连接回写数据通道的输入端提供修调后配置数据read_data。在一个实施例中,如图2所示,回读控制模块为受控于回读使能信号read_ctrl1的第九nmos管n9,n9的源极连接数据驱动模块的输出端、漏极连接数据修调模块的输入端。
17.数据读写控制电路在进行数据写入时,数据选择模块选通配置数据通道将d端输入的配置数据data写入数据锁存模块中进行锁存,再通过数据驱动模块在bl端输出配置数据data并写入flash存储单元。
18.数据读写控制电路在进行数据回写时,通过回读控制模块将输出控制模块的输出端的配置数据传输到数据修调模块进行数据修调得到修调后配置数据read_data,数据选择模块选通回写数据通道将修调后配置数据read_data写入数据锁存模块中进行锁存,再通过数据驱动模块在bl端输出修调后配置数据read_data并写入flash存储单元。其中,数据修调模块可以采用现有的数据修调电路来实现数据修调的功能,本技术对其电路结构不做限定。
19.由此,基于本技术公开的结构,数据读写控制电路不仅可以实现稳定的数据配置功能,还可以实现数据回写功能,满足使用需要。需要说明的是,d端输入的配置数据data在到达bl端输出的过程中,会经过诸如电平转换等处理,所以严格上来说,bl端输出的配置数
据与d端输入的配置数据并不是完全相同的数据,但本技术重点在于对原始的配置数据和修调后配置数据这两种不同内容的数据进行选择输出,因此将其统称为配置数据。
20.在一个实施例中,如图2所示,数据选择模块中的配置数据通道包括第零nmos管n0、第一nmos管n1和第二nmos管n2。第零nmos管n0的漏极作为数据读写控制电路的数据端d、源极连接第一nmos管n1的漏极,第一nmos管n1的源极连接第二nmos管n2的漏极,第二nmos管n2的源极作为配置数据通道的输出端。第零nmos管n0的栅极受控于第二控制信号row2,第一nmos管n1的栅极受控于第一控制信号row1,第二nmos管n2的栅极受控于移位使能信号shift_en。当第一控制信号row1、第二控制信号row2、移位使能信号shift_en均为高电平时,数据选择模块选通配置数据通道。
21.数据选择模块中的回写数据通道包括第三nmos管n3和第四nmos管n4。第三nmos管n3的漏极作为回写数据通道的输入端、源极连接第四nmos管n4的漏极,第四nmos管n4的源极作为回写数据通道的输出端。第三nmos管n3的栅极受控于回写控制信号read_ctrl0,第四nmos管n4的栅极受控于回写移位使能信号read_shift_en。当回写控制信号read_ctrl0和回写移位使能信号read_shift_en均为高电平时,数据选择模块选通回写数据通道。
22.数据选择模块中还包括通过漏极与配置数据通道和回写数据通道的输出端相连的第十四nmos管n14,第十四nmos管n14的源极接地、栅极受控于初值使能信号shiftn_en。n14主要用于为数据锁存模块提供初始值,当进行数据写入和数据回写时,初值使能信号shiftn_en为低电平使n14断开。
23.在另一个实施例中,如图2所示,在数据驱动模块中,第五pmos管p5的源极连接工作电源vdd、漏极连接第六pmos管p6的源极,第六pmos管p6的漏极连接第八nmos管n8的漏极,第八nmos管n8的源极连接第七nmos管n7的漏极,第七nmos管n7的源极接地。第五pmos管p5的栅极与第八nmos管n8的栅极相连并作为数据驱动模块的输入端连接数据锁存模块。第七nmos管n7的栅极受控于第一驱动使能信号program_en,第六pmos管p6的栅极受控于第二驱动使能信号programn_en,第六pmos管p6和第八nmos管n8的公共端作为数据驱动模块的输出端连接bl端。当第一驱动使能信号program_en为高电平、第二驱动使能信号programn_en为低电平时,数据驱动模块将数据锁存模块锁存的数据输出。
24.在另一个实施例中,该数据读写控制电路在回写时还可以实现回读校验功能,则该数据读写控制电路还包括数据校验模块,数据校验模块连接数据锁存模块获取配置数据以及修调后配置数据进行比较并输出校验结果。
25.则为了实现回读校验功能,数据锁存模块包括相连的第一级锁存器和第二级锁存器,第一级锁存器连接数据选择模块,第二级锁存器连接数据驱动模块,两级锁存器均连接数据校验模块。在数据读写控制电路在进行数据写入时,数据选择模块选通配置数据通道将配置数据data锁存到数据锁存模块的第一级锁存器后,再将第一级锁存器中的配置数据data锁存到第二级锁存器,数据驱动模块将第二级锁存器锁存的配置数据data输出。数据读写控制电路在进行数据回写时,数据锁存模块的第二级锁存器保持锁存配置数据data,数据选择模块选通回写数据通道将修调后配置数据read_data锁存到数据锁存模块的第一级锁存器。第一级锁存器中的修调后配置数据read_data以及第二级锁存器中的配置数据data传输到数据校验模块进行比较。
26.则如图2所示,在一个实施例中,具有两级锁存器结构的数据锁存模块包括反向连
接的第二反相器t2和第一反相器t1构成的第一级锁存器,以及反向连接的第四反相器t4和第三反相器t3构成的第二级锁存器,其中:
27.第二反相器t2的输出端与第一反相器t1的输入端相连并连接至第五nmos管n5的漏极,第五nmos管n5的栅极受控于第零控制信号row0。第五nmos管n5的源极连接第十五nmos管n15的漏极,第十五nmos管n15的源极接地,第十五nmos管n15的栅极作为数据锁存模块的输入端获取数据选择模块选择后的数据sel_d。第二反相器t2的输入端连接第一反相器t1的输出端并连接至第六nmos管n6的漏极,第六nmos管n6的源极接地,第六nmos管n6的栅极受控于第一复位信号rst。
28.第四反相器t4的输出端与第三反相器t3的输入端相连并连接至第零pmos管p0的漏极,第零pmos管p0的源极连接工作电源vdd、栅极受控于第二复位信号nrst。第四反相器t4的输入端连接第三反相器t3的输出端并作为数据锁存模块的输出端连接至数据驱动模块。
29.第四反相器t4的输出端还连接第三pmos管p3的漏极,第三pmos管p3的源极连接第一pmos管p1的漏极,第三pmos管p3的栅极连接第二反相器t2的输出端,第三pmos管p3的源极连接工作电源vdd,p1的栅极受控于回写锁存信号read_nrst。第四反相器t4的输入端连接第四pmos管p4的漏极,第四pmos管p4的源极连接第二pmos管p2的漏极,第四pmos管p4的栅极连接第一反相器t1的输出端,第二pmos管p2的源极连接工作电源vdd,第二pmos管p2的栅极受控于写入锁存信号write_nrst。
30.在另一个实施例中,如图3所示,在数据校验模块中,第七pmos管p7和第十nmos管n10的栅极相连并受控于第二级锁存器锁存的配置数据,结合图2的电路,也即p7和n10的栅极连接至t4的输出端q1。第七pmos管p7的源极连接工作电源vdd,第十nmos管n10的源极接地,第七pmos管p7和第十nmos管n10的漏极相连并连接第九pmos管p9和第十二nmos管n12的栅极,第九pmos管p9和第十二nmos管n12的漏极相连并连接第十三nmos管n13的栅极,第九pmos管p9的源极连接第十一nmos管n11的栅极并受控于第一级锁存器锁存的修调后配置数据,结合图2的电路,也即p9的源极和n11的栅极连接至t1的输出端q。第十一nmos管n11的源极与第八pmos管p8的源极相连并连接第七pmos管p7的漏极,第十一nmos管n11的漏极和第八pmos管p8的漏极相连并连接第十三nmos管n13的栅极,第八pmos管p8的栅极与第十二nmos管n12的源极受控于同一个信号且与第一级锁存器锁存的修调后配置数据的信号相反,结合图2的电路,也即n12的源极和p8的栅极连接t1的输入端qn。第十三nmos管n13的源极接地、漏极用于输出校验结果verify_d,且当第一级锁存器锁存的修调后配置数据与第二级锁存器锁存的配置数据相同时也即q与q1相等时,数据校验模块输出的校验结果为高电平并指示校验通过。否则数据校验模块输出的校验结果为低电平并指示校验不通过。
31.基于图2和3所示的电路图,数据读写控制电路在进行数据写入时的各主要信号波形图如图4所示,在进行数据回写并校验时的各主要信号波形图如图5所示,工作过程如下:
32.数据读写控制电路在进行数据写入时,控制第一复位信号rst为高电平对第一级锁存器进行复位,使得第一反相器t1的输出端q为低电平、输入端qn为高电平。控制row2、row1和shift_en为高电平、shiftn_en为低电平,数据选择模块选通配置数据通道将配置数据写入数据锁存模块,在控制第零控制信号row0为高电平时,配置数据被锁存在第一反相器t1的输出端q。控制第二复位信号nrst为高电平对第二级锁存器进行复位,第四反相器t4
的输出端q1为高电平、输入端qn1为低电平,在控制写入锁存信号write_nrst为低电平时,第一反相器t1的输出端q的配置数据锁存到第四反相器t4的输出端q1。然后控制第一驱动使能信号program_en为高电平、第二驱动使能信号programn_en为低电平,通过数据驱动模块将第四反相器t4的输出端q1的数据输出。
33.数据读写控制电路在进行数据回写并校验时,保持第四反相器t4的输出端q1锁存有配置数据,控制第一复位信号rst为高电平对第一级锁存器进行复位,使得第一反相器t1的输出端q为低电平、输入端qn为高电平。控制read_ctrl1为高电平,bl端的配置数据回读至数据修调模块进行数据修调后输出修调后配置数据read_data。控制read_ctrl0和read_shift_en为高电平、shiftn_en为低电平,数据选择模块选通回写数据通道将修调后配置数据read_data写入数据锁存模块。在控制第零控制信号row0为高电平时,修调后配置数据read_data被锁存在第一反相器t1的输出端q。第一反相器t1的输出端q以及第四反相器t4的输出端q1传输到数据校验模块进行比较。校验通过后,控制回写锁存信号read_nrst为低电平,第一反相器t1的输出端q的修调后配置数据read_data锁存到第四反相器t4的输出端q1。控制第一驱动使能信号program_en为高电平、第二驱动使能信号programn_en为低电平,通过数据驱动模块将第四反相器t4的输出端q1的修调后配置数据read_data输出。
34.在实际应用时,该数据读写控制电路包括若干个并行的基本单元,每个基本单元分别包括数据选择模块、数据锁存模块、数据驱动模块、回读控制模块和数据修调模块且形成上述电路结构,则多个基本单元并行构成flash存储单元阵列的控制电路,适用于大规模可编程逻辑器件。
35.以上所述的仅是本技术的优选实施方式,本发明不限于以上实施例。可以理解,本领域技术人员在不脱离本发明的精神和构思的前提下直接导出或联想到的其他改进和变化,均应认为包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1