A network on a chip or network-on-chip (NoC or )
[This article uses the convention that "NoC" is pronounced . Therefore, it uses the convention "a" for the ]indefinite article
In grammar, an article is any member of a class of dedicated words that are used with noun phrases to mark the identifiability of the referents of the noun phrases. The category of articles constitutes a part of speech.
In English, both "the ...
corresponding to NoC ("a NoC"). Other sources may pronounce it as and therefore use "an NoC". is a
network-based
communications subsystem
A communications system is a collection of individual telecommunications networks systems, relay stations, tributary stations, and terminal equipment usually capable of interconnection and interoperation to form an integrated whole. Communic ...
on an
integrated circuit
An integrated circuit (IC), also known as a microchip or simply chip, is a set of electronic circuits, consisting of various electronic components (such as transistors, resistors, and capacitors) and their interconnections. These components a ...
("
microchip
An integrated circuit (IC), also known as a microchip or simply chip, is a set of electronic circuits, consisting of various electronic components (such as transistors, resistors, and capacitors) and their interconnections. These components a ...
"), most typically between
modules in a
system on a chip
A system on a chip (SoC) is an integrated circuit that combines most or all key components of a computer or Electronics, electronic system onto a single microchip. Typically, an SoC includes a central processing unit (CPU) with computer memory, ...
(
SoC). The modules on the IC are typically semiconductor
IP cores schematizing various functions of the
computer system
A computer is a machine that can be programmed to automatically carry out sequences of arithmetic or logical operations (''computation''). Modern digital electronic computers can perform generic sets of operations known as ''programs'', wh ...
, and are designed to be
modular in the sense of
network science
Network science is an academic field which studies complex networks such as telecommunication networks, computer networks, biological networks, Cognitive network, cognitive and semantic networks, and social networks, considering distinct eleme ...
. The network on chip is a
router-based
packet switching
In telecommunications, packet switching is a method of grouping Data (computing), data into short messages in fixed format, i.e. ''network packet, packets,'' that are transmitted over a digital Telecommunications network, network. Packets consi ...
network between SoC
modules.
NoC technology applies the theory and methods of
computer network
A computer network is a collection of communicating computers and other devices, such as printers and smart phones. In order to communicate, the computers and devices must be connected by wired media like copper cables, optical fibers, or b ...
ing to on-chip
communication
Communication is commonly defined as the transmission of information. Its precise definition is disputed and there are disagreements about whether Intention, unintentional or failed transmissions are included and whether communication not onl ...
and brings notable improvements over conventional
bus
A bus (contracted from omnibus, with variants multibus, motorbus, autobus, etc.) is a motor vehicle that carries significantly more passengers than an average car or van, but fewer than the average rail transport. It is most commonly used ...
and
crossbar communication architectures. Networks-on-chip come in many
network topologies, many of which are still experimental as of 2018.
In 2000s, researchers had started to propose a type of on-chip interconnection in the form of
packet switching
In telecommunications, packet switching is a method of grouping Data (computing), data into short messages in fixed format, i.e. ''network packet, packets,'' that are transmitted over a digital Telecommunications network, network. Packets consi ...
networks in order to address the scalability issues of
bus
A bus (contracted from omnibus, with variants multibus, motorbus, autobus, etc.) is a motor vehicle that carries significantly more passengers than an average car or van, but fewer than the average rail transport. It is most commonly used ...
-based design. Preceding researches proposed the design that routes data packets instead of routing the wires. Then, the concept of "network on chips" was proposed in 2002. NoCs improve the
scalability
Scalability is the property of a system to handle a growing amount of work. One definition for software systems specifies that this may be done by adding resources to the system.
In an economic context, a scalable business model implies that ...
of systems-on-chip and the
power efficiency
Power may refer to:
Common meanings
* Power (physics), meaning "rate of doing work"
** Engine power, the power put out by an engine
** Electric power, a type of energy
* Power (social and political), the ability to influence people or events
Ma ...
of complex SoCs compared to other communication subsystem designs. They are an
emerging technology
Emerging technologies are technologies whose development, practical applications, or both are still largely unrealized. These technologies are generally new but also include old technologies finding new applications. Emerging technologies are o ...
, with projections for large growth in the near future as
multicore
A multi-core processor (MCP) is a microprocessor on a single integrated circuit (IC) with two or more separate central processing units (CPUs), called ''cores'' to emphasize their multiplicity (for example, ''dual-core'' or ''quad-core''). Ea ...
computer architectures become more common.
Structure
NoCs can span synchronous and asynchronous clock domains, known as
clock domain crossing, or use unclocked
asynchronous
Asynchrony is any dynamic far from synchronization. If and as parts of an asynchronous system become more synchronized, those parts or even the whole system can be said to be in sync.
Asynchrony or asynchronous may refer to:
Electronics and com ...
logic. NoCs support
globally asynchronous, locally synchronous electronics architectures, allowing each
processor core
A central processing unit (CPU), also called a central processor, main processor, or just processor, is the primary Processor (computing), processor in a given computer. Its electronic circuitry executes Instruction (computing), instructions ...
or functional unit on the System-on-Chip to have its own
clock domain
In electronics, metastability is the ability of a digital electronic system to persist for an unbounded time in an unstable equilibrium or metastable state.
In digital logic circuits, a digital signal is required to be within certain voltage or ...
.
Architectures
NoC architectures typically model
sparse small-world network
A small-world network is a graph characterized by a high clustering coefficient and low distances. In an example of the social network, high clustering implies the high probability that two friends of one person are friends themselves. The l ...
s (SWNs) and
scale-free network
A scale-free network is a network whose degree distribution follows a power law, at least asymptotically. That is, the fraction ''P''(''k'') of nodes in the network having ''k'' connections to other nodes goes for large values of ''k'' as
:
P( ...
s (SFNs) to limit the number, length, area and
power consumption
Electric energy consumption is energy consumption in the form of electrical energy. About a fifth of global energy is consumed as electricity: for residential, industrial, commercial, transportation and other purposes.
The global electricity con ...
of interconnection wires and
point-to-point connections.
Topology
The topology determines the physical layout and connections between nodes and channels. The message traverses hops, and each hop's channel length depends on the topology. The topology significantly influences both
latency and power consumption. Furthermore, since the topology determines the number of alternative paths between nodes, it affects the network traffic distribution, and hence the
network bandwidth
In computing, bandwidth is the maximum rate of data transfer across a given path. Bandwidth may be characterized as network bandwidth, data bandwidth, or digital bandwidth.
This definition of ''bandwidth'' is in contrast to the field of signal ...
and performance achieved.
Benefits
Traditionally, ICs have been designed with dedicated
point-to-point connections, with one wire dedicated to each signal. This results in a
dense network topology. For large designs, in particular, this has several limitations from a
physical design viewpoint. It requires
power quadratic in the number of interconnections. The wires occupy much of the
area of the chip, and in
nanometer
330px, Different lengths as in respect to the Molecule">molecular scale.
The nanometre (international spelling as used by the International Bureau of Weights and Measures; SI symbol: nm), or nanometer (American spelling
Despite the va ...
CMOS
Complementary metal–oxide–semiconductor (CMOS, pronounced "sea-moss
", , ) is a type of MOSFET, metal–oxide–semiconductor field-effect transistor (MOSFET) semiconductor device fabrication, fabrication process that uses complementary an ...
technology, interconnects dominate both performance and dynamic
power dissipation, as signal propagation in wires across the chip requires multiple
clock cycle
In electronics and especially synchronous digital circuits, a clock signal (historically also known as ''logic beat'') is an electronic logic signal (voltage or current) which oscillates between a high and a low state at a constant frequency and ...
s. This also allows more
parasitic capacitance
Parasitic capacitance or stray capacitance is the unavoidable and usually unwanted capacitance that exists between the parts of an electronic component or circuit simply because of their proximity to each other. When two electrical conductors a ...
,
resistance and inductance to accrue on the circuit. (See
Rent's rule for a discussion of wiring requirements for point-to-point connections).
Sparsity
In numerical analysis and scientific computing, a sparse matrix or sparse array is a matrix in which most of the elements are zero. There is no strict definition regarding the proportion of zero-value elements for a matrix to qualify as sparse ...
and
locality of interconnections in the communications subsystem yield several improvements over traditional
bus
A bus (contracted from omnibus, with variants multibus, motorbus, autobus, etc.) is a motor vehicle that carries significantly more passengers than an average car or van, but fewer than the average rail transport. It is most commonly used ...
-based and
crossbar-based systems.
Parallelism and scalability
The wires in the links of the network-on-chip are shared by many
signals
A signal is both the process and the result of Signal transmission, transmission of data over some transmission media, media accomplished by embedding some variation. Signals are important in multiple subject fields including signal processin ...
. A high level of
parallelism is achieved, because all
data link
A data link is a means of telecommunications link, connecting one location to another for the purpose of transmitting and receiving digital information (data communication). It can also refer to a set of electronics assemblies, consisting of a t ...
s in the NoC can operate simultaneously on different
data packets. Therefore, as the complexity of
integrated systems keeps growing, a NoC provides enhanced performance (such as
throughput
Network throughput (or just throughput, when in context) refers to the rate of message delivery over a communication channel in a communication network, such as Ethernet or packet radio. The data that these messages contain may be delivered ov ...
) and
scalability
Scalability is the property of a system to handle a growing amount of work. One definition for software systems specifies that this may be done by adding resources to the system.
In an economic context, a scalable business model implies that ...
in comparison with previous communication architectures (e.g., dedicated point-to-point signal
wire
file:Sample cross-section of high tension power (pylon) line.jpg, Overhead power cabling. The conductor consists of seven strands of steel (centre, high tensile strength), surrounded by four outer layers of aluminium (high conductivity). Sample d ...
s, shared
buses
A bus (contracted from omnibus, with variants multibus, motorbus, autobus, etc.) is a motor vehicle that carries significantly more passengers than an average car or van, but fewer than the average rail transport. It is most commonly used ...
, or segmented buses with
bridges
A bridge is a structure built to span a physical obstacle (such as a body of water, valley, road, or railway) without blocking the path underneath. It is constructed for the purpose of providing passage over the obstacle, which is usually somet ...
). The
algorithm
In mathematics and computer science, an algorithm () is a finite sequence of Rigour#Mathematics, mathematically rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algo ...
s must be designed in such a way that they offer
large parallelism and can hence utilize the potential of NoC.
Current research
Some researchers think that NoCs need to support
quality of service
Quality of service (QoS) is the description or measurement of the overall performance of a service, such as a telephony or computer network, or a cloud computing service, particularly the performance seen by the users of the network. To quantitat ...
(QoS), namely achieve the various requirements in terms of
throughput
Network throughput (or just throughput, when in context) refers to the rate of message delivery over a communication channel in a communication network, such as Ethernet or packet radio. The data that these messages contain may be delivered ov ...
, end-to-end delays,
fairness, and
deadlines. Real-time computation, including audio and video playback, is one reason for providing QoS support. However, current system implementations like
VxWorks
VxWorks is a real-time operating system (or RTOS) developed as proprietary software by Wind River Systems, a subsidiary of Aptiv. First released in 1987, VxWorks is designed for use in embedded systems requiring real-time, Deterministic system, ...
,
RTLinux
RTLinux is a hard realtime real-time operating system (RTOS) microkernel that runs the entire Linux operating system as a fully preemptive process. The hard real-time property makes it possible to control robots, data acquisition systems, man ...
or
QNX are able to achieve sub-millisecond real-time computing without special hardware.
This may indicate that for many
real-time
Real-time, realtime, or real time may refer to:
Computing
* Real-time computing, hardware and software systems subject to a specified time constraint
* Real-time clock, a computer clock that keeps track of the current time
* Real-time Control Syst ...
applications the service quality of existing on-chip interconnect infrastructure is sufficient, and dedicated
hardware logic would be necessary to achieve microsecond precision, a degree that is rarely needed in practice for end users (sound or video jitter need only tenth of milliseconds latency guarantee). Another motivation for NoC-level
quality of service
Quality of service (QoS) is the description or measurement of the overall performance of a service, such as a telephony or computer network, or a cloud computing service, particularly the performance seen by the users of the network. To quantitat ...
(QoS) is to support multiple concurrent users sharing resources of a single
chip multiprocessor in a public
cloud computing
Cloud computing is "a paradigm for enabling network access to a scalable and elastic pool of shareable physical or virtual resources with self-service provisioning and administration on-demand," according to International Organization for ...
infrastructure. In such instances, hardware QoS logic enables the service provider to make
contractual guarantees on the level of service that a user receives, a feature that may be deemed desirable by some corporate or government clients.
Many challenging research problems remain to be solved at all levels, from the physical link level through the network level, and all the way up to the system architecture and application software. The first dedicated research symposium on networks on chip was held at
Princeton University
Princeton University is a private university, private Ivy League research university in Princeton, New Jersey, United States. Founded in 1746 in Elizabeth, New Jersey, Elizabeth as the College of New Jersey, Princeton is the List of Colonial ...
, in May 2007. The second
IEEE
The Institute of Electrical and Electronics Engineers (IEEE) is an American 501(c)(3) organization, 501(c)(3) public charity professional organization for electrical engineering, electronics engineering, and other related disciplines.
The IEEE ...
International Symposium on Networks-on-Chip was held in April 2008 at
Newcastle University
Newcastle University (legally the University of Newcastle upon Tyne) is a public research university based in Newcastle upon Tyne, England. It has overseas campuses in Singapore and Malaysia. The university is a red brick university and a mem ...
.
Research has been conducted on integrated
optical waveguides and devices comprising an optical network on a chip (ONoC).
The possible way to increasing the performance of NoC is use wireless communication channels between
chiplets — named wireless network on chip (WiNoC).
Side benefits
In a multi-core system, connected by NoC, coherency messages and cache miss requests have to pass switches. Accordingly, switches can be augmented with simple tracking and forwarding elements to detect which cache blocks will be requested in the future by which cores. Then, the forwarding elements multicast any requested block to all the cores that may request the block in the future. This mechanism reduces cache miss rate.
Benchmarks
NoC development and studies require comparing different proposals and options. NoC traffic patterns are under development to help such evaluations. Existing NoC benchmarks include NoCBench and MCSL NoC Traffic Patterns.
Interconnect processing unit
An interconnect processing unit (IPU)
[Marcello Coppola, Miltos D. Grammatikakis, Riccardo Locatelli, Giuseppe Maruccia, Lorenzo Pieralisi, "Design of Cost-Efficient Interconnect Processing Units: Spidergon STNoC", CRC Press, 2008, ] is an on-chip communication network with
hardware and
software
Software consists of computer programs that instruct the Execution (computing), execution of a computer. Software also includes design documents and specifications.
The history of software is closely tied to the development of digital comput ...
components which jointly implement key functions of different
system-on-chip
A system on a chip (SoC) is an integrated circuit that combines most or all key components of a computer or electronic system onto a single microchip. Typically, an SoC includes a central processing unit (CPU) with memory, input/output, and da ...
programming models through a set of communication and
synchronization primitive
In computer science, synchronization is the task of coordinating multiple processes to join up or handshake at a certain point, in order to reach an agreement or commit to a certain sequence of action.
Motivation
The need for synchronization ...
s and provide
low-level platform services to enable advanced features in modern heterogeneous applications on a single
die.
See also
*
Arteris
*
Electronic design automation
Electronic design automation (EDA), also referred to as electronic computer-aided design (ECAD), is a category of software tools for designing Electronics, electronic systems such as integrated circuits and printed circuit boards. The tools wo ...
(EDA)
*
Integrated circuit design
Integrated circuit design, semiconductor design, chip design or IC design, is a sub-field of electronics engineering, encompassing the particular Boolean logic, logic and circuit design techniques required to design integrated circuits (ICs). A ...
*
CUDA
In computing, CUDA (Compute Unified Device Architecture) is a proprietary parallel computing platform and application programming interface (API) that allows software to use certain types of graphics processing units (GPUs) for accelerated gene ...
*
Globally asynchronous, locally synchronous
*
Network architecture
Network architecture is the design of a computer network. It is a framework for the specification of a network's physical components and their functional organization and configuration, its operational principles and procedures, as well as commun ...
Notes
References
Adapted fro
Avinoam Kolodny'ss column in the AC
SIGDA
b
Igor Markov
The original text can be found at http://www.sigda.org/newsletter/2006/060415.txt
Further reading
*
*
*
*
*
External links
DATE 2006 workshop on NoCNoCS 2007 - The 1st ACM/IEEE International Symposium on Networks-on-ChipNoCS 2008 - The 2nd IEEE International Symposium on Networks-on-Chip* Jean-Jacques Lecler, Gilles Baillieu, ''Design Automation for Embedded Systems (Springer), "Application driven network-on-chip architecture exploration & refinement for a complex SoC", June 2011, Volume 15, Issue 2, pp 133–158,
doi:10.1007/s10617-011-9075-5 nlinehttp://www.arteris.com/hs-fs/hub/48858/file-14363521-pdf/docs/springer-appdrivennocarchitecture8.5x11.pdf''
{{Hardware acceleration
Electronic design automation
Integrated circuits
System on a chip
Hardware acceleration
Network theory
Computer networking
Parallel computing
Communication circuits
Modularity