DataAnalyzer 1.0.0.1
项目概述
DataAnalyzer 是一个数据分析工具,用于处理和分析数据集。该项目包含数据读取、数据处理、统计分析等功能模块。 WaferMapService 和 G85Generator 是用于处理晶圆图数据的组件,目前用于将晶圆数据转换为符合 SEMI G85-0703 标准的 XML 格式。 G85Generator 组件功能 主要功能 • XML 生成: 将晶圆图数据转换为 SEMI G85-0703 标准格式的 XML • 数据序列化: 使用 XmlSerializer 将 WaferMapBase 对象序列化为 XML • 数据统计: 计算晶圆图的统计数据(良品数量、Bin 分类统计等) 核心方法 • GenerateXml() - 主要的 XML 生成方法 • CreateG85Map() - 创建 G85 格式的晶圆图对象 • CalculateStatistics() - 计算晶圆图统计信息 如何打开和解析
项目结构
public interface IDieData { int Row { get; set; } int Column { get; set; } int X { get; set; } int Y { get; set; } /// <summary> /// 位于晶圆内部 /// </summary> bool IsInsideWafer { get; set; } /// <summary> /// 被切断的die /// </summary> bool IsCutoff { get; set; } /// <summary> /// Row Column 没有芯片 /// </summary> bool NotHasChip { get; set; } /// <summary> /// 标记点 /// </summary> bool IsMark { get; set; } string BinCode { get; set; } }使用方法 打开XML
if (_fileService.GetFile("XML|*.xml|文本文件|*.txt|所有文件|*.*", "Map文件", out var filePath))
{
var table = _mapService.ParseWaferMap(filePath);
if (table.Success)
{
}
}
导出SemiG85XML
~~~c#
var wMapGi5 = new SemiG85XmlWaferMapParser();
var meo = new MapExportOptions()
{
ReferenceDevices = new List<ReferenceDevice>()
{
new ReferenceDevice()
{
ReferenceDeviceX = "11",
ReferenceDeviceY = "3",
}
}, DefaultProductId = "ProductId ",
};
wMapGi5.DieDatas.AddRange(Dies);
wMapGi5.DieDatas.ForEach(a =>
{
});
var strXml = G85Generator.GenerateXml(wMapGi5, meo);
var file = _fileService.SaveFile("xml", "Map文件");
if (file != "")
{
File.WriteAllText(file, strXml, Encoding.ASCII);
}
参数说明
• waferMap: WaferMapBase 类型的晶圆图数据
• options: MapExportOptions 类型的导出选项
3. 数据解析
数据来源
• 从 MapLayout 获取晶圆布局信息
• 从 DieDatas 获取晶圆上的单个芯片数据
• 从 BinDefinitions 获取分类定义
解析流程
1. 数据提取: 从 WaferMapBase 对象提取晶圆信息
2. 统计计算: 计算良品数量、Bin 分类统计
3. 矩阵生成: 创建晶圆矩阵表示每个位置的芯片状态
4. XML 序列化: 将数据序列化为 SEMI G85-0703 标准的 XML 格式
4. 输出格式
生成的 XML 包含以下主要元素:
• 设备信息: 产品 ID、批次 ID、晶圆尺寸等
• 晶圆布局: 行数、列数、步进尺寸等
• 分类统计: 各 Bin 类型的数量统计
• 晶圆图数据: 以字符矩阵形式表示的晶圆图
5. 依赖项
• System.Xml - XML 序列化
• System.Xml.Serialization - XML 序列化支持
• DataAnalyzer.WaferMaps - 晶圆图数据模型
6. 特殊处理
• 布局推断: 当 MapLayout 中没有行列数时,从 DieData 推断
• 默认值: 提供合理的默认值处理缺失数据
• 字符映射: 将分类代码映射到字符矩阵中的相应字符
No packages depend on DataAnalyzer.
.NET Framework 4.8
- No dependencies.