Multiprocessor Architecture Watch
Concurrency Abstraction Watch

Multiprocessor Communication Architecture View

Communication architecture design in Tipi is based on the network-on-chip paradigm. Tipi's Multiprocessor View portrays the system architectureat the coarsest level of granularity. In this view, the basic blocks are processing elements and interconnect hardware components such as buses and switches. Architects construct network topologies using an extendable library of network-on-chip components.

Like the Processing Element Architecture and Memory Views, the Multiprocessor View is based on a formal model of computation that gives the model functional semantics. This provides two major benefits. First, it enables a correct-by-construction synthesis path from the complete multiprocessor architecture model to an implementation, such as a synthesizable HDL model or a compiled-code cycle-accurate simulator. Second, the model of computation makes the capabilities of the communication architecture explicit. With this knowledge Tipi can export the correct programmer's model for the architecture to the application designer. Later, we use this information to map applications onto architectures in a disciplined way.

The Multiprocessor View offers many opportunities for design-space exploration. One of the most important axes of the design space in this view is system programmability. Architects must decide how much flexibility to build in to the communication architecture. Flexibility of communications is the distinguishing characteristic between systems that are highly tuned towards one application domain and those that are useful for a range of application domains. For example, an architect may choose to replace hardwired bus interface units with programmable communication assist coprocessors. This change would allow a system that previously implemented only one style of communications to implement a family of communications styles. This affects the programmer's model that is exported to the application designer, and broadens the class of applications that the system can implement. The Multiprocessor View exists to help the architect explore the tradeoffs that are associated with this sort of design choice.

Send feedback to mescal@gigascale.org
You are not logged in 
©2002-2018 U.C. Regents