rhwang@cs.utexas.edu (Rwo-Hsi Wang) (03/23/90)
I have two questions about the instruction execution time for 68000 and 68010. Hope someone can give me the answers. 1. In appendix D of M68000 Programmer's Reference Manual (4th edition), there are some descriptions about the basic operations included in the number of clock periods given in the tables. In section D.3, MOVE instruction execution times, the data includes instruction fetch, which presumably is the fetch of the move instruction itself. In section D.4, standard instruction execution times, the data includes, among other things, reading the next instruction. If they are correct, how do I calculate the following pieces of codes? A: move D1,D2 ; This does not include instr. prefetch. add D2,D3 ; What is the fetch time for this instr.? B: add D1,D2 ; Since instr. prefetch has been counted, move D2,D3 ; is this instruction fetch time redundant? Each of the above instruction individually takes 4 clock periods to execute, according to the tables. But how many clock periods are needed in A and in B? Do both of them take 8 clock periods? 2. (Question about 68010) According to the (same) manual, it states (in appendix F.2, Operand effective address calculation times) that Several instructions do not need the operand at an effective address to be fetched and thus require fewer clock periods to calculate a given effective address than the instructions that do fetch the effective address operand. My questions is: what instructions does the above sentence refer to? (that is, how do I know whether an instruction need to fetch the effective address operand?) Thanks for your help. Rwo-Hsi Wang rhwang@cs.utexas.edu
pl@etana.tut.fi (Lehtinen Pertti) (03/23/90)
From article <8215@cs.utexas.edu>, by rhwang@cs.utexas.edu (Rwo-Hsi Wang): > > 2. (Question about 68010) According to the (same) manual, it states > (in appendix F.2, Operand effective address calculation times) that > > Several instructions do not need the operand at an effective > address to be fetched and thus require fewer clock periods to > calculate a given effective address than the instructions that > do fetch the effective address operand. > > My questions is: what instructions does the above sentence refer to? > (that is, how do I know whether an instruction need to fetch the > effective address operand?) > On some instructions (at least CLR) MC68000 fetches destination operand from memory, although it is totally replaced by zero. These phenomens are removed on MC68010 and thus the comment. -- pl@tut.fi ! All opinions expressed above are Pertti Lehtinen ! purely offending and in subject Tampere University of Technology ! to change without any further Software Systems Laboratory ! notice
dolf@idca.tds.PHILIPS.nl (Dolf Grunbauer) (03/27/90)
In article <8215@cs.utexas.edu> rhwang@cs.utexas.edu (Rwo-Hsi Wang) writes: > Hope someone can give me the answers. I will try. I am not so sure of my answer on the first question. > > 1. In appendix D of M68000 Programmer's Reference Manual (4th edition), > there are some descriptions about the basic operations included in > the number of clock periods given in the tables. In section D.3, > [ stuff deleted ] Good question, although I do not think you should take care of the different defintions, as there is an instruction to be fetched, processed, operands to be fetched, and write back. Whether the fetch time of the next instruction or the current instruction is given is not important I guess as the MC68000/MC68010 do not have a pipe-line. > 2. (Question about 68010) According to the (same) manual, it states > (in appendix F.2, Operand effective address calculation times) that > > Several instructions do not need the operand at an effective > address to be fetched and thus require fewer clock periods to > calculate a given effective address than the instructions that > do fetch the effective address operand. An effective address to be fetched is when it is used as source. An effective address not to be fetched is an address which is used as destination. Note that in this table there are no 'no fetch' entries for PC-relartive and immediate data entries, as these addressing modes can never be the destination. Source addressing is always slower as apart from the address calculation the operand has still to be fetched, requiring extra read cycles. Destination addressing only requires the address calculation. >Thanks for your help. I hope it did ;-) -- Dolf Grunbauer Tel: +31 55 433233 Internet dolf@idca.tds.philips.nl Philips Telecommunication and Data Systems UUCP ....!mcsun!philapd!dolf Dept. SSP, P.O. Box 245, 7300 AE Apeldoorn, The Netherlands n n n It's a pity my .signature is too small to show you my solution of a + b = c