最近在交流群中经常看到小伙伴们在找各种软件下载包,作为一名工程师,软件工具是搭建工作环境的必备资源,本篇分享个人所在用的一些软件安装包,希望能在信息零散的网络大海中稍微给你一个相对靠谱的、齐全的渠道。
大家好,又见面了,我是你们的朋友全栈君。 验证方法学主要有vmm和ovm两种。 摘录一些言论,供参考: 个人感觉Synopsys 的口碑好一些,Cadence 的FAE 比较能忽悠,但有时候不是很能解决问题。偶绝对不是Synopsys 的托了; synopsys的VMM更成熟; 前端设计还是喜欢synopsys多一点; VMM的用户可能多一些,特别在国内(个人感受),不过Synopsys的东西,质量上不如Cadence,技术支持上也许更贴近用户一些; 本质都差不多,看你怎么用.但OVM是Cadence和Mentor都support的.这个比较好. 从适用性来说,还是OVM强.从功能上来说,由于OVM兼具e language的一些特性,比如factory/sequence,这个比VMM要好.至于FAE的支持,这个是利益驱动的.如果你们公司是global的,软件也是在国外买的,那国内的EDA公司来support你,对于local的EDA公司,他没有如何利益,当然support就一般了. 自学自用,推荐OVM,因为论坛的支持好,VMM没有正版,基本上没有什么支持。 我已经在我得项目里面从类VMM转为 OVM 了,从验证分层来看.两种方法学本质差不多,在 OVM 里面,我觉得最爽的地方是sequence/sequencer/virtual sequencer,这几个东西是VMM没有的 只是两个死对头synopsys和cadence分别搞的两套系统验证库而已,差别不大 VMM: 1 架构简单,容易学习及掌握 2 验证实现也比较容易,容易使用 3 工具非常稳定,出现问题的概率不大 OVM : 1 架构灵活,显得有点复杂(比较建议从VMM入手,对 OVM 的理解会更加快速) 2 验证实现也比较容易,使用者需要掌握一定的 OVM 知识才能做相应小修改,这一点VMM不一样,VMM的使用都只要知道constraint怎么下就好 3 IRUN工具不是很稳定,出现问题的概率较大,我使用过程中发现不少问题,不过最后都直接反应给cadence AE,得到解决(现在已经稳定很多) 4 OVM 以agent为基础的建立方式,方便实现reuse性,这一点VMM做不到(VMM只要DUT小改driver和packet必改), OVM agent是基于某种protocol建立的,protocol不改,agent就不需要修改,这样就可以达到非常强大的reuse性 5 VMM 没有sequence(正在开发), OVM 的virtual sequence可以造出各agent工作的任意组合,并行,串行,等等,不修改任何原来的code,只需要加一个virtual sequence即可。VMM做不到,VMM想做这个只能改driver和packet 只说了一些技术上的东西,还有VMM是要钱的, OVM 是免费的! VMM和OVM都是基于SV的硬件验证的方法学,也是当今验证方法的两个趋势。 从本质上来讲,VMM和OVM的方法学是一致的,目的都是实现可重用性(reusable)以提高验证的效率。 VMM是由ARM和Synopsys提出的,OVM则是由Mentor和Candence共同提出的。因此使用Synopsys VCS进行仿真也就选择了VMM的验证方法,支持OVM的仿真工具自然就是Mentor和Candence的工具了。 使用OVM最大的好处就是完全open的,使用OVM将不受Mentor和Candence的任何限制;至于VMM,之前是收费的,现在网上有人说是免费的(VMM 顶不住压力,也开源了,嘎嘎),但是我还没有找到官方的说明,不清楚现在的状况,知情的人麻烦透漏一下。 VMM和OVM都是基于SystemVerilog(SV)的验证方法,而SV相对于传统的HDL语言来说,其最大的好处就是引入了OOP(Object Oriented Programming),OOP的概念基本上是可以跟{封装(Encapsulation)+继承(Inheritance)+多态(Polymorphism)}相等同的,至于封装、继承和多态,如果学过C++的人自然会明白。引入了OOP之后,SV便可以在更高的抽象层次进行仿真和验证。 由于引入了OOP,基于SV的验证方法学也就自然而然的出来了,就像是如今有很多的C++库一样,SV也需要相应的库才能够实现其面向对象的高效性,开发人员只需要在SV的标准库上进行开发就可以了,这样就避免了重复的二次开发,提高了验证的效率和灵活性。
在我们刚开始学习FPGA的时候,我们一般都是将编译后生成的.sof文件(针对于Altera器件)通过JTAG方式下载到FPGA内部,但是我们会发现,给FPGA重新上电之后,我们之前给它下载的程序已经丢失了,如果我们还想让FPGA跑上次的功能就必须再下载一次程序。出现这个问题,是因为我们的程序并没有存到FPGA外接的配置芯片中,只是存在FPGA内部的SRAM。
大侠好,欢迎来到FPGA技术江湖,江湖偌大,相见即是缘分。大侠可以关注FPGA技术江湖,在“闯荡江湖”、"行侠仗义"栏里获取其他感兴趣的资源,或者一起煮酒言欢。
今天给大侠带来基于FPGA数字时钟的设计,附源码,获取源码,请在“FPGA技术江湖”公众号内回复“基于FPGA数字时钟的设计源码”,可获取源码文件。话不多说,上货。
在一些应用中,有些特定的信号我们需要保留,用于进行采集检测,而综合器会自动优化把它综合掉,那么,应该怎样告诉综合器,不让它优化掉我们需要保留的信号呢?
此产品族,非常适合应用于超低功耗的安全边缘应用(secure edge AI application),包括音频,语音和机器学习(audio, voice and machine learning)。
今天给大侠汇总一下PCI-Express transaction Layer specification(处理层协议)学习经验分享,本次PCIE TLP 学习经验分享分为三篇。为了方便各位大侠浏览,下面列出三篇分享的大概内容目录介绍以及三篇文章的超链接:
本系列为FPGA系统性学习学员学习笔记整理分享,如有学习或者购买开发板意向,可加交流群联系群主。
今天给大侠带来硬件设计中教你如何正确的约束时钟—Vivado优化到关键路径,话不多说,上货。
今天和大侠简单聊聊使用LativeLink时,DO文件编制步骤,话不多说,上货。
今天给大侠带来的是一周掌握 FPGA VHDL Day 5,今天开启第五天,带来常用电路的VHDL程序。下面咱们废话就不多说了,一起来看看吧。每日十分钟,坚持下去,量变成质变。
在Vivado调用fir滤波器时,我们会遇到需要填充滤波器抽头系数的问题,手工计算又不现实,所以在此向大家介绍一个生成系数的工具。
今天给大侠带来FPGA设计中Zynq学习笔记,做硬件的第一个实例,一般当然是LED点灯啦,话不多说,上货。
请说明 IC 前端整合(RTL To Netlist)所包含的流程,并简要说明一下 Synthesis 的主要任务,以及 Synthesis 的输入和输出。
该系列前面的20篇文章,主要以开发环境的搭建、常见外设模块的简单使用为主,从这篇开始计划写一下关于应用编程的话题,之所以要写这一块内容,是因为只要你做产品,就离不开应用程序,自然就需要应用编程相关的技术。有小伙伴咨询过我做Linux应用开发需要会哪些知识,先给大家看看猎聘网上最近两个关于嵌入式Linux工程师的招聘需求:
欢迎大侠来到FPGA技术江湖新栏目今日说“法”,当然,在这里我们肯定不是去研究讨论法律法规知识,那我们讨论什么呢,在这里我们讨论的是产品研发以及技术学习时一些小细节小方法等,欢迎大家一起学习交流,有好的灵感以及文章随笔,欢迎投稿,投稿请标明笔名以及相关文章,投稿接收邮箱:1033788863@qq.com。今天带来的是paramter 、localparam的小“秘密”,话不多说,上货。
大侠好,最近本媛比较忙,没有时间更新。时间太长,怕大家忘了我,今天我来了,今天由“82年的程序媛”本媛给大侠带来基于FIR滤波器的带限白噪声的设计,后续本媛还会继续更新产品项目开发心得,学习心得等,欢迎大家持续关注,话不多说,上货。
真实的温度测试数据,通过加热棒加热一盆水测得的真实数据,X轴是时间秒,Y轴是温度。
今天给大侠带来在FPGA设计应用中如何在ModelSim中添加Xilinx仿真库,话不多说,上货。
通过一定的算法对事先选定的随机种子(seed)做一定的运算可以得到一组人工生成的周期序列,在这组序列中以相同的概率选取其中一个数字,该数字称作伪随机数,由于所选数字并不具有完全的随机性,但是从实用的角度而言,其随机程度已足够了。
大侠好,许久不见,近期由于疫情以及其他各种原因更新较慢,望各位大侠海涵。今天“宁夏李治廷”给各位大侠带来基于FPGA VHDL 的 FSK调制与解调,源码各位大侠可以在“FPGA技术江湖”知识星球内获取,如何加入知识星球可以查看如下文章欢迎加入FPGA专业技术交流群、知识星球!(交流群QQ、微信双向选择)。
领取专属 10元无门槛券
手把手带您无忧上云