0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

进行design partition时,为什么推荐使用register out的方式

lhl545545 来源:IP与SoC设计 作者:IP与SoC设计 2022-08-18 11:54 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

使用Verilog设计电路模块时,为什么推荐使用register out的方式?

在进行design partition时,相比register in更推荐register out,请问为什么呢?如果前后两个模块时钟域不同,register in会有什么问题?

@0431大小回:

1.为了logic level可控:因为一般大一点的工程都是多人负责的模块化设计,如果你的输出不是寄存器输出,而是组合逻辑直接输出,这样别人在衔接你这个模块的时候,根本不知道你的输出前有多少级组合逻辑级数。如果在输入的时候寄存也可以,但是这样就相当于我们把自己该做好的事情让别人来做了,所以这个时候就约定俗成的让输出都寄存。这样可以在写或者修改该模块的设计者能掌握好自己设计的逻辑级数.

2.为了约束:以FPGA设计为例,在后续做implementation的时候,有的时候发现wns比较差是因为fanout比较高,比如某些关键使能信号驱动了多个大位宽数据。这个时候可以在顶层模块例化连接找到这个信号,显式限制(max_fanout = xxx)。但是在vivado里这个语句只适用于寄存器,而不适用于wire形变量,所以我猜测还有一些其他的显示约束方法对寄存器输出有强需求。

@顽猴溜溜:

你这个问题,必须从物理实现的角度来解释。

1.如果fanout目标一个在东、一个在西,那么register out很容易clone成东西两个register,来优化布线,且不会引入任何额外的延时。register in的优化就没这么简单了。

2.如果fanout目标成千上万(high fanout),那么register out很容易clone成多组register,来降低fanout优化布线,且不会引入任何额外的延时。register in的优化就没这么简单了。

3.如果连线过长需要引入额外的延时,那么register out很容易插入repeater或pipeline,而register in的处理相对更困难。

4.register out的时序行为更容易描述,且不会出现毛刺,所以工艺迁移更容易,标准IP也更喜欢。

审核编辑:彭静

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    31

    文章

    5590

    浏览量

    129173
  • 时钟
    +关注

    关注

    11

    文章

    1955

    浏览量

    134597
  • Register
    +关注

    关注

    0

    文章

    36

    浏览量

    14377

原文标题:使用Verilog设计电路模块时,为什么推荐使用register out的方式?

