数字后端基本概念介绍<Keepout Margin>

640?wx_fmt=gif

今天我们要介绍的数字后端基本概念是Keepout Margin(避开圈)。 这也是blockage的一种,只是比较特殊,它会随着cell一起移动,有点类似覆盖在这个cell上,在这个光圈内的区域不能放置其他单元。当几个Macro之间有congestion问题时,可以添加一些Keepout Margin,阻碍buffer, inverter的插入。下图中的外面一圈就是Keepout Margin。我们可以添加的Keepout Margin的种类有很多,我们可以添加hard placement blockage, soft placement blockage, route blockage等。

hard: 是约束最严格的blockage,该区域范围内,place,legalize, optimize,CTS等任何阶段都不能摆放instance。

soft:该区域内,在placement阶段不允许摆放instance,但是在legalize,optimize阶段时允许摆放instance的。

640?wx_fmt=jpeg

使用方法:

命令:

create_keepout_margin -type hard -outer {10 10 10 10} [get_cells RAM1]


640?wx_fmt=jpeg

公司招聘

各大IC公司招聘各类IC工程师

简历请戳邮箱:taozhang3260@163.com

### Vue.js `<keep-alive>` 组件使用说明 #### 1. 什么是 `<keep-alive>` `<keep-alive>` 是 Vue.js 提供的一个抽象组件,用于缓存动态组件实例,而不是销毁它们。这样当这些组件重新显示时,可以保留其状态,避免重复渲染,从而提高应用性能和用户体验[^4]。 #### 2. 工作原理 - **缓存机制**: 当被包裹的动态组件切换时,`<keep-alive>` 将会把不活跃的组件实例保存到内存中,而不会销毁它们。 - **缓存策略**: 可以通过 `include`, `exclude` 属性来指定哪些组件应该被缓存或排除在外。 #### 3. 基本用法 最简单的形式如下所示: ```html <!-- 单独使用 --> <keep-alive> <component :is="view"></component> </keep-alive> <script> export default { data() { return { view: 'ComponentA' } }, } </script> ``` #### 4. 结合 Vue Router 使用 为了实现路由级别的缓存效果,在搭配 vue-router 时通常采用这种方式: ```html <template> <div id="app"> <!-- 路由视图会被自动缓存 --> <keep-alive> <router-view v-if="$route.meta.keepAlive"></router-view> </keep-alive> <!-- 不需要缓存的页面正常展示 --> <router-view v-if="!$route.meta.keepAlive"></router-view> </div> </template> ``` 这里需要注意的是,如果直接将 `<router-view>` 放入 `<keep-alive>` 内部可能会引起警告信息,因此建议按照上述方式处理特定条件下的缓存需求[^2]。 #### 5. 控制缓存范围 可以通过设置 `max` 参数限制最大缓存量;也可以利用 `include/exclude` 来精确控制哪些组件参与缓存: ```html <keep-alive :include="['ComponentA', 'ComponentB']" max="10"> ... </keep-alive> ``` 以上就是关于 Vue.js 中 `<keep-alive>` 组件的主要介绍及其常见应用场景。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值