WO1996013775A1 - Traitement simultane par elements multiples - Google Patents

Traitement simultane par elements multiples Download PDF

Info

Publication number
WO1996013775A1
WO1996013775A1 PCT/US1995/013309 US9513309W WO9613775A1 WO 1996013775 A1 WO1996013775 A1 WO 1996013775A1 US 9513309 W US9513309 W US 9513309W WO 9613775 A1 WO9613775 A1 WO 9613775A1
Authority
WO
WIPO (PCT)
Prior art keywords
data transfer
data
switch means
components
port
Prior art date
Application number
PCT/US1995/013309
Other languages
English (en)
Inventor
Hitoshi Yoshimoto
Original Assignee
Flamepoint, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Flamepoint, Inc. filed Critical Flamepoint, Inc.
Priority to AU40020/95A priority Critical patent/AU4002095A/en
Publication of WO1996013775A1 publication Critical patent/WO1996013775A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network

Definitions

  • the present invention relates to simultaneous processing of data sets by multiple computer components of a computer system. More particularly, the invention relates to simultaneous data flow to and from computer components uninterrupted by CPU functions involving system overhead operations or the data flow to and from other components on the data bus. To this end, the present invention could be implemented using conventional bus interfaces so as to enable users switching from common-bus computers to continue to use their existing peripheral plug-in boards.
  • a common-bus architecture connects all components, which may include one or several central processing units (CPU), random access memory (RAM), read-only memory (ROM), input/output (I/O) devices, disk drive controllers, direct memory access controllers (DMAC), secondary bus controllers such as a small computer systems interface (SCSI) or bus bridges to other buses such as a peripheral component interconnect (PCI) or an industry standard architecture (ISA) bus.
  • CPU central processing units
  • RAM random access memory
  • ROM read-only memory
  • I/O input/output
  • DMAC direct memory access controllers
  • SCSI small computer systems interface
  • PCI peripheral component interconnect
  • ISA industry standard architecture
  • data is shared by multiple CPUs using multiple port memories or I/O devices that allow the CPUs to communicate with each other.
  • data must be accessed by various components, one component at a time, or transferred from one component to another on a common bus, resulting in time loss as data is transferred to or from one component while the other components are idle.
  • speed bottlenecks are inherent in a common-bus architecture.
  • Examples of typical applications that will benefit from multiple simultaneous data streams are distributed networks, multi-processor computer systems, multimedia, non-destructive testing, medical imaging, interactive computer systems such as simulations, game and virtual reality systems, systems in science and industry such as those that study fast phenomena, and diagnostic testing systems.
  • a real-time system might have to carry out the following operations: 1) a measurable quantity such as temperature, pressure, position, velocity, or motion is converted into an electrical signal, 2) the electrical signal is digitized, 3) the digitized signal is processed and then displayed real-time, and 4) the data is stored for later review.
  • CPU bus which enables connection to the switch through a device port.
  • Asfour also discloses alternate allocation of memory banks to a CPU device and a data acquisition device, enabling one set of data to be acquired in one memory bank while another set of data is simultaneously and independently processed or stored by the CPU device without buffers.
  • the memory banks may be uncoupled from their allocated devices and recoupled to different allocated devices, thus effectively transferring access to a set of data from one device to another without actually moving the data within the memory banks.
  • the efficiency and performance of the system is maximized when each device takes a similar amount of time to complete its operation on the data in each memory bank.
  • Asfour enables nearly instantaneous access to a set of data in a memory bank by different CPU driven devices by switching coupling of the devices to the memory bank.
  • the Asfour System does not address the problem of enabling data to be simultaneously processed by a CPU device while being stored or retrieved by components within the same CPU device.
  • Asfour also does not address the problem of CPU interruption of input/output data flow by system housekeeping operations.
  • each CPU device shares a bus with input/output components, including the system disk resulting in a common-bus bottleneck problem for each device.
  • Still yet another object of the present invention is to provide a method and apparatus to enable I/O devices to communicate with each other independent of other computer components and data flow among them, and without interruption from other components and data flow among them.
  • the above and other objects of the invention are realized in an apparatus and method for eliminating data flow interruption while carrying out simultaneous rapid data transfer to and from components of a computer system.
  • the invention routes communications to RAM banks by various computer components through a crossbar switch matrix
  • CBSM CBSM which effectively acts in place of a data bus.
  • the CPU is also connected to its own CPU bus, through which the CPU accesses its internal RAM, ROM and system disk. All system overhead takes place on this separate CPU bus that can be physically and electrically isolated from the CBSM connections.
  • the isolated buses and the CBSM control circuitry effectively eliminate interruption of data flow by CPU system housekeeping operations.
  • the invention routes access between various computer I/O devices through a CBSM, instead of routing I/O devices to memory.
  • a CBSM instead of routing I/O devices to memory.
  • This configuration is simpler, costs less and is useful when data from an I/O device does not require processing by the CPU before going to another I/O device.
  • the CPU and other I/O devices are still free to act independently of all other computer components without interruption of data flow even when more than two continuous data flows exist concurrently over the CBSM bus.
  • Connections to the CBSM is through interface ports of the CBSM whereby peripheral device plug-in boards electrically and mechanically couple via slots. It is possible to implement theinvention in such a way that no modification to the plug-in boards is required to take advantage of the increased data throughput of the system, thereby enabling backwards compatibility with pre-existing plug-in boards.
  • a preferred embodiment of the invention provides real-time application in which several operations are conducted simultaneously. For example, data is acquired by an I/O device accessed through a plug-in board and coupled to the CBSM through a standard plug-in board slot, said data to be stored in one RAM bank, previously acquired data in another RAM bank is independently and concurrently accessed through the CBSM by the CPU for processing, and data previously processed and stored in still another RAM bank is accessed through the CBSM by a disk controller, also accessed through a plug-in board connected to a CBSM slot, that stores data to disk.
  • the CPU must inevitably conduct a system housekeeping task, the CPU communicates with the system disk over the isolated CPU bus. None of the operations conflict because the CBSM routes data flow independently.
  • data is acquired by an I/O device accessed through a plug-in board and coupled to the CBSM through a standard plug-in board slot.
  • the CBSM routes the data to a different I/O device on either the opposite or the same side of the CBSM to enable a continuous or intermittent data stream between the I/O devices, independent of all other computer functions.
  • FIG. 1 A is a block diagram of a preferred embodiment of the present invention comprising an arrangement of computer components for data acquisition, processing, and storage;
  • FIG. IB is a view of a prior art common bus showing functional implementation of the bus slot connectors and controller cards.
  • FIG. 1 C is a view of the preferred embodiment of the present invention wherein a CBSM has replaced the common bus of FIG. IB.
  • FIG. ID is a block diagram of an alternative embodiment of the present invention of FIG. 1A comprising computer I/O devices on one or both sides of the CBSM.
  • FIG. IE is a block diagram of an alternative embodiment of the present invention with a modification of FIG. ID, whereby I/O devices on the same side of the CBSM can communicate by routing communication through a loopback connection.
  • FIG. 2 is a block diagram of the internal structure of a CBSM comprising an arrangement of cross-bar switches
  • FIG. 3 is a block diagram of the arrangement of FIG. 1 showing greater details of the connections between computer components
  • FIG. 4A is a block diagram of a different preferred embodiment of the present invention comprising an arrangement of computer components for a multimedia system
  • FIG. 4B is a rearrangement of the embodiment of FIG. 4A illustrating a different method of controlling the CBSM in a multimedia system
  • FIG. 5A is a block diagram showing a prior art embodiment of a multiple-CPU system
  • FIG. 5B is a block diagram of a preferred embodiment of a multiple-
  • FIG. 6 is a block diagram of a different preferred embodiment of the present invention comprising an arrangement of computer components for a movie-on-demand system or digital library;
  • FIG. 7A is a timing diagram for the present invention that illustrates the movie-on-demand embodiment of FIG. 6;
  • FIG. 7B is a timing diagram for the present invention that further illustrates the movie-on-demand system.
  • FIG. 1A illustrates a preferred embodiment of an apparatus according to the present invention comprising an arrangement of computer components for data acquisition, processing, and storage.
  • a CPU 10 is connected through a bus 12 to a RAM, ROM, system disk, and I/O device, collectively labeled 14.
  • the CPU 10 is also connected to two ports of a CBSM 16 or equivalent circuitry as detailed below.
  • a data acquisition device 18, receiving analog signal input 20, is connected to the CBSM on the I/O side (shown as the left side in FIG. 1) of the CBSM, as is the CPU.
  • a disk controller 22 controlling a disk drive 24 is also connected to the I/O side of the CBSM.
  • analog input device 20 and disk drive 24 are generically considered as data transfer devices.
  • this invention should be considered to include but not be limited to any data transfer device such as a data acquisition unit, a data storage unit, a display device, an audio interface unit, an I/O port, a direct memory access controller, a network interface unit, and an I/O processor, such as a bus bridge device.
  • This configuration of components provides for independent data streams not only in acquisition and processing, but in the recording of data to storage medium and the system overhead operations of the CPU.
  • a feature of the preferred embodiment that is not readily apparent from the block diagram of FIG. 1A is the physical structure of the connections between the CBSM and I/O devices.
  • the I/O devices 20 and 24 communicate with controllers which interface with the CBSM 12, providing low level communication protocols and physical pin connections.
  • the I/O device controllers of FIG. 1A are the data acquisition device 18 with its accompanying DMAC, and the Disk Controller 22 with its accompanying DMAC. Each of these controllers 18 and 22 is in turn electrically coupled by a cable or some other communication medium to a specific I/O device, in this case the Analog Input 20 and the Data Disk drive 24 respectively.
  • Controllers such as 18 and 22 interface with the CBSM 16 in a preferred embodiment through communication ports, commonly referred to as bus slots 350, 351, 352, 353 and 354 as shown in FIG. lC.
  • bus slots 350, 351, 352, 353 and 354 as shown in FIG. lC.
  • communication ports should not be considered limited to bus slots.
  • the term refers to any interface between the CBSM 16 and an I/O device, such as a hard-wired port on a motherboard which requires no physical slots. Nevertheless, in a preferred embodiment, the controllers are shown as the controller cards 355, 356, 357, 358 and 359 which are inserted in the aforementioned bus slots.
  • a key feature of the present invention which provides a significant advantage to the user of a computer system based on the CBSM architecture is the implementation of the CBSM 16 bus slots 350, 351, 352, 353 and 354 as industry standard interfaces, in terms of software and/or hardware. An industry standard bus slot implementation is shown for comparison purposes in FIG.
  • slots 360, 361, 362, 363 and 364 comprise the bus slots of a common-bus architecture system wherein the same controller cards 355, 356, 357, 358 and 359 are inserted.
  • the only discernible difference shown is that the bus 370 of FIG. IB is replaced by the CBSM 16 of FIG. lC. This architectural difference could be made to be transparent to the computer application program, manifesting itself only through increased data throughput.
  • controllers 18 and 22 can be the same controllers used in millions of common bus architecture computers.
  • the bus slots 350, 351, 352, 353 and 354 of the preferred embodiment shown in FIG. 1C support Industry Standard Architecture (ISA), Extended Industry Standard Architecture (EISA), Peripheral Component
  • PCI Peripheral Component Interconnect
  • VME Versa Module Europe
  • VXI VMEbus extensions for Instrumentation
  • FurtureBus and other common bus slot interfaces.
  • FIGs. ID, IE, 3, 4A, 4B and 6 will functionally describe the interconnections between components of the present invention. It is an element of the present invention that whenever these figures refer to I/O devices, a controller device with an arrow to the CBSM is functioning as an interface between the CBSM and the I/O device. It is also an element of the present invention that in a preferred embodiment, the controller device is a plug-in board inserted in a receiving slot of the CBSM, and that the receiving slot is the same as described in FIG. 1C and shown as the dotted line designated 5. Any functional arrow of FIGs.
  • the data acquisition device 18 receives analog signals from the analog input 20.
  • the data acquisition device 18 digitizes the signal 20 and places the digitized data in RAM bank 26. If the data is to be processed before it is stored, RAM bank 26 may be switched to communicate with the CPU which processes the data and stores the processed data, for example, in RAM bank 28. While the CPU is handling the data in RAM banks 26 and 28, the data acquisition device 18 continues its operations using other RAM banks, such as RAM bank 30.
  • the switching of CBSM 16 pathways is carried out by means of control logic known to those skilled in the art.
  • the RAM bank switches to the disk controller 22 which records the processed data on the data disk drive 24. While the processed data in RAM bank 28 is being recorded, the data acquisition device 18 places more input data in RAM bank 30 and the data acquisition device 18 continues its operation again using RAM bank 26. At that time, the CPU 10 processes data in RAM bank 30 and places the results into RAM bank 32. After the disk controller 22 completes recording the processed data from RAM bank 28, it switches to RAM bank 32 and records the processed data therein. The process of acquisition and processing may then be repeated. The three operations of acquisition, processing, and storage can occur simultaneously due to the characteristics of the cross bar switch matrix or an equivalent circuit, as explained later.
  • FIG. ID shows an alternate embodiment of the preferred embodiment of FIG. 1A.
  • the modification consists of replacement of some or all of the RAM banks with I/O devices 21 and their controllers 19.
  • a further modification is implementation of the industry standard bus slots 5 which connect the I/O devices to the CBSM bus.
  • This configuration provides the advantage of enabling I/O devices 20, 21 and 24 to communicate without interruption when data does not require processing by the CPU 10. This does not mean that data cannot be processed by the I/O devices, 20, 21 and 24 or their controllers 18, 19 and 22, but removes the extra steps of storing data in RAM and then moving data from RAM to another I/O device when no CPU 10 processing is required.
  • the figure shows that flexibility is maintained in the system by not eliminating RAM banks from CBSM bus paths. Therefore, when data requires processing or temporary RAM storage, the RAM banks 26 and 28 are still available for this purpose.
  • a further configuration might be to remove all of the RAM banks. This configuration would be useful in a dedicated machine when it is known that no data will ever require CPU processing when transferring data from one I/O device to another through the CBSM bus.
  • FIG. IE illustrates another alternative embodiment of the preferred embodiment of FIG. 1A.
  • the modification consists of replacing some or all of the RAM banks with bus-like connection 23.
  • This connection 23 provides the advantage of enabling I/O devices 20 and 24 to communicate directly and without interruption when data does not require processing by the CPU 10.
  • this embodiment has the same advantage as FIG. ID of allowing direct communication between any two devices attached to the device ports of the CBSM. But in addition, this embodiment allows the CPU 10 to communicate to any I/O device directly.
  • this allows for faster communication between devices when blocks of data exchanged between them are significantly smaller than the RAM blocks and no data processing needs to occur between data transfer.
  • CBSMs are known in the art as devices which enable the connection of a component on one side to any component on the other side of the CBSM, rather than connecting two components on the same side of the CBSM.
  • An illustrative CBSM is shown in FIG. 2.
  • This cross bar switch matrix 16 is an arrangement of six individual cross bar switches 300, 302, 304, 310, 312, and 314, such as the QS 3383 made by Quality Semiconductor.
  • Port 1 can be connected to any one port on the memory side of the CBSM 16.
  • the memory ports are numbered 324, 326, 328, and 330. Ports on a same side such as 316,
  • 318, 320, and 322 can not connect to each other, nor can a single port connect to more than one port at a time on the opposite side of the matrix.
  • FIG. 3 shows a block diagram of the arrangement of FIG. 1, showing more details of a preferred embodiment of the present invention.
  • the CPU 10 is connected to its components 14 along bus 12, including a DMAC 14a, ROM
  • CPU 10 communicates with CBSM 16 via connections 35 and 37 between ports 36 and 38 on the CBSM and the CPU bus 12. Connections 35 and 37 should contain both address and data lines because each RAM block 26, 28, 30 and 32 needs to be accessed with both. Other control signals such as read- write and timing are also required for proper operation as is known to those skilled in the art. For simplicity, however, they have been omitted from the diagram.
  • Some of the address lines may be decoded and converted into chip select signals for RAM banks 26, 28, 30, 32. This process of decoding and conversion into chip select lines is the same for other address lines connected between two DMACs, 18a and 22a, and two ports, 40 and 42. These two DMACs provide address signals which are necessary to access RAM blocks that are allocated to the corresponding I/O devices, the data acquisition 18b and disk controller 22b. Similarly, read-write and other timing and control signals are generated by the DMACs 18a and 22a, just as they are by the CPU 10. The DMACs 18a, 22a and I/O devices 18b, 22b may need initialization, programming, and monitoring of their status. Such operations are usually done by the CPU 10, therefore data paths 70, 72 are needed. On the other hand, in order for the DMACs to operate simultaneously with the CPU as well as with each other, such paths need to be isolated. Gates 60 and 62 enable and disable this connection.
  • An address decoder 46 similar to SN74LS138 from Texas Instruments, is connected to the bus 12 via a few address lines 44.
  • the address lines 44 are those needed to control access by the CPU 10 through the data and address lines 35, 37, 54, and 56.
  • the connection between bus 12 and port 1 (36) is enabled and disabled by the control line 47.
  • the decoder 46 is implemented in such a way that accessing a certain address with different data by the CPU 10 enables or disables the connection. An alternative embodiment would only require accessing different addresses to enable and disable the connection, regardless of the data.
  • the control line 48 works in a similar manner for address line 37 between bus 12 and port 2 (38).
  • control lines 50 and 52 work in a similar manner for gates 60, 62 to enable and disable the connection between bus 12 and the DMAC-I/O device pairs, 18a, 18b and 22a, 22b, respectively.
  • These control lines should be assigned different bits in a data byte if a single address is shared among them, or mutually exclusive addresses by the decoder 46 when different addresses are used so that they can be controlled and monitored independently.
  • the decoder 46 could have additional control lines, collectively shown as 80, so that the CPU 10 can also work as the CBSM controller. Otherwise, an independent controller would be needed for the CBSM 16.
  • a controller can be constructed using a separate microcontroller and/or a set of programmable logic devices such as field- programmable gate arrays (FGPA). The role of the controller is to monitor the activities and status of each port of the CBSM and to change connections of the CBSM.
  • FGPA field- programmable gate arrays
  • the changes are to be made in such a way that the CBSM can 1) track requests from each port to know which port is ready to be switched, or if not ready for switching, the time when it will be ready, 2) notify each port and especially the CPU 10 the status of other ports so that the CPU 10 knows the time until a particular RAM bank will be available, 3) establish connections when all ports involved in a particular pathway become available, and 4) make certain that no connection change occurs to a port before it uses all data in the RAM bank to which it is currently assigned.
  • FIGs. 1 and 3 do not imply that an embodiment requires all components to be manufactured on a single mother-board.
  • the present invention can be incorporated on a single board when manufactured for new systems.
  • external I/O ports, a CBSM, and RAM banks could also be constructed on a separate board.
  • This new board would then be electrically connected to the bus of an existing CPU system.
  • This connection could be through any existing port such as a plug-in common-bus slot, parallel port, or a serial port, depending upon the application.
  • the advantage of such an arrangement is to allow prior art systems to be upgraded instead of replaced in order to benefit from the present invention's ability to rapidly transfer data between system components.
  • FIG. 4A shows a block diagram of another preferred embodiment of the present invention comprising an arrangement of computer components for a multimedia system.
  • CBSM 16 is the same cross bar switch matrix described in
  • FIG. 2 except that it is expanded to have six ports on each side instead of four.
  • I/O controllers shown as 152, 156, 162, and 166 are also comprised of a DMAC.
  • an image interface 152 is connected to the I/O (left) side of the CBSM, which receives image or video input 150.
  • An audio interface 156 is connected to the left side of the CBSM for receiving or supplying audio signals 154. These interfaces 152 and 156 may provide digitizing of incoming data if necessary.
  • An interface controller 162 is connected to the left side of the CBSM and is connected by means of a SCSI or a PI 394 "Firewire" interface 160 or suitable substitute to a data disk drive 158 or similar device.
  • a visual display controller 166 is also connected to the left side of the CBSM and is connected to a visual display device 164 for output of visual data.
  • a CBSM controller 200 which might illustratively be a field programmable gate array, is shown connected to the CBSM 16 and the CPU bus 170 for logical control of the switching that is coordinated with the CPU 172.
  • a conventional digital signal processor (DSP) 148 is connected to the left side of the CBSM 16 to assist and/or substitute the processing requirements of the CPU 172.
  • the PI 394 enables transmissions of data including audio and video signals in real-time over a single serial communication line requiring time multiplexing and demultiplexing of different types of data into a single data stream.
  • the present invention provides an effective means to realize such operations.
  • the image input 150 is received from the image interface 152 and placed into RAM bank 126.
  • Audio input 154 is sent to the audio interface 156, and then passed through the CBSM 16 and placed into RAM bank 128.
  • the DSP 148 performs necessary data processing such as compression of the image data and places the result in RAM bank 130.
  • the image and audio data in RAM banks 128 and 130 are then sent to the data disk 158 through the P1394 interface.
  • the CBSM controller 200 will either act independently to enable data flow through the CBSM 16, or the CPU 172 will send control commands over control line 210 to the CBSM controller 200, or directly to the CBSM 16 over optional control line 176.
  • the Image and Audio Interfaces 152 and 156, and the Interface and Display Controllers 162 and 166, will communicate with the CBSM controller 200 over I/O channel control lines 104 in order to control data flow through the CBSM 16 to the RAM blocks 126, 128, 130, 132, 134, and 136.
  • An example of operation would be audio and video data from RAM banks 126 and 128 being compressed and stored in RAM bank 130. While
  • RAM bank 130 is read to disk 158, the next frame of image and audio data is independently and simultaneously stored in RAM banks 132 and 134. The image is compressed and placed in RAM bank 136. That data is then sent to disk 158, and the process repeats. To play back the motion picture stored on disk 158, the image and corresponding audio data are read from the data disk 158. The image data is placed into RAM bank 126 and the audio data is placed into RAM bank 128. The DSP 148 decompresses the image data and places the result in RAM bank 130. The decompressed image data in RAM bank 130 is then sent to the visual display controller 166 for display, and the audio data is sent to the audio interface 156 for play.
  • FIG. 4B is also an embodiment of a multimedia system, but differs from FIG. 4A in that the CPU 172 controls the CBSM 16 through the addition of a decoder 204, a gate enabling control signal 208, and gates 212. These components replace the independently operating CBSM controller 200 of FIG. 4A. Operation of the system is similar to FIG. 4A, except that now the CPU 172 directly controls the enabling of pathways through the CBSM 16. This alternative arrangement is practical for applications where the CPU 172 is not heavily burdened, and can devote time to controlling RAM access by I/O devices. This configuration may also be less costly because the CBSM controller 200 of FIG. 4A could be costly for some applications.
  • FIG. 5A is a block diagram of a prior art arrangement of processors in a multiple CPU system.
  • each CPU 220, 221, 222 has cache memory 223, 224, 225.
  • a CPU processes data in its cache as long as needed data is found in the cache.
  • Caching allows a CPU to avoid accessing the bus 228 to retrieve data from main memory 226 whenever data is needed, freeing bus time for other components.
  • coherency must be maintained between each cache and main memory 226.
  • CPU time as well as the bus time is lost when main memory 226 must be updated with cache contents.
  • cache contents do not often contain data needed by the CPU (i.e. a low cache hit)
  • frequent updates of cache memory 223, 224, 225 results in bus contention, severely limiting efficiency of the system.
  • FIG. 5B is an alternative to the cache system of FIG. 5A.
  • the main memory 234 is divided into smaller RAM banks 235, 236, 237, 238.
  • Each bank is allocated to a CPU 230, 231 , 232 or I/O device by the CBSM 233.
  • a CPU uses the allocated RAM block in place of cache memory.
  • this "cache" is actually part of main memory 234, there is no need to update it as in the cache system.
  • the CBSM 233 changes pathways enabling access to the desired block of main memory 234.
  • FIG. 6 shows a block diagram of a movie-on-demand system.
  • the system is comprised of m Movie Disks, shown here as 380, 382 up to Movie Disk m 400.
  • Movie Disks are randomly accessible digital storage devices such as hard disks or CD-ROM drives. The movie data is digitized and possibly in a compressed form. Movie Disks are connected to the I/O (left) side of the CBSM 16 through which data is transferred to RAM blocks.
  • the CBSM 16 is controlled by CBSM command controller 700 which allocates RAM blocks as needed by Viewers.
  • the CBSM controller 700 may be implemented with a micro ⁇ controller, mainframe or supercomputer, depending upon the sizes of m and n.
  • Viewer 1 (510) will send a command signal to the command controller 700 requesting access to a movie.
  • Movie Disk 1 (380) has the requested movie that the viewer wishes to view, fast- forward, rewind, or view in an accelerated or slow-motion format.
  • the viewer requested portion of the movie is sent through the CBSM 16 pathway created by the command controller 700 and stored in a RAM bank.
  • the command controller routes a CBSM 16 pathway to Viewer 1 (510).
  • Viewer 1 While Viewer 1 (510) is occupied viewing the segment of movie in RAM bank 1 (184), the next movie segment is transferred to a different RAM bank, such as RAM bank 2 (186).
  • RAM bank 2 a different RAM bank
  • a sufficiently large RAM bank should be able to eliminate data gaps which cause pauses if the system has sufficient time to load the next portion of the movie before the viewer completes the current segment.
  • the present invention also provides the advantage of allowing simultaneous access to segments of the same movie to different viewers because of rapid transfer capabilities. If Viewer 2 (512) requests viewing Movie Disk 1 (380) while Viewer 1 (510) is also viewing the movie, two sets of RAM banks will be allocated to each viewer: RAM banks 1 and 2 (184, 186) for Viewer 1 (510), and RAM banks 3 and 4 (188, 190) for Viewer 2
  • FIG. 7A An illustrative example of the timing is shown in FIG. 7A.
  • the movie disk transfer time 810 to the RAM banks must be at least twice as fast as the rate at which movies are viewed 820.
  • Such a transfer rate may be achieved by a fast data transfer speed, or by movie compression.
  • Movie compression would allow a large portion of a movie to be transferred to RAM in a short amount of time 810 with respect to the viewing time of the movie to be viewed 820. The decompression is assumed to be done at the Viewer site. A combination of compression and faster transfer rates would also be possible. As shown in FIG.
  • Viewer 1 views a segment of Movie Disk 1 (380) stored in RAM bank 2 (186) in a previous transfer
  • Viewer 2 ( 12) views another segment of the same movie, stored in RAM bank 4 (190) in a previous transfer.
  • Movie Disk 1 (380) is storing the next movie segment to be viewed by Viewer 1 (510) in RAM bank 1 (184)
  • time slot 2 (830) stores the next movie segment to be viewed by Viewer 2 (512) in RAM bank 3 (188).
  • the CBSM 16 pathways are changed to allow Viewer 1 (510) to view the movie segment in RAM bank 1 (184)
  • Viewer 2 (512) views the movie segment in RAM bank 3 (188).
  • FIG. 7B illustrates the changes necessary in the timing scheme of FIG.
  • the RAM banks would need to be of sufficient size, and transfer rates of sufficient speed, such that the CBSM controller would be able to transfer the subsequent segment of movie to be viewed by each viewer to the appropriate RAM bank before the current segment has been viewed.
  • the CBSM controller must store the next movie segments of Movie Disk 1 to be viewed in RAM banks 1, 3, ..., 2n-l (184, 188, ..., 196) respectively.

