Anteprima
Vedrai una selezione di 12 pagine su 54
Embedded Systems - Advanced Operating Systems - Appunti Pag. 1 Embedded Systems - Advanced Operating Systems - Appunti Pag. 2
Anteprima di 12 pagg. su 54.
Scarica il documento per vederlo tutto.
Embedded Systems - Advanced Operating Systems - Appunti Pag. 6
Anteprima di 12 pagg. su 54.
Scarica il documento per vederlo tutto.
Embedded Systems - Advanced Operating Systems - Appunti Pag. 11
Anteprima di 12 pagg. su 54.
Scarica il documento per vederlo tutto.
Embedded Systems - Advanced Operating Systems - Appunti Pag. 16
Anteprima di 12 pagg. su 54.
Scarica il documento per vederlo tutto.
Embedded Systems - Advanced Operating Systems - Appunti Pag. 21
Anteprima di 12 pagg. su 54.
Scarica il documento per vederlo tutto.
Embedded Systems - Advanced Operating Systems - Appunti Pag. 26
Anteprima di 12 pagg. su 54.
Scarica il documento per vederlo tutto.
Embedded Systems - Advanced Operating Systems - Appunti Pag. 31
Anteprima di 12 pagg. su 54.
Scarica il documento per vederlo tutto.
Embedded Systems - Advanced Operating Systems - Appunti Pag. 36
Anteprima di 12 pagg. su 54.
Scarica il documento per vederlo tutto.
Embedded Systems - Advanced Operating Systems - Appunti Pag. 41
Anteprima di 12 pagg. su 54.
Scarica il documento per vederlo tutto.
Embedded Systems - Advanced Operating Systems - Appunti Pag. 46
Anteprima di 12 pagg. su 54.
Scarica il documento per vederlo tutto.
Embedded Systems - Advanced Operating Systems - Appunti Pag. 51
1 su 54
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

C /W

The followings are the design phases when the PCB is selected as an

architectural solution:

1. Selection of components based on schematics;

5

2. Manufacturing of the support for the chosen components. It is the

PCB itself made of three different materials: a conductor (e.g.: cop-

per), an insulator to separate the tracks and provide a support for the

components (e.g.: fiberglass epoxy resin) and a glue, typically called

pre-preg to keep the different layers together. The main phases of the

PCB production are:

• Preparation of the dielectric supports;

• Conductive tracks manufacturing;

• Assembly of the insulating layers that are alternated with pre-preg

layers;

• Drilling the board to create through-via, blind-via and buried-via

holes;

• Manufacturing of the external layers of the board using conductive

materials;

• Finishing of the board with a thin insulating external layer.

3. Board testing to check the interconnections. Sometimes the boundary

scan technique is used: several flip-flops and multiplexers are connected

together in a chain in order to provide and read data with respect to a

particular pin of the system;

4. The components are finally mounted and soldered on the printed circuit

board.

Some remarkable facts to take into account during the PCB design are:

• The more the pins of a component, the higher the complexity of the

board;

• Signals with very high bandwidth should not be brought on the PCB,

but it is more advisable keep the communicating sections inside a single

chip;

• The latency and the delay of the signals running on the PCB tracks

can be very high.

2.2 System-on-Chip

With this term we identify a complete system with all its parts integrated

on a single silicon chip. Some of them cannot be integrated due to their

mechanical characteristics, therefore a SoC is a device carrying out the main

functionality of a system. Some relevant features are being analyzed:

6

• integrating most of the functionality on a single mi-

System cost:

crochip, the final board is smaller and less complex while the total cost

will be affordable if the volumes are significant.

• as far as the size is concerned, signal lines are not used

Performance:

to be found ensuring signal integrity.

• nowadays the complexity of the systems requires a

Input/Output:

large number of input and output signals. If they are gathered on

different chips, this could lead to packages characterized by a huge

number of pins, a bigger size and a higher cost.

• this is a very relevant aspect because we want to protect

Security:

our product from reverse engineering and competitors. Moreover, if

the system elaborates sensitive data, it is necessary to protect them

from unauthorized accesses.

A System-on-Chip is always made up of a minimum set of functional blocks:

• One or more processors such as microcontrollers, general purpose, net-

work and digital signal processors;

• Different kinds of memories (e.g.: RAM, ROM, EPROM, EEPROM,

Flash);

• Some specific and application-relevant digital blocks;

• Other types of blocks such as timer blocks, power supply blocks and

some analog/digital interfaces.

As far as SoC are concerned, two different classes could be recognized: MP-

SoC, that are multiprocessing systems, and NoC, that are systems charac-

terized by a peculiar communication infrastructure instead of a typical bus

architecture. Moreover, in the latter, data are exchanged as packets.

2.2.1 Dark Silicon

The number of transistors that are integrated on a chip is very high and it is

increasing rapidly over the years. On the other hand, the power consumption

per transistor has not dropped at a corresponding rate. A huge problems

pops up: due to a real physical limit and heat generation, there is no way to

have all the transistors on a chip turned on at the same time.

The name "dark silicon" comes from that silicon area of the chip that is

switched off. 7

2.3 Distributed Systems

A Distributed System is a system in which computing and storing are not

carried out in the same place, but in different systems properly connected.

In order to consider an embedded system distributed, it has to be made up

