还分不清电平中断、边沿中端?

​景芯有刚加入的VIP学员居然还分不清电平中断、边沿中端,必须捋一捋,走你! 中断就是CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生);CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务);中端分为电平中断、边沿中端。

(一)电平触发:

以低电平触发为例,低电平触发中断就是检测到引脚为低电平就进入中断函数去处理这个中断,并且在低电平保持的时间内持续触发。

注意,低电平触发,只要引脚为低电平,那么就会一直进入中断,直到电平变化为高电平。

敲黑板!!!注意,电平触发中断,如果在电平没有恢复之前就退出中断程序,那么会在退出后又再次进入中断。只要不退出是不会重复触发的。也就是重复触发只有在退出中断后才会再次触发,不用担心这次还没进行完,中断已经重新触发的情况。

敲黑板!!!注意,如果想要电平触发中断也只进行一次,通常的做法是在中断进入后就关闭中断响应,等后面需要的时候再打开。

低电平触发是即时的,当外部中断信号撤消时,中断申请信号随之消失。如果在外部中断信号申请期间,CPU来不及响应此中断,那么有可能这次中断申请就漏掉了。也就是说假设低/高电平的时间很短。CPU没来得及相应,那么这次的电平中断申请就可能不会检测到。

DDR4+SoC实战

当一个设备希望发送中断请求信号时,他的驱动中断请求线路至响应的电平,并在CPU发出强制停止命令或处理所请求的中断时间之前始终保持。

该中断模式在共享中断中存在一个严重的问题:只要还有任何设备的中断请求还未被处理,线路就会一直保持有效电平状态,而将导致CPU没有机会去探查其他设备所发生的状态变化。

(二)边沿触发

数字电平从低电平变为高电平那一瞬间叫作上升沿。上升沿触发就是当电压从低变高时触发中断;下降沿触发就是当电压从高变低时触发中断。

当然,上升沿与下降沿检测的是电平变化的一瞬间,就会产生中断,这个时间是us级别的。

在边沿触发的中断系统中,中断设备通过向中断线路发送一个脉冲来表示其中断请求。脉冲可以为上升沿或下降沿。在发送完脉冲后设备立即释放中断线路,如果这个脉冲太短,以至于I/O轮询不足以确保知悉其存在,则有必要使用专门的硬件设备来辅助队边沿触发的探查。

这个中断模式就不会存在电平触发那种问题,该中断一经被触发就会立即释放,所以又会引入另一个问题,就是边沿触发的中断很容易丢失,特别是当中断被有意屏蔽时。

景芯SoC v3.0芯片全流程培训

景芯SoC v3.0重磅升级!手把手教您搭建SoC,从入门到进阶,带您掌握熟悉架构、算法、设计、验证、DFT、后端全流程低功耗!直播视频不定期升级!让您快速超越同龄人!报名微信:13541390811

 

景芯全流程课程如下:

  • 景芯SoC设计   直播视频+文档+实战+一对一辅导(价格不到同行1/6)

  • 景芯SoC验证   直播视频+文档+实战+一对一辅导(价格不到同行1/6)

  • 景芯SoC中端   直播视频+文档+实战+一对一辅导(价格不到同行1/6)

  • 景芯SoC后前   直播视频+文档+实战+一对一辅导(价格不到同行1/6)

进阶课程:

  • 12nm 2.5GHz A72 低功耗DVFS实战培训(价格不到同行1/2)

  • DDR4/3项目实战培训(价格不到同行1/2)

芯片Design Service设计服务介绍:

  • 提供SoC、MCU、ISP、CIS等芯片设计、验证、DFT设计服务

  • 提供DDR/PCIE/MIPI/CAN/USB/ETH/QSPI/UART/I2C等IP设计

  • 提供5nm、7nm、12nm、28nm、40nm、55nm、65nm、90nm等后端设计

  • 提供高校、企业定制化芯片设计服务、设计培训业务

另外,小编知识星球分享芯片设计、验证、DFT、后端全流程知识以及大量技术文档,欢迎大家加入讨论学习,共同进步!

景芯SoC v3.0芯片全流程实战训练营的宗旨:

手把手教您掌握SoC算法、设计、验证、DFT、后端全流程低功耗!

景芯SoCv3.0,是一款用于【芯片全流程实战培训】的低功耗多媒体SoC!

景芯SoC系统分为三个层次的功耗管理,并集成低功耗RISC-V处理器,集成ITCM SRAM、DTCM SRAM,集成MIPI、ISP、USB、QSPI、UART、I2C、GPIO等IP,采用SMIC40工艺流片。

(一)SoC设计课程,您将学会

  • 高速接口的Verilog设计实现

  • 从图像算法到RTL设计实现

  • MIPI、ISP的Verilog实现与仿真

  • Lint、CDC检查及UVM验证

  • 后仿真

仅设计一门课程内容就抵得上其他培训机构的5-6门课程,价格仅其1/6

(二)SoC验证课程,您将学会

  • SoC子系统的UVM环境搭建

  • SoC子系统的UVC环境搭建

  • SoC子系统的VIP环境搭建

  • SoC子系统的DMA SRAM UVM联合验证

  • SoC子系统的UART UVM验证

  • SoC子系统的I2C UVM验证

  • SoC子系统的QSPI UVM验证

  • SoC子系统的C驱动验证(该部分放在设计课程部分)

仅验证一门课程内容就抵得上其他培训机构的3-4门课程,价格仅其1/6

(三)SoC中端课程,您将学会

  • DFT设计(芯片级)

  • Synthesis逻辑综合(芯片级)

  • 低功耗UPF设计、CLP技术

  • formal验证等技术