Abstract

Système de traitement simultané de flux de données multiples par des éléments multiples d'un système informatique. Le système accélère l'acquisition, le traitement, l'affichage, le transfert, l'extraction et la mémorisation simultanés dans un agencement présentant une UC (10), des dispositifs E/S (18, 22), des connexions de rebouclage ainsi que des blocs de mémoire multiples optionnels (26, 28, 30, 32) connectés à une matrice de commutateurs à barres croisées (16). Un disque système (14) est connecté séparément à l'UC (10) sur un bus (12) de UC et est isolé physiquement et électriquement des autres éléments. Pendant le transfert de données vers n'importe lequel des dispositifs, et inversement, connectés à la matrice de commutateurs à barres croisées (16), l'UC (10) exécute les opérations de servitude d'un système de sous-programme périodiques sans interrompre le flux de données vers d'autres dispositifs, et à partir de ceux-ci, du fait que l'UC (10) présente un bus (12) UC séparé assurant une connexion au disque système ainsi qu'à d'autres éléments du système. Ainsi, les opérations de transfert de données continuent sans interruption et sont achevées de manière accélérée.
PCT/US1995/013309 1994-10-26 1995-10-13 Traitement simultane par elements multiples WO1996013775A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU40020/95A AU4002095A (en) 1994-10-26 1995-10-13 Simultaneous processing by multiple components

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US32970794A 1994-10-26 1994-10-26
US08/329,707 1994-10-26

