OpenCores
URL https://opencores.org/ocsvn/t48/t48/trunk

Subversion Repositories t48

[/] [t48/] [tags/] [rel_1_4/] [KNOWN_BUGS] - Blame information for rev 344

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 105 arniml
 
2
Known bugs of the T48 uController core
3
======================================
4 295 arniml
Version: $Id: KNOWN_BUGS 295 2009-04-01 19:32:48Z arniml $
5 105 arniml
 
6
 
7 250 arniml
Release 0.6.1 BETA
8
------------------
9
 
10
*******************************************************************************
11
Deassertion of PROG too early
12
 
13
PROG is deasserted in XTAL2 cycle which might lead to read data being already
14
invalid (tri-stated) when the core samples P2[3:0] at the end of XTAL3.
15
 
16
Fixed in:
17
clock_ctrl.vhd 1.12
18
Fix will be included in next release.
19
 
20
 
21
 
22 212 arniml
Release 0.6 BETA
23
----------------
24
 
25
*******************************************************************************
26 250 arniml
Deassertion of PROG too early
27
 
28
See above.
29
 
30
*******************************************************************************
31 212 arniml
P2 Port value restored after expander access
32
 
33
After access to expander interface (ANLD Pp; MOVD A,Pp; MOVD Pp,A; ORLD Pp)
34
the port value of P2 is restored. This is wrong according to chapter "Port 2
35
Operations" of the "Expanded MCS-48 System" manual. It states that previously
36
latched I/O information will be removed and not restored.
37
 
38
Fixed in:
39
p2.vhd 1.8
40
Fix will be included in next release.
41
 
42
*******************************************************************************
43
Problem when INT and JMP
44
 
45
When code is executed from Memory Bank 1, the injected CALL triggered by the
46
interrupt does not always vector to address 3. This happens because of a bus
47
collision between the decoder unit and the db_bus unit. The resulting address
48
can be either:
49
* 000h, 001h, 002h, 003h for external and timer interrupt
50
* 004h, 005h, 006h, 007h for timer interrupt
51
 
52
The problem was introduced in release 0.6 BETA when the glitch on PCH was
53
fixed.
54
 
55
Fixed in:
56
decoder.vhd 1.21
57
New regression test: int_on_mb1
58
Fix will be included in next release.
59
 
60
 
61
 
62 163 arniml
Release 0.5 BETA
63
----------------
64
 
65
*******************************************************************************
66 250 arniml
Deassertion of PROG too early
67
 
68
See above.
69
 
70
*******************************************************************************
71 212 arniml
P2 Port value restored after expander access
72
 
73
See above.
74
 
75
*******************************************************************************
76 189 arniml
Target address of JMP and CALL to Program Memory Bank 1 corrupted by interrupt
77
 
78
An interrupt occuring during the execution of a JMP instruction, forces bit 11
79
of the target address to 0. This corrupts target addresses that are located in
80
Program Memory Bank 1.
81
 
82
Fixed in:
83
int.vhd 1.5
84
New regression test: white_box/int_on_int
85
Fix will be included in next release.
86
 
87
*******************************************************************************
88 175 arniml
MSB of Program Counter changed upon PC increment
89
 
90
The current implementation of the Program Counter allows that the MSB (bit 11)
91
is modifed when the PC increments at address 07FFh linear code execution. This
92
is contrary to the description found in "The Expanded MCS-48 System" which
93
states that bit 11 is only altered by JMP and CALL/RET but not by normal
94
increment.
95
 
96
Fixed in:
97
pmem_crtl.vhd 1.4
98
New regression test: white_box/pc_wrap_bit11
99
Fix will be included in next release.
100
 
101
*******************************************************************************
102 163 arniml
Wrong clock applied to T0
103
 
104
After executing the 'ENT0 CLK' instruction, the internal clock (XTAL divided
105
by 3) should be applied to T0.
106
The t48_core applies clk_i to T0. This is equal to XTAL in the current
107
implementation of t8048 and others. Therefore, the clock at T0 is three times
108
faster than specified.
109
 
110
Fixed in:
111
clock_ctrl.vhd 1.7
112
t48_core.vhd 1.8
113
Fix will be included in next release.
114
 
115
 
116
 
117 139 arniml
Release 0.4 BETA
118
----------------
119
 
120
*******************************************************************************
121 212 arniml
P2 Port value restored after expander access
122
 
123
See above.
124
 
125
*******************************************************************************
126 189 arniml
Target address of JMP and CALL to Program Memory Bank 1 corrupted by interrupt
127
 
128
See above.
129
 
130
*******************************************************************************
131 175 arniml
MSB of Program Counter changed upon PC increment
132
 
133
See above.
134
 
135
*******************************************************************************
136 163 arniml
Wrong clock applied to T0
137
 
138
See above.
139
 
140
*******************************************************************************
141 146 arniml
RD' and WR' not asserted for INS A, BUS and OUTL BUS, A
142
 
143
The control signals RD' and WR' are not asserted when the instructions INS A,
144
BUS and OUTL BUS, A are executed. The BUS is read or written but the control
145
signals are missing.
146
 
147
Fixed in:
148
decoder.vhd 1.16
149
Fix will be included in next release.
150
 
151
*******************************************************************************
152 139 arniml
P1 constantly in push-pull mode in t8048
153
 