仅中端一门课程内容就抵得上其他培训机构的4-5门课程价格仅其1/6

(四)SoC后端课程,您将学会

  • 低功耗设计

  • 布局布线(低功耗FF flow)

  • StarRC/QRC

  • STA/Tempus

  • 功耗分析

  • DRC/LVS设计

仅后端一门课程内容就抵得上其他培训机构的3-4门课程,价格仅其1/6

ISP图像处理

  •    dpc - 坏点校正

  •    blc - 黑电平校正 

  •    bnr - 拜耳降噪

  •    dgain - 数字增益 

  •    demosaic - 去马赛克

  •    wb - 白平衡增益 

  •    ccm - 色彩校正矩阵 

  •    csc - 色彩空间转换 (基于整数优化的RGB2YUV转换公式)

  •    gamma - Gamma校正 (对亮度基于查表的Gamma校正)

  •    ee - 边缘增强

  •    stat_ae - 自动曝光统计 

  •    stat_awb - 自动白平衡统计

CNN图像识别

支持手写数字的AI识别:

仿真结果:仿真识别上图7、2、1、0、4、1、4、9

景芯SoC 3.0 ISP:

景芯SoC V3.0 DFT方案:

以上就是今天分享的内容,如果您和小编一样渴求进步,想掌握芯片设计全流程,欢迎加入小编知识星球,疯狂成长,一起进步!早日成为芯片大佬!

景芯SoC V3.0课程提供服务器供大家实践!手把手教您学会SoC的算法、前端、DFT、后端全流程实战。

请联系号主报名!联系微信:135-4139-0811

景芯SoC训练营图像处理的数据通路:

景芯SoC的CRG设计:

一键式完成C代码编译、仿真、综合、DFT插入、形式验证、布局布线、寄生参数抽取、STA分析、DRC/LVS、后仿真、形式验证、功耗分析等全流程。升级后的芯片设计工程V2.0 flow如下:

SoC一键式执行flow

MIPI DPHY+CSI2解码

数字电路中经典设计:多条通信数据Lane Merging设计实现

数字电路中经典设计:多条通信数据Lane Distribution实现

UPF低功耗设计

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

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

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

电压降检查:

低功耗检查:

低功耗设计的DRC/LVS,芯片顶层的LVS实践价值极高,具有挑战性!业界独一无二的经验分享。

丰富的教程文档

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

SoC训练营VIP学员问为何低功耗cell没有插入网表?

虽然提问题是值得鼓励的,但是我们在遇到问题时,还是先主动思考,主动解决问题,实在解决不了我们再求助,这样成长更快。

首先,小编拿到这问题,就打开log,查看log是一种IC设计美德!发现EDA工具吃进UPF文件后,报了warning如下,用到了很多ff库。

上图报错UPF指定电压是0.99V,而CELL是1.20V,电压不匹配,导致逻辑综合出来的网表没有插入MV CELL。注意,综合时,我们用的ss库,怎么会是ff库呢?打开约束脚本发现如下bug:

于是,更改约束,将ff换成ss即可。再次run一下,结果就出来了:

低功耗设计部分,设计里面我会留一点小bug在里面 非常简单,我不会公布答案,大家一定要多思考、多动手跑跑,这样才学的深刻。

培训学员请注意,景芯SoC用always on的power domain电压域的pwrdown_mux信号作为power switch cell的switch控制信号,但是设计里面有个小问题,不太算bug的bug,但对upf低功耗flow而言,毫无疑问就是bug!

培训学员请登陆服务器追踪一下pwrdown信号,注意其负载情况,RTL代码如下:

结合PR输出的netlist, 我们做个clp低功耗检查,脚本参见服务器。可以发现,clp报错说power switch的switch控制信号找不到。

不得不说,clp检查对低功耗而言多么重要,对芯片设计而言多重要!景芯SoC的价值就在把芯片设计全流程的这些细小的知识点,全部串接起来!犹豫啥?抓紧报名加入吧!

在芯片设计中端流程时,景芯SoC会插入UPF约束中的isolation等cell,但是无法插入power switch等cell,因此,作为power switch cell的控制信号pwrdown_mux在没有负载的情况下,会被裁员掉(优化掉),因此需要设置上面MUX器件为dont_touch或者使pwrdown_mux成为module的port并禁止auto_ungroup(并设置no_boundary_optimization),这样这个信号才能保留给后端,供后端实现power switch控制。请学员完成代码修改,基于全套flow环境完成如下任务:

  1. lint检查、前端仿真,

  2. 完成中端、后端flow,

  3. 完成clp检查, 完成后仿真

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

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

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

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

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

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

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

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

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

生成脚本命令如下:

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

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

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

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

#% Begin Load floorplan data ... (date=10/23 22:38:01, 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版本?

同学保存方式如下:

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

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

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

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

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

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

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

以上就是今天分享的内容,如果您和小编一样渴求进步,想掌握芯片设计全流程,欢迎加入小编知识星球,疯狂成长,一起进步!早日成为芯片大佬!

欢迎加入SoC MCU全流程设计交流群,先加我微信,验证岗位后进群!

SoC MCU全流程设计交流群4

SoC MCU全流程设计交流群3

SoC MCU全流程设计交流群2

SoC MCU全流程设计交流群1

欢迎加入CMOS图像传感器+ISP交流群,先加我微信,验证岗位后进群!

CMOS图像传感器+ISP交流群2

CMOS图像传感器+ISP交流群1

  • 8
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值