Patent ID: 6529945
Filing Date: 2003-03-04
Classification: H04L

Abstract:
A method for transferring data between a first and a second system comprising the steps of:transferring and storing data from the first system to a data buffer memory, allowing the data transferred from the first system to the data buffer memory to be converted and read by the second system, transferring and storing data from the second system to the data buffer memory, allowing the data transferred from the second system to the data buffer memory to be converted and read by the first system, wherein the transfer and storage of data from the first and second systems includes multiplexing and managing transfer and storage of the data into the data buffer memory, said multiplexing and managing comprising dividing usage of the data buffer memory by: coupling a first communication system to the first system and coupling a second communication system to the second system, wherein the second communication system includes a transmit enqueue, a descriptor processor, a first-in first-out buffer, a protocol engine, and a status processor, dividing the data buffer memory into a frame buffer block, a transmit and receive queue block, a descriptors block, and a status block, using the frame buffer block to hold control blocks for the first communication system, using the transmit and receive queue block to hold transmit control blocks, using the descriptors block to hold descriptors from the second communication system, and using the status block to hold status data, and wherein said transferring and storing data from the first system to the data buffer memory further includes: sending a data frame from the one of the two different systems to the one communication system, placing the data frame into the frame buffer block, updating the transmit control blocks in the transmit queue regarding the data frame transferred from the first communication system to the frame buffer block, reading in the updated transmit control blocks from the transmit queue, convert the updated control blocks to a descriptor format by providing descriptor format information for translating and converting between the first communication system and the second communication system, storing the descriptor format information into the descriptors block, writing to the transmit enqueue to inform the second communication system of the data frame in the frame buffer block to be converted, using the descriptor processor to fetch the descriptor format information for the data frame from the descriptors block, using the descriptor processor for advising the first-in first-out buffer that the data frame is ready to be transferred and converted, for initiating transfer and storing of the data frame from the frame buffer block, and for using the descriptor format information in the descriptors block to translate and store the data frame converted into a data format for the second communication system into the first-in first-out buffer, sending the converted data frame from the first-in first out buffer to an interface for the second communication system and then to the another of the two different systems, sending and updating a transfer status from the protocol engine to the status processor, posting and updating the status data with the transfer status from the status processor to the status block, analyzing the transfer status in the status block, freeing up the control block for the first communication system within the frame buffer block, updating an end pointer within the frame buffer block for the first communication system when the transfer status is recognized as a transfer complete status, and posting an interrupt if an unexpected event occurs during transfer and conversion of the data frame.