导航:首页 > 源码编译 > 编译sv加密

编译sv加密

发布时间:2022-12-08 01:22:21

⑴ SV强制类型转换和常数

静态转换有三种,分别是数据类型强制转换、向量宽度强制转换和符号强制转换,格式分别为:

静态强制转换是编译时的转换,转换的操作总会运行, 而不会检查结果的有效性

下面对数据类型强制转换和向量宽度强制转换做了仿真:

仿真结果如下:

系统函数 $cast 是动态的,并且 在运行时进行带转换数值的检查

动态强制类型转换的格式为: $cast(dest_var, source_var); ,系统函数 $cast 有两个变量:目标变量和源变量

下面几种情况会导致无效的强制类型转换:

$cast可以作为任务调用也可以作为函数调用,作为任务调用时,如果转换不成功, 会报告运行时错误 ,但作为函数调用时, 不会报告运行时错误

系统函数$cast具有返回值,如果转换成功,返回 1 ;转换失败,返回 0

例如:

$cast函数不能和直接修改源表达式的操作符(++, +=)一块用

$cast函数主要用途是将表达式的结果赋给枚举类型变量

静态强制转换是可综合的,动态强制转换由于一些综合工具可能不支持$cast系统函数

系统函数和系统任务都是不可综合的

下面这个例子,将 0.25*8 动态装换成 int 类型,并通过系统函数 $cast 判断转换是否成功

仿真结果如下:

Verilog提供了三种常数类型 parameter 、 specparam 和 localparam

确立 实质上是软件工具建立模块实例代表的设计层次的过程

Verilog限制 parameter 、 specparam 和 localparam 常数的声明只能在模块、静态任务和静态函数中, 不允许在动态任务和动态函数中

关键字const 允许将任何变量声明为常数,const形式的常数直到确立完成后才被赋值

const常数的使用范围:

const常数的声明必须包含数据类型,例如:

const常数实质上是一个只能被初始化的变量

本文摘在《SystemVerilog硬件设计与建模》

⑵ asp反编译出乱码都会有什么原因

网页出现乱码主要是因为几个地方声明的网页编码不一致引起的。
.
涉及网页编码有几个地方:
1、页面开头的 CODEPAGE
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
2、meta标签
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
3、文件保存时使用的编码
.
下面以常用的两种编码 gb2312 和 utf8 进行说明:
CODEPAGE中的编码:
utf8编码
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
gb2312编码
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
meta标签中的编码:
utf8编码
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
gb2312编码
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
文件保存时使用的编码:
用记事本打开文件,选择“文件 - 另存为”,在对话框中选择编码,如图:
utf8编码:请选择UTF8
gb2312编码:请选择ANSI

除了上面三个地方要使用统一编码外,还有一点需要注意:
中文一定要出现在meta编码声明之后
来源http://www.33dir.com/z/2016/02/24/222.html

⑶ VCS编译命令

等license

使能verilog2000的标准

统一所有的timescale

-f采用绝对路径;-F与-f类似,也可以采用绝对路径,同时也支持相对路径,但不允许嵌套使用。
VCS用-F解析filelist时,不允许文件嵌套使用,不支持`include “xxx.v”这种写法,改为-f便ok了。

`include "xxx.sv"
要用+incdir把xxx.sv的路径指明。

编译完成后,自动执行当前编译生成的可执行文件

初始化RTL中所有mem的所有bit初始值

初始化RTL中所有reg的所有bit初始值

-的一般是编译时用的,编译工具自带的。
+的是插件,环境,验证语言,等等加的,可扩展的,自定义的。

+libext+.v
-y XXX/memory/all/work/verilog 定义verilog的库
-f rtl_top.f
-f env.f

testbench的顶层mole名字是top, 收集top下的例化的rtl顶层模块的下面所有层的覆盖率

如果用到了dw的东西
一般加上选项
-y $DC_HOME/dw/sim_ver +incdir+$DC_HOME/dw/sim_ver +libext+.v

⑷ SystemVerilog $unit 编译单元介绍

SV中增加了编译单元的概念,就是 SV源文件编译的时候,一起编译的所有源文件

编译单元域在搜索顺序中排第三位

举个栗子

这里我们创建了两个包(a_dpk和b_dpk),两个包中的都只有一个打印函数,同时mole中也有一个打印函数,(打印函数用于指示所在位置)

打印结果如下:

image-20211216201944989

运行结果如下:

可以看到此时打印的是在mole中导入的包

那么接下来我们把在mole中导入的包注释掉,即把 import a_dpk::*; 注释掉

下面运行结果:

此时终于把导入$unit编译单元域的内容打印出来了

这也就是为什么 编译单元域在搜索规则中排第三

那么为什么编译单元域叫 $unit 呢?我们可以再把代码更改一下

我们把 b_dpk 注释掉,但依旧将其导入,看看运行结果

