标签专题 · 共 2 篇文章

# 协程

关于「协程」的技术文章、设计资料与工程师讨论,持续更新。

2
篇文章
7
人关注
133
次浏览
用Python给Verilog设计自仿(11):协程、阻塞勘误及AXIS开源验证剖析

用Python给Verilog设计自仿(11):协程、阻塞勘误及AXIS开源验证剖析

前言 在上一篇文章中,我们提到相同协程是阻塞的,不同协程是并发的这一说法。然而,这种理解存在偏差,所以第一个现象并不像我们之前想象的那样。今天,我们将专门梳理协程的概念,深入剖析其本质,以纠正上次关于协程与阻塞的说明。 案例说明 下面我将介绍一种非常典型的现象 for i in range(2):    await device_to_host_source.send(frame)    for 

用Python给Verilog设计自仿(11):仿真的玄学问题——协程、阻塞、 事件驱动、时间驱动

用Python给Verilog设计自仿(11):仿真的玄学问题——协程、阻塞、 事件驱动、时间驱动

前言 在使用 cocotb 编写测试时,很多人可能都会遇到一些让人困惑的现象:比如说,你明明在发送一帧完整数据之后,加了 await RisingEdge(clk) 想等待 5 个周期再发下一帧,但在波形上却发现帧与帧之间并没有间隔;或者你在别的地方加了 Timer 也没起作用更甚至cocotb直接卡住不动了;又或者明明指定了发包数,却提前结束了。 这些现象的背后,其实不是 cocotb 出了问题