【IEEE_Verilog-14.1】指定块的声明

14. Specify blocks

两种类型的HDL构造通常被用来描述结构模型(如ASIC细胞)的延迟。具体如下:
—分布式延迟,指定事件通过模块内部的门和网传播所花费的时间(参见7.14)
—模块路径延迟,描述一个事件在源(输入端口或inout端口)传播到目标(输出端口或inout端口)所花费的时间。
该子句描述了如何在模块中指定路径,以及如何将延迟分配给这些路径。

14.1 Specify block declaration

一个称为指定块的块语句是用来描述源和目标之间的路径以及为这些路径分配延迟的工具。指定块的语法见语法14-1。

指定块应该由关键字specify和endspecify限定,并且它应该出现在一个模块声明中。指定的block可以执行以下任务:
—描述跨模块的各种路径。
—为这些路径分配延迟。
—执行定时检查,以确保在模块输入处发生的事件满足模块所描述的设备的定时约束(见第15条)。
指定块中描述的路径,称为模块路径,将信号源与信号目的地配对。源可以是单向的(输入端口)或双向的(inout端口),被称为模块路径源。类似地,目的地可以是单向的(输出端口)或双向的(inout端口),被称为模块路径目的地。
例如:

specify
  specparam tRise_clk_q = 150, tFall_clk_q = 200;
  specparam tSetup = 70;
  (clk => q) = (tRise_clk_q, tFall_clk_q);
  $setup(d, posedge clk, tSetup);
endspecify

关键字指定之后的前两行声明指定参数,在4.10.3中讨论。指定参数声明之后的行描述了模块路径,并为该模块路径分配延迟。指定参数决定分配给模块路径的延迟。指定模块路径将在14.2中介绍。为模块路径分配延迟将在14.3中讨论。关键字end前的行指定了一个系统定时检查的实例化,将在第15章中进一步讨论。

### 关于IEEE 1801-2018标准的信息 #### IEEE 1801-2018概述 IEEE 1801-2018,也称为统一功率格式(UPF),旨在为低功耗集成电路的设计提供标准化的方法。该标准定义了一种描述电源管理特性的方法,使得设计者能够在不同的抽象层次上指定和验证电路的功耗特性。 此标准特别关注通过单一扭绞线对连接的数据终端设备(DTE),并规定了经由单平衡扭绞接口供电所需的规格与管理参数[^2]。然而需要注意的是,虽然上述描述涉及电力供应的标准细节,但其主要焦点在于数据通信领域内的电力传输协议,并不完全适用于IEEE 1801-2018所针对的低功耗设计方面。 对于IEEE 1801-2018本身而言,它提供了用于表达各种类型的功耗意图的语言结构,包括但不限于电压区域、状态切换行为以及动态电压频率缩放策略等。这有助于确保不同工具之间的互操作性和一致性,从而简化复杂SoC项目的功耗优化流程。 #### 主要特点 - **跨平台兼容性**:支持多种EDA工具间的协作。 - **丰富的语义表达能力**:能够细致入微地刻画复杂的功耗场景。 - **易于集成现有工作流**:允许逐步引入新功能而无需大规模重构既有设计过程。 ```cpp // 示例代码展示如何在Verilog中应用UPF来设置一个简单的电压区 `include "upf.v" module example; // 定义一个新的电压区名为core_vdd upf::define_voltage_domain("CORE_VDD", 1.2); endmodule ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值