欢迎光临散文网 会员登陆 & 注册

HDLBits (116) — 规则90

2022-04-28 00:14 作者:僚机Wingplane  | 我要投稿

本题链接:

https://hdlbits.01xz.net/wiki/Rule90

Rule 90是一种有趣的一维细胞自动机。

规则很简单。有一个一维单元阵列(开或关)。在每个时间步,每个单元的下一个状态是该单元的两个相邻单元的异或。下表更详细地表达了这一规则,其中一个单元的下一个状态是其自身及其两个相邻单元的函数:

(“ Rule 90”这个名字来自于“ next state”列: 01011010是 decimal 90。)

在这个电路中,创建一个512单元系统(q [511:0]) ,每个时钟周期前进一个时间步。load输入表明系统的状态应该加载数据[511:0]。假设边界(q [-1]和 q [512])都为零(关)。

题目

提示:

当初始状态 q [511:0] = 1时,前几次迭代是:

 这形成了半个谢尔宾斯基三角形.

答案

输出波形

规则90

规则90是一个基本的元胞自动机。这意味着它由一个一维单元格数组组成,每个单元格都包含一个二进制值,即 0 或 1。将值分配给所有单元格的行为称为配置。自动机被赋予一个初始配置,然后经过一系列离散的时间步长完成其他配置。在每个步骤中,所有单元格都会同时更新。预先指定的规则确定每个元胞的新值,作为其先前值及其两个相邻元胞中值的函数。所有单元格都应遵循相同的规则,该规则可以作为公式或规则表给出,该规则表为相邻值的每个可能组合指定新值。

对于规则90,每个元胞的新值是两个相邻值的独占值或两个相邻值的独占值。等价地,这个特定自动机的下一个状态由下面的规则表控制:

在规则 90 中,每个像元的值计算为上一个时间步长中两个相邻值的独占值或两个相邻值的不包含值

谢尔宾斯基三角形

谢尔宾斯基三角形(有时拼写为Sierpinski),也称为谢尔宾斯基垫圈谢尔宾斯基筛,是一个分形有吸引力的固定集,具有等边三角形的整体形状,递归地细分为较小的等边三角形。最初构造为曲线,这是自相似集合的基本示例之一 - 也就是说,它是一种数学生成的模式,在任何放大或减少下都是可重复的。它以波兰数学家Wacław Sierpiński的名字命名,但在Sierpiński工作之前的许多世纪就作为装饰图案出现。

参考内容:

 Rule_90 | wikipedia:

https://en.wikipedia.org/wiki/Rule_90

Sierpiński_triangle | wikipedia:

https://en.wikipedia.org/wiki/Sierpiński_triangle


HDLBits (116) — 规则90的评论 (共 条)

分享到微博请遵守国家法律