CN112069768A - 一种针对双端口sram输入输出延时优化的方法 - Google Patents
一种针对双端口sram输入输出延时优化的方法 Download PDFInfo
- Publication number
- CN112069768A CN112069768A CN202010934790.6A CN202010934790A CN112069768A CN 112069768 A CN112069768 A CN 112069768A CN 202010934790 A CN202010934790 A CN 202010934790A CN 112069768 A CN112069768 A CN 112069768A
- Authority
- CN
- China
- Prior art keywords
- dual
- output
- port sram
- port
- read
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 230000003068 static effect Effects 0.000 title abstract description 6
- 239000000872 buffer Substances 0.000 claims abstract description 98
- 230000003111 delayed effect Effects 0.000 claims abstract description 5
- 238000005457 optimization Methods 0.000 claims description 22
- 230000009977 dual effect Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 12
- 238000012986 modification Methods 0.000 claims description 7
- 230000004048 modification Effects 0.000 claims description 7
- 238000003860 storage Methods 0.000 claims description 7
- 239000002184 metal Substances 0.000 claims description 6
- 238000009826 distribution Methods 0.000 claims description 3
- 238000011084 recovery Methods 0.000 abstract description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 239000003990 capacitor Substances 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2115/00—Details relating to the type of the circuit
- G06F2115/10—Processors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2117/00—Details relating to the type or aim of the circuit design
- G06F2117/10—Buffer insertion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/12—Timing analysis or timing optimisation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Architecture (AREA)
- Static Random-Access Memory (AREA)
Abstract
本发明公开了一种针对双端口SRAM输入输出延时优化的方法,包括:确定目标双端口SRAM的读、写时钟输入端以及数据输出端口;对目标双端口SRAM的读、写时钟输入端插入公共时钟缓冲器使得读、写时钟输入端延迟一致,或者对目标双端口SRAM的每个数据输出端口插入输出缓冲器使得所有数据输出端口的负载大小相同。本发明对SRAM读写时钟端口进行最大化公共时钟路径长度处理;在SRAM输出端口增加输出缓冲器保证所有数据输出端口的负载大小一样,避免了由于读写时钟端口之间延迟偏差导致的恢复时间的问题,以及时钟输入到输出端口延时较大问题带来的电路性能损失。
Description
技术领域
本发明集成电路物理设计,具体涉及一种针对双端口SRAM输入输出延时优化的方法。
背景技术
随着半导体工艺的进步,由于晶体管的沟道长度已经接近原子尺寸,晶体管的开启和导通速度更快了。但是,由于晶体管的有源区尺寸进行了同步缩放,单个晶体管的驱动能力实际上降低了,因此其对负载电容大小更为敏感。作为集成电路从业人员所熟知的,高性能CPU芯片电路性能的瓶颈在于静态随机存取存储器(Static Random-Access Memory,SRAM)。如何对已经选型完毕的SRAM进行时序优化是一件非常有意义的工作。SRAM的输出端口对负载的敏感程度超过了标准单元,因此更应该细致优化输出端口负载对SRAM体延时的影响。SRAM根据端口类型可以分为:单端口和双端口。双端口SRAM有两个时钟输入端口,相比单端口SRAM,有写和读时钟之间的恢复时间(recovery time)检查,如果不控制这两个时钟之间延迟时间偏差,将会导致SRAM功能错误。
以往的芯片设计过程中,集成电路物理设计人员利用工具自动生成双端口SRAM的读写时钟端口的时钟树,让工具处理输出端口的负载大小。但是,目前仅仅依赖工具的实现方式下,SRAM读写时钟偏差很大,输出端口负载并未做到最低,影响了双端口SRAM的输入输出端口的时序优化,导致芯片性能的损失。
发明内容
本发明要解决的技术问题:针对现有技术的上述问题,提供一种针对双端口SRAM输入输出延时优化的方法,本发明对SRAM读写时钟端口进行最大化公共时钟路径长度处理;在SRAM数据输出端口插入输出缓冲器,保证所有数据输出端口的负载大小一样,避免了由于读写时钟端口之间延迟偏差导致的恢复时间(recovery time)的问题,以及时钟输入到输出端口延时较大问题带来的电路性能损失。
为了解决上述技术问题,本发明采用的技术方案为:
一种针对双端口SRAM输入输出延时优化的方法,包括:
1)确定目标双端口SRAM的读、写时钟输入端以及数据输出端口;
2)对目标双端口SRAM的读、写时钟输入端插入公共时钟缓冲器使得读、写时钟输入端延迟一致,或者对目标双端口SRAM的每个数据输出端口插入输出缓冲器使得所有数据输出端口的负载大小相同。
可选地,步骤1)之前还包括遍历芯片设计中所有的双端口SRAM的步骤:获取芯片设计中所有的双端口SRAM列表,针对双端口SRAM列表进行遍历,每遍历得到一个目标双端口SRAM则执行步骤1)~步骤2)。
可选地,步骤2)中对目标双端口SRAM的读、写时钟输入端插入公共时钟缓冲器的条件为到读、写时钟输入端的两路时钟的时钟延迟大于第一预设阈值、且两路时钟的时钟延迟偏差大于第二预设阈值不能同时成立。
可选地,步骤2)中对目标双端口SRAM的每个数据输出端口插入输出缓冲器的条件为到读、写时钟输入端的两路时钟的时钟延迟大于第一预设阈值、且两路时钟的时钟延迟偏差大于第二预设阈值同时成立。
可选地,步骤2)中对目标双端口SRAM的读、写时钟输入端插入公共时钟缓冲器的步骤包括:
2.1A)获取目标双端口SRAM的读、写时钟输入端的端口名和位置坐标,对目标双端口SRAM的读、写时钟输入端插入公共时钟缓冲器;
2.2A)根据禁放单元区域限制和已布局单元位置信息,判断目标双端口SRAM的读、写时钟输入端的纵向坐标中点位置是否可以进行公共时钟缓冲器的摆放;若可以进行公共时钟缓冲器的摆放,则根据驱动能力、自身延时大小选择匹配的公共时钟缓冲器摆放在此处用以驱动目标双端口SRAM的读、写时钟输入端;若不可以进行公共时钟缓冲器的摆放,则寻找目标双端口SRAM的读、写时钟输入端的纵向坐标中点位置附近的合理摆放位置,并根据驱动能力、自身延时大小选择匹配的公共时钟缓冲器摆放在此处用以驱动目标双端口SRAM的读、写时钟输入端;
2.3A)将公共时钟缓冲器的输入端与原始读、写时钟输入端的扇入相连、将公共时钟缓冲器的输出端分别与读、写时钟输入端进行连接;
2.4A)冻结对目标双端口SRAM的读、写时钟输入端连接信号的任何修改。
可选地,步骤2.3A)中将公共时钟缓冲器的输入端与原始读、写时钟输入端的扇入相连、将公共时钟缓冲器的输出端分别与读、写时钟输入端进行连接时,还包括在布线资源充足的情况下优先采用高层金属走线以减小线延时大小的步骤。
可选地,步骤2)中对目标双端口SRAM的每个数据输出端口插入输出缓冲器的步骤包括:
2.1B)获取目标双端口SRAM的读、写时钟输入端的端口名和位置坐标,对目标双端口SRAM的每一个数据输出端口插入输出缓冲器;
2.2B)根据每个数据输出端口横向坐标值及SRAM禁放单元区域宽度,判断每个数据输出端口横向禁布区的外侧是否可以进行输出缓冲器的摆放,若可以进行输出缓冲器的摆放,则选择驱动能力和自身延时大小匹配的输出缓冲器摆放在此处以降低目标双端口SRAM的输出负载;若不可以进行输出缓冲器的摆放,则在每个数据输出端口横向禁布区的外侧附近寻找合理的可摆放位置,且选择驱动能力和自身延时大小匹配的输出缓冲器摆放在此处以降低目标双端口SRAM的输出负载;
2.3B)将输出缓冲器的输入端与目标双端口SRAM数据输出端进行连接,将输出缓冲器的输出端与原始SRAM数据输出端的扇出相连;
2.4B)冻结对目标双端口SRAM数据输出端连接信号的任何修改。
可选地,步骤2.3B)中将输出缓冲器的输入端与目标双端口SRAM数据输出端进行连接,将输出缓冲器的输出端与原始SRAM数据输出端的扇出相连时,还包括在布线资源充足的情况下优先采用高层金属走线以减小线延时大小的步骤。
此外,本发明还提供一种针对双端口SRAM输入输出延时优化的系统,包括计算机设备,该计算机设备被编程或配置以执行所述针对双端口SRAM输入输出延时优化的方法的步骤,或者该计算机设备的存储器中存储有被编程或配置以执行所述针对双端口SRAM输入输出延时优化的方法的计算机程序。
此外,本发明还提供一种计算机可读存储介质,该计算机可读存储介质中存储有被编程或配置以执行所述针对双端口SRAM输入输出延时优化的方法的计算机程序。
和现有技术相比,本发明具有下述优点:本发明包括确定目标双端口SRAM的读、写时钟输入端以及数据输出端口;对目标双端口SRAM的读、写时钟输入端插入公共时钟缓冲器使得读、写时钟输入端延迟一致,或者对目标双端口SRAM的每个数据输出端口插入输出缓冲器使得所有数据输出端口的负载大小相同。本发明对SRAM读写时钟端口进行最大化公共时钟路径长度处理;在SRAM数据输出端口插入输出缓冲器,保证所有数据输出端口的负载大小一样,避免了由于读写时钟端口之间延迟偏差导致的恢复时间(recovery time)的问题,以及时钟输入到输出端口延时较大问题带来的电路性能损失。本发明设计简单,操作方便,能够快速、有效地将输入输出负载降到最小,从而有效降低了输入输出延时,使得SRAM易于满足数据输入端维持时间(hold time)和恢复时间(recovery time)的要求,并且改善了输出负载增大引起的SRAM性能恶化的情况。
附图说明
图1为本发明实施例方法的基本流程示意图。
图2为本发明实施例中读、写时钟输入端添加公共时钟缓冲器流程示意图。
图3为本发明实施例中读、写时钟输入端添加公共时钟缓冲器电路示意图。
图4为本发明实施例中数据输出端添加输出缓冲器流程示意图。
图5为本发明实施例中数据输出端添加输出缓冲器电路示意图。
具体实施方式
为了对本发明针对双端口SRAM输入输出延时优化的方法有更佳的了解,下面结合优选实施例,对本发明的具体实施方式做进一步的详细说明。
参见图1,本实施例针对双端口SRAM输入输出延时优化的方法包括:
1)确定目标双端口SRAM的读、写时钟输入端以及数据输出端口;
2)对目标双端口SRAM的读、写时钟输入端插入公共时钟缓冲器使得读、写时钟输入端延迟一致,或者对目标双端口SRAM的每个数据输出端口插入输出缓冲器使得所有数据输出端口的负载大小相同。
本实施例中,步骤1)之前还包括遍历芯片设计中所有的双端口SRAM的步骤:获取芯片设计中所有的双端口SRAM列表,针对双端口SRAM列表进行遍历,每遍历得到一个目标双端口SRAM则执行步骤1)~步骤2)。在针对双端口SRAM列表进行遍历处理完毕后,即可完成设计电路中所有双端口SRAM输入输出延时优化。
本实施例方法利用后端设计工具分别插入输入、输出缓冲器并完成相应的网络连接关系,因此需要预先利用后端设计工具打开全芯片布局(floorplan)以进行后续处理。
参见图1,本实施例步骤2)中对目标双端口SRAM的读、写时钟输入端插入公共时钟缓冲器的条件为到读、写时钟输入端的两路时钟的时钟延迟大于第一预设阈值、且两路时钟的时钟延迟偏差大于第二预设阈值不能同时成立。
参见图1,本实施例步骤2)中对目标双端口SRAM的每个数据输出端口插入输出缓冲器的条件为到读、写时钟输入端的两路时钟的时钟延迟大于第一预设阈值、且两路时钟的时钟延迟偏差大于第二预设阈值同时成立。
需要说明的是,步骤2)中对目标双端口SRAM的读、写时钟输入端插入公共时钟缓冲器、步骤2)中对目标双端口SRAM的每个数据输出端口插入输出缓冲器也可以采用无条件执行的方式,其或多或少也能够起到针对双端口SRAM输入输出延时优化效果。
如图2所示,步骤2)中对目标双端口SRAM的读、写时钟输入端插入公共时钟缓冲器的步骤包括:
2.1A)获取目标双端口SRAM的读、写时钟输入端的端口名和位置坐标,对目标双端口SRAM的读、写时钟输入端插入公共时钟缓冲器;
2.2A)根据禁放单元区域限制和已布局单元位置信息,判断目标双端口SRAM的读、写时钟输入端的纵向坐标中点位置是否可以进行公共时钟缓冲器的摆放;若可以进行公共时钟缓冲器的摆放,则根据驱动能力、自身延时大小选择匹配的公共时钟缓冲器摆放在此处用以驱动目标双端口SRAM的读、写时钟输入端;若不可以进行公共时钟缓冲器的摆放,则寻找目标双端口SRAM的读、写时钟输入端的纵向坐标中点位置附近的合理摆放位置,并根据驱动能力、自身延时大小选择匹配的公共时钟缓冲器摆放在此处用以驱动目标双端口SRAM的读、写时钟输入端;
2.3A)将公共时钟缓冲器的输入端与原始读、写时钟输入端的扇入相连、将公共时钟缓冲器的输出端分别与读、写时钟输入端进行连接;
2.4A)冻结对目标双端口SRAM的读、写时钟输入端连接信号的任何修改。
本实施例中,步骤2.3A)中将公共时钟缓冲器的输入端与原始读、写时钟输入端的扇入相连、将公共时钟缓冲器的输出端分别与读、写时钟输入端进行连接时,还包括在布线资源充足的情况下优先采用高层金属走线以减小线延时大小的步骤。如图3所示为步骤2.3A)的操作实例,其中目标双端口SRAM的读、写时钟输入端包括CLKA(读时钟输入端)、CLKB(写时钟输入端),CLKA(读时钟输入端)、CLKB(写时钟输入端)通过公共时钟缓冲器与原始读、写时钟输入端的扇入相连。
如图4所示,步骤2)中对目标双端口SRAM的每个数据输出端口插入输出缓冲器的步骤包括:
2.1B)获取目标双端口SRAM的读、写时钟输入端的端口名和位置坐标,对目标双端口SRAM的每一个数据输出端口插入输出缓冲器;
2.2B)根据每个数据输出端口横向坐标值及SRAM禁放单元区域宽度,判断每个数据输出端口横向禁布区的外侧是否可以进行输出缓冲器的摆放,若可以进行输出缓冲器的摆放,则选择驱动能力和自身延时大小匹配的输出缓冲器摆放在此处以降低目标双端口SRAM的输出负载;若不可以进行输出缓冲器的摆放,则在每个数据输出端口横向禁布区的外侧附近寻找合理的可摆放位置,且选择驱动能力和自身延时大小匹配的输出缓冲器摆放在此处以降低目标双端口SRAM的输出负载;
2.3B)将输出缓冲器的输入端与目标双端口SRAM数据输出端进行连接,将输出缓冲器的输出端与原始SRAM数据输出端的扇出相连;
2.4B)冻结对目标双端口SRAM数据输出端连接信号的任何修改。
本实施例中,步骤2.3B)中将输出缓冲器的输入端与目标双端口SRAM数据输出端进行连接,将输出缓冲器的输出端与原始SRAM数据输出端的扇出相连时,还包括在布线资源充足的情况下优先采用高层金属走线以减小线延时大小的步骤。如图5所示为步骤2.3AB)的操作实例,其中目标双端口SRAM的数据输出端包括QA[0]~QA[n]、QB[0]~QB[n],且数据输出端QA[0]~QA[n]、QB[0]~QB[n]均串接有输出缓冲器。
综上所述,本实施例针对双端口SRAM输入输出延时优化的方法一方面通过在读、写时钟输入端就近插入公共输入缓冲器减小两时钟之间的时钟偏差的方法,实现了最大化公共时钟路径长度处理,从而避免了由于读写时钟端口之间延迟偏差导致的恢复时间(recovery time)问题;另一方面通过在数据输出端添加输出缓冲器统一负载电容的方法,解决了SRAM单元延时对于负载过于敏感的问题,改善了SRAM的维持时间难以收敛的情况,从而实现有效提高SRAM器件性能。
此外,本实施例还提供一种针对双端口SRAM输入输出延时优化的系统,包括计算机设备,该计算机设备被编程或配置以执行前述针对双端口SRAM输入输出延时优化的方法的步骤,或者该计算机设备的存储器中存储有被编程或配置以执行前述针对双端口SRAM输入输出延时优化的方法的计算机程序。
此外,本实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有被编程或配置以执行前述针对双端口SRAM输入输出延时优化的方法的计算机程序。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可读存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种针对双端口SRAM输入输出延时优化的方法,其特征在于,包括:
1)确定目标双端口SRAM的读、写时钟输入端以及数据输出端口;
2)对目标双端口SRAM的读、写时钟输入端插入公共时钟缓冲器使得读、写时钟输入端延迟一致,或者对目标双端口SRAM的每个数据输出端口插入输出缓冲器使得所有数据输出端口的负载大小相同。
2.根据权利要求1所述的针对双端口SRAM输入输出延时优化的方法,其特征在于,步骤1)之前还包括遍历芯片设计中所有的双端口SRAM的步骤:获取芯片设计中所有的双端口SRAM列表,针对双端口SRAM列表进行遍历,每遍历得到一个目标双端口SRAM则执行步骤1)~步骤2)。
3.根据权利要求1所述的针对双端口SRAM输入输出延时优化的方法,其特征在于,步骤2)中对目标双端口SRAM的读、写时钟输入端插入公共时钟缓冲器的条件为到读、写时钟输入端的两路时钟的时钟延迟大于第一预设阈值、且两路时钟的时钟延迟偏差大于第二预设阈值不能同时成立。
4.根据权利要求1所述的针对双端口SRAM输入输出延时优化的方法,其特征在于,步骤2)中对目标双端口SRAM的每个数据输出端口插入输出缓冲器的条件为到读、写时钟输入端的两路时钟的时钟延迟大于第一预设阈值、且两路时钟的时钟延迟偏差大于第二预设阈值同时成立。
5.根据权利要求1所述的针对双端口SRAM输入输出延时优化的方法,其特征在于,步骤2)中对目标双端口SRAM的读、写时钟输入端插入公共时钟缓冲器的步骤包括:
2.1A)获取目标双端口SRAM的读、写时钟输入端的端口名和位置坐标,对目标双端口SRAM的读、写时钟输入端插入公共时钟缓冲器;
2.2A)根据禁放单元区域限制和已布局单元位置信息,判断目标双端口SRAM的读、写时钟输入端的纵向坐标中点位置是否可以进行公共时钟缓冲器的摆放;若可以进行公共时钟缓冲器的摆放,则根据驱动能力、自身延时大小选择匹配的公共时钟缓冲器摆放在此处用以驱动目标双端口SRAM的读、写时钟输入端;若不可以进行公共时钟缓冲器的摆放,则寻找目标双端口SRAM的读、写时钟输入端的纵向坐标中点位置附近的合理摆放位置,并根据驱动能力、自身延时大小选择匹配的公共时钟缓冲器摆放在此处用以驱动目标双端口SRAM的读、写时钟输入端;
2.3A)将公共时钟缓冲器的输入端与原始读、写时钟输入端的扇入相连、将公共时钟缓冲器的输出端分别与读、写时钟输入端进行连接;
2.4A)冻结对目标双端口SRAM的读、写时钟输入端连接信号的任何修改。
6.根据权利要求5所述的针对双端口SRAM输入输出延时优化的方法,其特征在于,步骤2.3A)中将公共时钟缓冲器的输入端与原始读、写时钟输入端的扇入相连、将公共时钟缓冲器的输出端分别与读、写时钟输入端进行连接时,还包括在布线资源充足的情况下优先采用高层金属走线以减小线延时大小的步骤。
7.根据权利要求1所述的针对双端口SRAM输入输出延时优化的方法,其特征在于,步骤2)中对目标双端口SRAM的每个数据输出端口插入输出缓冲器的步骤包括:
2.1B)获取目标双端口SRAM的读、写时钟输入端的端口名和位置坐标,对目标双端口SRAM的每一个数据输出端口插入输出缓冲器;
2.2B)根据每个数据输出端口横向坐标值及SRAM禁放单元区域宽度,判断每个数据输出端口横向禁布区的外侧是否可以进行输出缓冲器的摆放,若可以进行输出缓冲器的摆放,则选择驱动能力和自身延时大小匹配的输出缓冲器摆放在此处以降低目标双端口SRAM的输出负载;若不可以进行输出缓冲器的摆放,则在每个数据输出端口横向禁布区的外侧附近寻找合理的可摆放位置,且选择驱动能力和自身延时大小匹配的输出缓冲器摆放在此处以降低目标双端口SRAM的输出负载;
2.3B)将输出缓冲器的输入端与目标双端口SRAM数据输出端进行连接,将输出缓冲器的输出端与原始SRAM数据输出端的扇出相连;
2.4B)冻结对目标双端口SRAM数据输出端连接信号的任何修改。
8.根据权利要求7所述的针对双端口SRAM输入输出延时优化的方法,其特征在于,步骤2.3B)中将输出缓冲器的输入端与目标双端口SRAM数据输出端进行连接,将输出缓冲器的输出端与原始SRAM数据输出端的扇出相连时,还包括在布线资源充足的情况下优先采用高层金属走线以减小线延时大小的步骤。
9.一种针对双端口SRAM输入输出延时优化的系统,包括计算机设备,其特征在于,该计算机设备被编程或配置以执行权利要求1~8中任意一项所述针对双端口SRAM输入输出延时优化的方法的步骤,或者该计算机设备的存储器中存储有被编程或配置以执行权利要求1~8中任意一项所述针对双端口SRAM输入输出延时优化的方法的计算机程序。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质中存储有被编程或配置以执行权利要求1~8中任意一项所述针对双端口SRAM输入输出延时优化的方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010934790.6A CN112069768B (zh) | 2020-09-08 | 2020-09-08 | 一种针对双端口sram输入输出延时优化的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010934790.6A CN112069768B (zh) | 2020-09-08 | 2020-09-08 | 一种针对双端口sram输入输出延时优化的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112069768A true CN112069768A (zh) | 2020-12-11 |
CN112069768B CN112069768B (zh) | 2024-07-16 |
Family
ID=73664305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010934790.6A Active CN112069768B (zh) | 2020-09-08 | 2020-09-08 | 一种针对双端口sram输入输出延时优化的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112069768B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114611454A (zh) * | 2022-03-22 | 2022-06-10 | 上海安路信息科技股份有限公司 | 数字后端绕线方法及系统 |
CN114676658A (zh) * | 2022-05-20 | 2022-06-28 | 飞腾信息技术有限公司 | 一种时序违例修复方法、装置、存储介质及电子设备 |
Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5804986A (en) * | 1995-12-29 | 1998-09-08 | Cypress Semiconductor Corp. | Memory in a programmable logic device |
CN1265509A (zh) * | 1999-03-01 | 2000-09-06 | 摩托罗拉公司 | 存储器中的可编程延迟控制 |
US6167528A (en) * | 1995-12-21 | 2000-12-26 | Cypress Semiconductor | Programmably timed storage element for integrated circuit input/output |
CN101203919A (zh) * | 2005-03-04 | 2008-06-18 | 爱特梅尔公司 | 用于寄存器文件的快速读取端口 |
CN101582290A (zh) * | 2000-12-20 | 2009-11-18 | 富士通微电子株式会社 | 基于动态随机存取存储器核心的多端口存储器及其控制方法 |
CN102117478A (zh) * | 2011-02-09 | 2011-07-06 | 河南科技大学 | 批量图像数据的实时处理方法及系统 |
CN102456392A (zh) * | 2010-10-15 | 2012-05-16 | 台湾积体电路制造股份有限公司 | 具有时钟偏移发生器的存储器器件 |
CN102623291A (zh) * | 2012-01-17 | 2012-08-01 | 上海大学 | 一种数据采集并行储存装置及方法 |
CN102684648A (zh) * | 2012-01-10 | 2012-09-19 | 河南科技大学 | 一种基于微控制器的波形产生系统及方法 |
CN103730149A (zh) * | 2014-01-20 | 2014-04-16 | 中国科学院电子学研究所 | 一种双端口存储器的读写控制电路 |
CN103828314A (zh) * | 2011-09-23 | 2014-05-28 | 高通股份有限公司 | 负载检测阻抗匹配缓冲器 |
CN103856202A (zh) * | 2010-03-04 | 2014-06-11 | 联咏科技股份有限公司 | 可提高稳定性的输出缓冲电路 |
CN104246732A (zh) * | 2012-06-28 | 2014-12-24 | 惠普发展公司,有限责任合伙企业 | 具有双端口缓冲器的存储器模块 |
CN104598352A (zh) * | 2015-01-08 | 2015-05-06 | 西安空间无线电技术研究所 | 一种用于sram型fpga的快速可靠性评估方法 |
CN104795091A (zh) * | 2015-04-29 | 2015-07-22 | 信阳师范学院 | 在fpga中实现zbt读写的时序稳定度的系统及方法 |
CN104978297A (zh) * | 2003-10-16 | 2015-10-14 | 英特尔公司 | 自适应输入/输出缓冲器及其使用方法 |
CN105637589A (zh) * | 2013-08-02 | 2016-06-01 | 高通股份有限公司 | 具有减小的感测延迟和改善的感测余量的sram读取缓冲器 |
CN106328195A (zh) * | 2016-08-19 | 2017-01-11 | 西安空间无线电技术研究所 | 一种抗单粒子翻转的sram |
CN106992770A (zh) * | 2016-01-21 | 2017-07-28 | 华为技术有限公司 | 时钟电路及其传输时钟信号的方法 |
CN107068192A (zh) * | 2017-03-31 | 2017-08-18 | 上海华虹宏力半导体制造有限公司 | 用于存储器的时序测量的本地时钟信号产生电路 |
CN107425844A (zh) * | 2017-07-17 | 2017-12-01 | 北京时代民芯科技有限公司 | 一种适用于sram型fpga的可配置时钟缓冲器 |
CN110097902A (zh) * | 2019-04-15 | 2019-08-06 | 中科亿海微电子科技(苏州)有限公司 | 针对同一端口的读写控制模块及方法、双端口存储器 |
-
2020
- 2020-09-08 CN CN202010934790.6A patent/CN112069768B/zh active Active
Patent Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6167528A (en) * | 1995-12-21 | 2000-12-26 | Cypress Semiconductor | Programmably timed storage element for integrated circuit input/output |
US5804986A (en) * | 1995-12-29 | 1998-09-08 | Cypress Semiconductor Corp. | Memory in a programmable logic device |
CN1265509A (zh) * | 1999-03-01 | 2000-09-06 | 摩托罗拉公司 | 存储器中的可编程延迟控制 |
CN101582290A (zh) * | 2000-12-20 | 2009-11-18 | 富士通微电子株式会社 | 基于动态随机存取存储器核心的多端口存储器及其控制方法 |
CN104978297A (zh) * | 2003-10-16 | 2015-10-14 | 英特尔公司 | 自适应输入/输出缓冲器及其使用方法 |
CN101203919A (zh) * | 2005-03-04 | 2008-06-18 | 爱特梅尔公司 | 用于寄存器文件的快速读取端口 |
CN103856202A (zh) * | 2010-03-04 | 2014-06-11 | 联咏科技股份有限公司 | 可提高稳定性的输出缓冲电路 |
CN102456392A (zh) * | 2010-10-15 | 2012-05-16 | 台湾积体电路制造股份有限公司 | 具有时钟偏移发生器的存储器器件 |
CN102117478A (zh) * | 2011-02-09 | 2011-07-06 | 河南科技大学 | 批量图像数据的实时处理方法及系统 |
CN103828314A (zh) * | 2011-09-23 | 2014-05-28 | 高通股份有限公司 | 负载检测阻抗匹配缓冲器 |
CN102684648A (zh) * | 2012-01-10 | 2012-09-19 | 河南科技大学 | 一种基于微控制器的波形产生系统及方法 |
CN102623291A (zh) * | 2012-01-17 | 2012-08-01 | 上海大学 | 一种数据采集并行储存装置及方法 |
CN104246732A (zh) * | 2012-06-28 | 2014-12-24 | 惠普发展公司,有限责任合伙企业 | 具有双端口缓冲器的存储器模块 |
CN105637589A (zh) * | 2013-08-02 | 2016-06-01 | 高通股份有限公司 | 具有减小的感测延迟和改善的感测余量的sram读取缓冲器 |
CN103730149A (zh) * | 2014-01-20 | 2014-04-16 | 中国科学院电子学研究所 | 一种双端口存储器的读写控制电路 |
CN104598352A (zh) * | 2015-01-08 | 2015-05-06 | 西安空间无线电技术研究所 | 一种用于sram型fpga的快速可靠性评估方法 |
CN104795091A (zh) * | 2015-04-29 | 2015-07-22 | 信阳师范学院 | 在fpga中实现zbt读写的时序稳定度的系统及方法 |
CN106992770A (zh) * | 2016-01-21 | 2017-07-28 | 华为技术有限公司 | 时钟电路及其传输时钟信号的方法 |
CN106328195A (zh) * | 2016-08-19 | 2017-01-11 | 西安空间无线电技术研究所 | 一种抗单粒子翻转的sram |
CN107068192A (zh) * | 2017-03-31 | 2017-08-18 | 上海华虹宏力半导体制造有限公司 | 用于存储器的时序测量的本地时钟信号产生电路 |
CN107425844A (zh) * | 2017-07-17 | 2017-12-01 | 北京时代民芯科技有限公司 | 一种适用于sram型fpga的可配置时钟缓冲器 |
CN110097902A (zh) * | 2019-04-15 | 2019-08-06 | 中科亿海微电子科技(苏州)有限公司 | 针对同一端口的读写控制模块及方法、双端口存储器 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114611454A (zh) * | 2022-03-22 | 2022-06-10 | 上海安路信息科技股份有限公司 | 数字后端绕线方法及系统 |
CN114676658A (zh) * | 2022-05-20 | 2022-06-28 | 飞腾信息技术有限公司 | 一种时序违例修复方法、装置、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112069768B (zh) | 2024-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100504887C (zh) | 半导体集成电路的布图设计方法 | |
CN112069768B (zh) | 一种针对双端口sram输入输出延时优化的方法 | |
US8392861B2 (en) | Method of semiconductor integrated circuit device using library for estimating timing/area to place cells | |
US8897083B1 (en) | Memory interface circuitry with data strobe signal sharing capabilities | |
US11455781B2 (en) | Data reading/writing method and system in 3D image processing, storage medium and terminal | |
US6910202B2 (en) | Logic synthesis device and logic synthesis method | |
US7546560B2 (en) | Optimization of flip flop initialization structures with respect to design size and design closure effort from RTL to netlist | |
US10296700B1 (en) | Multimode circuit place and route optimization | |
US8042074B2 (en) | Circuit design device, circuit design program, and circuit design method | |
US10534878B1 (en) | Circuit place and route optimization based on path-based timing analysis | |
US9342642B1 (en) | Statistical optimization in place-and-route | |
CN113781354B (zh) | 图像噪点抑制方法、装置、计算设备及存储介质 | |
CN113126911B (zh) | 基于ddr3 sdram的队列管理方法、介质、设备 | |
US10133842B1 (en) | Methods, systems, and articles of manufacture for multi-mode, multi-corner physical optimization of electronic designs | |
US7966592B2 (en) | Dual path static timing analysis | |
US8990741B2 (en) | Circuit design support device, circuit design support method and program | |
CN112486245A (zh) | 可重构阵列时钟门控控制方法、装置、设备及介质 | |
CN116090383B (zh) | 实现静态时序分析的方法、装置、计算机存储介质及终端 | |
US10691854B1 (en) | Graph-based timing analysis timing calibration | |
CN116301775A (zh) | 基于复位树原型图的代码生成方法、装置、设备及介质 | |
US7418675B2 (en) | System and method for reducing the power consumption of clock systems | |
CN112486904B (zh) | 可重构处理单元阵列的寄存器堆设计方法及装置 | |
US10817633B2 (en) | Timing model, timing model building method, and related top-level analysis method | |
CN110518897B (zh) | 移除d触发器复位、置位引脚的方法、d触发器以及电路 | |
CN114443616B (zh) | 一种基于fpga的并行异构数据库加速方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Country or region after: China Address after: 300452 Building 5, Xin'an pioneer Plaza, Binhai New Area marine high tech Development Zone, Tianjin Applicant after: Feiteng Information Technology Co.,Ltd. Address before: 300452 Building 5, Xin'an pioneer Plaza, Binhai New Area marine high tech Development Zone, Tianjin Applicant before: TIANJIN FEITENG INFORMATION TECHNOLOGY Co.,Ltd. Country or region before: China |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |