Liquid Architecture
- D. Schuehler, B. Brodie, R. Chamberlain, R. Cytron,
- S. Friedman, J. Fritts, P. Jones, P. Krishnamurthy,
- J. Lockwood, S. Padmanabhan, and H. Zhang
- Dept. of Computer Science and Engineering
Liquid Architecture Microarchitecture Optimization for Embedded - - PowerPoint PPT Presentation
Liquid Architecture Microarchitecture Optimization for Embedded Systems D. Schuehler, B. Brodie, R. Chamberlain, R. Cytron, S. Friedman, J. Fritts, P. Jones, P. Krishnamurthy, J. Lockwood, S. Padmanabhan, and H. Zhang Dept. of Computer Science
` ` ` ` Layered Internet Protocol Wrappers Control Packet Processor External Memory AHB APB I-Cache D-Cache UART UART LED LED Adapter Adapter Boot Rom
FPGA
Statistics Module Network Interface
FPX
Event Bus Memory Controller LEON SPARC- compatible processor
Write and compile embedded SPARC application with GCC
Internet
Reconfigure FPX hardware via Internet and upload system software. Identify configuration for candidate architecture Execute program
and measure run- time performance
Method Time / Cycles
.text main addQuery findMatch computeKey computeBase computeStep fillQuery Rnd
Method Address Range
.text main addQuery findMatch computeKey computeBase computeStep fillQuery Rnd 0x400003EF
Hi
0x4000027C
Lo
Method
.text main addQuery findMatch computeKey computeBase computeStep fillQuery Rnd 0x400003EF
Hi
0x4000027C
Lo
0x4000035A Statistics Module
PC CLK
Event Bus
Function
.text main addQuery findMatch computeKey computeBase computeStep fillQuery Rnd 0x400003EF
Hi
0x4000027C
Lo
0x4000035A
≤ ≤
Counter
Statistics Module
PC CLK
Event Bus
INCR
Function
.text main addQuery findMatch computeKey computeBase computeStep fillQuery Rnd 0x400003EF
Hi
0x4000027C
Lo
0x4000035A
≤ ≤
Counter PC CLK
0x4000061F
Hi
0x400005D8
Lo
0x4000035A
≤ ≤
Counter
Statistics Module Event Bus
INCR INCR
0x400003EF
Hi
0x4000027C
Lo
0x4000035A
≤ ≤
Counter PC CLK
0x4000061F
Hi
0x400005D8
Lo
0x4000035A
≤ ≤
Counter
Statistics Module Event Bus
To User
INCR INCR
0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% 128K 32K
Size of hash table ( Bytes) % of total runtim e
Rest coreLoop findMatch
Function Time / Cycles
.text main addQuery findMatch computeKey computeBase computeStep fillQuery Rnd
Cache Hits / Misses Read Write
86 88 90 92 94 96 98 100 128K, 1Kx1 128K, 32Kx1 128K, 16Kx2 32K, 1Kx1 32K, 32Kx1 32K, 16Kx2
Size of hash table, D-cache configuration hit rate (%)
Total findMatch coreLoop
5 10 15 20 25 30 35 128K 32K
BLASTN hash table sizes ( Bytes) Run tim e ( secs)
1KB I-Cache 4KB I-Cache
Function Time / Cycles Cache Hits / Misses Read Write
.text main addQuery findMatch computeKey computeBase computeStep fillQuery Rnd
Pipeline Stalls Branch Predict
80000 1800 1 10 100 1000 10000 100000 SimpleScalar 3.0 LEON Time (sec)