存储装置及其调试系统的制作方法

文档序号:18266041发布日期:2019-07-27 09:09阅读:136来源:国知局
存储装置及其调试系统的制作方法

本申请要求于2018年1月19日在韩国知识产权局提交的、申请号为10-2018-0007002的韩国专利申请的优先权,该韩国专利申请的全部公开内容通过引用合并于此。

本发明构思涉及一种存储装置及其调试系统。



背景技术:

存储介质被配置为耦接到其他电子设备以发送数据或存储所接收的数据。

随着技术的发展以及由此而来的存储媒介的性能的增强,存储媒介的操作速度已经增加并且其固件被配置为使得存储媒介包括各种功能。操作速度或功能的这种增加可能增加存储介质中操作错误的可能性。用于提取错误信息的单独的调试技术可用于检测或修正这种错误。传统的调试方法包括通过由存储装置收集存储在存储装置中所包括的调试缓冲器中的调试日志以进行调试、通过经独立端口将存储装置物理连接到调试装置并收集用于分析的所需的数据以进行调试等。



技术实现要素:

本发明构思的一个方面是提供一种存储装置及其调试系统,其中可以容易且准确地执行调试。

本发明构思的一些实施例提供了一种存储装置,所述存储装置包括非易失性存储器、配置为响应于来自主机的请求而控制向所述非易失性存储器写入数据和从所述非易失性存储器读取数据的控制器以及配置为从所述主机接收电力的电源模块。所述控制器配置为通过连接到所述主机的通道将调试数据发送到所述主机。所述控制器可以配置为经由至少一条电源线将所述调试数据发送到所述主机,所述电源线可配置用于向所述存储装置供电。

另一些实施例提供了一种调试系统,所述调试系统包括存储装置以及主机,所述存储装置配置为响应于写请求写入数据、响应于读请求输出数据并且提供调试数据,所述主机配置为通过将所述主机连接到所述存储装置的通道接收所提供的调试数据并分析所接收的调试数据。所述存储装置和所述主机可以经由可配置用于提供电力的多条电源线连接,并且存储装置可以配置为经由所述多个电源线中的至少一条电源线将调试数据发送到所述主机。

另外一些实施例提供了一种存储装置,所述存储装置包括非易失性存储器、控制器、调试端口、以及开关,所述非易失性存储器配置为写入数据或输出数据,所述控制器配置为响应于来自主机的请求控制向所述非易失性存储器写入数据或从所述非易失性存储器读取数据,所述调试端口配置为向调试装置提供调试数据,所述开关配置为响应于所述控制器而选择性地将调试数据通过调试端口发送到调试装置或者通过连接到所述主机的通道发送到所述主机。所述控制器可以配置为:检查所述主机是否支持调试,如果所述主机支持调试则控制所述开关经由连接到所述主机的通道而将所述调试数据发送到所述主机,如果所述主机不支持调试则控制所述开关经由所述调试端口而将所述调试数据发送到所述调试装置。

附图说明

从以下结合附图的详细描述将更清楚地理解本公开的上述和其他方面、特征以及优点,在附图中:

图1是根据本发明构思的一些实施例的调试系统的框图;

图2是根据本发明构思的一些实施例的存储装置的框图;

图3是示出根据本发明构思的一些实施例的存储装置和主机之间的连接的示图;

图4a和图4b是示出根据本发明构思的一些实施例的基于sata协议应用到存储装置上的端口的使用的示例的示图;

图5a和图5b是示出根据本发明构思的一些实施例的基于sas协议应用到存储装置上的端口的使用的示例的示图;

图6是根据本发明构思的另一示例实施例的调试系统的框图。

具体实施方式

在下文中,将参考附图描述本发明构思的示例实施例。

图1是根据一些实施例的调试系统的框图。参考图1,根据一些实施例的调试系统可以包括存储装置100和主机200。可以提供存储装置100以根据外部请求存储数据或提供数据。存储装置100可以包括控制器110、缓冲存储器120、非易失性存储器130和电源模块140。

控制器110可以响应于外部请求(例如,来自主机200的请求)来控制缓冲存储器120和非易失性存储器130。例如,控制器110可以在主机200的请求下将数据写入非易失性存储器130或读取被写入非易失性存储器130的数据。

