Modem with firmware upgrade feature
First Claim
1. An apparatus comprising:
- an interface adapted to couple with a communication network;
a controller coupled to the interface;
a boot program executable by the controller;
a first operating code to control the apparatus;
a first memory coupled to the controller and adapted to store the boot program and the first operating code; and
a second memory coupled to the controller, the controller operable for executing the boot program to receive a plurality of packets from a remote computer coupled to the communication network and to check the validity of each packet of the plurality of packets and to store a portion of each packet in a second memory coupled to the controller, and after receiving an upgrade command from the remote computer and after checking the validity, to replace the first operating code with a second operating code based on the portion of each packet stored in the second memory.
0 Assignments
0 Petitions
Accused Products
Abstract
Updated operating code and parameters can be reprogrammed into a modem system with no disassembly of the modem hardware. The modem system includes a memory chip in which operating code and parameters are stored. Two control programs control the reprogramming of updated operating code. One of the control programs is designed for manufacturing and testing purposes. The other control program allows remote reprogramming of updated operating code or parameters from a remote location such as a customer site. A user can thus remotely upgrade system firmware with updates, bug fixes, enhancements or other new releases of system operating code by downloading the update over a phone line to a host PC and reprogramming the memory chip of the modem over the serial port from the host PC. The user can also remotely upgrade the modem system firmware by directly programming the memory chip of the modem without the assistance of the host PC. The modem system is portable, obtaining power from a standard 9 volt battery. Therefore, various power saving features are also incorporated into the modem system.
-
Citations
21 Claims
-
1. An apparatus comprising:
-
an interface adapted to couple with a communication network;
a controller coupled to the interface;
a boot program executable by the controller;
a first operating code to control the apparatus;
a first memory coupled to the controller and adapted to store the boot program and the first operating code; and
a second memory coupled to the controller, the controller operable for executing the boot program to receive a plurality of packets from a remote computer coupled to the communication network and to check the validity of each packet of the plurality of packets and to store a portion of each packet in a second memory coupled to the controller, and after receiving an upgrade command from the remote computer and after checking the validity, to replace the first operating code with a second operating code based on the portion of each packet stored in the second memory. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method comprising:
-
coupling a modem to a communication network;
executing a boot program of the modem;
executing a first operating code for the modem stored in a first memory of the modem based on an instruction executed by the boot program;
receiving a plurality of packets via the communication network;
checking validity of each packet of the plurality of packets;
storing a portion of each packet of the plurality of packets in a second memory of the modem; and
after receiving an upgrade command via the communication network replacing the first operating code in the first memory with a second operating code based on the portion of each packet of the plurality of packets stored in the second memory. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A method comprising:
-
executing a first operating code stored in a first memory;
receiving a plurality of packets via a communication network, each packet having an address field having an address and an operating code field having a portion of program data;
checking each packet of the plurality of packets for validity;
for each packet, storing the portion of program data of the packet at an address of a second memory based on the address of the packet; and
after receiving an upgrade command via the communication network, replacing the first operating code in the first memory with a second operating code based on the program data stored in the second memory. - View Dependent Claims (19, 20, 21)
-
Specification