摘要:在SelecTIO简介连载一中介绍了其架构,本章会继续介绍如何使用其gearbox功能来实现不同的比率的串并转换功能。 7 Series FPGA中LVDS使用了ISERDESE2,SDR Rate可设为2,3,4,5,6,7,8。DDR Rate可设为4,6,8,10,14。 从UG471的Bit
阅读全文
摘要:米联客FEP扩展接口标准简介 FEP(fast expantion port)高速扩展接口为米联客自定义的用于开发板子卡类扩展用的接口定义,本接口定义具备成本低廉,性价比高的特点,支持普通的GPIO传输,LVDS传输,支持高速GTP/GTX信号传输,每组FEP最大支持48个GPIO,因此对于FEPX
阅读全文
摘要:高清晰度多媒体界面(英语:High Definition Multimedia Interface,简称HDMI) Pin Pin定义 1 Hot Plug Detect 2 Utility 3 TMDS Data2+ 4 TMDS Data2 Shield 5 TMDS Data2- 6 TMDS
阅读全文
摘要:定义 SDI,即Serial digital interface(串行数字接口)的缩写,作为一种数字视频接口标准,由美国的SMPTE于1989年提出。这一标准用于传输未压缩,未加密的数字分量视频信号(也可包含音频和时间码)。 根据支持传输的分辨率,传输数率,帧速率,立体(3D)视频和色深等不同,SD
阅读全文
摘要:文章目录 前言 一、HDMI接口引脚及类型 二、TMDS信号特性 1.TMDS传输原理 2.TMDS传输组成 三、TMDS信号PCB设计 四、总结 前言 HDMI:高清多媒体接口(High Definition Multimedia Interface)是一种全数字化视频和声音发送接口,可以发送未压
阅读全文
摘要:文章目录 一、断言简介 1.1.断言分类——立即断言/并发断言 1.2.断言的语法结构层次 二、并发断言序列sequence 2.1. 关键字(sequence、property)与操作符( |=>、|->) 2.2. sequence的重复操作符——连续[*n]、非连续[=n]、跟随[->n] 2
阅读全文
摘要:资料来源: (1)sv绿皮书; (2)公众号-芯片学堂; (3)硅芯思见:【113】SystemVerilog中不同句柄之间的动态类型转换 (qq.com) 1. 隐式转换 (1)隐式和显示类型转换的区分通常在于有没有使用到系统函数或者操作符。 (2)隐式类型转换在SystemVerilog编程中经
阅读全文
摘要:数字IC秋招面试专题(二)verilog的signed和unsigned 前言 一、右值按signed还是unsigned 二、signed的自动扩位 三、系统函数$signed 和 $unsigned 总结 前言 如果用verilog做一些数据处理的话,一定会经常用到signed和unsigned
阅读全文
摘要:例子: unsigned' 和 $unsigned : //都是最高位补零,等式左值 byte signed_vec = 8'b1000_0000;bit [8:0] result_vec;logic [7:0] logic_vec = 8'b1000_0000;bit [7:0] bit_vec
阅读全文
摘要:一直以来,关于在overflow和underflow这方面,自己都没有怎么去关注。最近看了CSAPP,然后又在这方面吃了几次亏,比如使用C++中的vector,vector.size() 返回的就是unsigned。所以,在使用这方面时,要比较注意。总结如下:对于unsigned和signed进行比
阅读全文
摘要:结构说明语句 Verilog语言中的任何过程模块都从属于以下四种结构的说明语句。 1) initial说明语句 2) always说明语句 3) task说明语句 4) function说明语句 initial和always说明语句在仿真的一开始即开始执行。initial语句只执行一次。相反,alw
阅读全文
摘要:Verilog HDL语句包括过程语句、块语句、赋值语句、条件语句、循环语句、编译导向语句等。 类别 语句 赋值语句 持续赋值语句:assign 过程赋值:=,<= 块语句 串行块:begun-end 并行块:fork-join 过程语句 initial always 条件语句 if-else ca
阅读全文
摘要:verilog行为级描述与结构级描述 1、在使用verilog描述电路时,既可以进行行为级的描述,也可以进行结构级的描述。 (1)行为级描述:侧重对模块行为功能的抽象描述。 (2)结构级描述:侧重对模块内部结构实现的具体描述。 2.行为级描述 (1)描述体的组成 *电多个并行运行的过程块组成。 *过
阅读全文
摘要:一个完整的VHDL程序,或者说设计实体,通常要求最低能为VHDL综合器所支持,并能作为一个独立的设计单元,即元件的形式而存在的VHDL程序。在VHDL程序中,通常包含 实体(ENTITY)、结构体(ARCHITECTURE)、配置(CONFIGURATION)、包集合(PACKAGE)和库(LIBR
阅读全文
摘要:线程的控制与同步 1. 线程的使用 1.1. 什么是线程 ? 1.2. 线程的概念澄清 2. 线程的控制 2.1. fork并行线程语句块 2.2. 等待所有衍生线程 2.3. 停止单个线程 2.4. 停止多个线程 2.5. 停止被多次调用的任务 3. 线程间的通信 3.1. 概述 3.2. eve
阅读全文
摘要:线程间同步和通信,event semaphore mailbox 1. 概述 2. 事件event 3. wait_order() 4. 旗语(semaphore) 5. semaphore::get(); 6. semaphore::try_get() 7. 信箱mailbox 7.1. 信箱的内
阅读全文
摘要:线程控制 1. 线程控制 1.1. 并行线程 1.2. 一些代码示例 1.2.1. 多个initial并行执行 1.2.2. 单个initial内串行执行 1.2.3. fork...join内并行执行 1.2.4. join_any和join_none 1.2.5. wait fork 1.2.6
阅读全文
摘要:SV学习(8)——随机约束和分布、约束块控制 1. 随即约束和分布 1.1. 为什么需要随机? 1.2. 要随机做什么? 1.3. 声明随机变量的类 1.4. 什么是约束 1.5. 权重分布 1.6. 集合成员和inside运算符 1.7. 条件约束 1.8. 双向约束 2. 约束块控制 2.1.
阅读全文
摘要:1. 包的定义 SV提供了一种在多个module、interface和program中共享parameter、data、type、task、function、class等的方法,即利用package(包)的方法来实现。完整的验证环境会讲不同模块的类定义规整到不同的package中; 讲一簇相关的类组
阅读全文
摘要:SV学习(6)——类的继承、句柄的使用 1. 类的成员访问类型 2. 类的继承 extends 3. 子类索引父类的同名函数 super 4. 成员覆盖 补充一个有趣的代码 5. 句柄的传递 6. 句柄的动态修改 1. 类的成员访问类型 public:如果没有指明访问类型,默认是public,子类和
阅读全文
摘要:SV学习(5)——类和对象、类的成员 1. 类和对象概述 2. 声明类并创建对象 3. 赋值和拷贝,深拷贝浅拷贝 4. 对象的销毁 5. 句柄的使用 6. 静态变量 7. 静态方法 8. 验证为什么需要OOP面向对象 9. 一些差别对比 9.1. Verilog的例化和SV class例化的差别:
阅读全文
摘要:SV学习(4) 1. 数据作用域 2. 数据类型转换 2.1. 静态类型转换 2.2. 动态类型转换 2.3. 流操作符 1. 数据作用域 在一个静态任务、函数或者块内声明的变量默认情况下具有静态的生命周期并具有本地的作用范围。 Verilog允许将函数和任务声明成自动的(automatic),这使
阅读全文
摘要:SV学习(3)——接口interface、modport、时钟块clocking 1. 接口interface 2. modport 3. 时钟块clocking 3.1. 驱动和采用的竞争问题 3.2. clocking待补充.... 链接: interface中的clocking 1. 接口in
阅读全文
摘要:SV学习(2)——过程语句、函数和任务 1. 过程语句 1.1. 硬件过程块 1.2. 赋值语句 1.3. 控制语句 1.3.1. for循环 1.3.2. while循循环 1.3.3. do-while循环 1.3.4. repeat循环 1.3.5. foreach循环 2. 函数和任务 2.
阅读全文
摘要:SV语法(1)——数据类型 1. 内建数据类型 2. 用户自定义 2. 枚举类型 4. 定宽数组 5. 动态数组 6. 关联数组 7. 队列 8. 字符串 8.1. 非组合型数组(unpacked) 8.2. 组合型数组(packed) 1.8.3. 数组初始化 8.4. 数组赋值 8.5. 数组拷
阅读全文
摘要:Interface:SV中新定义的接口方式,用来简化接口连接,使用时注意在module或program之外定义interface,然后通过'include来添加进工程。 interface arb_if(input bit clk); //clk信号,一般单独拿出来 logic [1:0]grant
阅读全文
摘要:相同之处: 1.和module相同,program也可以定义0个或多个输入、输出、双向端口。 2.一个program块内部可以包含0个或多个initial块、generate块、specparam语句、连续赋值语句、并发断言、timeunit声明。 3.在program块中数据类型、数据声明、函数和
阅读全文
摘要:systemverilog中的Program Block与module有些类似,但module是基于硬件思想,Program Block纯粹是为了仿真。如果不熟悉program,可以不用program. The program block serves three basic purposes: »
阅读全文
摘要:进程和线程的区别 最佳答案进程是操作系统资源分配的基本单位,而线程是处理器任务调度和执行的基本单位。还存在资源开销、包含关系、内存分配、影响关系、执行过程等区别。同一进程的线程共享本进程的地址空间和资源,而进程之间的地址空间和资源相互独立。 进程和线程的根本区别是进程是操作系统资源分配的基本单位,而
阅读全文
摘要:文章目录 进程和线程 进程 线程 进程与线程的区别总结 从 JVM 角度说进程和线程之间的关系(重要) 图解进程和线程的关系 程序计数器为什么是私有的? 虚拟机栈和本地方法栈为什么是私有的? 一句话简单了解堆和方法区 多进程和多线程区别 Java中的多线程 进程和线程 进程 一个在内存中运行的应用程
阅读全文
摘要:Gre*_*reg 10 查看IEEE Std1800-2012§3.4和§24program.有关块的完整描述. 在一个简短的,不完整的摘要中,一个program块: 不能包含always过程,primitive实例,module 实例,interface实例(virtual interface和
阅读全文
摘要:设计和测试平台都用module封装后,它们之间可能会出现竞争状态。这个问题的根源在于设计和测试平台的事件混合在同一个时间片内,我们希望存在一种方法可以在时间轴上分开这些事件,就像分开代码那样。那System Verilog如何将测试平台的事件和设计的事件分开调度的呢?在SV中,将测试平台的代码封装在
阅读全文
摘要:转自:https://blog.csdn.net/qq_43464337/article/details/121835094 16.15 Disable iff 解析 默认disable iff可以在生成块或者module,interface,program声明中声明,其在默认disable iff
阅读全文
摘要:本文参考: SystemVerilog静态变量和动态变量_行走的BUG永动机的博客-CSDN博客_systemverilog静态变量和动态变量 systemverilog之Automatic - 腾讯云开发者社区-腾讯云 (tencent.com) https://blog.csdn.net/zha
阅读全文
摘要:关于仿真软件在跑systemverilog的时候,是如果通过将HDL代码分成5个区域来编译,从而实现用软件模拟硬件的运行结果的。 首先是基础概念,systemverilog标准划分了仿真软件的5个跑仿真所要执行的5个区域,说白了就是规定了软件在跑代码的时候要把代码分成5类,放到5个堆栈里面分别跑,这
阅读全文
摘要:本文章目录: 进程与线程的概念 两者的优缺点和对比 多线程的使用–两种创建的方式:Thread 和 Runnable–两种启动的方式:start 和 run–多线程的关闭 多线程信息共享 多线程的管理 锁浅谈 推荐小白入门视频:B站的2019Java多线程精讲【千锋大数据】点击直达https://w
阅读全文
摘要:前言 systemverilog assertion作为systemverilog引入的重要特性,在功能仿真及形式验证中有着重要的作用。相较于Verilog传统的checker,SVA作为声明性的语言,使用简单易于管理;在时序检测,协议监控上有着非常便捷的优势。文章参考《A Practical Gu
阅读全文
摘要:摘要 SystemVerilog断言(SVA)可以直接添加到RTL代码中,也可以通过bindfiles间接添加。实践表明,最好使用bindfiles添加大多数断言。 这篇论文将解释为什么将断言直接添加到RTL代码会带来问题,以及为什么bindfiles解决了很多问题解决了什么问题。 本文还解释了如何
阅读全文
摘要:终于来到了断言了,嘿嘿。 assertion分为两种,立刻和并行,立刻断言其实跟普通的$display没什么不同。重点在并行断言。 (一)首先的概念是concurrent assertion的构成:sequence->property->assert sequence 就是简单的需要判断的语句,se
阅读全文