154
Port P1 is constantly driven by an active push-pull driver instead of an
155
open-collector driver type. This inhibits using any bit of P1 in input
156
direction.
157
 
158
Fixed in:
159
t8048.vhd 1.4
160
Fix will be included in next release.
161
 
162
 
163
 
164 135 arniml
Release 0.3 BETA
165
----------------
166
 
167
*******************************************************************************
168 212 arniml
P2 Port value restored after expander access
169
 
170
See above.
171
 
172
*******************************************************************************
173 189 arniml
Target address of JMP and CALL to Program Memory Bank 1 corrupted by interrupt
174
 
175
See above.
176
 
177
*******************************************************************************
178 175 arniml
MSB of Program Counter changed upon PC increment
179
 
180
See above.
181
 
182
*******************************************************************************
183 163 arniml
Wrong clock applied to T0
184
 
185
See above.
186
 
187
*******************************************************************************
188 146 arniml
RD' and WR' not asserted for INS A, BUS and OUTL BUS, A
189
 
190
See above.
191
 
192
*******************************************************************************
193 139 arniml
P1 constantly in push-pull mode in t8048
194
 
195
See above.
196
 
197
*******************************************************************************
198 135 arniml
PSENn Timing
199
 
200
PSENn is erroneously activated during read or write from external memory when
201
the read and write strobe signals RDn and WRn are active. This happens when
202
code is executed from external Program Memory.
203
 
204
The problem lies in the decoder module where the PSENn signal is generated
205
based on the current machine cycle.
206
 
207
Fixed in decoder.vhd 1.15
208
Added waveform check for PSENn in if_timing.vhd 1.3
209
New regression test: white_box/psen_rd_wr_timing
210
Fix will be included in next release.
211
 
212
 
213
 
214 117 arniml
Release 0.2 BETA
215
----------------
216
 
217
*******************************************************************************
218 212 arniml
P2 Port value restored after expander access
219
 
220
See above.
221
 
222
*******************************************************************************
223 175 arniml
MSB of Program Counter changed upon PC increment
224
 
225
See above.
226
 
227
*******************************************************************************
228 163 arniml
Wrong clock applied to T0
229
 
230
See above.
231
 
232
*******************************************************************************
233 146 arniml
RD' and WR' not asserted for INS A, BUS and OUTL BUS, A
234
 
235
See above.
236
 
237
*******************************************************************************
238 139 arniml
P1 constantly in push-pull mode in t8048
239
 
240
See above.
241
 
242
*******************************************************************************
243 135 arniml
PSENn Timing
244
 
245
See above.
246
 
247
*******************************************************************************
248 117 arniml
Program Memory bank can be switched during interrupt
249
 
250
During an interrupt service routine (i.e. after vectoring to location 3 or 7
251
of the Program Memory and befor executing the RETR instruction) the Program
252
Memory bank can be switched by executing a JMP or CALL instruction. These
253
instructions honour the current state of the Program Memory Bank Flag and thus
254
switch the Program Memory bank upon execution.
255
 
256 121 arniml
Fixed in:
257
int.vhd 1.2
258
decoder.vhd 1.14
259
Updated regression test:
260
black_box/mb/int
261
Fix will be included in next release.
262 117 arniml
 
263
 
264 121 arniml
 
265 105 arniml
Release 0.1 BETA
266
----------------
267
 
268 117 arniml
*******************************************************************************
269 212 arniml
P2 Port value restored after expander access
270
 
271
See above.
272
 
273
*******************************************************************************
274 175 arniml
MSB of Program Counter changed upon PC increment
275
 
276
See above.
277
 
278
*******************************************************************************
279 163 arniml
Wrong clock applied to T0
280
 
281
See above.
282
 
283
*******************************************************************************
284 146 arniml
RD' and WR' not asserted for INS A, BUS and OUTL BUS, A
285
 
286
See above.
287
 
288
*******************************************************************************
289 135 arniml
PSENn Timing
290
 
291
See above.
292
 
293
*******************************************************************************
294 117 arniml
Program Memory bank can be switched during interrupt
295
 
296
See above.
297
 
298 105 arniml
******************************************************************************
299 109 arniml
External Program Memory ignored when EA = 0
300
 
301
The external Program Memory is always ignored when EA = 0 with the t8048 system
302
toplevel. Desired behaviour is to access external Program Memory when code
303
has to be fetched from an address location that is outside the internal
304
Program Memory.
305
 
306
Fixed in t8048.vhd 1.3
307
Fix will be included in next release.
308
 
309
******************************************************************************
310 105 arniml
ANL and ORL to P2 read port status instead of port output register
311
 
312
The ANL and ORL instructions for P2 read the port status and apply the logical
313
operation on this value. Instead, they should read the port output register
314
and operate on this value.
315
 
316
Fixed in p2.vhd 1.5
317
Regression test:
318
white_box/p2_port_reg_conflict
319
Fix will be included in next release.
320
 
321
******************************************************************************
322
Counter is not incremented
323
 
324
When in counter mode, the timer/counter module does not increment upon a
325
falling edge of T1. Reason is a typo in the code for the edge detection signal
326
t1_inc_s - it will never become true.
327
 
328
Fixed in timer.vhd 1.3
329
Regression tests:
330
black_box/cnt/cnt
331
black_box/cnt/int
332
Fix will be included in next release.

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.