自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (9)
  • 收藏
  • 关注

原创 python使用python-jenkins插件操作jenkins

python通过python-jenkins模块操作jenkins

2022-05-04 13:41:17 6215

原创 synopsys工具安装系列(四)- 安装vcs工具

安装vcs工具,需要借助installer工具来进行安装。首先从官网下载vcs的安装包。我这里是vcs的最新版本,2020.12-SP1版本。下载的安装包内容如下所示:将该安装包,拷贝到内网服务器。启动installer。然后填入安装包目录,点击Next。installer工具会解压该安装包,等待一会即可。在下一个界面,输入工具的安装位置。然后点击next。 工具选择页面,选择vcs。 在下一个界面,选择要安装的工具...

2021-05-12 16:51:24 6986 14

原创 synopsys工具安装系列(三)- 安装verdi工具

安装verdi工具,需要借助installer工具来进行安装。首先从官网下载verdi的安装包。我这里是verdi的最新版本,2020.12-SP1-1版本。下载的安装包内容如下所示:将该安装包,拷贝到内网服务器。启动installer。然后填入安装包目录,点击Next。installer工具会解压该安装包,等待一会即可。在下一个界面,输入工具的安装位置。然后点击next。工具选择页面,选择verdi。在下一个界面,选择要安装的工具版本。这里根据自己.

2021-05-12 11:39:40 4113 2

原创 synopsys工具安装系列(二)-安装license工具以及启动license

synopsys的工具,是需要官方授权的license认证,才可以运行的。因此需要搭建license服务器,以提供license服务。 synospys提供了scl工具,用来搭建license服务器。 从官网下载scl工具。我这里的版本是v2021.03 工具中的内容如下: 因为license server是可以搭建在windows上的。所以也提供了windows版本的安装包。但是,这里,我们是将license服务器,搭...

2021-03-18 14:30:12 21478 4

原创 synopsys工具安装系列(一)安装installer

synopsys为eda工具安装,提供了一个安装器,名叫installer。所以,首先要先安装installer这个工具,之后才能安装其他的eda工具。 首先从官网下载该installer工具。我这里下载的是5.2版本 下载之后,有如下安装文件。 将该安装包,拷贝到linux服务器中。 首先给SynopsysInstaller_v5.2.run赋予可执行权限。 chmod a+x SynopsysInstaller_...

2021-03-18 13:49:07 6974 5

原创 jenkins pipeline关联钉钉发送消息

钉钉目前支持jenkins发送推送消息,这样就能及时收到jenkins的job执行信息。首先,在钉钉软件中,注册一个机器人。参照钉钉官网帮助,注册机器人:https://www.dingtalk.com/qidian/help-detail-20781541.html后续要使用生成的webhook地址。进入到jenkins插件界面,安装钉钉插件。我已经安装了,所以在是已安装里面。如果没有安装,就在可选插件中查找安装。安装完毕后,进入到系统设置里面。会多一项钉钉配置。在机器人一

2020-09-10 20:34:21 3773 1

原创 sv使用default clocking指定全局默认时钟

在sv的assertion中,会用到时钟打拍操作。一般会在assertion代码块中,显示的写上使用的时钟,property counter_2; @(posedge clk) counter == 2 |-> ##1 counter_r == 2;endpropertyassert_counter_2: assert property(counter_2);如果说,不写使用的时钟,即如下代码:property counter_2;...

2020-06-02 13:59:49 2395

原创 服务器与网络设备安装指南

近段时间,公司购买了一批服务器。自己还参与了服务器,网络的搭建过程,因此写下本文记录下。这次采购的设备有:服务器 华为防火墙 华为交换机 ups电源与电池购买服务器之后,服务厂商会派人来安装服务器。安装完毕之后,就需要自己配置网络以及服务器了。对于购买的网络设备,有提供对应的手册的。建议首先阅读该手册,了解如何配置。我当时没有看手册,所以在这里折腾了好久。一、华为防火墙对于华为防火墙,接口1,默认有配置ip,ip地址为192.168.0.1。连接管理pc和华为防火墙,使用.

2020-05-25 16:54:54 1955

原创 riscv cpu硬件访问device区域微乱序的影响

以下代码,是riscv plic处理一个外部中断的handler程序。在handler程序中首先写irq_generator组件的clear寄存器,将中断源给清除掉 然后写plic的complete寄存器,通知plic,该中断处理完毕 plic_irq_mmode: li a1, PLIC_M_CLAIM // a0 save the in...

