Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Outline
Synthesis of pipelined circuits:
c GDM
{ Scheduling. { Binding.
Data-path synthesis. Control-unit synthesis.
c GDM
TIME 1 1 * * 2
Example
6 * * 8
c GDM
10 +
STAGE 1
3 *
7 +
9 <
11
TIME 1
STAGE 2
TIME 2
c GDM
Partitioning:
{ Pipe-stage formation.
Scheduling:
{ Advanced features:
c GDM
Choose:
{ Functional pipelining.
Both problems can be modeled by ILP.
+p 0
{ Reduced sharing.
X X
i
l+p
i
c GDM
x
0
im
k 8k 8l
List scheduling:
{ Operation-type distribution:
Account for overlapping.
Example
TIME 1 1 * * 2 * 6 * 8
c GDM
10 +
Loop folding
Reduce execution delay of a loop.
STAGE 1
c GDM
TIME 2
3 * *
7 +
9 <
11
TIME 1
STAGE 2
TIME 2
0 1 2
3 1 2
Example
NOP NOP
c GDM
NOP
c GDM
TIME 1
TIME 2
TIME 4
NOP
(a)
Example:
TIME 1 1 * * 2 * 6
0=2
10 +
c GDM
STAGE 1
c GDM
TIME 2
3 * *
7 *
8 <
11
TIME 1
4 +
STAGE 2
TIME 2
10
11
Example
c GDM
c GDM
1 + *
Connectivity synthesis:
Example
REGISTERS
a 3 dx x y u r1 r2
Control synthesis
c GDM
c GDM
Logic model:
{ Synchronous FSM.
mux control ALU control (+,,<)
Physical implementation:
ALU
DATAPATH
CONTROLUNIT
Control synthesis
Synthesize circuit that:
c GDM
Simple model:
{ FSM-oriented design:
Hardware: PLAs, gates, registers. One FSM state per schedule level.
Assumption:
{ Microcode-oriented design:
FSM-based implementation
Simple model:
c GDM
Example
0 NOP
c GDM
TIME 1
*
3
10
TIME 2
11
<
TIME 3
TIME 4
n NOP
reset
3,7,9,11
reset
Microcode implementation
Horizontal microcode:
c GDM
{ One bit per activation signal. { One microcode word per schedule level. { Maximum performance. { Wide words.
Vertical microcode:
TIME 1
*
3
10
TIME 2
11
<
TIME 3
TIME 4
n NOP
Address 00 01 10 11 Counter
{ Encode each resource activation signal. { Shorter words. { One (or more) words per schedule level.
Reset
c GDM
c GDM
Partition ROM word into elds. Encode signals in each eld. Allow for a code for NOP. Activation signals in each eld must not be concurrent. Problems:
Microcode optimization
Con ict graph:
c GDM
Example
eld A A A B C C C D D E E op code 1 01 3 10 4 11 2 1 6 01 7 10 5 11 8 01 9 10 10 01 11 10
c GDM
Example
Microword format A B C D E
Hierarchical control
c GDM
c GDM
Exploit the hierarchical structure of sequencing graphs. One controller per entity.
Microwords 01 10 11 00 1 0 0 0 0 1 10 00 11 01 10 00 00 01 10 00 00
D1
1,3,4 2
D2
6,7,5
D3
8,9
D4
10,11
Activation signals
Example
act act CONTROL BLOCK reset act CONTROL reset BLOCK act
c GDM
CONTROLUNIT
Synchronization problem:
reset condition act CONTROL act BLOCK reset CONTROL BLOCK reset act CONTROL BLOCK act
Several strategies.
DATAPATH
CONTOLUNIT
c GDM
{ Unbounded delays: