Semiconductor device
AssigneeKioxia Corporation
InventorAkihisa Fujimoto
Life of this patent
Estimating the term…
Abstract
According to one embodiment, a semiconductor device includes a device. The device includes a decoder, a generation circuit, a register, and a modifier. The decoder analyzes a command of a received packet. The generation circuit generates a unique device number in accordance with information in the packet. The register holds the generated unique device number. The modifier updates and outputs the packet. When a packet issued by a host is a command packet, among broadcast packets which return to the host through one or more devices, for determining the unique device number, the command packet includes parameters of an initial value and final value of device number.
Claims14
A semiconductor device comprising a device, the device including:
- a decoder which analyzes a command of a received packet to determine processing specified by the packet;
- a generation circuit which generates a unique device number in accordance with information in the packet;
- a register which holds the generated unique device number;
- and
- a modifier which updates and outputs the packet, wherein
- when a packet issued by a host is a command packet, among broadcast packets which return to the host through one or more devices, for determining the unique device number, the command packet includes parameters of an initial value and final value of device number,
- the device determines, based on the final value, whether the device has first received the command packet from the host for determining the unique device number,
- the device,
- when the device determines that the device has first received the command packet from the host for determining the unique device number,
- determines device number in accordance with the initial value of the received command packet, sets the determined device number to the register, updates the initial value and the final value in the command packet to the determined device number, and transmits the command packet to a next device or the host, wherein if the initial value is a predetermined value, the device number of the device is arbitrarily determined by the device, otherwise the device number of the device is determined by the host,
- when the device determines that the device has not first received the command packet from the host for determining the unique device number,
- calculates device number different from determined device number of another device by incrementing the final value in the received command packet, set the calculated device number to the register, updates the final value to the calculated device number without updating the initial value in the command packet, and transmits the command packet to a next device or the host, and
- the updated initial value and the updated final value are set to the same fields as those of the initial value and the final value before updating.
A semiconductor device comprising a device, the device including:
- a decoder which analyzes a command of a received packet to determine processing specified by the packet;
- a generation circuit which generates a unique device number in accordance with information in the packet;
- a register which holds the generated unique device number;
- and
- a modifier that updates and outputs the packet, wherein
- when a packet issued by a host is a command packet, among broadcast packets which return to the host through one or more devices, for determining the unique device number, the command packet includes parameters of an initial value of device number and the number of devices,
- the device,
- when the device determines that the device has first received the command packet from the host for determining the unique device number,
- determines device number in accordance with the initial value of the received command packet, sets the determined device number to the register, updates the initial value and the number of devices in the command packet to the determined device number and “1”, respectively, and transmits the command packet to a next device or the host, wherein if the initial value is a predetermined value, the device number of the device is arbitrarily determined by the device, otherwise the device number of the device is determined by the host,
- when the device determines that the device has not first received the command packet from the host for determining the unique device number,
- calculates device number different from determined device number of another device by incrementing the number of devices in the received command packet, set the calculated device number to the register, updates the number of devices to incremented value without updating the initial value in the command packet, and transmits the command packet to a next device or the host, and
- the updated initial value and the updated number of devices are set to the same fields as those of the initial value and the final value before updating.
A host apparatus configured to connect to a plurality of devices, wherein the host apparatus
- issues a first packet in which an initial value and a final value of a device number are set to predetermined values to a first device,
- receives a final packet in which the initial value and the final value are updated through all the devices from a final device, and
- recognizes a number of the connected devices and the device numbers allocated to the devices from the updated initial value and final value in the final packet, wherein
- if the host apparatus sets a predetermined value as the initial value, the device number of the first device is arbitrarily determined by the first device, otherwise the device number of the first device is determined by the host apparatus, and
- the updated initial value and the updated final value are set to the same fields as those of the initial value and the final value before updating.
A host apparatus configured to connect to a plurality of devices, wherein the host apparatus
- issues a first packet in which an initial value of a device number and the number of the devices are set to predetermined values to a first device,
- receives a final packet in which the initial value and the number of the devices are updated through all the devices from a final device,
- recognizes the updated initial value in the final packet as a device number of the first device, and
- calculates the device numbers of the plurality of devices based on the updated initial value and the number of devices in the final packet, wherein
- if the host apparatus sets a predetermined value as the initial value, the device number of the first device is arbitrarily determined by the first device, otherwise the device number of the first device is determined by the host apparatus, and
- the updated initial value and the updated number of devices are set to the same fields as those of the initial value and the number of devices before updating.
An electric device comprising:
- a controller;
- and
- a device controlled by the controller, the controller configured to:
- receive a command packet, among broadcast packets which return to a host through at least one or more devices, the command packet being issued from the host, being for determining a unique device number, and including parameters of an initial value and a final value of a device number;
- determine, based on the final value in the command packet, whether the device is a first device that has received the command packet for determining the unique device number;
- when the device detects that the device is the first device that has received the command packet for determining the unique device number,
- determine the unique device number in accordance with the initial value of the received command packet;
- set the determined unique device number;
- update the initial value and the final value of the device number in the command packet to the determined unique device number and “1”, respectively;
- and
- transmit the command packet to a next device or the host, wherein when the initial value is a predetermined value, the unique device number of the device is arbitrarily determined by the device, and when the initial value is not a predetermined value, the unique device number of the device is determined by the host;
- and
- when the device detects that the device is not the first device that has received the command packet for determining the unique device number,
- calculate a unique device number different from another device number by incrementing the final value of the device number in the received command packet;
- set the calculated unique device number;
- update the final value of the device number to the incremented final value without updating the initial value in the command packet;
- and
- transmit the command packet to a next device or the host,
- wherein the updated initial value and the updated final value of the device number are set to the same fields as those of the initial value and the final value of the device number in the packet command before updating.
Dependencies are inferred from the claim text.