摘要:
https://mp.weixin.qq.com/s/ZsEVt1GslL7ufJdJlgpfNQ 介绍AddressSet的实现。 1. 基本定义 使用base/mask定义的一个地址集合,之所以用集合(Set)而不是范围(Range),因为范围一般情况下是指一个连续的范围,而base 阅读全文
摘要:
https://mp.weixin.qq.com/s/s3hr5JJX2_pwNgdu8WqV0Q 介绍enumerateMask的实现。(仅供理解,非严谨证明) 1. 基本定义 enumerateMask的意思是枚举掩码。其功能是把mask中为1的位的所有组合枚举出来。 enumerateM 阅读全文
摘要:
https://mp.weixin.qq.com/s/Sf0owQxWzxacVvykJZ5oTQ 介绍TransferSizes的实现。 1. 基本定义 从min到max的闭合区间:[min, max] 判断条件: a. min和max为2的幂; b. min <= max; c. min和 阅读全文
摘要:
https://mp.weixin.qq.com/s/KsZqe9W_DM6W6JecK_irvA 介绍AddressSet.enumerateBits方法的实现,主要是x & (-x)的意义。 1. 基本定义 enumerateBits的意思就是用于枚举比特,或者说罗列比特,即把mask中为 阅读全文
摘要:
https://mp.weixin.qq.com/s/qqL2XWqAhVcnGSxs6kxhLg 介绍IdRange的实现。 1. 基本定义 A non-empty half-open range; [start, end) 非空,半闭合区间。 限定条件如下: a. start >= 0; 阅读全文
摘要:
https://mp.weixin.qq.com/s/j1M9ZOTtqvc1Fv9T6dy9kg 以tilelink下的Buffer为例,介绍LazyModule如何组织内部的节点和模块。 1. TileLink Channels 参考TileLink总线的规范文档。 2. BufferPa 阅读全文
摘要:
https://mp.weixin.qq.com/s/rgCRorjPYyyD6i7moIzbZg 介绍LazyModule和Node构造方法的执行过程,即实例化过程。 1. NullIntSource 以NullIntSource为例,将其作为顶层的LazyModule考虑: 2. Lazy 阅读全文
摘要:
https://mp.weixin.qq.com/s/gDbUto1qd7uWbpnxovr5pg 介绍LazyModuleImpLike类的实现。 1. wrapper LazyModuleImpLike是LazyModule的内部实现,LazyModule则是LazyModuleImpLike的 阅读全文
摘要:
https://mp.weixin.qq.com/s/9PsBt4_4qHx4i6C5XtuiUw 介绍LazyModule和Node构造方法的执行过程,即实例化过程。 1. NullIntSource 以NullIntSource为例,将其作为顶层的LazyModule考虑: 2. 实例化过 阅读全文
摘要:
https://mp.weixin.qq.com/s/FBU8fE4u9-UK6mRGQOlvbQ 介绍LazyModule的实现。 1. children LazyModule内部的LazyModule,说明LazyModule是可以嵌套的。 在如下位置添加: 2. nodes Laz 阅读全文