Abstract:
Methods and an apparatus for storing information in a processing device with flexible security are disclosed. In one embodiment, an apparatus processes back-to-back write and read operations without stalling the processor. A cache memory subsystem buffers write operations between a central processing unit (CPU) and the cache memory subsystem. Included in the cache memory subsystem are a tag memory, a data memory and a store buffer. The store buffer is coupled to both the data memory and the tag memory. Additionally, the store buffer stores a write operation.
Abstract:
Methods of maintaining cache coherency of a virtual cache memory system in a data processing system are disclosed. The entries of the virtual cache memory include physical address information and logical address information. A memory access operation may be initiated on one or more predetermined memory locations based on physical address information. A determination may be made if the memory access operation may involve cache coherent memory. If the memory access operation may involve cache coherent memory, then a cache coherency command may be issued that contains physical address information of the memory access operation. Based on the cache coherency command and the physical address information, a determination may be made if there is a match between the physical address information of the memory access operation and the physical address information stored in the virtual cache. If there is a match, then a determination may be made whether data associated with the particular entry of the virtual cache memory is dirty. If the data associated with the particular entry of the virtual cache memory is dirty, then a write back operation may be initiated, and data in the particular entry of the virtual cache memory may be written to memory. A command may then be issued that indicates that the virtual cache memory and the memory locations of the memory access operation are cohered, and the memory access operation may be completed. A determination also may be made whether the memory access operation is a write operation. If the memory access operation is a write operation, then the particular entry of the virtual cache memory may be invalidated. The virtual cache memory may be included in a single chip microprocessor, and a device external to the single chip microprocessor may initiate the memory access operation. A circuit that bridges between the external device and an internal bus may receive a command from the external device to initiate the memory access operation.
Abstract:
Methods of widening the permission for a memory access in a data processing system having a virtual cache memory and a translation lookaside buffer are disclosed. A memory access operation is initiated on a predetermined memory location based on logical address information and permission information associated with the memory access operation. The virtual cache memory is accessed and a determination may be made if there is a match between logical address information of the memory access operation and logical address information stored in the entries of the virtual cache. In the event of a match, then a determination may be made based on the permission information of the memory access operation and the permission information of the particular entry of the virtual cache memory as to whether the memory access operation is permitted. If the memory access operation is not permitted by the permission information of the particular entry of the virtual cache memory, then the translation lookaside buffer may be accessed based on the logical address information of the particular entry of the virtual cache memory. If there is a match between the logical address information of the particular entry of the virtual cache memory and the logical address information of a particular entry of the translation lookaside buffer, then a determination may be made based on the permission information of the memory access operation and the permission information of the particular entry of the translation lookaside buffer as to whether the memory access operation is permitted by the permission information of the particular entry of the translation lookaside buffer. If the memory access operation is permitted by the permission information of the particular entry of the translation lookaside buffer, then the permission information of the particular entry of the virtual cache memory may be updated based on the permission information of the particular entry of the translation lookaside buffer and the memory access operation may be completed.
Abstract:
Methods of widening the permission for a memory access in a data processing system having a virtual cache memory and a translation lookaside buffer are disclosed. A memory access operation is initiated on a predetermined memory location based on logical address information and permission information associated with the memory access operation. The virtual cache memory is accessed and a determination may be made if there is a match between logical address information of the memory access operation and logical address information stored in the entries of the virtual cache. In the event of a match, then a determination may be made based on the permission information of the memory access operation and the permission information of the particular entry of the virtual cache memory as to whether the memory access operation is permitted. If the memory access operation is not permitted by the permission information of the particular entry of the virtual cache memory, then the translation lookaside buffer may be accessed based on the logical address information of the particular entry of the virtual cache memory. If there is a match between the logical address information of the particular entry of the virtual cache memory and the logical address information of a particular entry of the translation lookaside buffer, then a determination may be made based on the permission information of the memory access operation and the permission information of the particular entry of the translation lookaside buffer as to whether the memory access operation is permitted by the permission information of the particular entry of the translation lookaside buffer. If the memory access operation is permitted by the permission information of the particular entry of the translation lookaside buffer, then the permission information of the particular entry of the virtual cache memory may be updated based on the permission information of the particular entry of the translation lookaside buffer and the memory access operation may be completed.
Abstract:
Various embodiments of a “smart” drug delivery system are provided which includes an add-on module and a reusable or disposable drug pen in conjunction with a data management unit(s) DMU. Upon attachment to the pen, the add-on module may: determine dosage selected, injection of selected dosage, duration of injection, time of injection, whether the pen has been primed or shaken to thoroughly mix up insulin mixtures, transmit information relating to insulin dosage and injection to a data management unit, provide reminders, error warning or messages on improper usage or reuse of needles, track amount of drug remaining on board the pen or duration of usage of pen with respect to expiry of the drug on board, or provide an audible alarm for locating misplaced pen and module. Methods of using the drug delivery system are also described.
Abstract:
A container for storing material, such as welding wire. The container is adapted to be lifted by inserting a fork, or other lifting member, of a lifting device into the container. The container may comprise a fiber drum having one or more openings, or recesses, adapted to receive a fork of a lifting device. The container may be cylindrical. The container may be comprised of a cellulosic material. The container may house welding wire. A method of manufacturing a container adapted to be lifted by inserting a member of a lifting device into the container also is featured.
Abstract:
The present invention relates generally to microprocessor or microcontroller architecture, and particularly to an architecture structured to handle unaligned memory references. A method is disclosed for loading unaligned data stored in several memory locations, including a step of loading a first part of the unaligned data into a first storage location and rotating the first part from a first position to a second position in the first memory location. Next a second part of the unaligned data is loaded into a second storage location and rotated from one position to another position. Then the first storage location is combined with the second storage location using a logical operation into a result storage location. The storage locations may be, for example, 64-bit registers. The logical operation may be a bit-wise OR operation. The method may optionally include, performing masking, zero-extending and/or sign extending operations on the first storage location, when the first part of the unaligned data is in the second position of the first storage location.
Abstract:
An apparatus and method for providing an accurately regulated flow of liquid medium to a device mounted in or on a rotor of a centrifuge, comprises a scoop on the rotor having a mouth opening forwards in the direction of rotation, with a duct connecting the mouth to the device; the liquid medium being projected as a jet into the path of the rotating scoop so that the mouth chops out a mid-portion of the jet during each revolution, and feeds it to the device. Rotation rates are high, typically 50,000 rpm for devices like liquid flow density balances for mass detection, but may be less and/or variable with SFFF devices.