- 2
- 0
- 约8.59千字
- 约 5页
- 2017-08-13 发布于安徽
- 举报
优秀完美PDF格式,可在线免费浏览全文和下载,支持复制编辑,可为大学生本专业本院系本科专科大专和相关类学生提供毕业论文范文范例指导,也可为要代写发表职称论文提供参考!
基于Fuxi 平台的软硬件协同设计
王忠斌
(深圳市海创达资讯技术有限公司 计算新技术实验室, 广东 深圳 518000)
摘要:本文讨论一种面向数据流应用的嵌入式系统软硬件协同设计环境。系统的建构过程分
为设计和映射两个阶段。在设计阶段,按照数据处理的流程,将系统划分为若干个独立、并
行的功能模块。然后,依据参数化-执行机制分离的原则,将模块划分为参数化和执行机制
两个部分。系统协同单元通过调用个模块中参数化部分所提供的接口,对执行机制进行定制
的方式来实现系统功能。采用Fuxi 语言编写模块的参数化程序,用Verilog 设计模块的执行
逻辑。并在Fuxi 平台上执行并仿真系统。在系统的映射阶段,将模块映射到目标器件上。
1. 前言
软硬件协同设计已经成为嵌入式系统的流行设计模式,而软硬件协同设计的关键在于软
硬件划分和软硬件接口设计[1,2,3] 。由于软硬件划分是一个 NP-难题,不能找出一个一般性
的划分算法。我们根据大数据流处理 (如视频处理、数据采集等)的嵌入式系统设计要求,
提出一种抽象的系统模型:系统由一组模块M 和一个协同单元C 构成,模块之间通过表示
数据流向的有向边连接。
S ::= M, C
图1 是一个系统实例。我们根据数据流应用中的处理模块通常独立地对输入数据进行循
环处理的特点,将模块定义为参数化(Parameterization)和执行机制(Execution Mechanism)两
个部分。
协同单元(Coordinator)
参数化 参数化 参数化
数据流 执行 执行 执行
机制 机制 …… 机制
模块-1 模块-2 模块-N
图1. 系统架构图
协同单元对模块的控制是通过调用其参数化过程实现的。
模块是交易级(Transaction Level)的抽象模型,是自治的、并行的数据流处理节点。其特
点是在下一次参数化之前,按本次参数化的要求对输入数据进行循环操作。
2. 参数化与执行机制分离原则
作为数据流处理节点的模块,通常是做循环操作,对输入数据进行处理,并把处理后的
数据输出到下一模块。虽然模块做循环操作,但这种操作需要通过初始化过程,来设置其工
作参数。例如,图像的放大模块,实际进行放大操作的像素的插值操作,但插值操作需要设
置相应的参数,如输入/输出图像的尺寸,插值的倍率等。
我们提出一种功能模块的“参数化与执行机制分离”的设计原则,将功能模块划分为参
数化和执行机制两个部分,前者通过软件实现,而后者通过硬件实现的方式。
参数化过程通常是复杂的计算过程,而执行机制则是基础的逻辑电路。前者需要通过编
程语言来(C/C++、Java 等)描述,而后者则通过硬件描述语言(Verilog、VHDL 等)来定义。参数
化和执行机制之间的接口是寄存器。参数化过程通过设置执行机制的寄存器来规定执行机制
的行为。
原创力文档

文档评论(0)