Google
 

Trailing-Edge - PDP-10 Archives - KL_ucodeV347doc_19840326 - documentation/kl-ucode-release.doc
There are 2 other files named kl-ucode-release.doc in the archive. Click here to see a list.


KL MICROCODE RELEASE DOCUMENT -- V347
March 1984






























Copyright (C)1977,1978,1979,1980,1981,1982,1983,1984
Digital Equipment Corporation, Maynard, Mass.


This software is furnished under a license for use only  on  a  single
computer system and may be copied only with the inclusion of the above
copyright notice.  This software, or any other copies thereof, may not
be provided or otherwise made available to any other person except for
use on such system and to one  who  agrees  to  these  license  terms.
Title  to  and  ownership of the software shall at all times remain in
DEC.

The information in this software is subject to change  without  notice
and  should  not  be  construed  as  a commitment by Digital Equipment
Corporation.

DEC assumes no responsibility  for  the  use  or  reliability  of  its
software on equipment which is not supplied by DEC.
KL MICROCODE RELEASE DOCUMENT -- V347                           Page 2


V347RG.DOC -- v347
March 1984









1.0  SUMMARY


     1.  Microcode version 347 is the eleventh  release  of  the  KL10
         microcode.   Microcode  version  347 appears as KLX.MCB only.
         It supports a model B KL10 with or without MCA25 for  TOPS-20
         V5.1 or earlier only.

         This is the sixth release of the KL10 microcode that supports
         an  'Extended  KL10'  described  in  the  Hardware  Reference
         Manual.  Only KLX.RAM supports the 'Extended KL10'.  (KLX.MCB
         is  derived  from  KLX.RAM  and  does  support  the 'Extended
         KL10'.)

         The KL10 microcode  is  different  for  TOPS-10  and  TOPS-20
         systems.   The  KL10  microcode  is different for model A and
         model B  processors.   (What  engineering  calls  a  model  B
         processor  is  sometimes  known  as  a  KL10-PV.) The TOPS-10
         microcode for model A processors is called U.RAM, for model B
         processors  it  is UB.RAM.  The TOPS-20 microcode for model A
         processors is called KLL.RAM, for model B  processors  it  is
         called  KLX.RAM.   The  PDP-11  front  end requires different
         formats of the microcode files.  These translated files  have
         different names.  TOPS-10 model A:  UA.MCB.  TOPS-10 model B:
         UB.MCB.   TOPS-20  model  A:   KLA.MCB.   TOPS-20  model   B:
         KLX.MCB.

     2.  The KL10 microcode is  not  dependent  on  any  monitor,  but
         because  of  hardware  differences  between  the  various -10
         processors, a monitor must  be  built  specifically  for  the
         KL10.   KL10  microcode  version 347 has been tested with the
         TOPS-20 release 5.1 monitor.

See LCREV for information regarding microcode requirements for various
hardware revision levels.



2.0  KNOWN DEFICIENCIES


     None
KL MICROCODE RELEASE DOCUMENT -- V347                           Page 3


3.0  FIXED PROBLEMS

The following problems have been fixed:

347  20 Jan 84--Rewrite the MVST and CMPS dispatches to test for illegal
     bits in the lengths before BRX gets smashed.  UUO was reporting a
     bogus op code in these situations.
     Turn on BIG.PT by default, since it should work with both old and
     new software and hardware.
346  18 Jan 84--Fix the .IFNOT variation of BIG.PT to clear the Keep
     bit if anybody sets it.  This was introduced in 343.
     Add the DDT.BUG conditional.  Under it, rewrite APRID to move
     bit 23 to bit 5 if it is set in the serial number.  This is a
     piece of garbage which I hope can disappear soon (it seems EDDT
     used the serial number to test for a KS-10!).
     Fix the time field on the page map word type dispatch (the assembler
     default was too high).  Also make the PAGCNT conditional hang on
     to the original AR value after it counts the PFH entry (this would
     only matter for an AR parity error).
344  1 Dec 83--Save CVTBDx fill character address, which was getting lost
     if OWGBPs were in use, in a manner similar to that used in CMPSx
     (see edit 310).  Also, fix some conditionals for EXPMSK constant
     generation, so that OWGBPs will assemble with EXTEXP off.
342  8 Nov 83--Change definition of CLR PT LINE to be consistent with
     new paging board (see also 333).  Also, redefine bit 3 of effective
     word to reverse keep sense (so unkept only pages are cleared when
     bit 3 is set).
336  9 Aug 83--Back off 330 for a bit, since TOPS-10 7.02 must be tested
     and OWGs in section 0 fail for string instructions (they get converted
     to TWGs, which are illegal in section 0).  For now, we will maintain
     both sources.
335  Force memory to be released for SMP case of DPB if P > 36 causes no
     actual data to be stored.  Make an OWG reference to an address >
     37,,777777 cause a page fail (GBYTE was stripping the excess bits).
334  Fix conflict generated in CLRPT by 333 by creating new subroutine
     ARSWAP which is just AR_AR SWAP.  Make several other routines call it,
     thus saving a few words.
333  Add new conditional BIG.PT.  Under it, add code to implement the "Keep
     me" bit for paging as bit 5 of the page table, and to move it to page
     map bit 23 during page refill.  Also make DATAO PAG not clear Kept
     pages if bit 3 of the word is off.
332  Redefine all bank 7 ACs as R0,...,R17, and all bank 6 ACs as P0,...,
     P17.  Change all other alias definitions to refer to these.  This
     gives us a uniform cross reference for all scratch register references.
     Put all macro definitions into alphabetical order, making it easier
     to look up a macro definition.  Split the edit history into its own
     file.  There are no functional changes from 331.
331  Allow XSFM anywhere.  Clean up the code a bit in the process.  There
     still remain a number of references to XSFM or XPCW distinctions,
     and these could almost certainly be cleaned up further.
330  Allow one word global byte pointers in section zero.  This includes
     changes in BYTE, EIS, and FP.  Change GBYTE and CNV2WD to return 2;
     eliminate GTST as obsolete.  Also shuffle the calls to these routines
     to conform to the new calling conventions, and put the OWG test at
     the beginning of IBP, ILDB, IDBP, LDB, DPB, and ADJBP.
KL MICROCODE RELEASE DOCUMENT -- V347                           Page 4


327  Add PAGCNT conditional.  Under it, include control to count entry
     into PFH code and DATAO PAG with bit 2 set.



4.0  RELATED DOCUMENTATION


The microcode is implicitly documented in the System Reference Manual,
in  that  it  is  an  implementation  of  a  PDP-10.   The  only other
documentation is in the listing and prints of the KL10 processor.






5.0  FUNCTION OF THE DIFFERENT MICROCODE VERSIONS.


U.RAM is the microprogram which directs  the  operation  of  the  KL10
model  A  hardware  to  emulate the behavior of a PDP-10 for a TOPS-10
system.  UB.RAM is the microprogram which directs the operation of the
KL10  model  B  hardware (KL10-PV) to emulate the behavior of a PDP-10
for a TOPS-10 system.  UB.RAM should look exactly like U.RAM to PDP-10
software.



KLL.RAM is the microprogram which directs the operation  of  the  KL10
model  A  hardware  to  emulate the behavior of a PDP-10 for a TOPS-20
system.  KLX.RAM is the microprogram which directs  the  operation  of
the  KL10  model  B hardware to emulate the behavior of a PDP-10 for a
TOPS-20 system.  KLX.RAM implements the 'Extended KL10'  explained  in
the Hardware Reference Manual.