25、VHDL扩展标准与功能验证详解

VHDL扩展与功能验证详解

VHDL扩展标准与功能验证详解

1. VHDL扩展标准

VHDL有许多重要的扩展标准,这些标准增强了其功能和适用性。

1.1 受保护的共享变量(IEEE 1076a)

在VHDL中,进程间交换时变数据的常用方式是通过信号。信号本质上代表子电路之间的电线,子电路的非零延迟在信号赋值语句中体现。而共享变量用于在仿真运行期间支持进程间通信用于簿记和监督任务,如统计进程调用次数、跟踪异常或特殊事件、协调测试台中不同进程的活动或收集统计数据等,这种情况下零延迟通信是可行的。如果没有共享变量,程序员可能会被迫使用信号,这会掩盖其初衷并增加执行时间。

为避免不同进程同时对全局变量进行读写操作带来的问题,需要对访问进行控制。受保护的共享变量提供了同步手段,对其访问是排他的,必须通过调用为其编写的函数或过程来进行。例如:

-- 声明受保护的共享变量
shared variable event_counter : shared_counter;

-- 受保护类型声明
type shared_counter is protected
    procedure : reset;
    procedure : increment ( by : integer := 1 );
    impure function value return integer;
end protected;

-- 受保护类型体
type shared_counter is protected body
    variable count : integer := 0;
    procedure reset is
 
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值