自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(240)
  • 收藏
  • 关注

转载 SV-assertion

断言(assert)是一种描述性语言,通过描述的期望结果来进行仿真验证。断言有一个更加基础的信息,我们称为属性(property),属性可以作为断言结果,功能覆盖点,形式检查和约束随机激励生成。断言相比较与testcase的仿真验证,对设计的可见度要求比较高,可以帮助快速定位错误的根源,断言可以分布在设计各个部位。在项目中使用断言,有两种方式(eda tool中都支持):...

2019-03-29 14:02:00 2141

转载 openssl源代码结构

Openssl整个软件包主要包括三个主要的功能模块:密码算法库,SSL协议库,应用程序;    应用程序:主要包括密钥生成,证书管理,格式转换,数据加密,签名,SSL测试等。evp,对称算法,非对称算法,摘要算法的封装。随机数的生成,管理;最基本的数据结构,struct 大数数组, EC_point 椭圆曲线点结构,openssl编译的命令:  ./c...

2018-11-06 17:10:00 412

转载 sha-hmac

MAC----message authentication code,保证数据完整性的一个技术。HMAC类似于标准的sha运算,只是对于生成的mac增加了基于key的密钥保护。  生成的mac值,随着sender的payload一起发送给receiveder。  receiveder,拿到mac先进行数据完整性的校验-----重新计算payload,得到自己的mac,与传输过...

2018-09-19 10:15:00 565

转载 nist-sha

nist目前支持的sha运算,sha1系列,输出mac160bit。            sha2系列,支持sha2-224,sha2-256,sha2-384,sha2-512,sha2-512/224,sha2-512/256            sha3系列,支持sha3-224,sha3-256,sha3-384,sha3-512sha1和sha2系列的算法,支持...

2018-09-19 10:11:00 190

转载 program与module

program,各方面与module都类似,其中声明的变量在program中都可见,  生命周期也是static类型的,program的结束,也是需要等待其中的所有initial块都执行结束。  与module最大的不同是,program中的时间都是在reactive的区域中执行的。  所以如果clock块写在program中,非阻塞赋值,都先发生在program中的Re...

2018-08-23 15:34:00 1112

转载 ACE Bus

对于coherency transaction load操作,data来源:  1) 可以从其他cache master的cache line拿到,  2) 由interconnect中的buffer直接返回,或者interconnect发出的ReadNoSnoop transaction返回数据。对于coherency transaction store操作,要求maste...

2018-08-06 17:19:00 902

转载 arm浮点运算

首先总结一下计算机中的浮点数的存储。浮点数的标准是IEEE-754,规定了浮点数的存储都是通过科学计算法来存储的,n2-e的表示。  浮点数首先分为,定浮点(fixed-point)和浮点(float-point),定浮点就是说e的值是不变的。  目前浮点的计算都是将浮点转换为定浮点来计算,由此衍生出,单精度浮点和双精度浮点。浮点数的存储,前半部分表示exponen...

2018-07-02 17:44:00 813

转载 HVP plan

HVP,hier verification plan,建立整个验证的plan,在验证后期,通过vcs的coverage db可以直接进行反标,  包括反标code coverage,function coverage,testcase等。coverage的database,包括vcs产生的db,自己拿到的external的data,hvp提供一个feature list,pr...

2018-05-22 20:02:00 1052

转载 python包

sys模块,主要实现与解释器相关的操作:  sys.argv,用来获取命令行参数,是一个list;    sys.argv[0] 代表文件本身路径,    sys.argv[1] 开始,代表传入的参数;  sys.exit(),python带返回码返回,0默认的正常退出,1表示异常退出。   sys.stdin,sys.stdout,sys.err,分别代...

2018-03-19 19:58:00 68

转载 SV randomize

randomize中的变量只支持2-state的values,不支持4-states。randc类型的变量不能被约束在solve------before的语句中。constraint可以被定义在class外:      class C;        rand int x;        constraint protol; //隐式的        ex...

2018-03-16 10:34:00 3905

