verilog的文件流和项目流

1、写在前面

在学习FPGA时,一般都是从项目流入手的。从一个集成的开发环境创建一个工程。通过一个个组件的编写和设置来实现某个项目。这样的操作固然简单,对于设计者来说只需要关注需要修改的部分,而无需知道每个项目文件所对应的作用。这可以用于快速入门,但是不利于长期的结构化设计。只有在不断地设计中了解文件流设计的思路,才能够对这个设计具有准确的把握。对于一个大型的工程,文件的区分是必不可少的技能。对于某些简单的修改,可以直接从文件流入手,可以提高开发效率。

2、主要内容

文件流,在verilog中体现为顶层文件不断的向下层文件的调用。其中常用的关键字就是 `include,可以实现文件联系。除了可以调用设计模块的V文件外,也可以像C语言一样调用一些参数集成文件,也就是h文件。使用h文件可以有效地将参数和电路设计剥离,对于仿真、调试、移植都是具有重要意义的。

此外,xdc约束文件可以直接修改来嵌入到集成环境。最后的网表也是可以修改的。总之文件流的操作要求比项目流要高,难度也是要大。

在平时使用集成环境时应该注意每一步有文件生成的操作的生成结果,有可能的话可以尝试修改。这个方法可以为设计的方法提供一个新的思路。这里构建一个不常用的h文件,用于记录。

·defien x 0
`define y 1

使用h文件可以将define的内容列举到一个地方,也方便其他文件使用。这部分都属于预编译的内容。

3、总结概括

文件流是对于整个工程的把握,有利于深化理解,提高设计者的效率。

verilog的文件流和项目流的更多相关文章

  1. JAVA之旅(二十四)——I/O流,字符流,FileWriter,IOException,文件续写,FileReader,小练习

    JAVA之旅(二十四)--I/O流,字符流,FileWriter,IOException,文件续写,FileReader,小练习 JAVA之旅林林总总也是写了二十多篇了,我们今天终于是接触到了I/O了 ...

  2. 文件和I/O流

    版权声明:本文为[博主](https://zhangkn.github.io)原创文章,未经博主同意不得转载.https://creativecommons.org/licenses/by-nc-sa ...

  3. C#文件操作(IO流 摘抄)

    11 文件操作概述 11.1 驱动器 在Windows操作系统中,存储介质统称为驱动器,硬盘由于可以划分为多个区域,每一个区域称为一个驱动器..NET Framework提供DriveInfo类和 D ...

  4. java io流(字符流) 文件打开、读取文件、关闭文件

    java io流(字符流) 文件打开 读取文件 关闭文件 //打开文件 //读取文件内容 //关闭文件 import java.io.*; public class Index{ public sta ...

  5. -1-4 java io java流 常用流 分类 File类 文件 字节流 字符流 缓冲流 内存操作流 合并序列流

      File类 •文件和目录路径名的抽象表示形式 构造方法 •public File(String pathname) •public File(String parent,Stringchild) ...

  6. 文件是数据的流式IO抽象,mmap是对文件的块式IO抽象

    文件是数据的流式IO抽象,mmap是对文件的块式IO抽象

  7. java 写 Excel(不生成实体文件,写为流的形式)

    java 写 Excel(不生成实体文件,写为流的形式) public String exportReportExcel(String mediaCode, List<SimpleMediaRe ...

  8. java 文件字节和字符流 缓冲流

    流的原理 1) 在 Java 程序中,对于数据的输入/输出操作以“流”(stream) 方式进行:2) J2SDK 提供了各种各样的“流”类,用以获取不同种类的数据:程序中通过标准的方法输入或输出数据 ...

  9. 【慕课网实战】Spark Streaming实时流处理项目实战笔记二之铭文升级版

    铭文一级: 第二章:初识实时流处理 需求:统计主站每个(指定)课程访问的客户端.地域信息分布 地域:ip转换 Spark SQL项目实战 客户端:useragent获取 Hadoop基础课程 ==&g ...

  10. 流类库继承体系(IO流,文件流,串流)和 字符串流的基本操作

    一.IO.流 数据的输入和输出(input/output简写为I/O) 对标准输入设备和标准输出设备的输入输出简称为标准I/O 对在外存磁盘上文件的输入输出简称为文件I/O 对内存中指定的字符串存储空 ...

随机推荐

  1. 封装一些常用的 qt 控件

    在 qt 中需要做 toast 效果和图片 tip 效果,故开发了下面一个类 后续会继续添加一些常用的控件 tool_tip.h #include <qlabel.h> #include ...

  2. 文心一言 VS 讯飞星火 VS chatgpt (202)-- 算法导论15.3 1题

    一.对于矩阵链乘法问题,下面两种确定最优代价的方法哪种更高效?第一种方法是穷举所有可能的括号化方案,对每种方案计算乘法运算次数,第二种方法是运行RECURSIVE-MATRIX-CHAIN.证明你的结 ...

  3. Ubuntu18.04搭建Vue开发环境

    更新软件源列表 sudo apt update nodejs安装 sudo apt install nodejs nodejs -v #查看版本 npm安装 sudo apt install npm ...

  4. Oracle 插入数据报错 ORA-00918

    1. 报错内容 ErrorCode = 918, SQLState = 23000, Details = ORA-00918: column 'TO_DATE('2023-12-1809:13:45' ...

  5. 【算法day6】哈希表、有序表、链表(反转单链表)

    哈希表的简单介绍 1)哈希表在使用层面上可以理解为一种集合结构 2)如果只有key,没有伴随数据value,可以使用HashSet结构(C++中叫UnOrderedSet) 3)如果既有key,又有伴 ...

  6. 今日问题——无法获取到input的value值

    利用node环境开发系统,样式框架采用bootstrap,其中表单值可以提交到到后台,在数据库中也可查看,但是前端做表单判定的 时候发现无法获取其value值,所有input提交值都为空,判定问题出现 ...

  7. 【API Management】使用 APIM Inbound Policy 来修改Content‐Type Header的值

    问题描述 在使用APIM提供API服务管理的场景中,遇见了客户端请求时候发送的请求Header中的Content-Type不满足后台服务器的要求,但是在客户端要求客户修改代码难度较高. 所以面对这样的 ...

  8. 【Azure K8S】记录AKS VMSS实例日志收集方式

    问题描述 如何从AKS的VMSS集群中收集实例日志? 参考步骤 第一步:登陆VMSS实例 参考官网步骤:使用 SSH 连接到 Azure Kubernetes 服务 (AKS) 群集节点以进行维护或故 ...

  9. 【Azure 应用服务】查看App Service for Linux上部署PHP 7.4 和 8.0时,所使用的WEB服务器是什么?

    问题描述 如何查看PHP应用部署到App Service后,Azure上面使用的应用服务器是什么呢?因为App Service支持两种操作系统,Windows 和 Linux.在Windows中,使用 ...

  10. Ubuntu20下安装NFS

    安装nfs-kernel-server apt install nfs-kernel-server 想好自己要把哪个目录作为NFS共享目录,创建目录 mkdir /mydata vim /etc/ex ...