数字系统设计基本方法.ppt

  1. 1、本文档共51页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字系统设计基本方法.ppt

4.1.3提高工作速度的几种方法 1 缩短临界路径长度 减少临界路径上的处理内容。减少临界路径上的处理内容是指把可以在别的通路上进行处理的内容移走,使各通路的处理时间尽可能均衡。 前面的例子中,状态S1要进行2次乘法运算:aReg*bReg*cReg,系统从S0→ S1→ S2,最终的aReg值应为 aReg 2×in0×in1×in2 如果要保证最后的aReg值不变,只需把运算操作的内容进行适当调整,如将S1状态中cReg的运算放在S2状态中进行。 PROCESS clk BEGIN IF clk EVENT AND clk 1 THEN CASE stateReg IS WHEN S0 aReg in0; bReg in1; cReg in2; stateReg S1; WHEN S1 aReg aReg*bReg; bReg bReg; cReg cReg; stateReg S2; WHEN S2 aReg aReg* cReg*2 ; bReg bReg; cReg cReg; stateReg S0; END CASE; END IF; END PROCESS; 增加状态数或寄存器数。增加处理的时钟周期 状态数 个数和寄存器数可以达到缩短临界路径长度的目的。 增加状态减少临界路径长度的实例 a 系统原状态图; b 添加状态后的状态图 增加寄存器减小临界路径长度 a 系统原状态图; b 增加寄存器后的状态图 2 改变临界路径上的处理顺序 加法和乘法运算所需要的时间是不一样的,为了提高系统的速度,通常把运算速度慢的计算放在运算树的短枝上。 a 加法运算1 ns,乘法运算5 ns情况下的数据流图; b 加法运算5 ns,乘法运算1 ns情况下为数据流图 数字系统设计方法 数字系统设计基础 数字系统设计的一般步骤 数字系统并发处理的设计 3 系统结构的选择和设计 4 数字系统设计中的几个工程实际问题 主要内容: 1.1 系统需求分析 主要内容: 确定系统的基本功能。 确定输入和输出信号。 确定各功能模块之间的互相关系。 确定系统具体指标。 1 数字系统设计的一般步骤 通常分为:系统需求分析、算法设计、算法描述、系统结构选择、系统具体设计、系统仿真与验证。 1.2 算法设计与算法描述 算法设计结果要用算法描述来表达,因此两者总是共存的,在系统设计时很难分出先后。 算法描述大致可分为行为描述、RTL描述 寄存器传输描述 以及算法流程图、算法状态机图描述几个阶段。 系统结构选择与算法设计有很大关系,不同的算法可以实现同一个系统的功能。当然,同一个算法也可以用不同的系统结构来实现。 1.3 系统结构选择 数字系统的垂直结构和水平结构 在系统结构选定以后,根据系统各功能模块的算法描述,用HDL语言对其进行编程了。为了便于编程仿真和验证,在系统具体设计时应将各功能模块的输入和输出及各模块之间的相互联系用框图形式标注清楚。 1.4 系统具体设计 数字系统逻辑设计是否正确,在设计完成以后应进行仿真和验证。仿真可分为功能仿真和时序仿真。 1.5 系统仿真与验证 2 数字系统并发处理的设计 2.1 并发处理的基本概念 所谓并发处理,就是在一个时钟周期内若干个电路并发工作,完成若干个处理操作。例如,某一个程序要完成如下三步运算: A A+C B C+D C E+D 如果这三步处理在一个时钟周期内完成,那么就算并发处理。这样做就可以使处理速度提高3倍。 并发处理不仅可以用于顺序程序的处理,也可以用于分支程序的处理,如图所示。 图 分支程序的并发处理 a 分支的并发处理; b 对应的电路实现 2.2 并发处理的基本方法 并发处理应该是没有顺序概念的,也就是说,各并发处理过程是在一个时钟周期中进行处理和结果代入的,其先后顺序对结果不会产生影响。 并发处理实例 1.简单的前后合并处理 在前后两个状态中,如果处理是相对独立的,前面的操作结果不作为后续的操作内容,这两个处理可以设计成并发的。例如: 第1个时钟完成A C+1 第2个时钟完成B B+1 这两个处理不具继承性,可设计成两个处理并发操作: A C+1 B B+1 1个时钟周期完成 2.正向引用合并处理 在前后两个状态中,如果处理是有关连的,前面的操作结果要作为后续的操作数,如: 第1个时钟 A C+1 第2个时钟 B A+2 为了使两个处理可以并发地在一个时钟周期中进行,就可以采用正向引用合并处理方法。 A C+1 B C+1 +1 1个时钟周期完成 3.分支条件与

文档评论(0)

wuyouwulu + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档