WO2001017176A1 - Flexible media access control and section filter hardware engine for satellite data receiver - Google Patents
Flexible media access control and section filter hardware engine for satellite data receiver Download PDFInfo
- Publication number
- WO2001017176A1 WO2001017176A1 PCT/US2000/024287 US0024287W WO0117176A1 WO 2001017176 A1 WO2001017176 A1 WO 2001017176A1 US 0024287 W US0024287 W US 0024287W WO 0117176 A1 WO0117176 A1 WO 0117176A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- elementary
- substreams
- mac address
- bits
- end user
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/14—Relay systems
- H04B7/15—Active relay systems
- H04B7/185—Space-based or airborne stations; Stations for satellite systems
- H04B7/18578—Satellite systems for providing broadband data service to individual earth stations
- H04B7/18584—Arrangements for data networking, i.e. for data packet routing, for congestion control
Definitions
- DSS Digital Video System
- IP internet protocol
- various elementary streams of digital video, digital audio, and digital data typically are time-division multiplexed onto a single transport stream that is broadcast by way of a satellite transponder to multiple receivers.
- the elementary streams of information or data are generally packetized, as is the transport stream.
- a receiver may be coupled to a personal computer. Such a receiver would receive the transport stream comprising the information, demultiplex elementary streams of digital video, digital audio, and/or data from the transport stream, and filter (select) those elementary streams destined for that receiver. The receiver further should be able to deliver the elementary streams to host memory of the personal computer for processing or display.
- Packets containing the elementary stream data may be addressed either to a single receiver, referred to as pointcasting, or to a group of receivers, referred to as multicasting.
- the address information is generally contained in a field of the header of each packet.
- the field containing the address information may be referred to as a media access control (MAC) field.
- the MAC field allows a receiver to store or process only the packets destined for that receiver.
- Designing a receiver capable of demultiplexing, filtering, and delivering the elementary streams of information poses difficult problems and challenges.
- critical timing constraints govern the delivery of elementary streams containing digital video and digital audio programs. These critical timing constraints derive, for example, from the specific timing required for proper decoding and presentation of digital video frames on the host computer. Hence, the particular elementary streams must be demultiplexed, filtered, and delivered in real time in such a way that these critical timing constraints are met.
- Embodiments of the invention relate to the application of a hierarchical - scheme in which a data transport stream is organized with encapsulations at multiple levels.
- the transport stream is made up of data streams identified by program identifiers, each of which is itself made up of elementary substream components identified by MAC field.
- Such an organization permits selective retrieval of the individual substream components as needed .
- selectivity allows the scheme to be used to filter unwanted substream components out of the individual data streams as they are delivered to an end user system.
- a method for processing a transport stream.
- the transport stream is parsed to derive multiple elementary substreams, each of which includes a received MAC address.
- the received MAC address is compared in hardware against several stored MAC addresses.
- the transport stream is additionally parsed to derive multiple data streams that include associated program identifiers, with each data stream being associated with a plurality of the multiple elementary substreams.
- the associated program identifiers and MAC addresses are used to determine corresponding transfer locations in host memory, and direct memory access transfers of the data is performed to the corresponding transfer locations.
- each of the stored MAC addresses is concatenated with an index and a disable bit in one embodiment.
- the disable bit is inactivated, a plurality of the bits of the received MAC address is masked.
- the unmasked bits are iteratively compared iteratively with similarly unmasked bits of each of the stored MAC addresses until a match is found.
- Embodiments of the invention are preferably configured to transfer the data to an end user system.
- the end user system is an audiovisual system while in another such embodiment, the end user system is a networked computer system.
- the networked computer system includes a world wide web browser.
- Fig. 1 is a schematic diagram including a system in accordance with one embodiment of the present invention.
- Fig. 2 is a schematic diagram illustrating an embodiment in which a received media access control address is compared with stored media access control addresses.
- Fig. 1 is a schematic diagram including a system in accordance with an embodiment of the present invention.
- a satellite transponder 102 transmits a signal carrying a transport stream to multiple receiver dishes 104, one of which is shown in the figure.
- Receiver dish 104 in Fig. 1 is coupled to a host computer system 106 by way of a link interface 111 on a receiver circuit 108.
- Receiver circuit 108 may comprise an integrated circuit, a circuit board having the different receiver components attached thereto, or any other suitable circuit design or configuration.
- Receiver circuit 108 includes a local bus 110 to which is coupled a transport controller 112, MAC comparison engine 113, a local CPU 114, and local memory 116.
- Transport controller 112 receives the transport stream from link interface 111 and handles low-level transport stream parsing.
- transport controller 112 operates in conjunction with a hardware MAC comparison engine 113.
- MAC comparison engine 113 is a stand-alone component with its own connection to local bus 110.
- MAC comparison engine 113 may be incorporated with transport controller 112 or some other component in receiver circuit 108. Both MAC comparison engine 113 and transport controller 112 are controlled by local CPU 114.
- Local CPU 114 comprises a microcontroller that controls operations on the receiver circuit 108.
- Local memory 116 comprises memory such as static RAM, dynamic RAM, or ROM located on receiver circuit 108.
- a bus interface 118 couples local bus 110 on receiver circuit 108 to a host system bus 120 of host computer 106.
- host system bus 120 comprises a PCI bus
- bus interface 118 comprises a PCI interface.
- Also coupled to host system bus 120 are a host CPU 122, host memory 124, an audio-visual interface 126, and a network interface 130, among other components.
- Host CPU 122 comprises the microprocessor of host computer 106
- host memory 124 comprises memory of host computer 106.
- Audio-visual interface 126 comprises a graphics interface that is coupled to an audio-visual system 128. Audio-visual system 128 may include, for example, speakers, and a CRT monitor or a flat panel display.
- Network interface 130 comprises a network interface card that is coupled to a local area network (LAN) 131, which is in turn coupled to one or more networked computer systems 132.
- network interface 130 may comprise an Ethernet card
- LAN 131 may comprise an Ethernet network
- networked computer systems 132 may comprise personal computers.
- the transport stream may be viewed as including a hierarchy of encapsulations. At the top level of the hierarchy, the transport stream comprises a plurality of elementary streams identified by program identifiers.
- program identifiers Such a scheme is described in the concurrently filed and commonly assigned application entitled "MULTITHREADED DIRECT MEMORY ACCESS ENGINE FOR BROADCAST DATA DEMULTIPLEX OPERATIONS,” (Attorney Docket No. 19927-000510US) having Thomas G. Adams and Gene Maine as coinventors, which is herein incorporated by reference for all purposes.
- MAC field Within each such elementary stream are components identified by MAC field.
- the elementary streams identified by program identifiers may be associated with channels and the components identified by MAC field may be associated with pieces of the channel.
- the components identified by MAC field may be associated with pieces of the channel.
- MAC comparison engine 113 also performs the function of filtering out unwanted components of the elementary streams according to the MAC field.
- Embodiments of the invention may also be complemented with timestamping aspects as described in the concurrently filed and commonly assigned application, "SYSTEM TIME CLOCK CAPTURE FOR COMPUTER SATELLITE RECEIVER,” (Attorney Docket No. 19927-000710US), having Thomas G. Adams and Randy R. Fuller as coinventors, which is also herein incorporated by reference for all purposes.
- program identifiers are included at a higher hierarchical level and MAC addresses are included at a lower hierarchical level.
- the transport stream can be parsed at the higher hierarchical level to derive multiple elementary streams that include the associated program identifiers. Additionally, the transport stream can be parsed at the lower hierarchical level to derive multiple elementary substreams, each including a received MAC address.
- the MAC address for each such elementary substream is compared in hardware against a plurality of stored MAC addresses to identify the elementary substream.
- the MAC address compare function is illustrated for one embodiment in Fig. 2. In describing the MAC address compare function, reference is made to the bit length of certain components of addresses as they are used in one embodiment of the invention.
- received MAC address 202 is identified by comparing it with MAC addresses stored in MAC compare RAM 204.
- received MAC address 202 contains 48 bits.
- each of the comparison MAC addresses stored in MAC compare RAM 204 contains a 48-bit component 213 that corresponds to the possible addresses to be identified. Concatenated to each of the comparison address components 213 is a five-bit index 212 and a disable bit 210.
- each of the 128 stored comparison MAC addresses 204 can have any one of 32 independent compare masks (stored in the MAC compare mask RAM 206) assigned to it. This provides great flexibility in the filtering and selection of packets and allows faster identification of received MAC address 202 by speeding up the comparison process. As discussed in detail below, each of the associated compare masks allows suppression of 32 of the 48 MAC address bits from the comparison. In addition, under appropriate circumstances, disable bit 210 may be activated to suppress the masking function, thereby forcing a comparison of the full 48-bit MAC address with the comparison MAC addresses.
- Such multicasting may comprise Internet Protocol (IP) multicasting where a single message is sent to a group of IP addresses.
- IP Internet Protocol
- the capability for such multicasting allows host computer 106 to be used as a communications bridge to a local area network that includes multiple networked computer systems 132.
- the compare function may be implemented with logic circuitry 230.
- the 16-bit unmasked portion of received MAC address 202 is compared with the corresponding 16 bits of one of the comparison MAC address components 213 with XNOR gate 218.
- the mask disabling feature is implemented with AND gate 216 by comparing the disable bit 210 with each of the mask bits and is controlled with OR gate 220, which restricts the comparison of the masked bits to instances where disable bit 210 has been activated. If the mask has been disabled, a comparison is performed with XNOR gate 214 of the remaining 32 bits of received MAC address 202 with comparison MAC address component 213. This procedure proceeds iteratively through the stored MAC compare addresses 204 until a match is achieved between the masked (or unmasked) received MAC address 202 and the particular MAC compare address 204.
- MAC compare address 204 may be loaded in two instructions. For example, the lower bits of the address (0 - 31) may be loaded in a first instruction, with the disable bit, index, and- higher bits (32 - 47) being loaded in a second instruction. Provided all the MAC compare RAM locations have their own unique address in memory, there is no order dependency for loading; this is also the case for MAC compare mask RAM 206.
- the received MAC address 202 to be compared is loaded in two instructions, much like MAC compare address 204 or the MAC compare mask.
- individual bytes of received MAC address 202 are loaded. If a platform is used that does not support byte operations, this may be done via individual registers that represent specific bytes of received MAC address 202.
- the filter functions embodied by the invention are complementary to the functions described above. Because each channel associated with an individual program identifier may correspond to multiple individual components, each of which is identified by a MAC address, the comparison functions may also be used in different embodiments to filter out unwanted components. Having described several embodiments, it will be recognized by those of skill in the art that various modifications, alternative constructions, and equivalents may be used without departing from the spirit of the invention. Accordingly, the above description should not be taken as limiting the scope of the invention, which is defined in the following claims.
Abstract
Description
Claims
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU74747/00A AU7474700A (en) | 1999-09-02 | 2000-08-31 | Flexible media access control and section filter hardware engine for satellite data receiver |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15219099P | 1999-09-02 | 1999-09-02 | |
US60/152,190 | 1999-09-02 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2001017176A1 true WO2001017176A1 (en) | 2001-03-08 |
WO2001017176A8 WO2001017176A8 (en) | 2001-07-12 |
Family
ID=22541876
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2000/024287 WO2001017176A1 (en) | 1999-09-02 | 2000-08-31 | Flexible media access control and section filter hardware engine for satellite data receiver |
Country Status (2)
Country | Link |
---|---|
AU (1) | AU7474700A (en) |
WO (1) | WO2001017176A1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5659615A (en) * | 1994-11-14 | 1997-08-19 | Hughes Electronics | Secure satellite receive-only local area network with address filter |
-
2000
- 2000-08-31 WO PCT/US2000/024287 patent/WO2001017176A1/en active Application Filing
- 2000-08-31 AU AU74747/00A patent/AU7474700A/en not_active Abandoned
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5659615A (en) * | 1994-11-14 | 1997-08-19 | Hughes Electronics | Secure satellite receive-only local area network with address filter |
Also Published As
Publication number | Publication date |
---|---|
AU7474700A (en) | 2001-03-26 |
WO2001017176A8 (en) | 2001-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3839520B2 (en) | Method and apparatus for operating a transmission packet stream encoder for data representing multiple component signals | |
US6438145B1 (en) | Transport packet distribution system and method using local header | |
US6654423B2 (en) | PID/section filter in digital television system | |
US6859850B1 (en) | Controller for controlling direct memory access | |
US6434146B1 (en) | Use of sequencing information in a local header that allows proper synchronization of packets to subsidiary interfaces within the post-processing environment of an mpeg-2 packet demultiplexing architecture | |
EP0835029B1 (en) | Data transfer and reception | |
US7069574B1 (en) | System time clock capture for computer satellite receiver | |
US7483451B2 (en) | Multi-media jitter removal in an asynchronous digital home network | |
US7248602B2 (en) | Flexible filtering | |
US20050021813A1 (en) | Method and system for receiving and framing packetized data | |
JP2006211681A (en) | High-speed ethernet mac and phy apparatus comprising filter-based ethernet packet router having priority queue, and single or multiple transport stream interface | |
JPH08331180A (en) | Easily extendable transmission stream encoder | |
US7924827B2 (en) | Boolean protocol filtering | |
US6807585B2 (en) | Method and system for parsing section data | |
JPH09275381A (en) | Multiplexer demultiplexer | |
US7113546B1 (en) | System for handling compressed video data and method thereof | |
US6865616B1 (en) | Flexible media access control and section filter hardware engine for satellite data receiver | |
KR20050099075A (en) | Segmentation transmitting method of asynchronous data in synchronous ethernet and data structure used in segmentation transmitting method | |
US6804266B1 (en) | Method and apparatus for handling private data from transport stream packets | |
US20020118679A1 (en) | Efficient transport of program clock reference for audio services delivered on an MPEG-2 transport stream | |
US7730515B1 (en) | Digital receiver demultiplexer | |
US20030149971A1 (en) | Method for transmitting frames with both data and a polling request | |
JPH09200267A (en) | Method for cascading access module with detachable conditions, insertion circuit and detection circuit for prescribed sequence executing the method | |
WO2001017176A1 (en) | Flexible media access control and section filter hardware engine for satellite data receiver | |
US6621817B1 (en) | Transport packet parser |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
AK | Designated states |
Kind code of ref document: C1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: C1 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
WR | Later publication of a revised version of an international search report | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
122 | Ep: pct application non-entry in european phase | ||
NENP | Non-entry into the national phase |
Ref country code: JP |