Architectural Analysis  «Prev  Next»
Lesson 4

System Partitioning Design Conclusion

System partitioning is a simple yet powerful tool for controlling and understanding the design and implementation of the system.
In this module you learned:
  1. The purpose of system partitioning and the two types of system partitioning
  2. The goal of system partitioning and the end product

Glossary Terms

  1. Domain system partitioning: The first of two activities during architectural analysis when the system is partitioned according to the functionality that it must provide.
  2. Technological system partitioning: The distribution of software behavior across different technologies within an application design.
Click the link below to view terms of system partitioning.
Domain Functional system partitioning

Partitioning Overview

  1. System functionality is implemented on system components
    ASICs, processors, memories, buses
  2. Two design tasks: 1) Allocate system components or ASIC constraints 2) Partition functionality among components
  3. Constraints: Cost, performance, size, power
  4. Partitioning is a central system design task

Main Concepts

  1. Natural versus executable language specifications
  2. Basic Partitioning issues and algorithms
  3. Functional partitioning techniques for hardware
  4. Hardware and software partitioning
  5. Functional partitioning techniques for software
  6. Exploring tradeoffs with functional partitioning

Structural vs. Functional Partitioning

Structural: Implement specification, then partition
  1. Functional: Partition function, then implement
  2. Enables better size/performance tradeoffs
  3. Uses fewer objects, better for algorithms
  4. Permits hardware and software solutions