A peripheral component interconnect (PCI) device includes a PCI register including a base address register (BAR) configured to determine a first memory area accessed by a PCI host, an offset register configured to store an offset transmitted from the PCI host, an address translation unit (ATU) confi
A peripheral component interconnect (PCI) device includes a PCI register including a base address register (BAR) configured to determine a first memory area accessed by a PCI host, an offset register configured to store an offset transmitted from the PCI host, an address translation unit (ATU) configured to detect an operation of the PCI host writing the offset to the offset register and to change an accessed area by the PCI host to a second memory area based on the offset stored in the offset register, and a device memory including the first memory area and the second memory area, the device memory configured to store data transmitted from the PCI host and to transmit data stored therein to the PCI host.
대표청구항▼
1. A Peripheral Component Interconnect (PCI) device, comprising: a PCI register including a base address register (BAR) that determines a first memory area accessed by a PCI host;an offset register that stores an offset received from the PCI host;an address translation unit (ATU) that detects execut
1. A Peripheral Component Interconnect (PCI) device, comprising: a PCI register including a base address register (BAR) that determines a first memory area accessed by a PCI host;an offset register that stores an offset received from the PCI host;an address translation unit (ATU) that detects execution of an offset writing operation by the PCI host directed to the offset register, and in response, changes a memory area accessed by the PCI host to a second memory area based on the offset stored in the offset register; anda device memory, including the first memory area and the second memory area, that stores data received from the PCI host and transmits stored data to the PCI host. 2. The PCI device of claim 1, wherein the BAR stores a base address, the first memory area is determined based on the base address and a size of the BAR, and the second memory area is determined based on the base address, the offset, and the size of the BAR. 3. The PCI device of claim 2, wherein the first memory area occupies memory locations extending from the base address to an address derived by adding the base address and the size of the BAR, and the second memory area occupies memory locations extending from an address derived by adding the base address and the offset to an address resulting from adding the size of the BAR to the address derived by adding the base address and the offset. 4. The PCI device of claim 1, further comprising: a status register that stores changed status information for the memory area accessed by the PCI host; andan interrupt generator that receives the changed status information and transmits a change status interrupt to the PCI host in response to the changed status information. 5. The PCI device of claim 1, wherein the offset register is disposed within the PCI register, and the ATU reads the offset from the offset register disposed in the PCI register and changes the memory area accessed by the PCI host to the second memory area based on the offset read by the ATU. 6. The PCI device of claim 1, wherein the data received from the PCI host comprises the offset, and the ATU changes the memory area accessed by the PCI host to the second memory area based on the offset included in the data received from the PCI host. 7. A Peripheral Component Interconnect (PCI) device, comprising: a PCI register including a base address register (BAR) that stores a base address that determines a memory area accessed by a PCI host;at least one offset register that stores a first offset and a second offset received from the PCI host;a device memory comprising a first memory area and a second memory area; andan address translation unit (ATU) that detects execution of an offset writing operation by the PCI host that stores the first offset and the second offset to the at least one offset register,wherein during a writing operation of writing data received from the PCI host to the device memory, the ATU is configured to change the memory area accessed by the PCI host to the first memory area in response to the first offset, andchange the memory area accessed by the PCI host to the first memory area in response to the first offset, and thereafter change the memory area accessed by the PCI host to the second memory area in response to the second offset. 8. The PCI device of claim 7, wherein the first memory area is determined based on the base address, the first offset, and a size of the BAR, and the second memory area is determined based on the base address, the second offset, and the size of the BAR. 9. The PCI device of claim 8, wherein the first memory area occupies memory locations extending from an address derived by adding the base address and the first offset to an address derived by adding the size of the BAR to the address resulting from adding the base address and the first offset, and the second memory area occupies memory locations extending from an address derived by adding the base address and the second offset to an address obtained by adding the size of the BAR to the address derived by adding the base address and the second offset, and the first offset is different from the second offset. 10. The PCI device of claim 7, further comprising: a status register that stores changed status information for the memory area accessed by the PCI host; andan interrupt generator that receives the changed status information and transmits a change status interrupt to the PCI host in response to the changed status information. 11. The PCI device of claim 7, wherein the at least one offset register is disposed within the PCI register. 12. The PCI device of claim 7, wherein the data received from the PCI host comprises at least one of the first offset. 13. The PCI device of claim 7, wherein the at least one offset register is disposed in a memory area determined by the BAR, and the PCI host writes at least one of the first offset and the second offset to the at least one offset register within the memory area determined by the BAR in response to a size of the BAR. 14. A method of controlling an operation of a Peripheral Component Interconnect (PCI) system including a PCI device and a PCI host connected to each other by a PCI bus, the method comprising: while writing data from the PCI host to a memory of the PCI device, determining whether a size of the data is greater than a size of a Base Address Register (BAR) of the PCI device; andupon determining that the size of the data is greater than the size of the BAR, writing a first offset received from the PCI host to an offset register of the PCI device to change a memory area accessed by the PCI host to a first memory area, and writing a first part of the data to the first memory area, andwriting a second offset received from the PCI host to the offset register of the PCI device to change the first memory area to a second memory area, and writing a second part of the data, different from the first part of the data, to the second memory area. 15. The method of claim 14, wherein the offset register is disposed in one of a PCI controller of the PCI device, a PCI register of the PCI controller of the PCI device, and the memory of the PCI device. 16. The method of claim 14, wherein the first memory area is defined in response to a base address stored in the BAR, the first offset written in the offset register, and the size of the BAR, and the second memory area is defined in response to the base address stored in the BAR, the second offset written in the offset register, and the size of the BAR. 17. The method of claim 14, further comprising: upon writing the first offset in the offset register, updating change status information stored in a status register; andupon writing the second offset in the offset register, updating the change status information stored in the status register. 18. The method of claim 17, further comprising: generating a change status interrupt in the PCI device in response to the updating of the change status information, and transmitting the change status interrupt to the PCI host. 19. The method of claim 14, further comprising: upon determining that the size of the data is not greater than the size of the BAR, writing only the first offset to the offset register to change the memory area accessed by the PCI host to the first memory area; andwriting the data to the first memory area. 20. The method of claim 19, wherein the first memory area is defined in response to a base address written in the BAR, the first offset stored in the offset register, and the size of the BAR.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (20)
Schmisseur Mark A. ; Davis Barry, Apparatus and method for a base address register on a computer peripheral device supporting configuration and testing of address space size.
El-Batal, Mohamad; Baderdinni, Anant; Ish, Mark; Stuhlsatz, Jason M., Data storage controller and method for exposing information stored in a data storage controller to a host system.
Stark, Gavin J.; Neugebauer, Rolf, Network interface device that maps host bus writes of configuration information for virtual NIDs into a small transactional memory.
Lee, Charles C.; See, Sun-Teck; Chou, Horng-Yee; Kao, I-pieng Peter, PCI express-compatible controller and interface that provides PCI express functionality and flash memory operations to host device.
Davies, Ian Robert, Safe message transfers on PCI-Express link from RAID controller to receiver-programmable window of partner RAID controller CPU memory.
Biran, Giora; Granovsky, Ilya; Perlin, Elchanan, System and method for a credit based flow device that utilizes PCI express packets having modified headers wherein ID fields includes non-ID data.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.