2020-05-06 20:44:40 623

原创 如何将adoc文件转换为pdf文件

riscv的大多spec,都托管在了github。并且使用adoc文件格式编写。adoc文件,是可以转换为pdf文件的。通过工具 asciidoctor PDF 工具,可以将adoc文件,转换为pdf文件。该工具的官网介绍如下:https://asciidoctor.org/docs/asciidoctor-pdf/首先要先安装该工具,该工具,需要使用gem命令安装,如果环境中,没...

2020-05-06 20:13:53 3945 1

原创 systemverilog使用$fwrite系统函数打印信息到屏幕

使用systemverilog(以下简称sv),除了使用$display系统函数,打印信息到屏幕上,还可以使用$fwrite系统函数,进行打印。 $fwrite的函数的第一个参数,是文件描述符。后续参数与$display系统函数参数一致。 在sv的标准中,有如下说明: The file descriptor fd is a 32-bit pa...

2020-05-06 19:51:34 6419

原创 cadence indago征程(五)最强cpu debug工具-eswd

最前cpu debug工具, cadence eswd工具

2019-03-22 21:46:22 1176

原创 cadence indago征程(四)仿真加速indago database

合理使用ida_probe的选项,仿真加速indago database的生成。

2019-03-22 21:45:02 936

原创 cadence indago征程(三)indago工具的使用

cadence indago工具的使用介绍

2019-03-22 21:43:47 1717

原创 cadence indago征程(二)如何产生indago database

如何产生indago database,用于后面的indago工具使用

2019-03-22 17:21:32 1633 1

原创 cadence indago征程(一)indago系列工具介绍

cadence indago工具系列,引入。

2019-03-22 17:16:32 1704

原创 UVM使用双顶层的用法

uvm中,如何使用双顶层,来实现多个uvm环境的集成,增强uvm的复用性。

2019-03-06 09:33:57 5547 12

原创 riscv各种版本gcc工具链编译与安装

riscv的gcc各个版本编译与安装介绍。

2019-02-28 21:40:22 67917 17

原创 newlib库介绍以及底层调用研究

newlib库介绍,以及底层调用研究,以write函数调用为例进行说明。

2019-02-28 19:37:58 11124 2

转载 静态程序编译链接与加载(五)链接脚本大作战

在程序编译的过程中,链接脚本起了非常大的作用,对各个.o文件,如何组合,VMA与LMA如何定义,都由这个文件来决定。下面,针对链接脚本,进行一系列的实验。一、最简单链接脚本,代码段和数据段,合成一个segment链接脚本如下图所示: 数据段,紧跟代码段代码段和数据,最终合成一个segment全部的section,都合并到一个segment中了。segment的属...

2019-02-16 22:18:14 422

转载 静态程序编译链接与装载(四)ELF程序如何执行

ELF有执行视图,那么ELF是怎么执行的起来的呢?这里,分为2个进行说明:一、CPU在EDA上,仿真执行ELF在验证环境中,会有一块memory,专门用来放置CPU要执行的指令,以及访问的数据。而verilog提供了$memreadh系统函数,可以将hex文件,直接载入到memory中。因此只要将ELF文件,转化成hex文件即可。比如对于如下的链接脚本: 3个代...

2019-02-16 22:17:11 1738

转载 静态程序编译链接与装载(三)segment分析以及链接视图与执行视图

程序通过编译,链接生成ELF可执行之后,如果要被执行,是需要装载到内存当中,然后去执行的。那么装载的过程,应该是如何装载的?是按照链接时候的section为单位进行装载吗?下面,就要基于这个问题,进行分析。链接的时候,是通过section进行组合,得到最终的ELF,但是对section进行分类的话,section无非就下面几种权限:RX:可读可执行,对应于代码段RW:...

2019-02-16 22:15:50 841

转载 静态程序编译链接与装载(二)编译链接以及ELF中section详细分析

在编译之后,也就是make compile,将a.c文件,转换成a.s。a.c和a.s如下图所示: 程序被切分成了如下的一些段:1个代码段, .text函数main2个数据段,.data全局变量global_init_a静态局部变量static_a2个COM段,.comm变量global_noinit_b变量stat...

2019-02-16 22:14:17 992

