【射频IC进阶实践教程】2.6 LNA版图设计及DRC/LVS验证

  • 射频集成电路的版图设计非常关键,他对寄生参数非常敏感,需要使其最小化。还需要注意相互耦合的方式
  • 本次课程主要介绍射频IC的一些相关布局和连线方面的考虑。

一、版图设计

1. 版图的元件布局

  • 首先打开对应的原理图
    在这里插入图片描述
  • 点击进行版图设计
    在这里插入图片描述
  • 由于已经有做好的版图了,所以直接打开查看现存的版图
    在这里插入图片描述
  • 然后选择布局使用到的layout1
    在这里插入图片描述
  • 然后点击ok,就会打开layout版图了
  • 可以看到这里的布局都是已经完成了的
    在这里插入图片描述
  • 然后按住键盘上的shift+f把所有的器件内部layout都显示出来。

(1)元器件layout调入方法

  • 第一种方法是按住键盘上的i键,从工艺库里面调入这些器件的layout
    在这里插入图片描述

  • 选择对应晶体管的layout
    在这里插入图片描述

  • 然后就可以调入器件了

  • 但是这种方法有一个缺点是,没有和原理图有对应的关系,但是不糊已影响最终版图的设计,验证
    在这里插入图片描述

  • 第二种方法是从原理图中选中需要调入进来的晶体管
    在这里插入图片描述

  • 然后在layout选择pick from schematic
    在这里插入图片描述

  • 然后所有对应的元器件都会被调入进来了
    在这里插入图片描述

  • 这种晶体管调入进来的时候是带有guardring外框的,每个晶体管都会单独包含一个deep n-well,会占用很大的版图空间,不方便版图的连线和布局。

  • 下面版图包括了最中间的NMOS晶体管,外围有n井的环,它整个是包含有deep n-well。它通过n-well环(蓝色)和deep n-well(紫色)进行共同的隔离作用,就可以把晶体管中间区域(紫色框)就可以完全单独隔离出来p-sub,这是跟外部的p-sub完全隔离开的,因为在内部p-sub四周有n-well,底板跟p-sub之间还有一个deep n-well,这是可以跟外部的p-sub进行隔离的。

  • deep n-well的横截面和做界面的图可以去参考工艺文档的一些说明。
    在这里插入图片描述

(2)去除外围n-well方法

  • 那么如果每个晶体管都采用这种结构,那么版图会占用非常大的面积,而且每个晶体管之间的距离会非常远,这样会导致射频晶体管尺寸会非常大,匹配起来会非常困难。
  • 因此我们再做射频器件版图的时候,通常会把它们打散,然后再来画这个版图,最后再把他们拼整合在一起。
  • 对于这个射频晶体管,我们可以去掉外围的deep n-well和n well
  • 有三种方法可以去掉外围的n well
  • 方法一:选择外围n well的属性,取消勾选deep nwell bodytie
    在这里插入图片描述
  • 取消掉之后外围的deep n-well还是存在的,只是消失看不见
    在这里插入图片描述
  • 这时候去画版图的时候就会很不方便,相邻的晶体管必须间隔很远才能满足DRC的要求。
  • 但其实我们是希望所有器件都画在同一个deep n-well里面, 然后再边缘在包围n-well的环(绿色),把LNA的衬底完全隔离出来。所以这时候再使用这种类型的器件,就不适合画版图。
    在这里插入图片描述
  • 方法二:打散晶体管的版图
  • 选择flatten打散
    在这里插入图片描述

在这里插入图片描述

  • 然后我们可以把dnw层给删除掉
    在这里插入图片描述
  • 把nwell层也给删除掉
    在这里插入图片描述
  • 删除掉之后还有标志层(紫色)
    在这里插入图片描述
    在这里插入图片描述
  • 我们可以选择删除掉,或者将这个标志层给缩小,只包含有这个晶体管就可以了
    在这里插入图片描述
    在这里插入图片描述
  • 然后可以把上面缩好的晶体管做成一个新的cell,之后就可以直接调用进来了
  • 但是会出现一个问题是,如果后续需要再去修改版图的尺寸,就会非常的困难,需要重新去做一个新的cell,灵活性就会变得非常的差。
  • 方法三:选择不带有deep n-well的晶体管,这样画版图的时候会方便一些。
  • 实际上无论带不带deep n-well的晶体管,他的模型性能参数都是完全一样的,唯一的区别是版图上的差异带不带deep n-well。

