Overview of Systems on Chip (SoCs) Flashcards

1
Q

What is a SoC?

A

System on Chip
An integrated circuit possibly containing:
1. Processors (CPU, GPU etc.)
2. Memory (ROM, RAM etc.)
3. Interconnects (bus)
4. External interfaces (USB, Ethernet)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Why use a SoC?

A
  1. Tight coupling between components
  2. Can be customised
  3. Can be built from different parts
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

A SoC likely has heterogenous cores. What does this mean?

A

1 big core and 1 little core
Big cores do heavy lifting, little cores do background tasks

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

A SoC likely has a DRAM interface. What is this?

A

Components to talk to low power DDR off-chip memory

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is Flynn’s Taxonomy? What are the 4 classes?

A

Classification of computing systems showing parallelism in instruction and data streams
1. SISD
Simple processor
2. MISD
Run multiple instructions on the same data, verify cores are making correct decisions eg. safety critical systems
3. SIMD
Vector processing, energy efficient
4. MIMD
Multicore, like standard general purpose CPUs

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Draw a diagram to show the 4 classes of Flynn’s Taxonomy

A

.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

We can always add more cores but performance is limited by ?

A

parallelism
This is because speedup from adding more cores depends on how much we split up and parallelise the task

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What does Amdahl’s Law show? Give the equation

A

Shows expected performance as cores increase
speedup(n) = 1/(B + ((1 - B)/N))
n = number of cores
B = sequential fraction

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What 2 things does Amdahl’s Law imply?

A
  1. We need to write very parallel programs to make best use of the cores. Speedup is limited by the sequential part so minimise this
  2. Maximum system improvement is limited by fraction being improved
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Give the equation for Gustafson’s Law

A

speedup(n) = n + (1-n)B
n = number of cores
B = sequential fraction

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What does Amdahl’s Law assume?

A

Fixed problem size - what ifs the speedup if I parallelise this?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What does Gustafson’s Law assume?

A

Fixed execution time - can do more work in same time because more parallelism

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What does Gustafson’s Law imply?

A

When given more computing power, programmers increase the problem size

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Draw a graph to show Amdahl’s Law

A

.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Draw a graph to show Gustafson’s Law

A

.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

In what device may on-chip ROM and RAM be sufficient?

A

Microcontroller

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

In what device may memory need to be placed off-chip too?

A

SoC for a mobile phone/tablet

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Give 2 reasons to place all memory on chip

A
  1. Tighter integration good for latency and bandwidth
  2. Less need for a cache
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Give 2 reasons to leave memory on a separate chip

A
  1. May not be enough space on-chip
  2. Off-chip memory is more generic so has greater applicability
20
Q

What is chip stacking?

A

How we arrange memory chips on top of SoC

21
Q

List the two methods of chip stacking

A
  1. Package on package
  2. 3D die stacking
22
Q

What is package on package chip stacking?

A

Memory chip is put directly on top of SoC and ball grid array connects the two

23
Q

What is 3D die chip stacking?

A

Silicon wafers are directly placed together with through-silicon vias connecting the dies

24
Q

Draw a diagram of a DRAM cell

25
What is a DRAM cell composed of?
1 transistor 1 capacitor - holds the charge but leaks so needs refreshing Wordline - selects the bit Bitline - contains data read out and data written in
26
How much data can be stored in a DRAM cell?
1 bit
27
Draw a diagram of a DRAM bank
.D
28
Draw a diagram of a DRAM device
.
29
How are cells organised in a DRAM bank?
Organised into arrays Rows = wordlines Columns = bitlines
30
What is a DRAM bank?
DRAM cells are organised into arrays. A DRAM bank is a group of arrays
31
How much data does an array provide?
A single bit, so multiple arrays are needed to access more than one bit at a time
32
What is a DRAM device?
Contain several banks
33
How do banks in a DRAM device operate?
Operate independently. Each contains N arrays and provides N bits of data
34
What is a DRAM rank?
DRAM devices can be arranged in ranks All devices in a rank operate together, but ranks are independent
35
What gives bandwidth?
Concurrency at ranks and banks
36
What allows parallel access?
Synchronised operation at devices and arrays
37
Look over 64-bit read example
.
38
What are the 5 DRAM commands and which low-level actions do they define?
1. Row access - move data to sense amps, then back 2. Column read - move data from sense amps to bus 3. Column write - move data from bus to sense amps 4. Precharge - reset sense amps and bitlines 5. Refresh - read out data then restore
39
What do the sense amps do?
Act like buffers, store most recent row that was accessed, to access another row they must be reset
40
How does multiple array access in a bank work?
Would access the same cell position in all N arrays to get N-bit value
41
What does the memory controller do?
Handles DRAM accesses, responsible for converting processor requests into DRAM commands (select bank, row, column, precharge if close-page)
42
What is an open-page policy?
Does not reset sense amps after memory access Sense amps can store whole row of data, like a cache line
43
What are the advantages and disadvantages of an open-page policy?
+ Reduced latency when reading from that row again + Great for sequential access to different columns - Requires explicit rest when accessing another row
44
What is a close-page policy?
Resets and precharges sense amps after memory access
45
What is an advantage of a close-page policy?
+ Works well with access patterns with little locality
46
What does the memory controller have to do with timings?
Issues each command so in sequence to minimise time each command takes, must respect key DRAM timings