(2)ST1 ST1寄存器的定义如表 15-13121110987654321~0 ARB CNF TC SXM C 1111 XF 11 PM ARB,辅助寄存器指针缓冲器。当ARP被装载时,原先的ARP值被复制到ARB中。当LST指令装载 ARB时,相同的值也复制到ARP中 CNF位,片内 DARAM配置位。CNF=0,可配置的 DARAM映射到数据存储区,CNF=1,可 配置的 DARAM映射到程序存储区 TC位,测试/控制标志位。存储算术逻辑单元测试位操作的结果。在下列情况下,TC=1,用BIT或 BITT指令测试的某位为1:或用CMPR指令对当前辅助寄存器与AR0比较条件成立:或用NORM指 令对累加器最高的两位进行异或结果为真条件跳转、调用、返回指令可基于TC位的条件执行。BIT、 BITT、CMPR、LST、NORM等指令影响TC位 SXM位,符号扩展模式位。SXM决定是否进行扩展。SXM=0,禁止符号扩展:SⅩM=1,数据被ALU 使用之前进行符号扩展。SXM不影响某些指令,不管SXM为何值,ADDS和SUB指令时禁止符号扩 展。LST#1对SXM位进行加载,复位时SXM被置1 C位,进位位。加法运算产生进位时置1,减法运算产生借位时清0。除非执行带16位移位的ADD 和sUB指令,否则,加法运算没有进位时清0,减法运算没有借位时置1:移1位和循环指令也可影 响进位位C,以及SETC,CLRC,和LST指令也可影响C:条件转移、调用和返回指令可以根据C 的状态执行。复位时C是被置1。 XF位:XF状态位。指示XF引脚的状态。SETC指令可将XF置1,CLRC指令可将XF置0。由于改 变这一位的状态将改变XF引脚的电平,因此读者需要注意,如果需要在中断程序中设置XF的话,那 么在中断入口处对ST1寄存器的保护时需要对XF位进行特殊的处理 (3)辅助寄存器算术单元 该算术单元完全独立于中央算术逻辑单元。ARAU主要功能是在CALU操作的同时执行8个辅助寄存 器(ARO~AR7)中的算术运算 辅助寄存器提供了灵活而强大的间接寻址功能,使用其中任意一个寄存器提供的16位地址可以访问 64K字数据储存空间的任何单元。选择特定辅助寄存器,用指令把0~7写入辅助寄存器指针ARP(ST0 中)中,此时ARP所指的寄存器为当前辅助寄存器。当处理一条指令时,当前AR的内容用做访问数 据存储器的地址 1.2.2存储器及I/O空间 芯片具有192K字的可寻址存储器空间:64K字程序空间、64K字数据空间和64K字的I/O空间 它的设计以改进的哈佛结构为基础,存储空间由3组16位并行总线访问:程序地址总线(PAB)、 数据读地址总线(DRAB)、数据写地址总线(DWAB) (1) DARAM:分为三块,B0、B1、B2。在 DARAM中,允许CPU在一个周期内对其进行读和写。 B0块:根据CNF位决定该块配置为数据存储空间还是程序存储空间。 (2) SARAM:每一个 SARAM块在一个机器周期只能被访问一次:可映射为数据存储空间或程序存 储空间。 (3) FLASH:片上 FLASH被映射到程序存储空间。对于外部存储器扩展接口芯片复位时根据MP/MC 引脚决定是从片内还是片外执 1.2.3系统控制寄存器和中断向量 1.系统控制寄存器 (1)系统控制和状态寄存器1(sCsR1)-地址7018H 位15保留位 位14 CLKSRO。 CLKOUT引脚源选择位(2) ST1 ST1 寄 存 器的定义如表 15-13 12 11 10 9 8 7 6 5 4 3 2 1~0 ARB CNF TC SXM C 1 1 1 1 XF 1 1 PM ARB,辅 助 寄 存 器 指 针 缓 冲 器 。当 ARP 被 装 载 时 ,原 先 的 A RP 值被复制到 ARB 中 。当 LST 指令装载 ARB 时,相同的值也复制到 ARP 中 。 CNF 位,片内 DARAM 配置位。CNF=0,可配置的 DARAM 映射到数据存储区,CNF=1, 可 配置的 DARAM 映射到程序存储区。 TC 位,测试/控制标志位。存储算术逻辑单元测试位操作的结果。在下列情况下,TC=1, 用 BIT 或 BITT 指令测试的某位为 1;或 用 CMPR 指令对当前辅助寄存器与 AR0 比 较 条 件 成 立 ;或 用 NORM 指 令对累加器最高的两位进行异或结果为真条件跳转、调用、返回指令可基于 TC 位的条件执行。BIT、 BITT、CMPR、 LST、 NORM 等指令影响 TC 位 。 SXM 位 ,符 号 扩 展 模 式 位 。SXM 决定是否进行扩展。SXM=0,禁 止 符 号 扩 展 ;S XM=1,数 据 被 ALU 使用之前进行符号扩展。SXM 不 影 响 某 些 指 令 ,不 管 SXM 为何值,ADDS 和 SUB 指令时禁止符号扩 展 。 LST #1 对 SXM 位进行加载,复位时 SXM 被 置 1。 C 位,进位位。加法运算产生进位时置 1,减法运算产生借位时清 0。除非执行带 16 位移位的 ADD 和 SUB 指 令 ,否 则 ,加 法 运 算 没 有 进 位 时 清 0,减 法 运 算 没 有 借 位 时置 1;移 1 位和循环指令也可影 响进位位 C,以及 SETC, CLRC, 和 LST 指令也可影响 C;条件转移、调用和返回指令可以根据 C 的状态执行。复位时 C 是被置 1。 XF 位 :XF 状 态 位 。指 示 XF 引脚的状态。SETC 指令可将 XF 置 1,CLRC 指令可将 XF 置 0。由 于 改 变这一位的状态将改变 XF 引 脚 的 电 平 ,因 此 读 者 需 要 注 意 ,如 果 需 要 在 中 断 程 序 中 设 置 XF 的 话 ,那 么在中断入口处对 ST1 寄存器的保护时需要对 XF 位进行特殊的处理。 ( 3)辅助寄存器算术单元 该算术单元完全独立于中央算术逻辑单元。ARAU 主要功能是在 CALU 操作的同时执行 8 个辅助寄存 器 ( AR0~AR7)中的算术运算。 辅助寄存器提供了灵活而强大的间接寻址功能,使用其中任意一个寄存器提供的 16 位地址可以访问 64K 字 数 据 储 存 空 间 的 任 何 单 元 。选 择 特 定 辅 助 寄 存 器 ,用 指 令 把 0~7 写入辅助寄存器指针 ARP(ST0 中)中,此时 ARP 所指的寄存器为当前辅助寄存器。当处理一条指令时,当前 AR 的内容用做访问数 据存储器的地址。 1 .2 .2 存储器及 I/O 空 间 芯片具有 192K 字的可寻址存储器空间:64K 字程序空间、 64K 字数据空间和 64K 字 的 I/O 空间。 它的设计以改进的哈佛结构为基础,存储空间由 3 组 16 位并行总线访问:程序地址总线(PAB) 、 数据读地址总线(DRAB)、数据写地址总线(DWAB) 。 ( 1) DARAM:分为三块,B0、 B1、B2。 在 DARAM 中,允许 CPU 在一个周期内对其进行读和写。 B0 块:根据 CNF 位决定该块配置为数据存储空间还是程序存储空间。 ( 2) SARAM:每一个 SARAM 块在一个机器周期只能被访问一次;可映射为数据存储空间或程序存 储 空间。 ( 3)FLASH:片 上 FLASH 被 映 射 到 程 序 存 储 空 间 。对 于 外 部 存 储 器 扩 展 接 口 芯 片 复 位 时 根据 MP/MC 引脚决定是从片内还是片外执行。 1 .2 .3 系统控制寄存器和中断向量 1 . 系统控制寄存器 ( 1)系统控制和状态寄存器 1( SCSR1) -地 址 7018H 位 15 保留位 位 14 CLKSRC。 CLKOUT 引脚源选择位