61580 RT控制

寄存器

有几个关键的寄存器:
在这里插入图片描述
中断屏蔽寄存器,主要用EOM估计就够了。
在这里插入图片描述

CFG1寄存器,配置BC或RT模式,使用区域A还是区域B。
在这里插入图片描述

CFG2寄存器,需要设置是否使用增强模式。
在这里插入图片描述
启动复位寄存器,需要设置复位比特。
在这里插入图片描述

命令栈指针:这个是干嘛的?
在这里插入图片描述
RT字地址控制字:3比特是控制环形缓冲区大小
在这里插入图片描述

RT内存映射

在这里插入图片描述

RT支持128字的查找表,32字用于发送子地址,32字用于接收子地址,32字一般用不到,32字用于针对每个SA设置子地址控制字。
Besides supporting a global double buffering scheme (as in BC
mode), the ACE RT provides a pair of 128-word Lookup Tables
for memory management control. They are programmable on a
subaddress basis (refer to TABLE 27). These 128-word tables
include 32-word tables for transmit message pointers and
receive message pointers.
The fourth section of each of the RT Lookup Tables stores the 32
Subaddress Control Words (refer to TABLE 9 and 28). The indi
vidual Subaddress Control Words may be used to select the RT
memory management option and interrupt scheme for each
transmit, receive, and (optionally) broadcast subaddress.
发送支持两种内存管理机制:单消息、环形缓冲;
接收支持三种内存管理机制:单消息、双缓冲(似乎用的是Area A B)、环形缓冲;
中断支持两种产生:每个消息后、每次环形缓冲回卷。
环形缓冲大小支持128字到8192字。
For each transmit subaddress, there are two possible memory
management schemes: (1) single message; and (2) circular buf
fer. For each receive (and optionally broadcast) subaddress,
there are three possible memory management schemes: (1)
single message; (2) double buffered; and (3) circular buffer. For
each transmit, receive and broadcast subaddress, there are two
interrupt conditions that are programmable by the respective
Subaddress Control Word: (1) after every message to the subad
dress; (2) after a circular buffer rollover. An additional table in
RAM may be used to enable interrupts following selected mode
code messages.
When using the circular buffer scheme for a given subaddress,
the size of the circular buffer is programmable by three bits of the
Subaddress Control Word (see TABLE 28). The options for circu
lar buffer size are 128, 256, 512, 1024, 2048, 4096, and 8192
Data Words.

下图是一个典型的RT内存映射,内存就是那4K字的内存(寄存器和内存如何访问呢?)。
栈A是00-FF,共256字空间(栈里存储的是什么呢?消息描述符?)。0100的位置存储的是什么呢?栈A的起始地址0?
查找表A和B代表区域A和B的?使用循环缓冲时才会用到查找表。查找表中分四个区域,32字用于发送子地址,32字用于接收子地址,32字不关心,32字用于针对每个SA设置子地址控制字。
在这里插入图片描述
在这里插入图片描述

传输过程

单消息过程,比如接收。先查询AB区用哪个区,这个区里会有消息描述符栈?消息描述符栈中包含4字信息,其中第4字是消息块地址,应该指向的是那101的数据块(Data Block 0-100,一个Data Block 32字为一个总线消息)。
在这里插入图片描述

循环缓冲过程,比如接收。先查询AB区用哪个区,这个区里会有消息描述符栈?消息描述符栈中包含4字信息,其中第3字是数据块指针,这个不是直接指向数据块了?而是指向的查找表,而查找表里才指向数据块?
在这里插入图片描述

栈区分为两个:AB。大小可配置,典型为256字。最大2048的原因推测(数据块5-数据块100为连续区域,范围400-FFF,大小3072字,因此,栈空间最大不能到4096,只能2048)
At the beginning and end of each message, the BU-65170/61580
RT stores a four-word message descriptor in the active area
stack. The RT stack size is programmable, with choices of 256,
512, 1024, and 2048 words.

每个消息的起始和结束,61580存储一个4字消息描述符(块状态字、时标字、数据块指针、接收命令字)到当前活动栈区中。假设栈空间256字,则可以最多存储64个消息描述符(消息描述符如何回收呢?)。
DESCRIPTOR STACK
At the beginning and end of each message, the BU-65170/61580
RT stores a four-word message descriptor in the active area
stack. The RT stack size is programmable, with choices of 256,
512, 1024, and 2048 words. FIGURES 5, 6 and 7 show the four
words: Block Status Word, Time Tag Word, Data Block Pointer,
and the 1553 received Command Word.
消息描述符第3字为数据块指针,表示当前消息存储数据块集合的起始数据块。
The ACE stores the contents of the accessed Lookup Table loca
tion for the current message, indicating the starting location of
the Data Word block, as the Data Block Pointer. This serves as a
convenience in locating stored message data blocks.

环形缓冲区最大8192字,怎么来的?
初始,主机加载查找表表项(指向消息使用数据块集合的起始或其它)。消息发送前,芯片将查找表表项存储在消息描述符第3字中。发送数据起始为查找表表项指向的数据块,接收数据起始为查找表表项指向的数据块。
CIRCULAR BUFFER MODE
FIGURE 6 illustrates the RT circular buffer memory management
scheme. The circular buffer mode facilitates bulk data transfers.
The size of the RT circular buffer, shown on the right side of the
figure, is programmable from 128 to 8192 words (in even powers
of 2) by the respective Subaddress Control Word. As in the single
message mode, the host processor initially loads the individual
Lookup Table entries. At the start of each message, the ACE
stores the Lookup Table entry in the third position of the respec
tive message block descriptor in the stack area of RAM, as in the
Single Message mode. The ACE transfers Receive or Transmit
Data Words to (from) the circular buffer, starting at the location
referenced by the Lookup Table pointer.

At the end of a valid (or optionally invalid) message, the value of
the Lookup Table entry updates to the next location after the last
address accessed for the current message. As a result, Data
Words for the next message directed to the same Tx/RX(/Bcst)
subaddress will be accessed from the next contiguous block of
address locations within the circular buffer. As a recommended option, the Lookup Table pointers may be programmed to not
update following an invalid receive (or broadcast) message. This
allows the 1553 bus controller to retry the failed message, result
ing in the valid (retried) data overwriting the invalid data. This
eliminates overhead for the RT’s host processor. When the
pointer reaches the lower boundary of the circular buffer (located
at 128, 256, . . . 8192-word boundaries in the BU-65170/61580
address space), the pointer moves to the top boundary of the
circular buffer
, as FIGURE 6 shows.

最后一句啥意思?查找表不是应该指向起始吗?
Implementing Bulk Data Transfers
The use of the Circular Buffer scheme is ideal for bulk data trans
fers; that is, multiple messages to/from the same subaddress.
The recommendation for such applications is to enable the circu
lar buffer interrupt request. By so doing, the routine transfer of
multiple messages to the selected subaddress, including errors
and retries, is transparent to the RT’s host processor. By strate
gically initializing the subaddresses’ Lookup Table pointer prior to
the start of the bulk transfer, the BU-65170/61580 may be con
figured to issue an interrupt request only after it has received the
anticipated number of valid Data Words to the designated subad
dress.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值