转载 SV class

SV中的class通过new来创建实例,new函数可以传递多个参数;    packet P1; P1 = new;创建一个P1的对象;        P2 = P1;P2也指向同一个对象;        P2 = new P1;P2是P1的shadow copy,指针直接被copy。  对于参数化的class的new函数调用:new函数可以通过类操作符::来调用...

2018-03-14 14:26:00 829

转载 SV coverage

covergroup是对coverage model的一种包装,每个covergroup可以包含:  1) sync event来触发采样,  2) 很多coverpoint,  3) cross coverpoint,  4) 可选的formal arguments,  5) 很多options。covergroup与class类似,也是需要new出来对象,本身...

2018-03-13 16:33:00 1214

转载 uvm设计分析——reg

项目中的reg_model一般只有一份,set到reg_sequence上,所以多个sequence并行启动结束的时候,reg model会成为一个共享资源。uvm_reg_field中的volatile,主要来设置m_check的变量,  m_check,主要用在uvm_reg的mirror task,以及read task,(需要map中配置check_on_read)...

2018-03-12 10:53:00 1482

转载 shell bash-shell

bash shell中的命令替换,`cmd`或者$(cmd)。bash shell中的变量赋值,直接name = var; (bash中的变量赋值不能中间有空格)变量引用时,$name,如果name比较复杂,也可以是${name}取消变量的设置,unset,unset namebash中的for循环方式:1) for i in 1 2 3 4 5  do...

2018-03-09 11:03:00 56

转载 scrapy的安装

python --version 2.7.12版本。1) 首先在交互模式下测试系统是否安装lxml和OpenSSL2) 安装lxml,apt-get install python-lxml,  lxml是python中XML和HTML相关功能最丰富,最容易使用的一个库,  lxml不是python自带的包,而是为libxml2h和libxslt库的一个python化的...

2018-03-01 16:37:00 77

转载 ucli tcl cmd

ucli接口与tcl 8.6兼容;vcs中要调用ucli接口,执行脚本,必须在compile的时候,加入debug的权限;          -debug,-debug_pp,-debug_all,-debug_access,-debug_region        在run的时候,指定vcs -ucli [run_option]hierarchical name的pa...

2018-02-26 16:47:00 2263

转载 VCS

timing check相关的,    +notimingcheck命令,可以用在compile时,也可以用在run time的时候,      都是将检查timing的系统函数,都disable掉了,      加在compile的时候,不会编译到worklib中,速度可快,可以测试gate env;      setuphold,recrem指定的delay sign...

2018-02-26 14:51:00 4355

转载 armv8 memory translation

AArch32,arm的32bit架构;AArch64,arm的64bit架构;ARMv8.2-LPA,是armv8.2中的新feature,扩大了IPA和PA的支持范围,从48bit扩展到52bit。armv8-a core内部使用virtual memory,内部通过mmu转换为physical address。mmu的好处:  1)允许system同时运行...

2018-02-13 14:26:00 465

转载 virtualization

多数的系统都是基于一个privileged OS + 多个unprivilege App。ARM的virtualization是指,一个system中运行多个OS,  体现在硬件上的区别是:多了virtual machines切换之间的硬件实现和加速。  体现在软件上的区别是:需要一个hypervisor software。hypervisor的两种方式:  1) b...

2018-02-13 14:26:00 326

转载 armv8 memory system

在armv8中,由于processor的预取,流水线, 以及多线程并行的执行方式,而且armv8-a中,使用的是一种weakly-ordered memory model,    不保证program order和execute order一致。    所以有时需要显式的执行一些指令,来order自己的代码。armv8涉及到的优化包括:  1) multiple issu...

2018-02-13 14:25:00 460

转载 arm-cache coherency

提高一个系统的performance,有两种办法:  1) 不断提高一个core的performance,手段就是不断提高freq,减小Vt,这样都会在增加power(dynamic,leakage)  2) 增加processor的个数arm的big-little processor cluster采用的就是第二个办法,通过Power Gating和DVFS也尽量的减小了功...

