0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FPGA的综合和约束的关系

OpenFPGA ? 来源:OpenFPGA ? 作者:OpenFPGA ? 2022-07-04 11:01 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

前面已经写了大约10篇左右文章介绍了SV,效果不是特别理想,对于一些常规的概念还是比较好理解的,但是对于一些新的专业术语,翻译的比较拗口还是比较难理解的,这是因为国内还没有针对可综合SystemVerilog系统的介绍,导致标准里的术语翻译不精确,后续可能还是使用英语单词来表示,然后用一些非专业术语去解释,下面简单总结一下这十几篇内容。

最前面几篇文章重点介绍SystemVerilog仿真与综合概念及一些对比,总结如下:

SystemVerilog是硬件设计和验证语言的IEEE行业标准。标准编号为IEEE 1800。SystemVerilog名称将替换旧版Verilog名称。SystemVerilog语言是原始Verilog硬件描述语言的完整超集。SystemVerilog是一种双用途语言,用于描述数字硬件功能以及验证测试台。

f81d83a8-e634-11ec-ba43-dac502259ad0.png

硬件行为可以在几个抽象级别上表示,从非常详细的门级模型到非常抽象的事务级模型。本系列的重点是在寄存器传输级别(RTL)编写SystemVerilog模型。RTL模型表示基于周期的行为,很少或根本没有提及如何在硅中实现功能。

SystemVerilog RTL模型如果编码正确,可以进行仿真和综合,仿真使用用户定义的测试台将激励应用于设计输入,并验证设计功能是否符合预期。仿真对SystemVerilog语言的使用没有任何限制。综合将抽象的RTL功能转换为详细的门级实现。综合编译器限制了可以使用哪些SystemVeriIog语言结构以及如何使用这些结构。Lint checker工具可用于检查RTL模型是否符合综合编译器的限制。

接下来完整的介绍了SV的数据类型:网络和变量类型,总结如下:

研究了SystemVerilog语言中预定义的内置类型和数据类型。重点是对编写RTL模型有用的类型和数据类型,这些RTL模型将以最佳方式进行仿真和综合。

SystemVerilog具有2-state和4-state数据类型。4-state数据类型的四值系统允许建模硬件行为值0、1和Z表示物理硬件。值X用于仿真不关心条件,其中设计工程师不关心物理硬件是否具有0或1值。仿真器还使用X值表示潜在问题,其中仿真无法确定实际逻辑门是否具有0、1或Z。SystemVerilog的2-state类型不应用于仿真硬件行为,因为它们没有X值来表示仿真期间的潜在设计错误。

SystemVerilog网络类型(如wire类型)用于将设计块连接在一起。网络始终使用4-state数据类型,并且当有多个源驱动同一网络时,可以解析最终值。SystemVerilog变量类型用于接收赋值语句左侧的值,并将存储赋值=直到对变量进行另一次赋值。SystemVerilog有几种网络类型和变量数据类型。已经展示了声明网络和变量的语法,并讨论了重要的语义规则。还讨论了在RTL模型中如何正确使用这些不同的网络和变量。

SystemVeriIog允许通过使用参数和localparam常量编写可配置的模型。可以使用参数重写(也称为参数重新定义)为模块的每个实例指定常数的唯一值。

f83e8846-e634-11ec-ba43-dac502259ad0.jpg

优秀的 Verilog/FPGA开源项目介绍(二十二)- SystemVerilog常用可综合IP模块库

谈谈Verilog和SystemVerilog简史,FPGA设计是否需要学习SystemVerilog

SystemVerilog数字系统设计_夏宇闻 PDF

SystemVerilog(一)-RTL和门级建模

数字硬件建模-Verilog篇阶段总结及SystemVerilog篇介绍

SystemVerilog(二)-ASIC和FPGA区别及建模概念

SystemVerilog(三)-仿真

f9c9b71c-e634-11ec-ba43-dac502259ad0.jpg

FPGA的综合和约束的关系

SystemVerilog(五)-文本值

SystemVerilog(六)-变量

fa651176-e634-11ec-ba43-dac502259ad0.jpg

SystemVerilog(七)-网络

fabb82ea-e634-11ec-ba43-dac502259ad0.jpg

数字硬件建模SystemVerilog(八)-端口声明

f81d83a8-e634-11ec-ba43-dac502259ad0.png

现在介绍完前两级的内容,后续将介绍最重要的一章-《用户自定义类型和包》。有什么问题可以后台留言。

原文标题:SystemVerilog-阶段性总结(一)

文章出处:【微信公众号:OpenFPGA】欢迎添加关注!文章转载请注明出处。

审核编辑:彭静
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1646

    文章

    22094

    浏览量

    620576
  • IEEE
    +关注

    关注

    7

    文章

    407

    浏览量

    48490
  • 寄存器
    +关注

    关注

    31

    文章

    5446

    浏览量

    125331
  • 硬件
    +关注

    关注

    11

    文章

    3498

    浏览量

    67743

原文标题:SystemVerilog-阶段性总结(一)

