The NuBus - PowerPoint PPT Presentation

1 / 18
About This Presentation
Title:

The NuBus

Description:

Each NuBus device contained its own independent 68000 processor, working space ... Since more than one processor/device can be connected to the same bus, some ... – PowerPoint PPT presentation

Number of Views:52
Avg rating:3.0/5.0
Slides: 19
Provided by: marren
Category:

less

Transcript and Presenter's Notes

Title: The NuBus


1
The NuBus
  • Miles Carter
  • Ben Stoutenburgh
  • Jim Vallerie

2
IntroductionSome NuBus History
  • NuBus was originally created in the 1970s at MIT
    as a new parallel computing bus implementation.
  • NuBus was a pioneer of 32-bit design that aimed
    to support the predicted market shift towards
    universal, industry wide 32-bit implementations.
  • Emphasis was placed on simplicity of install and
    configuration a NuBus hardware card could be
    plugged into any NuBus machine as long as it was
    supplied the correct device driver.
  • Like many other components of the same nature,
    NuBus was born under the auspices of the
    Institute of Electrical and Electronic Engeineers
    (ANSI/IEEE STD 1186-1988).
  • NuBus was adopted most notably by Apple in their
    Macintosh II personal computer.

3
IntroductionSome More NuBus History
  • The entire NuBus system was implemented as a task
    sharing array of devices within the NuBus device
    slots.
  • Each NuBus device contained its own independent
    68000 processor, working space in RAM, and basic
    operating system services.
  • The taxing load of time consuming/time critical
    tasks can be taken of a NuBus equipped systems
    main logic board and placed in the hands of an
    appropriate independent NuBus processor.
  • The success of NuBus was relatively limited.
    Although it saved production costs on the main
    board hardware end, it increased costs for
    expansion device producers.
  • NuBuss use in the Macintosh computing platform
    was extinguished when the company adopted the PCI
    bus in the early 1990s.

4
Bus ArbitrationBasic Arbitration Process
  • Since more than one processor/device can be
    connected to the same bus, some mechanism is
    needed to deal with simultaneous requests for bus
    usage. Arbitration is how multiple requests are
    recognized and given priority by the system.
  • NuBus is of distributed arbitration each device
    on the bus chain (master) monitors the other
    devices (masters) competing for the bus and
    determines whether it should assume control of
    the bus based on its priority in relation to its
    competitors.
  • Each slot has its own unique ID code in the bus.
    The ID is fixed and defined for each slot by
    hardwires in the buses backplane. Rather than
    the card defining its ID in the bus, the data
    path of the backplane dictates each slots unique
    ID.
  • Overall, NuBus is decentralized, which means that
    no particular slot assumes master control over
    each successive slot in the bus. The NuBus
    system of priority determines which slot in the
    bus assumes control at any given time.

5
Bus ArbitrationThe Details
  • NuBus supports multiple bus masters at the same
    time.
  • There are four arbitration lines, and one
    prioritization algorithm accessed when multiple
    requestors compete for bus control (usually the
    requestor with the highest ID number is given
    control).
  • When control is desired, a requestor asserts
    request for control over its own bus request
    line. It continues this assertion until the bus
    is free and it is awarded control.
  • No special master arbiter exists to decide which
    master will get the bus. All priority is handled
    by electrical current flow and multiplexer
    control.
  • Simplified circuit for NuBus arbitration
  • Lines ID0 to ID3 define the slot location and,
    therefore, the priority level of the master.
  • Lines ARB0 to ARB3 are the NuBus arbitration
    lines that run the length of the bus.

6
Bus ArbitrationThe Bus Request Process
  • A potential master that wants to use the bus
    places its arbitration level on the 4-bit
    arbitration bus, ID3 to ID0.
  • The arbitration bus lines are driven by
    open-collector circuits and can, therefore, be
    driven by more than one card simultaneously
    without creating bus contention.
  • An open-collector gate can force the bus actively
    down to an electrically low level or passively
    let it remain in an electrically high level. If
    several open-collector circuits drive the bus in
    different directions, the electrically low state
    always wins. Since NuBus uses negative logic, the
    arbitration number is inverted so that the
    highest level of priority is 0000 and the least
    is 1111.
  • The key to NuBus arbitration is simpleif a
    competing master sees a higher level on the bus
    than its own level, it ceases to compete for the
    bus. Each requester simultaneously drives the
    arbitration bus and observes the signal on bus.
    If it detects the presence of a requester at a
    higher level, it backs off.

For further reading visit http//wheelie.tees.ac.
uk/users/a.clements/Buses/Buses.htm
7
Bus ArbitrationAn Example Of Arbitration
  • Consider the case in which three masters numbered
    0100 (four), 0101 (five) and 0010 (two)
    simultaneously put the codes 1011, 1010 and 1101,
    respectively, onto the arbitration bus.
  • As the arbitration lines are open-collector, any
    output at a 0 level will pull the bus down to 0.
    In this example, the bus will be forced into the
    state 1000. The master at level 2 that puts the
    code 1101 on the arbitration bus will detect that
    ARB2 is being pulled down and will therefore
    leave the arbitrating process and the arbitration
    bus will now have the value 1010. The master with
    the code 1011 will detect that ARB1 is being
    pulled down and will leave the arbitration
    process. The value on the arbitration bus is now
    1010 and the master with that value (five) has
    gained control.
  • The signal labeled ARBITRATE permits the master
    to arbitrate for the bus, and the output GRANT is
    asserted if the master wins the arbitration.
  • Because NuBus arbitration uses simple
    non-sequential arbitration logic and arbitration
    can take place in parallel with normal bus
    activity, the NuBus is well suited to
    multiprocessing applications.

