IP Library Granted Patent US 7,769,909
Granted Patent B2
US 7,769,909 · App. 11/566,555 · Granted Aug 3, 2010

Device and method for access time reduction by speculatively decoding non-memory read commands on a serial interface

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,769,909
App. No.
11/566,555
Granted
Aug 3, 2010
Kind
B2
Abstract

An apparatus and method of speculatively decoding non-memory read commands. A command register and decoder, within the apparatus, compares high-order command bits provided on a serial bus with corresponding bits of recognized non-memory read commands. An early non-memory read command is asserted when incoming command bits match a non-memory read command. Early responsive data is prepared speculatively during the time the remainder of command bits is received and decoded. A determination of command speculation correctness is made after receipt of the full command. If the full command received is not the speculated non-memory read command, the prepared data is discarded. Earlier prepared data is produced as the subsystem response if the full command matches the speculative non-memory read command. For incoming commands with operands, such as an address, the same speculative determination based on high-order operand bits is performed.

Claims (32)

1. A speculative command decode serial interface device comprising:

an input line configured to serially receive command bits;

a command register and decoder configured to decode a high-order portion of the command bits received serially on the same input line and produce a non-memory read command based on the higher-order portion of the command bits;

at least one data register for retaining data associated with a corresponding non-memory read command;

an interface logic block configured to produce a selection of non-memory read data and enable output of non-memory read data from the serial interface device, the interface logic block coupled to the command register and decoder and the at least one data register;

a data multiplexer configured to provide read data from a selected one of the at least one data register the data multiplexer coupled to the at least one data register and the interface logic block;

a data sequencer configured to queue read data, the data sequencer coupled to the interface logic block and the output of the data multiplexer;

and an output register configured to output read data based on an enabling indication from the interface logic block, the output register coupled to the data sequencer and the interface logic block.

2. The speculative command decode serial interface device of claim 1 , wherein the command register and decoder is configured to produce the non-memory read command upon determining an equivalence in corresponding bit positions between the non-memory read command and the high-order portion of the command bits.

3. The speculative command decode serial interface device of claim 1 , wherein the command register and decoder is configured to produce the non-memory read command prior to receipt of a complete set of the command bits.

4. The speculative command decode serial interface device of claim 1 , wherein the interface logic block is configured to produce a selection of non-memory read data based on the type of non-memory read command produced by the command register and decoder.

5. The speculative command decode serial interface device of claim 1 , wherein the interface logic block is configured to enable output of the non-memory read data upon receipt of a complete non-memory read command from the command register and decoder, receipt of the complete non-memory read command confirming the non-memory read command speculatively produced.

6. The speculative command decode serial interface device of claim 1 , wherein the interface logic block is configured to produce a selection of non-memory read data or memory read data upon receipt of a complete non-memory read command or memory read command respectively, from the command register and decoder.

7. The speculative command decode serial interface device of claim 1 , wherein the interface logic block is configured to enable outputting a selection of non-memory read data or memory read data upon receipt of a complete read command, the complete read command confirming either the non-memory read data or the memory read data selection.

8. The speculative command decode serial interface device of claim 1 , wherein the data multiplexer is configured to provide non-memory read data to the data sequencer according to the selection produced from the corresponding non-memory read command.

9. The speculative command decode serial interface device of claim 1 , wherein the data sequencer is configured to output the non-memory read data upon an enabling indication from the interface logic block, the enabling indication produced subsequent to the command register and decoder receiving a complete non-memory read command.

10. The speculative command decode serial interface device of claim 1 , wherein the data sequencer is configured to output non-memory read data or memory read data upon an enabling indication from the interface logic block, the respective enabling indication produced subsequent to the command register and decoder receiving a complete non-memory read command or a complete memory read command.

11. A speculative command decode serial interface device comprising:

a means for decoding a high-order portion of command bits received serially on the same input line and producing a non-memory read command based on the higher-order portion of the command bits;

at least one means for retaining non-memory read data related to a corresponding non-memory read command;

a means for determining data configured to determine a selection of non-memory read data and enable output of non-memory read data from the serial interface device, the means for determining coupled to the means for decoding and the at least one means for retaining;

a means for selecting data from one of the at least one means for retaining, the means for selecting being coupled to the at least one means for retaining and the means for determining;