2018-02-13 14:24:00 644

转载 cache基础

cache是系统中的一块快速SRAM,价格高,但是访问速度快,可以减少CPU到main memory的latency。cache中的术语有:  1) Cache hits,表示可以在cache中,查找到相应地址的entry。  2) Cache Miss,表示在cache中,找不到相应地址的entry。  3) Snoop,cache不断监视transaction的地址线...

2018-02-13 14:24:00 1105

转载 arm trustzone

arm的trustzone并不涉及到具体的crypto算法,只是实现:  1) 敏感信息的安全存储;  2) 控制bus和debug的安全访问,保证信息不被泄露;trustzone是system_level的实现,涉及到软硬件,硬件方面包括:  1) ARM processor;  2) Bus fabric;  3) system peripheral IP;...

2018-02-07 16:37:00 985

转载 armv8 memory translation table descriptor

上一节大致给出了descriptor的结构,这篇细致分析各个field:1) Table Descriptor:stage2中不包含任何的attribute的field,每个level中的descriptor高位作为下一个level的attr配置。      NSTable,bit[63],定义subsequent lookup的secure state  APTabl...

2018-02-07 11:00:00 850

转载 memory consistency

目前的计算机系统中,都是shared memory结构,提供统一的控制接口给软件,shared memory结构中,为了memory correctness,可以将问题分为:memory consistency,和memory coherency。为了memory consistency的正确性,是需要program的编写者的操作,主要描述对一块memory的不同的load,st...

2018-01-30 14:41:00 620

转载 网页基础

网页基础,图解httpWeb页面,根据Web浏览器中制定的url,从Web服务器端获得文件资源,从而显示出Web页面。Web使用一种HTTP(HyperText Transfer Protocol,超文本传输协议)的协议作为规范,完成从客户端到  服务器端的一系列流程。Web是建立在HTTP协议上通信的。目前已经提出的三项WWW构建技术,作为页面的文本标记语言的HTML(...

2018-01-24 17:00:00 103

转载 ECC

素数 prime,又称为质数,是指,除了1和它本身,没有其他因数的数。素数的定理:  1)在一个大于1的数a和它的2倍之间必定存在至少一个素数;素数的性质:  1)在所有的大于10的质数中,个位数,只有1,3,5,9;素数还没有自己的生成函数,只能通过素数检测函数,进行循环判断;  C的基本判断函数:    大数的素数测试,有很多优化的算法,并不是简单的试...

2018-01-23 17:52:00 226

转载 RSA

同余:给定一个正整数m,如果两个整数a和b满足(a-b)能够被m整除,即 (a-b)/m 得到一个整数,    那么就称整数a b对模m同余,记做a ≡ b( mod n )RSA算法的参数构成:  1)选择两个大素数p、q;  2)计算n,n = pq和n的欧拉定理的值,ψ(n) = (p-1)(q-1)  3)随机选择公钥e,e只需要满足1<e<...

2018-01-23 11:10:00 162

转载 argparse模块

argparse是一个方便的对于cmd-line的接口函数,可以方便的从sys.argv解析出命令参数,并自动的产生帮助文档。1:create一个parser对象:创建一个ArgumentParser类型的对象,parser = argparse.ArgumentParser(description = 'Process some integers')之后的cmd-li...

2018-01-22 16:01:00 69

转载 python语法

python是一种解释性的语言,执行过程会先进行编译在解释,但是python的编译不像java一样是必须执行的。  python中import的包,默认会被编译为pyc文件,如果py文件没有被修改,该import的pkg就不会在进行编译。  (这样实现了编译型语言的共享模块的加载速度快,解释性语言的跨平台移植性强)python的运行有三种方式:1) 交互式解释器,解释性...

2018-01-22 13:39:00 112

转载 python运算符

python内部支持的运算符:算数运算符:  1) +,两个对象相加,  2) -,一个数减去另一个数,  3) *,乘,除,/,  4) %取模,//取整数;  5) **幂次方,比较运算符:  1) ==  2) !=,<>  3) >=  4) <=赋值运算符:  1) =  2) +=,-= ...

