home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / ZSYS / SIMTEL20 / DOC / HD64180.WS < prev    next >
Text File  |  2000-06-30  |  26KB  |  738 lines

  1. .op
  2.                               ||||||||||||||||||||||||||
  3.                               ||||||||||||||||||||||||||
  4.                               ||||||||||||||||||||||||||
  5.                               ||||||||||||||||||||||||||
  6.                               ||||||||||||||||||||||||||
  7.                               ||||||||||||||||||||||||||
  8.                               ||||||||||||||||||||||||||
  9.                               ||||||||||||||||||||||||||
  10.                               ||||||||||||||||||||||||||
  11.                               
  12.                               
  13.                                    Hitachi HD64180
  14.                                  Summary of Features
  15.                                       Revision 2
  16.                               
  17.                                      Prepared  by
  18.                                      Richard Conn
  19.                               
  20.                               
  21.                                       10 Sep 85
  22.                               
  23.                               
  24.                               ||||||||||||||||||||||||||
  25.                               ||||||||||||||||||||||||||
  26.                               ||||||||||||||||||||||||||
  27.                               ||||||||||||||||||||||||||
  28.                               ||||||||||||||||||||||||||
  29. Information Taken From        ||||||||||||||||||||||||||
  30. "Hitachi HD64180 8-Bit        ||||||||||||||||||||||||||
  31.  High Integration CMOS        ||||||||||||||||||||||||||
  32.  Microprocessor Data Book",   ||||||||||||||||||||||||||
  33.  Advance Information,         ||||||||||||||||||||||||||
  34.  February 1985                ||||||||||||||||||||||||||
  35.                               ||||||||||||||||||||||||||
  36.                               ||||||||||||||||||||||||||
  37.                               ||||||||||||||||||||||||||
  38.                               ||||||||||||||||||||||||||
  39.                               ||||||||||||||||||||||||||
  40.                               ||||||||||||||||||||||||||
  41.                               ||||||||||||||||||||||||||
  42.                               
  43.                                    Echelon, Inc.
  44.                                    101 First Street
  45.                                    Suite 427
  46.                                    Los Altos, CA  94022
  47.                                    415-948-3820
  48.                               
  49.                               ||||||||||||||||||||||||||
  50.                               ||||||||||||||||||||||||||
  51.                               ||||||||||||||||||||||||||
  52.                               ||||||||||||||||||||||||||
  53.                               ||||||||||||||||||||||||||
  54.                               ||||||||||||||||||||||||||
  55.                               ||||||||||||||||||||||||||
  56. .pa
  57.  
  58.  
  59.  
  60.                Hitachi HD64180 Summary of Features
  61.  
  62.  
  63.  
  64.  
  65.  
  66.                 T A B L E   OF   C O N T E N T S
  67.  
  68.   1. Hitachi HD64180............................................1
  69.  
  70.   2. Central Processing Unit (CPU)..............................2
  71.      2.1. Z80 Instruction Set with additions....................2
  72.      2.2. Registers.............................................2
  73.      2.3. Interrupt Modes.......................................3
  74.  
  75.   3. Memory Management Unit.....................................7
  76.      3.1. MMU Registers: CBAR, CBR, BBR.........................7
  77.      3.2. Address Translation Examples..........................9
  78.  
  79.   4. Direct Memory Access Controller...........................11
  80.  
  81.   5. Asynchronous Serial Communication Interface (ASCI)........12
  82.  
  83.   6. Clocked Serial Input/Output Port (CSI/O)..................13
  84.  
  85.   7. Programmable Reload Timer (PRT)...........................13
  86.  
  87.  
  88. .pa
  89. .pn 1
  90.  
  91.  
  92.                          1. Hitachi HD64180
  93.  
  94.  
  95.      64-pin DIP Chip which provides the functions of
  96.      many elements of a computer system, including:
  97.  
  98.  
  99.           o Central Processing Unit (CPU)
  100.  
  101.                - Upward compatable to the Z80
  102.  
  103.  
  104.           o Memory Management Unit (MMU)
  105.  
  106.                - Allows addressing of 512K bytes
  107.  
  108.  
  109.           o 12-Level Vectored Interrupt Controller
  110.  
  111.                - Supports both internal and external
  112.                  interrupt sources
  113.  
  114.  
  115.           o 2-channel Direct Memory Access Controller (DMAC)
  116.  
  117.                - Allows memory-to-memory, memory-to-I/O,
  118.                  and memory-to-memory-mapped-I/O transfers
  119.  
  120.  
  121.           o 2-channel Asynchronous Serial Communications
  122.             Interface (ASCI)
  123.  
  124.                - Like UARTs, with speeds from 150 baud to
  125.                  38,400 baud
  126.  
  127.  
  128.           o 1-channel Clocked Serial I/O Port (CSI/O)
  129.  
  130.                - For high-speed interprocessor communication
  131.                  at 200K baud
  132.  
  133.  
  134.           o 2-channel Programmable Reload Timer (PRT)
  135.  
  136.                - 16-bit counter driven by phi/20
  137.  
  138.  
  139.           o Dynamic RAM Refresh Circuit
  140.  
  141.                - Refreshes dynamic RAMs without the need for
  142.                  additional external support chips
  143.  
  144. .pa
  145.  
  146.                   2. Central Processing Unit (CPU)
  147.  
  148.  
  149.                2.1. Z80 Instruction Set with additions:
  150.  
  151.                o SLP (SLEEP Mode)
  152.                     - Similar to HALT, but low-power
  153.                     - Compare SLEEP and HALT
  154.  
  155.           Function            HALT           SLEEP
  156.           Internal CPU Clock  Active         Stops
  157.           Int Crystal Oscill  Active         Active
  158.           Interrupt System    Functional     Functional
  159.           DRAM Refresh        Active         Stops
  160.           Internal I/O Sys    Active         Active
  161.           DMAC System         Active         Stops
  162.           Address Bus         Active (Dummy) High
  163.           Data Bus            Active (Dummy) Tristate
  164.           Exits
  165.                Reset          Operational    Operational
  166.                Interrupt      Operational    Operational
  167.  
  168.  
  169.                o MLT (Multiply)
  170.                     - BC=B*C, DE=D*E, HL=H*L, SP=S*P
  171.  
  172.                o Special I/O Instructions for On-Chip Devices
  173.                     - IN0, OUT0 like IN, OUT
  174.                     - OTIM, OTIMR, OTDM, OTDMR are Block I/O
  175.                          Load from (HL) to port (C) for (B)
  176.                          bytes, increment HL and C, decrement B
  177.  
  178.                o Test Instructions (Non-Destructive AND)
  179.                     - Test register, immediate, memory
  180.                     - Test I/O port
  181.  
  182.  
  183.                             2.2. Registers
  184.  
  185.                o Same Set as Z80
  186.  
  187.                o Interrupt Vector Register functions are
  188.                     extended over the Z80
  189.  
  190. .pa
  191.             Central Processing Unit (CPU), Continued
  192.  
  193.  
  194.                          2.3. Interrupt Modes
  195.  
  196.                o 12 Interrupt Sources
  197.                     - TRAP (Undefined Op-code Trap)
  198.                     - NMI (Non-Maskable Interrupt from pin)
  199.                     - INT0, INT1, INT2 (Maskable from pin)
  200.                     - Internal Timers 0 and 1
  201.                     - DMA Channels 0 and 1
  202.                     - Clocked Serial I/O Port
  203.                     - ASCI channels 0 and 1
  204.  
  205.                o NMI is similar to NMI on the Z80
  206.  
  207.                o INT0 is similar to Maskable Interrupts on Z80
  208.                     - Mode 0 allows instruction fetch from
  209.                       data bus (1-byte RST, like 8080)
  210.                     - Mode 1 forces restart at 38H
  211.                     - Mode 2 fetches low byte of vector table
  212.                       from the address bus, high byte from I
  213.                       register; this is address of address of
  214.                       interrupt service routine
  215.  
  216.                o INT1 and INT2 similar to INT0 Mode 2, but
  217.                  low-order 5 bits are fixed (00000 for INT1
  218.                  and 00010 for INT2), IL register provides
  219.                  next 3 bits (set by user), and I register
  220.                  provides upper 8 bits (set by user)
  221.  
  222.                o Other interrupt sources, such as timers,
  223.                  DMACs, CSI/O, and ASCI, function like INT1
  224.                  and INT2; values supplied to low-order 5
  225.                  bits are:
  226.  
  227.           Interrupt      Low-Order 5 Bits    Priority
  228.           INT1              0 0 0 0 0        Highest
  229.           INT2              0 0 0 1 0
  230.           Timer 0           0 0 1 0 0
  231.           Timer 1           0 0 1 1 0
  232.           DMAC 0            0 1 0 0 0
  233.           DMAC 1            0 1 0 1 0
  234.           CSI/O             0 1 1 0 0
  235.           ASCI 0            0 1 1 1 0
  236.           ASCI 1            1 0 0 0 0        Lowest
  237.  
  238.  
  239. .pa
  240.             Central Processing Unit (CPU), Continued
  241.  
  242.                    Interrupt Modes, Continued
  243.  
  244.                o Short Explanations of Interrupts
  245.  
  246.  
  247.                                NMI
  248.  
  249.      1. Interrupt is Signalled on NMI Pin
  250.      2. PC is pushed onto stack by CPU
  251.      3. Instruction at 66H is executed as first instruction of
  252.           Interrupt Service Routine
  253.      4. RETN instruction returns from Non-Maskable Interrupt
  254.  
  255.  
  256.                           INT0, Mode 0
  257.  
  258.      1. Interrupt is Signalled on INT0 Pin
  259.      2. Interrupting Device Places 1-byte Instruction (RST)
  260.           on Data Bus
  261.      3. Processor Performs Subroutine Call to Memory Locations
  262.           0, 8, 10H, 18H, 20H, 28H, 30H, or 38H
  263.      4. Interrupt Service Routine runs from there
  264.  
  265.  
  266.                           INT0, Mode 1
  267.  
  268.      1. Interrupt is Signalled on INT0 Pin
  269.      2. PC is pushed onto stack by CPU
  270.      3. Instruction at 38H is executed as first instruction of
  271.           Interrupt Service Routine
  272.      4. RETI instruction returns from Interrupt
  273.  
  274.  
  275.                           INT0, Mode 2
  276.  
  277.      1. Interrupt is Signalled on INT0 Pin
  278.      2. PC is pushed onto stack by CPU
  279.      3. Interrupting device places low-order 8 bits of address
  280.           of address table on data bus and is picked up by CPU
  281.      4. I Register contains high-order 8 bits of address of
  282.           address table
  283.      5. I Register + 8-bit Data Bus forms 16-bit Address of
  284.           address table entry low-byte; next byte is high-byte;
  285.           high-byte and low-byte combine to form address of
  286.           Interrupt Service Routine
  287.      6. PC is pushed onto stack by CPU
  288.      7. RETI instruction returns from Interrupt
  289.      8. Various devices work in this way, such as Z80-CTC,
  290.           Z80-DMA, Z80-SIO, Z80-DART, and they sense the RETI
  291.           instruction on the data bus to reset themselves as
  292.           well as providing the low-order 8 bits of the address
  293.           of the address table entry
  294. .pa
  295.             Central Processing Unit (CPU), Continued
  296.  
  297.                    Interrupt Modes, Continued
  298.  
  299.                o Short Explanations of Interrupts, Continued
  300.  
  301.  
  302.    -- Picture of INT0, Mode 2 Interrupt Vector Acquisition --
  303.  
  304.           16-bit Vector                 Memory
  305.  
  306.      -----------------------
  307.      | I Reg    | Data Bus |
  308.      -----------------------
  309.           |          |               --------------------
  310.      Base Page    Offset             | High-order bits  |
  311.           |          |               --------------------
  312.           -------------------------> | Low-order 8 bits |
  313.           |                          --------------------
  314.          ...                                 ...
  315.           |                          --------------------
  316.           -------------------------> | First entry, Low |
  317.                                      --------------------
  318.  
  319.  
  320.                INT1, INT2, and Internal Interrupts
  321.  
  322.      1. Interrupt is Signalled on INT1 or INT2 Pin or by
  323.           Internal Interrupt Source (Timer 0 or 1,
  324.           DMAC 0 or 1, CSI/O, or ASCI 0 or 1)
  325.      2. Like INT0, Mode 2 Interrupts except:
  326.           Low-order 5 bits come from fixed code associated
  327.           with the source, next 3 bits come from IL register,
  328.           and high-order 8 bits come from I register
  329.      3. PC is pushed onto the stack
  330.      4. RETI returns from Interrupt
  331.  
  332.  
  333. -- Picture of INT1, INT2, and Internal Interrupt Vector Acquisition --
  334.  
  335.           16-bit Vector                 Memory
  336.          8        3     5
  337.      ------------------------
  338.      | I Reg    | IL | Code |
  339.      ------------------------
  340.           |          |               --------------------
  341.      Base Page    Offset             | High-order bits  |
  342.           |          |               --------------------
  343.           -------------------------> | Low-order 8 bits |
  344.           |                          --------------------
  345.          ...                                 ...
  346.           |                          --------------------
  347.           -------------------------> | First entry, Low |
  348.                                      --------------------
  349. .pa
  350.             Central Processing Unit (CPU), Continued
  351.  
  352.                    Interrupt Modes, Continued
  353.  
  354.                o Short Explanations of Interrupts, Continued
  355.  
  356.  
  357.                          TRAP Interrupt
  358.  
  359.      1. Triggered by undefined op-code fetch in 1st, or 2nd
  360.           byte of instruction
  361.      2. PC, which points to bad byte, is saved on stack
  362.      3. Vector to logical (depending on bank) address 0
  363.      4. Can be used to handle "extended" instruction set
  364.  
  365.  
  366.  
  367.               ITC (Interrupt/Trap Control) Register
  368.  
  369.      1. TRAP bit indicates if TRAP interrupt occurred; may
  370.           be reset by software
  371.      2. UFO (Undefined Fetch Object) bit indicates which opcode
  372.           TRAP occurred on
  373.      3. ITE0, ITE1, and ITE2 bits enable/disable INT0, INT1, and
  374.           INT2 interrupts
  375.      4. EI and DI instructions apply to enabled interrupts only
  376.  
  377.  
  378.                    IL (Interrupt Low) Register
  379.  
  380.      1. Used in conjunction with INT1 and INT2
  381.      2. High 3-bits may be read and written by software
  382.  
  383.  
  384.                      I (Interrupt) Register
  385.  
  386.      1. Used in conjunction with INT0 Mode 2, INT1, and INT2
  387.      2. Similar to Z80 I Register
  388.      3. May be read and written by software
  389.  
  390.  
  391. .pa
  392.  
  393.                      3. Memory Management Unit
  394.  
  395.  
  396.      o 19 address pins are coming off the chip (A0 to A18)
  397.  
  398.  
  399.      o the 19th pin is software selectable as address or
  400.           timer pulse (timer 1)
  401.  
  402.  
  403.      o all memory is divided into 64K banks, each bank containing
  404.           three areas:
  405.  
  406.                     ---------------------
  407.                     |                   |
  408.                     |  Common Area 1    |
  409.                     |                   |
  410.      CBAR High ---> ---------------------
  411.                     |                   |
  412.                     |  Bank Area        |
  413.                     |                   |
  414.      CBAR Low ----> ---------------------
  415.                     |                   |
  416.                     |  Common Area 0    |
  417.                     |                   |
  418.                     ---------------------
  419.  
  420.  
  421.  
  422.                   3.1. MMU Registers: CBAR, CBR, BBR
  423.  
  424.  
  425.      o CBAR (Common/Bank Area Register) contains the high-order
  426.           4 bits of the base address of Common Area 1 in
  427.           its high-order 4 bits (CBAR High) and the high-order
  428.           4 bits of the base address of Bank Area in its
  429.           low-order 4 bits (CBAR Low)
  430.  
  431.                               CBAR
  432.  
  433.                4 bits              4 bits
  434.           -------------------------------------------
  435.           | Common Area 1 Base | Bank Area Base     |
  436.           -------------------------------------------
  437.  
  438. .pa
  439.                 Memory Management Unit, Continued
  440.  
  441.                     MMU Registers, Continued
  442.  
  443.  
  444.      o CBR (Common Base Register) specifies high-seven bits
  445.           of 19-bit effective address of Common Area 1; if
  446.           16-bit address is in Common Area 1 (high 4 bits
  447.           >= CBAR high), then add CBR to high 4 bits to
  448.           get high 7-bits of address
  449.  
  450.                               16 Bits Total
  451.                          -------------------------------
  452.      Logical Address     | High 4 | Lower 12 Bits      |    
  453.                          -------------------------------
  454.                               +         |
  455.                   -----------------     |
  456.      CBR          | Hi 3 | Low 4  |     |
  457.                   -----------------     |
  458.                     |                   |
  459.                     |                   |
  460.                     V                   V
  461.                          19 Bits Total
  462.                   --------------------------------------
  463. Physical Address  | High 7 Bits   | Lower 12 Bits      |
  464.                   --------------------------------------
  465.  
  466.      o BBR (Bank Base Register) specifies high-seven bits
  467.           of 19-bit effective address of Bank Area; if
  468.           16-bit address is in Bank Area (high 4 bits
  469.           >= CBAR low and < CBAR high), then add BBR to
  470.           high 4 bits to get high 7-bits of address
  471.  
  472.                               16 Bits Total
  473.                          -------------------------------
  474.      Logical Address     | High 4 | Lower 12 Bits      |    
  475.                          -------------------------------
  476.                               +         |
  477.                   -----------------     |
  478.      BBR          | Hi 3 | Low 4  |     |
  479.                   -----------------     |
  480.                     |                   |
  481.                     |                   |
  482.                     V                   V
  483.                          19 Bits Total
  484.                   --------------------------------------
  485. Physical Address  | High 7 Bits   | Lower 12 Bits      |
  486.                   --------------------------------------
  487.  
  488.  
  489. .pa
  490.                 Memory Management Unit, Continued
  491.  
  492.                   3.2. Address Translation Examples
  493.  
  494.           1. CBAR Low = 0, CBAR High = F
  495.  
  496.                     Memory
  497.                ----------------
  498.                | Common Area 1|  4K
  499.      F000H --> ----------------
  500.                |              |
  501.                | Bank         | 60K
  502.                |    Area      |
  503.                |              |
  504.      0000H --> ----------------
  505.  
  506.  
  507.  
  508.      Let CBR = 70H, BBR = 0
  509.  
  510.      Memory Regions Mapped
  511.           Common Area 0: Not Mapped
  512.           Bank Area    : 00000H to 0EFFFH
  513.           Common Area 1: 7F000H to 7FFFFH
  514.  
  515.           Logical Address     Physical Address
  516.                0 000          0 000 + 0 0 000 = 00000H (Bank)
  517.                4 02C          4 02C + 0 0 000 = 0402CH (Bank)
  518.                E FFF          E FFF + 0 0 000 = 0EFFFH (Bank)
  519.                F 000          F 000 + 7 0 000 = 7F000H (Common 1)
  520.                F 21A          F 21A + 7 0 000 = 7F21AH (Common 1)
  521.  
  522.      Let CBR = 60H, BBR = 20H
  523.  
  524.      Memory Regions Mapped
  525.           Common Area 0: Not Mapped
  526.           Bank Area    : 20000H to 2EFFFH
  527.           Common Area 1: 6F000H to 6FFFFH
  528.  
  529.           Logical Address     Physical Address
  530.                0 000          0 000 + 2 0 000 = 20000H (Bank)
  531.                4 02C          4 02C + 2 0 000 = 2402CH (Bank)
  532.                E FFF          E FFF + 2 0 000 = 2EFFFH (Bank)
  533.                F 000          F 000 + 6 0 000 = 6F000H (Common 1)
  534.                F 21A          F 21A + 6 0 000 = 6F21AH (Common 1)
  535.  
  536.  
  537. .pa
  538.                 Memory Management Unit, Continued
  539.  
  540.              Address Translation Examples, Continued
  541.  
  542.           2. CBAR Low = 2, CBAR High = F
  543.  
  544.                     Memory
  545.                ----------------
  546.                | Common Area 1|  4K
  547.      F000H --> ----------------
  548.                |              |
  549.                | Bank         | 52K
  550.                |    Area      |
  551.                |              |
  552.      2000H --> ----------------
  553.                | Common Area 0|  8K
  554.      0000H --> ----------------
  555.  
  556.  
  557.  
  558.      Let CBR = 70H, BBR = 20H
  559.  
  560.      Memory Regions Mapped
  561.           Common Area 0: 00000H to 01FFFH
  562.           Bank Area    : 20000H to 2EFFFH
  563.           Common Area 1: 7F000H to 7FFFFH
  564.  
  565.           Logical Address     Physical Address
  566.                0 000          0 000 + 0 0 000 = 00000H (Common 0)
  567.                4 02C          4 02C + 2 0 000 = 2402CH (Bank)
  568.                E FFF          E FFF + 2 0 000 = 2EFFFH (Bank)
  569.                F 000          F 000 + 7 0 000 = 7F000H (Common 1)
  570.                F 21A          F 21A + 7 0 000 = 7F21AH (Common 1)
  571.  
  572.      Let CBR = 60H, BBR = 40H
  573.  
  574.      Memory Regions Mapped
  575.           Common Area 0: 00000H to 01FFFH
  576.           Bank Area    : 40000H to 4EFFFH
  577.           Common Area 1: 6F000H to 6FFFFH
  578.  
  579.           Logical Address     Physical Address
  580.                0 000          0 000 + 0 0 000 = 00000H (Common 0)
  581.                4 02C          4 02C + 4 0 000 = 4402CH (Bank)
  582.                E FFF          E FFF + 4 0 000 = 4EFFFH (Bank)
  583.                F 000          F 000 + 6 0 000 = 6F000H (Common 1)
  584.                F 21A          F 21A + 6 0 000 = 6F21AH (Common 1)
  585.  
  586.  
  587. .pa
  588.  
  589.                  4. Direct Memory Access Controller
  590.  
  591.  
  592.      o Source and Destination Memory Addresses are 19 bits
  593.           long (anywhere within 512K bytes)
  594.  
  595.      o I/O addresses are 16 bits long
  596.  
  597.      o Transfer Length is 64K bytes (16-bit length register)
  598.  
  599.      o Channel 0 can do memory-to-memory, memory-to-I/O, and
  600.           memory-to-memory-mapped-I/O transfers; registers:
  601.                SAR0      Source Address Register
  602.                DAR0      Destination Address Register
  603.                BCR0      Byte Count Register
  604.  
  605.      o Channel 1 can do memory-to-I/O transfers only; registers:
  606.                MAR1      Memory Address Register
  607.                IAR1      I/O Address Register
  608.                BCR1      Byte Count Register
  609.  
  610.      o Other registers and some of their data:
  611.                DSTAT     DMA Status
  612.                               Enable/Disable Channels 0 and 1
  613.                               Enable/Disable Interrupts 0 and 1
  614.                DMODE     DMA Mode (Channel 0 Only)
  615.                               Destination Memory or I/O
  616.                               Source Memory or I/O
  617.                DCNTL     DMA/WAIT Control
  618.                               Memory Wait, I/O Wait
  619.                               Memory-to-I/O or I/O-to-Memory
  620.  
  621.  
  622.                       -- The DMA Concept--
  623.  
  624.      1. Set up DMA Controller to Perform Transfer Function
  625.           Specify source, destination, etc
  626.  
  627.      2. Initiate Transfer Function and then Proceed with
  628.           other Processing
  629.  
  630.      3. Either check for transfer complete at later time or
  631.           be interrupted by DMA controller
  632.  
  633.      4. With 2 DMA Channels, two DMA transfers can be going
  634.           on at once
  635.  
  636. .pa
  637.  
  638.        5. Asynchronous Serial Communication Interface (ASCI)
  639.  
  640.  
  641.      o Full Duplex
  642.      o 7- or 8-bit Data Length
  643.      o Software-controlled 9th Data Bit for Multiprocessor Comm
  644.      o 1 or 2 Stop Bits
  645.      o Odd, Even, or No Parity
  646.      o Parity, Overrun, or Framing Error Detection
  647.      o Programmable Baud Rate Generator to 38,400 baud
  648.      o Control Signals
  649.           Channel 0 has DCD (in), CTS (in), RTS (out)
  650.           Channel 1 has CTS (in)
  651.      o Can Generate Internal Interrupts
  652.      o Works with DMA Controllers
  653.  
  654.  
  655.  
  656.                        -- SPECIAL NOTE --
  657.  
  658.      The  DCD line for ASCI Channel 0 shuts down the receiver  of 
  659. Channel 0 when not true (logic 1,  since it is active low)!  This 
  660. prohibits  operation  of the ASCI with devices which use  DCD  to 
  661. indicate  the  presence of a carrier but need to be  communicated 
  662. with whether a carrier is available or not.   One such device  is 
  663. the  DC  Hayes Smartmodem.   The CTS line may not be used  as  an 
  664. alternate to DCD since loss of CTS shuts off the transmitter TDRE 
  665. bit (but not the transmitter itself - just the status bit).  This 
  666. information  is  documented in the 64180 manual on page  67,  2nd 
  667. paragraph, and page 72, 1st and 2nd paragraphs.
  668.  
  669.      A  possible  solution,  which requires  additional  external 
  670. circuitry,  is to OR the Channel 0 RTS output with the DCD  input 
  671. and  feed this into the Channel 0 DCD input.   With this circuit, 
  672. when the software needs to communicate regardless of the state of 
  673. the  carrier,  RTS  can  be set true.   ORing with  a  false  DCD 
  674. generates  a  true  input to  the  64180,  and  communication  is 
  675. enabled.  When normal communication is in play, RTS should be set 
  676. to  false so that DCD can truly be monitored and loss of  carrier 
  677. detected.   The  RS-232C RTS signal should be forced true if this 
  678. external circuitry is in place.
  679.  
  680.  
  681.           HD64180            Incoming DCD
  682.      ---------------------    V
  683.      |                   |    ---| OR ->--   NOTE:
  684.      |       RTS0/Pin 42 -->-----|       |   All logical
  685.      |                   |               |   levels are
  686.      |       DCD0/Pin 44 ----------<------   inverted, so
  687.      |                   |                   a simple OR
  688.      ---------------------                   should be enough
  689.  
  690.  
  691. .pa
  692.  
  693.      Another  possible  solution  (proposed by  Ken  Davidson  at 
  694. Micromint)  is to wire the incoming DCD to the CTS input.   While 
  695. loss  of DCD terminates the output status checking  function,  it 
  696. does not terminate the output function itself.   Hence, chars may 
  697. be output by entering a relatively long timing loop (to make sure 
  698. the  last  byte had plenty of time to be clocked  out)  and  then 
  699. outputting the next byte.   This solution requires no significant 
  700. additional  wiring  and the SB180 (from Micromint) can handle  it 
  701. easily.
  702.  
  703.  
  704.  
  705.             6. Clocked Serial Input/Output Port (CSI/O)
  706.  
  707.  
  708.      o Uses Internal or External Clock
  709.  
  710.      o Can be polled or interrupt-driven
  711.  
  712.      o Speeds up to 200K baud
  713.  
  714.  
  715.  
  716.  
  717.                  7. Programmable Reload Timer (PRT)
  718.  
  719.  
  720.      o Two Channels
  721.  
  722.      o 16-bit Down Counter and 16-bit Reload Register
  723.  
  724.      o Output can be in the form of interrupts or pulsing the
  725.           A18/TOUT pin
  726.  
  727.  
  728.                          -- Operation --
  729.  
  730.      1. Set Down Counter and Reload Registers
  731.      2. Set control flags (use interrupts, use TOUT, use both)
  732.      3. Start timer
  733.      4. When timer goes off, it starts over from reload
  734.           register value
  735.      5. Timer can be stopped at any time
  736.  
  737.  
  738.