缓冲存储器120可以临时地存储由主机200提供的数据。例如,根据来自主机200的写请求,所提供的数据可以存储在缓冲存储器120中,并且可以随后存储在非易失性存储器130中。例如,可以使用动态随机存取存储器(dram)来实现缓冲存储器120。

非易失性存储器130可以在控制器110的控制下写入数据或输出所写入的数据。可以使用例如非易失性存储器件(诸如电可擦除可编程rom(eeprom)、nand闪存、nor闪存、相变随机存取存储器(pram)、电阻式ram(reram)、铁电ram(fram)、自旋力矩磁ram(mram)等)来实现非易失性存储器130。

电源模块140可以从主机200接收电力,以提供电力来驱动存储装置100。

主机200可以用作调试单元来调试存储装置100,并且可以包括调试模块210和电源220。调试模块210可以从存储装置100收集用于调试存储装置100所需的数据并可以分析所收集的数据。

例如,调试模块210可以在任意时间点或在存储装置100中出现需要分析的错误的时间点收集数据,并且可以基于联合测试行动组(jtag)调试、串行线调试(swd)和通用异步接收器发送器(uart)调试之一来执行调试。

如上所述,调试模块210可以在除了调试日志之外的需要分析的时间点收集存储装置100的状态数据以执行调试,从而能够在开发者级别进行详细分析。此外,由于不需要将单独的调试日志存储在存储装置100中,因此可以有效地利用资源。另外,由于不需要存储调试日志的单独逻辑,因此可以缩短开发周期。

电源220可以向存储装置100供电。

存储装置100和主机200可能需要通道来转发调试所需的数据。在这种情况下,该通道可以与在存储装置100和主机200之间交换数据的通道分开地提供,该通道用于在所需的时间点收集数据而不损坏数据。

为此,存储装置100可以包括用于调试的数据转发的附加调试端口。例如,可以在存储装置100的印刷电路板(pcb)上提供诸如jtag端口、uart端口等的调试端口。

然而,在这种情况下,可能存在这样一些限制:可能对pcb设计造成负担,每当执行调试时调试装置应物理连接到调试端口,并且可能无法执行在线调试。

因此,根据一些实施例,存储装置100和主机200可以配置为经由多条电源线的一部分来发送调试数据。

例如,主机200可以直接连接到存储装置100中提供的控制器110,以在需要分析的时间点收集存储装置100的数据而不会对其造成损坏。

图2是根据一些实施例的存储装置的框图。参考图2,根据一些实施例的存储装置100中所包括的控制器110可以包括处理器111、缓冲管理器112、存储器接口(i/f)113、主机i/f114和内部集成电路(i2c)i/f115。处理器111可以将关于非易失性存储器130的读/写操作所需的控制信息发送到存储器i/f113和主机i/f114的寄存器。处理器111可以基于提供为用于控制器110的各种控制操作的固件来操作。例如,处理器111可以执行闪存转换层(ftl)以执行垃圾收集、地址映射、耗损均衡等,来管理非易失性存储器130。

缓冲管理器112可以控制缓冲存储器120的读操作和写操作。例如,缓冲管理器112可以在缓冲存储器120中临时地存储写入数据和读取数据。

存储器i/f113可以与非易失性存储器130交换数据。存储器i/f113可以将从缓冲存储器120转发的写入数据写入非易失性存储器130。可通过存储器i/f113收集由非易失性存储器130经由存储器通道提供的读取数据。存储器i/f113中收集的读取数据可以通过缓冲管理器112存储在缓冲存储器120中。

主机i/f114可以执行与主机(参见图1的200)的通信。例如,主机i/f114可以提供用于与主机通信的通信通道,并且可以例如在主机和存储装置100之间提供物理连接。

换句话说,主机i/f114可以提供对应于主机的总线格式的与存储装置100的交互。主机的总线格式可以包括例如通用串行总线(usb)、小型计算机系统接口(scsi)、串行总线(pciexpress)、高级技术附件(ata)、并行ata、串行ata(sata)和串行连接scsi(sas)中的至少一个。

i2ci/f115可以是能够由多个主设备共享至少一个从设备的总线接口。i2ci/f115可以提供控制器110和外部设备之间的交互。i2ci/f115可以是包括一条串行数据线(sda)和一条串行时钟线(scl)的总线接口,并且能够执行双向通信。在i2ci/f115的协议中,可以通过利用总线主设备指定通信合作者的唯一地址来确定通信合作者。然而,可以利用各种其他协议来代替i2ci/f115,例如系统管理总线(smbus)、uart、串行外围接口(spi)、高速芯片间互连(hsic)等。

图3是示出根据一些实施例的存储装置和主机之间的连接的示图。参考图3,存储装置100和主机200可以经由电源线31、32和33物理地彼此连接,主机200的调试模块210可以通过电源线从存储装置100的控制器110收集调试数据,并且主机200的电源220可以通过电源线向存储装置100的电源模块140供电。将控制器110和调试模块210彼此连接的电源线31可以是在随存储装置100提供的电源线当中未用于执行供电或其他功能的电源线。例如,在使用sata协议的存储装置的情况下,可以不使用包括两条3.3v线和三条12v线的总共5条电源线。此外,在使用sas协议的存储装置的情况下,可以不使用两条3.3v线。如上所述,存储装置100可以配置为使用未在存储装置100中使用的电源线发送调试数据,使得调试数据可以在无需存储装置100中单独的调试端口的情况下发送。

图4a和图4b是示出应用于基于sata协议的存储装置的端口的使用的示例的示图。详细地,图4a示出了根据相关技术的端口的使用,图4b示出了根据本发明构思的一些实施例的端口的使用。

根据相关技术,如图4a所示,主机可以具有十五个端口,其中可以不使用端口p1和p2以及连接到12v线的端口p13、p14和p15。根据本发明构思的一些实施例,如图4b所示,端口p1和p2可以分别用于数据输入(tdi)和数据输出(tdo),并且连接到12v线的端口p13、p14和p15可以分别用于时钟tck、模式信息tms和复位信号trst。在这种情况下,可以执行jtag调试。

图5a和图5b是示出应用于基于sas协议的存储装置的端口的使用的示例的示图。详细地,图5a示出了根据相关技术的端口的使用,图5b示出了根据本发明构思的一些实施例的端口的使用。根据相关技术,如图5a所示,主机可以具有十五个端口,其中不使用端口p1和p2。根据本发明构思的一些实施例,如图5b所示,端口p1和p2可以分别用于时钟swclk和数据输入/输出swdio。在这种情况下,可以执行串行线调试(swd)或uart调试。

尽管上面所描述的示例实施例示出了应用于基于sata协议或sas协议的应用于存储装置的情况,但是其示例实施例不必限于此。例如,其示例实施例可以应用于基于各种协议的存储装置,诸如pcie协议等。

图6是根据另一些示例实施例的调试系统的框图。参考图6,调试系统可以以这样的方式配置:存储装置100还包括开关150和调试端口160。调试端口160可以是设置为从存储装置100收集调试数据的附加端口,并且例如可以通过在存储装置100的pcb上提供的jtag端口、uart端口等来实现。

调试装置300可以物理连接到调试端口160,并且调试装置300可以通过调试端口160收集调试数据。开关150可以对输出来自控制器110的调试数据的输出路径进行切换,并且可以执行切换以选择性地将调试数据发送到调试装置300或主机200中提供的调试模块210。例如,当打开存储装置100时,控制器110可以判定主机200是否支持由调试模块210执行的调试,并且可以执行切换,使得开关150可以基于判定结果将调试数据发送到调试装置300或调试模块210。

在图6所示的调试系统中,例如,在主机200不包括用于调试的调试模块210的情况下,也可以通过调试装置300执行调试。因此,即使在存储装置100连接到不应用本发明构思的一些实施例的主机的情况下,也可以在不使用调试缓冲器的情况下执行调试。如前所述,根据一些实施例,在存储装置及其调试系统中可以利用简单的配置容易且准确地执行调试。

虽然上文已经示出和描述了示例实施例,但是对于本领域技术人员来说显而易见的是,在不脱离由所附权利要求限定的本发明构思的范围的情况下,可以进行修改和变型。

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