协同设计基本步骤 Specification 一罗列系统功能,明确给出系统行为 。 Modeling -对Spec进行概念化和提炼,生成软硬件模型 Fomal System ● DSE(design space exploration)and Specification Partitioning Partitioning HWSW Partitioning 。 Synthesis and Optimization Software Interface Hardware Synthesis Synthesis Synthesis Validation System 一确认所设计的系统达到合理的置信度 Integration 一可以根据应用领域而不同进行性能与功能的协同仿真 。 Implementation 一通过综合实现硬件,通过编译实现可执行的软件 llxx@ustc.edu.cn 16/71
协同设计基本步骤 • Specification – 罗列系统功能,明确给出系统行为 • Modeling – 对Spec进行概念化和提炼,生成软硬件模型 • DSE(design space exploration) and Partitioning llxx@ustc.edu.cn 16/71 • Synthesis and Optimization • Validation – 确认所设计的系统达到合理的置信度 – 可以根据应用领域而不同进行性能与功能的协同仿真 • Implementation – 通过综合实现硬件,通过编译实现可执行的软件
Co-design:软硬件设计概念 high level system description CODESIGN 10011 TOOLS 0101 HW SW VHDL if (x>0) a=1; C code COMPILER HW SYNTHESIS ASIC FPGA PROM llxx@ustc.edu.cn 17/71
Co-design:软硬件设计概念 llxx@ustc.edu.cn 17/71
软硬件协同设计定义与主要概念 软硬件协同设计定义 The meeting of system-level objectives by exploiting the trade-offs between hardware and software in a system through their concurrent design ·主要理念 -Concurrent(并发性):hardware and software developed at the same time on parallel paths -Integrated(整体性):interaction between hardware and software developments to produce designs that meet performance criteria and functional specifications
软硬件协同设计定义与主要概念 • 软硬件协同设计定义 – The meeting of system-level objectives by exploiting the trade-offs between hardware and software in a system through their concurrent design • 主要理念 – Concurrent(并发性): hardware and software developed at the same time on parallel paths – Integrated(整体性): interaction between hardware and software developments to produce designs that meet performance criteria and functional specifications
实现软硬件协同设计的要求 ·统一的软硬件描述方式 一软硬件支持统一的设计和分析工具(技术) 一允许在一个集成环境中仿真(评估)系统软硬件设计 一支持系统任务在软件和硬件设计之间的相互迁移 交互式软硬件划分技术 一允许对多个不同的软硬件划分设计方案进行仿真和比较, 辅助最优系统实现方式决策 完整的软硬件模型基础 HWCI HW Development esting 一支持在多个设计阶段进行评估 Prelim Design Design HW 一支持阶段式软硬件开发和集成 System egrated Modeling Substrate Systom peration Concepts /SW Integ.and 正确的验证方法 Prelim. 一确保系统设计达到目标要求 Coding SW Development CSCI Testing
实现软硬件协同设计的要求 • 统一的软硬件描述方式 – 软硬件支持统一的设计和分析工具(技术) – 允许在一个集成环境中仿真(评估)系统软硬件设计 – 支持系统任务在软件和硬件设计之间的相互迁移 • 交互式软硬件划分技术 – 允许对多个不同的软硬件划分设计方案进行仿真和比较, 辅助最优系统实现方式决策 • 完整的软硬件模型基础 – 支持在多个设计阶段进行评估 – 支持阶段式软硬件开发和集成 • 正确的验证方法 – 确保系统设计达到目标要求
统一的设计表示与设计空间搜索 System FSM- Description Concurrent processes directed graphs (Functional) Programming languages HW/SW Unified representation Partitioning (Data/control flow) SW HW Another HW/SW Software Interface Hardware partition Synthesis Synthesis Synthesis System Instruction set level Integration HW/SW evaluation
统一的设计表示与设计空间搜索 Unified representation (Data/control flow) HW/SW Partitioning System Description (Functional) Concurrent processes Programming languages FSMdirected graphs System Integration Instruction set level HW/SW evaluation Partitioning (Data/control flow) Interface Synthesis Software Synthesis SW Hardware Synthesis HW Another HW/SW partition