第 18 章 与 Layout 和 Router 协作

问题说明

Layout 和 Router 当前不完善

使用 SailWind Logic,您可以与 SailWind Layout 和 SailWind Router 无缝交换设计数据。这是一个双向流程,您可以向前注释和向后注释数据,从而保持设计变更的同步。您还可以生成差异报告,以便比较两个设计并突出显示任何差异。

从 SailWind Logic 设计创建新的 PCB Layout

有两种方法可以从 SailWind Logic 设计创建新的 PCB 设计:您可以使用 SailWind Layout Link,也可以在 SailWind Logic 和 SailWind Layout 之间手动交换网络表。

  • 方法 1 — 如果您的计算机上同时安装了 SailWind Logic 和 SailWind Layout,请使用“使用 SailWind Layout 链接的自动网表流程”。这种自动化方法是最简单的。

  • 方法 2 — 如果您的计算机上没有安装 SailWind Logic 和 SailWind Layout,请使用“SailWind Logic 和 SailWind Layout 之间的手动网表流程”。此手动方法需要您手动从 SailWind Logic 导出网表,然后将其导入 SailWind Layout。

使用 SailWind Layout Link 的自动网表流程 SailWind Logic 和 SailWind Layout 之间的手动网表流程 解释和解决网表流程错误报告

使用 SailWind Layout 链接的自动网表流程

如果您的计算机上同时安装了 SailWind Logic 和 SailWind Layout,您可以使用 SailWind Layout Link 自动处理 SailWind Logic 网表。 这种自动化方法是最简单的。

🙊限制

  • 对现有设计进行前向注释变更需要不同的流程。请参阅从 SailWind Logic 到 SailWind Layout 的前向注释。
  • 未注册 ECO 的元件和非电气元件的传输受“选项”中设置的限制。详情请参见第 591 页的“设计选项”。

先决条件

您必须在同一台计算机上同时安装 SailWind Logic 和 SailWind Layout。

🏃‍♂️‍步骤

  1. 单击工具 > SailWind Layout 菜单项。

    TIP

    如果 SailWind Layout 尚未打开,则会显示“连接到 SailWind Layout”对话框。点击“新建”即可启动新的 SailWind Layout 会话。

  2. SailWind Layout 链接对话框中,单击第 620 页的首选项选项卡,然后设置适当的选项。

  3. 在“设计”选项卡上:位于第 614 页

    a. 如果需要,请选中“在网络列表中包含设计规则”或“AI Layout 参考数据”复选框。

    TIP

    必须选择 AI Layout 参考数据项,AI 智能 Layout 功能才能在 SailWind Layout 中发挥作用。

    b. 单击发送网络列表按钮。

👀‍结果

导入过程会从库中获取所有元件类型和封装,并将封装堆叠在原点。然后,您可以使用 SailWind Layout 工具的 > “分散组件”菜单项来展开组件。

如果生成了错误报告文件(ascii.err)并且在网络表中发现错误,请参阅解释和解决网络表流程错误报告以获取更多信息。

SailWind Logic 和 SailWind Layout 之间的手动网表流程

如果您的计算机上没有安装 SailWind Logic 和 SailWind Layout,您可以手动处理网表。此手动方法需要您手动从 SailWind Logic 导出网表,然后将其导入 SailWind Layout。

🙊限制

  • 对现有设计进行前向注释变更需要不同的流程。请参阅从 SailWind Logic 到 SailWind Layout 的前向注释。

  • 未注册 ECO 的元件和非电气元件的传输受“选项”中设置的限制。详情请参见第 591 页的“设计选项”。

🏃‍♂️‍步骤

  1. 单击工具 > Layout 网表菜单项。

  2. 要为网络表选择不同的文件名或位置,请在“网络表到 PCB”对话框中单击“浏览”。

    TIP

    默认值是带有 .asc 扩展名的设计文件名,并保存在 \SailWind Projects 文件夹中。

  3. 在选择图页区域中,选择要包含在网表中的图页。

  4. 选中“包含子表”复选框以包含与网表中分层符号的任何连接。

    使用 SailWind Layout 和 SailWind 布线器解释和解决网表流程错误报告

  5. 从输出格式列表中选择所需的格式。

  6. 设置其余对话框选项。

  7. 单击“确定”即可生成网络表。

  8. 将网表导入 SailWind Layout。有关说明,请参阅创建新 PCB 设计在 SailWind Layout 指南中手动导入 SailWind Logic 网表主题。

👀‍结果

导入过程会从库中获取所有元件类型和封装,并将封装堆叠在原点。然后,您可以使用“工具 > “ 分散组件”菜单项来分散组件

如果生成了错误报告文件(ascii.err)并且在网络表中发现错误,请参阅解释和解决网络表流程错误报告以获取更多信息。

解释和解决网表流程错误报告

如果在网表导入过程中发现错误,则会生成错误报告文件 (ascii.err),并在记事本窗口中显示该错误报告文件。如果没有发现错误,则不会生成错误文件。

