1999 微芯 技术 公司 ds30561b-页 7
PIC12C67X
3.0 architectural overview
这 高 效能 的 这 pic12c67x 家族 能 是
attributed 至 一个 号码 的 architectural 特性 com-
monly 建立 在 risc 微处理器. 至 begin 和,
这 pic12c67x 使用 一个 harvard architecture, 在 这个
程序 和 数据 是 accessed 从 独立的 memo-
ries 使用 独立的 buses. 这个 改进 带宽
在 传统的 von neumann architecture 在 这个 pro-
gram 和 数据 是 fetched 从 这 一样 记忆
使用 这 一样 总线. separating 程序 和 数据
buses 也 准许 说明 至 是 sized differently 比
这 8-位 宽 数据 文字. 操作指南 opcodes 是 14-
位 宽 制造 它 可能 至 有 所有 单独的 文字
说明. 一个 14-位 宽 程序 memory 进入
总线 fetches 一个 14-位 操作指南 在 一个 单独的 操作指南
循环. 一个 二-平台 pipeline overlaps fetch 和 execu-
tion 的 说明 (例子 3-1). consequently, 所有
说明 (35) execute 在 一个 单独的 循环 (400 ns @ 10
mhz) 除了 为 程序 分支.
这 表格 在下 lists 程序 记忆 (非易失存储器), 数据
记忆 (内存), 和 非-易变的 记忆 (可擦可编程只读存储器)
为 各自 pic12c67x 设备.
设备
程序
记忆
内存 数据
记忆
可擦可编程只读存储器
数据
记忆
PIC12C671 1k x 14 128 x 8
—
PIC12C672 2k x 14 128 x 8 —
PIC12CE673 1k x 14 128 x 8 16x8
PIC12CE674 2k x 14 128 x 8 16x8
这 pic12c67x 能 直接地 或者 indirectly 地址 它的
寄存器 files 或者 数据 记忆. 所有 特定的 函数 regis-
ters, 包含 这 程序 计数器, 是 编排 在 这
数据 记忆. 这 pic12c67x 有 一个 orthogonal
(对称的) 操作指南 设置 那 制造 它 可能 至
carry 输出 任何 运作 在 任何 寄存器 使用 任何
寻址 模式. 这个 对称的 nature 和 lack 的
‘special 最优的 situations’ 制造 程序编制 和 这
pic12c67x 简单的 还 效率高的. 在 增加, 这 学习-
ing 曲线 是 减少 significantly.
pic12c67x 设备 包含 一个 8-位 alu 和 working
寄存器. 这 alu 是 一个 一般 目的 arithmetic 单位.
它 执行 arithmetic 和 boolean 功能 在
这 数据 在 这 working 寄存器 和 任何 寄存器 文件.
这 alu 是 8-位 宽 和 有能力 的 增加, sub-
traction, 变换 和 logical 行动. 除非 否则
提到, arithmetic 行动 是 二's comple-
ment 在 nature. 在 二-operand 说明, 典型地
一个 operand 是 这 working 寄存器 (w 寄存器). 这
其它 operand 是 一个 文件 寄存器 或者 一个 立即的 con-
stant. 在 单独的 operand 说明, 这 operand 是
也 这 w 寄存器 或者 一个 文件 寄存器.
这 w 寄存器 是 一个 8-位 working 寄存器 使用 为 alu
行动. 它 是 不 一个 addressable 寄存器.
取决于 在 这 操作指南 executed, 这 alu 将
影响 这 值 的 这 carry (c), 数字 carry (直流), 和
零 (z) 位 在 这 状态 寄存器. 这 c 和 直流 位
运作 作 一个 borrow
位 和 一个 数字borrow输出 位,
各自, 在 subtraction. 看 这
SUBLW
和
SUBWF
说明 为 examples.