of several subsystems which exchange a huge quantity of data.

We can distinguish between two main classes with respect to this kind

of systems on the basis of the connection type: wired systems, which are

connected by wires, and wireless systems, which are connected by a wireless

communication.

2.3.1 Wireless sensor network

A wireless sensor network is characterized by a set of nodes distributed in

a wide area. Each node has a microprocessor, a memory, a transceiver, an

antenna, a battery and sensors and cooperates with the others in order to

have the surrounded environment monitored. Some relevant features of this

kind of systems are:

• nodes heterogeneity;

• communication infrastructure and nodes failure;

• long-life batteries;

• nodes portability.

The main actors of the systems are the nodes together with a gateway, a host

and a private communication channel. The nodes can be gathered in different

groups and each group elects a master node. Afterwards the master-nodes

create a higher level communication structure to deliver information to the

gateway.

2.4 Development platforms

A great variety of development platform is available on the market. The

most significant are the following:

• they are broadly used when the production volumes are con-

ASICs:

siderable. They assure the best performance and the lowest power

consumption. Moreover they are very application specific and their

cost is really high. 8

• they are a smaller and static version of an ASIC

Microcontrollers:

integrating different components, such as memories and ADC/DAC,

without the possibility to expand their functionality but outside the

IC.

• they are the perfect platform to assure flexibility and small

FPGAs:

time to market, but the production volumes should not be enormous.

They are fully programmable devices which can count on specialized

functionality and software flexibility.

• all the stuff is integrated in a single chip with more than one

SoC:

processor, memory, controllers... The volumes to afford such a choice

are not always easy to achieve.

2.5 The Multi-Core Revolution

In the past we used to increase the frequency of the processor in order to

get better performances, but this led to some thermal and power issues.

Afterwards a new approach came up : more and less complex cores were

wrapped up inside a single microprocessors and this allowed the parallel

hardware execution of the applications. Nowadays this is the philosophy

with respect to designing and building processors.

The so called performance gap is a common problem: it is the difference

between the expected performance and the one we actually get. In fact the

higher computation power has to be exploited properly even by using better

software to avoid a totally waste of energy.

What the users want is more performance and energy efficiency, therefore

it is relevant to make changes to and improve the current technology. In

order to do that the CMOS technology has experienced a deep evolution and

the trend is to reduce the size of the transistors, but the power dissipation

per cm2 has been increased leading to thermal and cooling issues. On one

hand smaller transistors let to create more powerful chips with many cores,

on the other hand this leads to a higher complexity and more escaped bugs.

The fact is that the technology is scaling down, but we do not want to lose

reliability in order to make electronics devices successful.

When we talk about reliability it is important to point out the difference

between two kinds of faults: an Hard Fault happens when the device breaks

down due to an improper use and it experiences an irreversible physical

change, an Escaped Bug is a design error which makes the device not com-

pliant with the specifications. We are able to verify and validate our design

through formal methods as well as RTL (Register Transfer Level) simulation

9

used to create a high level representation of the circuit in hardware descrip-

tion languages like Verilog and VHDL.

2.5.1 On-chip interconnect architecture

As the trend is to split the complexity of our devices to reduce the power

consumption and to simplify the hardware design raising performances and

creating explicit parallelism, the interconnections, for example among some

cores, are more and more important. There are different types of architec-

tures:

• it is not scalable because the link count grows as

Point to point:

on the other hand we can count on a full throughput between

n·(n−1),

masters and slaves. A single faulty link prevents the communication;

• the bus is a single shared communication medium, a synchroniza-

Bus:

tion and serialization point which requires an arbiter to be properly

used by all the connected devices. Any attached device can observe

the data on the bus. Contention grows with the number of attached

masters onto the bus, furthermore it is a single point of failure;

• it is a multi-bus architecture which requires an arbiter.

Crossbar:

There are multiple paths to reach the same resource, moreover it has

better performance with higher power consumption and area;

• this kind of interconnect is based on the network theory to bring

NoC:

improvements to bus and crossbar technologies. No assumptions can

be made about the taken path from source to destination since it is

based in coherence protocols. Moreover data are exchanged as packets.

This architecture is fully scalable and reliable.

The interconnect always routes data and instructions as request/reply and

load/store operations.

2.6 On-chip bus

When we have to develop a bus we start from the specification document and

we choose some aspects such as the signals to be implemented, the control

path as an arbiter and the data transfer protocol. Wishbone is a copyright

free bus specification extensively used in open hardware projects.

The bus can manage different signals:

• the address bus routes the destination address provided by the master

and it can be shared with the data bus;

10

• the data bus transfers data to/from master and slave during a bus

transaction;

• the control bus carries out the protocol specific signals to handle the

bus transactions (e.g. read/write signals, ack errors, data validity...).

Speaking about the architecture, a tri-state one is mostly used for off-chip

communication because of high delay and high power request while a Mux

and AndOr is more efficient. There are different components that interact

with the bus:

• the master is a module that can trigger a bus

Dettagli
Publisher
A.A. 2016-2017
54 pagine
6 download
SSD Ingegneria industriale e dell'informazione ING-INF/05 Sistemi di elaborazione delle informazioni

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher hardware994 di informazioni apprese con la frequenza delle lezioni di Embedded Systems e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Politecnico di Milano o del prof Fornaciari William.