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

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

3天内不再提示

ADS VerilogA的权宜之计—直接解决ADS向量端口问题

芯片设计之路 来源:芯片设计之路 2023-11-09 10:54 次阅读

01

问题描述

ADS中建立一个Verilog-A模块,方法如下:

新建一个VerilogA View

429ffcac-7eab-11ee-939d-92fbcf53809c.png

42c602b2-7eab-11ee-939d-92fbcf53809c.png

在Verilog-A文本编辑器中添加以下代码:

// VerilogA for my_lib, decoder, test
`include "disciplines.vams"
`include "constants.vams"


module decoder(outp,outn);
  output[7:0] outp,outn;
  electrical[7:0] outp,outn;
  parameter integer code=0 from [0:255];//控制码
  parameter real vdd=0;
  parameter real vss=-5;
  genvar i;
  analog begin
    for(i=0;i<8;i=i+1)  begin
      if(code&(1<

再给当前cell添加一个symbol view,包含两个Pin,跟Verilog-A中定义保持一致outp<7:0>、outn<7:0>。

42e58f60-7eab-11ee-939d-92fbcf53809c.png

在veriloga view上右键选择【Compile Verilog】进行编译

430ec20e-7eab-11ee-939d-92fbcf53809c.png

编译通过会提示成功,否则会给出错误信息

432e5196-7eab-11ee-939d-92fbcf53809c.png

【注】作者在这里翻车了,本来标题写的是ADS应用技巧,但是作者发现当前使用的ADS不能正常编译这个decoder模块了,提示我symbol定义的端口outp<7:0>、outn<7:0>跟Verilog-A模块中定义的端口outp、outn不一致,我明确地知道是端口宽度不匹配导致的,但我坚持认为是软件的问题。

ERROR: Failed to compile verilog : Port names in verilog and symbol views do not match.
Symbol View Ports : outp<7:0> outn<7:0> 
Verilog Module Ports : outp outn 
Modify either verilog or symbol view of the cell : decoder

几年前用ADS2017的时候这个模块肯定是已经编译通过正常使用的,但毕竟作者是业余学习使用ADS,也没有人家的License授权,遇到这种问题也不好跟Keysight提……虽然可以将8位宽度的向量端口拆成8个独立的端口,但我认为这很不优雅!而且相同的代码,我在Virtuoso环境中都是可以完全正常使用的,所以上面的仿真结果实际上我是用Virtuoso跑出来的……如果有读者知道怎么解决这个问题,欢迎在公众号留言,或者发送邮件xhlyuestc@gmail.com交流,感激不尽!

02

权宜之计

好在ADS和Virtuoso都支持OA,因此只需要将Virtuoso编译好的VerilogA模块复制到ADS的library中就可以使用了。

在virutuoso中新建一个cell,类型选择VerilogA,粘贴同样的代码到编辑器中,点击build按钮,提示可以自动生成symbol即可:

43484b3c-7eab-11ee-939d-92fbcf53809c.png

436dd4ce-7eab-11ee-939d-92fbcf53809c.png

对应cell下面的文件结构如下图所示:

438eecb8-7eab-11ee-939d-92fbcf53809c.png

将decocer整个cell的文件夹复制到ADS对应工程的library里,然后就可以在ADS工程的Schematic中调用这个VerilogA Cell进行仿真了。

43b6b6da-7eab-11ee-939d-92fbcf53809c.png

看看这个扫描输出的电压,是不是很像数字电路里的二进制分频器,但那里是瞬态波形,这里是直流电压!

43db3dd4-7eab-11ee-939d-92fbcf53809c.png







审核编辑:刘清

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

    关注

    28

    文章

    1345

    浏览量

    110009
  • ADS仿真
    +关注

    关注

    0

    文章

    71

    浏览量

    10429

原文标题:ADS应用技巧(13)——VerilogA的权宜之计

文章出处:【微信号:芯片设计之路,微信公众号:芯片设计之路】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    测试射频模块的EMI/EMC合规性

      射频模块可加快物联网设备的连接时间,如果设计和支持得当,可形成解决射频连接问题的权宜之计
    的头像 发表于 06-20 09:54 4818次阅读
    测试射频模块的EMI/EMC合规性

    ADS1299能否直接使用ADS1298直接替换使用?

    我现在制作的开发板使用的是ADS1299芯片,但是现在买不到,能否直接使用ADS1298直接替换使用?
    发表于 11-22 06:35

    ADS7870/ADS7871 EVM

    This users guide describes the characteristics, operation, and use of the ADS7870/71 EVM
    发表于 06-01 15:45 10次下载

    ADS1246/ADS1247/ADS1248pdf (24

    The ADS1246, ADS1247, and ADS1248 are highly-integrated, precision, 24-bit analog-to-digital
    发表于 06-02 17:17 65次下载

    ADS5481/ADS5482ADS5483,pdf (16

    The ADS5481/ADS5482/ADS5483 (ADS548x) is a 16-bit family of analog-to-digital converters (AD
    发表于 06-03 16:01 19次下载

    ADS1113/ADS1114/ADS1115,pdf (U

    The ADS1113, ADS1114, and ADS1115 are precision analog-to-digital converters (ADCs) with 16 bits
    发表于 06-03 17:10 78次下载

    ADS6445/ADS6444/ADS6443/ADS644 MSPS quad channel A-D converters

    The ADS6445/ADS6444/ADS6443/ADS6442 (ADS644X) is a family of high perf
    发表于 06-04 09:42 27次下载

    ADS6245/ADS6244/ADS6243/ADS624

    ADS6245/ADS6244/ADS6243/ADS6242 (ADS624X) is a family of high performa
    发表于 06-04 10:11 29次下载

    ADS6145/ADS6144/ADS6143/ADS614

    ADS6145/ADS6144/ADS6143/ADS6142 (ADS614X) are a family of 14-bit A/D c
    发表于 06-04 10:29 20次下载

    ADS_ADS_Patch

    ADS
    发表于 09-13 10:16 0次下载

    ADS1286,ADS7816,ADS7817和ADS7822如何与80x51单片机的同步串口连接

    模数转换器可由正常的I/O端口或80x51单片机的同步串行端口控制。同步串行端口是更有效的,但是,当配置8引脚A/D转换器(ADS1286,ADS
    发表于 05-29 11:13 27次下载
    <b class='flag-5'>ADS</b>1286,<b class='flag-5'>ADS</b>7816,<b class='flag-5'>ADS</b>7817和<b class='flag-5'>ADS</b>7822如何与80x51单片机的同步串口连接

    ADS快速入门:关于ADS的环境介绍

    ADS快速入門(ADS Overview)--環境介紹(Environment)---ADS简介
    的头像 发表于 07-06 01:19 8068次阅读

    ADS应用技巧—如何修改ADS的home目录?

    这里说的home目录就是启动ADS后,默认打开的路径,通常是你存放ADS工程所在的目录。
    的头像 发表于 02-26 09:43 2008次阅读
    <b class='flag-5'>ADS</b>应用技巧—如何修改<b class='flag-5'>ADS</b>的home目录?

    ADS6125/ADS6124/ADS6123/ADS6122模数转换器数据表

    电子发烧友网站提供《ADS6125/ADS6124/ADS6123/ADS6122模数转换器数据表.pdf》资料免费下载
    发表于 07-17 11:04 1次下载
    <b class='flag-5'>ADS</b>6125/<b class='flag-5'>ADS</b>6124/<b class='flag-5'>ADS</b>6123/<b class='flag-5'>ADS</b>6122模数转换器数据表

    ADS6149/ADS6129/ADS6148/ADS6128模数转换器数据表

    电子发烧友网站提供《ADS6149/ADS6129/ADS6148/ADS6128模数转换器数据表.pdf》资料免费下载
    发表于 07-27 11:06 0次下载
    <b class='flag-5'>ADS</b>6149/<b class='flag-5'>ADS</b>6129/<b class='flag-5'>ADS</b>6148/<b class='flag-5'>ADS</b>6128模数转换器数据表