1801BM1 / cpu11

Revengineered ancient PDP-11 CPUs, originals and clones
Other
155 stars 25 forks source link

VM2 byte write without RMW #25

Open xolod79 opened 2 months ago

xolod79 commented 2 months ago

VM2 byte write without RMW. In wb_plm.v simple change:

assign p[26] = cmp(rq[15:0], 16'b0001xxxxxxxxxxxx); to assign p[26] = cmp(rq[15:0], 16'bx001xxxxxxxxxxxx); // WTBT no RMW

Probably it is worth making a parameter during assembly for selection. Work is checked on DVK in RT11 and Soyuz Neon. Сorrection author Alexey Kisly. VM2-WTBT-noRMW

1801BM1 commented 2 months ago

How "movb" works on original LSI-11: image

How "movb" works on M4: image

How "movb" works on F-11: image

Why should we change this behavior ? It seems it was intended to have the same as DEC did. Single write "movb also might have side effects on some I/O. Should this change be merged? Not sure, because of it impacts original DEC compatibility. Keeping the latter was the objective of BM2 developers.