IP Library Granted Patent US 8,090,564
Granted Patent B1
US 8,090,564 · App. 10/700,601 · Granted Jan 3, 2012

Automatic generation of transaction level bus simulation instructions from bus protocol

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 8,090,564
App. No.
10/700,601
Granted
Jan 3, 2012
Kind
B1
Abstract

Generating transactional level bus simulation instructions from a bus protocol description is disclosed. A bus protocol description is accessed. From the bus protocol description, a finite state machine is generated. Transactional level bus simulation instructions are generated from the finite state machine. Then, the transaction level bus simulation instructions are stored in computer readable medium.

Claims (36)

1. A method comprising:

generating transaction level bus simulation instructions by using a bus protocol comprising;

parsing the bus protocol to generate a description suitable to derive a finite state machine representative of the bus protocol; and

generating the finite state machine by using the description; and

generating a synchronous finite state machine by using the description; and

generating an optimized finite state machine by using the synchronous finite state machine; and

generating an asynchronous finite state machine by using the optimized finite state machine; and

generating hypercubes, where a given hypercube describes possible sequences of events associated with a single transition in the optimized finite sate machine; and

generating the transaction level bus simulation instructions by using the asynchronous finite state machine; and

simulating a plurality of different designs for a bus by executing the same transaction level bus simulating instructions

2. The method of claim 1 , wherein the generating the finite state machine comprises:

annotating the synchronous finite state machine with values to indicate positions of events in a pipeline.

3. A non-transitory computer-readable storage device including computer-executable instruction sorted therein, the computer-executable instructions comprising:

instructions to generate transaction level bus simulation instructions by using a bus protocol comprising;

instructions to parse the bus protocol to generate a description suitable to derive a finite state machine representative of the bus protocol; and

instructions to generate the finite state machine by using the description; and

instructions to generate a synchronous finite state machine by using the description; and

instructions to generate an optimized finite state machine by using the synchronous finite state machine; and

instructions to generate an asynchronous finite state machine by using the optimized finite state machine; and

instructions to generate hypercubes, where a given hypercube describes possible sequences of events associated with a single transition in the optimized finite sate machine; and

instructions to generate the transaction level bus simulation instructions by using the asynchronous finite state machine; and

instructions to simulate a plurality of different designs for a bus by executing the same transaction level bus simulating instructions.

4. The computer-readable storage device of claim 3 , wherein the instructions to generate the finite state machine comprise:

instructions to annotate the finite state machine with values to indicate positions of events in a pipeline.

5. A device comprising:

a memory including a plurality of instructions; and

a processor operable to execute the instructions to generate transaction level bus simulation instructions by using a bus protocol; and

the processor is further operable to execute the instructions to parse the bus protocol to generate a description suitable to derive a finite state machine repressive of the bus protocol; and

the processor is further operable to execute the instructions to generate the finite state machine by using the description; and

the processor is further operable to execute the instructions to generate a synchronous finite state machine by using the description, and wherein the processor is operable to execute the instructions to generate an optimized finite state machine by using the synchronous finite state machine; and

the processor is further operable to execute the instruction to generate a synchronous finite stat machine by using the description, and wherein the processor is operable to execute the instruction to generate an optimized finite sate machine by using the synchronous finite state machine; and

the processor is further operable to execute the instructions to generate an asynchronous finite state machine by using the optimized finite state machine; and

the processor is further operable to execute the instructions to generate hypercubes, wherein a given hypercube describes possible sequences of events associated with a single transition in the optimized finite state machine; and

wherein the processor is operable to execute the instructions to generate the transaction level bus simulation instructions by using the asynchronous finite state machine; and

wherein the processor is operable to execute the instructions to simulate a plurality of different designs for a bus by executing same transaction level bus simulation instructions.

6. The device of claim 5 , wherein the processor is operable to execute the instructions to annotate the synchronous finite state machine with values to indicate positions of events in a pipeline.

Assignments (2)
RELEASE OF SECURITY INTEREST Recorded Jan 8, 2026
From: VENTURE LENDING & LEASING IV, INC.
To: COWARE, INC.
Reel/Frame 073403/0314 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2012
From: COWARE, LLC
To: SYNOPSYS, INC.
Reel/Frame 029159/0466 →