2018-01-22 13:37:00 457

转载 python字符串

python中的两种格式化打印:1) 类似于C的printf的打印方式,%:  print “my name is %s” % ("hym")  其他的控制格式化输出的特殊符号:%c,%d,%u,%o,%x(小写十六进制),%X(大写十六机制),%f2) 类似于C#的格式化输出方式,.format:  print '{0} {1}:{2}'.format('hello...

2018-01-22 13:36:00 80

转载 python多线程,多进程编程。

进程,是目前计算机中为应用程序分配资源的最小单位;线程,是目前计算机中运行应用程序的最小单位;在实际系统中,其实进程都是被分为线程来实现的,所以参与时间片轮转的是线程;  但是管理应用程序的资源的单位和任务调度的单位都是进程。更像是一个逻辑概念。线程是进程分出来的更精细的单位,线程间的上下文切换比进程间的上下文切换,要快很多。  多进程与多核,这个概念...

2018-01-11 17:56:00 87

转载 subprocess模块

subprocess模块是python从2.4版本开始引入的模块,主要用来取代一些旧的模块,如os.system,  os.spawn,os.popen等。subprocess是通过子进程来执行外部命令的,并且可以自己制定stdin,stdout,stderr等管道。内部支持的方法:1) call(),只是用来执行一个外部命令,启动的子进程,输入输出自动绑定到父进程的输入...

2018-01-11 16:38:00 129

转载 jenkins

sonar是一个用于代码质量管理的开放平台,通过插件机制,Sonar可以集成不同的测试工具,代码分析工具,  持续集成工具(Hudson/Jenkins)。sonar并不是简单的把不同的代码检查结果(FindBugs, PMD)显示在web上,而是通过不同的插件对这些结果进行  再加工处理,通过量化的方式来度量代码质量的变化。sonar是Codehaus上的一个开源项目,...

2018-01-11 16:05:00 40

转载 python中的lxml模块

Python中自带了XML的模块,但是性能不太好,相比之下,LXML增加了很多实用的功能。lxml中主要有两部分,1) etree,主要可以用来解析XML字符串,  内部有两个对象,etree._ElementTree和etree._Element etree.Element对象中包含的属性和方法:属性:1)tag,返回该节点的名称:      print 'ro...

2018-01-10 10:21:00 622

转载 python中的IO操作

python中的基本IO操作:1) 键盘输入函数:raw_input(string),不作处理的显示,与返回。         input(string),可以接受一个python表达式作为返回,python内部得到计算结果2) 文件句柄(file)对象: file对象的创建必须通过open()函数来得到,    file object = open(file_name,...

2018-01-08 19:38:00 138

转载 python中的re模块

python中的正则表达式匹配,可以import re模块来实现。python中的特殊字符:  1) 量词 *, +, ?, {m}, {m, n} 与perl中类似;  2) 元字符 “.”;  3) 转义字符 “\”;  4) 字符集[],预定义字符集\d,\D,\s,\S,\w,\W  5) 锚位符,^, $, \A, \z, \b, \B  6) 择...

2018-01-08 16:06:00 82

转载 XML

XML(EXtensible Markup Language),可扩展性的标记语言,主要用来在不同平台之间传输和保存数据。  XML是W3C 的推荐标准,XML与HTML的区别:  1)标记语言,类似与HTML;  2)XML的设计目的,主要是保存传输数据,HTML主要为了显示数据。  3)XML的标签不会被预定义,都是自行定义的,HTML的标签都是预定义的。...

2017-12-22 13:51:00 84

转载 PKCS#1

ASN.1 syntax,octet string是一个8 bytes sequence string.RSA中涉及到的Data conversion:  1)I2OSP,Integer to Octet String(8bytes sequence);    Input: x nonnegative integer to be converted       ...

2017-12-07 17:10:00 1165

空空如也

空空如也

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

TA关注的人

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