在这里插入图片描述

  • 我们可以采用替换的方式,在画版图的时候,先用不带dnw的晶体管,把参数改成跟原理图上的参数一样
  • 先画好版图,之后整个LNA都加上deep n-well,再做LVS检查的时候,这个晶体管就会变成带dnw类型的晶体管。既能通过LVS,版图也不会有错
  • 这样后续要修改晶体管尺寸的时候就会很灵活,直接该参数尺寸
    在这里插入图片描述
  • 这里只有核心电路部分采用deep n-well晶体管,其他偏置电路部分都是采用普通的晶体管。
  • 那么对于其他采用普通类型的晶体管,在整个LNA画上deep n-well后,就会使其类型发生改变了。
  • 那么就需要看工艺是否支持识别这些普通类型的晶体管了。而我们现在采用的这种工艺是支持的。就是在设计的时候,除了射频晶体管以外,普通的晶体管是否带deep n-well,不是根据画的dnw这一层来识别的,而是由dnwtr这一层来识别的(即dnw晶体管类型的标志层),由这个层来决定是不是带这个deep n-well
  • 像smic中芯科技是有这种功能的,但是像tsmc台积电工艺库是不支持这种功能的,它是没有dnwtr层的,因此其普通类型的晶体管放在了dnw层里面就会被识别为dnw类型晶体管,产生错误。在原理图上就要把晶体管替换成dnw类型的晶体管。
    在这里插入图片描述
  • 这里我们拿个dnw晶体管来举个例子
    在这里插入图片描述
  • 中间蓝色部分是晶体管实际的部分,外围是加了deep n-well(绿色)的环,外面又加了n-well(紫色)的环,把里面的晶体管衬底单独隔离出来。
  • 然后它还加入了dnwtr层(dnw标志层)(绿色面积部分),表示在这个面积覆盖下的区域都是dnw的地方
    在这里插入图片描述
  • dnwtr层
    在这里插入图片描述
  • 这时候去过LVS的时候,原理图对应的晶体管必须调用的是带dnw类型的晶体管。
  • 但如果没有dnwtr层覆盖的区域(绿色),即使最终画进了dnw层,最终也会识别为普通类型的晶体管

(3)版图整体的布局

  • 由于布局的好坏会直接影响到整个射频集成电路的性能,因此布局一定要合理。
  • 所以我们首先要对LNA的版图做一个整体的考虑
  • 我们希望整个LNA能够跟其他电路更好的隔离开,因此我们把整个LNA电路都放在了深N井deep n-well里面了,那么对应的器件就会不太一样。
  • 首先是核心电路部分的dnw射频晶体管,这些晶体管是做在整个deep n-well上面的,也就是它跟衬底之间具有一定的隔离作用,这样其他电路对LNA的干扰耦合就会减小很多。
    在这里插入图片描述
  • 这里六个射频晶体管分两层并联排在一起。
  • 第一层是cascode级晶体管
  • 第二层是输入级晶体管和单转双功能的共源极晶体管
    在这里插入图片描述
  • 对应原理图核心电路部分的四个射频晶体管
    在这里插入图片描述
  • 负载电阻放在核心电路的晶体管上面
  • 负载电路上面接的是电源
    在这里插入图片描述
  • 整个LNA电路,上面接的是电源vdd,下面接的是射频输入端。
  • 整体的信号输入是下方输入,右侧输出
  • 其他部分电路根据信号的走线方向来进行排布的
    在这里插入图片描述
  • 对于输入的MOS电容晶体管
    在这里插入图片描述
  • 放在整个版图的下面,连接射频输入端
    在这里插入图片描述
  • 偏置电阻
    在这里插入图片描述
    在这里插入图片描述
  • 增益控制的电阻和开关晶体管
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 核心电路的隔直电容
    在这里插入图片描述
    在这里插入图片描述
  • cascode级晶体管输入隔离电阻
    在这里插入图片描述
    在这里插入图片描述
  • 偏置电路的电阻
    在这里插入图片描述
    在这里插入图片描述
  • 偏置电路部分所有的PMOS晶体管,因为其衬底需要接电源,所以都放置在版图的上面
    在这里插入图片描述
  • 偏置电路的NMOS晶体管全部放置在PMOS晶体管的下面
    在这里插入图片描述
  • 而对于偏置电路开关晶体管,pd控制晶体管,都放在偏置电路NMOS和核心电路晶体管之间。方便连线
    在这里插入图片描述
    在这里插入图片描述
  • 滤波电容放置在版图的下端,即射频输入端
    在这里插入图片描述
    在这里插入图片描述
  • 反相器的PMOS也一样放置在版图上侧

