Abstract:
A method and apparatus for including in a processor instructions for performing multiply-subtract operations on packed data. In one embodiment, a processor is coupled to a memory. The memory has stored therein a first packed data and a second packed data. The processor performs operations on data elements in said first packed data and said second packed data to generate a third packed data in response to receiving an instruction. At least one of the data elements in this third packed data storing the result of performing a multiply-subtract operation on data elements in the first and second packed data.
Abstract:
A method for manipulating packed data in a computer system. The method includes the steps of decoding a Single Instruction Multiple Data (SIMD) pack instruction. The instruction identifies a first and second packed data respectively including a first plurality of data elements and a second plurality of data elements. Each data element consists of a separate multiple bit data field, wherein each data element in the first plurality of data elements corresponds to a data element in the second plurality of data elements in a respective position. The method further includes the step of simultaneously copying, in response to the pack instruction, a part of each data element in the first plurality of data elements and a part of each corresponding data element in the second plurality of data elements into a third packed data as a plurality of separate result data elements.
Abstract:
A method for executing different sets of instructions that cause a processor to perform different data type operations in a manner that is invisible to various operating system techniques, that promotes good programming practices, and that is invisible to existing software conventions. According to one aspect of the invention, a data processing apparatus executes a first set of instructions of a first instruction type on what at least logically appears to software as a single logical register file. While the data processing apparatus is executing the first set of instructions, the single logical register file appears to be operated as a flat register file. In addition, the data processing apparatus executes a first instruction of a second instruction type using the logical register file. However, while the data processing apparatus is executing the first instruction, the logical register file appears to be operated as a stack referenced register file. Furthermore, the data processing apparatus alters all tags in a set of tags corresponding to the single logical register file to a non-empty state sometime between starting the execution of the first set of instructions and completing the execution of the first instruction. The tags identifying whether registers in the single logical register file are empty or non-empty.
Abstract:
A computerized method of terminating audio telephone calls that provides the other party with more information as to why the telephone call was terminated. This method, which is particularly useful for computerized smartphones equipped with voice and data channel communications methods, automatically provides the user with a variety of different informative text messages that can be selected by the user and sent to the other party at the time that a voice call is terminated.
Abstract:
Method of controlling playback of Internet web page video on remote or high quality video displays using a remote control device, such as a smart phone. The method runs a first client browser on the remote control device, which in turn sends commands to a proxy browser with a data buffer. In response to user commands from the remote control device, the proxy browser retrieves and buffers video and non-video web page data from Internet servers, and sends this data to the remote control device. Upon user command, the proxy browser also sends selected buffered data to a second client browser that is connected to the remote or high quality video display. Media player playback commands on the remote control are echoed to a second media player on the second client browser, resulting in good synchronization between devices. Various compression, IP address adjustment, and public key methods are also discussed.
Abstract:
Method of using a computerized smartphone to navigate remote auto attendant telephony systems with a menu structure. The auto attendant's menu structure is put into an online computer database. The caller uses the smartphone to call and establish a voice channel with remote auto attendant telephony system (using the telephone number of that system), software applications running on the caller's smartphone communication device intercept the telephone number and along with the voice channel, also establish a data channel with the online computer accessible database. The caller's smartphone retrieves at least some of the menu structure of the auto attendant telephony system through this data channel, and displays at least some of the menu structure of the remote auto attendant telephony system on the graphical user interface of the user's smartphone synchronized, with the audio delivery of the menu structure, thus facilitating interactions with the auto attendant system.
Abstract:
A processor capable of secure execution. The processor contains an execution unit and secure partition logic that secures a partition in memory. The processor also contains cryptographic logic coupled to the execution unit that encrypts and decrypts secure data and code.
Abstract:
Computerized payment method using short, temporary, transaction ID (TID) symbols for secure payer (customer) financial transactions. Payees (e.g. merchants) register their unique ID telecommunications devices (e.g. Smartphone and phone number), and financial institution a payment server. When a payee (merchant) and wish to do a financial transaction, the payee requests a TID from the server for that amount. The server sends a TID to the payee, which the payee then communicates to the payer. The payer in turn relays this TID to the server, which validates the transaction using the payer device. The server then releases funds to the payee. The server preserves records for auditing, but security is enhanced because the merchant never directly accesses the customer's financial account. Use of GPS coordinates and/or payer provided Group IDs may also be used to reduce the number of symbols used in the TID while continuing to ensure uniqueness.
Abstract:
A processor capable of secure execution. The processor contains an execution unit and secure partition logic that secures a partition in memory. The processor also contains cryptographic logic coupled to the execution unit that encrypts and decrypts secure data and code.
Abstract:
Method of using a computerized smart phone to navigate remote auto attendant telephony systems with a menu structure. The auto attendant's menu structure is put into an online computer database. When the caller uses the smart phone to call and establish a voice channel with remote auto attendant telephony system (using the telephone number of that system), software applications running on the caller's smart phone communication device intercept the telephone number and along with the voice channel, also establish a data channel with the online computer accessible database. The caller's smart phone can then retrieve at least some of the menu structure of the auto attendant telephony system through this data channel. This application software can then display at least some of the menu structure of the remote auto attendant telephony system on the graphical user interface of the user's smart phone synchronized with the audio delivery of the menu structure, facilitating interactions with the auto attendant system.