数字ic后端设计从入门到精通2(含fusion compiler, tcl教学)
上篇回顾
上一篇文章需要讨论了net,pin的基础用法,让我们来看一下高级一点的用法
instance
current_instance
current_instance
是 Synopsys 工具(如 Fusion Compiler 或 Design Compiler)中用于在设计层次结构中导航的关键命令。它允许用户设置当前的工作实例(即设计中的某个子单元或模块),从而使得其他命令可以相对于该实例执行操作。
以下是对 current_instance
命令的详细说明和用法介绍:
1. 基本功能
-
作用:
- 设置当前工作实例(instance)。
- 定义命令执行的上下文(context),以便后续命令(如
get_cells
,get_nets
,report_timing
等)能够针对特定的实例范围运行。
-
与
current_design
的区别:current_design
:设置当前的设计(design)并自动将上下文重置到设计的顶层。current_instance
:仅设置当前实例,而不改变设计本身。
2. 语法
current_instance [instance]
- 参数:
instance
:- 指定要切换到的目标实例路径。
- 如果未指定
instance
参数,则返回到当前设计的顶层(top-level)。 - 支持多种格式的路径表达方式(见下文)。
3. 参数详解
(1) 不指定参数
- 效果:
- 返回到当前设计的顶层(top-level)。
- 示例:
current_instance
- 输出可能为:
Current instance is the top-level of block 'TOP.design'.
- 输出可能为:
(2) 使用 "."
- 效果:
- 保持当前实例不变。
- 示例:
current_instance .
- 当前实例不会发生变化。
(3) 使用 ".."
- 效果:
- 将上下文向上移动一级(类似于 UNIX 中的
cd ..
)。
- 将上下文向上移动一级(类似于 UNIX 中的
- 示例:
current_instance ..
- 如果当前实例是
TOP/U1/U2
,则切换到TOP/U1
。
- 如果当前实例是
(4) 使用具体实例名称
- 效果:
- 切换到指定的子单元实例。
- 示例:
current_instance U1
- 如果当前设计是
TOP
,则切换到TOP/U1
。
- 如果当前设计是
(5) 多级路径
- 效果:
- 可以通过使用斜杠
/
遍历多级层次结构。
- 可以通过使用斜杠
- 示例:
current_instance U1/U2
- 如果当前设计是
TOP
,则切换到TOP/U1/U2
。
- 如果当前设计是
(6) 使用绝对路径
- 效果:
- 路径以
/
开头时,会同时设置当前设计和实例。
- 路径以
- 示例:
current_instance /TOP/U1
- 将当前设计设置为
TOP
,并将实例切换到TOP/U1
。
- 将当前设计设置为
(7) 使用相对路径
- 效果:
- 结合
".."
和具体实例名称,可以在当前上下文中灵活导航。
- 结合
- 示例:
current_instance "../../U3"
- 如果当前实例是
TOP/U1/U2
,则切换到TOP/U3
。
- 如果当前实例是
4. 示例场景
(1) 查看当前实例
current_instance
- 输出:
Current instance is the top-level of block 'TOP.design'.
(2) 切换到子单元
current_instance U1
- 输出:
U1
(3) 返回到上一级
current_instance ..
- 输出:
Current instance is the top-level of block 'TOP.design'.
(4) 遍历多级层次
current_instance U1/U2
- 输出:
U1/U2
(5) 使用绝对路径
current_instance /TOP/U1
- 输出:
U1
(6) 返回到顶层
current_instance /
- 输出:
Current instance is the top-level of block 'TOP.design'.
(7) 查询所有实例
结合 all_instances
查询当前层级的所有实例:
query_objects [all_instances]
- 输出:
{"U1", "U2", "U3", "U4"}
5. 注意事项
-
实例路径的正确性:
- 确保指定的实例路径存在。如果路径错误,工具会报错:
Error: Nothing matched for instance (SEL-005)
- 确保指定的实例路径存在。如果路径错误,工具会报错:
-
设计加载状态:
- 确保设计已正确加载(通过
link
和report_design
检查)。
- 确保设计已正确加载(通过
-
区分大小写:
- 实例名称通常是区分大小写的,请确保拼写正确。
-
多线程环境:
- 在多线程环境中,不同线程可能会有不同的
current_instance
上下文,需注意隔离。
- 在多线程环境中,不同线程可能会有不同的
6. 总结
current_instance
是一个强大的命令,用于在设计层次结构中导航。以下是常用的用法总结:
-
返回到顶层:
current_instance
-
切换到子单元:
current_instance U1
-
返回到上一级:
current_instance ..
-
遍历多级层次:
current_instance U1/U2
-
使用绝对路径:
current_instance /TOP/U1
redirect
要在 Synopsys 工具(如 Fusion Compiler 或 Design Compiler)中将某个命令的输出结果保存到 .txt
文件中,可以使用 redirect
命令。以下是完整的命令和步骤。
完整命令
假设你要对 get_nets
命令的输出结果进行重定向,并保存到 nets_output.txt
文件中:
redirect /home/nets_output.txt {get_nets}
解释
-
redirect
:- 这是 Synopsys 提供的一个专门用于重定向输出的命令。
- 它会将指定命令的输出保存到文件中。
-
/home/nets_output.txt
:- 输出文件的路径和名称。
- 如果文件已存在,默认会被覆盖。
- 如果目录不存在,请先创建它:
mkdir -p /home/result
-
{get_nets}
:- 要执行的命令及其输出将被重定向。
{}
用于包裹命令,确保复杂命令能够正确解析。
追加模式(可选)
如果你希望将输出追加到现有文件中,而不是覆盖文件内容,可以使用 -append
选项:
redirect -append /home/result/nets_output.txt {get_nets}
验证输出
-
执行上述命令后,检查文件是否生成:
ls /home/result/nets_output.txt
-
查看文件内容:
cat /home/result/nets_output.txt
注意事项
-
目录权限:
- 确保
/home/result
目录存在,并且当前用户对该目录有写权限。 - 如果没有权限,可以尝试以下命令更改权限:
chmod 755 /home/result
- 确保
-
路径格式:
- 使用绝对路径(如
/home/result/nets_output.txt
)以避免路径问题。 - 如果使用相对路径,请确保当前工作目录
- 使用绝对路径(如
reference
Reference(引用)
Reference 通常指的是对库单元或模块的引用。它代表了一个特定类型的单元或模块定义,该定义存在于库中。例如,在标准单元库中,AND2X1
可能是一个逻辑门的定义,这个定义可以被多次引用以创建多个实例。
-
特点:
- 唯一性:每个参考(Reference)通常是唯一的,表示一种特定类型的设计单元。
- 复用性:一个参考可以在设计中被多次使用,每次使用都会创建一个新的实例。
- 定义性:它包含了关于单元的功能、时序模型等信息,但并不包含具体的位置或连接信息。
-
示例:
如果你有一个名为AND2X1
的标准单元库中的逻辑门,那么AND2X1
就是这个逻辑门的 reference。无论你在设计中放置了多少个这样的逻辑门,它们都引用同一个AND2X1
reference。
Instance(实例)
Instance 是基于某个 reference 创建的具体对象。它是 reference 在设计中的具体实现,具有明确的位置、连接和其他物理属性。换句话说,instance 是 reference 在设计中的具体化。
-
特点:
- 多样性:同一 reference 可以有多个 instance,每个 instance 都可能有不同的位置、名称、参数设置等。
- 具体性:instance 包含了具体的物理布局信息,如坐标位置、连线关系等。
- 命名:每个 instance 都有一个唯一的名称,用于区分设计中的其他 instances。
-
示例:
假设你在设计中放置了三个AND2X1
的逻辑门,这三个逻辑门将分别成为独立的 instances,比如u1
,u2
,u3
。尽管它们都是基于同一个AND2X1
reference 创建的,但在设计中它们是独立的对象,可能位于不同的位置,并且与不同的信号相连。
总结
- Reference:是对库中某种类型单元的定义或模板,它定义了单元的功能、特性等信息。
- Instance:是基于 reference 创建的具体对象,具有明确的位置、连接等物理属性。
在实际操作中,当你查看设计时,report_reference
命令会显示所有使用的 references(即设计中引用的不同单元),而 current_instance
则允许你在设计的层次结构中导航,聚焦于特定的 instance 上进行更详细的操作或检查。理解这两者之间的关系有助于更好地管理和优化你的设计。
如何检查并确认设计是否已正确加载所有部分
1. 使用 report_reference
查找未解析的引用
report_reference
- 这个命令会列出所有单元及其状态。查找是否存在任何标记为
unresolved
的单元。
2. 正确使用 check_design
为了确保全面检查设计,可以尝试如下命令:
check_design -checks {all}
或者更具体地:
check_design -checks {unresolved_references unconnected_ports}
这将帮助识别设计中存在的潜在问题,如未解析的引用或未连接的端口。
3. 验证 current_instance
的路径
既然 link
已经确认设计已加载,接下来需要确保你尝试切换到的实例路径是正确的。基于你之前的描述,如果 reuse_wrapper_dummy_tile_t
存在于设计中,你应该使用其完整路径进行切换:
current_instance reuse_wrapper/reuse_wrapper_dummy_tile_t
确保路径是从顶层设计开始的完整路径。
-
link
命令的输出:- 输出表明设计已经链接(“Block ‘TileBuilderIntFX_Apr-20-2025_37.nlib:reuse_wrapper.design’ is already linked.”),这意味着
link
命令确认设计已经被正确加载。 - 但是,这并不直接说明设计中的所有实例都能被正确解析。它仅表示库和设计之间的基本连接没有问题。
- 输出表明设计已经链接(“Block ‘TileBuilderIntFX_Apr-20-2025_37.nlib:reuse_wrapper.design’ is already linked.”),这意味着
-
report_reference
的输出:- 你提到的输出实际上是库中不同单元的信息,而不是
report_reference
命令的结果。这些信息显示了当前设计引用的不同单元及其面积等属性。 - 要检查未解析的引用,应该使用
report_reference
命令,并关注是否有任何标记为unresolved
的条目。
- 你提到的输出实际上是库中不同单元的信息,而不是
-
check_design
命令的错误:- 错误提示
-checks
参数是必需的。这是因为check_design
需要指定具体要执行的检查类型。例如,你可以通过以下方式运行check_design
来检查特定方面的问题:check_design -checks {all}
- 或者针对特定类型的检查,如未连接端口、未解析的引用等:
check_design -checks {unresolved_references unconnected_ports}
- 错误提示
pitch
在 Fusion Compiler 的布局布线领域,pitch
是一个非常重要的参数,它用于定义设计元素之间的间距。这个概念贯穿于多个方面,包括标准单元的排列、电源网格的设计、以及信号线的布线等。理解 pitch
的含义及其在不同场景下的应用对于优化设计性能和确保物理实现的成功至关重要。
Pitch 的基本定义
- Pitch:指的是两个相邻结构(例如金属线条、晶体管栅极、标准单元或电源条带)中心点之间的距离。它可以是水平方向上的间距(x_pitch),也可以是垂直方向上的间距(y_pitch)。Pitch 决定了这些结构在物理层面上的密度和分布方式。
在布局布线中的具体应用
1. 标准单元布局
- 在标准单元布局中,
pitch
可以指一行或一列标准单元之间的距离。这直接影响到芯片的面积利用率和布线复杂度。 - 通过调整
pitch
,设计师可以优化单元之间的间距,确保有足够的空间进行信号线的布线,同时尽量减少芯片的整体面积。
2. 电源网格设计
- 在电源网格设计中,
pitch
指的是电源/地线之间的间距。合理的电源网格pitch
对于保证电源分配网络(PDN)的质量至关重要。 - 例如,在创建电源环 (
create_pg_ring
) 或电源网 (create_pg_mesh
) 时,pitch
参数决定了电源条带或过孔之间的距离,从而影响电源传输效率和电压降(IR Drop)。
3. 自动布线
- 在自动布线过程中,
pitch
可能涉及到设定导线之间的最小间隔,以满足制造工艺的要求,并防止短路或其他电气问题。 - 调整
pitch
值可以帮助工具更好地处理拥挤区域,提高布线成功率。
总结
在 Fusion Compiler 的布局布线流程中,pitch
参数主要用于控制设计元素之间的间距,无论是标准单元、电源网格还是信号线。合理设置 pitch
值可以帮助优化设计的性能指标,如面积利用率、电源完整性、布线成功率等。理解并正确使用 pitch
对于实现高效且可靠的物理设计至关重要。
相关文章:
数字ic后端设计从入门到精通2(含fusion compiler, tcl教学)
上篇回顾 上一篇文章需要讨论了net,pin的基础用法,让我们来看一下高级一点的用法 instance current_instance current_instance 是 Synopsys 工具(如 Fusion Compiler 或 Design Compiler)中用于在设计层次结构中导航的关键命令。它允许用…...
Vue2集成ElementUI实现左侧菜单导航
文章目录 简介静态导航安装element-ui,vue-router,vuex编写router/index.jsmain.js中引入elementui,router编写左侧导航返回的菜单数据 动态导航编写router/index.js左侧菜单通过for循环生成通过for循环递归生成 store/index.jsmain.js中引入store登录页面代码菜单返回数据 总结…...
Flask API 项目 Swagger 版本打架不兼容
Flask API 项目 Swagger 版本打架不兼容 1. 问题背景 在使用 Flask 3.0.0 时遇到以下问题: 安装 flask_restful_swagger 时,它强制将 Flask 降级到 1.1.4,并导致其他依赖(如 flask-sqlalchemy、flask-apispec)出现版…...
spark和Hadoop的区别和联系
区别 计算模型 Hadoop:主要基于 MapReduce 计算模型,将任务分为 Map 和 Reduce 两个阶段,适合处理大规模的批处理数据,但在处理迭代式计算和交互式查询时性能相对较差。Spark:基于内存的分布式计算框架,采…...
Unity接入安卓SDK(2)接入方式
1 方式一:SDK打成aar形式放入Unity 把SDK编译成aar,然后把aar文件、manifest文件放入Unity工程的Assets/Plugins/Android目录下,以及libs下,没有的文件夹就自己新建. SDK的aar包也可以放入Assets/Plugins/Android目录中 其中一…...
【HDFS入门】深入解析DistCp:Hadoop分布式拷贝工具的原理与实践
目录 1 DistCp概述与应用场景 2 DistCp架构设计解析 2.1 系统架构图 2.2 执行流程图 3 DistCp核心技术原理 3.1 并行拷贝机制 3.2 断点续传实现原理 4 DistCp实战指南 4.1 常用命令示例 4.2 性能优化策略 5 异常处理与监控 5.1 常见错误处理流程 5.2 监控指标建议…...
电力MOSFET漏源过电压与窄脉冲自保护驱动电路
1 电力MOSFET的漏源过电压 2 窄脉冲自保护驱动电路说明 3 脉冲变压器设计说明 1 电力MOSFET的漏源过电压 如果器件接有感性负载,则当器件关断时,漏极电流的突变(di/dt)会产生比外部电源高的多的漏极尖峰电压,导致器件的击穿。电力MOSFET关断得越快,产生的过电压越高…...
【scikit-learn基础】--『监督学习』之 均值聚类
聚类算法属于无监督学习,其中最常见的是均值聚类,scikit-learn中,有两种常用的均值聚类算法: 一种是有名的K-means(也就是K-均值)聚类算法,这个算法几乎是学习聚类必会提到的算法; 另一个是均值偏移聚类,它与K-means各有千秋,只是针对的应用场景不太一样,但是知名度…...
Android 15强制edge-to-edge全面屏体验
一、背景 Edge-to-edge 全面屏体验并非 Android 15 才有的新功能,早在 Android 15 之前系统就已支持。然而,该功能推出多年来,众多应用程序依旧未针对全面屏体验进行适配。因此,在 Android 15 的更新中,Google 终于决…...
广州可信数据空间上线:1个城市枢纽+N个产业专区+高质量数据集(附28个数据集清单)
广州数据要素市场今日迎来历史性突破!全国首个城市可信数据空间正式上线,首批28个高质量数据集同步出台,覆盖生物医药、智能装备、绿色低碳等12大产业领域,激活37个高价值场景。 一、广州城市可信数据空间:1个城市枢纽…...
AgentGPT开源程序可以在浏览器中组装、配置和部署自主人工智能代理
一、软件介绍 文末提供程序和源码下载学习 AgentGPT开源程序可以允许您配置和部署自主 AI 代理。命名您自己的定制 AI 并让它开始实现任何可想象的目标。它将通过思考要执行的任务、执行它们并从结果中学习来尝试达到目标。 二、开始使用 AgentGPT 入门最简单的方式是使用项目…...
前端笔记-Axios
Axios学习目标 Axios与API交互1、Axios配置与使用2、请求/响应拦截器3、API设计模式(了解RESTful风格即可) 学习参考:起步 | Axios中文文档 | Axios中文网 什么是Axios Axios 是一个基于 Promise 的现代化 HTTP 客户端库,专…...
【EasyPan】MySQL主键与索引核心作用解析
【EasyPan】项目常见问题解答(自用&持续更新中…)汇总版 MySQL主键与索引核心作用解析 一、主键(PRIMARY KEY)核心作用 1. 数据唯一标识 -- 创建表时定义主键 CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY,use…...
基于RK3588+FPGA+AI YOLO的无人船目标检测系统(一)概述
无人船在海洋监测、资源勘测、海上安全和科学研究等领域扮演着关键角色, 提升了海上任务的执行效率和安全性。在这一过程中,环境感知技术和目标检测 技术相辅相成,共同构建了系统的核心功能。随着人工智能行业的迅速发展,各 种…...
无人船 | 图解基于PID控制的路径跟踪算法(以全驱动无人艇WAMV为例)
目录 1 PID控制基本原理2 基于全驱动运动学的PID控制3 跟踪效果分析 1 PID控制基本原理 PID控制是一种常用的经典控制算法,其应用背景广泛,例如 工业自动化控制:温度控制、压力控制、流量控制、液位控制等过程控制系统多采用PID闭环&#x…...
为什么RPN经过的候选框处理后,要使用rcnn来进行候选框的分类和回归操作?
一句大白话总结:RPN是广撒网捕鱼,RCNN是细化鱼的分类和具体尺寸 在目标检测任务中,RPN(区域提议网络) 生成的候选框需要经过 RCNN(如 Fast R-CNN、Faster R-CNN) 进行分类和回归,这…...
代码实战保险花销预测
文章目录 摘要项目地址实战代码(初级版)实战代码(进阶版) 摘要 本文介绍了一个完整的机器学习流程项目,重点涵盖了多元线性回归的建模与评估方法。项目详细讲解了特征工程中的多项实用技巧,包括࿱…...
8.1 线性变换的思想
一、线性变换的概念 当一个矩阵 A A A 乘一个向量 v \boldsymbol v v 时,它将 v \boldsymbol v v “变换” 成另一个向量 A v A\boldsymbol v Av. 输入 v \boldsymbol v v,输出 T ( v ) A v T(\boldsymbol v)A\boldsymbol v T(v)Av. 变换 T T T…...
PythonWeb
参考:如何安装 Django |Django 文档 |姜戈 一、框架搭建 1、安装Django框架 pip3 install django 2、查看是否安装成功 pip3 show django 这样显示就是成功了 3、初始化项目 你想在哪个路径就 cd到哪个路径下输入一下命令就可以 django-admin startproject my…...
【大模型ChatGPT +DeepSeeK+python】最新AI赋能Python长时序植被遥感动态分析、物候提取、时空变异归因及RSEI生态评估
在遥感技术与人工智能深度融合的2025年,AI大模型正重塑长时序植被遥感数据分析范式。从Landsat/Sentinel卫星数据的智能化去云处理,到MODIS植被产品的AI辅助质量控制,以ChatGPT 、DeepSeeK为代表的大模型技术已成为提升遥感数据处理效率与精度…...
精益数据分析(11/126):辨别虚荣指标,挖掘数据真价值
精益数据分析(11/126):辨别虚荣指标,挖掘数据真价值 大家好!在创业和数据分析的学习道路上,我一直希望能和大家携手前行、共同进步。今天,咱们接着深入研读《精益数据分析》,这次聚…...
Time to event :Kaplan-Meier曲线、Log Rank检验与Shiny R
代码: # 创建数据框 data_a <- data.frame( usubjid = c(1- 1, 1- 2, 1- 3, 1- 4, 1- 5, 1- 6, 1- 7, 1- 8, 1- 9, 1-10, 2- 1, 2- 2, 2- 3, 2- 4, 2- 5, 2- 6, 2- 7, 2- 8, 2- 9, 2-10), cnsr = c(0,1,0,1,0,1,0,0,0,1,…...
线上救急-AWS限频
线上救急-AWS限频 问题 在一个天气炎热的下午,我正喝着可口可乐,悠闲地看着Cursor生成代码,忽然各大群聊中出现了加急➕全体的消息,当时就心里一咯噔,点开一看,果然,线上服务出问题࿰…...
JavaWeb学习打卡-Day1-分层解耦、Spring IOC、DI
三层架构 Controller(控制层):接收前端发送的请求,对请求进行处理,并响应数据。Service(业务逻辑层):处理具体的业务逻辑。DAO(数据访问层/持久层)ÿ…...
【LeetCode】1.两数之和
目录 📚 题目概要🧰 前置知识🚧 问题难点🔑 关键思路步骤拆解 💻 代码实现代码注释 📊 复杂度分析❗ 易错点与测试案例易错点测试案例 🔗 总结与扩展模式归纳核心思维 📚 题目概要 在…...
mongodb 存储数据的具体实现方式
MongoDB 存储数据的具体实现方式涉及数据模型、存储引擎、分片机制等多个核心模块,以下是其实现原理的详细分析: 一、数据模型 1.1 文档型数据模型 MongoDB 使用 BSON格式存储数据,支持键值对、嵌套文档和数组等复杂结构。 1.2 无模式设…...
【手机】vivo手机应用声音分离方案
文章目录 前言方案 前言 尝试分离vivo手机音乐与其他应用的声音 方案 最佳方案:网易云音乐设置内关闭音量均衡 上传不同的白噪音,成功 goodlock,主要适用于三星手机,vivo不一定适用 app volume control ,可行...
多级缓存架构,让系统更快的跑起来!
大家好,今天,咱们来聊聊一个超级实用的话题——多级缓存架构。别一听“架构”俩字就头大,我保证,这篇文章既有趣又易懂,让你秒变缓存小达人! 一、多级缓存,为啥这么火? 在互联网的汪洋大海里,数据就是咱们的宝藏。但每次从数据库里捞数据,都跟挖宝藏似的,慢得很!…...
Vibracostic EDI 需求分析
Vibracostic 是德国Freudenberg集团旗下全球领先的减振与噪音控制技术公司,专注于为汽车及工业领域提供高效振动管理和隔音解决方案,客户涵盖宝马、奔驰、特斯拉等主流车企。 Vibracostic EDI 需求分析 供应商接收Vibracostic发来的DELFOR交付预测报文…...
基于超启发鲸鱼优化算法的混合神经网络多输入单输出回归预测模型 HHWOA-CNN-LSTM-Attention
基于超启发鲸鱼优化算法的混合神经网络多输入单输出回归预测模型 HHWOA-CNN-LSTM-Attention 随着人工智能技术的飞速发展,回归预测任务在很多领域得到了广泛的应用。尤其在金融、气象、医疗等领域,精确的回归预测模型能够为决策者提供宝贵的参考信息。为…...
Linux卸载删除gitlab
1、停止 gitlab服务 gitlab-ctl stop 2、卸载 gitlab(社区版) rpm -e gitlab-ce 或者 yum remove gitlab-ce 3、查看 gitlab 进程 ps aux | grep gitlab 4、杀掉gitlab service进程,该进程与runsvdir相关(带有好多..........…...
高品质性价比之王-特伦斯便携钢琴V10
在电子钢琴选购过程中,预算与品质的平衡常常让消费者感到纠结。但特伦斯 V10 88 键可折叠电子钢琴的出现,为广大音乐爱好者带来了惊喜,亲民的价格实现了高品质的音乐体验。 先看便携性,同价位的电子钢琴大多体型庞大,…...
解决方案评测|告别复杂配置!基于阿里云云原生应用开发平台CAP快速部署Bolt.diy
写在前面的话 突然看到上线了关于Bolt.new开源版本的解决方案测评,其实心里还是挺高兴的,我最早接触到Bolt.new的时候应该是在去年的11月份,当时是撰写了一篇名为一种基于通义千问prompt辅助Qwen2.5-coder-32bBolt.newv0Cursor的无代码对话…...
python测试框架之pytest
Pytest pytest 基础使用pytest安装pytest的测试case收集规则pytest - fixture的使用skip and xfailpytest - 属性标记测试函数pytest - 参数化测试pytest - mock/monkeypatch的使用pytest - 运行方式pytest - 运行方式/命令pytest - 处理测试失败的case pytest - 测试输出捕获 …...
uni-app 开发企业级小程序课程
课程大小:7.7G 课程下载:https://download.csdn.net/download/m0_66047725/90616393 更多资源下载:关注我 备注:缺少两个视频5-14 tabs组件进行基本的数据展示和搜索历史 处理searchData的删除操作 1-1导学.mp4 2-10小程序内…...
深度图可视化
import cv2# 1.读取一张深度图 depth_img cv2.imread("Dataset_depth/images/train/1112_0-rgb.png", cv2.IMREAD_UNCHANGED) print(depth_img.shape) cv2.imshow("depth", depth_img) # (960, 1280) print(depth_img)# 读取一张rgb的图片做对比 input_p…...
Java实现希尔排序算法
1. 希尔排序原理图解 希尔排序是插入排序的一种高效改进版本,通过比较和交换间隔较远的元素来减少数据的移动次数。以下是希尔排序的步骤: 1. 选择初始间隔:通常选择数组长度的一半作为初始间隔。 2. 分组和插入排序:将数组分成若…...
Apache RocketMQ 荣获 2024 开源创新榜单“年度开源项目
持续深耕 RocketMQ 领域,更多实战避坑指南、源码解析、最佳实践,已整理至「RocketMQ 中文社区」 🔍 近日,以“新纪天工、开物焕彩——致敬开源的力量”为活动主题的“重大科技成就发布会(首场)”在国家科技…...
2025年智慧交通与能源技术国际会议(ITNET 2025)
The 2nd International Conference on Intelligent Transportation and Energy Technology 一、大会信息 会议简称:ITNET 2025 大会时间:(以官网为准) 大会地点:中国南京 收录检索:提交Ei Compendex,CPCI,CNKI,Google…...
Spring Boot 集成 Redis 实战总结
Spring Boot 集成 Redis 实战总结 一、基础集成与配置 依赖引入 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId> </dependency>默认使用 Lettuce 作为连接池…...
ubuntu18.04启动不了修复
参考: 虚拟机里的Ubuntu18.4启动时进入到grub rescue救援模式(无法正常进入到系统),ls查看后只有一个硬盘和分区,且无法找到/boot/grub文件【已解决】_ubuntu grub rescue-CSDN博客 本人fdisk错误使用,导致了grub启动不了 第一步…...
人类行为的原动力是自我保存-来自ChatGPT
自我保存(Self-Preservation)确实可以说是人类行为最原始、最底层的驱动力。 简单来说: 无论我们做什么,表面看动机五花八门,实际上归根到底都绕不开活下去、保护自己。 💡 从不同层面理解这个观点&#…...
退役淘汰的硬盘数据安全处置不可忽视-硬盘数据抹除清零
在信息化时代,硬盘作为数据存储的核心载体,其退役处理直接关系到信息安全,淘汰硬盘中往往留存大量敏感信息,若处置不当,极易引发数据泄露风险,造成难以挽回的损失。因此,建立规范的硬盘数据销毁…...
创建 Node.js Playwright 项目:从零开始搭建自动化测试环境
一、环境准备 在开始创建 Playwright 项目之前,确保你的电脑上已经安装了以下工具: Node.js:Playwright 依赖于 Node.js 环境,确保你已经安装了最新版本的 Node.js。可以通过以下命令检查是否安装成功: node -v npm -…...
1+X: Python程序开发职业技能等级要求(初级)练习资料分享
以下将根据表1中Python程序开发职业技能等级要求(初级)的不同工作领域和任务,分别给出练习代码或操作步骤。 Python基础编程 开发环境搭建 操作步骤:以Windows系统为例,首先从Python官方网站(https://www…...
【漏洞复现】CVE-2024-38856(ApacheOfbiz RCE)
【漏洞复现】CVE-2024-38856(ApacheOfbiz RCE) 1. 漏洞描述 Apache OFBiz 是一个开源的企业资源规划(ERP)系统。它提供了一套企业应用程序,用于集成和自动化企业的许多业务流程。 这个漏洞是由于对 CVE-2023-51467 的…...
【React】获取元素距离页面顶部的距离
文章目录 代码实现 代码实现 import { useEffect, useRef, useState } from react;const DynamicPositionTracker () > {const [distance, setDistance] useState(0);const divRef useRef(null);useEffect(() > {const targetDiv divRef.current;if (!targetDiv) re…...
【Markdown】【HTML】在Markdown中实现康奈尔笔记模式(右侧留白)
文章目录 HTML表格——康奈尔笔记法标签解释<table> 相关标签文本内容标签注释标签 最低限度应了解的HTML标签 (Essential HTML Tags)结构标签 (Structure Tags)文本标签 (Text Tags)列表标签 (List Tags)链接和图片 (Links and Images)格式化 (Formatting)表格 (Tables)…...
Go语言中的Context
目录 Go语言中的Context 1. Context的基本概念 1.1 Context的核心作用 2. Context的基本用法 2.1 创建Context 背景Context 可取消的Context 带有超时的Context 2.2 在Goroutine间传递Context 2.3 获取Context的值 为Context添加自定义数据 访问Context中的值 3. C…...
基于Python的图片/签名转CAD小工具开发方案
基于Python的图片/签名转CAD工具开发方案 一、项目背景 传统设计流程中,设计师常常需要将手写签名或扫描图纸转换为CAD格式。本文介绍如何利用Python快速开发图像矢量化工具,实现: 📷 图像自动预处理✏️ 轮廓精确提取⚙️ 参数…...