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

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

3天内不再提示

JTAG经典问题解析

全栈芯片工程师 来源:全栈芯片工程师 2023-12-27 10:30 次阅读

请问,JTAG有5个端口,为什么Trst是可选的复位端口?

请问,JTAG只保留4个端口,没有Trst,怎么复位?

答:第一个问题,很简单,因为Trst可以用Tms来替换。那么第二个问题呢?欢迎来知识星球讨论。

c786b266-a3d7-11ee-8b88-92fbcf53809c.png

请问,MCU芯片设计添加了mbist、scan chain之后,仿真失败怎么办?首先diff代码,看代码改动了什么,是否改正确,然后做2-3个formal/lec检查,保证DFT实现过程不改变function 功能。此外还要注意顶层的dft端口控制信号是否在testbench中正确例化等等,比如注意jtag端口可做cpu debug,可做mbist测试,注意tdo输出选择控制。

回到正题,DFT插入后,由于增加了大量的mux来完成时钟、复位可控,导致中端网标中的cell有工艺库文件指定的delay参数,默认是1ns,那么会造成clk delay,比如插入两级mux就会形成2ns延时,而我们的mcu运行时钟是250mhz,时钟周期4ns,sram时钟再取个反,刚好易造成sram timing问题,sram输出x态,cpu取指令失败。

c79fedee-a3d7-11ee-8b88-92fbcf53809c.png

c7ac3a36-a3d7-11ee-8b88-92fbcf53809c.png

如下,cs/we等sram控制信号刚好和sram的时钟对齐,造成sram model输出x态,cpu去取指令失败,mcu boot失败。

景芯SoC训练营得同学都知道,或熟悉DFT仿真得同学都知道,vcs这里仿真应该加一个option,不知道得赶紧找我!

c7bb85c2-a3d7-11ee-8b88-92fbcf53809c.png

可以先强行force时钟,选一个可以采样cs/we等sram控制信号的时钟给sram,好巧不好,cpu执行了一部分指令,又停止了,继续定位。

查看risc-v汇编指令是否正确读写:

c7d4224e-a3d7-11ee-8b88-92fbcf53809c.png

发现程序末尾有x态哦,发现x态,同学们会问,指令为什么会有x态,肯定是bug或timing问题造成的吧,我们接着看:

c7efabe0-a3d7-11ee-8b88-92fbcf53809c.png

而上面x态是由于cpu有16位指令,并且程序有跳转,那么为什么cpu执行指令一部分后就停止了呢?是我把cpu取指令模块改错了?于是开始看cpu代码。。。

实际上x态后程序依然能正确执行,本质上是16位指令及程序调转的原因。接着debug。

c802f7f4-a3d7-11ee-8b88-92fbcf53809c.png

接着定位,发现是取指令握手卡住,解决办法?后仿真怎么确保时钟对齐的问题?答案参见全栈芯片工程师【知识星球】。

挑战!全芯片UPF低功耗设计(含DFT设计)

c81dd09c-a3d7-11ee-8b88-92fbcf53809c.png

景芯SoC训练营培训项目,低功耗设计前,功耗为27.9mW。

c821db74-a3d7-11ee-8b88-92fbcf53809c.png

低功耗设计后,功耗为0.285mW,功耗降低98.9%!

c825dfc6-a3d7-11ee-8b88-92fbcf53809c.png

c829a214-a3d7-11ee-8b88-92fbcf53809c.png

c833a32c-a3d7-11ee-8b88-92fbcf53809c.png

7天冲刺PR训练营有同学问如何给IO添加PAD?请思考景芯SoC的IO和PAD如何实现最佳?

c8385106-a3d7-11ee-8b88-92fbcf53809c.png

7天冲刺PR训练营有同学问,同样的floorplan,有些同学很快跑完,有些同学则遇到大量DRC问题(EDA工具不停iteration)导致工具始终无法跑完,具体什么问题呢?

c83c3f0a-a3d7-11ee-8b88-92fbcf53809c.png

首先,小编发现该同学的stripe把TM2定义为了horizontal,而熟悉景芯工艺的同学知道,TM2的preference direction是VERTICAL。

c855c024-a3d7-11ee-8b88-92fbcf53809c.png

查询景芯的lef库文件也可以确认:

c8684938-a3d7-11ee-8b88-92fbcf53809c.png

用错方向有多大影响呢?大家上景芯SoC的后端flow实践一下吧,实践出真知。

7天冲刺PR训练营有同学问,为啥PR花了一天一夜24个小时完成布线还大量DRC错误?小编已经将设计规模尽可能减小以加速PR设计,实际上2小时就可以跑完routing,为何这么慢?原因就是低功耗单元的走线。具体原因及解决办法欢迎加入景芯训练营讨论。

c86bfaec-a3d7-11ee-8b88-92fbcf53809c.png

其错误主要集中在M4上,请思考如何解决。

c8789716-a3d7-11ee-8b88-92fbcf53809c.png

7天冲刺PR训练营有同学问,power switch cell的secondPG pin(VDDG)从M1接出的,而不是M2, 请思考有什么问题?如何解决?

c8834be8-a3d7-11ee-8b88-92fbcf53809c.png

7天冲刺PR训练营有同学问,景芯SoC培训营同学遇到Corner Pad LVS不过怎么处理?

c88ae6aa-a3d7-11ee-8b88-92fbcf53809c.png

完成景芯SoC培训的前端设计仿真、DFT后,我们来到后端flow,本教程教你一键式跑完数字后端flow。

c891eba8-a3d7-11ee-8b88-92fbcf53809c.png

