Title: Application Specific Systems Design and Prototyping
1Application Specific Systems Design and
Prototyping
- Luigi Carro
- Universidade Federal do Rio Grande do Sul
- Departamento de Engenharia Elétrica
- Agosto 1998
- carro_at_iee.ufrgs.br
2Synthesis of dedicated architectures
- HW is not the only problem
- what if questions
- open specifications
- Application specific processor
- tuned to application
- reprogrammable
- microarchitecture level
- High Level Language level
3Application Specific processors
- Speed increase with VLIW organization
- area and power savings only useful instructions
are implemented - costs reduction by integration of the system
Problem application software Contradiction it
is easy to make HW, not SW
4Application Specific Processors II
- Retargetable compilers
- try to generate an efficient compiler from HW
architectural specifications - bottom up approach
- who defines the architecture?
- Application and architecture are studied
separately - how efficient is the compiler in using the extra
added features?
5Automatic Synthesis of HW and SW
- Possible in specific niches
- co-operating FSMs
- modem?
- SDL
- Siera
- operating system like framework
- complex applications mechanical arms
- There is a need for communication synthesis
6HW-SW codesign based on ASIPs
memory
processor
- Asip based designs
- without and without core-processor
- application program analysis dictates instruction
set - compiler must be created afterwards
7ASIP design process
8Core-processor HW-SW codesign
9Core processor based HW-SW codesign II
- Critical program segments are converted to HW
- the instruction set is not altered
- the compiler is the same, and calls to specific
HW functions must be made
10Outline of the course
- Problem modeling, hardware modeling.
- Configurable HW families
- Application Specific System Design Tools
- Case Studies
- Microcontroller ASIPs
- Special Embedded compilers
- Conclusion
11MbSG tool
12MbSG tool
- Based on Risc microprocessor
13MbSG design flow
14MbSG optimizations I
15MbSG optimizations II
Not all problems have arithmetic behavior control
flow breaks pipeline
16MbSG optimizations III
Data driven optimizations HW function and
processor should work in parallel
17MbSG optimizations IV
18MbSG and other approaches
- New compiler is not needed
- optimizations developed at the instruction level
- instead of complex partitioning, program
classification - MbSG is in the middle of core based design space
19MbSG and other approaches
20MbSG results
21Application Specific Microcontroller
- Microcontrollers play a main role in present days
Brazilian electronic systems industry - Embedded control and automation system are
equipped wiht the 8051 or DSP architectures - to create new developments, those systems
requires mainly, SW availability and
mantainability.
22Application Specific Microcontroller
- Low cost in small and medium Industries must be
achieved even with with a small number of parts
per year, 10 thousand or less - Old architectures like the 8051 are still largely
used in the worldwide industry, because they
have - low cost
- large number of engineers trained to use them
- low cost SW available.
23Application Specific Microcontroller
- These architectures can be changed, and this is
justified in - an application where speed is premium or
- in the complete integration of a system
- In order to integrate the system, we removed some
instructions of the 8051 instruction-set that
were never used for specific applications. - This change the original CISC architecture to a
RISC approach, and gave us area by eliminating
the decoders of that instructions. - the saved area can be used to integrate the system
24Application Specific Microcontroller
- Two applications were tested
- motor vector control and
- a Profibus protocol for field-bus.
- Each program was analyzed statically (assembly
source) and dynamically (really executed
instructions).
25Instruction usage analysis
- Groups of often used instructions for the
induction motor control
26Static analysis
27Dynamic analysis
28Area savings
29The pipelined version of the 8051
- The necessity of pipeline comes from the idea
that not all instructions will be implemented - RISC codes are greater than the CISC ones and
pipeline serves to compensate this gap in terms
of instruction speed execution - Pipeline was applied in most used instructions
and one special C compiler able to use only these
instructions was developed
30Pipeline cycles
31Synthesis results
32The optimized C compiler
- CCC51 - C Cross Compiler to MCS8051 was optimized
to work with a reduced instruction set. - The compiler will generate only a few different
instructions and will try to avoid breaking the
pipeline
33Optimizations
- Three CCC51otimized versions were created
- CCC51 - I operand address modes and
system stack optimization. Jump instructions
that broke the pipeline were replaced by
equivalents jumps instructions - CCC51 - II replaces of some instructions types,
include 3 bytes instructions that broke the
pipeline. Ex MOV direct, direct - CCC51 - III replaces MOV instructions which did
not have accumulator as one of the operands.
34Number of needed instructions
35Number of Different instructions
36Photo of the board
37Outline of the course
- Problem modeling, hardware modeling.
- Configurable HW families
- Application Specific System Design Tools
- Case Studies
- Microcontroller ASIPs
- Special Embedded compilers
- Conclusion
38Conclusions I - doubts
- There is still not available a consolidated
design methodology for application specific
systems - Design methodology should support
- executable specification
- allow SW and HW reuse
- allow fast technological migration
- Importance of IP is increasing
- where is the added value
- SW development will dominate designs
39Conclusion II - more doubts
- Will HW-SW codesign be a commercial reality?
- Is dedicated HW-SW synthesis really needed?
- Most examples claim processor is idle, and so?
- Will configurable devices be a real option for
future designs based on unseen applications? - Will CAD support fast configurability, so that
SWHW?
40Time for lunch!
- To follow
- there will be exciting new developments to be
studied - system design is a really open issue
For more carro_at_iee.ufrgs.br until Friday, around
here
41(No Transcript)