这片文章对系统设计的具体步骤及相关知识进行介绍,主要分为四部分:算法设计、IC系统架构设计、基于systemC的IC系统设计、系统设计工具SPW简介。
(一)算法设计
系统设计的第一步是给出清晰的系统规范,该规范写明了系统的功能、性能、费用、开发时间等。接下来创建一个系统行为模型,并且可以用来初步验证设计的性能。再下来,对行为模型进行细化,即进行算法设计。算法设计大致分为三步:
1)给出浮点运算
2)给出定点数运算
3)如有可能,给出周期精确的模型,可用于软件调试
算法确定以后,要进行详细的架构设计。设计者要确定功能子模块的划分、子模块的接口、存储器架构、总线架构、总线带宽等。
算法是对数进行操作。数由定点数和浮点数之分。定点数分诶定点整数和定点小数。对于定点整数,小数点的位置约定在最低位的右边,用来表示整数。对于定点小数,小数点的位置约定在符号位之后,用来表示小于1的纯小数。浮点数是由阶码E、尾数M、符号位S、基数R构成。R为2的幂,S为符号位。一个浮点数的数值可以表示为: N=(-1)S *M *RE。
在设计算法时,首先要考虑的问题是如何表示数据。也就是要考虑用多长的位宽来表示数据,数据是否是有符号的。
这里给出了一种数的表示方法,这里用<n,m, x>表示一个数,其中n表示整个数据的位宽,m表示整数部分的位宽,x