转载 静态程序编译链接与装载(一)问题的引入以及工具介绍

关于程序的编译链接与装载,有一些问题一直没有弄得很清楚。这次花了不少精力,把这些问题,好好研究了一番。在学习的过程中,熟读了<<程序员的自我修养-链接、装载与库>>这本书,收获良多。强烈推荐这本书。此次系列文章,是针对静态编译,动态编译太多复杂,目前仍有很多问题,没有解决。在开始之前,带有如下的一些问题:程序是如何编译成可执行程序?跨模块之间,...

2019-02-16 22:07:28 557

原创 ARM访问实现自定义系统寄存器

ARMv8中,取消了协处理器,之前协处理器实现的功能,全部由系统寄存器来是实现。对于系统寄存器的访问,使用mrs,msr指令来访问。指令编码如下: L: 1, mrs,读取系统寄存器值到通用寄存器中L: 0, msr,将通用寄存器值写入到系统寄存器中而系统寄存器的编码,由op1,CRn,CRm,op2来决定。如下图所示,更多的系统寄存器的编码,查看arm-spec。

2018-01-28 16:31:52 1326

原创 AMBA低功耗接口(二)P_Channel

为了满足复杂的power管理的需求,arm提供了P_Channel的低功耗接口,来满足这样的应用场景。一、P_ChannelP_Channel,提出了一个概念,叫power state transition,power状态的切换。在P_Channel的应用场景中,power的状态有很多,这个是实现自己定义的。power的各个状态之间,是可以切换的。2个最基本的状态:lower-po

2018-01-11 14:25:25 4308 1

原创 AMBA低功耗接口(一)Q_Channel

AMBA提供了,低功耗的接口。用于实现power控制功能。目前,AMBA里面,包含2种低功耗接口。Q-Channel:实现简单的power控制,如上电,下电。P-Channel:实现复杂的power控制,如全上电,半上电,1/4上电等。ARM引入这2种低功耗接口,是为了满足不同的应用场景下,对power的控制。在一些场景下,组件只有两种power状态,分别为power-up,pow

2018-01-11 14:09:19 7160 1

原创 跟文件系统(二)busybox构建跟文件系统

rootfs有两种格式:nfs方式启动的文件夹形式的rootfs和用来烧录的镜像形式的rootfs。一、busybox移植1、busybox下载busybox是一个开源项目,源代码可以网上下载。官网:https://busybox.net/downloads/,有多个版本。 下载完毕后,在linux下解压。得到以下的一些目录和文件。 2、修改Makefile修改AR

2018-01-09 11:47:36 1298

原创 跟文件系统 (一)跟文件系统简介

一、为什么需要根文件系统1、init进程的应用程序在根文件系统中linux在启动之后,会去执行init进程。将自己变为应用进程,而init进程就是linux的进程1,然后再由这个进程,去生成其他的进程。而这init进程,就是在根文件系统中,因此需要根文件系统,来向内核提供init进程2、根文件系统提供了根目录linux根据树形目录结构来文件管理。而这个树形目录的跟就是/,因此就

2018-01-09 10:01:29 749

原创 cadence vmanager(十) vplan与vmanager结合使用的例子

下面,用vplan与vmanager结合使用,来对一个验证环境,实现MDV的验证。所验证的DUT,以及搭建的验证环境,是根据testbench.in网站上的systemverilog的demo来搭建的。demo的网站如下:http://www.testbench.in/SL_00_INDEX.html 本demo,是使用vmanager的本地模式,如果使用CS模式,去掉相应选项即可。

2017-12-09 20:06:19 4854 7

原创 cadence vmanager(九) vplanner介绍

验证计划,是整个验证的基础,这个会指导后面的验证过程。cadence提供了vplanner工具,对验证计划的管理,并且还提供了,各个feature和环境中coverage,checker的对应。将来在vmanager中,可以可视化的看到,各个feature的验证情况以及进度。一、vplanner软件的启动vplan,也提供了sever-client的工作方式,如果只需要本地使用vpla

2017-12-09 18:05:46 3293

原创 cadence vmanager(八) vmanager生成文件说明

vmanager在启动一个session之后,在生成很多文件,下面对这些文件,简要进行说明。下图是vmanager文件层次结构: 顶层TOP-dir:是在vsif中,指定的session的顶层目录chain_N:此次session,生成文件指定的位置,默认是chain_0,可以在启动vsif文件时,指定已存在的session,那么新的session产生的文件,就会生成在chain_