错误报告文件中报告了以下内容:

  • 库问题
  • 单针或零针网络
  • 完全浮动的连接或子网
  • 未命名的悬空连接(一端浮动)
  • 网络上使用的电源和接地符号的名称与符号上的默认名称不同,多个子网网络中一个或多个子网缺少页间连接符
  • 带有页间连接符的单个子网(单独子网警告)
  • 没有可见网络名称标签的用户命名子网

🏃‍♂️‍步骤

  1. SailWind Layout 中,单击主页 > 新建菜单项。
  2. 当提示您保存设计时,单击“否”。
  3. 将 ascii.err 文件中列出的所有缺失元器件添加到您的库中,方法是将包含缺失元器件的库添加到库列表中,或者创建缺失的元件类型和封装。(有关说明,请参阅《SailWind Layout 指南》中的“将库添加到库列表”、“创建和修改元件类型”以及“创建和编辑 PCB 封装”。)
  4. 解决 ascii.err 文件中发现的任何其他错误。
  5. 解决所有错误后,重复将网络表从 SailWind Logic 传递到 SailWind Layout 的过程。

Sailwind 产品之间的交叉探测

您可以在 SailWind Logic 和 SailWind Layout 之间进行交叉探测,或者如果应用程序位于同一台计算机上,则可以在 SailWind Logic 和 SailWind Router 之间进行交叉探测。一次只能在两个应用程序之间进行交叉探测。在 SailWind Logic 中,无论 SailWind Layout 或 SailWind Router 是否打开,您都可以启动交叉探测。

通过交叉探测,您可以同时在原理图和设计中选择项目。例如,如果您在 SailWind Layout(或 SailWind Router)中选择对象,该对象将自动高亮显示并在 SailWind Logic 工作区中居中显示。交叉探测还可以自动进行网表比较和规则导出(仅适用于 SailWind Logic 和 SailWind Layout)。

使用 SailWind Layout 进行交叉探测 使用 SailWind 布线器进行交叉探测

SailWind Layout 进行交叉探测

使用 SailWind Layout 进行交叉探测,以便在两个应用程序中同时进行选择。在其中一个程序中选择一个对象将自动在另一个程序中选择相同的对象。

🙊限制

  • 在 SailWind Logic 中选择项目之前,应将第 712 页上的 SailWind Logic 选择筛选条件设置为元件、门、网络或管脚。

  • 某些元件可能不存在于两个数据库中。未在 ECO 注册的元件和非电气元件可能已受到约束。有关详细信息,请参见“选项”对话框的“设计”类别。

🏃‍♂️‍步骤

  1. 单击工具 > SailWind Layout 菜单项。

    如果 SailWind Layout 未打开,则会显示“连接到 SailWind Layout”对话框。请执行以下操作之一:

    • 点击“新建”,使用新的、未命名的设计启动一个新的 SailWind Layout 会话。

    • 点击“打开”,使用现有设计启动一个新的 SailWind Layout 会话。在“文件打开”对话框中,选择一个设计文件,然后点击“打开”。

  2. SailWind Layout Link 对话框中,在 Selection 选项卡上,选中 Receive Selections 复选框,以使 SailWind Layout 中的选择能够在 SailWind Logic 中接收。

现在您可以继续使用 SailWind Layout 进行交叉探测。

同 SailWind 布线器进行交叉探测

与 SailWind Router 进行交叉探测,以便在两个应用程序中主动同时进行选择。 在其中一个程序中选择一个对象将自动在另一个程序中选择相同的对象。

🙊限制

  • 在 SailWind Logic 中选择项目之前,应将第 712 页上的 SailWind Logic 选择筛选条件设置为元件、门、网络或管脚。

  • 某些元件可能不存在于两个数据库中。未注册 ECO 的元件和非电气元件可能已受到约束。有关详细信息,请参见“选项”对话框的“设计类别”。

🏃‍♂️‍步骤

  1. 单击工具 > SailWind 布线器菜单项。

    如果 SailWind 布线器未打开,则会出现“连接到 SailWind 布线器”对话框。请执行以下操作之一:

    • 点击“新建”以使用新的、未命名的设计启动新的 SailWind Router 会话。

    • 点击“打开”以使用现有设计启动新的 SailWind Router 会话。在“文件打开”对话框中,选择一个设计文件,然后点击“打开”。

  2. 在 SailWind Router Link 对话框的 Selection 选项卡上,选中 Receive Selections 复选框,以使 SailWind Router 中的选择能够在 SailWind Logic 中接收。

您现在可以继续使用 SailWind Router 进行交叉探测。

将注释从 SailWind Logic 转发到 SailWind Layout

您可以将原理图更改“转发”(称为转发注释)导出到现有的 PCB Layout 中。您可以选择三种方法中的任意一种来转发注释设计更改。

  • 方法 1 — 如果您的计算机上同时安装了 SailWind Logic 和 SailWind Layout,请使用“自动前向注释流程”。这种自动化方法最简单、最快捷。

  • 方法 2 — 如果 SailWind Layout 在另一台电脑上,并且您希望 Layout 设计师比较设计以生成 ECO 文件,然后将其导入 SailWind Layout,请按照“在 SailWind Layout 中生成 ECO 文件”中的方法操作。此方法比方法 3 更快一些,因为 SailWind Layout 中的比较/ECO 工具可以在比较设计后自动导入文件。

  • 方法 3 — 如果 SailWind Layout 位于另一台计算机上,并且您想要比较设计以在 SailWind Logic 中生成 ECO 文件并将其发送给 Layout 设计器以导入 SailWind Layout,请使用“在 SailWind Logic 中生成 ECO 文件”中的过程。

