System and method for preloading a bus controller with command schedule
First Claim
1. A system for controlling operation of a network device via a network bus independent of operations of a host computer comprising:
- a host computer;
at least one network device;
a network bus, wherein said at least one network device is in electrical communication with said network bus; and
a bus controller disposed in electrical communication with both the network bus and said host computer for sending instructions to the at least one network device, wherein said bus controller comprises a memory device for storing a command schedule preloaded by the host computer comprising a series of instructions, wherein the series of instructions include at least one command to be executed by the at least one network device, wherein said bus controller is configured to execute the series of instructions including at least one of the instructions stored in the memory device in a manner independent of the operations of said host computer so as to control communications conducted with the at least one network device via the network bus, whereby said bus controller sends the at least one instruction to the network device and the network device executes the at least one command located in the at least one instruction independent of the operations of the host computer,wherein at least a first instruction of the series of instructions has at least one variable data field associated with variable data,wherein the memory device of said bus controller includes at least one register that is configured to store the variable data at a predefined address, wherein the bus controller including the memory device is configured to permit the host computer to change the variable data at the predefined address prior to execution of the first instruction in order to alter the variable data and therefore alter the first instruction, and wherein the at least one variable data field is configured to identify the predefined address such that when said bus controller executes the first instruction including the at least one variable data field said bus controller will retrieve the variable data from the memory device at the predefined address identified by the at least one variable data field,wherein said host computer is configured to periodically evaluate communications conducted via the network bus, and wherein said host computer is configured to alter the variable data associated with the at least one variable data field of the at least first instruction with a different value based upon the communications evaluated, and wherein the host computer is configured to store the different value in a register in the memory device and to reinsert the different value as a command or argument into the command schedule, and wherein the host computer is configured to alter the variable data during operation of the command schedule.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method is provided for communicating with at least one network device via a network bus comprising a bus controller and a host computer. The bus controller executes a series of instructions, which can be transferred to the bus controller from the host computer. The instructions are executed in a manner independent of the host computer so as to reduce the workload of the host computer. Since the bus controller can execute the series of instructions without further intervention of the host computer, the host computer can perform other operations concurrent with the execution of the series of instructions by the bus controller. In one embodiment, at least one of the instructions has an associated data field that is variable and can be altered by the host computer, such that the host computer can alter the instruction used by the bus controller.
57 Citations
17 Claims
-
1. A system for controlling operation of a network device via a network bus independent of operations of a host computer comprising:
-
a host computer; at least one network device; a network bus, wherein said at least one network device is in electrical communication with said network bus; and a bus controller disposed in electrical communication with both the network bus and said host computer for sending instructions to the at least one network device, wherein said bus controller comprises a memory device for storing a command schedule preloaded by the host computer comprising a series of instructions, wherein the series of instructions include at least one command to be executed by the at least one network device, wherein said bus controller is configured to execute the series of instructions including at least one of the instructions stored in the memory device in a manner independent of the operations of said host computer so as to control communications conducted with the at least one network device via the network bus, whereby said bus controller sends the at least one instruction to the network device and the network device executes the at least one command located in the at least one instruction independent of the operations of the host computer, wherein at least a first instruction of the series of instructions has at least one variable data field associated with variable data, wherein the memory device of said bus controller includes at least one register that is configured to store the variable data at a predefined address, wherein the bus controller including the memory device is configured to permit the host computer to change the variable data at the predefined address prior to execution of the first instruction in order to alter the variable data and therefore alter the first instruction, and wherein the at least one variable data field is configured to identify the predefined address such that when said bus controller executes the first instruction including the at least one variable data field said bus controller will retrieve the variable data from the memory device at the predefined address identified by the at least one variable data field, wherein said host computer is configured to periodically evaluate communications conducted via the network bus, and wherein said host computer is configured to alter the variable data associated with the at least one variable data field of the at least first instruction with a different value based upon the communications evaluated, and wherein the host computer is configured to store the different value in a register in the memory device and to reinsert the different value as a command or argument into the command schedule, and wherein the host computer is configured to alter the variable data during operation of the command schedule. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for controlling operation of at least one network device via a network bus independent of operations of a host computer comprising:
-
transferring a command schedule comprising a series of instructions from the host computer to a bus controller such that the bus controller is preloaded with the command schedule, wherein the series of instructions include at least one command to be executed by the at least one network device; executing by the bus controller the series of instructions including at least one instruction of the series of instructions in a manner independent of the operations of the host computer so as to control communications conducted between a bus controller and the at least one network device via the network bus, wherein said executing transmits the at least one instruction to the at least one network device and the at least one network device executes the at least one command located in the at least one instruction independent of the operations of the host computer thereby permitting the host computer to perform the operations concurrent with the execution of the at least one instruction by the bus controller, wherein at least a first instruction of the series of instructions has at least one variable data field associated with variable data; and altering the variable data by the host computer to thereby alter execution of the first instruction, wherein the variable data is stored at a predefined address, wherein the at least one variable data field identifies the predefined address, wherein altering the variable data comprises permitting the host computer to change the variable data at the predefined address prior to execution of the first instruction in order to alter the variable data and therefore alter the first instruction; and periodically evaluating communications conducted via the network bus by the host computer as the series of instructions is executed, wherein said altering step comprises altering the variable data associated with the at least one variable data field of the at least first instruction with a different value based upon the communications evaluated, wherein the different value is stored in a register in a memory device and reinserted as a command or argument into the command schedule, and wherein the host computer is configured to alter the variable data during operation of the command schedule, and wherein said executing includes executing the first instruction including the at least one variable data field and retrieving the variable data based upon the predefined address identified by the at least one variable data field. - View Dependent Claims (9, 10, 11)
-
-
12. A bus controller for controlling operation of a network device via a network bus independent of operations of a host computer comprising:
-
a transmitter configured to transmit instructions onto the network bus; a receiver configured to receive data from the network bus; and a memory device configured to store a command schedule preloaded by the host computer comprising a series of instructions, wherein the series of instructions include at least one command to be executed by the network device, wherein the bus controller is configured to execute the series of instructions and to send at least one of the instructions in said memory device to the network device over the network bus in a manner independent of a host computer so that the network device executes the at least one command in the one of the instructions independent of the operations of the host computer, wherein said memory device stores at least a first instruction of the series of instructions having at least one variable data field associated with variable data, and wherein the variable data is configured to be altered by the host computer to thereby alter the first instruction executed by the bus controller, wherein said memory device is configured to store the variable data at a predefined address, wherein the bus controller including the memory device is configured to permit the host computer to change the variable data at the predefined address prior to execution of the first instruction in order to alter the variable data and therefore alter the first instruction, wherein the at least one variable data field is configured to identify the predefined address such that when the bus controller executes the first instruction including the at least one variable data field said bus controller is configured to retrieve the variable data from the memory device at the predefined address, wherein the memory is configured to receive different values for the variable data associated with the at least one variable data field of the at least first instruction from the host computer during operation of the command schedule based upon an periodic evaluation by the host computer of communications conducted via the network bus, wherein the different values are configured to be stored in registers in the memory device and the different values are configured to be reinserted as a command or argument into the command schedule. - View Dependent Claims (13, 14, 15, 16, 17)
-
Specification