Synthesis关于模块设计的建议

一、  Maintain  Synchronous  Sub-Blocks by Registering All Outputs.

设计的子模块应该使用寄存器输出,以便更好地优化时序。

二、   Keep Related Logic Together in the Same Block.

把逻辑相关的部分放在同一个模块。

三、Separate Logic with Different Optimization Goals.

把不同输出目的放在不同的模块。

四、Keep Instantiated Code in Separate Blocks.

把实例化的核放在单独的模块中。

时间: 2024-11-05 16:25:35

Synthesis关于模块设计的建议的相关文章

框架模块设计经验总结

转自:http://www.cnblogs.com/zgynhqf/archive/2011/07/15/2107593.html 这是原创,尊重原创............ 框架模块设计经验总结 三个月没写日志了,比较懒散--下半年准备做OEA 的 B/S 版本,比较复杂,需要从架构设计开始认真入手.正好今天到了部门反思的时间,今天先把原来的一些设计经验总结一下,以方便将来回顾. 直入主题,这篇日志主要用于总结一些框架级别的模块设计经验. 总述 一个大型的框架,必然由多个较独立的子系统/子模块

模块设计与实现经验总结(三)

3  模块详细设计指南与规范 模块详细设计要完成两个方面工作:一是明确模块的功能需求和非功能需求.二是设计如何完成和实现模块的功能需求,包括类结构.线程结构设计等.本节根据后台模块特点,描述了两部分工作需要考虑和设计的关键点. 3.1确定模块的功能规格 1) 本模块概述 概述主要描述了本模块所属子系统,以及在子系统中所承当职责的简单描述. 2) 本模块在系统中与周围模块关系和交互情况 很多模块一般要依赖周围的模块或者数据库,为此建议以图形方式描述本模块与本模块依赖的其他模块或者数据库之间交互情况

Windows平台RTMP/RTSP直播推送模块设计和使用说明

开发背景 好多开发者一直反馈,Windows平台,做个推屏或者推摄像头,推RTMP或者RTSP出去,不知道哪些功能是必须的,哪些设计是可有可无的,还有就是,不知道如何选技术方案,以下是基于我们设计的Windows平台RTSP.RTMP直播推送模块,设计和使用说明,供大家参考. 整体方案架构 Windows平台RTMP或RTSP推送,系采集端模块,主要完成,屏幕或者摄像头数据.麦克风或扬声器数据的采集,编码,然后按照特定格式打包,通过RTMP或者RTSP传输出去,实现直播目的. 对应设计架构图的“

app模块设计

至于app模块设计,要坚持三个原则: 1.放羊,让用户决定模块间的组合与穿插. 2.滥竽充数,对于用户不希望的模块,可以悄悄植入以实现产品目标. 3.照葫芦画瓢,遵守用户在其它APP上的既有习惯,组合各个模块和布置页面内容.工具.操作. 目前,依照以上原则,突出产品特色,忽略次要因素,大概搭建了app的几大模块,如图

缓存模块设计

NET 缓存模块设计 上一篇谈了我对缓存的概念,框架上的理解和看法,这篇承接上篇讲讲我自己的缓存模块设计实践. 基本的缓存模块设计 最基础的缓存模块一定有一个统一的CacheHelper,如下: public interface ICacheHelper { T Get<T>(string key); void Set<T>(string key, T value); void Remove(string key); } 然后业务层是这样调用的 public User Get(in

关于阻抗设计的建议-来至深南电路板厂的心水总结

关于阻抗设计的建议-来至深南电路板厂的心水总结 PCB设计规范与指南, 高频高速PCB设计 by xfire 特征阻抗高速电路设计 随着通信科技的不断提升,必然对PCB的要求也有了相应的提高,传统意义上PCB已受到严峻的挑战,以往PCB的最高要求open&short从目前来看已变成PCB的最基本要求,取而代之的是一些为保证客户设计意图的体现而在PCB上所体现的性能的要求.如阻抗控制等. 深南电路公司作为中国大陆最早为通信企业提供PCB的厂商,在1997年就对该课题进行研究和开发. 到目前为止有&q

2017.7.1 慕课网-Java从零打造企业级电商项目实战:用户模块设计与开发

2. 用户模块设计与开发 2.1 要实现的功能 2.2 mmall_user表 2.3 用户模块接口设计 (1)门户-用户接口 http://git.oschina.net/imooccode/happymmallwiki/wikis/%E9%97%A8%E6%88%B7_%E7%94%A8%E6%88%B7%E6%8E%A5%E5%8F%A3 (2)后台-用户接口 http://git.oschina.net/imooccode/happymmallwiki/wikis/%E5%90%8E%E

thinkphp 5.0 模块设计

模块设计 5.0版本对模块的功能做了灵活设计,默认采用多模块的架构,并且支持单一模块设计,所有模块的命名空间均以app作为根命名空间(可配置更改). 目录结构 标准的应用和模块目录结构如下: ├─application 应用目录(可设置) │ ├─common 公共模块目录(可选) │ ├─common.php 公共函数文件 │ ├─route.php 路由配置文件 │ ├─database.php 数据库配置文件 │ ├─config.php 应用配置文件 │ ├─module1 模块1目录

关于系统模块设计的一点疑问?

哎,昨晚又和女朋友吵架了,心太累!! 一个刚参加工作的程序员. 好了,昨天在做模块设计的时候有点疑问,不知道合不合适,就是“一个模块的设计需不需要考虑另外一个模块的方便而提供一些接口呢?”,(在这里我用A模块和B模块).总是感觉如果A模块能提供一些接口,那样B模块就会少写很多代码,而且代码结构也会看起来很清晰,不用写很多重复的代码.但是,对于A模块而言,对于自身的需求,是完全不需要用到那些接口的.举个很简单的例子 /* * 内部数据层 */ class A { public: int getCh