这里直接显示错误在 $unit ,或许$unit只是一个名称,就好像上例中mole命名为 test_tb 一样

格式为:

这是C语言中常用的技巧,如果第一次遇到导入语句将其编译到$unit中,再次出现则不会编译

下面我们将上篇笔记中的包用这种方式仿真一下,先给出上篇笔记中包的内容

我们将文件名命名为 definitions.dpk ,其中后缀 .dpk 是随便起的

下面是源码和测试文件

运行结果如下

本文主要参考

⑸ 如何对web.config进行加密和解密

在WEB网站开发过程中,如果我们将数据库连接字符串封装到.DLL文件中,将会给数据库和程序的迁移带来麻烦,因为万一服务器地址
者数据库发生变更,那么我们就不得不修改源程序并重新将其编译。更好的解决方法是将数据库连接字符串写入到web.config配置文件中,可问题是将连
接字符串写入到web.config文件中之后,任何人都能打开看到所连接的数据库名和密码,又会带来安全隐患,因此为了保证数据库的安全性,我们可以通
过使用微软IDE自带的命令aspnet_regiis.exe将配置文件web.config中指定的标签进行加密,如果以后想查看加密后的连接字符
串,我们还可以使用aspnet_regiis.exe将加密后的字符串进行解密。

1. 加密通用语法
加密一个特定网站的web.config文件的通用形式
aspnet_regiis.exe -pef secion physical_directory -prov provider

aspnet_regiis.exe -pe secion -app virtual_directory -prov provider
其中,各个参数的含义如下:

section表示要加密的配置节

physical_directory用于指定站点的物理路径。

virtual_directory用户指定虚拟路径。

provider指定加密提供程序。

加密一个特定站点的连接字符串就是:
aspnet_regiis.exe -pef "connectionStrings" "你的web项目路径" -prov ""
其中是Windows数据保护API(DPAPI)提供程序,它使用Windows内置的密码学技术来加解密配置节。默认情况下,这个提供程序使用本机的密钥。

2. 加密方法

运行Visual Studio 2008命令提示

加密后的结果

<connectionStrings configProtectionProvider="">
<EncryptedData>
<CipherData> <CipherValue>AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAAy1WyvzomB0WAlqYo++bAce//lsg/so66+//LD9H9WQ9uF3t/0MoMI9tbrWdFJ1Yu5/e3PAV4RCbCvDlPD0VC7hxtDMqfRjQ+1OhTdk2woiSNpx0TzXwZE25o4vlXq/+lZtAj8lzf2bK+/L0+6bizStRZ7BDnOngV//CVDQ==</CipherValue>
</CipherData>
</EncryptedData>
lt;/connectionStrings>

3. 解密
解密该连接字符串也很简单
aspnet_regiis.exe -pdf "connectionStrings" '你的web项目路径"

解密后的结果:

<connectionStrings>
<add name="Sql" connectionString="Data Source=.;Initial Catalog=MySchool;Integrated Security=True" />
</connectionStrings>

4. 后台代码读取配置文件web.config中数据库连接字符串的方法:

using System.Configuation;

protected void Page_Load(object sender, EventArgs e)
{
lblMessage.Text = ConfigurationManager.ConnectionStrings["Sql"].ToString();
}


5. 在连接字符串的加密和解密的过程中,需要注意一下几点。

使用加密的连接字符串

使用加密的连接字符串不需要编码解密,ASP.NET会自动对加密内容进行解密。

加密和解密在同一台计算机上使用

在加密过程中,使用了一个基于本机的密钥。这就意味着加密和解密必须在同一台计算机上进行,否则将不能解密。同时,在一台计算机上加密的配置,在另一台计算机上将不能正常使用。

中文路径问题
该命令对中文支持不是很好。如果站点的路径中有中文字符,也许不能正常加解密。

⑹ asp文件被加密了, 谁知道怎么解密

请参阅
ASP程序加密解密方法全面解析
http://wenku..com/link?url=WP0OGrtMg8Osfz_iLtu_d-_

阅读全文

与编译sv加密相关的资料

热点内容
堵车如何缓解压力 浏览:15
喜鹊快贷app怎么了 浏览:263
海龟编辑器积木编程怎么安装 浏览:185
程序员理发店生意怎么样 浏览:603
程序员罗技 浏览:180
软考初级程序员课程2021下载 浏览:491
杭州程序员奶奶 浏览:880
不听命令造成错误 浏览:981
kool系统源码 浏览:610
流氓app在哪里看 浏览:98
域名购买了怎么指向服务器 浏览:121
安卓手机如何让照片颜色反转 浏览:859
怎么下载卓睿安手机版 浏览:514
h3crange命令 浏览:468
php前景和python 浏览:338
php压缩图片内存大小 浏览:495
在哪里可以查看云服务器的信息 浏览:70
python读取非txt文件 浏览:799
艾莫迅用什么编程软件好 浏览:227
android文件存储读取 浏览:214