自动正向注释过程 在 SailWind Layout 中生成 ECO 文件 在 SailWind Logic 中生成 ECO 文件正向注释结果

自动前向注释过程

如果 SailWind Logic 和 SailWind Layout 位于同一台计算机上,您可以使用 SailWind Layout Link 对话框将较新的原理图与较旧的 PCB 设计进行比较,并使用 Logic 中的新设计更新 Layout 中的原始设计。您还可以创建差异报告。

🙊限制

  • 如果您是第一次通过发送网络表来创建新的 PCB,请参阅从 SailWind Logic 设计创建新的 PCB Layout。

  • 为避免在正向注释期间发生意外变化,请考虑在正向注释之前比较数据。

  • 传输未 ECO 注册的元件和非电气元件受到限制。有关详细信息,请参见“选项”对话框“设计类别”位于第 591 页中的覆盖设置。

  • 您无法将注释更改转发至 SailWind Router。SailWind Router 不导入 ECO 文件。

  • 在设计比较期间,将忽略重用定义,并使用物理设计重用中的实际元素进行比较。

先决条件

您必须在同一台计算机上同时安装 SailWind Logic 和 SailWind Layout。

🏃‍♂️‍步骤

  1. 单击工具 > SailWind Layout 菜单项以打开 SailWind Layout 链接对话框。

    TIP

    如果 SailWind Layout 尚未打开,则会出现“连接到 SailWind Layout”对话框。单击“打开”即可使用原始设计启动新的 SailWind Layout 会话。在“文件打开”对话框中,选择原始设计文件,然后单击“打开”。

  2. (可选)如果您想在更新之前检查设计差异,请单击第 614 页上的“设计”选项卡,然后单击“比较 PCB”按钮。

    比较两个版本,并将差异写入 \SailWind Projects 文件夹中的 Logic.rep 文件。要查看报告,请点击“输出窗口”中的 logic.rep 链接。

  3. 在第 620 页的“首选项”选项卡上,设置适当的选项。

  4. 在第 618 页的 ECO 名称选项卡上,设置适当的选项。

  5. 在“设计”选项卡上:位于第 614 页

    a. 如果需要,请选中比较设计规则和显示网络列表错误报告复选框。 b. 点击 ECO To PCB 按钮发送更改。

    TIP

    SailWind Layout 链接对话框打开的情况下,您可以进行交叉探测。更多信息,请参阅 Sailwind 产品间的交叉探测。

    参见“正向注释结果”。

SailWind Layout 中生成 ECO 文件

您可以创建一个网络表(.asc 文件)并将其发送给 Layout 设计师,Layout 设计师可以通过比较设计生成 ECO 文件,然后将更改导入 SailWind Layout。

🙊限制

  • 如果您是第一次通过发送网络表来创建新的 PCB,请参阅从 SailWind Logic 设计创建新的 PCB Layout。

  • 为避免在正向注释期间发生意外变化,请考虑在正向注释之前比较数据。

  • 传输未 ECO 注册的元件和非电气元件受到限制。有关详细信息,请参见“选项”对话框“设计类别”位于第 591 页中的覆盖设置。

  • 您无法将注释更改转发至 SailWind Router。SailWind Router 不导入 ECO 文件。

  • 在设计比较期间,将忽略重用定义,并使用物理设计重用中的实际元素进行比较。

🏃‍♂️‍步骤

  1. 单击工具 > Layout 网表菜单项。

  2. 要为网络表选择不同的文件名或位置,请在“网络表到 PCB”对话框中单击“浏览”。

    TIP

    默认值是带有 .asc 扩展名的设计文件名,并保存在 \SailWind Projects 文件夹中。

  3. 在选择图页区域中,选择要包含在网表中的图页。

  4. 选中“包含子表”复选框以包含与网表中分层符号的任何连接。

  5. 从输出格式列表中选择所需的格式。

  6. 设置其余对话框选项。

  7. 单击“确定”即可生成网络表。

  8. 将网表发送给 Layout 设计师。

    要继续此过程,请参阅 SailWind Layout 指南中的使用 SailWind Layout 生成的 ECO 文件进行前向注释。

    参见“正向注释结果”。

在 SailWind Logic 中生成 ECO 文件

使用“比较/ECO”对话框比较较新原理图和较旧 PCB 设计的网表,并创建 ECO(工程变更单)文件以导入 PCB 设计。您还可以创建差异报告文件。