在这里插入图片描述
在这里插入图片描述

  • 而反相器的nmos晶体管放在对应的pmos晶体管的正下方
    在这里插入图片描述
  • 这样反相器的源漏极就能直接连接在一起,连线比较方便
    在这里插入图片描述

版图元器件布局总结

  • 在对射频电路进行布局的时候,一定要优先考虑射频信号的走线方向,和走线距离远近,是否顺畅的程度,然后再考虑在其他地方放置偏置电路部分和控制电路部分。
  • 对于占用面积较大的电容版图,就需要去考虑整个版图如何才能更规整,版图的面积才能更小,连线更方便顺畅
    在这里插入图片描述

2. 版图连线

(1)MOS电容补偿走线寄生电容

  • 版图连线对于偏置电路部分没有太大的要求,只要把线能够能够连起来就可以了。
  • 重点是射频电路的连线,特别是当频率比较高以后,射频电路的射频信号的走线的宽长都会对整个电路的寄生参数产生很大的影响。
  • 可以看到核心电路的晶体管离下面的射频输入端是隔的比较远的,就会到来输入线上面的寄生电容比较大。
    在这里插入图片描述
  • 但是由于我们设计的LNA电路结构,在输入端接入了额外的补偿MOS电容,来使输入的匹配电路能够减的更小一些。
  • 所以在输入IP这根走线上面,如果他有更多的寄生电容,并不会对整个电路的性能有太大的恶化。当在后仿真,如果输入线上面的寄生电容太大了,可以通过将mos电容的尺寸减小,让其容值减小一些来补偿版图走线上面寄生电容的增加。这样输入线上的寄生电容就不会对整个电路性能参数造成太大的影响。
  • 因此寄生电容还是次要的影响,更需要关注的是走线的阻抗
    在这里插入图片描述

(2)整理布局及初步连线

  • 打开layout2文件,是连线连了一半的结果
    在这里插入图片描述

  • 这里是把所有电路和元器件都进行了对齐,
    在这里插入图片描述

  • 比如射频晶体管,我们让它们直接靠在一起,然后进行水平和垂直方向的对齐。
    在这里插入图片描述

  • 像其他的晶体管也进行靠近和重叠
    在这里插入图片描述
    在这里插入图片描述

  • nmos晶体管也进行了重新的整理,插入了一些单片晶体管,使得版图能够更匹配对称,版图的性能会更好一些。
    在这里插入图片描述

  • 还对偏置电路输入级进行了初步的连线
    在这里插入图片描述

  • 这个版图比较重要的一点是,规划了整个电源和地的走线。

  • 上面这一层作为电源(vdd)的走线在这里插入图片描述
    在这里插入图片描述

  • 下面这根线是作为GND的走线

  • 放在中间的原因是为了让射频晶体管能够就近接在走线上,也可以使电流镜和射频晶体管的地能够更近一些
    在这里插入图片描述
    在这里插入图片描述

(3)完成全部连线

  • 打开layout3
    在这里插入图片描述

  • 所有连线都已经基本完成了
    在这里插入图片描述

  • 偏置部分连线比较简单,只要着重去考虑它的匹配对称性部分。通常采用左右对称,或者交叉耦合排列的方式,来进行更好的匹配性设计。
    在这里插入图片描述

  • 现在来看核心电路的射频晶体管连线部分。

  • 首先是输入线,是从版图的中间,直接从下方穿上去,连接到射频晶体管的栅极
    在这里插入图片描述
    在这里插入图片描述

  • 可以看到射频晶体管的栅极都是连接在一起的。
    在这里插入图片描述

  • 输入线还连接了偏置电阻

  • 我们再设计版图的时候可以做灵活的处理,比如串联的个数问题。如果每个晶体管都串联两个的话,整个晶体管就会被拉的很长。这样就会导致整个版图往左右会长很宽,会占用更大的面积。

  • 电阻左侧是输入,右侧是输出,这样连线也会比较方便,不会有太大的交叉问题出现。

  • 因此我们再设计版图的时候,需要去根据版图的需求,去灵活更改相关期间的一些尺寸和宽敞比等参数,来确保版图连线的方便,使整个版图的尺寸最小化。
    在这里插入图片描述

  • 因此我们把电阻分成了三段,这样电阻的单个长度就变短了,能够更好的去布局。
    在这里插入图片描述

  • 这个偏置电阻出来还接入了两个增益控制电阻
    在这里插入图片描述
    这里我们也做了相应的尺寸改变,为了让版图更好的连线,使其尺寸跟偏置电阻相等的长度,这样就可以把电阻排列在一起。
    在这里插入图片描述

  • 尺寸。同比例放大了宽度,然后增加了其长度,保持他的阻抗相等。
    在这里插入图片描述

  • 而在layout2里面,尺寸是不一样的
    在这里插入图片描述
    在这里插入图片描述

  • mos电容电源接在栅极,源极和漏极接在GND上面
    在这里插入图片描述

  • 但是mos电容的gnd并没有单独连接一根线到gnd的总线上去,而是通过滤波电容的另一个极板连接到gnd上。由于滤波电容整个极板都是接gnd,就可以接在他接地的极板上面。

  • 因此可以共用连线,连接到gnd上去
    在这里插入图片描述
    在这里插入图片描述

  • 对于射频输入晶体管,其输入接到了栅极,然后漏极是连接到了一起,源极是接在了gnd上面

  • cascode的栅极接在了偏置电阻上,并全部都连接在了一起
    在这里插入图片描述
    在这里插入图片描述

