This non-provisional application claims priority under 35 U.S.C. § 119(a) to Patent Application No. 201911269473.0 filed in China, P.R.C. on Dec. 11, 2019, the entire contents of which are hereby incorporated by reference.
The disclosure describes a chip, especially a chip having a memory.
A chip is an integrated circuit that performs a specific or general function. The chip includes a control circuit and a memory. The memory is accessed during operations of the chip, and may further store firmware. The firmware is a software for driving the chip, and the chip performs functions according to the firmware. In addition, a device connected to the chip can recognize the type and the functions of the chip through communication with the firmware of the chip.
Depending on customization or different applications, the firmware of the chip needs to be updated. The firmware is updated through a communication interface of the chip. However, different chips have different communication interfaces, such as I2C, a system management bus (SMBus), a universal serial bus (USB), and a serial port. Therefore, for updating the firmware of the chip, in addition to being limited to the communication interface supported by the chip, the transmission speed during the update is also limited to the transmission speed supported by the communication interface.
In view of the above, the disclosure provides a chip adapted to update firmware in the memory.
According to some embodiments, the chip includes a power pin, a ground pin, a plurality of input/output (I/O) pins, a readable/writable memory, a switching circuit, a control circuit, and a processing circuit. The I/O pins include a control pin. The readable/writable memory includes a plurality of ports. The control circuit selectively activates or does not activate the switching circuit according to the control pin. When the switching circuit is activated, the switching circuit electrically couples the ports to the mapping pins, respectively.
Therefore, according to some embodiments, when the switching circuit of the chip is activated, the clock port, the I/O ports, and the enable port of the ports of the readable/writable memory are electrically coupled to the mapping pins of the I/O pins. In this way, a programming device can directly control the readable/writable memory, and program a firmware in the readable/writable memory through the mapping pins. This programming operation is not limited to a communication interface of the chip, and a transmission speed of the programming is not limited to a transmission speed of the communication interface either.
Referring to
Therefore, a programming device 80 causes the control circuit 50 to activate the switching circuit 40 through the control pin 24. When the switching circuit 40 is activated, the clock port 32, the I/O ports 34A and 34B, and the enable port 36 of the readable/writable memory 30 are electrically connected to the mapping pins 22A to 22D respectively. In this way, the programming device 80 can directly control the readable/writable memory 30 through the mapping pins 22A to 22D, and program firmware in the readable/writable memory 30. This programming operation is not limited to a communication interface of the chip 10, and a transmission speed of the programming is not limited to a transmission speed of the communication interface either.
The chip 10 is the chip 10 including the readable/writable memory 30 that can store the firmware. According to some embodiments, the chip 10 is a general-purpose integrated circuit or a functional integrated circuit. The chip 10 is, for example, but not limited to, a central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or a system on a chip (SOC).
The chip 10 has a plurality of pins for electrically connecting to and communicating with a peripheral device. The pins of the chip 10 include the power pin 12, the ground pin 14, and the I/O pins 20. The power pin 12 is, for example, but not limited to, a pin for supplying power for operating of the chip 10. The power of the power pin 12 may be from the programming device 80 or other external devices. According to some embodiments, the chip 10 includes a plurality of power pins 12.
The ground pin 14 is, for example, but not limited to, a pin for grounding the chip 10 and the programming device 80. In some embodiments, the ground of the programming device 80 is electrically connected to the ground pin 14. According to some embodiments, the chip 10 includes a plurality of ground pins 14.
The programming device 80 is configured to program the readable/writable memory 30 of the chip 10 and update the data in the readable/writable memory 30. The programming device 80 may be, for example, but not limited to, a universal programmer, a mass programmer, or a dedicated programmer.
The readable/writable memory 30 is, for example, but not limited to, an electrically-erasable programmable read-only memory (EEPROM), a flash memory, and other non-volatile memories (NVM). The clock port 32 of the readable/writable memory 30 is configured to receive a clock signal provided by the outside, and the readable/writable memory 30 operates according to the clock signal. The I/O ports 34A and 34B of the readable/writable memory 30 are configured to receive or send data of the readable/writable memory 30. The enable port 36 of the readable/writable memory 30 is used by an external device to control the readable/writable memory 30. Specifically, the external device is, for example, but not limited to, a microprocessor. The microprocessor generates an enable signal to enable the readable/writable memory 30. In some embodiments, the enable signal is a level signal. For example, when the level signal is at a high level, it indicates that the readable/writable memory 30 is enabled. When the level signal is at a low level, it indicates that the readable/writable memory 30 is not enabled. However, this is not limited thereto. When the level signal is at a low level, it indicates that the readable/writable memory 30 is enabled. When the level signal is at a high level, it indicates that the readable/writable memory 30 is not enabled. In some embodiments, the enable signal is a sequence signal. For example, when the microprocessor sends a sequence signal to the enable port 36, the readable/writable memory 30 is enabled when the content of the sequence signal conforms to an enable sequence; otherwise, the readable/writable memory 30 is not enabled.
In some embodiments, the chip 10 includes a processing circuit 60. The processing circuit 60 is configured to access the data of the readable/writable memory 30 and perform the function of the chip 10. In addition, the processing circuit 60 is configured to access data of the I/O pins 20 as well (for example, the processing circuit 60 access data of the mapping pins 22A to 22D). According to some embodiments, the chip 10 has two modes: a programming mode and a normal mode. When the switching circuit 40 is not activated by the control circuit 50, that is, the chip 10 is in the normal mode, the mapping pins 22A to 22D, the clock port 32, the I/O ports 34A and 34B, and the enable port 36 are electrically connected to the processing circuit 60 through the switching circuit 40, and the chip 10 performs the existing function.
In some embodiments, the processing circuit (the processing circuit 60A) includes a master controller 62 (as shown in
Referring to
Referring to
Referring to
Referring to
Referring to
In view of the above, according to some embodiments, when the switching circuit 40 of the chip 10 is activated, the clock port 32, the I/O ports 34A and 34B, and the enable port 36 of the ports of the readable/writable memory 30 are electrically coupled to the mapping pins to the mapping pins 22A to 22D of the I/O pins respectively. In this way, the programming device 80 can directly control the readable/writable memory 30 through the mapping pins 22A to 22D, and program the firmware in the readable/writable memory 30. This programming operation is not limited to a communication interface of the chip, and a transmission speed of the programming is not limited to a transmission speed of the communication interface either.
| Number | Date | Country | Kind |
|---|---|---|---|
| 201911269473.0 | Dec 2019 | CN | national |
| Number | Name | Date | Kind |
|---|---|---|---|
| 5764655 | Kirihata et al. | Jun 1998 | A |
| 5959489 | Walck | Sep 1999 | A |
| 6055632 | Deegan et al. | Apr 2000 | A |
| 7444575 | Ong | Oct 2008 | B2 |
| 7502240 | Leung | Mar 2009 | B2 |
| 7657886 | Chen et al. | Feb 2010 | B1 |
| 9343176 | Chung | May 2016 | B2 |
| 10261894 | Tripathi et al. | Apr 2019 | B2 |
| 20030051192 | Pillay | Mar 2003 | A1 |
| 20050289428 | Ong | Dec 2005 | A1 |
| 20070245200 | Hattori et al. | Oct 2007 | A1 |
| 20080122659 | Hou et al. | May 2008 | A1 |
| 20120072790 | Burggraf, III et al. | Mar 2012 | A1 |
| 20190340144 | Li | Nov 2019 | A1 |
| 20200327932 | Verma | Oct 2020 | A1 |
| 20200393229 | Feda | Dec 2020 | A1 |
| 20220206695 | Zhao | Jun 2022 | A1 |
| Number | Date | Country |
|---|---|---|
| 109388421 | Feb 2019 | CN |
| 2-240899 | Sep 1990 | JP |
| 200500933 | Jan 2005 | TW |
| 200724950 | Jul 2007 | TW |
| 200802394 | Jan 2008 | TW |
| 200823755 | Jun 2008 | TW |
| 200912936 | Mar 2009 | TW |
| 201602791 | Jan 2016 | TW |
| M577543 | May 2019 | TW |
| WO-2005017662 | Feb 2005 | WO |
| WO 2012123243 | Sep 2012 | WO |
| WO 2015183404 | Dec 2015 | WO |
| Number | Date | Country | |
|---|---|---|---|
| 20210182051 A1 | Jun 2021 | US |