🙊限制

  • 如果您是第一次通过发送网络表来创建新的 PCB,请参阅从 SailWind Logic 设计创建新的 PCB Layout。
  • 为避免在正向注释期间发生意外变化,请考虑在正向注释之前比较数据。
  • 传输未 ECO 注册的元件和非电气元件受到限制。有关详细信息,请参见“选项”对话框“设计类别”位于第 591 页中的覆盖设置。
  • 您无法将注释更改转发至 SailWind Router。SailWind Router 不导入 ECO 文件。
  • 在设计比较期间,将忽略重用定义,并使用物理设计重用中的实际元素进行比较。

先决条件

您必须从 SailWind Layout 导出 .asc 文件,并在 SailWind Logic 中打开原理图。

🏃‍♂️‍步骤

  1. 单击工具 > 比较/ECO 菜单项。

  2. 在比较/ECO 对话框中,单击第 505 页的文档选项卡。

  3. 在“要比较和更新的原始设计”区域中,浏览先前发送至 SailWind Layout 的网表 .asc 文件。(可选)您可以从 SailWind Layout 获取新的 Layout .asc 文件,以生成包含设计差异的 .eco 文件。

    TIP

    只要 PCB 设计未进行工程变更,就可以将 SailWind Logic 中最新的 .asc 文件与 SailWind Logic 中的当前设计进行比较,从而生成包含工程变更的 .eco 文件。如果上次导出的 .asc 文件丢失,您可以从 SailWind Layout 导出 .asc 文件,与当前原理图进行比较,生成 .eco 文件,然后导入 SailWind Layout 更新 PCB Layout。在 SailWind Layout 中生成 ECO 文件也能达到同样的效果,并且该过程通过自动导入 .eco 文件实现半自动化。

  4. 单击第 507 页的“比较”选项卡,然后选择要用于设计比较的选项。

  5. (可选)如果您想在创建 ECO 文件之前检查设计差异:

    a. 在“文档”选项卡中选中“生成差异报告”复选框。 b. 清除生成 ECO 文件复选框。 c. 点击“运行”。系统会比较网表和 PCB 文件,并将差异写入 \SailWind Projects 文件夹中的 Logic.rep 文件。要查看差异,请点击“进程状态”对话框中的“显示报告”。

  6. 选中生成 ECO 文件复选框,并验证 ECO 文件名。

    TIP

    为文件提供一个唯一的名称,以避免覆盖任何现有的 ECO 文件。

  7. 单击运行。

    输出文件写入 \SailWind Projects 文件夹。

    TIP

    除了上面列出的文件之外,比较过程中出现的消息或错误也会写入 \SailWind Projects 文件夹中的 Logic_Session.log 和 Logic.err。

  8. 将 ECO 文件发送给 Layout 设计师,以便导入 SailWind Layout。

    要继续此过程,请参阅 SailWind Layout 指南中的通过从 SailWind Logic 导入 ECO 文件进行前向注释。

    参见“正向注释结果”。

正向注释结果

正向注释过程会生成一组文件(即使在自动正向注释过程中也在后台生成)。这些文件包括 ECO 文件、差异报告、ASCII 网表文件以及(可选)错误报告。

表 40. 前向注释生成的文件

.eco ECO 文件。包含描述更新原始设计以匹配新设计所需更改的 ECO 命令。在“比较/ECO 工具文档”选项卡中选择“生成 ECO 文件”时生成。有关此文件的描述,请参见第 342 页上的“ECO 文件格式”。
Logic.rep 差异报告文件。描述“新旧”比较文件之间的差异。在“比较/ECO 工具文档”选项卡中选择“生成差异报告”时生成。有关此文件的描述,请参阅第 340 页上的“差异报告的内容”。
ecogtmp0.asc ecogtmp1.asc “旧”网表的临时副本和“新”网表的临时副本。
ecogtmp[ 0 1 ].错误

除了上面列出的文件外,比较过程中出现的消息或错误也会写入 \SailWind Projects 文件夹中的 logic_session.log 和 logic.err 文件。错误报告文件中报告了以下内容:

  • 库问题
  • 单针或零针网络
  • 完全浮动的连接或子网
  • 未命名的悬空连接(一端浮动)
  • 网络上使用的电源和接地符号的名称与符号上的默认名称不同
  • 多子网网络,其中一个或多个子网缺少页间连接符
  • 单子网网络,带有页间连接符(单独子网警告)
  • 用户命名的子网,没有可见的网络名称标签

SailWind Layout 到 SailWind Logic 的反向注释

您可以将 PCB Layout 更改“导出回”(称为反向注释)到原理图。您可以选择三种方法来反向注释设计更改。

