硬件描述与建模语言综合解析
1. 离散事件驱动语言
离散事件驱动语言在硬件描述和建模中具有重要地位,下面以 VHDL 为例进行详细介绍。
1.1 VHDL 的特性
VHDL 模型的执行结果不依赖于模型各部分的执行顺序,这得益于信号新值计算与实际赋值的分离。例如,在包含 a <= b; b <= a; 的模型中,信号 a 和 b 总是会交换值。若赋值立即执行,结果将依赖于赋值的执行顺序。VHDL 模型具有确定性,这符合对固定行为的真实电路仿真的预期。
在当前时间 Tc 推进之前,可能会有任意数量的 δ 周期,这种无限循环的可能性可能会造成混淆。避免这种情况的一种方法是不允许零延迟,如在触发器模型中所采用的方式。
信号的值传播还便于实现观察者模式,与 SDF 不同,观察者的数量可以根据等待信号变化的进程数量而变化。
VHDL 的通信模型依赖于一个集中的未来事件队列,用于存储所有信号的未来值。该队列并非用于实现异步消息传递,而是由仿真内核以非分布式方式逐个访问。分布式 VHDL 仿真通常性能较差。所有建模组件可以在不进行基于消息的通信的情况下访问其作用域内的信号和变量的值,因此 VHDL 倾向于基于共享内存的通信实现。不过,基于 FIFO 的消息传递也可以在 VHDL 仿真器之上实现。
1.2 IEEE 1164 标准
在 VHDL 中,除了对二值逻辑的基本支持外,没有预定义的信号值数量。可以在 VHDL 中定义所使用的值集,不同的 VHDL 模型可
超级会员免费看
订阅专栏 解锁全文
2551

被折叠的 条评论
为什么被折叠?