(4)完成外围guarding包围

  • 然后打开layout4
    在这里插入图片描述
  • 包括了所有连线和外部的cell ring
    在这里插入图片描述
  • 整个LNA的版图加了两个guarding
  • 内层是p型衬底的guarding保护环
  • 外层是n-well的保护环,主要用于做deep n-well隔离用的,把整个LNA的p衬底都完全隔离开
    在这里插入图片描述
  • 还把左右的衬底都连接在了一起,金属一层
    在这里插入图片描述
    在这里插入图片描述
  • n-well连接的是电源
    在这里插入图片描述
  • deep n-well(绿色)把整个LNA都包围起来。
    在这里插入图片描述
  • dnw外围还有n-well的环(紫色),把他们全部隔离开。相当于是在这个地方挖了坑,放在这个屏蔽盒里面,那么其他电路对LNA的干扰和耦合就会变得非常小,有利于提升LNA的抗干扰能力。
    在这里插入图片描述

3. DRC验证

  • 完成版图之后,就是进行DRC检查了
    在这里插入图片描述
  • 选择之前保存的runset
    在这里插入图片描述
  • 直接点run drc运行
  • 能够看到还有19个错误
  • 然后把错误全部都筛选出来
    在这里插入图片描述
  • 第一个是跟dnw相关的
  • n-well要比外围deep n-well大2um
    在这里插入图片描述
  • 回到版图中,单独显示出nw和dnw层
    在这里插入图片描述
  • 表示这两个边界要相隔2um
    在这里插入图片描述
  • 第二个错误也是同样的
    在这里插入图片描述
  • dnw往内部走也同样要大于2um
    在这里插入图片描述
  • 第三个是AA层(有源层)对nwell和p型有源层之间的距离
    在这里插入图片描述
  • 因此要把下面的距离要拉开一些
    在这里插入图片描述
  • 第四个是关于金属密度,也就是栅极或者多晶硅,它的密度要求大于15%
  • 对于这个小电路模块可以先不用管
    在这里插入图片描述
  • 第五个是关于GT层作为mos的栅极的时候,一定要被n型注入层(sn)或者p型注入层(sp)全部包围起来。
    在这里插入图片描述

在这里插入图片描述

  • 第六个是SN的边距要求小于0.3
    在这里插入图片描述
  • 由于这里是在两层晶体管之间,我们可以画一个SN层/SP层,把他们全部包围起来。
    在这里插入图片描述
  • SAB和AA层要大于0.2
    在这里插入图片描述
  • 报的是衬底接触环靠的太近了
    在这里插入图片描述
  • sn和sp覆盖面积要大于0.28
    在这里插入图片描述
    在这里插入图片描述
  • m1的间距要大于0.17,还是靠的太近了,需要挪开一些
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 这里body层边界不用去管
    在这里插入图片描述
  • 最后一个是MIM电容与连线之间的距离。
  • 指过孔连线的地方和顶层极板之间金属距离太近了,要求大于2um。
  • 这里可以把过孔的类型进行修改,把行数减小一些,把列数加宽一些。把距离拉远到2um
    在这里插入图片描述
    在这里插入图片描述

