Patents by Inventor Thomas E. Tkacik
Thomas E. Tkacik has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11640360Abstract: Various embodiments relate to an inline encryption engine in a memory controller configured to process data read from a memory, including: a first data pipeline configured to receive data that is plaintext data and a first validity flag; a second data pipeline having the same length as the first data pipeline configured to: receive data that is encrypted data and a second validity flag; decrypt the encrypted data from the memory and output decrypted plaintext data; an output multiplexer configured to select and output data from either the first pipeline or the second pipeline; and control logic configured to control the output multiplexer, wherein the control logic is configured to output valid data from the first pipeline when the second pipeline does not have valid output decrypted plaintext data available.Type: GrantFiled: January 25, 2022Date of Patent: May 2, 2023Assignee: NXP B.V.Inventors: Thomas E. Tkacik, Srdjan Coric
-
Patent number: 11620184Abstract: Various embodiments relate to a memory controller, including: a memory interface connected to a memory; an address and command logic connected to the memory interface and a command interface, wherein the address and control logic is configured to receive a memory read request; a memory scrubber configured to cycle through memory locations and to read data from those locations; a region selector configured to determine when a memory location read by the memory scrubber is within an integrity checked memory region; a runtime integrity check (RTIC) engine connected to a read data path of the memory interface, wherein the RTIC engine is configured to calculate an integrity check value for the RTIC region using data read from the checked memory region by the memory scrubber; and a RTIC controller configured to compare the calculated integrity check value for the checked memory region to a reference integrity check value for the checked memory region.Type: GrantFiled: August 16, 2021Date of Patent: April 4, 2023Assignee: NXP B.V.Inventors: Thomas E. Tkacik, Geoffrey Paul Waters, James Andrew Welker, Mohit Mongia
-
Publication number: 20230051590Abstract: Various embodiments relate to a memory controller, including: a memory interface connected to a memory; an address and command logic connected to the memory interface and a command interface, wherein the address and control logic is configured to receive a memory read request; a memory scrubber configured to cycle through memory locations and to read data from those locations; a region selector configured to determine when a memory location read by the memory scrubber is within an integrity checked memory region; a runtime integrity check (RTIC) engine connected to a read data path of the memory interface, wherein the RTIC engine is configured to calculate an integrity check value for the RTIC region using data read from the checked memory region by the memory scrubber; and a RTIC controller configured to compare the calculated integrity check value for the checked memory region to a reference integrity check value for the checked memory region.Type: ApplicationFiled: August 16, 2021Publication date: February 16, 2023Inventors: Thomas E. Tkacik, Geoffrey Paul Waters, James Andrew Welker, Mohit Mongia
-
Patent number: 11567676Abstract: Various embodiments relate to a memory controller, including: a memory interface connected to a memory; an address and control logic connected to the memory interface and a command interface, wherein the address and control logic is configured to receive a memory read request; a read inline encryption engine (IEE) connected to the memory interface, wherein the read IEE is configured to decrypt encrypted data read from the memory; a key selector configured to determine a read memory region associated with the memory read request based upon a read address where the data to be read is stored, wherein the read address is received from the address and control logic; and a key logic configured to select a first key associated with the determined read memory region and provide the selected key to the read IEE.Type: GrantFiled: April 30, 2021Date of Patent: January 31, 2023Assignee: NXP B.V.Inventors: Thomas E. Tkacik, Geoffrey Paul Waters, Mohit Mongia, James Andrew Welker, Srdjan Coric
-
Publication number: 20220350503Abstract: Various embodiments relate to a memory controller, including: a memory interface connected to a memory; an address and control logic connected to the memory interface and a command interface, wherein the address and control logic is configured to receive a memory read request; a read inline encryption engine (IEE) connected to the memory interface, wherein the read IEE is configured to decrypt encrypted data read from the memory; a key selector configured to determine a read memory region associated with the memory read request based upon a read address where the data to be read is stored, wherein the read address is received from the address and control logic; and a key logic configured to select a first key associated with the determined read memory region and provide the selected key to the read IEE.Type: ApplicationFiled: April 30, 2021Publication date: November 3, 2022Inventors: Thomas E. Tkacik, Geoffrey Paul Waters, Mohit Mongia, James Andrew Welker, Srdjan Coric
-
Patent number: 10955473Abstract: A semiconductor device including scan configuration circuitry that reconfigures latches of the device into a scan chain in response to assertion of a scan enable control signal, and scan control circuitry including delay circuitry, scan enable circuitry, evaluation circuitry, and scan reset circuitry. The scan reset circuitry keeps each of the secure latches in a predetermined reset state until assertion of both an evaluation signal and a scan mode signal. The delay circuitry includes N series-coupled flip-flops selected from different cell libraries detecting assertion of the scan mode signal and asserting a delay output signal only after N transitions of a test clock. The scan enable circuitry asserts the scan enable control signal when a scan enable command signal and the delay output signal are both asserted. The evaluation circuitry asserts the evaluation signal only when a collective state of the delay circuitry has achieved a predetermined state.Type: GrantFiled: November 1, 2019Date of Patent: March 23, 2021Assignee: NXP B.V.Inventors: Sandeep Jain, Thomas E. Tkacik, Nikila Krishnamoorthy
-
Patent number: 10127998Abstract: A method of programming a memory includes selecting a logic state for programming a first bitcell of the memory. A first one-time-programmable (OTP) element of the first bitcell is programmed using a first set of conditions intended to achieve a first target resistance in accordance with the selected logic state which results in a first degree of programming of the first OTP element. A second OTP element of the first bitcell is programmed using a second set of conditions different from the first set of conditions intended to achieve a second target resistance in accordance with the selected logic state which results in a second degree of programming of the second OTP element, wherein the first and second degrees of programming are visually indistinguishable.Type: GrantFiled: September 26, 2013Date of Patent: November 13, 2018Assignee: NXP USA, Inc.Inventors: Alexander B. Hoefler, Thomas E. Tkacik
-
Patent number: 9954681Abstract: A method of encrypting data on a memory device includes receiving a memory transaction request at an inline encryption engine coupled between a processing core and switch fabric in a system on a chip (SOC). The memory transaction request includes a context component and a data component. The context component is analyzed to determine whether the data component will be stored in an encrypted memory region. If the data component will be stored in an encrypted memory region, the data component is encrypted and communicated to a location in the encrypted memory region. The location is based at least on the context component.Type: GrantFiled: June 10, 2015Date of Patent: April 24, 2018Assignee: NXP USA, Inc.Inventors: Lawrence L. Case, Charles E. Cannon, Mingle Sun, Thomas E. Tkacik
-
Publication number: 20160364343Abstract: A method of encrypting data on a memory device includes receiving a memory transaction request at an inline encryption engine coupled between a processing core and switch fabric in a system on a chip (SOC). The memory transaction request includes a context component and a data component. The context component is analyzed to determine whether the data component will be stored in an encrypted memory region. If the data component will be stored in an encrypted memory region, the data component is encrypted and communicated to a location in the encrypted memory region. The location is based at least on the context component.Type: ApplicationFiled: June 10, 2015Publication date: December 15, 2016Inventors: LAWRENCE L. CASE, Charles E. Cannon, Mingle Sun, Thomas E. Tkacik
-
Patent number: 9436248Abstract: A semiconductor device includes a processing system including a section of power domain circuitry and a section of coin cell power domain circuitry. The coin cell power domain circuitry is configured to, when power is initially provided to the coin cell power domain circuitry, using power provided by a power management circuit as feedback to determine that the power management circuit provides the power in response to a power request signal being a toggle signal, and determine that the power management circuit provides the power in response to the power request signal being a pulse signal.Type: GrantFiled: July 31, 2013Date of Patent: September 6, 2016Assignee: FREESCALE SEMICONDUCTOR, INC.Inventors: Lawrence L. Case, Matthew W. Brocker, Mingle Sun, Thomas E. Tkacik
-
Patent number: 9430658Abstract: To securely configure an electronic circuit and provision a product that includes the electronic circuit, a first entity (e.g., a chip manufacturer) embeds one or more secret values into copies of the circuit. A second entity (e.g., an OEM): 1) derives a trust anchor from a code signing public key; 2) embeds the trust anchor in a first circuit copy; 3) causes the first circuit copy to generate a secret key derived from the trust anchor and the embedded secret value(s); 4) signs provisioning code using a code signing private key; and 5) sends the code signing public key, the trust anchor, and the signed provisioning code to a third entity (e.g., a product manufacturer). The third entity embeds the trust anchor in a second circuit copy and causes it to: 1) generate the secret key; 2) verify the signature of the signed provisioning code using the code signing public key; and 3) launch the provisioning code.Type: GrantFiled: December 16, 2014Date of Patent: August 30, 2016Assignee: FREESCALE SEMICONDUCTOR, INC.Inventors: Carlin R. Covey, Lawrence L. Case, Thomas E. Tkacik
-
Patent number: 9424200Abstract: A run-time integrity checking (RTIC) method compatible with memory having at least portions that store data that is changed over time or at least portions configured as virtual memory is provided. For example, the method may comprise storing a table of page entries and accessing the table of page entries by, as an example, an operating system or, as another example, a hypervisor to perform RTIC on memory in which, as an example, an operating system, as another example, a hypervisor, or, as yet another example, application software is stored. The table may, for example, be stored in secure memory or in external memory. The page entry comprises a hash value for the page and a hash valid indicator indicating the validity status of the hash value. The page entry may further comprise a residency indicator indicating a residency status of the memory page.Type: GrantFiled: March 15, 2013Date of Patent: August 23, 2016Assignee: FREESCALE SEMICONDUCTOR, INC.Inventors: Thomas E. Tkacik, Matthew W. Brocker, Carlin R. Covey
-
Patent number: 9384153Abstract: Embodiments of electronic circuits, computer systems, and associated methods include a module that accesses memory using virtual addressing, the memory including local memory that is local to the module and nonlocal memory that is accessible via a system bus coupled to the module, the module including logic coupled to the local memory via a local bus. The logic is configured to receive a memory access specified to a virtual address, determine whether the virtual address is within the local memory, and direct the memory access either to the local memory via the local bus or to the nonlocal memory via the system bus based on the determination.Type: GrantFiled: August 31, 2012Date of Patent: July 5, 2016Assignee: Freescale Semiconductor, Inc.Inventors: Thomas E. Tkacik, Charles E. Cannon, Carlin R. Covey, David H. Hartley, Rodney D. Ziolowski
-
Publication number: 20160171223Abstract: To securely configure an electronic circuit and provision a product that includes the electronic circuit, a first entity (e.g., a chip manufacturer) embeds one or more secret values into copies of the circuit. A second entity (e.g., an OEM): 1) derives a trust anchor from a code signing public key; 2) embeds the trust anchor in a first circuit copy; 3) causes the first circuit copy to generate a secret key derived from the trust anchor and the embedded secret value(s); 4) signs provisioning code using a code signing private key; and 5) sends the code signing public key, the trust anchor, and the signed provisioning code to a third entity (e.g., a product manufacturer). The third entity embeds the trust anchor in a second circuit copy and causes it to: 1) generate the secret key; 2) verify the signature of the signed provisioning code using the code signing public key; and 3) launch the provisioning code.Type: ApplicationFiled: December 16, 2014Publication date: June 16, 2016Inventors: CARLIN R. COVEY, LAWRENCE L. CASE, THOMAS E. TKACIK
-
Patent number: 9158499Abstract: Embodiments of an electronic circuit comprise a module, such as a security module, configured to perform cryptographic processing for a predetermined security protocol that includes random number checking. The security module is controlled by a descriptor that includes instructions that cause the security module to access a generated random number, compare the generated random number to a random number stored during a previous execution of the descriptor, and generate an error signal when the generated random number and the previous execution random number are equal.Type: GrantFiled: April 30, 2012Date of Patent: October 13, 2015Assignee: FREESCALE SEMICONDUCTOR, INCInventors: Michael J. Torla, Steven D. Millman, Thomas E. Tkacik, Frank James
-
Patent number: 9135129Abstract: A method and apparatus for testing operation of a random number generator (RNG) testing circuit are provided. In accordance with at least one embodiment, a first RNG output value obtained from a RNG is stored in a first register. In response to activation of a test mode to simulate a faulty RNG, the first RNG output value is stored in a second register. The first RNG output value in the first register is compared to the first RNG output value in the second register. In response to the comparing, a RNG failure signal is provided at a RNG testing circuit output of the RNG testing circuit. In accordance with at least one embodiment, sequential and combinational logic can simulate a faulty RNG. Accordingly, simulation of a faulty RNG may be performed to test a RNG testing circuit even when the RNG is not faulty.Type: GrantFiled: January 11, 2013Date of Patent: September 15, 2015Assignee: Freescale Semiconductor, Inc.Inventors: Matthew W. Brocker, Steven E. Cornelius, Thomas E. Tkacik
-
Patent number: 9129536Abstract: Embodiments of electronic circuits enable security of sensitive data in a design and manufacturing process that includes multiple parties. An embodiment of an electronic circuit can include a private key embedded within the electronic circuit that is derived from a plurality of components including at least one component known only to the electronic circuit and at least one immutable value cryptographically bound into messages and residing on the electronic circuit, public key generation logic that generates a public key to match the private key, and message signing logic that signs messages with the private key.Type: GrantFiled: August 31, 2012Date of Patent: September 8, 2015Assignee: Freescale Semiconductor, Inc.Inventors: Thomas E. Tkacik, Lawrence L. Case, Carlin R. Covey, David H. Hartley, Rodney D. Ziolkowski
-
Patent number: 9100174Abstract: Embodiments include methods for securely provisioning copies of an electronic circuit. A first entity (e.g., a chip manufacturer) embeds one or more secret values into copies of the electronic circuit. A second entity (e.g., an OEM): 1) embeds a trust anchor in a first copy of the electronic circuit; 2) causes the electronic circuit to generate a message signing key pair using the trust anchor and the embedded secret value(s); 3) signs provisioning code using a code signing private key; and 4) sends a corresponding code signing public key, the trust anchor, and the signed provisioning code to a third entity (e.g., a product manufacturer). The third entity embeds the trust anchor in a second copy of the electronic circuit and causes the electronic circuit to: 1) generate the message signing private key; 2) verify the signature of the signed provisioning code using the code signing public key; and 3) launch the provisioning code on the electronic circuit.Type: GrantFiled: March 20, 2014Date of Patent: August 4, 2015Assignee: Freescale Semiconductor, Inc.Inventors: David H. Hartley, Thomas E. Tkacik, Carlin R. Covey, Lawrence L. Case, Rodney D. Ziolkowski
-
Patent number: 9100189Abstract: Embodiments include methods for securely provisioning copies of an electronic circuit. A first entity embeds one or more secret values into copies of the circuit. A second entity: 1) embeds a trust anchor in a first copy of the circuit; 2) causes the circuit to generate a message signing key pair using the trust anchor and the embedded secret value(s); 3) signs provisioning code using a code signing private key; and 4) sends a corresponding code signing public key, the trust anchor, and the signed provisioning code to a third entity. The third entity embeds the trust anchor in a second copy of the circuit and causes the circuit to: 1) generate the message signing private key; 2) verify the signature of the signed provisioning code using the code signing public key; and 3) launch the provisioning code on the circuit.Type: GrantFiled: August 21, 2013Date of Patent: August 4, 2015Assignee: Freescale Semiconductor, Inc.Inventors: David H. Hartley, Thomas E. Tkacik, Carlin R. Covey, Lawrence L. Case, Rodney D. Ziolkowski
-
Patent number: 9094205Abstract: Embodiments of methods of provisioning an electronic circuit enable security of sensitive data in a design and manufacturing process that includes multiple parties. In an illustrative embodiment, a method of provisioning an electronic circuit includes generating at least one secret value, embedding the at least one secret value into the electronic circuit, programming into the electronic circuit a private key derivation function that derives the private key from the at least one secret value and a trust anchor, and programming into the electronic circuit a public key generation function that generates a public key matching the private key. The method can further include receiving for execution trust anchor-authenticated logic that contacts a predetermined actor of the plurality of distinct actors and communicates to the predetermined actor a message signed with the private key.Type: GrantFiled: August 31, 2012Date of Patent: July 28, 2015Assignee: Freescale Semiconductor, Inc.Inventors: David H. Hartley, Thomas E. Tkacik, Carlin R. Covey, Lawrence L. Case, Rodney D. Ziolkowski