home *** CD-ROM | disk | FTP | other *** search
/ Vectronix 2 / VECTRONIX2.iso / FILES_10 / DEVELOP.LZH / DSP / DSPDEBUG / SSIDTA.HLP < prev    next >
Text File  |  1992-08-29  |  26KB  |  532 lines

  1. {SYNCHRONOUS SERIAL INTERFACE} ({SSI})
  2.  
  3.     The synchronous serial interface ({SSI}) provides a full-duplex serial
  4. port for serial communication with a variety of serial devices including 
  5. one or more industry-standard codecs, other DSPs, microprocessors, and
  6. peripherals which implement the Motorola SPI. The {SSI} consists of
  7. independent transmitter and receiver sections and a common {SSI} clock
  8. generator. Three to six pins are required for operation, depending on the
  9. operating mode selected.
  10.  
  11.     The following is a short list of SSI features:
  12.  
  13.         A 6.75 Million Bit/Second at 27 Mhz serial interface
  14.  
  15.         Double Buffered
  16.  
  17.         User Programmable
  18.  
  19.         Separate Transmit and Receive Sections
  20.  
  21.         Control and Status Bits
  22.  
  23.         Interface to a Variety of Serial Devices, Including:
  24.             Codecs (usually without additional logic)
  25.                 MC145500
  26.                 MC145501
  27.                 MC145502
  28.                 MC145503
  29.                 MC145402 (13-bit linear codec)
  30.                 MC145554 Family of Codecs
  31.             Serial Peripherals (A/D, D/A)
  32.                 Most Industry-Standard A/D, D/A
  33.                 DSP56ADC16 (16-bit linear A/D)
  34.             DSP56000 to DSP56000 Networks
  35.             Motorola SPI Peripherals and Processors
  36.             Shift Registers
  37.  
  38.         Interface to Time Division Multiplexed Networks without Additional
  39.         Logic
  40.  
  41.         Six Pins:
  42.             {STD} SSI Transmit Data
  43.             {SRD} SSI Receive Data
  44.             {SCK} SSI Serial Clock
  45.             {SC0} Serial Control 0 (defined by SSI mode) 
  46.             {SC1} Serial Control 1 (defined by SSI mode) 
  47.             {SC2} Serial Control 2 (defined by SSI mode) 
  48.  
  49.         On-chip Programmable Functions Include:
  50.             Clock - Continuous, Gated, Internal, External
  51.             Synchronization Signals:
  52.                 - Bit Length
  53.                 - Word Length
  54.             {TX}/{RX} Timing - Synchronous, Asynchronous
  55.             Operating Modes - Normal, Network, On-Demand
  56.             Word Length - 8, 12, 16, 24 Bits
  57.             Serial Clock and Frame Sync Generator
  58.  
  59.         Four Interrupt Vectors:
  60.             Receive
  61.             Receive with Exception
  62.             Transmit
  63.             Transmit with Exception
  64.  
  65.  
  66.     This interface is named synchronous because all serial transfers
  67. are synchronized to a clock. Additional synchronization signals are used to
  68. delineate the word frames. The normal mode of operation is used to transfer
  69. data at a periodic rate, but only one word per period. The network mode is
  70. similar in that it is also intended for periodic transfers; however, it will
  71. support up to 32 words (time slots) per period. This mode can be used to
  72. build time division multiplexed (TDM) networks. In contrast, the on-demand
  73. mode is intended for nonperiodic transfers of data. This mode can be used to
  74. transfer data serially at high speed when the data becomes available. This
  75. mode offers a subset of the SPI protocol.
  76.  
  77. SSI DATA and Control Pins
  78.  
  79.     The SSI has three dedicated I/O pins, which are used for transmit data
  80. ({STD}), receive data ({SRD}), and serial clock ({SCK}), where {SCK} may be used
  81. by both the transmitter and the receiver for synchronous data transfers or
  82. by the transmitter only for asynchronous data transfers. Three other pins
  83. may also be used, depending on the mode selected; they are serial control
  84. pins {SC0}, {SC1}, and {SC2}. These serial control pins may be programmed as SSI
  85. control pins in the port C control register.
  86.  
  87. {SSI} Interface Programming Model
  88.  
  89.     The {SSI} can be viewed as two control registers, one status register,
  90. a transmit register, a receive register, and special-purpose time slot
  91. register.The following paragraphs give detailed descriptions and operations
  92. of each of the bits in the {SSI} registers.
  93.  
  94.  
  95. {SSI CONTROL REGISTER A} ({CRA}):{êPM0}{êPM1}{êPM2}{êPM3}{êPM4}{êPM5}{êPM6}{êPM7}{êDC4}{êDC3}{êDC2}{êDC1}{êDC0}{êWL0}{êWL1}{êPSR}
  96.  
  97.    {CRA} is one of the two 16-bit read/write control registers used to direct
  98. the operation of the {SSI}. The {CRA} controls the {SSI} clock generator bit
  99. and frame sync rates, word length, and number of words per frame for the
  100. serial data. The high-order bits of {CRA} are read as zeros by the DSP CPU.
  101. The {CRA} control bits are described in the following paragraphs.
  102.  
  103. {Prescale Modulus Select} ({PM7}-{PM0}) {CRA} Bits 0-7:
  104.  
  105.    The {PM0}-{PM7} bits specify the divide ratio of the prescale divider in the
  106. {SSI} clock generator. A divide ratio from 1 to 256 (PM = 0 to $FF) may be
  107. selected. The bit clock output is available at the transmit clock (SCK)
  108. and/or the receive clock (SC0) ins of the DSP. The bit clock output is also
  109. available internally for use as the bit clock to shift the transmit and
  110. receive shift registers. Careful choice of the crystal oscillator frequency
  111. and the prescaler modulus will allow the industry-standard codec master
  112. clock frequencies of 2.048 MHz, 1.544 MHz, and 1.536 MHz to be generated.
  113. Hardware and software reset clear {PM0}-{PM7}.
  114.  
  115. {Frame Rate Divider Control} ({DC4}-{DC0}) {CRA} Bits 8-12:
  116.  
  117.    The {DC4}-{DC0} bits control the divide ratio for the programable frame rate
  118. dividers used to generate the frame clocks. In network mode, this ratio may
  119. be interpreted as the number of words per frame minus one. In normal mode,
  120. this ratio determines the word transfer rate. The divide ratio may range
  121. from 1 to 32 (DC = 00000 to 11111) for normal mode and 2-32 (DC = 00001 to
  122. 11111) for network mode.
  123.  
  124. A divide ratio one (DC = 00000) in network mode is a special case. In normal
  125. mode, a divide ratio of one (DC = 00000) provides continuous periodic data
  126. word transfers. A bit-length sync ({FSL1} = 1, {FSL0} = 0) must be used in this
  127. case. Hardware and software reset clear {DC4}-{DC0}.
  128.  
  129. {Word Length Control} ({WL0},{WL1}) {CRA} Bits 13 and 14:
  130.  
  131.    The {WL1} and {WL0} bits are used to select the length of the data words
  132. being transferred via the {SSI}. Word lengths of 8, 12, 16, or 24 bits may
  133. be selected according to the following assignements:
  134.  
  135.    +-----+-----+---------------------+
  136.    | {WL1} | {WL0} | Number of Bits/Word |
  137.    +-----+-----+---------------------+
  138.    |   0 |   0 |            8        |
  139.    +-----+-----+---------------------+
  140.    |   0 |   1 |           12        |
  141.    +-----+-----+---------------------+
  142.    |   1 |   0 |           16        |
  143.    +-----+-----+---------------------+
  144.    |   1 |   1 |           24        |
  145.    +-----+-----+---------------------+
  146.  
  147. These bits control the number of active clock transitions in the gated clock
  148. modes and control the word length divider, which is part of the frame rate
  149. signal generator for continuous clock modes. The WL control bits also
  150. control the frame sync pulse length when {FSL0} and {FSL1} select a WL bit
  151. clock. Hardware and software reset clear {WL0} and {WL1}.
  152.  
  153. {Prescaler Range} ({PSR}) {CRA} Bit 15:
  154.  
  155.    The {PSR} controls a fixed divide-by-eight prescaler in series with the
  156. variable prescaler. This bit is used to extend the range of the prescaler
  157. for those cases where a slower bit clock is desired. When {PSR} is cleared,
  158. the fixed prescaler is bypassed. When {PSR} is set, the fixed divide-by-eight
  159. prescaler is operational.
  160.  
  161. The maximum internally generated bit clock frequency is fosc/4, the minimum
  162. internally generated bit clock frequency is fosc/4/8/256 = fosc/8192.
  163. Hardware and software reset clear {PSR}.
  164.  
  165.  
  166. {SSI CONTROL REGISTER B} ({CRB}):{êOF0}{êOF1}{êSCD0}{êSCD1}{êSCD2}{êSCKD}{êSHFD}{êFSL0}{êFSL1}{êSYN}{êGCK}{êMOD}{êTE}{êRE}{êTIE}{êRIE}
  167.  
  168.    The {CRB} is one of two 16-bit read/write control regioster used to direct
  169. the operation of the {SSI}. Interrupt enable bits for each data
  170. registerinterrupt are provided in this control register. When read by the
  171. DSP, {CRB} appears on the two low-order bytes of the 24-bit word, and the
  172. high-order byte reads as zeros. Operating modes are also selected in this
  173. register. Hardware and software reset clear all the bits in the {CRB}. The
  174. {SSI} {CRB} bits are described in the following paragraphs.
  175.  
  176. {Serial Output Flag 0} ({OF0}) {CRB} Bit 0:
  177.  
  178.    When the {SSI} is in the synchronous clock mode and the serial control
  179. direction zero bit ({SCD0}) is set, indicating that the SC0 pin is an output,
  180. then data present in {OF0} will be written to SC0 at the beginning of the
  181. frame in normal mode or at the beginning of the next time slot in network
  182. mode. Hardware and software reset clear {OF0}.
  183.  
  184. {Serial Output Flag 1} ({OF1}) {CRB} Bit 1:
  185.  
  186.    When the {SSI} is in the synchronous clock mode and the serial control
  187. direction one ({SCD1}) bit is set, indicating that the SC1 pin is an output,
  188. then data present in {OF1} will bewritten to the SC1 pin at the beginning of
  189. the frame in normal mode or at the beginning of the next time slot in
  190. network mode.
  191.  
  192. The normal sequence for setting output flags when transmitting data is to
  193. set {TDE} ({TX} empty), to first write the flags, and then write the transmit
  194. data to the {TX} register. {OF0} and {OF1} are double buffered so that the flag
  195. states appear on the pins when the {TX} data is transfered to the transmit
  196. shift register (i.e., the flags are synchronouswith the data). Hardware and
  197. software reset clear {OF1}.
  198.  
  199. {Serial Control 0 Direction} ({SCD0}) {CRB} Bit 2:
  200.  
  201.    {SCD0} controls the direction of the SC0 I/O line. When {SCD0} is cleared,
  202. SC0 is an input; when {SCD0} is set, SC0 is an output. Hardware and software
  203. reset clear {SCD0}.
  204.  
  205. {Serial Control 1 Direction} ({SCD1}) {CRB} Bit 3:
  206.  
  207.    {SCD1} controls the direction of the SC1 I/O line. When {SCD1} is cleared,
  208. SC1 is an input; when {SCD1} is set, SC1 is an output. Hardware and software
  209. reset clear {SCD1}.
  210.  
  211. {Serial Control 2 Direction} ({SCD2}) {CRB} Bit 4:
  212.  
  213.    {SCD2} controls the direction of the SC2 I/O line. When {SCD2} is cleared,
  214. SC2 is an input; when {SCD2} is set, SC2 is an output. Hardware and software
  215. reset clear {SCD2}.
  216.  
  217. {Clock Source Direction} ({SCKD}) {CRB} Bit 5:
  218.  
  219.    {SCKD} selects the source of the clock signal used to clock the transmit
  220. shift register in the asynchronous mode and both the transmit shift register
  221. and the receive shift register in the synchronous mode. When {SCKD} is set,
  222. the internal clock source becomes the bit clock for the transmit shift
  223. register and word length divider and is the output on the SCK pin. When {SCKD}
  224. is cleared, the clock source is external; the internal clock generator is
  225. disconnected from the SCK pin, and an external clock source may drive this
  226. pin. Hardware and software reset clear {SCKD}.
  227.  
  228. {Shift Direction} ({SHFD}) {CRB} Bit 6:
  229.  
  230.    This bitcauses the transmit shift register to shift data out MSB first
  231. when {SHFD} equals zero or LSB first when {SHFD} equals one. Receive data is
  232. shifted in MSB first when {SHFD} equals zero or LSB first when {SHFD} equals
  233. one. Hardware reset and software reset clear {SHFD}.
  234.  
  235. {Frame Sync Length} ({FSL0} and {FSL1}) {CRB} Bits 7 and 8:
  236.  
  237.     These bits select the type of frame sync to be generated or recognized.
  238. If {FSL1} equals zero and {FSL0} equals zero, a word-length frame sync is
  239. selected for both {TX} and {RX} that is the length of the data word defined by
  240. bits {WL1} and {WL0}. If {FSL1} equals one and {FSL0} equals zero, a 1-bit clock
  241. period frame syncis selected for both {TX} and {RX}. When {FSL0} equals one, the
  242. {TX} and {RX} frame syncs are different lengths. Hardware reset and software
  243. reset clear {FSL0} and {FSL1}.
  244.  
  245.    +------+------+----------------------------------------------+
  246.    | {FSL1} | {FSL0} |        Frame Sync Length                     |
  247.    +------+------+----------------------------------------------+
  248.    |  0   |  0   | WL bit clock for both {TX}/{RX}                  |
  249.    +------+------+----------------------------------------------+
  250.    |  0   |  1   | One-bit clock for {TX} and WL bit clock for {RX} |
  251.    +------+------+----------------------------------------------+
  252.    |  1   |  0   | One-bit clock for both {TX}/{RX}                 |
  253.    +------+------+----------------------------------------------+
  254.    |  1   |  1   | One-bit clock for {RX} and WL bit clock for {TX} |
  255.    +------+------+----------------------------------------------+
  256.  
  257. {Sync/Async} ({SYN}) {CRB} Bit 9:
  258.  
  259.    {SYN} controls whether the receive and transmit functions of the {SSI}
  260. occur synchronously with respect to each other. When {SYN} is cleared,
  261. asynchronous mode is chosen and separate clock and frame sync signals are
  262. used for the transmit and receive sections. When {SYN} is set, synchronous
  263. mode is chosen and the transmit and receive sections use common clock and
  264. frame sync signals. Hardware reset and software reset clear {SYN}.
  265.  
  266. {Gated Clock Control} ({GCK}) {CRB} Bit 10:
  267.  
  268.    {GCK} is used to select between a continuously running data clock or a
  269. clock that runs only when there is data to be sent in the transmit shift
  270. register. When {GCK} is cleared, a continuous clock is selected; when {GCK} is
  271. set, the clock will be gated. Hardware reset and software reset clear {GCK}.
  272.  
  273. NOTE:   For gated clock mode with externally generated bit clock, internally
  274. generated frame sync is not defined.
  275.  
  276. {SSI Mode Select} ({MOD}) {CRB} Bit 11:
  277.  
  278.    {MOD} selects the operational mode of the {SSI}. When {MOD} is cleared, the
  279. normal mode is selected; when {MOD} is set, the network mode is selected. In
  280. the normal mode, the frame rate divider determines the word transfer rate --
  281. one word is transferred per frame sync during the frame sync time slot. In
  282. network mode, a word is (possibly) transferred every time slot. Hardware and
  283. software reset clear {MOD}.
  284.  
  285. {SSI Transmit Enable} ({TE}) {CRB} Bit 12:
  286.  
  287.    {TE} enables the transfer of data from {TX} to the transmit shift register.
  288. When {TE} is set and a frame sync is detected, the transmit portion of the
  289. {SSI} is enabled for that frame. When {TE} is cleared, the transmitter wille
  290. be disabled after completing transmission of data currently in the {SSI}
  291. transmit shift register. Theserial output is three-stated, and any data
  292. present in {TX} will not be transmitted (i.e., data can be written to {TX} with
  293. {TE} cleared; {TDE} will be cleared, but data will not be transferred to the
  294. transmit shift register).
  295.  
  296. The normal mode transmit enable sequence is to write data to {TX} or {TSR} befor
  297. setting {TE}. The normal transmit disable sequence is to clear {TE} and {TIE}
  298. after {TDE} equals one.
  299.  
  300. In the network mode, the operation of clearing {TE} and setting it again will
  301. disable the transmitter after completing transmission of the current data
  302. word until the beginning of the next frame. During that time period, the STD
  303. pin will remain in the high-impedance state. Hardware reset and software
  304. reset clear {TE}.
  305.  
  306. The on-demand mode transmit enable sequence can be the same as the normal
  307. mode, or {TE} can be left enabled.
  308.  
  309. NOTE:   {TE} does not inhibit {TDE} or transmitter interrupts. {TE} does not
  310. affect the generation of frame sync or output flags.
  311.  
  312. {SSI Receive Enable} ({RE}) {CRB} Bit 13:
  313.  
  314.    When {RE} is set, the receive portion of the {SSI} is enable. When thisbit
  315. is cleared, the receiver will be disabled by inhibiting data transfer into
  316. {RX}. If data is being received while this bit is cleared, the remainder of
  317. the word will be shifted in and transfered to the {SSI} receive data
  318. register.
  319.  
  320. {RE} must be set in the normal mode and on-demand mode to receive data. In
  321. network mode, the operation of clearing {RE} and setting it again will disable
  322. the receiver after reception of the current data word until the beginning of
  323. the next data frame. Hardware and software reset clear {RE}.
  324.  
  325. NOTE:   {RE} does not inhibit {RDF} or receiver interrupts. {RE} does not affect
  326. the generation ofa frame sync.
  327.  
  328. {SSI Transmit Interrupt Enable} ({TIE}) {CRB} Bit 14:
  329.  
  330.    The DSP will be interrupted when {TIE} and the {TDE} flag in the {SSI}
  331. status register is set. When {TIE} is cleared, this interrupt is disabled.
  332. However, the {TDE} bit will always indicate the transmit data register empty
  333. condition even when the transmitter is disabled with the {TE} bit. Writing
  334. data to {TX} or {TSR} will clear {TDE}, thus clearing the interupt. Hardware and
  335. software reset clear {RE}.
  336.  
  337. There are two transmit data interrupts that have separate interrupt vectors:
  338.  
  339.    1. Transmit data with exceptions -- This interrupt is generated on the
  340. following condition:
  341.     {TIE}=1, {TDE}=1, and {TUE}=1
  342.  
  343.    2. Transmit data without exceptions -- This interrupt is generated on the
  344. following condition:
  345.     {TIE}=1, {TDE}=1, and {TUE}=0
  346.  
  347. {SSI Receive Interrupt Enable} ({RIE}) {CRB} Bit 15:
  348.  
  349.    When {RIE} is set, the DSP wil be interrupted when {RDF} in the {SSI} status
  350. register is set. When {RIE} is cleared, this interrupt is disabled. However,
  351. the {RDF} bit still indicates the receive data register full condition.
  352. Reading the receive data register will clear {RDF}, thus clearing the pending
  353. interrupt. Hardware reset and software reset clear {RIE}.
  354.  
  355. There are two receive data interrupts that have separate interrupt vectors:
  356.  
  357.    1. Receive data with exceptions -- This interrupt is generated on the
  358. following condition:
  359.     {RIE}=1, {RDF}=1, and {ROE}=1
  360.  
  361.    2. Receive data without exceptions -- This interrupt is generated on the
  362. folowing condition:
  363.     {RIE}=1, {RDF}=1, and {ROE}=0
  364.  
  365.  
  366. {SSI STATUS REGISTER} ({SSISR}):{êIF0}{êIF1}{êTFS}{êRFS}{êTUE}{êROE}{êTDE}{êRDF}
  367.  
  368.     The {SSISR} is an 8-bit read-only status register used by  the DSP to
  369. interrogate the status and serial input flags of the {SSI}. When the {SSISR}
  370. is reda to the internal data bus, the register contents occupy the low-order
  371. byte of the data bu, and the high-order portion is zero filled. The status
  372. bits are described in the following paragraphs.
  373.  
  374. {Serial Input Flag 0} ({IF0}) {SSISR} Bit 0:
  375.  
  376.     The {SSI} latches data present on the SC0 pin during reception of the
  377. first received bit after frame sync is detected. {IF0} is updated with this
  378. data when the receive shift register is transfered into the receive data
  379. register. The {IF0} bit is enabled only when {SCD0} is cleared and {SYN} is set,
  380. indicating that SC0 is an input and the synchronous mode is selected;
  381. otherwise, {IF0} reads as a zero whenit is not enabled. Hardware, software,
  382. {SSI} individual, an STOP reset clear {IF0}.
  383.  
  384. {Serial Input Flag 1} ({IF1}) {SSISR} Bit 1:
  385.  
  386.    The {SSI} latches data present on the SC1 pin during reception of the
  387. first received bit after frame sync is detected. The {IF1} flag is updated
  388. with the data when the receiver shift register is transfered into the
  389. receive data register. The {IF1} bit is enable only when {SCD1} is cleared and
  390. {SYN} is set, indicating that SC1 is an input and the synchronous mode is
  391. selected; otherwise, {IF1} reads as zero when it is not enabled. Hardware,
  392. software, {SSI} individual, and {STOP} reset clear {IF1}.
  393.  
  394. {Transmit Frame Sync Flag} ({TFS}) {SSISR} Bit 2:
  395.  
  396.    When set, {TFS} indicates that a transmit frame sync occured in the current
  397. time slot. {TFS} is set at the start of the first time slot in the frame and
  398. cleared during all other time slots. Data written to the transmit data
  399. register during the time slot when {TFS} is set will be transmitted (in
  400. network mode) during the second time slot in the frame. {TFS} is useful in
  401. network mode to identify the start of a frame.
  402.  
  403. NOTE:   In normal mode, {TFS} will always read as a one when transmitting data
  404. because there is only one time slot per frame -- the "frame sync" time slot.
  405.  
  406. {Receive Frame Sync Flag} ({RFS}) {SSISR} Bit 3:
  407.  
  408.    When set, {RFS} indicates that a receive frame sync occurred during
  409. reception of the word in the serial receive data register. This indicates
  410. that the data word is from the first time slot in the frame. When {RFS} is
  411. clear and a word is received, it indicates (only in the network mode) that
  412. the frame sync did not occur during reception of that word.
  413.  
  414. NOTE:   In normal mode, {RFS} will always read as a onewhen reading data
  415. because there is only one time slot per frame -- the "frame sync" time slot.
  416.  
  417. {RFS}, which is cleared by hardware, software, {SSI} individual, or {STOP}
  418. reset, isnot affected by {RE}.
  419.  
  420. {Transmitter Underrun Error Flag} ({TUE}) {SSISR} Bit 4:
  421.  
  422.    {TUE} is set when serial transmit shift register is empty (no new data to
  423. be transmitted) and a transmit time slot occurs. When a transmit underrun
  424. error occurs, the previous data (which is still present in the {TX}) will be
  425. retransmitted.
  426.  
  427. In the normal mode, there is only one transmit time slot per frame. In the
  428. network mode, there can be up to 32 transmit time slots per frame.
  429.  
  430. {TUE} does not cause any interrupts; however, {TUE} does cause a change in the
  431. interrupt vector used for transmit interrupts so that a different interrupt
  432. handler may be used for a transmit underrun condition. If a transmit
  433. interrupt occurs with {TUE} clear, the transmit data without errors interrupt
  434. will be generated.
  435.  
  436. Hardware, softwre, {SSI} individual, and {STOP} reset clear {TUE}. {TUE} is
  437. also cleared by reading the {SSISR} with {TUE} set, followed by writing {TX} or
  438. {TSR}.
  439.  
  440. {Receive Overrun Error Flag} ({ROE}) {SSISR} Bit 5:
  441.  
  442.    This flag is set when the serial receive shift register is filled and
  443. ready to transfer to the receiver data register ({RX}) and {RX} is already full
  444. (i.e., {RDF}=1). The receiver shift register is not transfered to {RX}. {ROE} does
  445. not cause any interrupts; however, {ROE} does cause a change in the interrupt
  446. vector used for receive interrupts so that adifferent interrupt handler may
  447. be used for a receive error condition. If a receive interrupt occurs with
  448. {ROE} set, the receive data with exception status interrupt will be generated;
  449. if a receive interrupt occurs with {ROE} clear, the receive data without
  450. errors interrupt will be generated.
  451.  
  452. Hardware, software, {SSI} individual, and {STOP} reset clear {ROE}. {ROE} is
  453. also cleared by reading the {SSISR} with {ROE} set, followed by reading the {RX}.
  454. Clearing {RE} does not affect {ROE}.
  455.  
  456. {SSI Transmit Data Register Empty} ({TDE}) {SSISR} Bit 6:
  457.  
  458.     This flag is set when the contents of the transmit data register are
  459. transferred to the transmit shift register; it is also set for a disabled
  460. time slot period in network mode (as if data were being transmitted after
  461. the {TSR} was written). Thirdly, it can be set by the hardware, software,
  462. {SSI} individual, or {STOP} reset. When set, {TDE} indicates that data
  463. should be written to the {TX} or to the time slot register ({TSR}). {TDE} is
  464. cleared when the DSP writes to the transmit data register or when the DSP
  465. writes to the {TSR} to disable transmission of the next time slot. If {TIE} is
  466. set, a DSP transmit data interrupt request will be issued when {TDE} is set.
  467. The vector of the interrupt will depend on the state of the transmitter
  468. underrun bit.
  469.  
  470. {SSI Receive Data Register Full} ({RDF}) {SSISR} Bit 7:
  471.  
  472.    {RDF} is set when the contents of the receive shift register are
  473. transferred to the receive data register. {RDF} is cleared when the DSP reads
  474. the receive data register or cleared by hardware, software, {SSI}
  475. individual, or {STOP} reset. If {RIE} is set, a DSP receive data interrupt
  476. request will be issued when {RDF} is set. The vector of the interrupt request
  477. will depend on the state of the receive overrun.
  478.  
  479.  
  480. {SSI Receive Shift Register}:
  481.  
  482.    This 24-bit shift register receives the incoming data from the serial
  483. receive data pin. Data is shifted in by the selected (internal/external) bit
  484. clock when the associated frame sync I/O (or gated lock) is asserted. Data
  485. is assumed to be received MSB first if {SHFD} equals zero and LSB first if
  486. {SHFD} equals one. Data is transferred to the {SSI} receive data register
  487. after 8,12,16, or 24 bits have been shifted in, depending on the word-length
  488. control bits in the {CRA}.
  489.  
  490.  
  491. {SSI Receive Data Register} ({RX}):
  492.  
  493.    {RX} is a 24-bit read_only register that accepts data from the receive
  494. shift register as it becomes full. The data read will occupy the most
  495. significant portion of the receive data register. The unused bits (least
  496. significant portion) will read as zeros. The DSP is interrupted whenever {RX}
  497. becomes full if the associated interrupt is enabled.
  498.  
  499.  
  500. {SSI Transmit Shift Register}:
  501.  
  502.    This 24-bit shift register contains the data being transmitted. Data is
  503. shifted out to the serial transmit data pin by the selected
  504. (internal/external) bit clock when the associated frame sync I/O (or gated
  505. clock) is asserted. The number of bits shifted out before the shift register
  506. is considered empty and may be written to again can be 8,12,16, or 24 bits
  507. (determined by the word-length control bits in {CRA}). The data to be
  508. transmitted occupies the most significant portion of the shift register. The
  509. unused portion of the register is ignored. Data is shifted out of this
  510. register MSB first if {SHFD} equals zero and LSB first if {SHFD} equals one.
  511.  
  512.  
  513. {SSI Transmit Data Register} ({TX}):
  514.  
  515.    {TX} is a 24-bit write-only register. Data to be transmitted is written
  516. into this register and is automatically transferred to the transmit shift
  517. register. The data written (8,12,16, or 24 bits) should occupy the most
  518. significant portion of {TX}. The unused bits (least significant portion) of {TX}
  519. are don't care bits. The DSP is interrupted whenever {TX} becomes empty if the
  520. transmit data register empty interrupt has been enabled.
  521.  
  522.  
  523. {SSI Time Slot Register} ({TSR}):
  524.  
  525.    {TSR} is effectively a null data register that is used when the data is not
  526. to be transmitted in the available transmit time slot. For the purposes of
  527. timing, {TSR} is a write-only register that behaves like an alternative
  528. transmit data register, except that, rather than transmitting data, the
  529. transmit data pin is in the high-impedence state for time slot.
  530.  
  531.  
  532.