8
Data FormatsGeographic Addressing
  • NuBus implements geographic addressing each card
    in a NuBus system is partitioned a unique slice
    of memory from the address space spanned in main
    memory for the entire system.
  • The entire NuBus is allocated a 256 MByte address
    space called slot space. This space is
    subdivided into 16 blocks of 16 Mbytes (each slot
    has its own 16 Mbyte slot). NuBus cannot support
    more than 16 slots.
  • Designing systems where each bus slot has its own
    space in memory is much less difficult than
    systems that deal with shared bus storage (less
    management of data overlap/collision).

9
Data TransferCommon Standards
  • IEEE 1196 standards
  • 10 Mhz clock
  • Maximum burst throughput of 40Mbps
  • Average speeds of 10 to 20Mbps
  • NuBus90 standards
  • 20 Mhz clock
  • Maximum burst throughput of 70Mbps
  • Average speed of 30Mbps

10
Battle!PCI vs. NuBus
Feature NuBus PCI bus
Bus clock rate 10 MHz 33 MHz, 66 MHz
Addressing Geographic Dynamic
Signal loading No enforced rules One load per signal
Transaction length determination Determined at start of transaction Determined at end of transaction
Bus termination Resistor network Not required
Bus control arbitration Distributed Centralized
Addressing spaces Memory only Memory, I/O, and configuration
Wait-state generators Slave only Slave and master
Kinds of expansion Cards only Cards and ASIC chips
Timeout 255 bus clocks 5 bus clocks
Burst capability 8, 16, 32, or 64 bytes Any number of bytes
Power allocation 15 W per card 7.5, 15, or 25 W per card
11
A/ROSEWhat is it?
  • The Apple Real-Time Operating System Environment
  • The Operating System for the Macintosh
    Coprocessor Platform (foundation for connectivity
    products)
  • Development started in August 1987
  • First operational version in February 1988

12
A/ROSEWhat is it?
  • A real-time, multitasking, message-based,
    distributed OS embedded on NuBus cards
  • Created to compensate for the lack of processing
    power in the Macintosh Operation System

13
A/ROSEFeatures
  • Minimal
  • kernel is only 6K
  • complete configuration utilizes 23K
  • uses 48K buffer
  • Multitasking
  • pre-emptive multitasking
  • round-robin task scheduling
  • 32 priority levels

14
A/ROSEFeatures
  • Real-Time
  • 110 ms context switch time
  • 20 ms of latency (guaranteed interrupt response
    time)
  • Distributed
  • OS is independent on each card
  • Message-Based
  • tasks communicate to other tasks on same card, or
    other cards across the NuBus
  • messages can pass data such as pointers
  • thousands of messages can be sent per second

15
A/ROSEUses
  • A/ROSE was designed for
  • communications and networking
  • data acquisition
  • signal-processing
  • heavy-duty processing
  • time consuming or time critical tasks

16
Additional Reading/Interesting Links
  • Macintosh NuBus interface code (written in c for
    Linux)
  • http//pc1.peanuts.gr.jp/kei/Kernel-Snapshot/lin
    ux/drivers/nubus/nubus.c
  • NuBus physical design notes
  • http//developer.apple.com/technotes/hw/pdf/hw_17
    .pdf
  • NuBus in relation to real-time
  • http//developer.apple.com/technotes/hw/pdf/hw_16
    .pdf
  • NuBus (IEEE 1196) vs. PCI
  • http//developer.apple.com/documentation/Hardware
    /DeviceManagers/pci_srvcs/pci_cards_drivers/PCI_BO
    OK.7.htmlpgfId3317
  • DMA Fundamentals on Various PC Platforms
  • http//cires.colorado.edu/jjose/DMAFundamentals.
    pdf

17
Sources
  • Heid, Jim and Peter Norton. Inside the Apple
    Macintosh. Brady New York. 1989.
  • Donald Koscheka, Ernst Young. Exploring NuBus
    Slots. lthttp//www.mactech.com/articles/mactech/
    Vol.06/06.04/NubusSlots/gt.
  • Maurer, Joseph. Inside The Macintosh
    Coprocessor Platform And A/ROSE.
    lthttp//www.mactech.com/articles/develop/issue_04/
    coprocessor.htmlgt.
  • University of Teesside School of Computing. The
    Bus. lthttp//wheelie.tees.ac.uk/users/a.clements
    /Buses/Buses.htmgt.
  • Wikipedia. Nubus. March 2004.
  • lthttp//en.wikipedia.org/wiki/NuBusgt.
  • Harvey, A.F. DMA Fundamentals on Various PC
    Platforms. lthttp//cires.colorado.edu/jjose/DMA
    Fundamentals.pdfgt.

18
Oh, The Mac II MemoriesOregon Trail!
Write a Comment
User Comments (0)
About PowerShow.com