zoukankan      html  css  js  c++  java
  • Verilog 参数化设计

            为了提高模块的重复利用,关键就在于避免硬编码(hard literal),使模块参数化。参数化建模的好处是可以使代码清晰,便于后续维护和修改。只需要修改参数,不用修改其他代码就可以适用于不同的环境中。具体的参数化建模方法有 3 种:

    • `define 宏定义
    • parameter,localparam 模块参数化
    • `ifdef 等条件编译

    使用define,parameter和localparam的指导原则:

    1 宏定义应该只用于定义系统内全局常量。

    2 应该把所有的宏定义仿真一个definition.vh文件中。

    3 模块内的常量用localparam.

    4 在实例化时会改变的参数,使用parameter,以达到模块可配置和可移植。

    5 在定义常量时,如果一个常量依赖于其他常量,那么在定义该常量时就直接用表达式表示出来这种关系。

     

    注:Verilog-2001 中添加了一个新的关键字 localparam,用来定义模块内部的、不能被其他模块修改的局部常量,概念类似于 C++ 中 class 的 protect 成员。

     

    参考文献:

    [1] Verilog 中的参数化建模.

    http://guqian110.github.io/pages/2014/07/09/parameterization_modeling_in_veriog.html

    [2] 魏家明. Verilog编程艺术. 电子工业出版社. 2014.01.

  • 相关阅读:
    IMYSQL-叶金荣
    mysql命令
    实效云计算用户组(ECUG) 与 阿里云
    GO 语言
    MYSQL 源代码编绎脚本
    MYSQL 源代码学习
    LINUX 性能工具使用
    CentOS 5.8 上安装 systemtap-2.6 转
    mysql php nginx
    redis 安装
  • 原文地址:https://www.cnblogs.com/dpc525/p/5281691.html
Copyright © 2011-2022 走看看