我无法理解,为什么我们喜欢邮箱而不是队列来进行进程间的交流(例如:驱动程序和记分板之间的通信)?
发布于 2017-09-14 04:29:24
邮箱是队列周围的内置类,它使用信号量来控制对队列末端的访问。邮箱只有FIFO元素排序,而您可以访问队列的头、尾或中间元素。
通常,当有多个线程读取和写入数据时,您通常使用邮箱,并且需要使用信号量的原子测试和设置操作来知道邮箱何时已满或空。如果只有一个进程读取和写入队列,则不需要使用邮箱。但是,如果有多个线程,则邮箱是一个方便使用的类。
在UVM中,我们使用TLM FIFO,它是邮箱的另一个包装器。TLM连接提供了一个隔离接口,因此您不必知道端口的另一端是什么。请参阅https://verificationacademy.com/sessions/how-tlm-works
https://stackoverflow.com/questions/46209631
复制相似问题