United States Patent (10) Patent No.: US 8,301,822 B2
United States Patent (10) Patent No.: US 8,301,822 B2
(54) MULTI-PROTOCOL STORAGE DEVICE                                                     6,839,864 B2 *     1/2005 Mambakkam et al. ...... T14? 5.11
         BRIDGE                                                                        6,880,024 B2 * 4/2005 Chen et al. ...................... T10.62
                                                                                       6,895,447 B2 * 5/2005 Brewer et al. ................... T10, 11
                                                                                       7,047.450 B2 *     5/2006 I       itsu et al. ............... T14? 43
(75) Inventors: Yosi Pinto, Kfar-Vradim (IL); Yacov                                                         contine SU a
                DuZly, Ra-Anana (IL); Amir Fridman,
                      Tel Aviv (IL); Eyal Hakoun, Kibbutz                                     FOREIGN PATENT DOCUMENTS
               Matzuba (IL)                                                     DE           102006059 109 A1        6, 2008
(73) Assignee: Sandisk IL Ltd., Kfar Saba (IL)                                                          (Continued)
(*) Notice: Subject to any disclaimer, the term of this                                             OTHER PUBLICATIONS
                      patent is extended or adjusted under 35                   McLean, Peter. Information Technology—AT Attachment with
                      U.S.C. 154(b) by 515 days.                                Packet Interface–6. Working Draft. Feb. 26, 2002.*
(21) Appl. No.: 12/565,685                                                                              (Continued)
(22) Filed:     Sep. 23, 2009                                                   Primary Examiner — Matthew D Spittle
                                                                                (74) Attorney, Agent, or Firm — Toler Law Group, PC