4. LVS验证

  • 打开修改好的DRC验证后的layout
    在这里插入图片描述

在这里插入图片描述

  • 然后跑LVS验证
    在这里插入图片描述
  • 直接运行发现LVS是没有通过的。
    在这里插入图片描述
  • 查看错误发现,有些事在原理图上有的但是layout上没有
    在这里插入图片描述
  • 发现是在设计版图的时候加上的damin电阻没有连接,其两端是完全悬空的状态
    • 所以我们需要把这个电阻两端短接起来,然后连接到上面sub
      在这里插入图片描述
  • 另一个错误是晶体管尺寸对不上的问题
  • 版图上有这个器件,但是原理图上找不到有。还是damin电阻的问题
    在这里插入图片描述
    在这里插入图片描述
  • 打开通过LVS验证的版图
    在这里插入图片描述
  • 下面这个版图是DRC和LVS都能通过的
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/930202.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

go语言的sdk项目搭建与git 操作标签tag并推送至远程仓库

在搭建 SDK 项目并结合 Git 操作标签(Tag)时,通常会涉及项目初始化、版本管理、Git 标签的创建与管理等内容。以下是一个完整的步骤指南,帮助您搭建 SDK 项目并学习如何使用 Git 标签。 ### 1. **搭建 SDK 项目** 首先&#xff…

超融合承载 PostgreSQL 数据库和 AI 系统的性能评测|金融行业实践

随着人工智能技术的日渐成熟,不少金融用户也开发了自己的 AI 应用系统,协助实际业务中诸如文字识别、图像转换、信息录入等工作,提升业务效率。不过,AI 应用系统普遍依赖 GPU 提供强大算力,对底层存储的性能也有较高的…

数据结构代码归纳

