Patent classifications
G06F9/30156
Dynamic designation of instructions as sensitive for constraining multithreaded execution
Described herein are systems and methods for dynamic designation of instructions as sensitive. For example, some methods include detecting that a first instruction of a first process has been designated as a sensitive instruction; checking whether a sensitive handling enable indicator in a process state register storing a state of the first process is enabled; responsive to detection of the sensitive instruction and enablement of the sensitive handling enable indicator, invoking a constraint for execution of the first instruction; executing the first instruction subject to the constraint; and executing a second instruction of the first process without the constraint.
Operation cache compression
A data processing apparatus is provided. The data processing apparatus includes fetch circuitry to fetch instructions from storage circuitry. Decode circuitry decodes each of the instructions into one or more operations and provides the one or more operations to one or more execution units. The decode circuitry is adapted to decode at least one of the instructions into a plurality of operations. Cache circuitry caches the one or more operations and at least one entry of the cache circuitry is a compressed entry that represents the plurality of operations.
Enhanced protection of processors from a buffer overflow attack
A method for changing a processor instruction randomly, covertly, and uniquely, so that the reverse process can restore it faithfully to its original form, making it virtually impossible for a malicious user to know how the bits are changed, preventing them from using a buffer overflow attack to write code with the same processor instruction changes into said processor's memory with the goal of taking control of the processor. When the changes are reversed prior to the instruction being executed, reverting the instruction back to its original value, malicious code placed in memory will be randomly altered so that when it is executed by the processor it produces chaotic, random behavior that will not allow control of the processor to be compromised, eventually producing a processing error that will cause the processor to either shut down the software process where the code exists to reload, or reset.
Transceiver and driver architecture with low emission and high interference tolerance
Circuitry of a physical layer for interfacing with a communication bus of a wired local area network is disclosed. The circuitry includes a variable delay driver operably coupled to a communication bus. The communication bus includes a shared transmission medium. The variable delay driver is configured to control a slew rate of a driven transmit signal at the driver output. The circuitry also includes receiver circuitry operably coupled to the communication bus. The circuitry further includes a common mode dimmer operably coupled to the receiver circuitry and the communication bus. The common mode dimmer is configured to protect the receiver circuitry from common mode interference.
Microprocessor for metering electric energy, microcontroller unit thereof, and circuit and method for metering energy accumulation
A microprocessor for metering electric energy, a microcontroller unit thereof, and a circuit and a method for metering energy accumulation. The circuit for metering energy accumulation includes a calculation-comparison circuit and a counter circuit that are connected. The calculation-comparison circuit is configured to: calculate an accumulation of a value of power in power consumption data and a value of current energy, and a difference between the accumulation and a preset threshold; output a flag bit, characterizing whether the difference being less than zero, to the counter circuit; set the value of current energy to be the difference in a case that the difference is not less than zero; and set the value of current energy to be the accumulation in a case that the difference is less than zero. Calculation in electric energy metering is specifically implemented, effectively improving electric energy metering efficiency and product economic benefit.
Pipelines for Secure Multithread Execution
Described herein are systems and methods for secure multithread execution. For example, some methods include fetching an instruction of a first thread from a memory into a processor pipeline that is configured to execute instructions from two or more threads in parallel using execution units of the processor pipeline; detecting that the instruction has been designated as a sensitive instruction; responsive to detection of the sensitive instruction, disabling execution of instructions of threads other than the first thread in the processor pipeline during execution of the sensitive instruction by an execution unit of the processor pipeline; executing the sensitive instruction using an execution unit of the processor pipeline; and, responsive to completion of execution of the sensitive instruction, enabling execution of instructions of threads other than the first thread in the processor pipeline.
Dynamic Designation of Instructions as Sensitive
Described herein are systems and methods for dynamic designation of instructions as sensitive. For example, some methods include detecting that a first instruction of a first process has been designated as a sensitive instruction; checking whether a sensitive handling enable indicator in a process state register storing a state of the first process is enabled; responsive to detection of the sensitive instruction and enablement of the sensitive handling enable indicator, invoking a constraint for execution of the first instruction; executing the first instruction subject to the constraint; and executing a second instruction of the first process without the constraint.
MICROPROCESSOR FOR METERING ELECTRIC ENERGY, MICROCONTROLLER UNIT THEREOF, AND CIRCUIT AND METHOD FOR METERING ENERGY ACCUMULATION
A microprocessor for metering electric energy, a microcontroller unit thereof, and a circuit and a method for metering energy accumulation. The circuit for metering energy accumulation includes a calculation-comparison circuit and a counter circuit that are connected. The calculation-comparison circuit is configured to: calculate an accumulation of a value of power in power consumption data and a value of current energy, and a difference between the accumulation and a preset threshold; output a flag bit, characterizing whether the difference being less than zero, to the counter circuit; set the value of current energy to be the difference in a case that the difference is not less than zero; and set the value of current energy to be the accumulation in a case that the difference is less than zero. Calculation in electric energy metering is specifically implemented, effectively improving electric energy metering efficiency and product economic benefit.
Array broadcast and reduction systems and methods
The present disclosure is directed to systems and methods of performing one or more broadcast or reduction operations using direct memory access (DMA) control circuitry. The DMA control circuitry executes a modified instruction set architecture (ISA) that facilitates the broadcast distribution of data to a plurality of destination addresses in system memory circuitry. The broadcast instruction may include broadcast of a single data value to each destination address. The broadcast instruction may include broadcast of a data array to each destination address. The DMA control circuitry may also execute a reduction instruction that facilitates the retrieval of data from a plurality of source addresses in system memory and performing one or more operations using the retrieved data. Since the DMA control circuitry, rather than the processor circuitry performs the broadcast and reduction operations, system speed and efficiency is beneficially enhanced.
CONTROLLING THE OPERATION OF A DECOUPLED ACCESS-EXECUTE PROCESSOR
Data processing apparatuses, methods of data processing, instructions, and simulator computer programs for providing a corresponding instruction execution environment are disclosed. Decode circuitry is responsive to an instance of a predetermined instruction type to cause issue circuitry to issue at least one subsequent instruction for execution to one of first and second instruction execution circuitry which support decoupled access-execute instruction execution. The predetermined instruction type is thus a steering instruction for at least one subsequent instruction and the programmer is provided with a mechanism for determining which program instructions are treated as access instructions and which are treated as execute instructions.