10_1设计方法与设计优化.ppt_第1页
10_1设计方法与设计优化.ppt_第2页
10_1设计方法与设计优化.ppt_第3页
10_1设计方法与设计优化.ppt_第4页
10_1设计方法与设计优化.ppt_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

可编程逻辑器件 第十章设计方法与设计优化 教学重点 可综合的设计技术可综合的结构流水线设计技术资源共享 有限状态机设计多层次结构电路设计阻塞与非组赛赋值毛刺的消除 10 1设计的可综合性 10 1 1可综合的设计 综合过程 Verilog行为级或数据流电路建模 RTL级功能块 逻辑优化 优化后的门级网表 目标工艺面积和定时约束 Verilog基本元素与硬件电路元件间的映射 数据类型 wire reg integer 常量语句 if case assign 结构 门 模块 值 0 1 无关值 不定值 元件 连线 触发器 寄存器 锁存器 ALU MUX 不使用initial 延时描述和forever while repeat尽量采用同步方式建议采用行为语句always描述组合逻辑 敏感信号列出所有输入信号尽量使用器件的全局复位端和时钟端任务和函数通常被综合成组合逻辑 10 1 2可综合的verilog结构 不支持 要求 除数是2的指数 运算符 端口类型input output inout parameter 数据类型wire reg integer module macromodule 可综合说明 Verilog结构 条件语句if else case casex casez endcase 同一reg采用一种 过程赋值 阻塞 非阻塞 持续赋值assign 基本门元件and nand or nor xor xnor notbuf bufif1 bufif0 notif1 notif0pullup pulldown 可综合说明 Verilog结构 编译向导 include define ifdef else endif task endtask function endfunction 过程语句always块语句begin end 循环语句for 可综合说明 Verilog结构 忽略的verilog结构 不支持的verilog结构 不支持的verilog结构 10 2流水线设计技术 流水线操作 例10 1 非流水线8位全加器moduleadder8 cout sum ina inb cin clk output 7 0 sum outputcout input 7 0 ina inb inputcin clk reg 7 0 tempa tempb sum regcout regtempc always posedgeclk begintempa ina tempb inb tempc cin endalways posedgeclk begin cout sum tempa tempb tempc endendmodule 普通8位全加器RTL图 时序分析Tools TimingAnalyzerTool目标器件FLEX10KEPF10K10TC144 3 普通8位全加器 例10 2 4级流水线8位全加器modulepipeline cout sum ina inb cin clk output 7 0 sum outputcout input 7 0 ina inb inputcin clk reg 7 0 tempa tempb sum regtempci firstco secondco thirdco cout reg 1 0 firsts thirda thirdb reg 3 0 seconda secondb seconds reg 5 0 firsta firstb thirds always posedgeclk begintempa ina tempb inb tempci cin endalways posedgeclk 第一级加 低2位 begin firstco firsts tempa 1 0 tempb 1 0 tempci firsta tempa 7 2 firstb tempb 7 2 endalways posedgeclk 第二级加 第2 3位相加 begin secondco seconds firsta 1 0 firstb 1 0 firstco firsts seconda firsta 5 2 secondb firstb 5 2 end always posedgeclk 第三级加 第4 5位相加 begin thirdco thirds seconda 1 0 secondb 1 0 secondco seconds thirda seconda 3 2 thirdb secondb 3 2 endalways posedgeclk 第四级加 高两位相加 begin cout sum thirda 1 0 thirdb 1 0 thirdco thirds endendmodule 4级流水线8位全加器 10 3资源共享 采用函数或任务 共享复杂的运算单元用括号控制综合结果 重用计算结果模块数据宽度尽量小 例10 3 2个加法器和1个选择器moduleresource1 sum a b c d sel parametersize 4 output size 0 sum inputsel input size 1 0 a b c d reg size 0 sum always aorborcordorsel beginif sel sum a b elsesum c d endendmodule 例10 4 2个选择器和1个加法器moduleresource2 sum a b c d sel parametersize 4 output size 0 sum inputsel input size 1 0 a b c d reg size 0 sum reg size 1 0 atemp btemp always aorborcordorsel beginif sel beginatemp a btemp b endelsebeginatemp c btemp d endsum atemp btemp endendmodule 器件资源消耗比较 例10 5 设计可重用举例1moduleadder s1 s2 a b c output 4 0 s1 s2 input 3 0 a b c reg 4 0 s1 s2 always aorborc begins1 a b s2 c a b endendmodule RTL

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论