您可以向后注释元件、门、管脚、网络和属性的更改。有关详细信息,请参阅向后注释结果。

  • 方法 1 — 如果您的计算机上同时安装了 SailWind Logic 和 SailWind Layout,则可以使用“自动后向注释流程”。虽然这种自动方法最简单、最快捷,但不建议使用,因为它会通过设计比较生成自己的 .eco 文件。为了获得最佳效果,您应该使用方法 2 在 SailWind Layout 中记录 .eco 文件,然后手动将其导入 SailWind Layout。更多信息,请参阅《SailWind Layout 指南》中的“记录的 ECO 文件与生成的 ECO 文件”部分。

  • 方法 2 — 如果 SailWind Layout 在另一台计算机上,并且您希望 Layout 设计人员生成 ECO 文件,请按照“在 SailWind Layout 中创建 ECO 文件”中的步骤操作。这是最准确的方法。您必须手动将 .eco 文件导入 SailWind Logic 设计中。

  • 方法 3 — 如果 SailWind Layout 位于另一台计算机上,并且您必须在 SailWind Logic 中比较设计并生成 ECO 文件,请按照“在 SailWind Logic 中创建 ECO 文件”中的步骤操作。由于您是通过设计比较来生成 .eco 文件,因此不建议使用此方法。为了获得最佳效果,您应该使用方法 2 在 SailWind Layout 中记录 .eco 文件,然后手动将其导入 SailWind Layout。有关更多信息,请参阅《SailWind Layout 指南》中的“记录的 ECO 文件与生成的 ECO 文件”部分。

自动反向注释过程 在 SailWind Layout 中创建 ECO 文件 在 SailWind Logic 中创建 ECO 文件

自动反向注释过程

如果 SailWind Logic 和 SailWind Layout 位于同一台计算机上,您可以使用 SailWind Layout Link 对话框将较新的 PCB 设计与较旧的原理图进行比较,并根据较新的 PCB 设计更新较旧的原理图。您还可以创建差异报告。

此方法会生成一个新的 .eco 文件,并且不使用已记录的 .eco 文件。将精确的更改记录到 .eco 文件中可获得最佳的反向注释结果。使用方法 2 可获得最佳结果。更多信息,请参阅《SailWind Layout 指南》中的“记录的 ECO 文件与生成的 ECO 文件”部分。

🙊限制

  • 传输未 ECO 注册的元件和非电气元件受到限制。有关详细信息,请参见位于第 591 页的“选项”对话框的“设计类别”。
  • 在设计比较期间,将忽略重用定义,并使用物理设计重用中的实际元素进行比较。
  • 您无法在 SailWind Logic 和 SailWind Router 之间执行向后注释,因为 SailWind Router 不导出 ECO 文件。

先决条件

您必须在 SailWind Logic 中打开旧的原理图,并在 SailWind Layout 中打开新的 PCB 设计。

🏃‍♂️‍步骤

  1. 在 SailWind Logic 中,单击工具 > SailWind Layout 菜单项以打开 SailWind Layout Link 对话框。

    TIP

    如果 SailWind Layout 未打开,则会显示“连接到 SailWind Layout”对话框。单击“打开”以在 SailWind Layout 中打开要注释的 PCB 设计。在“文件打开”对话框中,选择 .pcb 文件,然后单击“打开”。

  2. (可选)如果您想在更新之前检查设计差异,请单击第 614 页上的“设计”选项卡,然后单击“比较 PCB”按钮。

    比较两个版本,并将差异写入 \SailWind Projects 文件夹中的 Logic.rep 文件。要查看报告,请点击“输出窗口”中的 logic.rep 链接。

  3. 在第 620 页的“首选项”选项卡上,设置适当的选项。

  4. 在第 618 页的 ECO 名称选项卡上,设置适当的选项。

  5. 在“设计”选项卡上:位于第 614 页

    a. 如果需要,请选中比较设计规则和显示网络列表错误报告复选框。 b. 单击“ECO From PCB”按钮。

SailWind Layout 中创建 ECO 文件

使用 SailWind Layout 创建包含设计变更的 .eco 文件,然后将其导入 SailWind Logic 设计。这样您就可以将 SailWind Layout 中的更改同步到原理图。

此程序仅记录您对设计进行工程更改时生成的 .eco 文件,从而创建更改前后的记录。通过比较设计生成的 .eco 文件在电气上是正确的,但它无法为元件类型和连接方式相同的组件创建完美的前后记录。更多信息,请参阅《SailWind Layout 指南》中的“记录的 ECO 文件与生成的 ECO 文件”。

如果您忽略了记录 .eco 更改,而必须通过比较两个设计来生成 .eco 文件,请参阅 SailWind Layout 指南中的比较设计的两个版本。

🙊限制

  • 限制传输未 ECO 注册的元件和非电气元件。有关详细信息,请参见“选项”对话框,位于第 591 页的“设计类别”。

  • 在设计比较期间,将忽略重用定义,并使用物理设计重用中的实际元素进行比较。

  • 您无法在 SailWind Logic 和 SailWind Router 之间执行向后注释,因为 SailWind Router 不导出 ECO 文件。

🏃‍♂️‍步骤

  1. 将工程/网表变更记录在 .eco 文件中。更多详情,请参阅《SailWind Layout 指南》中的“记录 ECO 变更”。

  2. 在 SailWind Logic 中,单击工具 > 选项菜单项,然后单击设计类别。

  3. 适当设置“允许使用属性库中的空白值覆盖设计中的属性值”复选框,以允许或阻止使用库中的空白(“占位符”)值覆盖非空白属性值。

  4. 在 SailWind Logic 中打开您的设计后,单击 SailWind Logic 主页 > 导入菜单项。

  5. 在“文件导入”对话框中,在“文件类型:”列表中,选择“ECO 文件 (*.eco)”。

  6. 浏览并选择要导入的 ECO 文件。

  7. 单击“打开”。

    如果没有发生错误,则原理图会更新。如果发生错误,则原理图不会更新,错误信息以及指向 ECO 导入错误文件的链接将写入输出窗口。

在 SailWind Logic 中创建 ECO 文件

以 .asc 文件格式获取 Layout 设计,使用 SailWind Logic Compare/ECO 工具将其与原理图设计进行比较,然后将设计变更的 .eco 文件导入 SailWind Logic 原理图设计中。

此方法会生成一个新的 .eco 文件,并且不使用已记录的 .eco 文件。将精确的更改记录到 .eco 文件中可获得最佳的反向注释结果。使用方法 2 可获得最佳结果。更多信息,请参阅《SailWind Layout 指南》中的“记录的 ECO 文件与生成的 ECO 文件”部分。

🙊限制

传输未 ECO 注册的元件和非电气元件受到限制。有关详细信息,请参见位于第 591 页的“选项”对话框的“设计类别”。

  • 在设计比较期间,将忽略重用定义,并使用物理设计重用中的实际元素进行比较。
  • 您无法在 SailWind Logic 和 SailWind Router 之间执行向后注释,因为 SailWind Router 不导出 ECO 文件。

先决条件

您必须拥有从 SailWind Layout 导出的 .asc 文件。更多详情,请参阅 SailWind Layout 指南中的“导出 ASCII 文件”。

🏃‍♂️‍步骤

  1. 在 SailWind Logic 中,单击工具 > 选项菜单项,然后单击设计类别。

  2. 适当设置“允许使用属性库中的空白值覆盖设计中的属性值”复选框,以允许或阻止使用库中的空白(“占位符”)值覆盖非空白属性值。

  3. 在 SailWind Logic 中,单击工具 > 比较/ECO 菜单项。

  4. 在比较/ECO 对话框中,单击第 505 页的文档选项卡。

  5. 在要比较和更新的原始设计区域中,选中使用当前原理图设计复选框。

  6. 在“带有更改的新原理图设计”区域中,浏览从 SailWind Layout 导出的新 .asc 文件。

  7. 单击第 507 页的“比较”选项卡,然后选择要用于设计比较的选项。

  8. (可选)如果您想在创建 ECO 文件之前检查设计差异:a. 选中“文档”选项卡中的“生成差异报告”复选框。b. 清除“生成 ECO 文件”复选框。c. 点击“运行”。系统会比较网表和 PCB 文件,并将差异写入 \SailWind Projects 文件夹中的 Logic.rep 文件。要查看差异,请点击“流程状态”对话框中的“显示报告”。

  9. 选中生成 ECO 文件复选框,并验证 ECO 文件名。

    TIP

    提示:为文件指定一个唯一的名称,以避免覆盖任何现有的 ECO 文件。

  10. 单击运行。

    输出文件写入 \SailWind Projects 文件夹。

    TIP

    除了上面列出的文件之外,比较过程中出现的消息或错误也会写入 \SailWind Projects 文件夹中的 Logic_Session.log 和 Logic.err。

  11. 单击 SailWind Logic File > 导入菜单项。

  12. 在“文件导入”对话框中,在“文件类型:”列表中,选择“ECO 文件 (*.eco)”。

  13. 浏览并选择要导入的 ECO 文件。

  14. 单击“打开”。

    如果没有发生错误,则原理图会更新。如果发生错误,则原理图不会更新,错误信息以及指向 ECO 导入错误文件的链接将写入输出窗口。

后向注释结果

反向注释支持多个设计活动层级。您可以使用反向注释交换设计更新以及属性、元件、门电路、网络和管脚的更改。结果取决于您正在更新的设计对象数据类型。

属性级后向注释 元件级后向注释 门级后向注释 网络级后向注释 管脚级后向注释

属性级后向注释

如果在 SailWind Layout 中添加、删除或修改属性,则可以向后注释新的属性和已删除的属性。

新属性

  • 元件中的新属性会更新所有同类型的元件。如果属性名称不存在,则会添加该属性及其指定的值。
  • 如果该部分不存在,则会产生错误。
TIP

不支持的属性类型(例如网络或网络类)将被忽略。

删除属性

  • 删除某个元件类型的属性会删除设计中该类型所有元件的属性。
  • 如果元件或属性名称不存在,则会生成错误消息。
  • 如果属性命令指定的对象类型不支持通用属性,例如网络或网络类,则该属性命令将被忽略。

元件级后向注释

您可以向后注释添加的部分、更改的部分、删除的部分以及参考指示器名称。

添加元件

  • 创建新图页,并将所有新元件添加到该图页中。元件被放置在网格上,以便中等尺寸的元件不会重叠。不尝试避免较大元件的重叠。

  • 如果新添加元件的参考指示器已存在或者该元件不存在于库中,则会生成错误消息。

    TIP

    如果参考指示器已经存在,则该元件不会添加到原理图。

  • 如果元件包含信号管脚,则这些管脚将包含在添加管脚功能中。反向注释目前不支持信号管脚,因此会生成错误消息。

更换元件

  • 如果更改的元件是多门元件,则所有门都将更新为新的元件类型。

  • 如果设计或库中不存在新元件,或者门或管脚数不兼容,则会生成错误消息。

删除元件

  • 如果删除的元件是多门元件,则所有门都将被删除。
  • 如果元件仍然连接到网络或元件不存在,则会生成错误消息。

参考指示符名称

  • 如果被重命名的元件是多门元件,则所有门都会被更新。

  • 如果旧参考指示器不存在,则会生成错误消息。

门级后向注释

如果您在 SailWind Layout 中交换门以改善路线,则可以将交换的门反向注释到示意图中。

SailWind Logic 会在每个交换的门处创建一个页间连接符。如果门不存在,则会生成一条错误消息。

网络层后向注释

您可以向后注释已连接的网络、通过拆分现有网络创建的网络以及重命名的网络。

联合网络

  • 第一个网络被重命名为与第二个网络相同的名称。

通过分割现有网络创建的网络

  • 执行“从网络中删除管脚”操作将其从现有网络中删除,然后执行“将管脚添加到网络”操作将管脚添加到新网络。

重命名网络

  • 所有图页上旧网络的所有子网均已重命名。如果任何子网包含未指定网络名的电源或接地符号,则会将网络名添加到这些符号中。

  • 如果新网络已经存在,则会创建一条错误消息。

管脚级后向注释

您可以向后注释交换的管脚、添加到网络的管脚以及与网络断开的管脚。

交换管脚

  • SailWind Logic 在每个交换的管脚处创建一个页间连接符。

添加到网络的管脚

  • 仅当管脚尚未连接到其他网络时,才可以添加该管脚。如果该管脚是门极管脚(门极符号上可见的终端管脚),则会创建一个页间连接符。

  • 如果管脚已连接或管脚是已分配给网络的信号管脚,则会产生错误。

管脚与网络断开

  • 如果管脚是门极管脚,则当其连接到连接点或页间连接符时,连接将被删除。如果连接到另一个门极管脚,则连接将被断开,并添加页间连接符。

  • 如果管脚未连接到相关网络,此命令将生成错误消息。

差异报告的内容

当您比较设计的两个版本时(工具 > 比较/ECO),您可以创建一个输出文件,列出两个版本之间的差异。报告文件名为 Logic.rep,并写入 \SailWind Projects 文件夹。

表 41. 差异报告的各个部分

选项 描述
部分差异 报告的此部分包含新旧设计的参考标识符和元件类型。仅存在于旧设计中的元件在“新设计”列下列为 。仅存在于新设计中的元件在“旧设计”列下列为 。在两种设计中具有相同参考标识符和元件类型的元件不会列出。
净差异 本节将不存在的网络名称列在两列下:“新设计”和“旧设计”。它列出了在其中一个设计中不存在的网络名称。它还列出了匹配但名称不同的网络,包括旧设计中在新设计中被拆分成多个网络的网络。网络拆分操作显示为管脚差异。网络按字母顺序列在“旧设计”列下,但多个网络合并时则按顺序列出。旧设计中不存在的网络列在本节末尾。
旧设计中不匹配的网针 本节列出了旧设计中所有已连接的管脚,这些管脚缺失或连接到旧设计中的其他网络。这些管脚在工程变更指令 (ECO) 流程中会从网络中删除。此列表提供了旧设计中的网络名称,以及网络中不匹配的管脚。如果新设计中不存在该网络,则列出该网络中的所有管脚。
新设计中无与伦比的网针 本部分列出了新设计中所有已连接的管脚,这些管脚在旧设计中缺失或已连接到其他网络。这些管脚在工程变更指令 (ECO) 流程中添加到网络中。此列表提供了新设计中的网络名称,以及网络中未匹配的管脚。如果旧设计中不存在该网络,则列出该网络中的所有管脚。
属性差异 报告的此部分按以下标题列出每个对象:属性名称、旧值和新值。如果列表中每个对象的名称不同,则会显示子标题,包括对象类型、旧设计中的对象名称和新设计中的对象名称。仅包含新旧设计中均存在的对象的属性差异。如果任一设计中缺少某个属性,则该值将列为 <无属性>。如果该属性存在但没有值,则列为 <无值>。
规则差异 本节报告每个存在规则差异的对象或对象对。每个对象或对象对都有三列信息(对象类型、对象名称和规则类型),以及一个列出规则名称、旧值和新值的副标题。以下示例显示了网络 $$$1963 的高速规则变更,如果新旧设计中某个对象缺少规则集,则所有缺失规则条目的旧值或新值均列为 <无规则>。更改最大长度和最小阻抗规则。NET $$$1963 HIGH_SPEEDMAX_LENGTH 50000 20000MIN_IMPEDANCE 50.0 70.0
网络类差异 本部分报告以下网络类的名称:• 不存在于某个设计中。(原始设计中不存在的类会显示在本部分末尾。)• 匹配但名称不同
添加的类网络 本部分报告原始设计中不存在但添加到新设计中的网络。(新设计中的网络类包含原始设计中未包含的网络,或包含在原始设计的不同网络类中的网络。)本部分列出: • 新设计中添加了网络的每个网络类以及所添加网络的名称 • 如果网络类是新的(原始设计中不存在),则列出该网络类中的所有网络
已移除的类网络 本部分报告原始设计中存在但已从新设计中移除的网络。(原始设计中的网络类包含未包含在新设计中的网络,或包含在新设计中的不同网络类中的网络。)本部分列出: • 旧设计中已移除网络的每个网络类及其名称 • 如果新设计中不存在该网络类,则列出该网络类中的所有网络
管脚对组差异 本节列出了以下管脚对组:• 在其中一个设计中不存在。(原始设计中不存在的管脚对组显示在本节末尾。) • 匹配但名称不同。
已移除组管脚对 本部分报告原始设计中存在但从新设计中移除的管脚对。(原始设计中的管脚对组包含未包含在新设计中或包含在新设计的不同组中的管脚对。)本部分列出: • 旧设计中已移除管脚对的每个组及其移除管脚对的名称 • 如果新设计中不存在该组,则列出该组中的所有管脚对
已添加组管脚对 (新设计中的管脚对组包含原始设计中未包含或包含在原始设计不同组中的管脚对。)ECO 操作会添加这些管脚对。本节列出: • 新设计中添加的每个管脚对组及其名称 • 如果组是新建的(原始设计中不存在),则列出该组中的所有管脚对