文章出处:【微信号:Open_FPGA,微信公众号:OpenFPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    技术资讯 I 图文详解约束管理器-差分对规则约束

    本文要点你是否经常在Layout设计中抓瞎,拿着板子无从下手,拿着鼠标深夜狂按;DDR等长没做好导致系统不稳定,PCIe没设相位容差造成链路训练失败……这些都是血泪教训,关键时刻需要靠约束管理器救命
    的头像 发表于 08-08 17:01 ?301次阅读
    技术资讯 I 图文详解<b class='flag-5'>约束</b>管理器-差分对规则<b class='flag-5'>约束</b>

    Vivado无法选中开发板的常见原因及解决方法

    对应的器件信息和约束文件(XDC),大大简化工程初始化流程。然而,在某些情况下,我们可能会发现 Vivado 的界面中无法选中目标开发板,导致只能手动选择器件。那么,遇到这种情况该如何处理呢?
    的头像 发表于 07-15 10:19 ?581次阅读
    Vivado无法选中开发板的常见原因及解决方法

    PCB Layout 约束管理,助力优化设计

    本文重点PCBlayout约束管理在设计中的重要性Layout约束有助避免一些设计问题设计中可以使用的不同约束在PCB设计规则和约束管理方面,许多设计师试图采用“一刀切”的方法,认为同
    的头像 发表于 05-16 13:02 ?432次阅读
    PCB Layout <b class='flag-5'>约束</b>管理,助力优化设计

    PanDao:实际约束条件下成像系统的初始结构的生成

    摘要 :初始点的选择对后续设计过程具有重大影响。除透镜规格外,其它必要的实际约束条件也可能起到非常关键的作用。本研究采用“First Time Right”方法生成受约束的初始系统,并运用
    发表于 05-07 08:57

    FPGA时序约束之设置时钟组

    Vivado中时序分析工具默认会分析设计中所有时钟相关的时序路径,除非时序约束中设置了时钟组或false路径。使用set_clock_groups命令可以使时序分析工具不分析时钟组中时钟的时序路径,使用set_false_path约束则会双向忽略时钟间的时序路径
    的头像 发表于 04-23 09:50 ?573次阅读
    <b class='flag-5'>FPGA</b>时序<b class='flag-5'>约束</b>之设置时钟组

    一文详解Vivado时序约束

    Vivado的时序约束是保存在xdc文件中,添加或创建设计的工程源文件后,需要创建xdc文件设置时序约束。时序约束文件可以直接创建或添加已存在的约束文件,创建
    的头像 发表于 03-24 09:44 ?3623次阅读
    一文详解Vivado时序<b class='flag-5'>约束</b>

    【国产FPGA必备教程】——紫光同创FPGA图像视频教程,适用于小眼睛FPGA盘古全系列开发板

    案例、时序约束及收敛方法等,教程内容丰富,从入门到应用提高,覆盖紫光同创FPGA开发全流程,教程适用于小眼睛科技盘古系列、泰坦系列全开发套件。目前,小眼睛科技基于FPGA赛事配套紫光同创FPG
    发表于 02-19 15:44

    xilinx FPGA IOB约束使用以及注意事项

    xilinx FPGA IOB约束使用以及注意事项 一、什么是IOB约束 在xilinx FPGA中,IOB是位于IO附近的寄存器,是FPGA
    的头像 发表于 01-16 11:02 ?1005次阅读
    xilinx <b class='flag-5'>FPGA</b> IOB<b class='flag-5'>约束</b>使用以及注意事项

    Design House与Fab的关系

    (Fab)形成互补关系。它负责芯片的功能设计与验证,将最终设计成果交付晶圆厂进行制造。设计公司不直接参与生产,而是通过EDA(电子设计自动化)工具、算法优化和设计规则约束,实现高效的芯片研发。 可以将Design House理解为“芯片建筑师”,而Fab是“芯片施工队”。
    的头像 发表于 01-07 09:59 ?986次阅读

    时序约束一主时钟与生成时钟

    一、主时钟create_clock 1.1 定义 主时钟是来自FPGA芯片外部的时钟,通过时钟输入端口或高速收发器GT的输出引脚进入FPGA内部。对于赛灵思7系列的器件,主时钟必须手动定义到GT
    的头像 发表于 11-29 11:03 ?1540次阅读
    时序<b class='flag-5'>约束</b>一主时钟与生成时钟

    Verilog vhdl fpga

    编程语言,熟悉时序约束、时序分析方法; 4.熟悉FPGA开发环境及仿真调试工具。 5.熟悉FPGA外部存储控制器及数据传输接口,如E2PROM、FLASH、DDR等。有FPGA高速数据
    发表于 11-12 16:40

    常用时序约束使用说明-v1

    时序约束使用说明-v1 文章出处:【微信公众号:易灵思FPGA技术交流】欢迎添加关注!文章转载请注明出处。
    的头像 发表于 11-01 11:06 ?616次阅读

    如何优化FPGA设计的性能

    优化FPGA(现场可编程门阵列)设计的性能是一个复杂而多维的任务,涉及多个方面和步骤。以下是一些关键的优化策略: 一、明确性能指标 确定需求 :首先,需要明确FPGA设计的性能指标,包括时钟频率
    的头像 发表于 10-25 09:23 ?1033次阅读

    浅析综合能耗监测系统在大型园区的应用

    摘要:大型综合园区已经成为多种能源消耗的重要区域,为了探索适用于大型综合园区的综合能耗监测系统,建立了综合能耗监测系统整体框架,提出了综合
    的头像 发表于 09-18 16:18 ?634次阅读
    浅析<b class='flag-5'>综合</b>能耗监测系统在大型园区的应用

    电路的两类约束指的是哪两类

    电路的两类约束通常指的是电气约束和物理约束。这两类约束在电路设计和分析中起着至关重要的作用。 一、电气约束 电气
    的头像 发表于 08-25 09:34 ?2121次阅读