Dreesen, Ralf: Generating processors from specifications of instruction sets. 2011
Inhalt
- Introduction
- Motivation
- Overview
- Processor aspects
- Scientific contributions
- Processor implementations
- System overview
- Evolution of ViDL and its generators
- Areas of expertise
- Fundamentals
- Instruction set architectures
- Design scenarios
- Domain specific languages
- Compilation methods
- Type systems
- Term rewriting systems
- Microarchitecture
- Related approaches
- Taxonomy of ISA specification languages
- Notation in ISA manuals
- ISP
- nML
- ASIP Meister/PEAS-III
- Lisa
- ISDL
- Expression
- Tensilica instruction extension (TIE)
- DPG — Datapath generator
- ViDL — Versatile ISA description language
- A ViDL example
- Structure of a specification
- Abstraction from microarchitecture
- Instructions
- Functional concepts
- Epsilon logic
- Delays
- Architectural interfaces
- Type system
- Transfer primitives
- Design patterns
- Partial memory accesses
- Status registers
- Processor-mode sensitive registers
- Register windowing
- Dynamically reconfigurable register files
- Register pairs
- Constant register
- Embedded program counter
- Branch
- SIMD instructions
- Conditional execution
- Complex operand encodings
- Addressing modes
- Generators
- Processing of ViDL
- Name analysis
- Optimizations
- Translation of architectural interfaces
- Analysis of instruction encoding
- Intermediate representation
- Term rewriting system
- Transformations and optimizations
- Methods for generating simulators
- Methods for generating processors
- Evaluation
- Evaluation process
- ViDL
- Real world instruction sets
- Efficient specification
- Usability
- Rapid exploration of instruction sets
- Restrictions
- Generator speed
- Simulator generator
- Processor generator
- Setup
- Overview of generated processors
- Exploration of microarchitecture
- Comparison to handcrafted processors
- OISC — A simple processor
- Wide instruction sets
- Register ports
- Structure of generated pipeline
- Latencies and penalties
- Resolution of hazards
- Generating waveform definitions for ModelSim
- DNACore — A case study on ISE
- Development process
- Algorithm
- Instruction set extension
- Specification in ViDL
- Dynamic behavior of processor
- Results and remarks
- Summary
- Conclusion