Publications (1)

Publication Number Publication Date
WO1996013775A1 true WO1996013775A1 (fr) 1996-05-09

Family

ID=23286639

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1995/013309 WO1996013775A1 (fr) 1994-10-26 1995-10-13 Traitement simultane par elements multiples

Country Status (3)

Country Link
AU (1) AU4002095A (fr)
CA (1) CA2203378A1 (fr)
WO (1) WO1996013775A1 (fr)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998047075A1 (fr) * 1997-04-14 1998-10-22 Advanced Micro Devices, Inc. Systeme informatique avec memoire systeme unifiee et meilleur acces simultane au bus
WO1999001821A1 (fr) * 1997-07-01 1999-01-14 Neal Margulis Systeme d'ordinateur comprenant une memoire commune d'affichage et une memoire principale.
EP0893766A2 (fr) 1997-07-25 1999-01-27 Canon Kabushiki Kaisha Gestionnaire de bus et appareil de commande d'un dispositif multifonctionnel avec un tel gestionnaire de bus
WO1999013451A1 (fr) * 1997-09-09 1999-03-18 Memtrax Llc Systeme d'ordinateurs a commutateur et controleur gerant l'affectation de canaux memoire internes et externes a une pluralite de sous-systemes
EP1011292A2 (fr) * 1998-12-17 2000-06-21 Nortel Networks Corporation Circuit et procédé d'interface pour communication de données par paquets
WO2001009741A2 (fr) * 1999-07-30 2001-02-08 Siemens Aktiengesellschaft Systeme multiprocesseur pour l'execution d'acces a une memoire commune ainsi que procede correspondant
US6950893B2 (en) 2001-03-22 2005-09-27 I-Bus Corporation Hybrid switching architecture

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4979100A (en) * 1988-04-01 1990-12-18 Sprint International Communications Corp. Communication processor for a packet-switched network
US5067071A (en) * 1985-02-27 1991-11-19 Encore Computer Corporation Multiprocessor computer system employing a plurality of tightly coupled processors with interrupt vector bus
US5226125A (en) * 1989-11-17 1993-07-06 Keith Balmer Switch matrix having integrated crosspoint logic and method of operation
US5339396A (en) * 1987-11-18 1994-08-16 Hitachi, Ltd. Interconnection network and crossbar switch for the same
US5355453A (en) * 1989-09-08 1994-10-11 Auspex Systems, Inc. Parallel I/O network file server architecture

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5067071A (en) * 1985-02-27 1991-11-19 Encore Computer Corporation Multiprocessor computer system employing a plurality of tightly coupled processors with interrupt vector bus
US5339396A (en) * 1987-11-18 1994-08-16 Hitachi, Ltd. Interconnection network and crossbar switch for the same
US4979100A (en) * 1988-04-01 1990-12-18 Sprint International Communications Corp. Communication processor for a packet-switched network
US5355453A (en) * 1989-09-08 1994-10-11 Auspex Systems, Inc. Parallel I/O network file server architecture
US5226125A (en) * 1989-11-17 1993-07-06 Keith Balmer Switch matrix having integrated crosspoint logic and method of operation

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998047075A1 (fr) * 1997-04-14 1998-10-22 Advanced Micro Devices, Inc. Systeme informatique avec memoire systeme unifiee et meilleur acces simultane au bus
US5941968A (en) * 1997-04-14 1999-08-24 Advanced Micro Devices, Inc. Computer system for concurrent data transferring between graphic controller and unified system memory and between CPU and expansion bus device
US6118462A (en) * 1997-07-01 2000-09-12 Memtrax Llc Computer system controller having internal memory and external memory control
WO1999001821A1 (fr) * 1997-07-01 1999-01-14 Neal Margulis Systeme d'ordinateur comprenant une memoire commune d'affichage et une memoire principale.
USRE41413E1 (en) 1997-07-01 2010-07-06 Neal Margulis Computer system controller having internal memory and external memory control
EP0893766A2 (fr) 1997-07-25 1999-01-27 Canon Kabushiki Kaisha Gestionnaire de bus et appareil de commande d'un dispositif multifonctionnel avec un tel gestionnaire de bus
WO1999013451A1 (fr) * 1997-09-09 1999-03-18 Memtrax Llc Systeme d'ordinateurs a commutateur et controleur gerant l'affectation de canaux memoire internes et externes a une pluralite de sous-systemes
JP2001505342A (ja) * 1997-09-09 2001-04-17 メムトラックス エルエルシー 内部メモリ及び外部メモリコントロールを具備したコンピュータシステムコントローラ
EP1011292A3 (fr) * 1998-12-17 2003-01-29 Nortel Networks Limited Circuit et procédé d'interface pour communication de données par paquets
EP1011292A2 (fr) * 1998-12-17 2000-06-21 Nortel Networks Corporation Circuit et procédé d'interface pour communication de données par paquets
WO2001009741A2 (fr) * 1999-07-30 2001-02-08 Siemens Aktiengesellschaft Systeme multiprocesseur pour l'execution d'acces a une memoire commune ainsi que procede correspondant
WO2001009741A3 (fr) * 1999-07-30 2001-08-30 Siemens Ag Systeme multiprocesseur pour l'execution d'acces a une memoire commune ainsi que procede correspondant
US6950893B2 (en) 2001-03-22 2005-09-27 I-Bus Corporation Hybrid switching architecture

