Lattice Diamond关于原语的使用

news2024/11/24 0:28:13

Lattice Diamond关于原语的使用

  • 前言
  • 一、原语基本概念
    • (一)简介
    • (二)常用原语
      • 1.时钟相关原语
      • 2.差分输入/输出原语
      • 3.接口相关原语
  • 二、Lattice原语
    • (一)原语使用
    • (二)IP调用
    • (三)Diamond帮助文档
  • 三、更多使用
  • 参考链接

前言

前一期有简单提到原语Lattice系列内存时序的概念,这里重点研究

一、原语基本概念

这里参考Diamond软件的使用(6)–Lattice原语基本概念

(一)简介

原语,英文名称primitive,是FPGA软件集成开发环境所提供的一系列底层逻辑功能单元
由于是底层逻辑功能单元,所以它们往往跟目标FPGA芯片以及芯片厂商紧密相关,因此不同厂商、不同器件的原语往往不能通用。当编译器对 HDL代码进行编译时,其中间环节的一些输出往往就是由原语组成的逻辑网表。因此,原语往往是不参与综合过程的,而使用原语描述的逻辑往往也不会被综合工具所优化。

例如,Xilinx 公司的ISE软件集成开发环境中的unisims库中定义了所有用于综合的原语,而simprims库中则定义了所有用于实现的原语。需要注意的是,如果在ISE安装目录下的verilog\src\unisims或verilog\src\simprims文件夹中看这些原语的代码,可以发现其实这些并不是真正的原语,而是在原语的基础上又封装了一层,不过人们常常将它们也泛称为原语。

(二)常用原语

1.时钟相关原语

如果时钟信号不是由FPGA芯片的专用时钟pin(或pad)引入FPGA 的,那么它通常就需要在FPGA内部被显式地连接到时钟树资源上,否则,直接使用这种不经过时钟树的时钟信号,会给FPGA设计的时序带来非常麻烦的问题,进而导致逻辑行为失败。
可是HDL代码仅仅描述功能,无法向编译器表达“希望将某一时钟信号连接到时钟树资源”这样的一层意思,那么此时,就需要使用类似BUFG这样的库里提供的底层模块来进行指示。

2.差分输入/输出原语

FPGA的接口具有单端和差分两种形式,同样,HDL代码只能描述功能,无法表达“某两个pin(或pad)脚互为一个差分对”这样的一层意思。那么此时,就需要使用类似IBUFDS、IBUFGDS、OBUFDS这样的库里提供的底层模块或原语来进行指示。

3.接口相关原语

当需要使用接口资源中的寄存器来实现高速数据采集时,除了使用本篇→编程思路→代码中的约束信息→HDL中的常用约束示例→寄存器的相关约束】中介绍的方法外,如果直接调用相关的原语,编译器便会利用接口资源中的寄存器来做事情。例如,使用ODDR,IDDR,IDDR2CLK,ISERDES,OSERDES等原语后﹐编译器便会利用接口资源的寄存器来实现相关接口功能,这样便能达到比较高的性能。


二、Lattice原语

(一)原语使用

使用LATTICE的原语在设计中使用内存的另一种方法是直接实例化ECP5设备的内存原语,用户必须在EBR
块级别上工作。如果需要具有跨多个模块的内存,则用户需要自己创建级联内存。Lattice 在 Lattice Diamond 软件安装文件夹的 cae_library/synthesis 文件夹下的 VHDL/Verilog 文件中提供了所有原语的详细列表。

例如:在软件Lattice Diamond安装目录下F:\lscc\diamond\3.10_x64\cae_library\simulation\verilog\ecp5u可以看到ecp5u系列的一些Verilog原语。
在这里插入图片描述

(二)IP调用

一些IP仿真时会调用原语,例如FIFO,参考Lattice库联合ModelSim仿真FIFO→ 二、库文件添加→(二)方法二:直接添加器件库到Libray,和tb.v在同一个目录下仿真

(三)Diamond帮助文档

进入lattice diamond软件,可以看到FPGA Libraries (HTML version)FPGA Librarles (PDF version)。可以点进去找到相应库调用的原语在内的详细介绍。

在这里插入图片描述

三、更多使用

因为原语FPGA软件集成开发环境所提供的一系列底层逻辑功能单元,硬件底层是一些门的调用和操作,需要有良好的模电基础,具体参考1.1 Verilog 门的类型|菜鸟教程

参考链接

Diamond软件的使用(6)–Lattice原语基本概念
Lattice FPGA 开发工具Diamond使用流程总结——IP核使用、原语调用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/101502.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

线性代数中的特征值和特征向量

一.几个基本概念 现将下文需要运用到的一些概念进行解释说明以便读者更好理解 1.特征值与特征向量 其中,我们要注意两点: (1)A是方阵(对于非方阵,是没有特征值的,但会有条件数) …

基于LMS算法的Mackey Glass时间序列预测(Matlab代码实现)

目录 💥1 概述 📚2 运行结果 🎉3 参考文献 👨‍💻4 Matlab代码 💥1 概述 时间序列预测方法是科学、经济、工程等领域的研究重点之一。经典的时间序列预测方法在用于非线性系统预测时有一定的困难,而神…

论文投稿指南——中文核心期刊推荐(物理学2)

【前言】 🚀 想发论文怎么办?手把手教你论文如何投稿!那么,首先要搞懂投稿目标——论文期刊 🎄 在期刊论文的分布中,存在一种普遍现象:即对于某一特定的学科或专业来说,少数期刊所含…

【论文精度】Subdivision-Based Mesh Convolution Networks

0.摘要 卷积神经网络( CNNs )在二维计算机视觉领域取得了巨大的突破。然而,其不规则的结构使得直接在网格上利用卷积神经网络的潜力变得困难。细分曲面提供了层次化的多分辨率结构,其中一个封闭的二维流形三角网格中的每个面恰好与三个面相邻。受这两点…

2022中国企业家博鳌论坛耿明雨致白皮书

海南.博鳌于2022年11月25日至28日,为期三天,中国企业家论坛准时开幕。 此次论坛主旨以“奋进新征程 建功新时代”为主题,来自全国知名企业家、媒体同仁、国内权威央媒、党媒云集于此,在全媒体融合时代下,以新华社、半月…

基于python命令流及代码的Plaxis自动化建模与典型案例

有限单元法在岩土工程问题中应用非常广泛,很多商业软件如Plaxis/Abaqus/Comsol等都采用有限单元解法。在使用各大软件进行数值模拟建模的过程中,您是否发现GUI界面中重复性的点击输入工作太繁琐?从而拖慢了设计或方案必选进程? 主…

电脑无法打开相机照片怎么解决?

相机拍照后的照片,大部分人把照片保存在电脑上,这样就可以把相机的内存卡腾空出来进行新的一轮拍摄。最近有新朋友询问如果电脑上的照片打不开怎么办? 首先我们要了解什么情况下电脑的照片会打不开,原因可能有以下几种&#xff1…

YOLO v2

参考 YOLO v2 - 云社区 - 腾讯云 摘要 我们引入了YOLO9000,一个最先进的,实时的物体检测系统,可以检测超过9000个物体类别。首先,我们提出了YOLO检测方法的各种改进,既有新颖的,也有来自之前工作的。改进…

R语言中敏感性和特异性、召回率和精确度作为选型标准的华夫图案例

精度和查全率源自信息检索,但也用于机器学习设置中。但是,在某些情况下,使用精度和查全率可能会出现问题。在这篇文章中,我将讨论召回率和精确度的缺点,并说明为什么敏感性和特异性通常更有用。 定义 对于类别0和1的…

新中式穿搭:柯罗芭KLOVA传承极致东方美

随着欧美风和日韩风的穿搭流行,如今在中国的大地再次刮起了一股复古风潮,而作为千年文化的沉淀,新中式风格的穿搭更加注重独特意义上的风格体现,通过传统服饰和新式的现代裁剪,款式的组合,符合现代人的一种…

