- 博客(27)
- 资源 (1)
- 收藏
- 关注
原创 System Verilog学习笔记(二十)——TCL基础
它提供了通用的编程能力:支持变量、过程和控制结构;同时TCL还拥有功能强大的固有的核心命令集由于TCL的解释器是用C/C++语言的过程库实现的,因此可以把TCL看作一个C库,包含用于扩展TCL命令的C/C++过程和函数,每个应用程序都可以根据自己的需要对TCL语言进行扩展扩展后的TCL语言将可以继承TCL核心部分的功能,包括核心命令、控制结构、数据类型、对过程的支持等;TCL良好的可扩展性使其能够很好地适应产品测试的需要。
2024-03-10 17:11:51
1540
原创 System Verilog学习笔记(十九)——覆盖率
覆盖率是用来衡量验证精度和完备性的数据指标。也可以告诉我们在仿真时设计的哪些结构被触发,哪些没被触发。高质量的验证需要满足以下三个条件。
2024-03-10 11:10:07
1842
原创 System Verilog学习笔记(十八)——线程控制
发生器把激励传给代理时,环境类需要知道发生器什么时候完成任务,以便及时终止测试平台中还在运行的线程,这个过程就需要借助线程间的通信来完成。常用的线程间通信有事件控制、wait语句、SV信箱和旗语等。Verilog对语句有两种分组方式,begin…and或者fork…join。前者是顺序方式执行,而后者是以并发方式执行的。
2024-03-07 21:10:28
613
原创 System Verilog学习笔记(十七)——随机约束(2)
在约束块中可以调用函数来描述约束:用来指定变量的默认值和权重。如果用户在使用时,指定了外部约束对同一个变量做二次约束,或者用户定义了子类,也对同一个变量做二次约束时,那么硬约束可以“裹着”软约束,并不会导致随机数产生的失败。
2024-03-06 15:18:16
660
原创 System Verilog学习笔记(十六)——随机约束(1)
随机约束测试(CRT,constraine-random Test)即能够产生感兴趣的、想不到的测试向量,通过回归测试、替换随机种子的方式来提高单位测试用例的覆盖率收集效率。
2024-03-05 15:24:05
510
原创 System Verilog学习笔记(十五)——包的使用
为了使得可以在多个模块或者类之间共享用户定义类型,SV添加了包(package)。用户自定义的类型例如类、方法、变量、结构体、枚举类型等都可以在package…endpackage中定义。
2024-03-02 16:54:55
488
原创 System Verilog学习笔记(十三)——面向对象编程(1)
new( )函数又称构造函数,既能分配内存,创建对象,又能初始化变量。默认情况下,将变量设置成默认数值——二值变量为0,四值变量为X。new函数不能有返回值,因为构造函数总是返回一个指向类对象的句柄,其类型就是类本身。
2024-03-02 11:03:33
651
原创 System Verilog学习笔记(十二)——数组(2)
队列结合了数组和链表,可以在队列的任何位置添加或者删除数据成员,可以通过索引来访问队列的任何一个成员。
2024-02-29 15:47:55
1199
原创 System Verilog学习笔记(十)——任务和函数
函数(function)和任务(task)可以提高代码的复用性和整洁度。他们的目的在于将大型的过程块切分为更小的片段,而便于阅读和代码维护。
2024-02-26 22:58:50
759
原创 System Verilog学习笔记(九)——验证环境结构
是整个验证系统的总称。它包含验证结构中的各个、组件之间的、测试平台的。而且也包含编译仿真的流程、结果分析报告和覆盖率检查等。
2024-02-26 21:56:25
744
原创 System Verilog学习笔记(八)——采样和数据驱动
为了避免在RTL仿真行为中发生的信号竞争问题,可以通过非阻塞赋值或者特定信号延迟来解决同步的问题。默认情况下,时钟对于组合电路的驱动会添加一个无限小时间()的延迟,而该延迟无法用绝对时间单位衡量,。在仿真器敲入命令“run 0”,是指让仿真器运行一个delta-cycle的时间。
2024-02-25 22:30:29
927
原创 System Verilog学习笔记(六)——SV设计特性
priority case表示至少有一个case选项满足要求;如果有多个case选项满足时,第一个满足的分支会优先执行;priority case的逻辑与if…SV提供了unique和priority的声明,结合case,casex和casez来实现case对应的硬件电路。SV可以通过’0,'1,'z,'x来分别填充0,1,z和x。unique case要求每次case选择必须只能满足一条case选项;unique case不能有重叠的选项,即多个满足条件的选项。unique case可以并行执行。
2024-02-18 22:03:09
587
原创 System Verilog学习笔记(五)——工具篇
System Verilog是编译型语言,需要使用专门的编译器,针对特定的平台,将源代码一次性编译成平台可执行的代码,并包装成平台能识别的可执行程序(simv)的格式。
2024-02-17 23:08:16
969
原创 System Verilog学习笔记(四)——Linux 操作指令
当前目录下的文件列表,-a表示显示所有的文件;文件颜色区分,用蓝色代表目录,绿色代表可执行文件,红色代表压缩文件,浅蓝色代表链接文件,灰色代表其他文件。:打开目录,cd /etc表示进入/etc目录,在Linux中,“.”表示当前目录,“…”代表父目录,“~”表示用户的个人主目录。:复制目录或者文件,-f:如果目标文件或目录存在,先删除他们再拷贝,并不提示用户。:删除目录或文件,-f:删除文件或目录时不提示用户。:以树的形式显示指定目录下的内容,不带任何参数。:显示当前工作目录的路径,不带任何参数。
2024-02-17 12:21:18
473
原创 System Verilog学习笔记(三)——字符串类型
SV引入了string类型用来容纳的字符串。字符串类型变量的存储单元为,当变量长度为N,其字符成员索引值为。不同于C函数,字符串结尾没有空字符,即null字符“\0”。字符串的内存是动态分布的,无需担心内存空间管理。
2024-02-15 10:59:22
1110
原创 System Verilog学习笔记(二)——自定义类型
*来创建结构体类型。为了使代码易读和维护,加“_t”的后缀表示是自定义类型。//表示枚举类型RGB可以拥有red、green、blue的三个数值。
2024-02-14 22:02:03
417
原创 FPGA的开发流程
功能定义/器件选型在进行FPGA设计开发之前,需要对方案进行论证、系统设计以及选取芯片,在确定好评估方案之后需要进行系统功能的定义和模块的划分。根据方案中的要求选择出合适的器件类型。在设计方法上,一般采用自顶向下的设计方法,先将系统分成若干个基本模块,然后再将基本模块划分为下一层次的基本单元,这样依次划分后确定好各个模块的功能以及各个模块需要设计的输入输出信号,再通过 EDA 工具进行各个模块的设计。最终要实现的目标是:针对每个输入信号,利用 EDA 工具以及 FPGA 的资源设计出需要的输出信号逻辑。
2022-04-26 18:49:31
116
原创 FPGA入门
FPGA是什么?Field-Programmable Gate Array 即现场可编程门阵列,它既解决了ASIC的不足,又克服了原有可编程器件门电路有限的缺点。集成了大量的原始逻辑资源(触发器、查找表LUT和布线),并提供了可配置的I/O口及硬IP(Block RAM、PLL、DSP、通用接口等)依赖工程师采用HDL(Hardware Description Language,硬件描述语言)进行编码,各个逻辑并行工作实现指定功能,它是基于硬件描述的芯片。FPGA编程是什么?FPGA是硬件编程,要理解
2022-04-26 17:18:36
1195
原创 模电——半导体二极管
半导体二极管半导体二极管的伏安特性半导体二极管的核心是一个PN结,其伏安特性与PN结伏安特性基本相同。正向特性只有当正向电压大于一定数值后,才有明显的正向电流。使正向电流从零开始明显增长的外加电压叫做开启电压或者阈值电压,室温下,硅二极管的开启电压约为0.5V,锗二极管的开启电压约为0.2V。当正向电压大于开启电压之后,正向电流按指数规律增大,二极管呈现充分导通状态。硅二极管的正向导通压降为0.6-0.8V,锗二极管的正向导通压降为0.1-0.3V。在外加正向电压相同的情况下,二极管的正向电流
2021-04-13 16:21:27
3798
原创 模电——PN结及其特性2
PN结特性PN结的单向导电性PN结加正向电压外加电源的正极接到PN结的P端,负极接到PN结的N端。此时外加电场和内电场方向相反,使得扩散作用加强,漂移运动减弱,扩散电流大于漂移电流,PN结内的电流主要由扩散电流决定(正向电流),空间电荷区数目减少,空间电荷区变窄,内电场减弱。正偏的PN结表现为一个很小的电阻。PN结外加反向电压外加电源的正极接到PN结的N端,负极接到PN结的P端。此时外加电场和内电场方向相同,扩散作用减弱,漂移运动加强,扩散电流低于漂移电流,PN结内的电流主要由少子的漂移
2021-04-13 15:12:43
10791
原创 模电——PN结及其特性1
PN结PN结的形成如果在本征半导体上,通过一定的工艺使其一边形成N型半导体,另一边形成P型半导体,那么在N型区和P型区的交界处会形成一个极薄的空间电荷层,称为PN结。扩散运动建立了空间电荷区和内电场浓度差-----扩散运动-----扩散电流P区的多子空穴向N区扩散,与N区的电子复合,在P区一侧留下不能移动的负离子薄层;N区的多子自由电子向P区扩散,与P区的空穴复合,在N区一侧留下不能移动的正离子薄层;交界面两侧不能移动的薄层称为空间电荷区。扩散作用越强,空间电荷区越宽,内电场增强,方向由N区指向
2021-04-12 22:19:39
3566
原创 模电——半导体基础知识
半导体基础知识物质按照其导电能力可以分为导体、半导体和绝缘体三种类型,导电能力介于导体和绝缘体之间的物质叫做半导体。本征半导体:高度提纯、结构完整的半导体单晶体叫做本征半导体。常用的半导体材料是硅(Si)和锗(Ge)。//均为四价元素,在组成本征半导体时,硅(锗)原子按一定规律整齐排列,组成一定形式的空间点阵。每个硅(锗)原子最外层的4个价电子与相邻的4个硅(锗)原子的各一个价电子形成4对共价键结构。共价键中的电子受两个原子核引力的束缚,使得每个硅(锗)的最外层形成拥有8个共有电子的稳定结构。本征半
2021-04-12 18:16:22
5711
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人