生成脚本命令如下:

tclsh ./SCRIPTS/gen_flow.tcl -m flat all

c89d0e2a-a3d7-11ee-8b88-92fbcf53809c.png

生成flow脚本之前需要配置setup.tcl等相关参数,具体参见【全网唯一】【全栈芯片工程师】提供自研的景芯SoC前端工程、DFT工程、后端工程,带你从算法、前端、DFT到后端全流程参与SoC项目设计。

景芯SoC训练营的同学问,为何innovus读取做好的floorplandef文件报Error?首先看log:

c8a4b788-a3d7-11ee-8b88-92fbcf53809c.png

Reading floorplan file - ./data_in/DIGITAL_TOP.def (mem = 1595.0M).

#% Begin Load floorplan data ... (date=10/23 2201, mem=1579.3M)

**ERROR: (IMPFP-710): File version unknown is too old.

以前EDI的时期,我们可以通过定义fp_file的方式来加载floorplan:

set vars(fp_file) "./data_in/DIGITAL_TOP.def"

但是现在innovus升级并放弃了fp_file的加载方式,当然也可以用老版本的EDI9.1及以前版本来加入fp_file,然后转存为新版本,这方式明显没有必要。正如下log提示所说,检查log是非常好的工程师习惯。

Input floorplan file is too old and is not supported in EDI 10.1 and newer.

You can use EDI 9.1 and before to read it in, then save again to create new version.

小编的直觉告诉我,先去看看同学保存的def文件是哪个def版本?

c8afe086-a3d7-11ee-8b88-92fbcf53809c.png

同学保存方式如下:

c8b44dce-a3d7-11ee-8b88-92fbcf53809c.png

那么请问如何解决?请大家加入景芯训练营实践。

景芯SoC用了很多异步FIFO,关注异步RTL实现的同学,可以抓取异步FIFO出来看一下版图连线:

c8b93a14-a3d7-11ee-8b88-92fbcf53809c.png

查看下所有异步FIFO cell的面积;

dbget [dbget top.insts.pstatus unplaced -p].area

查下所有异步FIFO的cell的名字:

dbget [dbget top.insts.pstatus unplaced -p].name

那么怎么抓出异步路径来观察版图走线呢?如何让report_timing呢?更多内容参见知识星球和SoC训练营。

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

    关注

    146

    文章

    16017

    浏览量

    343632
  • 仿真
    +关注

    关注

    50

    文章

    3872

    浏览量

    132161
  • JTAG
    +关注

    关注

    6

    文章

    383

    浏览量

    71151
  • 端口
    +关注

    关注

    4

    文章

    820

    浏览量

    31588

原文标题:JTAG经典问题,ICer不能不懂!

文章出处:【微信号:全栈芯片工程师,微信公众号:全栈芯片工程师】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    RCC电路原理与设计及问题解析

    RCC电路原理与设计及问题解析 RCC电路,单端反激式的一种,结构简单,主要应用在1~200W,首先变压器设计最为重要,RCC电路结构主要包括: 1.
    发表于 12-14 10:31 2.4w次阅读

    模数转换器的电源去耦问题解析

    模数转换器的电源去耦问题解析 尽管高速ADC给电源带来的总负载是稳定的,但需要电流以ADC采样速率和此频率的谐波快速跳变。由于
    发表于 01-01 12:30 1002次阅读

    LED驱动电源经典解析!!!

    LED驱动电源经典解析!!!
    发表于 03-29 12:42

    运算放大器经典题解析

    ` 本帖最后由 web_master 于 2013-9-26 14:19 编辑 运算放大器经典题解析——设计运放电路必备常识![hide] [/hide]`
    发表于 09-26 11:48

    C语言习题解析

    C语言习题解析
    发表于 03-11 15:20

    UART串口与LWIP以太网问题解析

    技术三千问:【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总【技术三千问】之《AT组件问题汇总与解析》,干货汇总!【技术三千问】之《UART串口问题解析》,干货汇总!【技术三千问】之
    发表于 08-05 06:54

    电子设计竞赛赛题解析

    电子设计竞赛赛题解析 东西是非常不错的,可供参考.
    发表于 12-17 12:43 0次下载

    车台天线的位置和辐射问题解析

    车台天线的位置和辐射问题解析 1、车台外接的天线,放在后备箱上比放在车顶中间的效果是不是差一些? 回答:车台的天线共有四
    发表于 01-04 09:44 3197次阅读

    苏泊尔微电脑电磁炉故障问题解析

    苏泊尔微电脑电磁炉故障问题解析,本内容介绍了苏泊尔电磁炉故障问题的分析
    发表于 05-11 15:14 6437次阅读
    苏泊尔微电脑电磁炉故障问<b class='flag-5'>题解析</b>

    自动控制原理习题解析

    自动控制原理习题解析,有需要的下来看看。
    发表于 05-05 14:06 0次下载

    风力摆控制系统赛题解析

    风力摆控制系统赛题解析
    发表于 12-09 23:00 31次下载

    电工学-知识要点与习题解析电子版

    电工学-知识要点与习题解析电子版
    发表于 07-23 09:33 0次下载

    樊昌信《通信原理》真题解析及讲义电子版

    樊昌信《通信原理》真题解析及讲义电子版
    发表于 09-06 14:40 0次下载

    《电路考研精要与典型题解析》陈燕主编

    《电路考研精要与典型题解析》陈燕主编
    发表于 01-14 15:33 0次下载

    《信号与系统 第3版》习题解析

    《信号与系统 第3版》习题解析
    发表于 03-21 15:06 0次下载