发明名称 一种多层次协同低功耗设计方法
摘要 一种多个层次协同低功耗设计方法,它有五大步骤:步骤一:搭建SoC片上系统;步骤二:系统级低功耗设计;步骤三:寄存器传输级低功耗设计;步骤四:门级低功耗设计;步骤五:系统功能验证。本发明采用自顶向下的设计方法,将每个层次之间的功耗优化的成果叠加起来,将多个层次协同进行低功耗设计,更好的根据需求进行功耗的优化以及取舍;整个系统在降低功耗的同时可以保证功能的正常,具有更加显著的降低功耗的效果。
申请公布号 CN103412990A 申请公布日期 2013.11.27
申请号 CN201310337396.4 申请日期 2013.08.05
申请人 北京航空航天大学 发明人 王翔;张溢
分类号 G06F17/50(2006.01)I;G06F1/32(2006.01)I 主分类号 G06F17/50(2006.01)I
代理机构 北京慧泉知识产权代理有限公司 11232 代理人 王顺荣;唐爱华
主权项 一种多层次协同低功耗设计方法,其特征在于:该方法具体步骤如下:步骤一:搭建SoC片上系统SoC片上系统由处理器CPU、SDRAM、通用I/O接口即GPIO接口、同步JTAG模块、通用串口控制器UART、可编程中断控制器PIC、定时器以及电源管理模块这些部分组成,处理器CPU通过系统总线与SDRAM、通用I/接口即GPIO接口、通用串口控制器UART、可编程中断控制器PIC、定时器以及电源管理模块连接并进行数据交互,同步JTAG模块则通过调试接口与处理器CPU相连接;通过这些模块给实验搭建了应有的硬件设备,并通过同步JTAG模块以及通用串口控制器UART接口跟上位机进行通信,从而实现整个系统的在线调试,并对整个系统进行相关的功能测试,确保系统整体以及各个模块正常工作;步骤二:系统级低功耗设计SoC片上系统的工作模型抽象为以下几个状态:包括空闲,请求,准备,运行以及结束;当SoC片上系统工作完毕后,系统工作模式将进入“空闲”的状态,并一直停留在这个状态,一直到系统有了新的请求,才会再一次进入一系列其他的状态;由此将SoC片上系统所处于的状态分为两类,分别是“空闲”状态以及“工作”状态;当SoC片上系统处于“空闲”状态时,判断总线对处理器CPU的请求是否有效,如果请求有效,那么就打开门控时钟,让时钟接入模块,使其正常工作;否则就关闭门控时钟,使系统节省功耗;步骤三:寄存器传输级低功耗设计根据步骤一、二所述,寄存器传输级的低功耗设计十分重要,需要设计受可编程中断控制器PIC控制的电源管理模块、通过电源管理模块控制关闭或者开启系统时钟的门控时钟模块以及将系统与上位机连接并对系统进行在线调试的JTAG接口;系统通过同步JTAG模块链接上位机以及可编程中断控制器PIC,通过写入滴答定时器的寄存器来设定,当处理器CPU处于空闲状态一定时间时,产生一个中断信号给可编程中断控制器PIC,然后会产生一个待机信号“doze”,使电源管理模块进入doze模式,同时由电源管理模块将clockgating_cpu这个使能信号拉低,这样就关闭了处理器CPU的时钟信号,使SoC片上系统进入待机状态,此时系统对之前的任务进行压栈处理,以便唤醒时快速恢复“工作”状态;也直接由同步JTAG模块写可编程中断控制器PIC的寄存器,使可编程中断控制器PIC直接输出“sleep”休眠信号,控制电源管理模块,让它将控制门控时钟模块的两个使能信号同时拉低,这样就同时关闭处理器CPU以及滴答定时器即Tick Timer的时钟信号,使系统进入休眠状态以节省功耗;总线上接到进入“工作”状态的请求信号时,可编程中断控制器PIC输出中断信号,使电源管理模块输出一个“wakeup”的唤醒信号给电源管理模块,使其清空之前的“待机”或者“休眠”状态寄存器,将控制门控时钟模块的两个使能信号还原为高电平,打开处理器CPU以及滴答定时器即Tick Timer的时钟信号,并将其之前进行压栈处理的信号还原,使处理器CPU快速唤醒,并进入“工作”状态,这样便完成了整个SoC片上系统在寄存器传输级的低功耗 设计;其中门控时钟设计采用基于锁存器的门控时钟电路,此种电路结构电学特性相对稳定,且不容易产生毛刺信号,保留门控时钟信号完整的上升沿,很好的控制系统时钟;步骤四:门级低功耗设计针对整个系统寄存器在对寄存器传输级代码进行门级电路综合的过程中对全局进行时钟控制,通过EDA软件对门级网表中的全局触发器以及寄存器插入集成门控时钟单元ICG,通过EDA工具对全局超过90%的寄存器或者触发器进行门控时钟设计,从而通过集成门控时钟单元ICG控制全局触发器以及寄存器的时钟信号,让全局触发器以及寄存器的时钟信号都在空闲状态下被关闭,避免全局触发器以及寄存器的时钟信号无效翻转,使系统的动态功耗普遍降低40%以上;由于集成门控时钟单元ICG已经作为EDA中的标准单元模块,所以不需要单独设计,只需要通过脚本对整个系统插入并加以利用即可;步骤五:系统功能验证通过静态时序仿真以及形式验证,对步骤四中生成的门级网表进行相关仿真验证,得到静态时序分析报告,并分析时序报告结果,确保其最长时许路径满足系统时序要求;通过形式验证对比寄存器传输级的硬件描述语言与EDA工具生成的门级网表之间的差异,要确保通过形式验证,使其寄存器传输级的硬件描述语言与门级网表的逻辑等效;通过以上验证之后,要对整个系统功能在FPGA中进行与上位机的联调,确保其功能正常,并且能够正确判定空闲和工作状态,产生门控使能信号,关闭或者开启系统时钟;如果不满足以上验证结果则需要回到步骤二,对系统重新进行低功耗设计的修改。
地址 100191 北京市海淀区学院路37号