文章出处:【微信号:IP与SoC设计,微信公众号:IP与SoC设计】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    ‌STM32工业数字输出扩展板X-NUCLEO-OUT05A1技术解析与应用指南

    STMicroelectronics X-NUCLEO-OUT05A1扩展板用于评估IPS1025H的驱动和诊断功能。IPS1025H是一款单通道高侧智能电源固态继电器,采用数字输出模块(连接
    的头像 发表于 10-29 16:19 528次阅读
    ‌STM32工业数字输出扩展板X-NUCLEO-<b class='flag-5'>OUT</b>05A1技术解析与应用指南

    利用蜂鸟E203搭建SoC【2】——外部中断扩展与验证

    在SoC设计中一个重要通信方式就是中断,中断可以避免轮询方式造成的cpu空转消耗,可以更好利用cpu资源。蜂鸟e203中提供了plic外部中断总线进行中断的控制与配置,但在demo中已经被外设全部
    发表于 10-29 07:14

    STMicroelectronics X-NUCLEO-OUT09A1/OUT19A1扩展板数据手册

    STMicroelectronics X-NUCLEO-OUT09A1/OUT19A1扩展板基于STM32核的IPS8160HQ/IPS8160HQ-1八通道高边开关。这些扩展板为评估连接到0.7A
    的头像 发表于 10-27 11:48 329次阅读
    STMicroelectronics X-NUCLEO-<b class='flag-5'>OUT</b>09A1/<b class='flag-5'>OUT</b>19A1扩展板数据手册

    ‌X-NUCLEO-OUT16A1工业数字输出扩展板技术解析与应用指南

    STMicroelectronics X-NUCLEO-OUT16A1扩展板设计用于STM32 Nucleo,用于评估IPS8200HQ八通道高侧智能功率继电器
    的头像 发表于 10-22 15:14 305次阅读
    ‌X-NUCLEO-<b class='flag-5'>OUT</b>16A1工业数字输出扩展板技术解析与应用指南

    基于RK3576开发板的HDMI-OUT使用说明

    RK3576开发板的HDMI-OUT使用说明
    的头像 发表于 05-06 16:48 1124次阅读
    基于RK3576开发板的HDMI-<b class='flag-5'>OUT</b>使用说明

    基于RK3576开发板的HDMI-OUT使用

    EASY EAI Orin-Nano的HDMI OUT接口支持2.1协议,并且向下兼容2.0,1.4。具体分辨率与帧率,可对接入的屏幕进行自适应。
    的头像 发表于 05-06 15:59 827次阅读
    基于RK3576开发板的HDMI-<b class='flag-5'>OUT</b>使用

    S32Design Studio出错的原因?

    安装 Windows 版本的 S32Design Studio 并构建我们的项目时,发生以下错误。 ----- make -j12 全部 1 [main] make 1916 dofork:子进程
    发表于 04-11 07:05

    请问如何设置为Pad Control Register IOMUXC_SW_PAD_CTL_PAD_BOOT_MODE1?

    我想将 imx8mm 中 Pad Control Register IOMUXC_SW_PAD_CTL_PAD_BOOT_MODE1 的任何值设置为。 在 i.MX8M Mini
    发表于 04-08 06:54

    如何使用S32 Design Studio for ARM将自定义数据放入SRAM中以进行S32K146?

    如何使用 S32 Design Studio for ARM 将自定义数据放入 SRAM 中以进行S32K146?
    发表于 04-01 08:27

    ADS1298 RESP register set to: -VREF to VREFP是如何配置的?

    今天刚刚拿到ADS1298RECG-FG ECG Front-End PDK,在测试呼吸时,按照手册5.2.2 Software Configuration说明的配置,其他都配置好了,但是不知道RESP register set to: -VREF toVREFP是如何配置的,希望得到解答,谢谢!
    发表于 02-11 08:32

    ADS1115读Conversion Register一直读出0,为什么?

    请问在使用 ADS1115时, 写入及读取 Config Register都正常, 例如: Config的Operational status在转换中的0变成1都可读出, 但不论以 Power
    发表于 01-10 10:36

    使用外部MCU控制PGA450进行测距,怎么才能进入SPI模式?

    to bit 0 of the MICRO RESET test register,意思是通过这样的方式可以进入SPI模式,内部MCU不工作,但是在手册中没有找到 MICRO RESET test register这个寄存器的
    发表于 01-08 07:02

    Design House与Fab的关系

    (Fab)形成互补关系。它负责芯片的功能设计与验证,将最终设计成果交付晶圆厂进行制造。设计公司不直接参与生产,而是通过EDA(电子设计自动化)工具、算法优化和设计规则约束,实现高效的芯片研发。 可以将Design House理解为“芯片建筑师”,而Fab是“芯片施工队”。
    的头像 发表于 01-07 09:59 1528次阅读

    ADS1282 Register mode(PIN=0)需要我们进行配置吗?

    这是ADS1282数据手册上的,那个Register mode(PIN=0)需要我们进行配置吗,是在哪里配置啊
    发表于 01-06 07:11

    ADS1278EVM-PDK不给SCLK信号的话,OUT1处没有波形出来,怎么解决?

    看到说ADS1278不需要启动信号,上电后即开始进行转换。这里的意思是上电后有CLK信号就开始转换,然后就可以在OUT引脚输出波形吧?有没有SCLK都会进行转换,输出波形?但我在
    发表于 12-23 07:05