fbpx
Wikipedia

Tube (BBC Micro)

In computing, the Tube is the expansion interface and architecture of the BBC Microcomputer System which allows the BBC Micro to communicate with a second processor, or coprocessor.

Under the Tube architecture, the coprocessor runs the application software for the user, whilst the Micro (acting as a host) provides all I/O functions, such as screen display, keyboard and storage devices management. A coprocessor unit can be coldplugged into any BBC Micro with a disk interface (whose ROM contained the necessary host software) and used immediately.

Implementation

The 40-pin IDC "Tube" connector is a simple slave connection to the host processor's main bus, with 8 data lines, 7 address lines, and an interrupt input. The Tube protocols are implemented by hardware in the attached device.

 
Interior of 6502 Second Processor

Inside the coprocessor unit a proprietary chip (the Tube ULA, manufactured initially by Ferranti) interfaces and logically isolates the host and coprocessor buses. This allows the Tube to work with a completely different bus architecture in the coprocessor unit. The other active components needed are a microprocessor, some RAM, a small ROM containing processor specific client code, glue logic such as an address decoder and a power supply.

The two processors communicate through four pairs of FIFO buffers in the Tube ULA. Console input/output, error messages, data transfers and system calls each have their own pair of buffers, one for each direction. The queue capacity varies between 1 and 24 bytes, depending on the dedicated buffer function. Each buffer has a control register and status register to monitor its state and configure the raising of interrupts.

The protocol for the use of these buffers is rigorously specified by Acorn Computers[1] and amounts to interprocess communication by message passing. Most interaction is asynchronous but fast block transfers are synchronous and consist of the host blindly running a simple fetch-store loop, which defines the transfer rate. The coprocessor is synchronised by passing a dummy byte and then regulated by the relevant buffer semaphore.

The general-purpose nature of the Tube connector in principle allows it to be used for any type of high-speed peripheral, although Acorn only uses it for Tube coprocessors. The BBC Micro/Master range provides 5 address lines for the address range &60–&7F but the Tube protocol uses the lowest 3 bits. Only these 3 address lines are connected to internal Tube sockets, as found in the BBC Master or Universal Second Processor Unit.

Applications

Numerous coprocessors were developed for the Tube. Most commonly seen is a MOS Technology 6502 processor which allows unmodified BBC Micro programs to run faster and with more memory, as long as they use the API for all I/O.[1][2] There is also a Zilog Z80 processor to run CP/M and a National Semiconductor 32016 processor running Panos (and unofficially a UNIX variant).[citation needed]

These coprocessors form the basis of the Acorn Business Computer series, the higher end machines being repackaged BBC Micros with a coprocessor attached via the Tube. The Master Series supports two Tube connections, allowing for a coprocessor fitted inside the case and another connected externally, but only one can be used in any powered session. An internal 6502 processor can be fitted, or an Intel 80186 based system for DOS compatibility (although in practice this is limited).[3]

The Tube has also been used during the initial development of the ARM processor. An evaluation board was developed that again uses the BBC Micro as a host system for I/O operations.

Acorn had strongly discouraged BBC Micro programmers from directly accessing system memory and hardware, favouring official API calls.[4] This is ostensibly to ensure applications can be seamlessly moved to the Tube 6502 coprocessor, since direct access from there is impossible. When a program calls one of the MOS entry points, a replacement subroutine in the coprocessor's ROM passes a corresponding message to the host which carries out the operation and passes back the result. In this way an application can run identically on the host or the coprocessor. Other CPU models use a custom API, which is typically an orthogonal translation of the 6502 API into a native format.

References

  1. ^ a b Acorn Application Note 004, "Tube Application Note"
  2. ^ Although the most commonly-cited reason for software running faster on the second processor was it can offload I/O tasks such as graphics-drawing computations to the host processor, a much more important consideration is clock speed: the host processor is limited to 2MHz to allow time for VDU-refresh to access the RAM, whereas the coprocessor can run at 3MHz, with a much simpler DRAM refresh stalling it at 68kHz, see pages 7 and 19 of the 6502 Second Processor Service Manual archived at http://chrisacorns.computinghistory.org.uk/docs/Acorn/Manuals/Acorn_65022ndprocSM.pdf
  3. ^ Watford Electronics,"Advanced Reference Manual for the BBC Master Series",1988
  4. ^ Coll, John (1982) [1982]. Allen, David (ed.). The BBC Microcomputer User Guide (zipped RTF). London: British Broadcasting Corporation. pp. 443, 450, 473. ISBN 0-563-16558-8. Retrieved 25 January 2010.

