Browse Prior Art Database

Server Controlled Direct Memory Access for Microcode Loading with Early Error Detection

IP.com Disclosure Number: IPCOM000124378D
Original Publication Date: 2005-Apr-18
Included in the Prior Art Database: 2005-Apr-18
Document File: 2 page(s) / 28K

Publishing Venue

IBM

Abstract

A method of adapter driven server controlled direct memory access for microcode loading of an adapter with early error detection.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 52% of the total text.

Page 1 of 2

Server Controlled Direct Memory Access for Microcode Loading with Early Error Detection

Disclosed is a method to have a server to control an adapter's hardware so that the adapter is largely reasonable in move its microcode from server memory to its own memory. The adapter hardware is capable of reading data from the server's memory. The adapter's Direct Memory Access (DMA) hardware will be used in the code loading process. By using the features of the adapter's hardware the computing power is now placed on the previously idle adapter freeing much of the server's overhead during a code load process. This takes advantage of Direct Memory Access completion status and error status, which allows errors to be detected faster.

As the number of adapters attached to a server increases and the number of server processors decrease, it makes the servers job in loading microcode to attached adapters more difficult. As the need for fast computing time increase it is not practical or effective to consume instruction cycles of the server's computing capability in the loading of microcode to adapter. Furthermore, if there is an error in the process early detection is essential for the timely recovery of such errors.

Current solutions are to have the server write the data to the adapter in smaller blocks to allow the server's processor time to do other things during code load process. When microcode is loaded on multiple adapters it causes the server's processors to be heavily stressed in the processing of this request. This process does not effectively allow the server to complete other tasks in a timely manner. This problem is also compounded as the number of adapters increases and the number of server processors decreases. Even though decreasing the size of data being transferred between servers and adapter helps in a Multiprocessor environment, it does not help in a single process server environment. In previous methods a PCI address region has to be mapped so that server can write the data to the adapter leaving the adapter's memory vulnerable to corrupti...