Patents by Inventor Dejan Vucinic

Dejan Vucinic has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 10430329
    Abstract: A device having a controller configured to interface with a host, a storage class memory configured to interface with the controller and a flash memory configured to interface with the controller, wherein both the storage class memory and the flash memory are configured to store data, and wherein the controller is configured to separate the data according to latency critical data and non-latency critical data.
    Type: Grant
    Filed: June 23, 2017
    Date of Patent: October 1, 2019
    Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventors: Chao Sun, Adam Manzanares, Minghai Qin, Dejan Vucinic, Frank R. Chu
  • Patent number: 10387303
    Abstract: A memory system (e.g. a solid state drive) includes one or more non-volatile memory die, a controller in communication with the memory die and a compute engine inside the memory system that is near the location of the data and can be used to perform common data manipulation operations.
    Type: Grant
    Filed: August 9, 2017
    Date of Patent: August 20, 2019
    Assignee: Western Digital Technologies, Inc.
    Inventors: Pankaj Mehra, Vidyabhushan Mohan, Seung-Hwan Song, Dejan Vucinic, Chao Sun, Minghai Qin, Arup De
  • Publication number: 20190205062
    Abstract: A method is disclosed describing receiving a command to perform one of a write operation and a read operation for a memory arrangement, creating a number of hard streams to accept data, wherein the number of hard streams is less than or equal to a total number of streams that the memory arrangement may create, mapping data to the hard streams based upon a heat designation of the data, transferring data to the hard streams, the data transferred to the hard streams categorized based upon a heat value of the data and performing the one of the write operation and the read operation for the memory arrangement.
    Type: Application
    Filed: January 4, 2018
    Publication date: July 4, 2019
    Inventors: Chao SUN, Xinde HU, Minghai QIN, Dejan VUCINIC
  • Patent number: 10243881
    Abstract: Embodiments described herein generally relate to the use of three-dimensional solid state memory structures, both volatile and non-volatile, utilizing a Network-on-Chip routing protocol which provide for the access of memory storage via a router. As such, data may be sent to and/or from memory storage as data packets on the chip. The Network-on-Chip routing protocol may be utilized to interconnect unlimited numbers of three-dimensional memory cell matrices, spread on a die, or multiple dies, thus allowing for reduced latencies among matrices, selective power control, unlimited memory density growth without major latency penalties, and reduced parasitic capacitance and resistance. Other benefits include a reduction in total density as compared to two-dimensional solid state memory structures utilizing a Network-on-Chip routing protocol, improved signal integrity, larger die areas, improved bandwidths and higher frequencies of operation.
    Type: Grant
    Filed: October 27, 2015
    Date of Patent: March 26, 2019
    Assignee: Western Digital Technologies, Inc.
    Inventors: Zvonimir Z. Bandic, Luis Cargnini, Kurt Allan Rubin, Dejan Vucinic
  • Publication number: 20190073259
    Abstract: Disclosed include a device and a method for storing a neural network. The device includes a plurality of memory cells configured to store weights of the neural network. The plurality of memory cells may include one or more faulty cells. The device further includes a processor coupled to the plurality of memory cells. The processor is configured to construct the neural network based on a structure of the neural network and a subset of the weights stored by the plurality of memory cells. The subset of the weights may exclude another subset of the weights stored by one or more memory cells comprising the one or more faulty cells.
    Type: Application
    Filed: December 12, 2017
    Publication date: March 7, 2019
    Applicant: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventors: Minghai Qin, Dejan Vucinic, Chao Sun
  • Publication number: 20180373626
    Abstract: A device having a controller configured to interface with a host, a storage class memory configured to interface with the controller and a flash memory configured to interface with the controller, wherein both the storage class memory and the flash memory are configured to store data, and wherein the controller is configured to separate the data according to latency critical data and non-latency critical data.
    Type: Application
    Filed: June 23, 2017
    Publication date: December 27, 2018
    Inventors: Chao SUN, Adam MANZANARES, Minghai QIN, Dejan VUCINIC, Frank R. CHU
  • Patent number: 10152435
    Abstract: A system includes a bus, at least one processor coupled to the bus, and a storage device coupled to the bus. The storage device includes storage class memory, a buffer; and a controller. The controller is configured to receive an instruction to provide data to the bus. Responsive to receiving the instruction to provide data to the bus, the controller is configured to retrieve data from the storage class memory, update the buffer to represent the data retrieved from the storage class memory, and output, at the bus, an indication that data responsive to the instruction to provide data to the bus is available at the buffer. The at least one processor is configured to refrain from modifying local data corresponding to the instruction to provide data to the bus after the controller receives the instruction to provide data to the bus and before the controller outputs the indication.
    Type: Grant
    Filed: February 2, 2017
    Date of Patent: December 11, 2018
    Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventors: Zvonimir Z. Bandic, Luis Vitorio Cargnini, Dejan Vucinic, Qingbo Wang
  • Publication number: 20180351577
    Abstract: Embodiments of a data storage device include a non-volatile memory and a controller coupled to the non-volatile memory. The controller includes a decoder configured to decode a non-binary code, such as a low-density parity-check (LDPC) code. The decoder decodes the code by generating variable-node-to-check-node message vectors and by generating check-node-to-variable-node message vectors. When generating variable-node-to-check-node message vectors, the decoder considering a first number and then a second greater number of components of the variable-node-to-check-node message vectors. Embodiments of a method of decoding non-binary codes, such as non-binary LDPC codes, include generating variable node message vectors and check node message vectors in logarithm form. The check node message vectors are generated at a first complexity less than a full complexity of considering all components of the variable node message vectors and generated at a second complexity greater than the first complexity.
    Type: Application
    Filed: May 30, 2017
    Publication date: December 6, 2018
    Inventors: Minghai QIN, Zvonimir Z. BANDIC, Dejan VUCINIC
  • Publication number: 20180329815
    Abstract: A storage system is provided comprising a controller and a memory comprising a plurality of tiles of memory organized in a plurality of tile groups, wherein a given tile group is busy when any tile in the given tile group is busy. The controller is configured to: inform the host of the busy status of the plurality of tile groups; receive a plurality of commands from the host, wherein each command is provided with a different tile group identifier of a tile group that is not busy; and execute the plurality of commands, wherein because each command comprises a different tile group identifier of a tile group that is not busy, the plurality of commands are executed in parallel.
    Type: Application
    Filed: May 9, 2017
    Publication date: November 15, 2018
    Applicant: Western Digital Technologies, Inc.
    Inventors: Seung-hwan Song, Won Ho Choi, Chao Sun, Dejan Vucinic
  • Patent number: 10049076
    Abstract: The present disclosure relates to methods and systems for implementing a high-speed serial bus with inhomogeneous lane bundles and encodings. A system for transmitting information can include a bus with a plurality of lanes and a host in communication with a target. The host can run an application that writes data to and reads data from storage. The host can assign a first plurality of lanes and a first encoding to a first bundle and assign a second plurality of lanes and a second encoding to a second bundle. The host can also evaluate a bandwidth requirement for the read and write instructions and evaluate a bus performance. The host can also regroup the first bundle or the second bundle based on bandwidth requirements and bus performance and can assign a third plurality of lanes and a third encoding to the at least one of the first bundle and the second bundle.
    Type: Grant
    Filed: April 4, 2016
    Date of Patent: August 14, 2018
    Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventors: Dejan Vucinic, Zvonimir Z. Bandic
  • Publication number: 20180181465
    Abstract: The present disclosure generally relate to a device and method for ensuring error-free memory. Synchronized read and write flags generated by a memory portion are used to make a memory controller of a host portion free from error correction, read/write disturbance, wear leveling and any systematic read/write issues that may occur.
    Type: Application
    Filed: December 22, 2016
    Publication date: June 28, 2018
    Inventors: Won Ho CHOI, Jay KUMAR, Kiran Kumar GUNNAM, Dejan VUCINIC, Zvonimir Z. BANDIC
  • Publication number: 20180173460
    Abstract: The present disclosure generally relates to a flash storage system, and more particularly to a scheduler in the flash storage system. The flash storage system includes a device queue, a scheduler coupled to the device queue, and a plurality of dies. In one embodiment, the scheduler pushes commands from the device queue into one or more dies of the plurality of dies for processing in read command phase and write command phase. By separately pushing read commands and write commands into dies for processing, latency is decreased and TOPS is increased.
    Type: Application
    Filed: December 15, 2016
    Publication date: June 21, 2018
    Inventors: Zvonimir Z. BANDIC, Minghai QIN, Chao SUN, Dejan VUCINIC
  • Publication number: 20180129440
    Abstract: In general, a controller may perform a self-virtualization technique. The storage device may include storage access comprising multiple cells, and a controller. The controller may determine a maximum amount of storage access for a virtual machine workload when each cell is configured in a first level mode having a maximum allowable number of bits per cell. The controller may configure each cell to be in a second level mode having a number of bits per cell less than the maximum. The controller may determine a total number of bits in use in each cell and compare this total to a threshold number of bits in use in each cell. Based on the comparison, the controller may reconfigure one or more cells to be in a third level mode having a number of bits per cell greater than the number for the second level mode.
    Type: Application
    Filed: November 9, 2016
    Publication date: May 10, 2018
    Inventors: Zvonimir Z. Bandic, Seung-Hwan Song, Chao Sun, Minghai Qin, Dejan Vucinic
  • Patent number: 9912352
    Abstract: Technology is described herein for encoding and decoding numbers. In one aspect, floating point numbers are represented as binary strings. The binary strings may be encoded in a manner such that if one bit flips, the average and maximum distortion in the number that is represented by the binary string is relatively small. In one aspect, 2^n binary strings are ordered across an interval [a, b) in accordance with their Hamming weights. Numbers in the interval may be uniformly quantized into one of 2^n sub-intervals. For example, floating point numbers in the interval [a, b) may be uniformly quantized into 2^n sub-intervals. These 2^n sub-intervals may be mapped to the 2^n binary strings. Thus, the number may be assigned to one of the 2^n binary strings. Doing so may reduce the distortion in the number in the event that there is a bit flip in the assigned binary string.
    Type: Grant
    Filed: June 6, 2017
    Date of Patent: March 6, 2018
    Assignee: Western Digital Technologies, Inc.
    Inventors: Minghai Qin, Chao Sun, Dejan Vucinic
  • Publication number: 20180052766
    Abstract: A memory system (e.g. a solid state drive) includes one or more non-volatile memory die, a controller in communication with the memory die and a compute engine inside the memory system that is near the location of the data and can be used to perform common data manipulation operations.
    Type: Application
    Filed: August 9, 2017
    Publication date: February 22, 2018
    Applicant: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventors: Pankaj Mehra, Vidyabhushan Mohan, Seung-Hwan Song, Dejan Vucinic, Chao Sun, Minghai Qin, Arup De
  • Publication number: 20170364459
    Abstract: A system includes a bus, at least one processor coupled to the bus, and a storage device coupled to the bus. The storage device includes storage class memory, a buffer; and a controller. The controller is configured to receive an instruction to provide data to the bus. Responsive to receiving the instruction to provide data to the bus, the controller is configured to retrieve data from the storage class memory, update the buffer to represent the data retrieved from the storage class memory, and output, at the bus, an indication that data responsive to the instruction to provide data to the bus is available at the buffer. The at least one processor is configured to refrain from modifying local data corresponding to the instruction to provide data to the bus after the controller receives the instruction to provide data to the bus and before the controller outputs the indication.
    Type: Application
    Filed: February 2, 2017
    Publication date: December 21, 2017
    Inventors: Zvonimir Z. Bandic, Luis Vitorio Cargnini, Dejan Vucinic, Qingbo Wang
  • Patent number: 9778859
    Abstract: The present disclosure relates to methods and systems for performing operations in a communications protocol. An example method can include submitting, from a device, a request for a queue entry representing a command from a host comprising a request for data stored at a device memory location; receiving the command from the host; and executing the command. An example method can also include selecting a bit string representing whether a requested data stream has been received, and storing the bit string into a memory buffer portion to mark the buffer portion. The method can include receiving, into the memory buffer, the stream. The method can include retrieving contents of the buffer portion, and determining whether the contents contain the bit string. If so, the method can include determining that portions of the stream have not been received. Otherwise, the method can include determining that the stream has been received.
    Type: Grant
    Filed: February 25, 2015
    Date of Patent: October 3, 2017
    Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventors: Dejan Vucinic, Zvonimir Z. Bandic, Cyril Guyot, Robert Mateescu, Qingbo Wang
  • Patent number: 9754682
    Abstract: A method and apparatus are provided for implementing enhanced performance with read before write to phase-change-memory. Each write to PCM is preceded by a read and a calculation to discover a location of any bad bits. The write data is converted to a format that can be corrected for a given number of previously undiscovered bit errors, and the writes are unverified.
    Type: Grant
    Filed: November 19, 2013
    Date of Patent: September 5, 2017
    Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventors: Robert Eugeniu Mateescu, Dejan Vucinic, Cyril Guyot
  • Publication number: 20170242821
    Abstract: A method and system for performing operations in a canary-based communication protocol; specifically, an acknowledgment-less scheme to reduce completion latency and increase effective bandwidth utilization on a computer expansion bus is disclosed. In one embodiment, a host selects a canary to represent whether a data stream of unknown content has been received. The host sends the canary to the target over a communication protocol and then marks a portion of a memory buffer with the same canary. Since the data may be unknown, the canary chosen could be the same value as the data. As such, when processing a request and transmitting data back to the host, the target can do real-time detection to determine whether a canary collision will occur. If a collision does occur, the target can remedy the collision without the need to time out and retry the operation.
    Type: Application
    Filed: February 22, 2016
    Publication date: August 24, 2017
    Inventors: Martin LUEKER-BODEN, Dejan VUCINIC
  • Publication number: 20170139849
    Abstract: A method and system for accessing a driverless storage device via a byte-addressable protocol. Properly leveraging real-time queue polling between a CPU and Non-Volatile Memory (“NVM”) requires significant, complex, customized software and elaborate device drivers that consume operating systems. The present system maximizes existing host operating systems and memory management hardware and makes the NVM appear as simple memory to a CPU, reducing submission and completion latency and increasing effective bandwidth utilization. In one embodiment, a fast serial protocol translates storage in a target into a byte-addressable memory aperture. The fast serial protocol exposes byte-addressable memory aperture to a memory address range in a host. The host, in communication with a controller, sends a single request for data and receives, from the controller in communication with the storage medium, the data.
    Type: Application
    Filed: November 17, 2015
    Publication date: May 18, 2017
    Inventors: Zvonimir Z. BANDIC, Martin LUEKER-BODEN, Dejan VUCINIC, Qingbo WANG