FPGA提升功耗的编码方式

提升功耗的编码方式
提升功耗的编码方式包括:
门控时钟或数据路径
对时钟或数据路径实施门控是当不使用路径结果时用来停止跳变的常用技术。门控时钟能停止所有同步负载并防止数
据路径信号开关和毛刺继续传输。
功耗优化 ( power_opt_design ) 能自动生成会减少开关活动的门控逻辑信号 (signal gating logic) 。然而就应用、数据
流和相关性而言,有些内容该工具没有提供,而且只能由用户来指定。
使门控元件数量最大化
最大限度地增加受门控信号影响的元件数量。例如,在驱动源位置对时钟域进行门控比用时钟使能信号控制每个负载
更能节省功耗。
使用专用时钟缓存的时钟使能引脚
当对时钟实施门控或多路复用以最大限度降低活跃度或时钟树使用量时,应采用专用时钟缓存的时钟使能端口。插入
LUT 或使用其它关闭时钟信号的方法在功耗和时序上效率不高。
当不需要优先编码器时使用 Case 块
当不需要优先编码器时,应使用 case 块,而不是如果 - 则 - 否则 (if-then-else) 块或三元运算符。
低效率编码实例
if (reg1)
val = reg_in1;
else if (reg2)
val = reg_in2;
else if (reg3)
val = reg_in3;
else val = reg_in4;
正确编码实例
(* parallel_case *) casex ({reg1, reg2, reg3})
1xx: val = reg_in1 ;
01x: val = reg_in2 ;
001: val = reg_in3 ;
default: val = reg_in4 ;
endcase

相关推荐
星夜离尘561 天前
FPGA 32 位字拆成 8 位字节:keep、last 与 ready/valid 背压下的多拍序列化
fpga开发·verilog
花月mmc2 天前
【FPGA】神经网络内容简介预告
嵌入式硬件·深度学习·神经网络·fpga开发
LabVIEW开发4 天前
LabVIEW FPGA 编程:少编译几次的办法(系列 04/05)
fpga开发·labview
cmc10285 天前
318.关于在ip内部封装PLL,MMCM的注意事项
fpga开发
LabVIEW开发5 天前
LabVIEW CompactRIO 编程模式怎么选(系列 02/05)
fpga开发·labview
FPGA小迷弟5 天前
FPGA 与千兆以太网校验和:从原理到 Verilog 实现
嵌入式硬件·fpga开发·无人机·ai编程·fpga
码农小韩6 天前
FPGA学习(二)——LED闪烁
fpga开发·verilog·fpga·led·组合逻辑·分频设计
9527华安7 天前
FPGA纯verilog实现DP视频接口,支持2K60帧分辨率,提供3套工程源码和技术支持
fpga开发·音视频·dp
ChaseVLSI7 天前
FPGA与ASIC的区别详解:内部结构、开发成本与适用场景,项目选型到底该选哪个
嵌入式硬件·fpga开发·硬件架构·硬件工程
9527华安8 天前
FPGA实现ARINC818总线协议,基于GT Transceivers Wizard高速收发器,提供7套工程源码和技术支持
fpga开发·transceivers·arinc818