Also Published As

Publication number Publication date
CA2203378A1 (fr) 1996-05-09
AU4002095A (en) 1996-05-23

Similar Documents

Publication Publication Date Title
JP3466052B2 (ja) ビデオ・データ伝送方法
KR0163234B1 (ko) 데이타 스트리밍 메카니즘, 스트리밍 장치 어댑터, 컴퓨터 시스템 및 데이타 처리 시스템
US7020731B2 (en) Disk array control device with two different internal connection systems
EP0756802B1 (fr) Systeme multicanal reparti de stockage et de distribution de donnees a ressources communes
US5261059A (en) Crossbar interface for data communication network
EP0727750B1 (fr) Serveur données continues et méthode de transfert de données permettant de multiples accès simultanés de données
US5539660A (en) Multi-channel common-pool distributed data storage and retrieval system
US5696912A (en) Multi-media computer architecture
JPH06266649A (ja) 複数のデータチャネルを介してデータを転送する方法及びその回路アーキテクチャ
JPH06266650A (ja) データを転送する方法と装置及びデータ転送をインタリーブする装置
US5226010A (en) Method and apparatus for simultaneous, interleaved access of multiple memories by multiple ports
JPH08292842A (ja) ビデオサーバ装置
WO1998022868A1 (fr) Systeme de tampon de donnees pour plusieurs reseaux de memoire de donnees
US5202856A (en) Method and apparatus for simultaneous, interleaved access of multiple memories by multiple ports
JP2845162B2 (ja) データ転送装置
WO1996013775A1 (fr) Traitement simultane par elements multiples
US6683876B1 (en) Packet switched router architecture for providing multiple simultaneous communications
EP0494056A2 (fr) Structure de bus fractionnable et attribuable dynamiquement
US7317957B1 (en) Memory allocation for real-time audio processing
EP0577362A2 (fr) Architecture étendue pour le stockage et distribution d'images
JP2001067306A (ja) バスインターフェース装置およびデータ転送装置
US6975809B1 (en) Method and apparatus for passing clear DVD data in a computer
Pasquale System software and hardware support considerations for digital video and audio computing
KR20020051545A (ko) 실시간 고속의 데이터 처리용 디엠에이 제어기 및 제어방법
JPH09293045A (ja) データ転送処理装置

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AL AM AT AU BB BG BR BY CA CH CN CZ DE DK EE ES FI GB GE HU JP KE KG KP KR KZ LK LR LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SI SK TJ TT UA US UZ VN

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): KE MW SD SZ UG AT BE CH DE DK ES FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
ENP Entry into the national phase

Ref document number: 2203378

Country of ref document: CA

Ref country code: CA

Ref document number: 2203378

Kind code of ref document: A

Format of ref document f/p: F

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase