SSD主控芯片高效总线设计迭代方法、系统以及平台
文献发布时间:2023-06-19 09:35:27
技术领域
本发明涉及SSD固态硬盘技术领域,尤其涉及一种SSD主控芯片高效总线设计迭代方法、系统以及平台。
背景技术
SSD主控芯片中,总线互联单元作为芯片数据流通的核心,其实现的性能直接关系到最终芯片的整体性能。由于SSD主控芯片面积较大,各模块距离不一样,每条总线数据路径需要用寄存器打拍的流水线级数不一样。数据通道上插入寄存器级数多,时序好收敛但是传输延迟加大,反之,时序紧并且造成最高频率降低,但是传输延迟小。目前,SSD主控芯片设计方法中,通过仿真和多次试验和迭代修改,看哪条通道不满足要求或者时序过松,然后再返回到电路设计上再修改,再仿真实现分析,通过多次人工设计验证后确定寄存器的级数,这个过程花费时间长,人工介入过多。
发明内容
鉴于此,为了在一定程度上解决相关技术中的技术问题之一,有必要提供一种SSD主控芯片高效总线设计迭代方法、系统以及平台,减少人工干预,修改和仿真迭代自动进行,能够快速地得到最佳配置结果。
本发明第一方面提供一种SSD主控芯片高效总线设计迭代方法,所述方法包括:
确定总线与所连接的模块之间的物理距离;
连接在所述总线和所述模块之间的寄存器级数将所述物理距离均分得到子距离;
根据所述子距离预估静态时序分析所需的时序信息;
将时序信息导入静态时序分析工具进行分析得到该数据通道的时序违例和时序余量;
判断分析结果中该数据通道是否有时序违例以及判断时序余量是否大于预设值;
若该数据通道有时序违例,则在该数据通道上插入一级寄存器并再次预估时序信息并进行静态时序分析,直至该数据通道没有时序违例;
若该数据通道时序余量大于预设值,则在该数据通道上减少一级寄存器并再次预估时序信息并进行静态时序分析,直至该数据通道的时序余量不大于预设值。
进一步的,所述确定总线与所连接的模块之间的物理距离,包括:
根据SSD主控芯片的布局提取出模块的物理位置以及出PIN位置信息的lef文件,其中,所述SSD主控芯片的布局根据SSD芯片设计网表得到,并且在静态时序分析时,将设计网表文件和时序信息一并导入静态时序分析工具中;
根据所述lef文件抽取出总线与所连接的模块之间的物理距离从而得到总线与所连接的模块之间的物理距离。
进一步的,连接在所述总线和所述模块之间的寄存器级数将所述物理距离均分得到子距离,包括:
通过查找总线的频率需求表格、物理距离和频率对应的寄存器级数查找表格,得到数据通道的第一次寄存器插入级数值;
根据第一次寄存器插入级数值来将所述物理距离均分得到子距离。
进一步的,将子距离对应的时序信息的经验值一一对应并制成表格,在预估所述静态时序分析所需的时序信息时,根据所述子距离通过查找表格确定静态时序分析所需的时序信息。
本发明第二方面提供一种SSD主控芯片高效总线设计迭代系统,所述系统包括:
确定模块,用于确定总线与所连接的模块之间的物理距离;
分割模块,用于连接在所述总线和所述模块之间的寄存器级数将所述物理距离均分得到子距离;
预估模块,用于根据所述子距离预估静态时序分析所需的时序信息;
分析模块,用于将时序信息导入静态时序分析工具进行分析得到该数据通道的时序违例和时序余量;
判断模块,用于判断分析结果中该数据通道是否有时序违例以及判断时序余量是否大于预设值;
插入模块,用于当该数据通道有时序违例时,在该数据通道上插入一级寄存器并再次预估时序信息并进行静态时序分析,直至该数据通道没有时序违例;
减少模块,用于当该数据通道时序余量大于预设值时,在该数据通道上减少一级寄存器并再次预估时序信息并进行静态时序分析,直至该数据通道的时序余量不大于预设值。
进一步的,所述确定模块具体用于:
根据SSD主控芯片的布局提取出模块的物理位置以及出PIN位置信息的lef文件,其中,所述SSD主控芯片的布局根据SSD芯片设计网表得到,并且在静态时序分析时,将设计网表文件和时序信息一并导入静态时序分析工具中;
根据所述lef文件抽取出总线与所连接的模块之间的物理距离从而得到总线与所连接的模块之间的物理距离。
进一步的,分割模块具体用于:
通过查找总线的频率需求表格、物理距离和频率对应的寄存器级数查找表格,得到数据通道的第一次寄存器插入级数值;
根据第一次寄存器插入级数值来将所述物理距离均分得到子距离。
进一步的,将子距离对应的时序信息的经验值一一对应并制成表格,在预估所述静态时序分析所需的时序信息时,根据所述子距离通过查找表格确定静态时序分析所需的时序信息。
本发明第三方面提供一种SSD主控芯片高效总线设计迭代平台,所述平台包括:
处理器;以及
存储装置,该存储装置存储有计算机程序,所述计算机程序在由处理器执行时用于执行所述的SSD主控芯片高效总线设计迭代方法的步骤。
通过以上方案可知,本发明先确定总线与所连接的模块之间的物理距离;连接在所述总线和所述模块之间的寄存器级数将所述物理距离均分得到子距离;根据所述子距离预估静态时序分析所需的时序信息;将时序信息导入静态时序分析工具进行分析得到该数据通道的时序违例和时序余量;判断分析结果中该数据通道是否有时序违例以及判断时序余量是否大于预设值;若该数据通道有时序违例,则在该数据通道上插入一级寄存器并再次预估时序信息并进行静态时序分析,直至该数据通道没有时序违例;若该数据通道时序余量大于预设值,则在该数据通道上减少一级寄存器并再次预估时序信息并进行静态时序分析,直至该数据通道的时序余量不大于预设值,因此SSD主控芯片完成布局设计后,自动进行修改和仿真迭代,减少人工干预,能够快速地得到最佳配置结果。
附图说明
图1为本发明的第一实施例的SSD主控芯片高效总线设计迭代方法的结构示意图。
图2为本发明的第二实施例的SSD主控芯片高效总线设计迭代方法的结构示意图。
图3为本发明的第三实施例的SSD主控芯片高效总线设计迭代方法的结构示意图。
图4为本发明的一实施方式的平台的结构示意图。
图5为本发明的一实施方式的SSD主控芯片高效总线设计迭代系统的结构示意图。
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得所有其他实施例,都属于本发明的保护范围。可以理解的是,附图仅仅提供参考与说明用,并非用来对本发明加以限制。
如图1所示,图1所示为SSD主控芯片的逻辑连接关系示意图,在图示中,所述SSD主控芯片包括CPU、总线连接网络以及与总线连接的多个模块。如图2所示,图2所示为SSD主控芯片实际物理布局和连线,模块与总线之间可以设置有寄存器,距离远的模块需要更多级数的寄存器,连接距离近的模块需要的寄存器级数较少。
如图3所示,本发明具体实施方式提供的SSD主控芯片高效总线设计迭代方法,包括以下步骤:
S101:确定总线与所连接的模块之间的物理距离。
在设计SSD主控芯片时,首先根据综合出来的SSD芯片设计网表,完成SSD主控芯片的布局设计(floor_plan)。
根据完成的布局设计,可以通过芯片版图工具提取出模块的物理位置以及出PIN位置信息的lef文件。可以将lef文件和SSD芯片设计网表文件、以及SDF(标准延时文件)作为信息输入源以进行后续迭代仿真。
然后根据所述lef文件抽取出总线与所连接的模块之间的物理距离从而得到总线与所连接的模块之间的物理距离。
S102:连接在所述总线和所述模块之间的寄存器级数将所述物理距离均分得到子距离。
在初始时,可以不设置寄存器,寄存器的级数为0。
在本实施方式中,通过查找总线的频率需求表格、物理距离和频率对应的寄存器级数查找表格,得到数据通道的第一次寄存器插入级数值,然后根据第一次寄存器插入级数值来将所述物理距离均分得到子距离,这样,初始即能够得到接近最佳配置结果的寄存机级数,减少迭代次数。
子距离=物理距离/(N+1),N为在一数据通道中寄存器级数,N为自然数。例如,如果在一数据通道中寄存器级数为3,那么得到子距离为物理距离/(3+1),如果在一数据通道中寄存器级数为1,那么得到子距离为物理距离/(1+1)。
S103:根据所述子距离预估静态时序分析所需的时序信息。
具体的,可以将子距离对应的时序信息的经验值一一对应并制成表格,在预估所述静态时序分析所需的时序信息时,根据所述子距离通过查找表格确定静态时序分析所需的时序信息,在迭代时,能够快速查表得到静态时序分析所需的时序信息。
S104:将时序信息导入静态时序分析工具进行分析得到该数据通道的时序违例和时序余量。
静态时序分析工具读取SSD芯片设计网表文件、以及SDF(标准延时文件),并可以一并查找总线的频率需求表格,从而根据时序信息分析得到该数据通道的时序违例和时序余量。
S105:判断分析结果中该数据通道是否有时序违例(timing_violation),若该数据通道有时序违例,则执行步骤S106,若该数据通道没有时序违例,则执行步骤S107。
S106:在该数据通道上插入一级寄存器,然后再继续执行步骤S102。
按照上述公式,从新得到子距离,并根据所述子距离预估静态时序分析所需的时序信息,然后将时序信息导入静态时序分析工具进行分析得到该数据通道的时序违例和时序余量,并再次判断分析结果中该数据通道是否有时序违例,直至该数据通道没有时序违例。
S107:判断分析结果中时序余量(timing_slack)是否大于预设值,若该数据通道的时序余量不大于预设值,则执行步骤S108,若否,则完成设计,至此每条数据通道上插入的寄存器级数为最终SSD主控芯片数据通道上的寄存器级数设计。
S108:在该数据通道上减少一级寄存器,然后再继续执行步骤S102。
按照上述公式,重新得到子距离,并根据所述子距离预估静态时序分析所需的时序信息,然后将时序信息导入静态时序分析工具进行分析得到该数据通道的时序违例和时序余量,并再次判断分析结果中该数据通道是否有时序违例以及判断时序余量是否大于预设值。
系统中可以主动地输入时序余量阈值以调节寄存器的级数和/或得到匹配寄存器数量。若插入的寄存器的级数不能同时满足“该数据通道没有时序违例以及该数据通道时序余量不大于预设值”,可以调整时序余量阈值,以使得插入的寄存器的级数既能够使该数据通道没有时序违例并且该数据通道时序余量不大于预设值。
另外可以理解的是,步骤S105和步骤S107的顺序可以互换,以先执行步骤S107后执行步骤S105。
通过本发明提供的具体实施方式可知,本发明提供的SSD主控芯片高效总线设计迭代方法,能够自动地完成整个数据通道的寄存器级数插入的设计验证迭代过程,基本上不需要人工干预,减少工程师自身经验的依赖,并且减低了人工主管臆断的风险,修改和仿真迭代自动进行,速度快,并且能够最终得到最佳配置结果。
图4为本发明提供的SSD主控芯片高效总线设计迭代平台100的一种实施例的结构图,所述平台100可包括处理器10、存储装置20,还包括存储在所述存储装置20中并可向所述处理器10上运行的计算机程序,例如启动程序等等。
在所述存储装置20中能够存储计算机程序,并且所述计算机程序能够通过所述处理器10执行,以实现:确定总线与所连接的模块之间的物理距离;连接在所述总线和所述模块之间的寄存器级数将所述物理距离均分得到子距离;根据所述子距离预估静态时序分析所需的时序信息;将时序信息导入静态时序分析工具进行分析得到该数据通道的时序违例和时序余量;判断分析结果中该数据通道是否有时序违例以及判断时序余量是否大于预设值;若该数据通道有时序违例,则在该数据通道上插入一级寄存器并再次预估时序信息并进行静态时序分析,直至该数据通道没有时序违例;若该数据通道时序余量大于预设值,则在该数据通道上减少一级寄存器并再次预估时序信息并进行静态时序分析,直至该数据通道的时序余量不大于预设值。
所述处理器10可以是中央处理单元(CPU),还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述平台100的控制中心,利用各种接口和线路连接整个平台100的各个部分。
所述存储装置20可用于存储所述计算机程序和/或模块,所述处理器10通过运行或执行存储在所述存储装置20内的计算机程序和/或模块,以及调用存储在存储装置20内的数据,实现所述平台的各种功能。所述存储装置20可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作平台、至少一个功能所需的程序等;存储数据区可存储根据手机的使用所创建的数据等。此外,存储装置20可以包括高速随机存取存储装置,还可以包括非易失性存储装置,例如硬盘、内存、插接式硬盘,智能存储卡,安全数字卡,闪存卡、至少一个磁盘存储装置件、闪存器件、或其他非易失性固态存储装置件。
图5为发明提供的SSD主控芯片高效总线设计迭代系统200的结构示意图,所述SSD主控芯片高效总线设计迭代系统200可以包括确定模块21、分割模块22、预估模块23、分析模块24、判断模块25、插入模块26以及减少模块。
所述确定模块21,用于确定总线与所连接的模块之间的物理距离;
所述分割模块22,用于连接在所述总线和所述模块之间的寄存器级数将所述物理距离均分得到子距离;
所述预估模块23,用于根据所述子距离预估静态时序分析所需的时序信息;
所述分析模块24,用于将时序信息导入静态时序分析工具进行分析得到该数据通道的时序违例和时序余量;
所述判断模块25,用于判断分析结果中该数据通道是否有时序违例以及判断时序余量是否大于预设值;
所述插入模块26,用于当该数据通道有时序违例时,在该数据通道上插入一级寄存器并再次预估时序信息并进行静态时序分析,直至该数据通道没有时序违例;
所述减少模块27,用于当该数据通道时序余量大于预设值时,在该数据通道上减少一级寄存器并再次预估时序信息并进行静态时序分析,直至该数据通道的时序余量不大于预设值。
进一步的,所述确定模块21具体用于:
根据SSD主控芯片的布局提取出模块的物理位置以及出PIN位置信息的lef文件,其中,所述SSD主控芯片的布局根据SSD芯片设计网表得到,并且在静态时序分析时,将设计网表文件和时序信息一并导入静态时序分析工具中;
根据所述lef文件抽取出总线与所连接的模块之间的物理距离从而得到总线与所连接的模块之间的物理距离。
进一步的,分割模块22具体用于:
通过查找总线的频率需求表格、物理距离和频率对应的寄存器级数查找表格,得到数据通道的第一次寄存器插入级数值;
根据第一次寄存器插入级数值来将所述物理距离均分得到子距离。
进一步的,将子距离对应的时序信息的经验值一一对应并制成表格,在预估所述静态时序分析所需的时序信息时,根据所述子距离通过查找表格确定静态时序分析所需的时序信息。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包括在本发明的保护范围之内。
- SSD主控芯片高效总线设计迭代方法、系统以及平台
- 自动驾驶仿真平台的数据运行总线技术的设计方法、系统