(65)                     Prior Publication Data
                                                                                 57                        ABSTRACT
        US 2011 FOOT2185 A1             Mar. 24, 2011                           (
                                                                                A bridge includes a host interface via which data/commands
(51) Int. Cl.                                                                   are received from and transferred to a host, and a storage
        G06F I3/36                  (2006.01)                                   device interface via which data/commands are received from
(52) U.S. Cl. ......... 710/315: 710/305: 710/311: 710,313                      and transferred to a storage device. The bridge also includes
(58) Field of Classification search. 740. one SDPC, a controller and a switching system that is con
                   710/65, 301, 305,36, 311, 313, 315: 714/43,                  figurable by the controller to connect the protocol converter to
                                                                 71.4744        the host interface and the storage device interface if the stor
        See annlication file for complete search historv.                       age device protocol used by the host device differs from the
              pp                     p                         ry               storage device protocol used by the storage device, and to
(56)                     References Cited                                       connect the host device interface to the storage device inter
                                                                                face, not via the bi-directional protocol converter, if the two
                   U.S. PATENT DOCUMENTS                                        storage device protocols are the same. The bridge may
       5,151,898 A        9, 1992 Kondo                                         include two SDPCs, each for converting a different protocol
       5.832,244. A      11/1998 Jolley et al. ................... T10,305      to the host protocol and vice versa, with the Switching system
       5,928,347 A * 7/1999 Jones ...........                    710,305        being configurable to switch between the two SDPCs. The
       6,038,618 A        3/2000 Beer et al.......            ... 710, 18       bridge may omit the SDPC altogether, with the switching
         E. A : 38 Sayashi et al. . 2839.
       6.3341 60 B1 12/2001 Emmert et al. ................. T10/11
                                                                                system being configurable to switch between connecting (1)
                                                                                the host device interface to the storage device interface, and
       6,502,159 B1      12/2002 Chuang et al.                                  (2) bypassing the storage device interface.
       6,718.274 B2 * 4/2004 Huang et al. .................... TO2/64
       6,832,281 B2 * 12/2004 Jones et al. ................... T10,301                           34 Claims, 18 Drawing Sheets
A 200
           210                                                                                                                 Removable
                                                                                                                           Storage Device
                                                                             Embedded                                          (Legacy SD
                                                                              Memory                                           Card or UFS
                                                                              (UFS)
                                                            US 8,301,822 B2
                                                                        Page 2
               U.S. PATENT DOCUMENTS                                             2005/0097263 A1*       5/2005 Wurzburg ................ T11 103
                                                                                 2006, O161716 A1*      7, 2006 Lin ..........         ... 710,313
   7,069,369        6, 2006   Chou et al. .................... T10,301           2009/02701 17 A1* 10/2009 Buckley ........................ 455,515
   7,076,580        T/2006    Nakano ........................... T10/65
   7,120,713       10, 2006   Kinstler                                                      FOREIGN PATENT DOCUMENTS
   7,162,549        1/2007    Mambakkam et al. ......... T10/16              WO               2006101057 A1         9, 2006
   7,222,205        5/2007    Jones et al.                      710,301
                                                                                                  OTHER PUBLICATIONS
   7,237,049        6, 2007   Kang et al. .................... T10/104
   7,254,650        8, 2007   Lin et al. ......................... T10/11    Compaq et al. Universal Serial Bus Specification. Revision 2.0. Apr.
   7,263,476        8, 2007   Dellacona ..........                 TO3/13    27, 2000.*
   7,278,051       10, 2007   Mambakkam et al. ...... 714f6.12               Venkatesan, Vandana. Mobile Storage: Trends for Tomorrow. The
   7,376,773        5/2008    Kim et al. ....................... 71 Of74     Advent of UFS (Universal Flash Storage). Aug. 2011.*
   7,412,628        8, 2008   Shikada .........                ... 714.f43   JEDEC. Universal Flash Storage (UFS 1.1). JESD220A. Jun. 2012.*
   7,624,216       11/2009    Yoshikawa et al.                    710,301    Vuong, Hung. Flash Storage Trends & Ecosystem. Qualcomm Inc.
   7,664,902        2, 2010   Chow et al. ....                    710,301    2010.*
   7,827,337       11, 2010   Jeong ............................ T10/113     JEDEC. Universal Flash Storage (UFS) Host Controller Interface.
   7,848,160       12, 2010   Kuriyama ................ 365,189.15           JESD223. Aug. 2011.*
   7,925,812        4, 2011   Konno et al. ................. T10,301         International Search Report and Written Opinion issued in Interna
2003/0066087        4, 2003   Sawyer et al.                                  tional Application No. PCT/IB2010/002191 dated Feb. 7, 2011, 12
                                                                             pageS.
2004/OO27879        2, 2004   Chang ........................... 365,200
2004/OO70952        4, 2004   Higuchi et al. ............... 361/737         * cited by examiner
U.S. Patent   Oct. 30, 2012   Sheet 1 of 18            US 8,301,822 B2
                                         (prae?nKè-)
                                 ÁJOUuÐIN (SHQ)
U.S. Patent   US 8,301,822 B2
U.S. Patent   Oct. 30, 2012   Sheet 3 of 18   US 8,301,822 B2
U.S. Patent   US 8,301,822 B2
U.S. Patent   US 8,301,822 B2
U.S. Patent    US 8,301,822 B2
 O
 O
 N.
          /
          ||
          0
U.S. Patent                 Oct. 30, 2012                                  Sheet 8 of 18                         US 8,301,822 B2
 O
 O
 OO
- \u. ?
                ±
                -!
                -
                **
                      ?NIAEGTROWS
                      4.
                                    . . . . . . . . . . . . . . . . .      . . . . . .   . . . . . .
                                                                                                            -.
                                                                                                            -
                                                                                                            .-
              098
                                      uole?/|d7y OOIpuSelOuS
                            ...................                           ... . . . . . . . . .
                -**
                -
                ***
                      ISOH SO                                                                              ~.
                                                                                                           -
                                                                                                           „…
. . . . . . . . . . .. . . . . . . . . . . . . . . . .
              9
              |
              0
                                                               098                           079
U.S. Patent                               US 8,301,822 B2
 O
 O
 O)
                                     -,
                                     -
                                     „…
              E150C]|-~~}|{E096* *
U.S. Patent   US 8,301,822 B2
 O
 O
 O
 w
U.S. Patent   US 8,301,822 B2
 O
 O
 r
 r
              (II
U.S. Patent        US 8,301,822 B2
 O
 O
 CN
 r
              -.
U.S. Patent   Oct. 30, 2012   Sheet 13 of 18         US 8,301,822 B2
                                               (II
U.S. Patent   US 8,301,822 B2
 O
 O
 s
 r
U.S. Patent   US 8,301,822 B2
 O
 O
 v
U.S. Patent   Oct. 30, 2012   Sheet 16 of 18   US 8,301,822 B2
 O
 C
 CO
 r
U.S. Patent         US 8,301,822 B2
 O
 O
 N.
 r
              Ms.
              |
                                                      US 8,301,822 B2
                               1.                                                                       2
          MULTI-PROTOCOL STORAGE DEVICE                                 device uses to convert and transfer data and commands to the
                     BRIDGE                                             storage device through the storage device interface. The
                                                                        bridge also includes a controller and a Switching system. The
               FIELD OF THE INVENTION                                   switching system may be configurable by the controller to be
                                                                        in one of a number of states. For example, in state (1), the
  The present invention generally relates to storage systems            Switching system connects the host interface to the storage
and more specifically to a method for connecting a host                 device interface via an SDPC if the storage device protocol
device to a storage device using a communication protocol               used by the host device and the storage device protocol used
the same as or different from the communication protocol the            by a storage device engaged by the host are different, in State
host device is using, and to an apparatus that enables the         10
                                                                        (2), the Switching system connects the host device interface to
connection method.                                                      the storage device interface directly or through other means,
                        BACKGROUND                                      bypassing the SDPC, if the two storage device protocols are
                                                                        the same, and in State (3), the Switching system bypasses the
   Use of flash storage devices has been rapidly increasing        15   storage device interface if the storage device is not connected
over the years because they are portable and they have small            to the bridge.
physical size and large storage capacity. Flash storage devices           Not all of the three switch states described above are nec
come in a variety of designs. Some storage devices are                  essarily implemented in or used by a bridge. The number and
regarded as “removable', which means that a user can move               types of Switch states that a bridge uses may depend on the
them from one host device (e.g., cellular phone) to another or          circumstances (e.g., type of required conversion(s), type of
use multiple storage devices with one host device by Swap               used network topology, etc.). For example, state (1) and State
ping storage devices engaged by Such host device. Other                 (2) referred to above are applicable, for example, if the host
storage devices are regarded as “embedded, meaning that                 device and the storage device are functionally connected via
they are built into and not intended to be removed by the user          a chain topology. In another example, state (1) and state (3)
from the host device.                                              25   referred to above are applicable, for example, if the host
   A host may need to operate with various kinds of remov               device and the storage device are functionally connected via
able storage devices, be it presently existing or future storage        a ring topology and no protocol conversion is involved, and
devices (e.g., SD cards, UFS cards, UHS-II cards, etc.). Vari           all of the states mentioned above are applicable for a ring
ous storage devices use or may be designed to use different             topology system where protocol conversion is required. By
kinds of protocols. To this end, the host device would have to     30   manipulating the Switching system, devices that use a low
accommodate different protocols, and this has typically                 speed storage device protocol and devices that use a high
required separate interfaces for the different cards and proto          speed storage device protocol can both communicate with a
cols. Also, the host may have to accommodate different Stor             host device through the bridge using a single, common high
age device communication topologies.                                    speed storage device protocol.
   Providing a host with large number of interfaces that Sup       35      Alternatively, the bridge may include two SDPCs, each for
port different protocols and topologies for communicating               converting a different protocol to the host protocol and vice
with various storage devices is not always practical and effec          Versa, with the Switching system being configurable by the
tive. Hence, there is a need to address this problem with a             controller to switch merely between the two SDPCs. Then
better approach.                                                        again, the bridge may omit the SDPC altogether, with the
                                                                   40   Switching system being configurable by the controller to
                         SUMMARY                                        switch merely between connecting (1) the host device inter
                                                                        face to the storage device interface, and (2) bypassing the
   In view of the foregoing, it would be beneficial to have, for        storage device interface. In another implementation, the
example, a host device that can communicate with storage                bridge may be connected directly to the host device or to a
devices of various types via a single, common interface.           45   communication hub. These and other, embodiments, features,
Among the various storage devices there are slower cards,               aspects and advantages thereof will become better under
such as legacy SD cards, and faster cards, such as UHS-II               stood from the description herein, appended claims, and
cards or UFS cards, and accommodating all of them with a                accompanying drawings as hereafter described.
single, common interface is advantageous. To carry out the
communications in different protocols, the single, common          50          BRIEF DESCRIPTION OF THE DRAWINGS
interface is adapted as a versatile interface (which is referred
to hereinafter as a “bridge'). Various embodiments of a bridge             The accompanying drawings, which are incorporated in
designed to accommodate such communications are provided                and constitute part of this specification, illustrate various
herein.                                                                 embodiments with the intent that these examples not be
  In one implementation, a bridge is placed along a serial         55   restrictive. It will be appreciated that for simplicity and clarity
communication path so as to interface, communication-wise,              of the illustration, elements shown in the figures referenced
between a host device and a removable storage device. The               below are not necessarily drawn to Scale. Also, where con
bridge includes two interfaces for conveying data and com               sidered appropriate, reference numerals may be repeated
mands between the host device and storage device. One of the            among the figures to indicate like, corresponding or analo
two interfaces is on the host side, a host interface, and the      60   gous elements. Of the accompanying figures:
other is on the storage device side, a storage device interface.           FIG. 1 is a diagram of an example conventional network
  The bridge may include one or more bi-directional storage             architecture in which a host device communicates with a
device protocol converters (“SDPCs”). An SDPC may be                    faster storage device (e.g., UFS card) or a slower storage
adapted to use a storage device protocol that the host device           device (e.g., legacy SD card) using chain topology;
uses to convert and transfer data and commands to the host         65      FIG. 2 is a diagramofa storage device network architecture
device through the host interface. Such SDPC is further                 using a chain topology and including a bridge according to an
adapted to use a storage device protocol that the storage               embodiment;
                                                    US 8,301,822 B2
                              3                                                                      4
  FIG. 3 is a diagram of a network architecture using a chain        that facilitates relatively slow data communication. Host
topology and including a bridge according to an embodiment;          devices are designed to communicate with UFS cards and
  FIG. 4 shows a bridge according to an embodiment;                  UHS-II cards by using a UFS protocol and a UHS-II protocol,
  FIG. 5 shows a bridge according to an embodiment;                  respectively, that facilitates faster data communication. The
   FIG. 6 shows a bridge according to an embodiment;         5       UHS-II and UFS protocols are defined for significantly
   FIG. 7 shows a method for operating a bridge according to         higher data transferrates than the legacy SD protocol. In order
an embodiment;                                                       to support such high speed data transfer both protocols (UHS
   FIG. 8 schematically illustrates communication between a          II and UFS) use a differential signaling physical interface as
host device and a storage device via a bridge where storage          opposed to the single ended physical interface that legacy SD
device interface commands are transferred transparently both 10      interfaces and eMMC interfaces use. The high speed proto
ways by using the SCSI over UFS protocol;                            cols and the low speed protocols also differ in that they use
   FIG.9 schematically illustrates communication between a           one or more layers (e.g., link layer, transport layer) in a
host device and a storage device via a bridge where Storage          different way. The terms “high speed protocol/device/inter
Device interface commands are transferred transparently              face' and “fast protocol/device/interface' are used herein
both ways using the SD over UFS protocol;                    15      interchangeably. Likewise, the terms “low speed protocol/
   FIG. 10 schematically illustrates communication between           device/interface' and “slow protocol/device/interface' are
a host device using the SCSI over UFS protocol and a storage         also used herein interchangeably.
device using the legacy SD protocol via a bridge;                       The host device traditionally communicates with legacy
   FIG. 11 shows a bridge functional layout according to an          SD cards directly, by using a "point-to-point’ communication
embodiment;                                                     2O   scheme. UFS devices, on the other hand, are planned to com
   FIG. 12 schematically illustrates communication between           municate with their host devices through a data network of a
a host device using SD-over-UFS and a storage device using           chain topology type. In the chain topology, devices commu
legacy SD protocol via a bridge;                                     nicate with each other by using high-speed two-wire differ
   FIG. 13 shows a bridge functional layout according to an          ential buses. Consequently, a host device that can Support
embodiment;                                               25         faster standards (i.e., UFS and/or UHS-II) and is also slow
  FIG. 14 shows a host device with a UHS-II interface for            standard (e.g., SD) backward-compatible would be required
embedded storage devices connected in a Ring topology, a             to have two separate communication interfaces: a slow inter
storage device interface for legacy SD cards, and a storage          face (e.g., an SD interface) and a faster interface (e.g., a UFS
device interface for UHS-II cards;                                   interface and a UHS-II interface). This means that such host
  FIG. 15 shows a host device with one legacy SD interface, 30       device would have to deal with different communication pro
one UHS-II interface connected in a ring topology, and a             tocols and topologies, which is costly in terms of number of
bypass socket in a “non-bypass' state;                               input-output (“I/O”) count, processor complexity, circuit
  FIG.16 shows the data storage system of FIG. 15 with the           board wiring, computer resources, host gate count, testing
bypass socket in a "bypass' state;                                   procedures, etc.
  FIG. 17 shows a host device with one UHS-II interface and 35          AUHS-II storage device can be designed to communicate
the bridge of FIG. 6 connected in a ring topology; and               with a host device by using a network topology known as
   FIG. 18 shows a connection analyzer according to an               “ring”. “Ring' topology is a network setup in which multiple
embodiment.                                                          devices are connected in series, and the first device and the
                                                                   last device are connected directly to the host device). Because
                DETAILED DESCRIPTION                            40 a ring topology provides one-way communication path
                                                                   between each pair of interconnected devices, ring networks
   The description that follows provides various details of may be disrupted by the failure of a single link. A cable break
example embodiments. However, this description is not might isolate the other devices that are attached to the ring.
intended to limit the scope of the claims but instead to explain Therefore, a host device using a UHS-II type storage device
various principles of the invention and the manner of practic- 45 would require a special communication interface. Using the
ing it.                                                            ring topology in host-storage device environment is problem
   Universal Flash Storage (UFS) is a proposed common flash atic because, typically, this type of environment includes a
storage specification for digital cameras, mobile phones and removable storage device, and removal of a storage device
consumer electronic devices. UFS is designed to provide would break the communication path. This means that a
higher data transfer speed and increased reliability in flash 50 UHS-II based host device would be required to have three
memory storage. Ultra-High-Speed type II (UHS-II) is a new types of interfaces (as demonstrated by FIG.14): (1) a UHS-II
specification that defines a new generation of SD cards. UFS interface for the embedded devices that are connected
and UHS-II protocols are also referred to herein as “high through the ring topology, (2) a UHS-II interface for remov
speed protocols. A current generation (i.e., non-UHS-II) SD able storage devices that support the UHS-II standard, and (3)
card/protocol is referred to herein as a “legacy SD card/ 55 a legacy SD interface to facilitate SD backward compatibility.
protocol or “low speed card/protocol.                                 FIG. 1 is an example of conventional storage system archi
   Secure digital (“SD) memory cards and embedded multi tecture 100. As explained above, new data storage device
media-card (“eMMC) storage devices are examples of rela protocols are designed to facilitate faster transfer of data and
tively slow flash storage devices. Examples of faster flash commands, for example relative to the legacy SD protocol. A
storage devices include ultra high speed type II (“UHS-II) 60 conventional solution to cope with the two types of Storage
memory cards and universal flash storage (“UFS) storage device protocols (i.e., slow protocol; e.g., legacy SD protocol,
devices. “UFS is a standard developed by UFS task force and fast protocol; e.g., UFS and UHS-II) allows a host pro
working for the Joint Electron Device Engineering Council cessor (i.e., host processor 110) to handle them separately, as
(s) (“JEDEC) Solid State Technology Association, and demonstrated by FIG.1. Hereinafter, “legacy SD is referred
“UHS-II is a standard developed by the SD Association 65 to as “SD for short.
(“SDA) for the next generation of SD storage device. Host             Assume that host processor 110 is designed to operate
devices communicate with SD cards by using an SD protocol using both the UFS protocol and SD protocol, in order to
                                                      US 8,301,822 B2
                               5                                                                       6
make it SD backward compatible. In order to cope with the               host CPU 210 and removable storage device 260, whether
UFS protocol and SD protocol, host processor 110 is pro                 storage device 260 be a slow card (e.g., legacy SD card) or
vided with two separate interfaces: interface 112 and inter             a fast card (e.g., UFS card, SD-over-UFS compatible SD
face 114. Interface 112 is use for communicating with a                 card).
removable SD card 120 directly (i.e., via SD bus 130). Inter               Bridge 250 can be either in a “transparent state or in a
face 114 is used for communicating UFS data/commands                    “conversion' State, depending on the type of protocol that
with external devices such as UFS input/output device 150,              host processor 210 uses and on the type of protocol that
UFS input/output device 160, UFS-type memory device 170,                removable storage device 260 uses. That is, bridge 250 iden
and also with removable storage device 120; i.e., if removable          tifies these types of protocols, for example by using a con
storage device 120 is a UFS card or an SD-UFS card that is         10
                                                                        nection analyzer Such as connection analyzer 442 of FIG. 4),
capable of communicating with host processor 110 by encap               and acts accordingly: it transitions to (or remains in) the
sulating SD data/commands within the UFS protocol. (Note:               “conversion' state if removable storage device 260 uses the
encapsulation of SD data/commands within the UFS protocol               legacy SD protocol, to thereby bridge between the UFS stor
is referred to hereinafter as “SD-over-UFS'.)                           age device protocol used by UFS-type host CPU 210 and the
   Because of the way the UFS protocol is designed, host           15
device 110 can communicate with its peripherals via a bus               legacy storage device protocol used by legacy SD card 260,
that has a chain topology. Chain Topology is a wiring scheme            and it transitions to (or remains in) the “transparent state if
in which device A is wired to device B, device B is wired to            removable storage device 260 and host CPU 210 use the same
device C, device C is wired to device D, etc., and the last             protocol which, in this example, is the UFS protocol. (Note:
device in the chain is not looped back to device A but rather it        regarding the present disclosure, a UFS card and a SD-over
communicates with device A through the other devices. With              UFS type card are collectively referred to herein as UFS
reference to FIG. 1, host processor 110 is communicating                card.)
with device 150 via UFS bus 140, device 150 is communicat                  While in the “conversion' state, bridge 250 receives data/
ing with device 160 via UFS bus 142, device 160 is commu                commands from host CPU 210 (via devices 220, 230, and
nicating with UFS embedded memory 170 via UFS bus 144,             25   240) in the UFS storage device protocol and sends them to
and UFS embedded memory 170 is communicating with                       legacy SD card 260, via legacy SD connection 252, by using
removable storage device 120 via UFS bus 146. The circuit               the legacy SD storage device protocol, and receives data/
configuration of FIG. 1 has the drawbacks of using two sepa             commands from legacy SD card 260, via legacy SD connec
rate interfaces, an SD interface (i.e., interface 112) and a UFS        tion 252, in the legacy SD storage device protocol and sends
interface (i.e., interface 114), and of requiring host CPU 110     30   them to host processor 210 (via devices 240,230, and 220) by
to allocate space and resources, and dedicate circuits for both         using UFS storage device protocol. As explained above, no
types of storage device protocols and topologies.                       protocol change is required if host CPU 210 and removable
   FIG. 2 is a diagram of a storage system architecture 200             storage device 260 use the same storage device protocol (in
with a bridge 250 according to an example embodiment. Host              this example the UFS protocol). If host CPU 210 and storage
CPU 210 has one communication interface (i.e., communi             35   device 260 are UFS devices, bridge 250 and storage device
cation interface 212) via which it communicates with external           260 are connected via UFS connection 254. SD connection
devices (e.g., removable storage device 260). In this architec          252 and UFS connection 254 are shown logically as separate
ture, which uses a chain topology, both the slow storage                connections. However, physically, they may have terminals in
device interface (e.g., legacy SD interface) and the high speed         common. A bridge (e.g., bridge 250) in the transparent state is
interface (e.g., UFS interface) will communicate with the host     40   transparent to communications between host CPU 210 and
through the bridge by using the high speed storage device               removable storage device 260. Storage system architecture
protocol. This way, a system that includes a host device that           200 includes a bridge as a separate device (i.e., bridge 250).
uses a high speed protocol and a bridge such as bridge 250 is           However, the bridge functionality may be incorporated into
backward compatible, which means that it can operate with               the embedded memory (e.g., embedded memory 240), as
devices that use low speed protocols (Note: in this example,       45   exemplified by FIG. 3, which is described below.
the faster storage device protocol is the UFS protocol and the             There may be SD-UFS combined cards that include two
slow storage device protocol is the legacy SD protocol.)                logically separate sets of host interface terminals, which may
   In the example of FIG. 2, host CPU 210, UHS-II type                  have common connection terminals; i.e., one set which con
input/output module 220 (e.g., an execute in place (XIP)                forms to legacy SD card and another set which conforms to
device), UHS-II type input/output module 230 (e.g., WiFi           50   UFS card, and two sets of storage device interfaces; i.e., one
device), and embedded memory 240 are designed to receive                set of storage device interface for operating the card as a
and transmit data and commands by using the UFS protocol.               legacy SD and another set of storage device interface for
This means that communication between each pair of inter                operating the card as a UFS card. Having two sets of terminals
connected devices, via the corresponding UFS bus, is straight           and front-ends allows SD-UFS cards to be used either as a
forward; namely, no changes are required to be made in the         55   legacy SD card or as a UFS card, depending on the type of
storage device protocol as the data and commands propagate              interface and socket accommodating the SD-UFS card.
along the chain (chain topology) network from host CPU 210              Bridge 250 may have only one storage device interface (not
to input/output module 220 (via UFS bus 270), from input/               shown in FIG. 2) that can accommodate both types of remov
output module 220 to input/output module 230 (via a UFS bus             able storage device 260. Alternatively, bridge 250 may have
that connects them), and from input/output module 230 to           60   separate storage device interfaces (also not shown in FIG. 2):
embedded memory 240 (via a UFS bus that connects them).                 one storage device interface which is dedicated for a legacy
   Even though host CPU 210 does not have an interface                  SD cards, and another storage device interface which is dedi
dedicated to legacy SD cards (note: it has only one high-speed          cated for UFS cards.
interface; i.e., interface 212, which, in this example, is                In one implementation, bridge 250 may be connected to
designed for UFS communication), it uses high-speed inter          65   host CPU 210 as shown in FIG. 2 (i.e., via one or more
face 212 to communicate with legacy SD cards by using                   intermediate devices). In another implementation, bridge 250
bridge 250. Bridge 250 facilitates communication between                may be connected directly to host CPU 250. In another imple
                                                       US 8,301,822 B2
                             7                                                                           8
mentation, bridge 250 may be connected directly to a com                    If the first storage device protocol differs from the second
munication hub that is connected, directly or via one or more            storage device protocol, this means that the data and com
devices, to host CPU 250.                                                mands, which host CPU 410 propagates through bridge 400
   FIG. 3 is a diagram of a storage system architecture 300              to SD card 420 by using a certain storage device protocol
with a device 350 that is a combination of a bridge and an               (e.g., UFS protocol), has to be sent to card 420 by using a
embedded memory according to an example embodiment.                      different storage device protocol (i.e., legacy SD protocol)
Storage system architecture 300 is identical to storage system           that SD card 420 “understands’. In this case, controller 440
architecture 200 of FIG. 2 in all respects, except that in               sends a control signal 444 to Switching system 460 to connect
storage system architecture 300 the bridge and the embedded              contact “(0) to contact "(1), to thereby connect protocol
memory are combined in one device, as shown at 350. Using           10   converter 450 to host device interface 402 (note: in the
one device (i.e., device 350) that combines the functionalities          example shown in FIG. 4, protocol converter 450 is perma
of the embedded memory and bridge is beneficial as it saves              nently connected to storage device interface 406). This way,
space, internal wiring, input/output interfaces, etc.                    host CPU 410 communicates data/commands to storage
   FIG. 4 shows a bridge 400 according to an example                     device 420 by using the first storage device protocol, which is
embodiment. Bridge 400 includes a host device interface 402.        15   USF protocol in this example, and UFS/SD converter 450
Host device interface 402 is connected to a communication                converts the UFS protocol to a second storage device protocol
bus 404 that is connected (possibly via other devices 412 that           which, in this example is the legacy SD protocol, which is
are part of the chain) to a host CPU that uses a first storage           usable by legacy SD card 420. The procedure of receiving
device protocol (e.g., UFS). Bridge 400 also includes a first            data, commands and signaling from a first device in a first
storage device interface 406 for interfacing with a removable            storage device protocol, translating the data/commands/sig
storage device 420 that uses a second storage device protocol            naling, and transmitting the translated data/commands/sig
(e.g., legacy SD), and a bi-directional storage device protocol          naling to a second device by using another storage device
converter (SDPC) 450 for converting the first storage device             protocol is referred to herein as “protocol conversion’, or
protocol to the second storage device protocol and vice versa.           “conversion' for short, hence using the term “converter and
Bridge 400 also includes a controller 440 and a switching           25   lingual derivatives thereof. Such a conversion typically
system 460. Switching system 460 is configurable by con                  includes encapsulating a slow protocol (e.g., legacy SD pro
troller 440 to connect protocol converter (SDPC) 450                     tocol) within a fast protocol (e.g., UFS protocol, UHS-II
between host device interface 402 and first storage device               protocol), and de-capsulating the slow protocol from the fast
interface 406 if the first storage device protocol (i.e., the            protocol. While “encapsulation” means embedding a proto
storage device protocol used by host CPU 410) differs from          30   col within another protocol, "de-capsulation” means the
the second storage device protocol (i.e., the storage device             opposite operation. A SCSI from/to SD conversion also
protocol used by the removable storage device), and to dis               includes basic SD-to-SCSI and SCSI-to-SD commands
connect protocol converter 450 and to connect host device                translation (and the translation is performed, e.g., by a trans
interface 402 to second storage device interface 408 if the first        lator such as commands translator 1130 of FIG. 11). Proto
storage device protocol and the second storage device proto         35   cols conversion also includes signaling translations (e.g.,
col are the same.                                                        “busy signaling translations) in the link layer level (and the
   Controller 440 may know in advance the type of host CPU               translation is performed e.g., by a translator Such as link
and/or the type of storage device protocol it uses. If controller        signaling translator 1185 of FIG. 11).
440 does not know the type of host CPU and/or the type of                   If the storage device protocol used by host CPU 410 is the
storage protocol the host device uses in advance, then con          40   same as the storage device protocol used by the removable
troller 440, in conjunction with a connection analyzer 442,              storage device that is connected bridge 400 (in this case UFS
monitors host device interface 402, to infer the type of host            card 430), controller 440 sends a control signal 444 to switch
CPU and/or the type of storage device protocol that host CPU             ing system 460 to connect contact “(0) to contact “(2), to
uses from information originating from host CPU 410. Con                 thereby connect host device interface 402 to storage device
troller 440 also uses connection analyzer 442 to monitor            45   interface 408 directly 464, that is, without going through
storage device interfaces 406 and 408 to detect which storage            converter 450 (it is possible that other components could be
device is connected to bridge 400 and/or which storage device            connected between 402 and 408).
protocol is used by a storage device that is connected to                   As explained in connection with FIG. 2, if host CPU 210 is
storage device interfaces 406 or to storage device interface             of the UFS type, bridge 250 can have one storage device
408. Controller 440, then, determines whether storage device        50   interface that is configured to accommodate one storage
420 uses a first storage device protocol which is also used by           device that can be a legacy SD card, SD-UFS card or UFS
host CPU 410, or a second storage device protocol that is not            card, or two storage device interfaces: one for legacy SD cards
used by host CPU410. Controller 440 may determine the type               and another for SD-UFS cards or UFS cards.
of the storage device protocol used by the two sides (i.e., host            FIG. 5 shows a bridge 500 according to an additional
CPU 410 and storage device 420), and compare them to                55   example embodiment. Bridge 500 is similar to bridge 400
determine whether a protocol conversion is required. Alter               except that bridge 500 includes two protocol converters: one
natively, controller 440 may determine that the two sides use            (i.e., protocol converter 450) that converts from UFS protocol
the same storage device protocol or different storage device             to legacy SD protocol and vice versa, as shown also in FIG. 4.
protocols without determining the type of each used storage              and another (i.e., protocol converter 510) that converts from
device protocol. Typically, a device such as host CPU 410 and       60   UFS protocol to UHS-II protocol and vice versa. (Note: only
storage device 420 communicates an explicit message regard               one removable storage device; i.e., card 420 or card 530, can
ing the type and/or version of the storage device protocol it            be connected to bridge 500 at a time.)
uses to the other side with which it communicates. There                    If connection analyzer 542 notifies controller 540 that
fore, controller 440 may determine the storage device proto              legacy SD card 420 is currently connected to bridge 500,
cols based on Such communication. Alternatively, controller         65   controller 540 sends a control signal 544 to switching system
440 may infer the type of storage device protocols from                  560 to connect contact"(0) to contact "(1), as also shown in
monitored communications.                                                and described in connection with FIG. 4. If connection ana
                                                      US 8,301,822 B2
                               9                                                                   10
lyzer 542 notifies controller 540 that UHS-II card 530 (or              information (“ID) of the removable storage device. Such an
SD-UHS-II card which uses UHS-II protocol) is currently                 ID would allow controller 660 to know whether the com
connected to bridge 500, controller 540 sends a control signal          mand/data is intended for the removable storage device (e.g.,
544 to switching system 560 to connect contact “(0) to                  card 630 or 640) or not.
contact “(2), to enable conversion of the UFS protocol,                    If the storage device connected to bridge 600 is a UHS-II
which is used by host PCU410, to the UHS-II protocol, which             compatible card 640 (i.e., UHS-II card or SD-UHS-II card),
is use by UHS-II card (or SD-UHS card) 530 and vice versa.              controller 660 sets switches 680 and 690 to position “(2)”
As host CPU 410 uses the UFS protocol, bridge 500, like                 because no protocol conversion is required (i.e., both host
bridge 400, is configured in a chain topology. In the case of a         CPU 610 and card 640 are genuine UHS-II devices). In posi
host CPU using the UHS-II protocol, the bridge may be              10   tion “(2), data/command originating from host CPU 610
configured in a ring topology, as demonstrated by FIG. 6.               propagate through UHS-II device 620, are received at bridge
   FIG. 6 shows a bridge 600 according to yet another                   600, and forwarded to UHS-II card 640 directly (i.e., without
example embodiment. Host CPU 610 uses the UHS-II proto                  undergoing protocol conversion), via storage device interface
col to communicate with external devices (e.g., UHS-II                  606A. If the data/command is not intended for UHS-II card
device 620, legacy SD card 630 or UHS-II card 640 (or              15   640, UHS-II card 640 forwards them, via storage device
SD-UHS-II card 640), and UHS-II Input/Output device 650)                interface 606B and contact “(2)” of switch 690, to the next
through a bus having a ring topology. (Note: only one of                device in the ring which, in this example, is UHS-II Input/
legacy SD card 630 and UHS-II card 640 is connected to                  Output device 650. If one of the devices in a ring type data
bridge 600 at a time.) Bridge 600 includes host device inter            network is removed and no measure is taken to bridge the gap
face 602 for receiving data and commands from UHS-II                    created by the removal of the device, the communication loop
device 620, storage device interface 604 for transferring the           is disconnected. Turning again to FIG. 6, a connection ana
data and command to, and receiving them back from, legacy               lyzer 662, which is similar to connection analyzer 442 of FIG.
SD card 630, storage device interface 606 for transferring the          4 (for example), monitors host device interface 602, and
data and command to, and receiving them back from UHS-II                storage device interfaces 604, 606, and 608, to detect devices
card 640, and storage device interface 608 for transferring the    25   that are connected to them and to determine the storage device
data and command to UHS-II device 650 that may be a                     protocol that each device uses. Connection analyzer 662 noti
UHS-II type embedded memory or a UHS-II type Input/                     fies controller 660 of the status of the monitored interfaces
Output device or any other device that uses the UHS-II pro              (i.e., a device is connected to interface X or not, a device
tocol.                                                                  connected to interface X is using protocol y, etc.) If con
   Bridge 600 also includes a controller 660 that functions in     30   nection analyzer 662 notifies controller 660 that neither a
a similar way as controller 440 of FIG. 4 and controller 540 of         legacy SD card is connected to storage device interface 604
FIG. 5, a bi-directional SDPC 670 for converting the UHS-II             nor a UHS-II compatible card is connected to storage device
protocol used by host CPU 610 to the legacy SD protocol used            interface 606, controller 660 sets switch 680 and switch 690
by legacy SD card 630 (and vice versa), and a switching                 to position “(3)'.
system 682 that includes a three-position switch 680 and a         35      If switches 680 and 690 are in position (1), bridge 600 is in
three-position switch 690. Switch 680 and switch 690 are                a “conversion' state. If switches 680 and 690 are in position
designed and controlled in Such a way that they are always in           (2), bridge 600 is in a “transparent state. If switches 680 and
the same position and always move together from one posi                690 are in position (3), bridge 600 is in a “bypass' state. By
tion to another position. For example, if switch 680 is, say, in        setting switches 680 AND 690 to position “(3), both storage
position "(1), switch 690 is also in position "(1), and if         40   device interfaces 604 and 606 are bypassed. That is, the
controller 660 transitions one of them (e.g., switch 680) to            bridge's ring input (i.e., host device interface 602) is inter
position “(3)' (for example), the other switch (e.g., switch            nally connected to the bridge's ring output (i.e., storage
690) also transitions to the same position.                             device interface 608), thereby closing the ring loop via bridge
   If the storage device connected to bridge 600 is a legacy SD         600. (Note: if a removable storage device; e.g., legacy SD
card such as legacy SD card 630, controller 660 sets switches      45   card 630 or UHS-II card 640, is connected to bridge 600, the
680 and 690 to position “(1), which state is shown in FIG. 6.           ring loop is closed via the UHS-II/SD converter or via UHS-II
In position "(1), data and commands originating from host               device 640, respectively.)
CPU 610 propagate through UHS-II device 620, are received                  FIG. 7 is a method for operating a bridge according to an
at bridge 600, and forwarded to bi-directional UHS-II/SD                example embodiment. Assume that a bridge, which may be
converter 670. UHS-II/SD converter 670 converts the UHS-II         50   similar to bridge 400 or 500, is permanently connected, indi
protocol to the legacy SD protocol and forwards the data/               rectly or directly, to a host CPU as the two devices are embed
command to legacy SD card 630, via storage device interface             ded in the same host device. At step 710, a connection ana
604, using the legacy SD protocol. (Note: the term “converts'           lyZer, Such as connection analyzer 542, checks whether a
is to be construed in the way explained above). Legacy SD               removable storage device (e.g., legacy SD card 420 or UHS-II
card 630 transfers data or a response to UHS-II/SD converter       55   compatible card 530) is connected to the bridge, and if such a
670 by using the legacy SD protocol, and UHS-II/SD con                  device is connected to the bridge, it detects 730 the type of the
verter 670 sends the data or the response to the next device in         storage device protocol used by the connected device. If no
the ring (i.e., UHS-II Input/Output device 650) by using the            removable storage device is connected to the bridge (shown
UHS-II protocol. Then, the data/command continues to                    as “Nat step 710), the bridge remains, or enters, an idle state
propagate through the ring by using the UHS-II protocol. If        60   and waits, at step 720, until a removable storage device is
the data/command sent by host CPU 610 is not intended for               connected to it. If a removable storage device is connected to
legacy SD card 630, the requirement to convert command/                 the bridge (shown as “Y” at step 710), the connection ana
data to/from the legacy SD protocol can be avoided by trans             lyzer identifies, at step 730, for the controller the storage
ferring the command/data to the next device in the ring (i.e.,          device protocol used by the host CPU and the storage device
UHS-II Input/Output device 650) through storage device             65   protocol used by the removable storage device. (As noted, the
interface 608 without using protocol conversion. One way to             controller may already know the protocol used by the host
enable this feature is to store in the bridge identification            CPU, in which case it does not need to “determine' the
                                                       US 8,301,822 B2
                              11                                                                       12
storage device protocol used by the host CPU.) At step 740, a            device protocol used by a host device and the storage device
controller similar to controller 540 (for example) checks                protocol used by a storage device are the same, for which the
whether the two storage device protocols are the same, and, in           bridge is communication-wise transparent; i.e., no storage
the case of the embodiment shown in FIG. 5, if the protocols             device protocol conversion is exercised. Host device 910
are not the same, controller 540 determines what type of            5    sends and receives SD data/commands to/from storage device
protocol conversion should be used. If the two storage device            920 by using UFS-configured physical layer and UFS-con
protocols are the same (shown as “Y” at step 740), controller            figured link layer (the two layers are shown at 940), and by
540 connects host CPU410 and the removable storage device                using SD-over-UFS transport layer and SD-configured appli
directly, at step 750, as demonstrated in FIG. 4 (i.e., contact          cation layer (the two layers are shown at 950). Storage device
"(2) is connected to interface 406 or to interface 408) and in      10   920 is configured, communication layer wise, in the same
FIG. 6 (i.e., communication path established by using con                way as host device 910. Therefore, bridge 830 is communi
tacts “(2)). If the two storage device protocols differ (shown           cation-wise transparent to both devices; i.e., no protocol con
as “N” at step 740), the controller uses a suitable bi-direc             version is required/used.
tional protocol converter to convert an incoming storage                    FIG. 10 schematically illustrates the conventional commu
device protocol to an outgoing storage device protocol. Data/       15   nication layers as in FIG. 8, but in FIG. 10 they are used to
command communications from the host CPU to the bridge                   transfer data and commands between a host device 1010
and data/command communications from the removable Stor                  using SCSI-over-UFS protocol and a removable storage
age device to the bridge are regarded as “incoming commu                 device 1020, via bridge 1030, that is configured as legacy SD
nication', as the data/command enter the bridge. Data/com                card. Host device 1010 uses a UFS physical layer and a UFS
mand communications from the bridge to the host CPU and                  link layer (both layers are shown at 1040), and a SCSI trans
data/command communications from the bridge to the                       port layer and a SCSI application layer (the latter two layers
removable storage device are regarded as “outgoing commu                 are shown at 1050). Legacy SD card 1020 uses an SD physical
nication', as the data/command exit the bridge.                          layer, an SD link layer, an SD transport layer and an SD
    FIG. 8 schematically illustrates four conventional commu             application layer. FIG. 10 refers to a scenario in which the
nication layers that are used to exchange data and commands         25   storage device protocol used by a host device differs from the
between a host device 810 and a removable storage device                 storage device protocol used by a storage device, for which a
820 via a bridge 830, where data and commands are trans                  storage device protocol conversion is exercised.
ferred both ways by using Small computer system interface                   FIG.11 schematically illustrates a conversion scheme used
(“SCSI) standards. FIG. 8 refers to a scenario in which the              by a bridge such as bridge 1030 of FIG. 10, for converting a
storage device protocol used by a host device and the storage       30   high-speed protocol to a legacy (slow) SD protocol and visa
device protocol used by a storage device are the same, for               verse. The bridge scheme applied by storage device protocol
which reason the bridge is communication-wise transparent;               converter (SDPC) 1100 facilitates communication of data/
i.e., no storage device protocol conversion is exercised. FIG.           commands between a host device and an SD card by using
8 is related to FIG.4, in which a UFS card oran SD-UFS card              SCSI transport and application layer. SDPC 1100, which
430 is connected to bridge 400. Briefly, “SCSI is a set of          35   shows SDPC 450 and SDPC 670 in more details, receives
standards for physically connecting, and transferring data               1110 a SCSI command that is “riding over a high speed
between, computers and peripheral devices. The SCSI stan                 protocol (e.g., UFS or UHS-II). The SCSI basic commands
dards define commands, protocols, and electrical and optical             (e.g., “Read/"Write') are translated 1130 into a correspond
interfaces. SCSI can be used to connect a wide range of                  ing SD command. The SD protocol specific commands (e.g.,
devices. For the UFS standard only a limited part of the SCSI       40   “Write Protect”, “SD Security”) are transferred from the host
protocol is used.                                                        device encapsulated inside the SCSI protocol. Such a com
   The layers, which have been defined by the UFS task force             mand shall undergo a de-capsulation process (1120). The SD
working for JEDEC, are “physical connection' layer, “link                command (i.e., either the outcome of SD/SCSI translator
commands' layer, “transport layer and “application layer.                1130 or SD/SCSI protocol encapsulator 1120) is held in reg
Host device 810 sends and receives data/commands to/from            45   isters 1140 which are common to the legacy SD Common/
storage device 820 by using UFS-configured physical layer                Status/Data registers. The legacy SD card protocol transfers
and UFS-configured link layer (the two layers are shown at               the commands to the legacy SD card through memory device
840), and by using SCSI-configured transport layer and                   interface 1150 (the SD card is not shown in FIG. 11) by using
SCSI-configured application layer (the two layers are shown              SD transport and link layer 1160 and SD physical layer 1170.
at 850). (Note” “SOUP is an abbreviation of “SCSI-over              50   Link layer signaling used for command/data flow control
UFS protocol.) Storage device 820 is configured to use the               (e.g., “Ready'7"Busy') are translated, by using link signaling
same communication layers as host device 810 uses. There                 translator 1185, from the high speed protocol link layer to the
fore, bridge 830 is communication-wise transparent to both               legacy SD protocol link layer. Any Command-Response,
devices; i.e., no protocol conversion is required/used.                  Data and signaling sent from the storage device to the host
   FIG.9 schematically illustrates the conventional commu           55   device undergo a similar process (i.e., command responses
nication layers as in FIG. 8, but now they are used to exchange          and data are loaded through the legacy SD protocol to the
SD data and SD commands between a host device 910 and a                  common set of registers 1140. Basic information is translated
removable storage device 920 via a bridge 930. The SD data               to SCSI by SD/SCSI translator 1130, and SD specific com
and SD commands are exchanged, through bridge 930,                       mands will be encapsulated within SCSI by SD/SCSI encap
between host device 910 and storage device 920 by using             60   sulator 1120. The generated SCSI command is transferred
SD-over-UFS configuration, as host device 910 and storage                outside through high-speed memory interface 1110 using the
device 920 are UFS-configured devices, and the SD data and               link layer 1180 and physical layer 1190 of the high speed
SD commands are communicated through UFS communica                       protocol. Link layer signaling will be translated by using link
tion. By “SD-over-UFS configuration” and “SD-over-UFS                    signaling translator 1185 to high speed link layer signaling).
communication' is meant that SD data and commands are               65      FIG. 12 schematically illustrates the conventional commu
encapsulated within (i.e., they are inserted as a payload of) the        nication layers as in FIG. 8, but in FIG. 12 they are used to
UFS signal. FIG. 9 refers to a scenario in which the storage             transfer data and command, via bridge 1230, between a host
                                                      US 8,301,822 B2
                              13                                                                   14
device 1210 using SD-over-UFS protocol and a removable                  is removed from bridge 1510, as shown in FIG. 16, which is
storage device 1220 such as legacy SD card. Host device 1210            described below. The networkscheme of FIG.15 saves one of
uses a UFS physical layer and a UFS link layer (both layers             the two UHS-II interfaces shown in FIG. 14 (i.e., UHS-II
are shown at 1240), and an SD transport layer and an SD                 interface 1430). However, a separate SD interface (i.e., SD
application layer (the latter two layers are shown at 1250).            interface 1440) is still required in FIG. 15 in order to make
FIG. 12 refers to a scenario in which the storage device                host device 1500 an SD backward compatible device.
protocol used by a host device differs from the storage device             FIG. 16 shows the data storage system of FIG. 15 with
protocol used by a storage device, for which a storage device           removable UHS-II card 1432 disconnected from bridge
protocol conversion is exercised.                                       1510–card 1432 is shown connected to bridge 1510 in FIG.
   FIG.13 schematically illustrates a conversion scheme used       10   15 and the consequent “bypass' state of bridge 1510. In the
by a bridge, such as bridge 1230 of FIG. 12, for converting             "bypass' state, input terminal 1520 of bridge 1510 is inter
high speed protocol to legacy (slow) SD protocol. The bridge            nally 1610 connected to output terminal 1530 of the bridge,
scheme applied by storage device protocol converter (SDPC)              thereby bypassing a storage device interface in bridge 1510
1300 facilitates communication of data/commands between a               while removable UHS-II card 1432 is removed or discon
host device and an SD card by using SD-over-UFS transport          15   nected from the storage device interface.
layer. SDPC 1300, which shows SDPC450 and SDPC 670 in                      FIG. 17 shows a bridge 1710 that is connected in a ring
more details, receives 1310 an SD command that is encapsu               topology according to an example embodiment. The ring
lated within high speed protocol (e.g., UFS or UHS-II). The             topology includes a host 1740. N embedded devices (i.e.,
SD command is de-capsulated 1320 and held in registers                  “Device 1”, which is shown at 1742, through “Device N”,
1330 and transferred 1340 to the SD card (the SD card is not            which is shown at 1744, and bridge 1710, which corresponds
shown in FIG. 13) by using SD transmission and link layer               to bridge 600 of FIG. 6. Bridge 1710 enables communication
1350 and SD physical layer 1360. Link layer signaling used              between removable legacy SD card 1720, or removable UHS
for Command/DATA flow control (e.g., “Ready'7"Busy’) are                II card 1730, and host device 1740 even though host device
translated using link signaling translator 1385 from the high           1740 has only one interface (i.e., UHS-II interface 1750).
speed protocol link layer to the legacy SD protocol link layer.    25   Host 1740 has only one storage device interface, which is
Any command-response, data and signaling sent from the                  shown at 1750, through which it communicates with each
storage device to the host device undergoes a similar process           device in the ring topology by using the UHS-II protocol. If
(i.e., command responses, data, etc. are loaded through the             removable UHS-II card 1730 is connected to bridge 1710,
legacy SD protocol to the common set of registers 1330. The             switching system 1760 connects the card (i.e., card 1730) to
information is sent out in SD format through high speed            30   the ring's loop without using SDPC 1770. If removable
memory interface 1310 by using link layer 1380 and physical             legacy SD card 1720 is connected to bridge 1710, switching
layers 1390 of the high speed protocol. Link layer signaling is         system 1760 connects the card to the ring's loop through
translated, by using link signaling translator 1385, directly to        SDPC 1770 in order to enable conversion of the UHS-II
the high speed link layer signaling).                                   protocol to the legacy SD protocol and vice versa. Switching
   FIG. 14 schematically illustrates a system that includes N      35   system 1760 is similar to switching system 682 of FIG. 6, and
embedded UHS-II cards/devices, designated as “Device 1                  SDPC 1770 is Similar to SDPC 670 of FIG. 6.
(shown at 1402), “Device 2'' (shown at 1404), ..., “Device                 FIG. 18 shows a connection analyzer 1800 according to an
N” (shown at 1406), which N devices are functionally con                embodiment. Connection analyzer 1800 includes a host pro
nected to a host device 1410 via a ring topology, and a remov           tocol detector 1810, a card protocol detector 1820 and a card
able UHS-II storage device 1432 that is connected to device        40   insertion/removal detector 1830. As explained above, if the
1410 through UHS-II interface 1430, and a legacy SD remov               host device does not know in advance the type of the storage
able card 1442 connected to host device 1410 through SD                 device protocol, the bridge may determine its type by moni
interface 1440. Host device 1410 has three types of interfaces:         toring communication with the host device. Accordingly, host
(1) a UHS-II interface 1420 for the N embedded devices                  protocol detector 1810 monitors communication signals that
“Device 1 through “Device N that are connected through             45   originate from a host device to detect the type of the storage
the ring topology, (2) a UHS-II interface 1430 for removable            device protocol that the host device uses. Connection ana
storage devices that support the UHS-II standard (e.g., UHS             lyzer 1800 may include a configurable interface 1840 to sup
II card 1432), and (3) a legacy SD interface 1440 for legacy            port one or more storage device protocols that a host device
SD card 1442. Removable UHS-II card 1432 can be function                may use. In order to detect the type of protocol that a host
ally disconnected from host 1410 without affecting operation       50   device uses, host protocol detector 1810 initially configures
of the N embedded devices that are wired via the ring topol             interface 1840 to operate using a high speed protocol of a first
ogy because of the separate communication paths. Neverthe               type (e.g., UFS). Host protocol detector 1810 determines
less, a host device that includes three separate interfaces Such        whether the initial interface configuration matches the stor
as interfaces 1420, 1430, and 1440 is problematic because of            age device protocol that the host device uses based on com
the reasons explained above (i.e., extra input/output wiring,      55   munication signals that host protocol detector 1810 receives
etc.).                                                                  from the host device through interface 1840. If the initial
   FIG. 15 schematically illustrates a partial solution to the          interface configuration does not match the protocol used by
problem posed by the system scheme shown in FIG. 14.                    the host device, host protocol detector 1810 configures inter
Removable UHS-II card 1432 is connected to the ring topol               face 1840 to operate using a high speed protocol of a second
ogy via a bridge 1510 that includes a bypass switch 1540).         60   type (e.g., UHS-II). It is assumed that one interface configu
Bridge 1510 is provided with means for detecting whether                ration matches one protocol that the host device uses. (Note:
removable UHS-II card 1432 is connected to it, and for con              other fast storage device protocols than the UFS and/or UHS
necting an input terminal 1520 of bridge 1510 to the “D0”               II may be used by a host device.) In other words, host protocol
terminal of removable UHS-II card 1432 and an output ter                detector 1810 determines the type of storage device protocol
minal 1530 of bridge 1510 to the “D1' terminal of removable        65   that a host device uses from the association between the
UHS-II card 1432, and to internally connect input terminal              operative configuration of interface 1840 and the correspond
1520 to output terminal 1530 if removable UHS-II card 1432              ing protocol. Host protocol detector 1810 may alternatively
                                                       US 8,301,822 B2
                                15                                                                      16
determine the type of the protocol that the host device uses by           fails, card protocol detector 1820 determines that a storage
using information or protocol command(s) that the host                    device is not connected to socket 1880.
device transfers to the bridge by using an upper communica                  Controllers 440, 540, and 660 can be a standard off-the
tion layer (e.g., link layer, transport layer, application layer).        shelf System-on-Chip (“SoC) device or a System-in-Pack
   Alternatively, host protocol detector 1810 may communi                 age (SiP) device or general purpose processing unit with
cate with the host device by using one physical interface (e.g.,          specialized firmware, Software or application that, when
interface 1840) that is suitable for one or more fast protocols.          executed by the controller, performs the configurations, steps,
Assume that the host device communicates a protocol com                   operations, determinations and evaluations described herein.
mand to the bridge by using a particular fast protocol. Host              Alternatively, the controller can be an Application-Specific
protocol detector 1810 receives the protocol command, infers         10   Integrated Circuit (ASIC) that implements the configura
the type of the protocol that the host device uses from the               tions, steps, operations, determination and evaluations
protocol command, and uses the corresponding storage                      described herein by using hardware.
                                                                            The articles “a” and “an are used herein to refer to one or
device protocol.                                                          to more than one (i.e., to at least one) of the grammatical
   In one implementation, card protocol detector 1820 com            15   object of the article, depending on the context. By way of
municates with storage devices (e.g., storage device 1860)                example, depending on the context, “an element can mean
that use at least the slow storage device protocol (e.g., legacy          one element or more than one element. The term “including
SD protocol). In this implementation, card protocol detector              is used herein to mean, and is used interchangeably with, the
1820 initially communicates 1860 with storage device 1870                 phrase “including but not limited to’. The terms 'or' and
by using the slow storage device protocol in order to read                “and” are used herein to mean, and are used interchangeably
configuration information from storage device 1870. The                   with, the term “and/or unless context clearly indicates oth
configuration information includes information regarding the              erwise. The term "such as is used hereinto mean, and is used
type of storage device protocol(s) that the storage device can            interchangeably, with the phrase “such as but not limited to’.
use. Based on the read configuration information, card pro                   Having thus described exemplary embodiments of the
tocol detector 1820 determines whether storage device 1870           25   invention, it will be apparent to those skilled in the art that
can use the fast storage device protocol that the host device             modifications of the disclosed embodiments will be within
uses. If storage device 1870 does not use the fast storage                the scope of the invention. Alternative embodiments may,
device protocol that the host device uses, card protocol detec            accordingly, include more modules, fewer modules and/or
tor 1820 determines that storage device 1870 is to be accessed            functionally equivalent modules. The present disclosure is
using the slow protocol. If storage device 1870 can use the fast     30   relevant to various types of mass storage devices such as
storage device protocol that the host device uses, card proto             memory cards, SD-driven flash memory cards, flash storage
col detector 1820 determines that storage device 1870 is to be            devices, USB Flash Drives (“UFDs), MultiMedia Card
accessed using the fast protocol.                                         (“MMC), Secure Digital (“SD), miniSD, and microSD, and
   In another implementation, card protocol detector 1820                 so on. Hence the scope of the claims that follow is not limited
initially communicates with storage devices (e.g., Storage           35   by the disclosure herein.
device 1860) by using the fast storage device protocol (e.g.,               What is claimed is:
UHS-II). In this implementation, card protocol detector 1820                1. A method of communication between a host device and
initially communicates 1860 with storage device 1870 by                   a storage device, the method comprising:
using the fast storage device protocol. If storage device 1870               in a bridge comprising a controller, a Switching system, a
does not respond to the communication, card protocol detec           40         bi-directional converter, a host interface configured to
tor 1820 determines that storage device 1870 is to be accessed                  interface with a host device that uses a first storage
using the slow protocol. If storage device 1870 responds to                     device protocol, and a storage device interface config
the communication, card protocol detector 1820 determines                       ured to interface with a storage device that uses the first
that storage device 1870 is to be accessed using the fast                       storage device protocol or that uses a second storage
protocol.                                                            45         device protocol different from the first storage device
   In order to initiate the process of protocol detection there is              protocol, the controller performing:
a need to determine whether a storage device e is connected to                  determining, in response to the storage device being
the bridge. In another implementation, storage device 1870 is                      operatively connected to the bridge via the storage
connected to the bridge via a socket 1880. As explained above                      device interface, whether the storage device uses the
in connection with the ring topology, if a device is removed         50            first storage device protocol or whether the storage
from the ring's loop, it is imperative that the removed device                     device uses the second storage device protocol;
be bypassed in order not to break the loop. To this end, socket                 in response to the storage device using the second stor
1880 may include a mechanical switch 1890 that is in a first                       age device protocol, configuring the Switching system
state (e.g., “ON”) when socket 1890 and storage device 1870                        such that the bi-directional converter is functionally
are physically and functionally engaged, and in a second state       55            connected between the host interface and the storage
(e.g., “OFF) when storage device 1870 is removed from                              device interface and converting communicated data
socket 1890. That being said, socket 1890 transfers a connec                       from either of the first storage device protocol and the
tion signal 1892 to card connection detector 1830, based on                        second storage device protocol to the other of the first
which card connection detector determines whether a storage                        storage device protocol and the second storage device
device is connected to socket 1890 (i.e., to the bridge). Alter      60            protocol, and
natively, card connection detector 1830 may use a polling                       in response to the storage device using the first storage
scheme to poll storage device 1870. Polling sessions would                         device protocol, configuring the Switching system to
be performed after the type of the protocol used by the storage                    bypass the bi-directional converter when connecting
device is determined. A determination that any protocol is                         the host interface to the storage device interface,
used by a storage device is also used as an indication that a        65      wherein one of the first storage device protocol and the
storage device is connected to the bridge. If an attempt to                     second storage device protocol is a secure digital (SD)
communicate with a presumably connected storage device                          over universal flash storage (UFS) protocol.
                                                      US 8,301,822 B2
                            17                                                                           18
  2. The method of claim 1, wherein the controller is prepro                   device interface and in response to detecting the discon
grammed to recall that the host device uses the first storage                  nection, to activate the bypass Switch so as to bypass the
device protocol.                                                               storage device interface.
  3. The method of claim 1, wherein the controller further                  11. The storage system bridge of claim 10, wherein the
performs determining a type of storage device protocol used         5    controller is preprogrammed to recall that the host device uses
by the host device through interaction between the controller            the first storage device protocol.
and the host device.                                                        12. The storage system bridge of claim 10, wherein the
   4. The method of claim 1, wherein the first storage device            controller is further configured to determine a type of storage
protocol facilitates faster data communication than the sec              device protocol through interaction with the host device.
ond storage device protocol.                                        10
                                                                            13. The storage system bridge of claim 10, wherein the first
   5. The method of claim 1, wherein the first storage device            storage device protocol facilitates faster data communication
protocol is one of a universal flash storage (UFS) protocol and          than the second storage device protocol.
an ultra high speed (UHS-II) protocol.
   6. The method of claim 1, wherein the second storage                     14. The storage system bridge of claim 10, wherein the first
device protocol is one of a secure digital (SD) protocol, a         15   storage device protocol is one of a universal flash storage
universal flash storage (UFS) protocol, and an ultra high                (UFS) protocol and an ultra high speed (UHS-II) protocol.
speed (UHS-II) protocol.                                                    15. The storage system bridge of claim 10, wherein the
   7. The method of claim 1, wherein the storage device is one           second storage device protocol is one of a secure digital (SD)
of secure digital (SD) card, universal flash storage (UFS)               protocol, a universal flash storage (UFS) protocol, and an
card, ultra high speed (UHS-II) card, SD-UFS card, and SD                ultra high speed (UHS-II) protocol.
UHS-II card.                                                                16. The storage system bridge of claim 10, wherein one of
   8. The method of claim 1, wherein the bridge connects to a            the first storage device protocol and the second storage device
host device and to a storage device via a data network,                  protocol is a small computer system interface (SCSI) over
wherein the data network has one of a chain topology and a               universal flash storage (UFS) protocol.
ring topology.                                                      25      17. The storage system bridge of claim 10, wherein one of
   9. The method of claim 1, wherein the bridge is connected             the first storage device protocol and the second storage device
directly to one of the host device and to a communication hub.           protocol is a secure digital over universal flash storage (SD
   10. A storage system bridge, the storage system bridge                over-UFS) protocol.
comprising:                                                                 18. The storage system bridge of claim 10, wherein the
   a host interface configured to interface with a host device      30
                                                                         storage device is one of a secure digital (SD) memory card, a
      that uses a first storage device protocol;                         universal flash storage (UFS) memory card, an ultra high
   a storage device interface configured to interface with a             speed (UHS-II) memory card, an SD-UFS card, and an SD
      storage device that uses the first storage device protocol         UHS-II card.
      or that uses a second storage device protocol different               19. The storage system bridge of claim 10, further com
      from the first storage device protocol;                       35
   a bi-directional converter configured to convert communi              prising a connection analyzer configured to determine
      cated data from either of the first storage device protocol        whether a storage device is interfaced with the storage system
      to and the second storage device protocol to the other of          bridge and configured to determine a storage device protocol
      the first storage device protocol and the second storage           type that at least one of the host device and the storage device
      device protocol;                                              40 USS.
  a controller; and                                                        20. The storage system bridge of claim 10, wherein the
  a Switching system,                                                    storage system bridge is connected directly to one of the host
  wherein, in response to the storage device being opera                 device and to a communication hub.
     tively coupled to the storage device interface, the con               21. A storage system bridge, comprising:
     troller is configured:                                         45     a host interface configured to interface with a host device
     to determine whether the storage device uses the first                   that uses a first storage device protocol;
        storage device protocol or whether the storage device              a storage device interface configured to interface with a
        uses the second storage device protocol;                              storage device that uses one of a second storage device
     in response to the storage device using the second stor                  protocol and a third storage device protocol, wherein
        age device protocol, to configure the Switching sys         50        each of the second storage device protocol and the third
        tem such that the bi-directional converter is function                storage device protocol differ from the first storage
       ally connected between the host interface and the                      device protocol;
       storage device interface and converting the commu                   a first bi-directional converter configured to convert com
       nicated data from either of the first storage device                   municated data from either of the first storage device
       protocol and the second storage device protocol to the       55        protocol and the second storage device protocol to the
       other of the first storage device protocol and the sec                 other of the first storage device protocol and the second
       ond storage device protocol, and                                       storage device protocol;
    in response to the storage device using the first storage              a second bi-directional converter configured to convert the
       device protocol; to configure the Switching system to                  communicated data from either of the first storage
       bypass the bi-directional converter when connecting          60        device protocol and the third storage device protocol to
       the host interface to the storage device interface,                    the other of the first storage device protocol and the third
  wherein the storage system bridge connects to the host                      storage device protocol;
    device and to the storage device via a bus, wherein the                a controller; and
    bus has one of a chain topology and a ring topology,                   a Switching system that includes a bypass Switch,
    wherein the Switching system includes a bypass Switch,          65     wherein, in response to the storage device being opera
    and wherein the controller is further configured to detect                tively connected to the storage device interface, the con
    a disconnection of the storage device from the storage                    troller is configured:
                                                       US 8,301,822 B2
                                19                                                                      20
       to determine whether the storage device uses the second              26. The storage system bridge of claim 25, wherein the
          storage device protocol or whether the storage device          controller is further configured to detect whether the storage
          uses the third storage device protocol;                        device is using the second storage device protocol or a third
       in response to the storage device using the second stor           storage device protocol.
          age device protocol, to configure the Switching sys               27. The storage system bridge of claim 26, further com
         tem such that the first bi-directional converter is func        prising a second bi-directional converter configured to con
          tionally connected between the host interface and the          vert the communicated data from either of the first storage
                                                                         device protocol and the third storage device protocol to the
          storage device interface and converting the commu              other of the first storage device protocol and the third storage
          nicated data from either of the first storage device      10   device protocol, wherein the controller is configured to func
          protocol to and the second storage device protocol to          tionally connect the second bi-directional converter between
          the other of the first storage device protocol and the         the host interface and the storage device interface in response
          second storage device protocol, and                            to detecting that the storage device uses the third storage
       in response to the storage device using the third storage         device protocol.
          device protocol, to configure the Switching system        15
                                                                            28. The storage system bridge of claim 25, wherein the
         such that the second bi-directional converter is func           controller is further configured to detect whether the storage
         tionally connected between the host interface and the           device is using the first storage device protocol or the second
         storage device interface and converting the commu               storage device protocol.
         nicated data from either of the first storage device               29. The storage system bridge of claim 25, wherein the first
         protocol and the third storage device protocol to the           storage device protocol facilitates faster data communication
         other of the first storage device protocol and the third        than the second storage device protocol.
         storage device protocol, and                                       30. The storage system bridge of claim 25, wherein the
     to detect a disconnection of the storage device from the            controller is further configured to determine use of the first
         storage device interface and to respond to the discon           storage device protocol by the host device through interaction
                                                                         between the controller and the host device.
         nection by activating the bypass Switch so as to bypass    25
                                                                           31. A storage system bridge, comprising:
         the storage device interface.                                     a host interface;
   22. The storage system bridge of claim 21, wherein the                  a storage device interface;
controller is preprogrammed to recall that the host device uses            a bi-directional converter configured to convert communi
the first storage device protocol without interaction with the                cated data from either of a first storage device protocol
host device.                                                        30
   23. The storage system bridge of claim 21, wherein the                     and a second storage device protocol to the other of the
controller is further configured to detect a type of storage                  first storage device protocol and the second storage
device protocol through interaction with the host device.                     device protocol, wherein one of the first storage device
   24. The storage system bridge of claim 21, further com                     protocol and the second storage device protocol is
prising a connection analyzer configured to detect whether          35     a small computer system interface (SCSI over universal
the storage device is interfaced with the storage system                      flash storage (UFS) protocol; and
bridge, and configured to detect a storage device protocol                 a controller;
type that at least one of the host device and the storage device            wherein, in response to a storage device being operatively
USS.
                                                                              coupled to the storage device interface while a host
  25. A storage system bridge, comprising:                          40
                                                                              device that uses the first storage device protocol is opera
  a host interface configured to interface with a host device                 tively coupled to the host device interface, the controller
     via a bus having a ring topology, wherein the host inter                 is configured to functionally connect the bi-directional
     face uses a first storage device protocol;                               converter between the host interface and the storage
  a storage device interface configured to interface with a                   device interface in response to detecting that the storage
     storage device via the bus having the ring topology,           45
                                                                              device uses the second storage device protocol.
     wherein the storage device interface uses the first storage            32. The storage system bridge of claim 31, wherein the
     device protocol or a second storage device protocol dif             controller is further configured to detect whether the storage
     ferent from the first storage device protocol, wherein one          device is using the first storage device protocol or the second
     of the first storage device protocol and the second stor            storage device protocol.
     age device protocol is a secure digital (SD) over univer       50
                                                                            33. The storage system bridge of claim 31, wherein the
     sal flash storage (UFS) protocol;                                   controller is further configured to detect whether the storage
  a controller; and                                                      device is using the second storage device protocol or a third
  a configurable bypass Switch,                                          storage device protocol.
  wherein the controller is configured:                                     34. The storage system bridge of claim 33, further com
     to determine whether a the storage device is operatively       55
                                                                         prising a second bi-directional converter configured to con
        connected to the storage device interface;                       vert the communicated data from either of the first storage
     in response to the storage device being operatively con             device protocol and the third storage device protocol to the
        nected to the storage device interface, to connect the           other of the first storage device protocol and the third storage
        host device interface to the storage device interface,           device protocol, wherein the controller is configured to func
         and                                                        60   tionally connect the second bi-directional converter between
       in response to the storage device not being connected to          the host interface and the storage device interface in response
          the storage device interface, to activate the config           to detecting that the storage device uses the third storage
          urable bypass Switch so as to bypass the storage               device protocol.
         device interface.
                              UNITED STATES PATENT AND TRADEMARK OFFICE
                                    CERTIFICATE OF CORRECTION
PATENT NO.                  : 8,301,822 B2                                                                                      Page 1 of 1
APPLICATIONNO.              : 12/565685
DATED                       : October 30, 2012
INVENTOR(S)                 : Yosi Pinto et al.
It is certified that error appears in the above-identified patent and that said Letters Patent is hereby corrected as shown below:
         In the Claims section, Column 17, Claim 10, Line 38, “to and the second storage device protocol to the
         other of should read-and the second storage device protocol to the other of -.
         In the Claims section, Column 17, Claim 10, Line 59, “device protocol; to configure the switching
         system to should read--device protocol, to configure the switching system to--.
         In the Claims section, Column 19, Claim 21, Line 10, “protocol to and the second storage device
         protocol to the other should read -protocol and the second storage device protocol to the other--.
         In the Claims section, Column 19, Claim 25, Line 55, “to determine whether a the storage device is
         operatively connected should read-to determine whether the storage device is operatively
         connected--.
         In the Claims section, Column 20, Claim 31, Line 35, “a small computer system interface (SCSI over
         universal flash storage should read -a small computer system interface (SCSI) over universal flash
         Storage--.