我正在尝试使用 wavedrom 显示失相时钟的波形。每个信号(名为位 x)的周期均乘以 2 并进行去相位。
wavedrom javascript 代码如下:
{signal: [
{name: 'bit 0', wave :'nnnnnnnn'},
{name: 'bit 1', wave :'hlhlhlhlh',phase:0.5},
{name: 'bit 2', wave :'hl.h.l.h'},
{name: 'bit 3', wave :'hpl..nh.'}
],
head: {
text: ['tspan',
['tspan',{class: 'muted h5'}, '0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 '],
],
}
}
所有信号均正确打印,除了超出框架的
bit 1
。
有没有解决方案可以剪掉
bit 1
的最后一个“时期”?
解决方案是使用带有
<>
符号的子周期脉冲表示法。
用
<>
包围一个周期,可以将其分割成子信号。
例如,在
bit 0
行中,我们可以用n
替换一个<lh>
(否定时钟周期)并获得相同的渲染。
对于有问题的失相信号
bit 1
,我们只想显示半周期,那么我们只需添加 <h
即可显示半周期。
{signal: [
{name: 'bit 0', wave :'n<lh>nnnnnn'},
{name: 'bit 1', wave :'hlhlhlhl<h',phase:0.5},
{name: 'bit 2', wave :'hl.h.l.h'},
{name: 'bit 3', wave :'hpl..nh.'}
],
head: {
text: ['tspan',
['tspan',{class: 'muted h5'}, ' 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15'],
],
}
}
图像渲染如下: