ispEXPERT System 培 训 教 材
上 海 莱 迪 思 半 导 体 公 司 市 场 部
一 九 九 九 年 二 月
PAGE 1
第 一 节 ispEXPERT 简 介
运 用 大 规 模、 超 大 规 模 可 编 程 逻 辑 器 件 与 电 子 设 计 自 动 化 (EDA) 技
术 是 现 代 数 字 电 子 技 术 发 展 的 潮 流, 将 其 引 入 高 校 教 学、 科 研、 研 究
所、 电 子 产 品 生 产 企 业 势 在 必 行。 美 国 Lattice 半 导 体 公 司 推 出 的 ISP 技
术 为 电 子 系 统 设 计 提 供 了 功 能 完 善 的 设 计 手 段, 特 别 适 合 教 学、 科 研
和 产 品 开 发。
ISP 技 术 使 用 户 能 够 在 无 需 从 电 路 板 上 拆 下 芯 片 的 情 况 下, 改 变 芯
片 的 逻 辑 内 容。 这 种 技 术 能 大 大 缩 短 电 子 系 统 设 计 周 期, 简 化 生 产 流
程, 降 低 生 产 成 本, 并 可 在 现 场 对 系 统 进 行 逻 辑 重 构 和 升 级 。 ISP 技 术
的 发 明, 使 硬 件 随 时 能 够 改 变 组 态, 实 现 了 硬 件 设 计 软 件 化, 革 命 性
地 改 变 了 电 子 系 统 设 计 的 传 统 概 念 和 方 法。
最 近 Lattice 公 司 又 推 出 了 新 的 名 为 ispEXPERT 的 数 字 系 统 设 计 软 件,
它 是 一 套 完 整 的 EDA 软 件。 设 计 输 入 可 采 用 原 理 图、 硬 件 描 述 语 言、
混 合 输 入 三 种 方 式。 能 对 所 设 计 的 数 字 电 子 系 统 进 行 功 能 仿 真 和 时 序
仿 真。ispEXPERT 编 译 器 是 此 软 件 的 核 心, 能 进 行 逻 辑 优 化, 将 逻 辑 映
射 到 器 件 中 去, 自 动 完 成 布 局 与 布 线 并 生 成 编 程 所 需 要 的 熔 丝 图 文
件。 软 件支 持 所 有 Lattice 公 司 的 ispLSI 器 件。
软 件 主 要 特 征:
1 输 入 方 式
* 原 理 图 输 入
* ABEL-HDL 输 入
* VHDL 输 入
* Verilog-HDL 输 入
2. 逻 辑 模 拟
* 功 能 模 拟
* 时 序 模 拟
* 静 态 时 序 分 析
3. 编 译 器
* 结 构 综 合、 映 射、 自 动 布 局 和 布 线
4. 支 持 的 器 件
* 含 有 宏 库,有 500 个宏 元 件 可 供 调 用
* 支 持 所 有 ISP 器 件
5. 下 载 软 件
*
ISP 菊 花 链 下 载 软 件
PAGE 2
第 二 节
ISP Expert System 的 原 理
图 输 入
I.
启 动 isp Expert System ( 按 Start=>Programs=>Lattice
Semiconductor=>ispEXPERT System 菜 单)
II. 创 建 一 个 新 的 设 计 项 目
A.
B.
C.
D.
选 择 菜 单 File。
选 择 New Project...。
键 入 项 目 名 c:\examples\demo.syn。
你 可 以 看 到 默 认 的 项 目 名 和 器 件 型 号: Untitled and
ispLSI1032E-125LT100。
III. 项 目 命 名
A.
B.
用 鼠 标 双 击 Untitled。
在 Title 文 本 框 中 输 入“Demo Project”, 并 选 OK。
IV. 选 择 器 件
A.
B.
C.
双 击 ispLSI1032E-125LT100, 你 会 看 到 Choose Device 对 话 框
( 如 下 图 所 示)。
在 Choose Device 窗 口 中 选 择 ispLSI1000 项。
按 动 器 件 目 录 中 的 滚 动 条, 直 到 找 到 并 选 中 器 件
ispLSI 1032E-70LJ84。
PAGE 3
D.
揿 OK 按 钮, 选 择 这 个 器 件。
V.
在 设 计 中 增 加 源 文 件
一 个 设 计 项 目 由 一 个 或 多 个 源 文 件 组 成。 这 些 源 文
件 可 以 是 原 理 图 文 件 (*.sch)、ABEL HDL 文 件(*.abl)、 VHDL 设 计 文
件(*.vhd)、Verilog HDL 设 计 文 件(*.v)、测 试 向 量 文 件 (*.abv) 或 者
是 文 字 文 件 (*.doc, *.wri, *.txt)。 在 以 下 操 作 步 骤 中, 你 要 在
设 计 项 目 中 添 加 一 张 空 白 的 原 理 图 纸。
A.
B.
C.
D.
E.
从 菜 单 上 选 择 Source 项。
选 择 New... 。
在 对 话 框 中, 选 择 Schematic ( 原 理 图), 并 按 OK。
选 择 路 径: c:\ examples 并 输 入 文 件 名 demo.sch。
确 认 后 揿 OK。
VI. 原 理 图 输 入
你 现 在 应 该 进 入 原 理 图 编 辑 器。 在 下 面 的 步 骤 中,
你 将 要 在 原 理 图 中 画 上 几 个 元 件 符 号, 并 用 引 线 将 它 们 相
互 连 接 起 来。
A.
从 菜 单 栏 选 择 Add , 然 后 选 择 Symbol, 你 会 看 到 如 下 图
所 示 的 对 话 框:
PAGE 4
B.
C.
D.
E.
F.
G.
H.
I.
J.
K.
L.
选 择 GATES.LIB 库, 然 后 选 择 G_2AND 元 件 符 号。
将 鼠 标 移 回 到 原 理 图 纸 上, 注 意 此 刻 AND 门 粘 连 在 你
的 光 标 上, 并 随 之 移 动。
单 击 鼠 标 左 键, 将 符 号 放 置 在 合 适 的 位 置。
再 在 第 一 个 AND 门 下 面 放 置 另 外 一 个 AND 门。
将 鼠 标 移 回 到 元 件 库 的 对 话 框, 并 选 择 G_2OR 元 件。
将 OR 门 放 置 在 两 个 AND 门 的 右 边。
现 在 选 择 Add 菜 单 中 的 Wire 项。
单 击 上 面 一 个 AND 门 的 输 出 引 脚, 并 开 始 画 引 线。
随 后 每 次 单 击 鼠 标, 便 可 弯 折 引 线 ( 双 击 便 终 止 连
线)。
将 引 线 连 到 OR 门 的 一 个 输 入 脚。
重 复 上 述 步 骤, 连 接 下 面 一 个 AND 门。
VII. 添 加 更 多 的 元 件 符 号 和 连 线
A.
B.
采 用 上 述 步 骤, 从 REGS.LIB 库 中 选 一 个 g_d 寄 存 器, 并
从 IOPADS.LIB 库 中 选 择 G_OUTPUT 符 号。
将 它 们 互 相 连 接, 实 现 如 下 的 原 理 图:
VIII. 完 成 你 的 设 计
在 这 一 节, 通 过 为 连 线 命 名 和 标 注 I/O Markers 来 完 成
原 理 图。
PAGE 5
当 要 为 连 线 加 信 号 名 称 时, 你 可 以 使 用 Synario 的 特 点, 同
时 完 成 两 件 事 ----- 同 时 添 加 连 线 和 连 线 的 信 号 名 称。 这 是
一 个 很 有 用 的 特 点, 可 以 节 省 设 计 时 间。 I/O Markers 是 特 殊
的 元 件 符 号, 它 指 明 了 进 入 或 离 开 这 张 原 理 图 的 信 号 名
称。 注 意 连 线 不 能 被 悬 空 (dangling), 它 们 必 需 连 接 到 I/O
Marker 或 逻 辑 符 号 上。 这 些 标 记 采 用 与 之 相 连 的 连 线 的 名
字, 与 I/O Pad 符 号 不 同, 将 在 下 面 定 义 属 性 (Add Attributes) 的
步 骤 中 详 细 解 释。
A.
B.
为 了 完 成 这 个 设 计, 选 择 Add 菜 单 中 的 Net Name 项。
屏 幕 底 下 的 状 态 栏 将 要 提 示 你 输 入 的 连 线 名, 输 入‘A’
并 按 Enter 键, 连 线 名 会 粘 连 在 鼠 标 的 光 标 上。
C.
将 光 标 移 到 最 上 面 的 与 门 输 入 端, 并 在 引 线 的 末 连
接 端( 也 即 输 入 脚 左 端 的 红 色 方 块), 按 鼠 标 左 键, 并 向
左 边 拖 动 鼠 标。 这 可 以 在 放 置 连 线 名 称 的 同 时, 画 出
一 根 输 入 连 线。
D.
E.
F.
G.
H.
I.
J.
K.
输 入 信 号 名 称 现 在 应 该 是 加 注 到 引 线 的 末 端。
重 复 这 一 步 骤, 直 至 加 上 全 部 的 输 入 ‘B’,’C’,’D’ 和 ‘CK’,
以 及 输 出 ‘OUT’。
现 在 现 在 Add 菜 单 的 I/O Marker 项。
将 会 出 现 一 个 对 话 框, 请 选 择 Input。
将 鼠 标 的 光 标 移 至 输 入 连 线 的 末 端 ( 位 于 连 线 和 连 线 名 之 间),
并 单 击 鼠 标 的 左 键。 这 时 回 出 现 一 个 输 入 I/O Marker, 标 记 里 面 是
连 线 名。
鼠 标 移 至 下 一 个 输 入, 重 复 上 述 步 骤, 直 至 所 有 的 输
入 都 有 I/O Marker。
现 在 请 在 对 话 框 中 选 择 Output, 然 后 单 击 输 出 连 线
端, 加 上 一 个 输 出 I/O Marker。
至 此 原 理 图 就 基 本 完 成, 它 应 该 如 下 图 所 示。
IX.
定 义 pLSI/ispLSI 器 件 的 属 性 (Attributes)
你 可 以 为 任 何 一 个 元 件 符 号 或 连 线 定 义 属 性。 在 这
个 例 子 中, 你 可 以 为 输 出 端 口 符 号 添 加 引 脚 锁 定 LOCK 的 属
性。 请 注 意, 在 ispEXPERT 中, 引 脚 的 属 性 实 际 上 是 加 到 I/O Pad
符 号 上, 而 不 是 加 到 I/O Marker 上。 同 时 也 请 注 意, 只 有 当 你
需 要 为 一 个 引 脚 增 加 属
性 时, 才 需 要 I/O Pad 符 号, 否
PAGE 6
则, 你 只 需 要 一 个 I/O Marker.
A.
在 菜 单 条 上 选 择 Edit => Attribute => Symbol Attribute 项, 这
时 会 出 现 一 个 Symbol Attribute Editor 对 话 框。
B.
C.
单 击 需 要 定 义 属 性 的 输 出 I/O Pad.
对 话 框 里 会 出 现 一 系 列 可 供 选 择 的 属 性。
D.
E.
F.
选 择 Synario Pin 属 性, 并 且 把 文 本 框 中 的 ‘*’ 替 换 成‘4’.
关 闭 对 话 框。
请 注 意, 此 时 数 字 ‘4’ 出 现 在 I/O Pad 符 号 内。
X.
保 存 以 完 成 的 设 计
a) 从 菜 单 条 上 选 择 File, 并 选 Save 命 令。
b) 再 次 选 File, 并 选 Exit 命 令。
PAGE 7
第 三 节
设 计 的 编 译 与 仿 真
I.
建 立 仿 真 测 试 向 量 ( Simulation Test Vectors)
A.
B.
C.
D.
E.
F.
G.
H.
在 已 选 择 ispLSI1032E-70LJ84 器 件 的 情 况 下, 选 择 Source
菜 单 中 的 New... 命 令。
在 对 话 框 中, 选 择 ABEL Test Vectors 并 按 OK。
输 入 文 件 名 demo.abv 作 为 你 的 测 试 向 量 文 件 名。
按 OK。
module demo;
c,x = .c.,.x.;
CK,A,B,C,D,OUT
PIN;
TEST_VECTORS
([CK,
>[OUT])
A,
[
c
,
0 ]->[ x ];
[
c
,
0 ]->[ x ];
[
c
,
0 ]->[ x ];
[
c
,
1 ]->[ x ];
0
0
1
0
END
B,
C,
D]-
, 0 ,
0 ,
, 0 ,
1 ,
, 1 ,
0 ,
, 1 ,
0 ,
文 本 编 辑 器 弹 出 后, 输 入 下 列 测 试 向 量 文 本:
完 成 后, 选 择 File 菜 单 中 的 Save 命 令, 以 保 留 你 的 测
试 向 量 文 件。
再 次 选 择 File, 并 选 Exit 命 令。
此 时 你 的 项 目 管 理 器 (Project Navigator) 应 如 下 图 所
示。
PAGE 8