Electrical computers and digital data processing systems: input/ – Input/output data processing – Peripheral configuration
Reexamination Certificate
1999-12-20
2003-10-28
Huynh, Kim (Department: 2182)
Electrical computers and digital data processing systems: input/
Input/output data processing
Peripheral configuration
C710S001000, C710S003000, C710S007000, C710S013000, C710S020000, C710S023000, C710S033000, C710S052000
Reexamination Certificate
active
06640262
ABSTRACT:
FIELD OF THE INVENTION
The invention is in the field of configuring integrated circuit devices to perform particular functions.
BACKGROUND OF THE INVENTION
In electronic systems, various system functions are typically performed by specific circuits. The specific circuits may be integrated circuit chips manufactured to perform the specific function. For example, digital signal processor (DSP) chips can be purchased to process digital signals. Various kinds of DSP chips can be purchased to fill particular needs. Some functions, however, are too complex or varied for a manufacturer to supply off-the-shelf circuits for each possible variation of the function. For example, a circuit for controlling all communication between a network and a personal computer (PC) would have to be configured for the particular PC, the particular network, and also for optional capabilities. One response to the challenge of designing integrated circuits for complex, varied and changeable applications is to produce integrated circuits that are designed for a particular type of function, yet have some programmability to make them more flexible. One example is application specific integrated circuits (ASICs). An ASIC is an integrated circuit designed to perform a particular function by defining the interconnection of a set of basic circuit building blocks drawn from a library provided by the circuit manufacturer.
ASICs include registers that may be loaded with data that affects the behavior of the circuit. ASICs are usually configured by a skilled person “manually” loading specific registers so that the circuit will perform its intended function precisely as required, for example, by particular types of hardware with which it will interact. An ASIC may have some capability to be automatically configured by circuitry that loads data into registers of the ASIC from some source location. One method of configuring an ASIC embedded in a larger system is to store the configuration data in a non-volatile storage device, such as an electrically erasable programmable read only memory (EEPROM), and retrieve it when the system is initialized. This configuration data is traditionally in some fixed format and each location represents specific information about the device. Each time the system is initialized, the configuration registers of the ASIC are loaded with the data from the EEPROM. The source location in the EEPROM is “hardwired” to the ASIC registers. Typically, read and write pulses are sent to the serial EEPROM to read out each location in turn and write the contents to a corresponding register in the ASIC. This requires the ASIC to “know” what each location in the EEPROM represents. A disadvantage of this scheme is that it is very difficult to adapt the ASIC to different applications while embedded in the same or a similar system. For example, if it is desired to load a particular set of ASIC registers that are not supported by the EEPROM it is necessary to make hardware changes to provide the required support. In practice this usually involves replacing the ASIC altogether. Also, the addition of new register loads from the EEPROM dramatically increases the number of gates, and hence the semiconductor area, in the ASIC. This limits the ability of the ASIC to be configured automatically for any unforeseen application.
SUMMARY OF THE DISCLOSURE
A method and apparatus for automatically configuring a configurable integrated circuit is described. One embodiment comprises a method for automatically loading data including configuration data to a configurable integrated circuit upon initialization of a system in which the configurable integrated circuit is embedded. The method of one embodiment comprises storing a plurality of commands and a plurality of data elements in a non-volatile memory of the system. The method further comprises reading contents of an initial address in the non-volatile memory. If the initial address contains a command, depending upon a type of the command, the method comprises writing contents of a next address in the non-volatile memory to a register space of the configurable integrated circuit, to a configuration space of the configurable integrated circuit, or to a command space of the configurable integrated circuit.
In one embodiment, a network interface card in a network device, such as a personal computer (PC), is configured by automatically writing data in input/output (I/O) registers, configuration registers, and command registers each time the network device is initialized. In one embodiment, a programmable memory device, such as an electrically erasable programmable read only memory (EEPROM), is loaded with commands and data. Commands and register addresses are read from the EEPROM by a state machine when the network device is initialized. Data is also read from the EEPROM and written to registers of the network device as specified by the commands. In this way, the network interface card can be reconfigured merely by writing additional or different commands, register addresses and data into the EEPROM.
REFERENCES:
patent: 4420821 (1983-12-01), Hoffman
patent: 5812867 (1998-09-01), Basset
patent: 6064593 (2000-05-01), Matsubara et al.
patent: 6215689 (2001-04-01), Chhor et al.
Davis Eric R.
Henderson Nathaniel
Herrera Alexander
Uppunda Krishna
Wang Chi-Lie
3Com Corporation
Farooq Mohammad O.
Huynh Kim
McDonnell & Boehnen Hulbert & Berghoff
LandOfFree
Method and apparatus for automatically configuring a... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and apparatus for automatically configuring a..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for automatically configuring a... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3114249