Abstract: A method and apparatus for automatic configuration of multiple on-chip interconnects have been described. In one embodiment, the invention reduces the configuration time of several on-chip network features, and also ensures that these features are configured correctly to minimize errors in a design.
Abstract: Various methods and apparatus are described for a memory scheduler. The memory scheduler couples to a target memory core that includes a bank of memories. The memory scheduler contains two or more configurable address tiling functions to transform an incoming address of data requested in a request to the target memory core to determine what physical addresses in the bank of memories will service the first request. The two or more configurable address tiling functions are programmable by a user to create two or more distinctly different memory regions in the target memory core. Each memory region has its own distinct tiling function based on configuration parameters 1) selected by the user and 2) stored in tiling registers in the memory scheduler. The multiple tiling functions are configured to operate concurrently in the integrated circuit.
Type:
Application
Filed:
March 12, 2009
Publication date:
September 17, 2009
Applicant:
SONICS, INC.
Inventors:
Krishnan Srinivasan, Drew E. Wingard, Vida Vakilotojar, Chien-Chun Chou
Abstract: Methods and apparatuses are described for a communication system. The communication system comprises an initiator core supporting a first burst capability as well as a target core supporting a second burst capability. The supported burst features of the second burst capability differ from the supported burst features of the first burst capability. The communication system also comprises an agent coupled to the initiator core, which comprises logic to compute target-dependent burst support information across multiple groups of potential targets at the same time. The logic then selects the correct target-dependent information based upon a resulting address decode for the target selection.
Type:
Grant
Filed:
March 10, 2005
Date of Patent:
June 2, 2009
Assignee:
Sonics, Inc.
Inventors:
Wolf-Dietrich Weber, Joseph Harwood, Michael Meyer, Drew Wingard
Abstract: Methods and apparatuses are described for a communication system. The communication system may include one or more initiator agents, where each agent couples to its own Intellectual Property core. The communication system may also include two or more target agents, where each agent couples to its own Intellectual Property core. The communication system may also include an interconnect using an end-to-end width conversion mechanism. The conversion mechanism converts data widths between the initiator agent and a first target agent. Two or more branches of pathways in the interconnect exist between the initiator agent and the two or more target agents. The conversion mechanism to use a lookup table that includes data width information of the initiator agent and the two or more branches of pathways to the two or more target agents to concurrently pre-compute width conversion signals for each of the target agent branches.
Abstract: An interconnect for an integrated circuit communicating transactions between initiator Intellectual Property (IP) cores and multiple target IP cores coupled to the interconnect is generally described. The interconnect routes the transactions between the target IP cores and initiator IP cores in the integrated circuit. A first aggregate target of the target IP cores includes two or more memory channels that are interleaved in an address space for the first aggregate target in the address map. Each memory channel is divided up in defined memory interleave segments and then interleaved with memory interleave segments from other memory channels. An address map is divided up into two or more regions. Each interleaved memory interleave segment is assigned to at least one of those regions and populates the address space for that region, and parameters associated with the regions and memory interleave segments are configurable.
Type:
Application
Filed:
June 24, 2008
Publication date:
December 25, 2008
Applicant:
Sonics, Inc.
Inventors:
Drew E. Wingard, Chien-Chun Chou, Stephen W. Hamilton, Ian Andrew Swarbrick, Vida Vakilotojar
Abstract: A method, apparatus, and system are described, which generally relate to an integrated circuit having an interconnect that implements internal controls. The interconnect in an integrated circuit communicates transactions between initiator Intellectual Property (IP) cores and target IP cores coupled to the interconnect. The interconnect implements logic configured to support multiple transactions issued from a first initiator IP core to the multiple target IP cores while maintaining an expected execution order within the transactions. The logic supports a second transaction to be issued from the first initiator IP core to a second target IP core before a first transaction issued from the same first initiator IP core to a first target IP core has completed while ensuring that the first transaction completes before the second transaction and while ensuring an expected execution order within the first transaction and second transaction are maintained. The logic does not include any reorder buffering.
Type:
Application
Filed:
June 24, 2008
Publication date:
December 25, 2008
Applicant:
Sonics, Inc.
Inventors:
Drew E. Wingard, Chien-Chun Chou, Stephen W. Hamilton, Ian Andrew Swarbrick, Vida Vakilotojar
Abstract: A method, apparatus, and system are described, which generally relate to an interconnect routing transactions to target IP cores, including two or more channels making up a first aggregate target. The two or more channels populate an address space assigned to the first aggregate target and appear as a single target to the initiator IP cores. The interconnect implements chopping logic to chop an individual transaction from a first initiator IP core whose address sequence crosses a channel address boundary from a first channel to a second channel within the first aggregate target into two or more burst transactions. A first chopped burst transaction is chopped to fit within the address boundaries of the first channel and a second chopped burst transaction is chopped to fit within the address boundaries of the second channel.
Type:
Application
Filed:
June 24, 2008
Publication date:
December 25, 2008
Applicant:
Sonics, Inc.
Inventors:
Drew E. Wingard, Chien-Chun Chou, Stephen W. Hamilton, Ian Andrew Swarbrick, Vida Vakilotojar
Abstract: In an embodiment, an interconnect for an integrated circuit communicates transactions between one or more initiator Intellectual Property (IP) cores and multiple target IP cores coupled to the interconnect. Two or more memory channels make up a first aggregate target of the target IP cores. The two or more memory channels populate an address space assigned to the first aggregate target and appear as a single target to the initiator IP cores. The interconnect implements chopping logic to chop individual two-dimensional (2D) transactions that cross the memory channel address boundaries from a first memory channel to a second memory channel within the first aggregate target into two or more 2D transactions with a height value greater than one, as well as stride and width dimensions, which are chopped to fit within memory channel address boundaries of the first aggregate target.
Type:
Application
Filed:
June 24, 2008
Publication date:
December 25, 2008
Applicant:
Sonics, Inc.
Inventors:
Drew E. Wingard, Chien-Chun Chou, Ian Andrew Swarbrick, Stephen W. Hamilton, Vida Vakilotojar
Abstract: Various methods and apparatuses are described for generating a model of hardware components making up an interconnect that facilitates communications between Intellectual Property blocks in an integrated circuit coded in a software programming language at a high level of abstraction that is cycle accurate to a corresponding lower level of abstraction description of the hardware components making up the interconnect. The sub-components of the model at the high level of abstraction are tested in a simulation environment in parallel with the same sub-components of a model coded in a hardware description language at the low level of abstraction in order to verify the functional accuracy and cycle timing between the two models. After the sub-components are tested, the sub-components of the model at the high level of abstraction may be aggregated into a single model at the high level of abstraction that is functionally accurate and cycle accurate to the model at the low level of abstraction.
Type:
Application
Filed:
May 19, 2008
Publication date:
October 23, 2008
Applicant:
Sonics, Inc.
Inventors:
Herve Alexanian, Chien-Chun Chou, Vida Vakilotojar, Grigor Yeghiazaryan
Abstract: Methods and apparatuses for optimizing distributed multiplexed bus interconnects are described. Parameters of components that make up a distributed multiplexed bus interconnect may be optimized, such as an amount of area on a chip occupied by the component, an amount of power consumed by the component, etc., while satisfying existing timing constraints between nodes of a distributed multiplexed bus interconnect.
Type:
Grant
Filed:
April 1, 2005
Date of Patent:
August 12, 2008
Assignee:
Sonics, Inc.
Inventors:
Michael Jude Meyer, Scott C. Evans, Kamil Synek
Abstract: Embodiments of apparatuses, systems, and methods are described for composing on-chip interconnects with configurable interfaces. A configurable interface includes a configurable agent and interface port. The configurable agent has a first input and a first output with the first input receiving a first communication. An input of a core receives the configurable agent's first output. The agent is configured for important inter-network characteristics such as topology, flooding control, clocking/reset, and performance enhancement.
Type:
Grant
Filed:
May 3, 2002
Date of Patent:
April 8, 2008
Assignee:
Sonics, Inc.
Inventors:
Wolf-Dietrich Weber, Chien-Chun Chou, Nabil N. Masri, Michael Jude Meyer, Thomas Wayne O'Connell, Kamil Synek, Jay Scott Tomlinson, Drew Eric Wingard
Abstract: Various methods and apparatuses are described in which an interconnect couples to a plurality of initiator network resources and a plurality of target network resources. The interconnect may include a first stage of circuitry, a second stage of circuitry, and an arbitration controller. The first stage of circuitry receives incoming transactions from the plurality of initiator network resources. The second stage of circuitry passes outgoing transactions to the plurality of target network resources connecting to the interconnect. The arbitration controller arbitrates transactions from the plurality of initiator network resources destined to one or more of the target network resources. The target network resources supply their availability to service a transaction to the arbitration controller.
Abstract: Embodiments of apparatuses, systems, and methods are described for communicating information between functional blocks of a system across a communication fabric. Translation logic couples to the communication fabric. The translation logic implements a higher level protocol layered on top of an underlining protocol and the communication fabric. The translation logic converts one initiator transaction into two or more write transactions and then transmits the write transactions using the underlining protocol of the communication fabric. The translation logic converts the initiator transaction into two or more write transactions and then transmits the write transactions using the underlining protocol of the communication fabric so that the communication fabric does not block or poll for responses, and that data may be transferred in a direction opposite from the initiator transaction request.
Abstract: A method and apparatus for on-chip inter-network performance optimization using configurable performance parameters have been described.
Type:
Grant
Filed:
May 3, 2002
Date of Patent:
August 7, 2007
Assignee:
Sonics, Inc.
Inventors:
Wolf-Dietrich Weber, Chien-Chun Chou, Nabil N. Masri, Michael Jude Meyer, Thomas Wayne O'Connell, Kamil Synek, Jay Scott Tomlinson, Drew Eric Wingard
Abstract: A method and apparatus for error handling in networks have been described. The method configures a plurality of cores, wherein each core is connected with and associated with each of one of a plurality of initiators. The method further connects one or more of the initiators to a network. Next, one or more of the initiators determine an error in one or more of the cores and communicate the error.
Type:
Grant
Filed:
November 1, 2002
Date of Patent:
July 10, 2007
Assignee:
Sonics, Inc.
Inventors:
Wolf-Dietrich Weber, Chien-Chun Chou, Jeffrey Allen Ebert, Stephen W. Hamilton, Michael J. Meyer
Abstract: Various methods and apparatuses are described in which a software programming interface connects one or more functional checker components and one or more protocol checker components to an interconnect monitor component. A computer readable medium stores code for the one or more functional checker components for Intellectual Property (IP) cores, one or more protocol checker components, the interconnect monitor component, and the software programming interface. The monitor component has code to build data structures containing protocol data types requested by a checker component and code on where to deliver data based upon a particular type of data requested by the checker component.
Type:
Grant
Filed:
July 24, 2003
Date of Patent:
March 20, 2007
Assignee:
Sonics, Inc.
Inventors:
Terrence Anthony Staton, Herve Jacques Alexanian, Jeffrey Allen Ebert
Abstract: The present invention provides for the scheduling of requests to one resource from a plurality of initiator devices. In one embodiment, scheduling of requests within threads and scheduling of initiator device access is performed wherein requests are only reordered between threads.
Abstract: The present invention is directed to a method and apparatus for scheduling a resource to meet quality of service guarantees. In one embodiment of three levels of priority, if a channel of a first priority level is within its bandwidth allocation, then a request is issued from that channel. If there are no requests in channels at the first priority level that are within the allocation, requests from channels at the second priority level that are within their bandwidth allocation are chosen. If there are no requests of this type, requests from channels at the third priority level or requests from channels at the first and second levels that are outside of their bandwidth allocation are issued. The system may be implemented using rate-based scheduling.