线性表 线性表的顺序表示 定义与初始化 typedef struct SqList{ElemType data[MaxSize];//ElemType *data 开动态数组 int length; }Sqlist; void InitList(SqList &L){L.length0;//若静态数组//若动态数组 //L.data(ElemType*)malloc(sizeof(ElemType)*MaxSize); } …

华为的USG6000为什么不能ping通

前言: 防火墙usg6000v的镜像 链接: https://pan.baidu.com/s/1uLRk0-hnHRTLYLx1Pnplow?pwdtymp 提取码: tymp 看了好多毒文章,感觉写作业更有意思,可以了解新的知识 内容: 首先看毒文章是这样说的,华为的防火墙是…

“量子跃迁与数据织网:深入探索K最近邻算法在高维空间中的优化路径、神经网络融合技术及未来机器学习生态系统的构建“

🎼个人主页:【Y小夜】 😎作者简介:一位双非学校的大二学生,编程爱好者, 专注于基础和实战分享,欢迎私信咨询! 🎆入门专栏:🎇【MySQL&#xff0…

VTK编程指南<三>:基于VTK入门程序解析来理解VTK基础知识

1、VTK入门程序 下面是一个完整的Vtk入门程序&#xff0c;我们基于这个程序来对VTK的基本知识进行一个初步了解。 #include <iostream>#include <vtkAutoInit.h> VTK_MODULE_INIT(vtkRenderingOpenGL2);// VTK was built with vtkRenderingOpenGL2 VTK_MODULE_INI…

汽车免拆案例 | 2007款宝马650i车发动机偶尔无法起动

故障现象 一辆2007款宝马650i车&#xff0c;搭载N62B48B发动机&#xff0c;累计行驶里程约为26万km。车主反映&#xff0c;发动机偶尔无法起动&#xff0c;故障频率较低&#xff0c;十几天出现1 次&#xff0c;且故障出现时起动机不工作。 故障诊断  接车后试车&#xff0c;…

Kafka单机及集群部署及基础命令

目录 一、 Kafka介绍1、kafka定义2、传统消息队列应用场景3、kafka特点和优势4、kafka角色介绍5、分区和副本的优势6、kafka 写入消息的流程 二、Kafka单机部署1、基础环境2、iptables -L -n配置3、下载并解压kafka部署包至/usr/local/目录4、修改server.properties5、修改/etc…

python中的列表、元组、字典的介绍与使用

目录 一、区别介绍 1.使用场景以及区别图 2.详细介绍 列表 元组 字典 二、例子操作 (一)列表list 1.定义和初始化 2.访问元素&#xff08;下标&#xff09; 3.修改元素&#xff08;下标&#xff09; 4.添加元素&#xff08;append、下标insert&#xff09; 5.删除…

WiFi受限不再愁,电脑无网络快速修复指南

有时在试图连接WiFi时&#xff0c;会发现网络连接受限&#xff0c;或无法正常访问互联网。这种情况不仅影响了工作效率&#xff0c;还可能错过重要的信息。那么&#xff0c;究竟是什么原因导致了电脑WiFi连接受限呢&#xff1f;又该如何解决这一问题呢&#xff1f;小A今天就来教…

【技巧】Mac上如何显示键盘和鼠标操作

在制作视频教程时&#xff0c;将键盘和鼠标的操作在屏幕上显示出来&#xff0c;会帮助观众更容易地理解。 推荐Mac上两款开源的小软件。 1. KeyCastr 这款工具从2009年至今一直在更新中。 https://github.com/keycastr/keycastr 安装的话&#xff0c;可以从Github上下载最…

c++ map对其值排序

无法直接排序,转换成vector<std::pair<string,int>> #include <iostream> #include <map> #include <vector> #include <algorithm>// 用于排序的比较函数 bool compareByValue(const std::pair<std::string, int>& a, const …

调度器、闲逛进程

调度器、闲逛进程 一、调度器/调度程序二、闲逛进程 一、调度器/调度程序 ②、③由调度程序引起&#xff0c;调度程序决定&#xff1a; 让谁运行&#xff1f;-- 调度算法 运行多长时间&#xff1f;-- 时间片大小 调度时机 – 什么事件会触发“调度程序”&#xff1f; ∙ \bull…

第七节(1)、T型加减速转动【51单片机-TB6600驱动器-步进电机教程】

摘要&#xff1a;本节介绍步进电机T型加减速的控制方法&#xff0c;分2个小节&#xff0c;本小节主要内容为该控制方法的推导与计算&#xff0c;第二节对T型加减速进行了简化计算 一.加速阶段计算 1.1 计算时间与步数关系 根据位移公式可得&#xff1a; a n g l e 0 n ∗ s…

利用 360 安全卫士极速版关闭电脑开机自启动软件教程

在使用电脑的过程中&#xff0c;过多的开机自启动软件会严重拖慢电脑的开机速度&#xff0c;影响我们的使用体验。本教程中简鹿办公将详细介绍如何使用 360 安全卫士极速版关闭电脑开机自启动软件&#xff0c;让您的电脑开机更加迅速流畅。 一、打开 360 安全卫士极速版 在电…

车联网安全学习之TBOX

Telematics BOX&#xff0c;简称 T-BOX&#xff0c;也称远程信息处理控制单元&#xff08;Telematics Control Unit, TCU&#xff09;&#xff0c;集成GPS、外部通信接口、电子处理单元、微控制器、移动通信单元和存储器等功能模块。 TBOX 提供的功能有网络接入、OTA、远程控制…

神经网络入门实战:(六)PyTorch 中的实用工具 SummaryWriter 和 TensorBoard 的说明

(一) SummaryWriter 这里先讲解 SummaryWriter &#xff0c;TensorBoard 会在第二大点进行说明。 SummaryWriter 是 PyTorch 中的一个非常实用的工具&#xff0c;它主要用于将深度学习模型训练过程中的各种日志和统计数据记录下来&#xff0c;并可以与 TensorBoard 配合使用&am…

C#实现一个HttpClient集成通义千问-开发前准备

集成一个在线大模型&#xff08;如通义千问&#xff09;&#xff0c;来开发一个chat对话类型的ai应用&#xff0c;我需要先了解OpenAI的API文档&#xff0c;请求和返回的参数都是以相关接口文档的标准进行的 相关文档 OpenAI API文档 https://platform.openai.com/docs/api-…

开发知识点-uniCloud

开发知识点-uniCloud 服务空间云函数 cloudfunctions云对象importObjectJSON 格式的文档型数据库Collection unicloud数据的指定表集合 DB SchemaJQL 语法参考资料 服务空间 项目关联空间 云函数 cloudfunctions 云对象importObject JSON 格式的文档型数据库 nosql 非关系…

Vue Web开发(二)

1. 项目搭建 1.1. 首页架子搭建 使用Element ui中的Container布局容器&#xff0c;选择倒数第二个样式&#xff0c;将代码复制到Home.vue。 1.1.1.下载less &#xff08;1&#xff09;下载less样式 npm i less   &#xff08;2&#xff09;下载less编辑解析器 npm i less…