【HBU】2022秋线上作业——第六次——查找排序选择判断

目录 判断题💖 1-1 希尔排序是稳定的算法。F 1-2 在散列表中,所谓同义词就是具有相同散列地址的两个元素。 T 1-3 对AVL树中的任一结点,其左、右子树的高度一定是一样的。 F 1-4 任何最小堆中从根结点到任一叶结点路径上的所有结点是有…

期末前端web大作业——基于HTML当当图书网项目的设计与实现 网上书城 网上书店 在线书店网页

常见网页设计作业题材有 个人、 美食、 公司、 学校、 旅游、 电商、 宠物、 电器、 茶叶、 家居、 酒店、 舞蹈、 动漫、 服装、 体育、 化妆品、 物流、 环保、 书籍、 婚纱、 游戏、 节日、 戒烟、 电影、 摄影、 文化、 家乡、 鲜花、 礼品、 汽车、 其他等网页设计题目, A…

再来一弹 | 美格智能强化5G阵营,推出国产芯Mini PCIe封装5G模组SRM810

近年来,我国在政策上加强顶层设计,根植移动物联网发展沃土,在技术上加快5G基础设施建设、深化4G网络应用,建立了以5G为核心、4G LTE Cat.1/NB-IoT等协同发展的移动物联网综合生态体系,全面开启了“物超人”时代新纪元。…

Linux搭建ELK日志收集系统构建:Filebeat+Redis+Logstash+Elasticse

Linux搭建ELK日志收集系统构建:FilebeatRedisLogstashElasticse 一、ELK概述: ELK是一组开源软件的简称,其包括Elasticsearch、Logstash 和 Kibana。ELK最近几年发展迅速,已经成为目前最流行的集中式日志解决方案。 Elasticsea…

Git和Github

一、Git和Github概念 Git是本地电脑上运行的版本控制软件,Github是基于Git打造的版本控制网站,可以理解为是一个全球网站仓库。Git是由Linux开发的 Github由于是网站所有具有网站的属性,同时也具有版本控制的属性。Github有三个概念&#x…

SpringBoot+Vue实现美食交流网站的设计与实现

文末获取源码 开发语言:Java 使用框架:spring boot 前端技术:JavaScript、Vue.js 、css3 开发工具:IDEA/MyEclipse/Eclipse、Visual Studio Code 数据库:MySQL 5.7/8.0 数据库管理工具:phpstudy/Navicat J…

新加坡国际学校IB均分持续全球霸榜

新加坡的教育水平和资源一直是亚洲翘楚,甚至在中小学教育方面赶超很多欧美国家。这其中,新加坡国际学校作为进入海外名校的捷径进入了中国父母的视野。 当然了新加坡有很多国际学校,虽说新加坡整体教育水平比较高,但是总归是有在平…

不同材质皮革皮衣皮裤应对西南盆地地区冬季低温阴冷湿冷气候会有什么样的效果?

PU皮 ​PU 是英文poly urethane的缩写,化学中文名称“聚氨酯”。 PU皮革就是聚氨酯成份的表皮。广泛适用于做箱包、服装、鞋、车辆和家具的装饰,它已日益得到市场的肯定,其应用范围之广,数量之大,品种之多&#xff0c…

关于git、gitlab、jenkins你知道多少?

目录 🍁git简述 🍁git基本命令 🍁分支 🍁Gitlab 🦐安装Gitlab 🦐部署Gitlab 🦐git常用命令 🍁CI&CD 🍁Jenkins 🦐安装Jenkins 🦐部署Jenkins …

关于幻读,该捋清楚了

小伙伴们都知道,MySQL 有四种不同的隔离级别,四种不同的隔离级别会带来三种不同的问题,今天我想再和大家捋一捋这个问题。 1. 隔离级别 1.1 理论 MySQL 中事务的隔离级别一共分为四种,分别如下: 序列化(…