2017-12-09 17:01:14 2139 3

原创 cadence vmanager(七) vsif文件介绍

vsif(verification session input format file),是vmanager启动一个session,必备的一个文件,该文件,指定了待运行的test。vmanager工具,会从该文件中,提取出test以及test的run命令,使用自带的runner去运行这些test的run命令,并且收集run的结果,最后集中显示。vsif文件中,定义了如下的三个大的字段:se

2017-12-09 16:25:46 3860

原创 cadence vmanager(六) vmanager的web功能

通过vmanager连上server,可以查看各个client运行的session,以及分析run的结果,metric,反标vplan。如果只是想看结果,那就要每次启动vmanager工具,去连接server,然后查看。cadence提供了vmanager的web功能,使我们可以不用vmanager工具,直接使用网页浏览器,查看结果。并且在web上,还可以对vmanager进行配置。一、w

2017-11-26 19:53:15 1401

原创 cadence vmanager(五) vmanager启动方式

vmanager提供了几种启动方式,使用以下命令,可以查看这几种方式。    vmanager –help 提供了4种启动方式:-gui:     启动图形化界面模式-batch:     启动batch交互模式-exec: 启动batch非交互模式,执行脚本-ececdmd: 启动batch非交互模式,执行命令一、-gui方式这个是vmanag

2017-11-26 17:37:30 2608

原创 cadence vmanager(四)vmanager软件使用介绍

当建好一个vmanager server后,各个client就可以通过server的ip:端口号,连接server了。连接server,有2种方式,一是普通用户模式,权限有限制,二是超级用户模式,权限没有限制。一般情况下,超级用户模式,不运行回归,只是对server的工程进行配置,如用户的权限设置,工程的维护等。而普通用户模式,进行运行回归,数据查看。我使用的vmanager工具的版本

2017-11-26 16:41:19 7343 7

原创 cadence vmanager(二)vmanager工作模式

一、vmanager的任务流程vmanager的任务流程,如下图所示: 最开始,使用vplan建立验证计划,并且建立验证环境。使用vmanager运行回归,之后分析faild的case,以及收集的metric,确定状态。根据状态,判断,是否收敛,如果收敛,那么验证就结束了,可以signoff,如果验证没有收敛,那么就重新运行回归。这里,就引出了vmanager的两大功能:

2017-11-26 14:34:50 5921

原创 irun增量编译

irun支持MSIE编译,MSIE的全称是 multi-snapshot incremental elaboration。将多个编译好的snapshot,组合成一个最终的snapshot,去仿真。利用这个技术,我们就可以使用irun来进行增量编译,从而节约编译时间。为了实现增量编译,我们将snapshot分为primary snapshot和incremental snapshot,pri

2017-11-26 13:20:24 12562 13

secoclient-5.03版本软件合集.zip

secoclient-5.03版本软件合集 包含了 win32,win64,mac系统安装包,没有linux安装包。

2020-02-16

secoclient-7.0.2合集.zip

secoclient 7.0.2客户端软件 包含了 win32,win64,linux32,linux74,macos,ios,android多个版本。

2020-02-16

riscv32-unknown-elf-gcc v8.2.0交叉编译工具链,第二部分

riscv32-unknown-elf-gcc交叉编译工具链,基于riscv-gnu-gcc进行编译。 版本8.2.0. 工具链大小为340M,超出了240M的限制,分成了2个资源进行上传,需要将第一部分下载,然后放一起才可以解压。

2019-02-26

riscv32-unknown-elf-gcc v8.2.0交叉编译工具链,,第一部分

riscv32-unknown-elf-gcc交叉编译工具链,基于riscv-gnu-gcc进行编译。 版本8.2.0. 工具链大小为340M,超出了240M的限制,分成了2个资源进行上传,需要将第二部分下载,然后放一起才可以解压。

2019-02-26

stm32驱动SDHC卡(SPI方式) 一

stm32驱动SDHC卡,SDHC卡为8G。。使用SPI方式,自己用IO模拟的SPI方式

2015-01-13

ds18b02在proteus中仿真源代码

proteus中仿真ds18b20温度芯片,外挂3个ds18b20,其实只控制了两个,读取温度值,分别显示在IO管脚上。温度值只用了读取出来的整数部分。

2015-01-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除