tube, micro, computing, tube, expansion, interface, architecture, microcomputer, system, which, allows, micro, communicate, with, second, processor, coprocessor, under, tube, architecture, coprocessor, runs, application, software, user, whilst, micro, acting, . In computing the Tube is the expansion interface and architecture of the BBC Microcomputer System which allows the BBC Micro to communicate with a second processor or coprocessor Under the Tube architecture the coprocessor runs the application software for the user whilst the Micro acting as a host provides all I O functions such as screen display keyboard and storage devices management A coprocessor unit can be coldplugged into any BBC Micro with a disk interface whose ROM contained the necessary host software and used immediately Implementation EditThe 40 pin IDC Tube connector is a simple slave connection to the host processor s main bus with 8 data lines 7 address lines and an interrupt input The Tube protocols are implemented by hardware in the attached device Interior of 6502 Second Processor Inside the coprocessor unit a proprietary chip the Tube ULA manufactured initially by Ferranti interfaces and logically isolates the host and coprocessor buses This allows the Tube to work with a completely different bus architecture in the coprocessor unit The other active components needed are a microprocessor some RAM a small ROM containing processor specific client code glue logic such as an address decoder and a power supply The two processors communicate through four pairs of FIFO buffers in the Tube ULA Console input output error messages data transfers and system calls each have their own pair of buffers one for each direction The queue capacity varies between 1 and 24 bytes depending on the dedicated buffer function Each buffer has a control register and status register to monitor its state and configure the raising of interrupts The protocol for the use of these buffers is rigorously specified by Acorn Computers 1 and amounts to interprocess communication by message passing Most interaction is asynchronous but fast block transfers are synchronous and consist of the host blindly running a simple fetch store loop which defines the transfer rate The coprocessor is synchronised by passing a dummy byte and then regulated by the relevant buffer semaphore The general purpose nature of the Tube connector in principle allows it to be used for any type of high speed peripheral although Acorn only uses it for Tube coprocessors The BBC Micro Master range provides 5 address lines for the address range amp 60 amp 7F but the Tube protocol uses the lowest 3 bits Only these 3 address lines are connected to internal Tube sockets as found in the BBC Master or Universal Second Processor Unit Applications EditNumerous coprocessors were developed for the Tube Most commonly seen is a MOS Technology 6502 processor which allows unmodified BBC Micro programs to run faster and with more memory as long as they use the API for all I O 1 2 There is also a Zilog Z80 processor to run CP M and a National Semiconductor 32016 processor running Panos and unofficially a UNIX variant citation needed These coprocessors form the basis of the Acorn Business Computer series the higher end machines being repackaged BBC Micros with a coprocessor attached via the Tube The Master Series supports two Tube connections allowing for a coprocessor fitted inside the case and another connected externally but only one can be used in any powered session An internal 6502 processor can be fitted or an Intel 80186 based system for DOS compatibility although in practice this is limited 3 The Tube has also been used during the initial development of the ARM processor An evaluation board was developed that again uses the BBC Micro as a host system for I O operations Acorn had strongly discouraged BBC Micro programmers from directly accessing system memory and hardware favouring official API calls 4 This is ostensibly to ensure applications can be seamlessly moved to the Tube 6502 coprocessor since direct access from there is impossible When a program calls one of the MOS entry points a replacement subroutine in the coprocessor s ROM passes a corresponding message to the host which carries out the operation and passes back the result In this way an application can run identically on the host or the coprocessor Other CPU models use a custom API which is typically an orthogonal translation of the 6502 API into a native format References Edit a b Acorn Application Note 004 Tube Application Note Although the most commonly cited reason for software running faster on the second processor was it can offload I O tasks such as graphics drawing computations to the host processor a much more important consideration is clock speed the host processor is limited to 2MHz to allow time for VDU refresh to access the RAM whereas the coprocessor can run at 3MHz with a much simpler DRAM refresh stalling it at 68kHz see pages 7 and 19 of the 6502 Second Processor Service Manual archived at http chrisacorns computinghistory org uk docs Acorn Manuals Acorn 65022ndprocSM pdf Watford Electronics Advanced Reference Manual for the BBC Master Series 1988 Coll John 1982 1982 Allen David ed The BBC Microcomputer User Guide zipped RTF London British Broadcasting Corporation pp 443 450 473 ISBN 0 563 16558 8 Retrieved 25 January 2010 Retrieved from https en wikipedia org w index php title Tube BBC Micro amp oldid 1126993800, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.