Fujitsu MHN2150AT Manual/User Guide - Page 185

Ultra DMA CRC rules, For READ DMA or WRITE DMA commands

Page 185 highlights

5.5 Ultra DMA Feature Set 13) The host shall neither negate STOP nor HSTROBE until at least tACK after negating DMACK-. 14) The host shall not assert DIOW-, CS0-, CS1-, DA2, DA1, or DA0 until at least tACK after negating DMACK. 5.5.5 Ultra DMA CRC rules The following is a list of rules for calculating CRC, determining if a CRC error has occurred during an Ultra DMA burst, and reporting any error that occurs at the end of a command. a) Both the host and the device shall have a 16-bit CRC calculation function. b) Both the host and the device shall calculate a CRC value for each Ultra DMA burst. c) The CRC function in the host and the device shall be initialized with a seed of 4ABAh at the beginning of an Ultra DMA burst before any data is transferred. d) For each STROBE transition used for data transfer, both the host and the device shall calculate a new CRC value by applying the CRC polynomial to the current value of their individual CRC functions and the word being transferred. CRC is not calculated for the return of STROBE to the asserted state after the Ultra DMA burst termination request has been acknowledged. e) At the end of any Ultra DMA burst the host shall send the results of its CRC calculation function to the device on DD (15:0) with the negation of DMACK-. f) The device shall then compare the CRC data from the host with the calculated value in its own CRC calculation function. If the two values do not match, the device shall save the error and report it at the end of the command. A subsequent Ultra DMA burst for the same command that does not have a CRC error shall not clear an error saved from a previous Ultra DMa burst in the same command. If a miscompare error occurs during one or more Ultra DMA bursts for any one command, at the end of the command, the device shall report the first error that occurred. g) For READ DMA or WRITE DMA commands: When a CRC error is detected, it shall be reported by setting both ICRC and ABRT (bit 7 and bit 2 in the Error register) to one. ICRC is defined as the "Interface CRC Error" bit. The host shall respond to this error by re-issuing the command. h) A host may send extra data words on the last Ultra DMA burst of a data out command. If a device determines that all data has been transferred for a command, the device shall terminate the burst. A device may have already received more data words than were required for the command. These extra words are used by both the host and the device to calculate the CRC, but, on an Ultra DMA data out burst, the extra words shall be discarded by the device. C141-E120-02EN 5-109

  • 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
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 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
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228
  • 229
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236

5.5
Ultra DMA Feature Set
C141-E120-02EN
5-109
13)
The host shall neither negate STOP nor HSTROBE until at least t
ACK
after
negating DMACK-.
14)
The host shall not assert DIOW-, CS0-, CS1-, DA2, DA1, or DA0 until
at least t
ACK
after negating DMACK.
5.5.5
Ultra DMA CRC rules
The following is a list of rules for calculating CRC, determining if a CRC error
has occurred during an Ultra DMA burst, and reporting any error that occurs at
the end of a command.
a)
Both the host and the device shall have a 16-bit CRC calculation function.
b)
Both the host and the device shall calculate a CRC value for each Ultra DMA
burst.
c)
The CRC function in the host and the device shall be initialized with a seed
of 4ABAh at the beginning of an Ultra DMA burst before any data is
transferred.
d)
For each STROBE transition used for data transfer, both the host and the
device shall calculate a new CRC value by applying the CRC polynomial to
the current value of their individual CRC functions and the word being
transferred.
CRC is not calculated for the return of STROBE to the asserted
state after the Ultra DMA burst termination request has been acknowledged.
e)
At the end of any Ultra DMA burst the host shall send the results of its CRC
calculation function to the device on DD (15:0) with the negation of
DMACK-.
f)
The device shall then compare the CRC data from the host with the
calculated value in its own CRC calculation function.
If the two values do
not match, the device shall save the error and report it at the end of the
command.
A subsequent Ultra DMA burst for the same command that does
not have a CRC error shall not clear an error saved from a previous Ultra
DMa burst in the same command.
If a miscompare error occurs during one
or more Ultra DMA bursts for any one command, at the end of the command,
the device shall report the first error that occurred.
g)
For READ DMA or WRITE DMA commands:
When a CRC error is
detected, it shall be reported by setting both ICRC and ABRT (bit 7 and bit 2
in the Error register) to one.
ICRC is defined as the "Interface CRC Error"
bit.
The host shall respond to this error by re-issuing the command.
h)
A host may send extra data words on the last Ultra DMA burst of a data out
command.
If a device determines that all data has been transferred for a
command, the device shall terminate the burst.
A device may have already
received more data words than were required for the command.
These extra
words are used by both the host and the device to calculate the CRC, but, on
an Ultra DMA data out burst, the extra words shall be discarded by the
device.