ECO 文件格式

使用的格式类似于 PADS 格式的 ASCII。每种类型的数据都以一个标题行开头,标题行中包含一个关键字,关键字周围用星号 (^{\star}) 括起来。

该文件的第一行格式如下:

\*PADS-ECO\*

文件末尾(EOF)条目的格式如下:

*END

添加注释行,内容如下:

*REMARK* remark information etc.

以下是可用的 ECO 命令。

将管脚添加到网络

该命令以以下格式开始:

*NET*

指示添加管脚的网络的行紧接着此行:

*SIGNAL* netname 10

其中,netname 是要添加管脚的网络,10 是与连接关联的走线宽度。如果设计中当前不存在该网络名称,则会添加该网络名称。接下来是要添加到网络的管脚,如下所示:

ref1.pin1 ref2.pin2

添加元件

该命令的格式为:

*PART*

元件输入行的格式如下:

refdes parttype

其中 refdes 是元件参考名称,parttype 是元件类型名称。元件添加到 PCB 后,将放置在系统原点 0,0 处。如果存在电路板轮廓,则元件将放置在其框的左下角。

将两个网络连接在一起

该命令以以下格式开始:

*JOINNET

接下来的一行指示要加入的网络:

OLDNET0 OLDNET1

其中 OLDNET0 和 OLDNET1 是待合并网络的名称。合并后的新网络使用 OLDNET1 的名称。使用所选网络中的两个随机管脚在两个网络之间添加连接。添加连接的线宽与第一个网络 (OLDNET0) 中的连接线宽相同。

删除元件

该命令的格式为:

*DELPART

该行的格式如下:

refdes parttype

其中 refdes 是要删除的元件引用名称,parttype 是元件类型名称。如果待删除元件的所有管脚尚未与设计中的连接网络断开,则会报告错误。

从网络中删除管脚

该命令以以下格式开始:

*DELPIN

接下来是每个网络要删除的管脚列表,格式如下:

refdes.pinnumber signame

其中 refdes 是元件参考名称,pinnumber 是需要断开的管脚号,signame 是该管脚当前所属的网络。

更改组件的元件类型

该命令的格式为:

*CHGPART*

更改部分行的格式如下:

refdes oldparttype newparttype

其中 refdes 是要更改的元件的引用名称,oldparttype 是旧元件类型,newparttype 是新元件类型。

将一个网络拆分为两个网络

该命令以以下格式开始:

*SPLITNET* SPLIT NET INTO TWO NEW NETS

接下来的两行列出了新的信号名称和管脚:

*SIGNAL* oldsigname ref1.pin1 ref2.pin2 *SIGNAL* newsigname1 ref3.pin3 ref4.pin4

其中 *SIGNAL* 语句后面的管脚位于第一个网络中,而第二行后面的管脚位于第二个网络中。

重命名元件

该命令的格式为:

*RENPART

重命名行的格式如下:

oldrefdes newrefdes

其中 oldrefdes 是旧名称,newrefdes 是新名称。为了方便重命名操作,只有在读取所有重命名信息后才会运行重复名称检查。这使得上述重命名列表能够无冲突地运行。如果遇到任何错误,列表中的任何部分都不会被重命名。

重命名网络

该命令的格式为:

*RENNET* RENAME NET

重命名网络输入行的格式如下:

oldname newname

其中 oldname 是旧网络名称,newname 是新网络名称。

交换门

该命令的格式为:

*SWPGATE* GATE1 GATE2

交换管脚

该命令的格式为:

*SWPPINS* REFDES PIN1.PIN2