TDA 2.0.1
dotnet add package TDA --version 2.0.1
NuGet\Install-Package TDA -Version 2.0.1
<PackageReference Include="TDA" Version="2.0.1" />
<PackageVersion Include="TDA" Version="2.0.1" />
<PackageReference Include="TDA" />
paket add TDA --version 2.0.1
#r "nuget: TDA, 2.0.1"
#:package TDA@2.0.1
#addin nuget:?package=TDA&version=2.0.1
#tool nuget:?package=TDA&version=2.0.1
TDA Framework
半导体芯片量产测试数据分析框架。提供 STDF V4 文件解析、多 Sublot/复测数据关联、并行统计分析(Cp/Cpk)、图表可视化以及数据导入导出能力。
Packages
| Package | Description |
|---|---|
| TDA | 核心库 — STDF 解析、数据分析、导入导出 |
| TDA.GUI | WinForms 可视化控件 — 趋势图、直方图、箱线图、晶圆图、数据表格 |
Installation
dotnet add package TDA
dotnet add package TDA.GUI
Quick Start
加载 STDF 数据并进行良率分析
using TDA;
using TDA.Analysis;
// 1. 配置
var setup = new DataPrismSetup
{
Sublots = new[]
{
new SublotConfig
{
SublotName = "Lot001_SL00",
TestRounds = new[]
{
new TestRoundConfig // 初测
{
StdfFilePaths = new[] { "C:\\data\\lot001_sl00_ft1.stdf.gz" }
},
new TestRoundConfig // 复测:仅复测 HardBin=2,3 的芯片
{
StdfFilePaths = new[] { "C:\\data\\lot001_sl00_rt1.stdf.gz" },
RetestedHardBins = new[] { 2, 3 }
}
}
}
}
};
// 2. 解析
using var prism = new DataPrism(setup);
prism.Load();
// 3. 查询
Console.WriteLine($"Total devices: {prism.TotalDevices}");
Console.WriteLine($"Yield: {prism.OverallYield:P2}");
Console.WriteLine($"HardBin 1 (Pass): {prism.HardBinCount(1)} devices");
// 4. 按 TestID 获取测试数据并进行统计
var testID = new TestID(testNumber: 1001, testText: "VDD_Isb_Stby");
var stats = prism.GetStatistics(testID);
Console.WriteLine($"Mean={stats.Mean:F4}, StdDev={stats.StdDev:F4}, Cp={stats.Cp:F2}, Cpk={stats.Cpk:F2}");
// 5. 导出
prism.ExportToNedaCsv("C:\\output\\summary.csv");
GUI 图表(TDA.GUI)
using TDA.GUI.Controls;
// 趋势图 — 按芯片测试顺序展示测试值变化
var trendChart = new TrendChart();
trendChart.SetData(prism, testID);
trendChart.Show();
// 直方图 — 支持 Sturges/Scott/FD/Sqrt 四种分箱算法
var histogram = new HistogramPlot();
histogram.SetData(prism, testID);
histogram.Show();
// 晶圆图 — 彩色渲染 Bin 分布(CP 数据专用)
var waferMap = new WaferMapControl();
waferMap.SetData(prism);
waferMap.Show();
Key Concepts
- Lot — 一批同型号芯片,包含一个或多个 Sublot
- Sublot — Lot 的子分组,数据独立但需合并分析
- 初测 (First Test) — 所有芯片的第一轮测试
- 复测 (Retest) — 初测 Fail 芯片的再次测试,可多轮执行(直至回收率低于阈值)
- HardBin / SoftBin — 硬件/软件判定分类,1 号通常为 Pass Bin
- TestID — 由
TestNumber+TestText+TestSequence三元组唯一标识一个测试项 - DataPrism — TDA 的核心分析引擎,统一管理多 Sublot、多轮次数据的加载和查询
详细背景知识请参阅 Docs/TermsAndTerminology.md
Documentation
| 文档 | 说明 |
|---|---|
| TermsAndTerminology | 术语定义与概念说明 |
| TDA Project Structure | 项目结构概览 |
| DataGrid Design | TDADataGrid 虚拟表格设计 |
| STDF Merge & RT Replacement | STDF 合并与复测替换逻辑 |
| About Export | 数据导出格式说明 |
| Notes for TDA | 开发笔记 |
API 文档内嵌于各程序集的 XML 文档注释中(<GenerateDocumentationFile>true</GenerateDocumentationFile>),IDE 中悬停即可查看。
License
© TDA Project Contributors
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0-windows10.0.19041 is compatible. net9.0-windows was computed. net10.0-windows was computed. |
-
net8.0-windows10.0.19041
- CsvHelper (>= 33.1.0)
- MathNet.Numerics (>= 5.0.0)
- MiniExcel (>= 1.41.3)
- MSBuild.Obfuscar (>= 2.2.49)
- Obfuscar (>= 2.2.49)
- Serilog (>= 4.2.0)
- Serilog.Sinks.Console (>= 6.0.0)
- Serilog.Sinks.File (>= 6.0.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on TDA:
| Package | Downloads |
|---|---|
|
TDA.GUI
WinForms visualization controls for semiconductor test data. Includes trend charts, histograms (4 binning methods), box plots, cumulative probability plots (Normal/LogNormal/Weibull), wafer maps with color-coded bin visualization, chart linking, and a high-performance virtual data grid — built on ScottPlot and SkiaSharp. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.0.1 | 37 | 7/29/2026 |