weiqi7777

ARM GIC(四) gicv3架构基础

GICv3架构是GICv2架构的升级版,增加了很多东西。变化在于以下:使用属性层次(affinityhierarchies),来对core进行标识,使gic支持更多的core将cpuinterface独立出来,用户可以将其设计在core内部增加redistributor组件,用来连接distributor和cpuinterface增加了LPI

ARM GIC(三) gicv2架构

ARM的cpu,特别是cortex-A系列的CPU,目前都是多core的cpu,因此对于多core的cpu的中断管理,就不能像单core那样简单去管理,由此arm定义了GICv2架构,来支持多核cpu的中断管理。一、gicv2架构GICv2,支持最大8个core。其框图如下图所示:在gicv2中,gic由两个大模块组

ARMv8 系统定时器

ARMv8架构中,定义了一个系统定时器(systemtimer),并且指定了这个系统定时器,需要实现的寄存器,以及各个寄存器的偏移。系统寄存器中,包含一个系统计数器,以及一些控制寄存器,状态寄存器等。寄存器,包含如下:寄存器的基地址,由CNTControlBase来指定。其实是由

ARM GIC(二)中断术语

ARM在GIC中,对于中断,定义了如下的一些术语。一、中断状态对于每一个中断而言,有以下4个状态:inactive:中断处于无效状态pending:中断处于有效状态,但是cpu没有响应该中断active:cpu在响应该中断activeandpending:cpu在响应该中断,但是该中断源又发送中断过来

使用arm DS5在fvp上debug

在调试arm的软件时,可以使用arm公司提供的DS5工具,配合FVP,进行debug。启动ds5,选择Window->OpenPerspective->DS-5Debug进入DS5debug界面,如下图所示:一、debug配置在Debugcontrol子界面,右键选择debugconfiguration,弹出debug配置界面。如下图所示:在DS

ARM GIC(一) cortex-A 处理器中断简介

对于ARM的处理器,中断给处理器提供了触觉,使处理器能够感知到外界的变化,从而实时的处理。本系列博文,是以ARMcortex-A系列处理器,来介绍ARM的soc中,中断的处理。ARMcortex-A系列处理器,提供了4个管脚给soc,实现外界中断的传递。分别是:nIRQ:物理普通中断nFIQ:

jenkins pipeline中对git的操作

jenkins的pipeline对git的操作

ueditor编辑器增加verilog语法高亮

ueditor增加verilog/sv语法高亮。

pxp的ixcom模式,memory不能定义太大问题

pxp的ixcom模式,memory不能定义太大问题

jenkins启动失败

重启jenkins,出现如下问题:com.thoughtworks.xstream.mapper.CannotResolveClassException:hudson.security.ProjectMatrixAuthorizationStrategyat...Caused:jenkins.util.xstream.CriticalXStreamException:hudson.security.ProjectMatrixAuthorizationStrategy:huds

irun仿真,竞争产生毛刺,使wait条件满足

在仿真中,出现了以下奇怪的问题。如下Tb代码,uart_send_one_data任务,发送一个数据后,要等待finish为高后,才可以发送下一个数据。但是在实际仿真过程中,发现finish信号,并没有变高,wait语句条件就成立了,然后退出该task。又重新发送了一个数据。波形如下:fini

跟文件系统与ramdisk

一、文件系统文件系统,是管理文件数据的一堆程序。操作系统,可以通过这些程序,从块设备中,读取或者写入文件。常见的一些文件系统:FAT32NTFSEXT2EXT3二、扇区和簇扇区,是块设备(硬盘,nandflash,SD卡)读取和写入的最小单位。一般是512字节。簇是文件系统,管理

irun工具检测TB环境零延时无限循环

在写TB代码时,如果循环退出条件没注意,可能使循环一直不能退出,而且该循环又是没有延时的,因此就出现了zero-delay(零延时)的无限循环。如下循环代码:本来每次循环,i会加一,当i不小于50,就会退出循环。但是因为在循环体内,将i又减一,因此,循环退出条件不能

irun工具检测zero-delay组合逻辑

编写RTL,如果不注意,可能会写出zero-delay(零延时)的组合逻辑,也就是组合逻辑的输出,直接反馈到组合逻辑的输入上。如下图中组合逻辑,就是零延时的组合逻辑。对于这样零延时的组合逻辑,在仿真的时候,仿真工具会一直卡在这个仿真时间处,不会向前走。代码如下,t

cadence验证仿真工具IUS和IES

cadence,有两大验证仿真工具。一个是IUS,一个是IES。IUS是cadence以前的仿真工具,功能略弱。代表工具,ncverilog。官方介绍:IUS(incisiveunifiedsimulator)CadenceIUSallowstoperformbehavioralsimulationonVerilogandVHDLcode.IES是cadence现在的仿真工具,功能