US7441102B2 - Integrated circuit with functional state configurable memory and method of configuring functional states of the integrated circuit memory - Google Patents
Integrated circuit with functional state configurable memory and method of configuring functional states of the integrated circuit memory Download PDFInfo
- Publication number
- US7441102B2 US7441102B2 US11/364,104 US36410406A US7441102B2 US 7441102 B2 US7441102 B2 US 7441102B2 US 36410406 A US36410406 A US 36410406A US 7441102 B2 US7441102 B2 US 7441102B2
- Authority
- US
- United States
- Prior art keywords
- memory
- opcode
- processor
- multiplexer
- functional
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active, expires
Links
- 238000000034 method Methods 0.000 title claims description 13
- 230000004044 response Effects 0.000 claims abstract description 17
- 238000001514 detection method Methods 0.000 claims abstract description 16
- 238000012360 testing method Methods 0.000 claims abstract description 7
- 230000008859 change Effects 0.000 claims description 7
- 239000000725 suspension Substances 0.000 claims description 7
- 230000008878 coupling Effects 0.000 claims description 4
- 238000010168 coupling process Methods 0.000 claims description 4
- 238000005859 coupling reaction Methods 0.000 claims description 4
- 230000008901 benefit Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 3
- 230000008672 reprogramming Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/22—Microcontrol or microprogram arrangements
- G06F9/26—Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
- G06F9/262—Arrangements for next microinstruction selection
- G06F9/268—Microinstruction selection not based on processing results, e.g. interrupt, patch, first cycle store, diagnostic programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
- G06F9/30079—Pipeline control instructions, e.g. multicycle NOP
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
Definitions
- the present disclosures relate to integrated circuits, and more particularly, to an integrated circuit with memory and a method of configuring a memory.
- FIG. 1 is a block diagram view of an integrated circuit having memory according to one embodiment of the present disclosure
- FIG. 2 is a block diagram view of a portion of the integrated circuit of FIG. 1 in greater detail, according to one embodiment of the present disclosure.
- FIG. 3 is a block diagram view of the memory array of FIG. 2 in greater detail, according to one embodiment of the present disclosure.
- An “opcode” can refer to the digital program command being operated on by a processor.
- a “BRA PC+0” opcode can refer to an opcode that causes the processor to branch back to the same location it is currently at and, basically, it causes the processor to march in place.
- a “hard coded” value can refer to an unchangeable data value such as a constant. Other interpretations may also be possible.
- FIG. 1 illustrates an integrated circuit ( 10 ) in which a processor ( 12 ) is coupled via a system bus ( 14 ) to a memory ( 16 ).
- the memory ( 16 ) includes novel functionality according to the embodiments of the present disclosure, as discussed further herein.
- FIG. 2 illustrates the details associated with region ( 18 ) of FIG. 1 .
- the system bus ( 14 ) generally comprises Address ( 20 ) and Data ( 22 ) segments.
- the address portion carries address information out from the processor to peripheral devices, e.g. memory ( 16 ).
- the data portion comprises a bi-direction bus (though it is sometimes implemented as a unidirectional read data and write data pair) that carries data to and from the processor ( 12 ).
- the memory ( 16 ) contains a memory array ( 24 ), associated control logic ( 26 ), and control signaling ( 28 ).
- the memory ( 16 ) also contains a multiplexer ( 30 ) which selects between its first port ( 32 ) and its second port ( 34 ) and routes one of these two ports to its output ( 36 ) based on the multiplexer control input ( 38 ).
- a hard-coded benign opcode specific to the processor ( 12 ) is assigned to the benign opcode input port ( 34 ).
- the multiplexer control input ( 38 ) (a.k.a. “Busy” signal) is sourced by the memory control logic ( 26 ). Interface between the processor ( 12 ) and memory control logic is via the Address ( 40 , 20 ) and Data ( 42 , 22 ) components of the system bus ( 14 ).
- FIG. 3 illustrates a typical application in which the memory ( 16 ) comprises a Flash type memory, in this case with four pages ( 44 , 46 , 48 and 50 ), any of which can be secured against erasure.
- the fourth page of memory ( 50 ) is secured from erasure, and contains a “Boot Routine” ( 52 ).
- This secured page of memory ( 50 ) contains a series of opcodes (i.e., processor instructions) that instructs the processor ( 12 ) to erase all of the unsecured Flash memory array ( 24 ), do nothing (i.e., the NOP instructions), and then continue on with the next meaningful instruction.
- the next meaningful instruction may include, for example, a check to ensure that the unsecured pages ( 44 , 46 , 48 ) were successfully erased, or a series of instructions to write fresh data into one of these erased pages.
- the processor ( 12 ) accepts an opcode that results from the assembly of an instruction such as BRA PC+0 (e.g., branch to the current program counter plus zero).
- BRA PC+0 e.g., branch to the current program counter plus zero.
- the processor ( 12 ) will be fetching the valid (but benign) substituted opcode and simply march in place.
- the multiplexer ( 30 ) will revert back to its first port ( 32 ) and the processor will continue to fetch the opcodes contained in the “Boot Routine” ( 52 ), rather than the substituted benign opcode at ( 34 ).
- the embodiments as discussed herein allow for the uninterrupted fetch and execution of opcodes from a memory ( 16 ), with no change in program ( 52 ) flow or suspension of processor ( 12 ) operation, even if the memory array ( 24 ) is not able to supply valid opcodes during certain functional states or conditions.
- the Boot Routine ( 52 ) may be any program which instructs the memory ( 16 ) to execute a behavior that will cause it to become unavailable to provide valid opcodes for any length of time, including but not limited to: mass erase, page erase, writes, checksum calculations over an address range, or MBIST (Memory Built In Self Test) operations.
- the memory ( 16 ) is not restricted to paged Flash.
- the memory ( 16 ) may be of any type that may not be able to provide valid read access during certain operational states. These states may include: mass erase, page erase, writes, checksum calculations over an address range, or MBIST (Memory Built In Self Test) operations.
- a Flash memory whenever a Flash memory is busy (e.g. erasing, programming, self verifying, etc.) and is unable to present a valid opcode in response to a read command, it instead responds with a (hard coded) benign opcode such as BRA PC+0.
- a boot (re-programming) program running from a protected segment of flash will occasionally “march in place” (i.e., fetch and execute BRA PC+0) while the flash memory is unable to respond to a read request with a real opcode.
- an integrated circuit comprising a processor configured for fetching and executing opcodes, a system bus, and a memory coupled to the processor via the system bus.
- the memory includes logic circuitry for detecting functional states of the memory and wherein the memory (a) supplies one or more programmed opcodes in response to detection of first functional states of the memory, and (b) supplies a hard coded opcode in response to detection of second functional states of the memory.
- the memory comprises one or more of a Flash, RAM, MRAM, or other suitable memory.
- the hard coded opcode is configured for enabling an uninterrupted fetch and execution of opcodes by the processor.
- the uninterrupted fetch and execution of opcodes by the processor occurs with neither (i) a change in a program flow or (ii) a suspension of processor operation.
- the integrated circuit includes a memory array, a multiplexer coupled to the memory array, and logic circuitry coupled to (a) the memory array and (b) the multiplexer.
- the multiplexer includes (i) a first bus port coupled to the memory array for receiving programmed opcodes stored in the memory array, (ii) a second bus port for receiving the hard coded opcode, (iii) a control input for receiving a functional state signal from the logic circuitry, and (iv) a multiplexer system bus port. Responsive to the functional state signal on the control input having a first state representative of the first functional states, the multiplexer couples the first bus port to the multiplexer system bus port.
- the multiplexer couples the second bus port to the multiplexer system bus port.
- the hard coded opcode can be stored (i) internal to the memory or (ii) external to the memory.
- the second functional states of the memory can represent one or more of erase, write, self-test, and check-sum, and wherein the first functional states of the memory can represent a functional state other than a second functional state.
- the hard coded opcode comprises a benign opcode.
- the benign opcode can include, for example, a branch instruction.
- the processor further includes a program counter, and wherein the hard coded opcode comprises any opcode that results in the program counter of the processor remaining unchanged.
- the opcode may include a branch instruction to a memory location given by a current program counter plus zero.
- the memory includes a routine configured for placing the memory in a second functional state.
- the routine can comprise one selected from the group consisting of a built-in self test, a check-sum routine, and a boot routine.
- the routine may reside in a protected portion of the memory.
- an integrated circuit comprises a memory configured for being coupled via a bus to a processor.
- the processor is configured for fetching and executing opcodes.
- the memory includes logic circuitry for detecting functional states of the memory and wherein the memory (a) supplies one or more programmed opcodes in response to detection of first functional states of the memory, and (b) supplies a hard coded opcode in response to detection of second functional states of the memory.
- the hard coded opcode is configured for enabling uninterrupted fetch and execution of opcodes by the processor with either (i) no change in a program flow or (ii) no suspension of processor operation.
- the memory includes a memory array and a multiplexer coupled to the memory array.
- the logic circuitry is coupled to (a) the memory array and (b) the multiplexer.
- the multiplexer includes (i) a first bus port coupled to the memory array for receiving programmed opcodes stored in the memory array, (ii) a second bus port for receiving the hard coded opcode, (iii) a control input for receiving a functional state signal from the logic circuitry, and (iv) a multiplexer system bus port. Responsive to the functional state signal on the control input having a first state representative of the first functional states, the multiplexer couples the first bus port to the multiplexer system bus port.
- the multiplexer couples the second bus port to the multiplexer system bus port.
- the hard coded opcode can be stored (i) internal to the memory or (ii) external to the memory.
- a method of configuring a memory for being coupled via a bus to a processor wherein the processor is adapted for fetching and executing opcodes from the memory.
- the method comprises detecting functional states of the memory with logic circuitry, supplying one or more programmed opcodes from the memory in response to detection of first functional states of the memory, and supplying a hard coded opcode from the memory in response to detection of second functional states of the memory.
- the hard coded opcode is configured for enabling uninterrupted fetch and execution of opcodes by the processor with either (i) no change in a program flow or (ii) no suspension of processor operation.
- configuring the memory further includes providing a memory array, coupling a multiplexer to the memory array, and coupling the logic circuitry to (a) the memory array and (b) the multiplexer.
- the multiplexer includes (i) a first bus port coupled to the memory array for receiving programmed opcodes stored in the memory array, (ii) a second bus port for receiving the hard coded opcode, (iii) a control input for receiving a functional state signal from the logic circuitry, and (iv) a multiplexer system bus port. Responsive to the functional state signal on the control input having a first state representative of the first functional states, the multiplexer couples the first bus port to the multiplexer system bus port.
- the multiplexer couples the second bus port to the multiplexer system bus port. Furthermore, configuring the memory also includes storing the hard coded opcode (i) internal to the memory or (ii) external to the memory.
- the embodiments of the present disclosure advantageously circumvent the need for either a second physical block of program memory or a mechanism to stall the core while a Flash memory is busy.
- the embodiments of the present disclosure further allow mission mode reprogramming of a single Flash block microcontroller.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microcomputers (AREA)
Abstract
Description
Claims (18)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/364,104 US7441102B2 (en) | 2006-02-28 | 2006-02-28 | Integrated circuit with functional state configurable memory and method of configuring functional states of the integrated circuit memory |
PCT/US2007/060846 WO2007100940A2 (en) | 2006-02-28 | 2007-01-22 | Integrated circuit with memory and method of configuring a memory |
EP07756395A EP1999594A4 (en) | 2006-02-28 | 2007-01-22 | Integrated circuit with memory and method of configuring a memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/364,104 US7441102B2 (en) | 2006-02-28 | 2006-02-28 | Integrated circuit with functional state configurable memory and method of configuring functional states of the integrated circuit memory |
Publications (2)
Publication Number | Publication Date |
---|---|
US20070204140A1 US20070204140A1 (en) | 2007-08-30 |
US7441102B2 true US7441102B2 (en) | 2008-10-21 |
Family
ID=38445411
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/364,104 Active 2026-04-18 US7441102B2 (en) | 2006-02-28 | 2006-02-28 | Integrated circuit with functional state configurable memory and method of configuring functional states of the integrated circuit memory |
Country Status (3)
Country | Link |
---|---|
US (1) | US7441102B2 (en) |
EP (1) | EP1999594A4 (en) |
WO (1) | WO2007100940A2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140244780A1 (en) * | 2007-01-16 | 2014-08-28 | Waterfall Security Solutions Ltd. | Secure Archive |
US9207949B2 (en) | 2012-07-26 | 2015-12-08 | Samsung Electronics Co., Ltd. | Storage device comprising variable resistance memory and related method of operation |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2577291T3 (en) | 2006-06-27 | 2016-07-14 | Waterfall Security Solutions Ltd. | Unidirectional secure links to and from a safety engine |
IL180020A (en) | 2006-12-12 | 2013-03-24 | Waterfall Security Solutions Ltd | Encryption -and decryption-enabled interfaces |
US9817665B2 (en) * | 2011-03-31 | 2017-11-14 | Silicon Laboratories Inc. | System and technique for retrieving an instruction from memory based on a determination of whether a processor will execute the instruction |
US9635037B2 (en) | 2012-09-06 | 2017-04-25 | Waterfall Security Solutions Ltd. | Remote control of secure installations |
US9419975B2 (en) | 2013-04-22 | 2016-08-16 | Waterfall Security Solutions Ltd. | Bi-directional communication over a one-way link |
IL235175A (en) | 2014-10-19 | 2017-08-31 | Frenkel Lior | Secure remote desktop |
IL250010B (en) | 2016-02-14 | 2020-04-30 | Waterfall Security Solutions Ltd | Secure connection with protected facilities |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4028683A (en) | 1975-10-16 | 1977-06-07 | Bell Telephone Laboratories, Incorporated | Memory patching circuit with counter |
US5950012A (en) | 1996-03-08 | 1999-09-07 | Texas Instruments Incorporated | Single chip microprocessor circuits, systems, and methods for self-loading patch micro-operation codes and patch microinstruction codes |
US5983337A (en) * | 1997-06-12 | 1999-11-09 | Advanced Micro Devices, Inc. | Apparatus and method for patching an instruction by providing a substitute instruction or instructions from an external memory responsive to detecting an opcode of the instruction |
US6016270A (en) | 1998-03-06 | 2000-01-18 | Alliance Semiconductor Corporation | Flash memory architecture that utilizes a time-shared address bus scheme and separate memory cell access paths for simultaneous read/write operations |
US6128607A (en) | 1996-07-12 | 2000-10-03 | Nordin; Peter | Computer implemented machine learning method and system |
US6240040B1 (en) | 2000-03-15 | 2001-05-29 | Advanced Micro Devices, Inc. | Multiple bank simultaneous operation for a flash memory |
US6246634B1 (en) | 2000-05-01 | 2001-06-12 | Silicon Storage Technology, Inc. | Integrated memory circuit having a flash memory array and at least one SRAM memory array with internal address and data bus for transfer of signals therebetween |
US6397313B1 (en) | 1999-10-19 | 2002-05-28 | Advanced Micro Devices, Inc. | Redundant dual bank architecture for a simultaneous operation flash memory |
US6418506B1 (en) | 1996-12-31 | 2002-07-09 | Intel Corporation | Integrated circuit memory and method for transferring data using a volatile memory to buffer data for a nonvolatile memory array |
US20020120810A1 (en) * | 2001-02-28 | 2002-08-29 | Brouwer Roger J. | Method and system for patching ROM code |
US6470414B2 (en) | 1998-09-23 | 2002-10-22 | Advanced Micro Devices, Inc. | Bank selector circuit for a simultaneous operation flash memory device with a flexible bank partition architecture |
US6691205B2 (en) | 2001-03-05 | 2004-02-10 | M-Systems Flash Disk Pioneers Ltd. | Method for using RAM buffers with simultaneous accesses in flash based storage systems |
US6788612B2 (en) | 2001-04-23 | 2004-09-07 | Aplus Flash Technology, Inc. | Flash memory array structure suitable for multiple simultaneous operations |
US6883044B1 (en) | 2000-07-28 | 2005-04-19 | Micron Technology, Inc. | Synchronous flash memory with simultaneous access to one or more banks |
US20050146583A1 (en) | 1997-07-12 | 2005-07-07 | Kia Silverbrook | Printing cartridge having IC device for interfacing with printing system |
US20050160316A1 (en) | 2002-12-02 | 2005-07-21 | Silverbrook Research Pty Ltd | Mechanism for reducing write problems by controlling charge pumps for flash memory |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4956766A (en) * | 1985-07-25 | 1990-09-11 | International Business Machines Corp. | Systems for inhibiting errors caused by memory cartridge insertion/removal using an idle loop |
US6282631B1 (en) * | 1998-12-23 | 2001-08-28 | National Semiconductor Corporation | Programmable RISC-DSP architecture |
US8090916B2 (en) * | 2004-06-29 | 2012-01-03 | Macronix International Co., Ltd. | In-circuit programming architecture with processor and delegable flash controller |
-
2006
- 2006-02-28 US US11/364,104 patent/US7441102B2/en active Active
-
2007
- 2007-01-22 EP EP07756395A patent/EP1999594A4/en not_active Withdrawn
- 2007-01-22 WO PCT/US2007/060846 patent/WO2007100940A2/en active Application Filing
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4028683A (en) | 1975-10-16 | 1977-06-07 | Bell Telephone Laboratories, Incorporated | Memory patching circuit with counter |
US5950012A (en) | 1996-03-08 | 1999-09-07 | Texas Instruments Incorporated | Single chip microprocessor circuits, systems, and methods for self-loading patch micro-operation codes and patch microinstruction codes |
US6128607A (en) | 1996-07-12 | 2000-10-03 | Nordin; Peter | Computer implemented machine learning method and system |
US6418506B1 (en) | 1996-12-31 | 2002-07-09 | Intel Corporation | Integrated circuit memory and method for transferring data using a volatile memory to buffer data for a nonvolatile memory array |
US5983337A (en) * | 1997-06-12 | 1999-11-09 | Advanced Micro Devices, Inc. | Apparatus and method for patching an instruction by providing a substitute instruction or instructions from an external memory responsive to detecting an opcode of the instruction |
US20050146583A1 (en) | 1997-07-12 | 2005-07-07 | Kia Silverbrook | Printing cartridge having IC device for interfacing with printing system |
US6016270A (en) | 1998-03-06 | 2000-01-18 | Alliance Semiconductor Corporation | Flash memory architecture that utilizes a time-shared address bus scheme and separate memory cell access paths for simultaneous read/write operations |
US6470414B2 (en) | 1998-09-23 | 2002-10-22 | Advanced Micro Devices, Inc. | Bank selector circuit for a simultaneous operation flash memory device with a flexible bank partition architecture |
US6397313B1 (en) | 1999-10-19 | 2002-05-28 | Advanced Micro Devices, Inc. | Redundant dual bank architecture for a simultaneous operation flash memory |
US6240040B1 (en) | 2000-03-15 | 2001-05-29 | Advanced Micro Devices, Inc. | Multiple bank simultaneous operation for a flash memory |
US6246634B1 (en) | 2000-05-01 | 2001-06-12 | Silicon Storage Technology, Inc. | Integrated memory circuit having a flash memory array and at least one SRAM memory array with internal address and data bus for transfer of signals therebetween |
US6883044B1 (en) | 2000-07-28 | 2005-04-19 | Micron Technology, Inc. | Synchronous flash memory with simultaneous access to one or more banks |
US20020120810A1 (en) * | 2001-02-28 | 2002-08-29 | Brouwer Roger J. | Method and system for patching ROM code |
US6691205B2 (en) | 2001-03-05 | 2004-02-10 | M-Systems Flash Disk Pioneers Ltd. | Method for using RAM buffers with simultaneous accesses in flash based storage systems |
US6788612B2 (en) | 2001-04-23 | 2004-09-07 | Aplus Flash Technology, Inc. | Flash memory array structure suitable for multiple simultaneous operations |
US20050160316A1 (en) | 2002-12-02 | 2005-07-21 | Silverbrook Research Pty Ltd | Mechanism for reducing write problems by controlling charge pumps for flash memory |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140244780A1 (en) * | 2007-01-16 | 2014-08-28 | Waterfall Security Solutions Ltd. | Secure Archive |
US9116857B2 (en) * | 2007-01-16 | 2015-08-25 | Waterfall Security Solutions Ltd. | Secure archive |
US20150326546A1 (en) * | 2007-01-16 | 2015-11-12 | Waterfall Security Solutions Ltd. | Secure Archive |
US9519616B2 (en) * | 2007-01-16 | 2016-12-13 | Waterfall Security Solution Ltd. | Secure archive |
US9207949B2 (en) | 2012-07-26 | 2015-12-08 | Samsung Electronics Co., Ltd. | Storage device comprising variable resistance memory and related method of operation |
Also Published As
Publication number | Publication date |
---|---|
EP1999594A4 (en) | 2009-08-05 |
WO2007100940A2 (en) | 2007-09-07 |
EP1999594A2 (en) | 2008-12-10 |
WO2007100940A3 (en) | 2008-04-10 |
US20070204140A1 (en) | 2007-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7441102B2 (en) | Integrated circuit with functional state configurable memory and method of configuring functional states of the integrated circuit memory | |
US5926646A (en) | Context-dependent memory-mapped registers for transparent expansion of a register file | |
US7340566B2 (en) | System and method for initializing a memory device from block oriented NAND flash | |
US9703562B2 (en) | Instruction emulation processors, methods, and systems | |
US20140281398A1 (en) | Instruction emulation processors, methods, and systems | |
JP6005392B2 (en) | Method and apparatus for routing | |
US20050091475A1 (en) | Method and apparatus for limiting ports in a register alias table | |
KR100272937B1 (en) | Microprocessor and multiprocessor system | |
US4926318A (en) | Micro processor capable of being connected with a coprocessor | |
US10824552B2 (en) | Patch mechanism in embedded controller for memory access | |
US7805590B2 (en) | Coprocessor receiving target address to process a function and to send data transfer instructions to main processor for execution to preserve cache coherence | |
KR100928757B1 (en) | System and method for control registers accessed via private operations | |
US10073797B2 (en) | Data processor device supporting selectable exceptions and method thereof | |
KR20080017089A (en) | Mechanism for providing program breakpoints in a microcontroller with flash program memory | |
US10203959B1 (en) | Subroutine power optimiztion | |
JP2006522398A (en) | Using bypass in pipelined instruction processors | |
US20030023836A1 (en) | Shadow register array control instructions | |
EP0729604B1 (en) | Register status protection during read-modify-write operation | |
US8533439B2 (en) | Elastic shared RAM array including contiguous instruction and data portions distinct from each other | |
US5664156A (en) | Microcontroller with a reconfigurable program status word | |
US20070300042A1 (en) | Method and apparatus for interfacing a processor and coprocessor | |
KR100763173B1 (en) | Method and apparatus for configuring a data processing system after reset | |
US20070300043A1 (en) | Method and apparatus for interfacing a processor and coprocessor | |
US7197666B1 (en) | Method for checking the reset function in an embedded processor | |
WO2007057831A1 (en) | Data processing method and apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: FREESCALE SEMICONDUCTOR, INC., TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SHADE, DOUGLAS M.;REEL/FRAME:017634/0468 Effective date: 20060224 |
|
AS | Assignment |
Owner name: CITIBANK, N.A. AS COLLATERAL AGENT, NEW YORK Free format text: SECURITY AGREEMENT;ASSIGNORS:FREESCALE SEMICONDUCTOR, INC.;FREESCALE ACQUISITION CORPORATION;FREESCALE ACQUISITION HOLDINGS CORP.;AND OTHERS;REEL/FRAME:018855/0129 Effective date: 20061201 Owner name: CITIBANK, N.A. AS COLLATERAL AGENT,NEW YORK Free format text: SECURITY AGREEMENT;ASSIGNORS:FREESCALE SEMICONDUCTOR, INC.;FREESCALE ACQUISITION CORPORATION;FREESCALE ACQUISITION HOLDINGS CORP.;AND OTHERS;REEL/FRAME:018855/0129 Effective date: 20061201 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: CITIBANK, N.A., NEW YORK Free format text: SECURITY AGREEMENT;ASSIGNOR:FREESCALE SEMICONDUCTOR, INC.;REEL/FRAME:022380/0409 Effective date: 20090216 Owner name: CITIBANK, N.A.,NEW YORK Free format text: SECURITY AGREEMENT;ASSIGNOR:FREESCALE SEMICONDUCTOR, INC.;REEL/FRAME:022380/0409 Effective date: 20090216 |
|
AS | Assignment |
Owner name: CITIBANK, N.A., AS COLLATERAL AGENT,NEW YORK Free format text: SECURITY AGREEMENT;ASSIGNOR:FREESCALE SEMICONDUCTOR, INC.;REEL/FRAME:024397/0001 Effective date: 20100413 Owner name: CITIBANK, N.A., AS COLLATERAL AGENT, NEW YORK Free format text: SECURITY AGREEMENT;ASSIGNOR:FREESCALE SEMICONDUCTOR, INC.;REEL/FRAME:024397/0001 Effective date: 20100413 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: CITIBANK, N.A., AS NOTES COLLATERAL AGENT, NEW YOR Free format text: SECURITY AGREEMENT;ASSIGNOR:FREESCALE SEMICONDUCTOR, INC.;REEL/FRAME:030633/0424 Effective date: 20130521 |
|
AS | Assignment |
Owner name: CITIBANK, N.A., AS NOTES COLLATERAL AGENT, NEW YOR Free format text: SECURITY AGREEMENT;ASSIGNOR:FREESCALE SEMICONDUCTOR, INC.;REEL/FRAME:031591/0266 Effective date: 20131101 |
|
AS | Assignment |
Owner name: FREESCALE SEMICONDUCTOR, INC., TEXAS Free format text: PATENT RELEASE;ASSIGNOR:CITIBANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:037354/0225 Effective date: 20151207 Owner name: FREESCALE SEMICONDUCTOR, INC., TEXAS Free format text: PATENT RELEASE;ASSIGNOR:CITIBANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:037354/0807 Effective date: 20151207 Owner name: FREESCALE SEMICONDUCTOR, INC., TEXAS Free format text: PATENT RELEASE;ASSIGNOR:CITIBANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:037356/0553 Effective date: 20151207 Owner name: FREESCALE SEMICONDUCTOR, INC., TEXAS Free format text: PATENT RELEASE;ASSIGNOR:CITIBANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:037356/0143 Effective date: 20151207 |
|
AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS;ASSIGNOR:CITIBANK, N.A.;REEL/FRAME:037486/0517 Effective date: 20151207 |
|
AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS;ASSIGNOR:CITIBANK, N.A.;REEL/FRAME:037518/0292 Effective date: 20151207 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: SUPPLEMENT TO THE SECURITY AGREEMENT;ASSIGNOR:FREESCALE SEMICONDUCTOR, INC.;REEL/FRAME:039138/0001 Effective date: 20160525 |
|
AS | Assignment |
Owner name: NXP, B.V., F/K/A FREESCALE SEMICONDUCTOR, INC., NETHERLANDS Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:040925/0001 Effective date: 20160912 Owner name: NXP, B.V., F/K/A FREESCALE SEMICONDUCTOR, INC., NE Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:040925/0001 Effective date: 20160912 |
|
AS | Assignment |
Owner name: NXP B.V., NETHERLANDS Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:040928/0001 Effective date: 20160622 |
|
AS | Assignment |
Owner name: NXP USA, INC., TEXAS Free format text: CHANGE OF NAME;ASSIGNOR:FREESCALE SEMICONDUCTOR INC.;REEL/FRAME:040652/0180 Effective date: 20161107 |
|
AS | Assignment |
Owner name: NXP USA, INC., TEXAS Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE NATURE OF CONVEYANCE LISTED CHANGE OF NAME SHOULD BE MERGER AND CHANGE PREVIOUSLY RECORDED AT REEL: 040652 FRAME: 0180. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER AND CHANGE OF NAME;ASSIGNOR:FREESCALE SEMICONDUCTOR INC.;REEL/FRAME:041354/0148 Effective date: 20161107 |
|
AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENTS 8108266 AND 8062324 AND REPLACE THEM WITH 6108266 AND 8060324 PREVIOUSLY RECORDED ON REEL 037518 FRAME 0292. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS;ASSIGNOR:CITIBANK, N.A.;REEL/FRAME:041703/0536 Effective date: 20151207 |
|
AS | Assignment |
Owner name: SHENZHEN XINGUODU TECHNOLOGY CO., LTD., CHINA Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT THE APPLICATION NO. FROM 13,883,290 TO 13,833,290 PREVIOUSLY RECORDED ON REEL 041703 FRAME 0536. ASSIGNOR(S) HEREBY CONFIRMS THE THE ASSIGNMENT AND ASSUMPTION OF SECURITYINTEREST IN PATENTS.;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:048734/0001 Effective date: 20190217 |
|
AS | Assignment |
Owner name: NXP B.V., NETHERLANDS Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:050744/0097 Effective date: 20190903 |
|
AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 037486 FRAME 0517. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITYINTEREST IN PATENTS;ASSIGNOR:CITIBANK, N.A.;REEL/FRAME:053547/0421 Effective date: 20151207 |
|
AS | Assignment |
Owner name: NXP B.V., NETHERLANDS Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVEAPPLICATION 11759915 AND REPLACE IT WITH APPLICATION11759935 PREVIOUSLY RECORDED ON REEL 040928 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITYINTEREST;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:052915/0001 Effective date: 20160622 |
|
AS | Assignment |
Owner name: NXP, B.V. F/K/A FREESCALE SEMICONDUCTOR, INC., NETHERLANDS Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVEAPPLICATION 11759915 AND REPLACE IT WITH APPLICATION11759935 PREVIOUSLY RECORDED ON REEL 040925 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITYINTEREST;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:052917/0001 Effective date: 20160912 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 12 |