# Adder 功能点与检测点描述

## DUT 整体功能描述

Adder是一个64位加法器，实现功能为：sum = a + b + cin

### 端口接口说明

**输入端口：**
- `a`：加数，64位
- `b`：被加数，64位
- `cin`：进位输入，1位

**输出端口：**
- `sum`：和，63位（注意：这里只有63位，不是完整的64位）
- `cout`：进位输出，1位

## 功能分组与检测点

### DUT测试API

<FG-API>

#### 基本操作功能

<FC-OPERATION>

提供加法器的基本加法操作接口，支持两个64位数和一个进位输入的加法运算。

**检测点：**
- <CK-ADD> 加法操作：验证sum = a + b + cin的计算功能

### 基本加法运算

<FG-ARITHMETIC>

#### 加法功能

<FC-ADD>

实现64位加法运算，支持进位输入。运算公式：{cout, sum} = a + b + cin

**检测点：**
- <CK-BASIC> 基本加法：验证无进位输入时的基本加法运算
- <CK-CARRY-IN> 进位输入：验证有进位输入时的加法运算
- <CK-OVERFLOW> 加法溢出：验证结果超出64位时进位输出正确性
- <CK-ZERO> 零值运算：验证操作数为0时的运算正确性
- <CK-BOUNDARY> 边界条件：验证最大值、最小值等边界条件下的运算

### 位宽处理

<FG-BIT-WIDTH>

#### 63位输出功能

<FC-SUM-WIDTH>

处理63位输出的特殊性，分析这种设计的合理性。

**检测点：**
- <CK-SUM-WIDTH> 输出位宽：验证sum只有63位的输出是否符合设计意图
- <CK-SUM-VALUE> 输出值正确性：验证63位输出值的正确性，特别是最高位的处理