DSP寻址方式

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

16位SP+dmad
高9位
低7位
20
3.1.4 直接寻址
21
3.1.4 直接寻址
LD #4,DP ;指向页4(0200h-027Fh) ADD @9h,A ;将数据页4中地址9h的
数据加给AccA
直接寻址标识: ① 变量前加@,如@x; ② 在偏移量前加@,如@5。
22
3.1.4 直接寻址
数据存储器存储数据如图所示,采用数据页指 针DP直接寻址,完成x,y单元的两个数据求和。
9
3.1.2 绝对寻址
1.数据存储器寻址
用于确定操作数存于数据存储单元的地址。 语法:使用一个标号或一个数字来指定数据 空间的一个地址。
MVKD EXAM1, * AR5
数据存储器的 16位地址dmad值
10
3.1.2 绝对寻址
2.程序存储器寻址
用于确定程序存储器中的一个地址。 语法:使用一个符号或具体的数字来指定程 序空间的一个地址。
与指令中包含的数据存储器低7位地址dmad 拼接或相加构成;
② 可单周期寻址128个单元;
用途:寻址速度快,用于速度关键的场合。 注意: ① 上述两种直接寻址方式是相互排斥的; ② 采用DP寻址时,要注意数据所在的页面指针
操作码
7
I=0
6~0
dmad
页指针DP (位于ST0中)
9位数据页指针DP
16位数据
存储器地址 9位数据页指针DP dmad
高9位
低7位
19
3.1.4 直接寻址
地址形成过程:
当CPL=1时,
直接寻址 指令
15~8
操作码
7
I=0
6~0
dmad
堆栈指针SP
16位堆栈指针SP
SP+dmad
dmad
16位数据 存储器地址
语法:允许所有使用单数据存储器(Smem)寻 址的指令去访问数据空间的任意单元,而不改 变DP的值,也不用对AR进行初始化。
LD *(PN), A
注意:*(1k)寻址的指令不能与循环指令(RPT,RPTZ)一起使用。
13
3.1 寻址方式
1 立即寻址 2 绝对寻址 3 累加器寻址 4 直接寻址 5 间接寻址 6 存储器映像寄存器寻址 7 堆栈寻址
Ymem
16位双寻址操作数,用于双操作数指令,从CB数据 总线上读取
dmad 16位立即数:数据存储器地址(0~65 535)
pmad 16位立即数:程序存储器地址(0~65 535)
PA
16位立即数:I/O口地址(0~65 535)
src
源累加器(A或B)
Βιβλιοθήκη Baidu
dst
目的累加器(A或B)
1k
16位长立即数
数据存储器
地址 数据
第 0180 0001
3

...
...
X: 01FF 1000
第 y: 0200 0500
4

...
...
RSBX CPL LD #3, DP LD @x, A ALDD#4@,Dy,P A
ADD @y, A
23
3.1.4 直接寻址
直接寻址特点: ① 数据存 储器的 16位 地 址 是 由 DP或 SP
17
3.1.4 直接寻址
基地①址:数据页指针DP(9位) ② 堆栈指针SP。
当CPL=0时,数据存储器16位地址由DP和 偏移地址dmad拼接构成;
当CPL=1时,数据存储器16位地址由SP加偏 移地址dmad相加构成。
18
3.1.4 直接寻址
地址形成过程:
当CPL=0时,
直接寻址 指令
15~8
2
3.1 寻址方式
寻址方式分为数据寻址和程序寻址两种。
1 立即寻址 2 绝对寻址 3 累加器寻址 4 直接寻址 5 间接寻址 6 存储器映像寄存器寻址 7 堆栈寻址
3
3.1.1 立即寻址
ADD #1234h,A ;将立即数1234h加载到A
程序存储器 操作码
立即数1234h
4
3.1.1 立即寻址
MVPD TABLE, * AR2
程序存储器的 16位地址pmad值
11
3.1.2 绝对寻址
3.端口(PA)寻址
用一个符号或数字来确定外部I/O端口的地址。
PORTR FIFO, * AR5
I/O端口地址PA
12
3.1.2 绝对寻址
4. *(lk)寻址
使用一个指定数据空间的地址来确定数据存 储器中的一个地址。
第3章 TMS320C54x的指令系统
3.1 寻址方式 3.2 TMS320C54x的指令表示方法 3.3 TMS320C54x的指令系统
1
3.1 寻址方式
部缩分略寻语址寻址指令中用含到的缩义写符号及其含义
Smem 16位单寻址操作数
Xmem
16位双寻址操作数,用于双操作数或部分单操作数 指令,从DB数据总线上读取
14
3.1.3 累加器寻址
将累加器的内容作为地址去访问程序存 储单元 用途:用于完成程序存储空间与数据存 储空间之间的数据传输。
READA Smem WRITA Smem
15
3.1 寻址方式
1 立即寻址 2 绝对寻址 3 累加器寻址 4 直接寻址 5 间接寻址 6 存储器映像寄存器寻址 7 堆栈寻址
16
3.1.4 直接寻址
利用数据指针DP和堆栈指针SP寻址。
15 ~ 8
7
指令格式
6 ~0
操 作 码 I = 0 数据存储器地址(dmad)
特点:① 指令中只含有数据存储器的低7位 地指址令的(偏8位移操地作址指码d令m的ad标);识符 数据存储器地址
② 表16示位指数令据为存直储包接含器寻了址地数址据由存基储地器偏址移(数地据址页 指 针 DP 或 堆 栈 指 针 SP) 和 偏 移 地 址 (dmad)共同构成。
RPT #99 ;将下一条指令循环100次
ADD #0ffh,A ;将0ffh加给A
5
3.1.1 立即寻址
特点:指令中含有一个固定的立即数 ,运行速度较快,但需占用程序存储空 间,并且数值不能改变。
用途:用于表示常数或对寄存器初始化
6
3.1 寻址方式
1 立即寻址 2 绝对寻址 3 累加器寻址 4 直接寻址 5 间接寻址 6 存储器映象寄存器寻址 7 堆栈寻址
7
3.1.2 绝对寻址
指令中含有所要寻找的操作数的16位存 储单元地址。
MVKD TABLE,*AR1
特点:指令中包含一个固定的16位地址,能 寻址任何一个数据存储单元中的操作数,但运 行速度慢并要求较多的存储空间。
用途:用于对寻址速度无苛刻要求的地方
8
3.1.2 绝对寻址
绝对地址寻址的指令至少应为2个字长。 绝对寻址有四种类型 : ① 数据存储器(dmad)寻址; ② 程序存储器(pmad)寻址; ③ 端口(PA)寻址; ④ *(1k)寻址。
相关文档
最新文档