a means for queuing data coupled to the means for determining and the means for selecting;

and a means for outputting read data based on an enabling indication from the means for determining, the means for outputting coupled to the means for queuing and the means for determining.

12. The speculative command decode serial interface device of claim 11 , wherein the means for decoding speculatively is configured to produce the non-memory read command upon determining an equivalence in corresponding bit positions between the non-memory read command and the high-order portion of the command bits.

13. The speculative command decode serial interface device of claim 11 , wherein the means for decoding speculatively is configured to produce the non-memory read command prior to receipt of a complete set of the command bits.

14. The speculative command decode serial interface device of claim 11 , wherein the means for determining is configured to produce a selection of non-memory read data based on the type of non-memory read command produced by the means for decoding.

15. The speculative command decode serial interface device of claim 11 , wherein the means for determining is configured to enable outputting of the non-memory read data upon receipt of a complete non-memory read command from the means for decoding, receipt of the complete non-memory read command confirming the non-memory read command produced.

16. The speculative command decode serial interface device of claim 11 , wherein the means for determining is configured to produce a selection of non-memory read data or memory read data upon receipt of a complete non-memory read command or memory read command respectively, from the means for decoding.

17. The speculative command decode serial interface device of claim 11 , wherein the means for determining is configured to enable outputting of a selection of either type of read data upon receipt of a complete read command, receipt of the complete read command confirming either the non-memory read data or the memory read data selection.

18. The speculative command decode serial interface device of claim 11 , wherein the means for selecting is configured to provide non-memory read data to the means for queuing according to the selection produced from the corresponding non-memory read command.

19. The speculative command decode serial interface device of claim 11 , wherein the means for queuing is configured to output the non-memory read data upon an enabling indication from the means for determining, the enabling indication produced subsequent to the means for decoding receiving a complete non-memory read command.

Assignments (10)
RELEASE OF SECURITY INTEREST Recorded Sep 24, 2019
From: OBSIDIAN AGENCY SERVICES, INC., AS COLLATERAL AGENT
To: ADESTO TECHNOLOGIES CORPORATION; ARTEMIS ACQUISITION LLC
Reel/Frame 050480/0836 →
RELEASE OF SECURITY INTEREST Recorded May 9, 2019
From: OPUS BANK
To: ADESTO TECHNOLOGIES CORPORATION; ARTEMIS ACQUISITION LLC
Reel/Frame 049125/0970 →
SECURITY INTEREST Recorded May 8, 2018
From: ADESTO TECHNOLOGIES CORPORATION; ARTEMIS ACQUISITION LLC
To: OBSIDIAN AGENCY SERVICES, INC., AS COLLATERAL AGENT
Reel/Frame 046105/0731 →
RELEASE OF SECURITY INTEREST Recorded Oct 3, 2017
From: WESTERN ALLIANCE BANK
To: ADESTO TECHNOLOGIES CORPORATION; ARTEMIS ACQUISITION LLC
Reel/Frame 044219/0610 →
SECURITY INTEREST Recorded May 22, 2015
From: ADESTO TECHNOLOGIES CORPORATION; ARTEMIS ACQUISITION LLC
To: OPUS BANK
Reel/Frame 035754/0580 →
RELEASE OF SECURITY INTEREST Recorded Oct 15, 2013
From: OPUS BANK
To: ADESTO TECHNOLOGIES CORPORATION; ARTEMIS ACQUISITION LLC
Reel/Frame 031414/0232 →
SECURITY AGREEMENT Recorded Oct 7, 2013
From: ADESTO TECHNOLOGIES CORPORATION; ARTEMIS ACQUISITION LLC
To: BRIDGE BANK, NATIONAL ASSOCIATION
Reel/Frame 031371/0581 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2013
From: ATMEL CORPORATION
To: ARTEMIS ACQUISITION LLC
Reel/Frame 029605/0665 →
SECURITY AGREEMENT Recorded Oct 8, 2012
From: ADESTO TECHNOLOGIES CORPORATION; ARTEMIS ACQUISITION LLC
To: OPUS BANK
Reel/Frame 029090/0922 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 2, 2007
From: HO, ON-PONG RODERICK; NGUYEN, DIXIE; PATRASCU, DINU
To: ATMEL CORPORATION
Reel/Frame 018698/0241 →