CD2231

Manufacturer Part NumberCD2231
DescriptionCD2231 Intelligent Two-channel Lan And Wan Communications Controller
ManufacturerIntel Corporation
CD2231 datasheet
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
Page 51
52
Page 52
53
Page 53
54
Page 54
55
Page 55
56
Page 56
57
Page 57
58
Page 58
59
Page 59
60
Page 60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
Page 55/178

Download datasheet (3Mb)Embed
PrevNext
Intelligent Two-Channel LAN and WAN Communications Controller — CD2231
5.4.8.3
Append Mode
The Append mode reduces the CPU overhead required to provide asynchronous terminal echoing
functionality; this is also necessary for any similar application that involves an unpredictable
datastream. Buffer A can be set into Append mode by the ATBSTS register. This buffer can then
be used for the echoed data, while Buffer B is used for all other output data. The append buffer
allows data transmission to start from a buffer before all data is available for transmission. For
example, terminal echoing requires that each character is echoed (or translated and echoed) before
the complete line is typed.
To operate in Append mode, the ATBADR and ATBCNT are set as normal (the ATBCNT can be
zero), and the 2231own and Append bits are set in the ATBSTS. When any data is available for
transmission, it is placed in the RAM buffer by the CPU, and the total buffer byte count is updated
in the ATBCNT. The CD2231 can now scan the ATBCNT register for any changes; if new data is
found, it is read from the buffer and transmitted.
When no more data is found in the append buffer, the CD2231 scans Buffer B for ownership. If
Buffer B is owned by the CD2231, the data in that buffer is transmitted uninterrupted; at the end of
the transmission, Buffer A count continues to be scanned for new data.
For correct operation of this feature, the ATBCNT register should be updated with a word-write
operation. If only byte access is possible, the value should not exceed 256 bytes. This mode allows
multiple transfers to be performed through a single buffer; it saves CPU overhead by either
processing multiple buffers or in handling interrupts with every character.
Line retransmission becomes as simple as ‘stepping back’ in the buffer and resending. To terminate
Append mode, a command can be given by the STCR to cause the Buffer A to be terminated when
all current data has been sent.
5.4.8.4
Transmit Bus Errors
When a transmit bus error interrupt is generated, the TISR and ATBSTS/BTBSTS registers
indicate a bus error status. The current transfer address is available in the TCBADR[0–3] registers,
and the bus error occurred on the last transfer that started at this address. This means the actual
error address can be up to 16 bytes further in the buffer.
Following a bus error condition, the CPU can either discontinue the current buffer or retry from the
start of the last transfer. To discontinue the current buffer, the TermBuff bit should be set when
TEOIR is written to at the end of the interrupt. In Synchronous mode, the frame is still in progress
and needs to be aborted by the STCR (Special Transmit Command register).
To retry the frame, the CPU should set the 2231own bit in the ATBSTS/BTBSTS register, and not
set the TermBuff bit when writing to TEOIR at the end of the interrupt. This causes the last transfer
to be retried; should a bus error occur again, the above procedure is repeated. The CPU should
check to ensure that a bad location is not continually retried.
5.4.9
Receive Buffer Interrupts
When a receive buffer is complete, the CD2231 generates an end-of-frame receive exception
interrupt. It provides the CPU with RISR status and information on which buffer is complete.
When a receive error occurs, the device stops DMA at the point of error and generates a bus error
receive exception interrupt. RISR indicates the cause of the exception, and RCBADR provides the
next location in the receive buffer.
Datasheet
55