草庐IT

verilog仿真

全部标签

电感的参数化建模仿真与验证

目录序言PoC电路设计参数化建模方法测试环境仿真环境结论序言        在之前的分享中,讨论了如何利用网络分析仪(以下简称“网分”)的并联-直通法完成电源系统的PDN测量(文章链接:电源完整性的PDN测试与仿真_一只豌豆象的博客-CSDN博客),其中,也提到过反射法的典型应用是测试铁氧体磁珠的阻抗曲线,在实际产品设计中,确实也大量存在这样的测试需求,举例来说,用过车载相机的工程师对SerDes电路上的PoC网络肯定不会陌生,对于该网络的一个重要评估方式就是阻抗曲线的测量,因为对于该网络的阻抗设计要求往往介于1000~3000欧姆之间,如下图所示,大致处于紫色五角星所在的区域,因此,尚可以用

Verilog之串并转换

1.串行转并行1.1利用移位寄存器采用位移拼接技术,当使能信号发出时,进行移位输出(注意低位和高位先赋值表达方式不同);当使能信号无时,后续数据不发出。moduleserial_parallel(inputclk,inputrst_n,en,inputdata_i,//一位输入outputreg[7:0]data_o //8位并行输出);always@(posedgeclkornegedgerst_n)begin if(!rst_n) data_o1.2利用计数器利用计数器,每过一个周期移动一位,数据输出一位;​moduleserial_parallel(inputclk,inputrst_

使用74HC595完成16*16led矩阵广告牌(51单片机软件仿真)

74HC595简介(个人理解)与模块代码SHCP是写入595芯片数据的配置STCP是发送595芯片内信息的配置DS是数据配置的区域595芯片有9个输出引脚,最后一个是供给下一块串联的595使用的,下一块串联的595stcp和shcp与上一块连接的引脚一致,下一块的DS与上一块的第9个引脚相连。实现了3位引脚当8位使用的功能,节省引脚。595串联的数据流动规则:倘若堆了16位数据进来,前八位会被推送到第二块串联的595芯片之中,后八位放在第一块595芯片内通用配置:定义引脚sbitDS=P2^1; sbitshcp=P2^0;sbitstcp=P2^2;写数值unsignedchari;for

Verilog HDL

一,原理(1)QuartusAlteraQuartusII作为一种可编程逻辑的设计环境,由于其强大的设计能力和直观易用的接口,受到数字系统设计者的欢迎, AlteraQuartusII设计软件是业界唯一提供FPGA和固定功能HardCopy器件统一设计流程的设计工具。(2)ModelSim ModelSim是业界最优秀的HDL语言仿真软件,它能提供友好的仿真环境,是业界唯一的单内核支持VHDL和Verilog混合仿真的仿真器。它采用直接优化的编译技术、Tcl/Tk技术、和单一内核仿真技术,编译仿真速度快,编译的代码与平台无关,便于保护IP核,个性化的图形界面和用户接口,为用户加快调错提供强有力

Verilog基础:避免混合使用阻塞和非阻塞赋值

相关阅读Verilog基础https://blog.csdn.net/weixin_45791458/category_12263729.html?spm=1001.2014.3001.5482    “避免在一个always块中混杂阻塞赋值和非阻塞赋值”,这条原则是著名的Verilog专家CliffCummings在论文SUNG2000中提出的,这个观点在公众讨论时受到了广泛的质疑。有人认为可以在时钟沿触发的always块里把组合逻辑的阻塞赋值和时序逻辑的非阻塞逻辑安全地混杂在一起。诚然,但是这种编码风格有以下几点不足。这种always块的事件调度理解起来比较费劲。这种always块内的非阻

verilog常用系统任务和函数

在FPGA开发中编写仿真测试激励文件(testbench),经常会用到verilog的系统函数,使用系统函数非常方便,本文总结了常用的系统函数,并提供了说明和使用示例。一、文件操作1、打开文件$fopen和关闭文件$fcloseintegerfp;fp=$fopen("file_path/file_name","wb");$fclose(fp);打开文件$fopen函数:第1个参数:文件路径,绝对路径和相对路径均可。第2个参数:定义含义r读操作w写操作a在文件末尾追加rb,wb,ab以二进制的方式读、写、追加,推荐方式返回值:0表示打开文件成功,非0值表示打开文件失败关闭文件$fclose:参

什么是Verilog?

什么是Verilog?        Verilog是一种以代码形式来描述数字系统和电路的硬件描述语言(HDL)。它由GatewayDesignAutomation在20世纪80年代中期开发,后来被CadenceDesignSystems收购。        Verilog广泛用于数字和混合信号系统的设计和验证,包括专用集成电路(ASIC)和现场可编程门阵列(FPGA)。它支持从结构级到行为级的一系列抽象层级,并用于基于仿真的设计和基于综合的设计。        该语言分层次级来描述数字电路,从逻辑门和触发器等最基本的元素开始,到构建更复杂的功能模块和系统。它还支持一系列建模技术,包括门级、R

verilog运算符

运算符和表达式算数运算符算数运算符说明+加-减*乘/除%求模进行整数除法运算时,结果值略去小数部分,只取整数部分;%称为求模(或求余)运算符,要求%两侧均为整型数据;求模运算结果值得符号位取第一个操作数的符号位;进行算数运算时,若操作数位不定值X,则整个结果也为xeg:x+a=x;定义一个a,b都是[1:0]两位的,b是1,c是6a=b+ca=7但是换算成二进制111但是a是两位的二进制,故a为11舍弃了最高位的1关系运算符关系运算符说明小于小于或等于>大于>=大于或等于运算结果值为1位的逻辑值1或0或x关系运算时,若关系为真,则返回值为1若声明的关系为假,则返回值为0若操作数为不定值x,则返

【HDLbits刷题笔记 】02-verilog语法-向量部分

vectors向量用于使用一个名称对相关信号进行分组,以使其更易于操作。例如,wire[7:0]w;声明一个名为w的8位向量,该向量在功能上等效于具有8个单独的导线。请注意,向量的声明将维度放在向量名称之前,这与C语法相比是不寻常的。但是,正如您所期望的那样,零件选择在矢量名称之后具有尺寸。wire[99:0]my_vector;//Declarea100-elementvectorassignout=my_vector[10];//Part-selectonebitoutofthevector构建一个具有一个3位输入的电路,然后输出相同的矢量,并将其分成三个独立的1位输出。将输出连接到输入向

FPGA——verilog实现格雷码与二进制的转换

文章目录一、格雷码简介二、二进制转格雷码三、格雷码转二进制四、仿真一、格雷码简介格雷码是一种循环二进制码或者叫作反射二进制码。跨时钟域会产生亚稳态问题(CDC问题):从时钟域A过来的信号难以满足时钟域B中触发器的建立时间和保持时间,输入与clk的变化不同步而导致了亚稳态。此时触发器输出端Q在有效时钟沿之后比较长的一段时间处于不确定的状态,在这段时间里Q端在0和1之间处于振荡状态,而不是等于数据输入端D的值。而格雷码的每次变化位数只有一位,因此使用格雷码可以有效避免这种情况。所以格雷码常用于通信,FIFO或者RAM地址寻址计数器中。下面是典型的格雷码与二进制的转换:二、二进制转格雷码二进制转格雷