找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 19|回复: 0

八:算法

[复制链接]

11

主题

0

回帖

0

积分

版主

积分
0
发表于 4 天前 | 显示全部楼层 |阅读模式
选择算法菜单



1、块排序

软件会自动计算,如有错误需手动计算修改
(1)、点击扫描
   扫描后可以打开镜像或者保存镜像。
(2)、查看块排结果
1、鼠标右键点击sa区域可以进入扇区浏览模式。
2、按空格或者鼠标右键可以做冲突块替换。
3、直接修改块号。

4、根据勾选生成剪切公式,支持3K(DEC),FE(HEX)两种模式互换。

2、扇区排序
(1)、扇区:要排序的单位

(2)、剪切bit需要对SA的扇区编号如何处理。例如:当前LSN=0x18f4c ,但所处扇区对应的实际内容并非18f4c扇区而是f4c,则剪切bit填写0xF800既可以表示删除对应的位
(3)Cross Dump :
通过dump进行合并,并通过公式修改扇区编号:
情况1:Step = 1(简单情况)
公式: Marker = Marker*Parts + Dump
示例参数: Parts = 2, 两个dump合并
Dump_0 数据:
原始LSN 计算过程         结果LSN
0       0×2+ 0 = 0 + 0 = 0
1       1×2+ 0 = 2 + 0 = 2
2       2×2+ 0 = 4 + 0 = 4
Dump_1 数据:
原始LSN 计算过程         结果LSN
0       0×2+ 1 = 0 + 1 = 1
1       1×2+ 1 = 2 + 1 = 3
2       2×2+ 1 = 4 + 1 = 5
合并结果: 0, 1, 2, 3, 4, 5 - 完美交错!
情况2:Step > 1(复杂情况)
公式: Marker = trunc(Marker/Step)*Step*Parts + Dump*Step + Marker%Step
示例参数: Parts = 4, Step = 2, 四个dump合并
先计算中间值:
trunc(0/2) = 0, trunc(1/2) = 0, trunc(2/2) =1, trunc(3/2) = 1
0%2 = 0, 1%2 = 1, 2%2 = 0, 3%2 = 1
Dump_0 数据:
原始LSN 计算过程         结果LSN
0       0×2×4+ 0×2 + 0 = 0 + 0 + 0      0
1       0×2×4+ 0×2 + 1 = 0 + 0 + 1      1
2       1×2×4+ 0×2 + 0 = 8 + 0 + 0      8
3       1×2×4+ 0×2 + 1 = 8 + 0 + 1      9
Dump_1 数据:
原始LSN 计算过程         结果LSN
0       0×2×4+ 1×2 + 0 = 0 + 2 + 0      2
1       0×2×4+ 1×2 + 1 = 0 + 2 + 1      3
2       1×2×4+ 1×2 + 0 = 8 + 2 + 0      10
3       1×2×4+ 1×2 + 1 = 8 + 2 + 1      11
Dump_2 数据:
原始LSN 计算过程         结果LSN
0       0×2×4+ 2×2 + 0 = 0 + 4 + 0      4
1       0×2×4+ 2×2 + 1 = 0 + 4 + 1      5
2       1×2×4+ 2×2 + 0 = 8 + 4 + 0      12
3       1×2×4+ 2×2 + 1 = 8 + 4 + 1      13
Dump_3 数据:
原始LSN 计算过程         结果LSN
0       0×2×4+ 3×2 + 0 = 0 + 6 + 0      6
1       0×2×4+ 3×2 + 1 = 0 + 6 + 1      7
2       1×2×4+ 3×2 + 0 = 8 + 6 + 0      14
3       1×2×4+ 3×2 + 1 = 8 + 6 + 1      15
最终合并序列: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
(4) 、cross sector:
过公式修改扇区编号:
lsn * parts + (block % parts) * step
步进 = 1,份数 = 4
对于块号 128-131(0x80-0x83),LSN 12330(0x303A)会变成:
0x303A * 4 + (128 % 4) * 1 = 0x48CC0 + 0 =0x48CC0
0x303A * 4 + (129 % 4) * 1 = 0x48CC0 + 1 =0x48CC1
0x303A * 4 + (130 % 4) * 1 = 0x48CC0 + 2 =0x48CC2
0x303A * 4 + (131 % 4) * 1 = 0x48CC0 + 3 =0x48CC3
如果步进 = 2,就变成:0x48CC0, 0x48CC2, 0x48CC4, 0x48CC6
如果步进 = 3,就变成:0x48CC0, 0x48CC3, 0x48CC6, 0x48CC9
(5)、文件名:扇区排序的映射表名称。存储在与dump相同目录下
(6)、反向冲突:未勾选时默认使用冲突项中的第一个,勾选后使用最后一个。
(7)、重建映射表:基于第一次扫描得到的结果进行连续性整理,获得一个更为连续的映射表。

3、映射表
(1)、设定块大小
(2)、输入每张映射表所在地址
例如:0x000 / 0x12345600
          0x001 / 0x789abc00

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|NAND Flash Tracer

GMT+8, 2026-4-3 05:35 , Processed in 0.051534 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表