[学习笔记]从架构层面看低功耗(Low Power)Design (一)

本文探讨了低功耗ASIC设计中的动态电压和频率调整(DVS/DVFS)技术,包括变量频率、动态电压缩放的原理和应用场景。通过On-Chip监控器和反馈机制,动态地调整电压和频率,以适应性能需求并降低功耗。温度反转效应和库设计在低功耗设计中也起着关键作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

回忆以前所学, 正好看到一本讲low power 不错的书, An Asic Low Power Primer (2013), 这本书里讲到Power Modeling (library 是怎样对power建模的), 对ASIC design 怎样做power 分析, Low Power Design技巧, 本文主要关注其中第六章, Architectural Techniques for Low Power. 具体分析其中的Dynamic Voltage and Frequency Scaling
学习中也参考了Low Power Methodology Manual for System-On-Chip Design(2007), 这本书虽然旧了点(还在讨论90nm, 65nm), 但是更细节, 更注重实现.

Variable Frequency

频率可调节, 意思是design时就不要设计过高的clock, 对Power有限制的design来说,可以考虑牺牲一些speed来换取power 降低. 对于idle mode, 主动降低时钟频率可以省很多power. 进入idle mode 时可以通过clock mux选择低频clock,来省power.
因为频率变低了, 所以对task来说处理变慢了, 所以从task需要消耗的energy来看, 降低频率并没有改变energy(忽略leakage)
在这里插入图片描述

Dynamic Voltage Scaling

动态调节电压. 因为Process Variation, 同一批Tape Out 的芯片会有fast part, slow part. (也可分成ss, tt,

### 关于 igloo2 FPGA 的技术资料和使用方法 #### 1. **igloo2 FPGA 概述** Microsemi(现已被 Microchip 收购)推出的 igloo2 FPGA 是低功耗、高性能的现场可编程门阵列设备。它专为嵌入式应用而设计,具有丰富的特性,包括硬核处理器、安全功能以及多种 I/O 接口支持[^4]。 #### 2. **官方技术文档资源** Microsemi 官方网站提供了详尽的技术文档和支持材料,这些资源对于学习和掌握 igloo2 FPGA 至关重要。以下是几个主要类别和技术文档: - **数据手册 (Datasheet)** 数据手册详细描述了 iggoo2 FPGA 的架构、性能参数、I/O 特性和其他硬件规格。这是了解该芯片的基础文件[^5]。 - **用户指南 (User Guide)** 用户指南涵盖了从初始设置到高级配置的所有内容,适合初学者和有经验的设计者参考。例如,《Libero SoC Design Suite User’s Guide》介绍了如何利用 Libero 工具链完成项目开发[^6]。 - **应用笔记 (Application Notes)** 这些文档针对特定应用场景提供解决方案,比如实现加密算法、接口桥接或者电源管理优化等。通过阅读相关应用笔记,可以快速找到解决实际问题的方法[^7]。 #### 3. **软件工具介绍** 为了高效地开发基于 igloo2 FPGA 的项目,推荐使用以下工具: - **Libero SoC 设计套件** Libero 是 Microsemi 提供的体化开发环境,集成了综合、布局布线、仿真等功能。开发者可以通过此平台创建并验证自己的设计方案[^8]。 - **Design Examples and Reference Designs** 微软还发布了大量设计实例和参考设计,帮助工程师理解复杂系统的构建方式。例如,“Low-Power USB Bridge”展示了如何将 igloo2 配置为 USB 主机控制器[^9]。 #### 4. **社区与论坛支持** 除了正式出版物之外,在线交流也是获取知识的重要途径之。加入 Microsemi 官方论坛或其他第三方讨论区可以让您与其他使用者互动,共同探讨难题或分享心得体验[^10]。 ```python # 示例 Python 脚本用于调用 Libero API 自动化某些流程 import libero_api as la def setup_project(project_name, device_type="igloo2"): project = la.create_new_project(project_name) project.set_device(device_type) return project if __name__ == "__main__": my_proj = setup_project("MyFirstIGLOOProject") print(f"Created new project {my_proj.name} targeting IGLOO2.") ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值