Senior Fitness - Exercise and Nutrition for Aging Men and Women
FREE Article Feed for your website.
Home Ownership Magazine
Party Planning Information
Article Marketing Resources
Bio-Medical Research Article Database
Informative Articles on Life, Love and Happiness
Tutorials on Business to Writing
Famous Quotes from Famous People
Song Lyric Information
New US Patent Information
Comprehensive List of Content by Category
Online Auctions and Shopping Related Articles
Article Search
Most Recent Articles
Title: Conductive material and method for filling via-hole
Patent Number: 6,886,248 Issued on 05/03/2005 to Watanabe,   et al.

Title: Silver halide color photosensitive material
Patent Number: 6,858,380 Issued on 02/22/2005 to Kato,   et al.

Title: Electric motor control device
Patent Number: 6,873,132 Issued on 03/29/2005 to Kaku,   et al.

Title: Recording medium
Patent Number: 6,887,559 Issued on 05/03/2005 to Darsillo,   et al.

Title: Virtualized logical server cloud providing non-deterministic allocation of logical attributes of logical servers to physical resources
Patent Number: 6,880,002 Issued on 04/12/2005 to Hirschfeld,   et al.

Title: Cascode amplifier circuit for generating and maintaining a fast, stable and accurate bit line voltage
Patent Number: 6,885,250 Issued on 04/26/2005 to Le,   et al.

Title: Electrical connector with metal coupling sleeve
Patent Number: 6,863,552 Issued on 03/08/2005 to Katwala,   et al.

Title: Combination jewelry setting and precious stone
Patent Number: 6,860,117 Issued on 03/01/2005 to Turpanjian,   et al.

Title: Molecular-wire-based restorative multiplexer, and method for constructing a multiplexer based on a configurable, molecular-junction-nanowire crossbar
Patent Number: 6,880,146 Issued on 04/12/2005 to Snider

Title: Electrolyte solution filling method and battery structure of lithium secondary battery
Patent Number: 6,858,342 Issued on 02/22/2005 to Nemoto,   et al.

Title: Glycorandomization and the production of novel erythronolide and coumarin analogs
Patent Number: 6,884,604 Issued on 04/26/2005 to Thorson

Title: Mixture for the production of a high-expansion stone die
Patent Number: 6,881,258 Issued on 04/19/2005 to Delee,   et al.

Title: Predistortion type distortion compensation apparatus
Patent Number: 6,925,106 Issued on 08/02/2005 to Horaguchi,   et al.

Title: Fatigue test for prosthetic stent
Patent Number: 6,881,224 Issued on 04/19/2005 to Kruse,   et al.

Title: Glass antenna system for vehicles
Patent Number: 6,937,198 Issued on 08/30/2005 to Iijima,   et al.

Title: Adjusting element and ejector device
Patent Number: 6,883,745 Issued on 04/26/2005 to Trutschel

Title: Fluorinated compounds
Patent Number: 7,091,374 Issued on 08/15/2006 to Zhang,   et al.

Title: hotodetector with polarization state sensor
Patent Number: 7,026,700 Issued on 04/11/2006 to Hanberg

Title: Baseball-like game device and method of playing
Patent Number: 7,093,834 Issued on 08/22/2006 to Gilley

Title: Grooving pattern for grooved fluid bearing
Patent Number: 7,090,401 Issued on 08/15/2006 to Rahman,   et al.

Title: Circuit for temperature determination
Patent Number: 6,828,869 Issued on 12/07/2004 to Diewald

Title: Bipolar time-of-flight detector, cartridge and detection method
Patent Number: 6,828,729 Issued on 12/07/2004 to Owens,   et al.

Title: Single-pass image resampling system and method with anisotropic filtering
Patent Number: 7,064,770 Issued on 06/20/2006 to Lachine,   et al.

Title: nterconnection for organic devices
Patent Number: 7,026,660 Issued on 04/11/2006 to Guenther,   et al.

Title: II-VI compound semiconductor crystal and photoelectric conversion device
Patent Number: 7,045,871 Issued on 05/16/2006 to Kishino,   et al.

Title: Vertical cellular power bridge roll-out service system and associated method
Patent Number: 6,827,540 Issued on 12/07/2004 to Walker,   et al.

Title: Interface to a memory system for a processor having a replay system
Patent Number: 7,089,409 Issued on 08/08/2006 to Merchant,   et al.

Title: Apparatus for pressing shirts having a partly flat inflatable body
Patent Number: 6,817,496 Issued on 11/16/2004 to Damrath,   et al.

Title: Contact probe and probe device
Patent Number: 6,937,042 Issued on 08/30/2005 to Yoshida,   et al.

Title: adiation converting substrate, radiation image pickup apparatus and radiation image pickup system
Patent Number: 7,026,624 Issued on 04/11/2006 to Ogawa,   et al.

Title: Single semiconductor graphics platform
Patent Number: 7,064,763 Issued on 06/20/2006 to Lindholm,   et al.

Title: Package of cylindrical article and production method therefor
Patent Number: 6,820,745 Issued on 11/23/2004 to Ono,   et al.

Title: Silicon carbide semiconductor device having enhanced carrier mobility
Patent Number: 7,045,879 Issued on 05/16/2006 to Hisada,   et al.

Title: Apparatus and methods for variably controlled substance delivery from implanted prostheses
Patent Number: 7,077,859 Issued on 07/18/2006 to Sirhan,   et al.

Title: System and method for using hardware performance monitors to evaluate and modify the behavior of an application during execution of the application
Patent Number: 7,089,403 Issued on 08/08/2006 to Pechtchanski,   et al.

Title: System and method for GPS navigation before signal bit synchronization
Patent Number: 7,064,709 Issued on 06/20/2006 to Weisenburger,   et al.

Title: Fused bicyclic-substituted amines as histamine-3 receptor ligands
Patent Number: 7,094,790 Issued on 08/22/2006 to Cowart,   et al.

Title: Optical functioning component and optical connector having optical functioning component
Patent Number: 7,090,409 Issued on 08/15/2006 to Nakajima,   et al.

Title: Method and apparatus for continuous casting
Patent Number: 7,089,993 Issued on 08/15/2006 to Wyatt-Mair,   et al.

Title: Multi-cycle, multi-slope analog to digital converter
Patent Number: 7,064,694 Issued on 06/20/2006 to Male,   et al.

Title: Method of making thin-film magnetic head
Patent Number: 7,057,260 Issued on 06/06/2006 to Kagotani, legal representative,   et al.

Title: Page buffer of non-volatile memory device and method of programming and reading non-volatile memory device
Patent Number: 7,061,813 Issued on 06/13/2006 to Lee

Title: Modular helical anchor
Patent Number: 7,090,437 Issued on 08/15/2006 to Pinkleton

Title: Magnetic random access memory device
Patent Number: 7,061,795 Issued on 06/13/2006 to Oh,   et al.

Title: Optical mouse and method for preventing an erroneous operation thereof
Patent Number: 7,088,338 Issued on 08/08/2006 to Ahn

Title: Single-handed cord/cable management device
Patent Number: 7,077,363 Issued on 07/18/2006 to Rivera

Title: Electrolytic treatment of aqueous media
Patent Number: 6,802,956 Issued on 10/12/2004 to Orlebeke

Title: Sensorless control of switched reluctance electric machines
Patent Number: 6,801,012 Issued on 10/05/2004 to Islam,   et al.

Title: Cylinder assembly and hermetic compressor having the same
Patent Number: 6,827,561 Issued on 12/07/2004 to Seo,   et al.

Title: Power sharing between portable computer system and peripheral device
Patent Number: 6,820,206 Issued on 11/16/2004 to Kim,   et al.

Title: Monascus purpureus mutants and their use in preparing fermentation products having blood pressure lowering activity
Patent Number: 7,067,304 Issued on 06/27/2006 to Chen,   et al.

Title: Backlight unit for changing lamps therein conveniently
Patent Number: 7,093,971 Issued on 08/22/2006 to Yu,   et al.

Title: Plastic composites and process for their manufacture
Patent Number: 6,828,009 Issued on 12/07/2004 to Benz,   et al.

Title: Adhesive tape for masking
Patent Number: 6,828,008 Issued on 12/07/2004 to Gruber

Title: Cementing compositions and application of such compositions for cementing oil wells or the like
Patent Number: 6,902,001 Issued on 06/07/2005 to Dargaud,   et al.

Title: 5-substituted isoquinoline derivatives
Patent Number: 7,094,789 Issued on 08/22/2006 to Yamada,   et al.

Title: Method for preparing a deep trench and an etching mixture for the same
Patent Number: 7,094,697 Issued on 08/22/2006 to Cheng,   et al.

Title: Satellite-based positioning receiver with correction of cross correlation errors
Patent Number: 7,064,707 Issued on 06/20/2006 to Martin

Title: Inhibitors of 11-beta-hydroxy steroid dehydrogenase type 1
Patent Number: 7,094,792 Issued on 08/22/2006 to Barf,   et al.

Title: Mount for TV monitor
Patent Number: 7,077,373 Issued on 07/18/2006 to Hoebener,   et al.

Title: Method of programming pages within a document to be printed on different output devices
Patent Number: 7,090,417 Issued on 08/15/2006 to Roztocil,   et al.

Title: Self-storing material-receptacle hanger system
Patent Number: 7,077,364 Issued on 07/18/2006 to Hendzel

Title: Long gun carrying system for all terrain vehicles
Patent Number: 7,066,366 Issued on 06/27/2006 to Hancock,   et al.

Title: Chemical functionalization of material surfaces using optical energy and chemicals
Patent Number: 7,094,451 Issued on 08/22/2006 to Drzal,   et al.

Title: Charge detection node with variable conversion gain and kTC noise suppression
Patent Number: 6,831,486 Issued on 12/14/2004 to Hynecek

Title: Piezoelectric device and method of manufacture of a piezoelectric device
Patent Number: 7,091,651 Issued on 08/15/2006 to Kinoshita

Title: Particle size distribution analyser
Patent Number: 6,829,955 Issued on 12/14/2004 to Mahgerefteh

Title: Method and apparatus for specifying a cost function that represents the estimated distance between an external state and a set of states in a space
Patent Number: 7,047,512 Issued on 05/16/2006 to Teig,   et al.

Title: 2-aminocarbonyl-9H-purine derivatives
Patent Number: 7,094,769 Issued on 08/22/2006 to Mantell,   et al.

Title: 3'-or 2'-hydroxymethyl substituted nucleoside derivatives for treatment of hepatitis virus infections
Patent Number: 7,094,770 Issued on 08/22/2006 to Watanabe,   et al.

Title: Pocketed electrode plate for use in lithium ion secondary battery, its manufacturing method and lithium ion secondary battery using the same
Patent Number: 6,881,233 Issued on 04/19/2005 to Cho,   et al.

Title: Signal transmission device having flexible printed circuit boards
Patent Number: 7,090,506 Issued on 08/15/2006 to Sung,   et al.

Title: Method and an apparatus for estimating residual noise in a signal and an apparatus utilizing the method
Patent Number: 6,871,066 Issued on 03/22/2005 to Khullar,   et al.

Title: Non-radiative dielectric waveguide mixer using a ring hybrid coupler
Patent Number: 6,871,056 Issued on 03/22/2005 to Cho,   et al.

Title: Method for the production of an open-loop control block and said control block
Patent Number: 6,871,104 Issued on 03/22/2005 to Lenhart,   et al.

FIFO storage including pointer misalignment detection Number:6,839,360 from the United States Patent and Trademark Office (PTO) owispatent

Home    Author Login    Submit Article    Article Search    Add Your Link    Edit Your Link    Contact Us    Advertising    Disclaimer

   

 
Web LinkGrinder.com

Top Breaking News
     20 Dead in Haitian Ferry Accident by VOA News
     Obama Campaign Predicts Victory, Clinton Campaign Continues by VOA News
     Zimbabwe Likely to Delay Presidential Run-Off by VOA News

Title: FIFO storage including pointer misalignment detection

Abstract: A FIFO store for data packets and their respective status words includes space for the writing of a predetermined sync word or one of a cyclic sequence of predetermined sync words with each status word. The sync word can be used to prevent forwarding of a packet and as an aid to fault diagnosis if on reading the status word the sync word does not match any of the predetermined sync words.

Patent Number: 6,839,360 Issued on 01/04/2005 to Allwright,   et al.


Inventors: Allwright; Gareth E. (St Albans, GB); Choi; Kam (Tring, GB); Gibson; Patrick (London, GB); Hay; Christopher (South Harrow, GB); Nolan; Jerome (Dublin, IE)
Assignee: 3Com Corporation (Santa Clara, CA)
Appl. No.: 785271
Filed: February 20, 2001

Current U.S. Class: 370/429; 370/412
Intern'l Class: H04L 012/54
Field of Search: 370/412,429 710/154 709/228


References Cited [Referenced By]

U.S. Patent Documents
4679191Jul., 1987Nelson et al.370/355.
5375142Dec., 1994Pitot et al.375/224.
5608869Mar., 1997Hamstra et al.709/250.
6075931Jun., 2000Panwar716/1.
6157955Dec., 2000Narad et al.709/228.

Primary Examiner: Pezzlo; John
Attorney, Agent or Firm: Nixon & Vanderhye P.C.

Claims



What is claimed is:

1. A method of operating a FIFO memory to store and retrieve data packets, comprising the steps of

providing a head pointer indicating progressively where entries are to be written to the FIFO memory.

providing a tail pointer indicating progressively where entries are to be read from the FIFO memory,

for each packet stored in the memory, writing a status word including status data and a sync pattern,

for each packet to be read from the memory,

reading the respective status word,

determining whether the sync pattern matches a predetermined sync pattern; and

(i) forwarding the packet when said status word meets predetermined criteria including match between the sync pattern and said predetermined sync pattern,

(ii) preventing forwarding of said packet when said status word fails to meet said predetermined criteria.

2. A method according to claim 1 including writing, for each packet, a corresponding bit mask and wherein said predetermined criteria include a match between a predetermined port and a port indicated by the bit mask.
Description



FIELD OF THE INVENTION

This invention relates to the storage of data and associated information in a FIFO (first-in, first-out) store, particularly though not exclusively in network units such as switches and routers which include FIFO storage for the temporary storage of data packets.

BACKGROUND TO THE INVENTION

In a variety of contexts, such as multiport network units such as switches and routers, FIFO stores are extensively used for the temporary storage of data packets. FIFO stores may be provided in respect of each port or each group of ports of a unit and may be used to provide storage of a packet while, for example, a request to a central memory for the storage of the packet is being processed. However, there is quite a variety of circumstances in which it is desirable to retain the order in which packets were received, so that they are read out from storage in a corresponding order and for this reason FIFO stores are commonplace in switching and routing units and in a variety of other contexts.

FIFO stores are often based on static random access memory (SRAM) or dynamic random access memory (DRAM). Although FIFO stores were originally in hardware form, based essentially on the principles of the shift register, it is now customary to provide a FIFO store by defining a memory space in SRAM or DRAM and causing a set of pointers to re-circulate through the memory space. The pointers normally include a head pointer, which is stepped through the memory space and defines where new entries in the FIFO store should be written and a tail pointer which is likewise stepped through the memory space, though not necessarily in synchronism with the head pointer, and defines where readout of entries should occur. The software control of the FIFO can readily be employed to determine when the FIFO is full, when the distance (allowing for re-circulation) between the head and tail pointers in terms of discrete memory locations is at a defined maximum and to define an empty space when the tail pointer effectively catches up with the head pointer FIFO memories may also include other pointers employed, for example, for controlled discard of excessively aged data in the FIFO.

FIFO memories are now often embedded in application-specific integrated circuits (ASICs) and as clock speed and complexity in ASICs increase, the scope for operational difficulties also increases.

Broadly, in pointer controlled FIFO stores, especially those embedded in application-specific integrated circuits, suffer from two potential troubles. First, the contents of the memory may become corrupted. Second, the pointers to the head and tail of the FIFO may themselves be corrupted. In either event, the switch or router dispatches erroneous packets on to the network. These difficulties may be caused by a design fault, processing troubles, noise from the power supply and a variety of other causes.

Although various schemes exist for the monitoring of data packets in a network, so that an excessive occurrence of corrupt packets can be detected externally, such a method of detection does not necessarily locate a fault either to a particular unit and still less to a FIFO or particular FIFO within that unit. It is accordingly desirable to provide some convenient means within a FIFO store to detect misalignment or corruption of packets within the FIFO or of the pointers which control the writing and reading of data packets or other data in a FIFO store.

It is customary when writing data, particularly in the form of data packets, into a FIFO store to write a status word that contains sundry information regarding the data packet associated with the word. That information may determine the length of the packet so as to provide a control for the read pointer, and may include data such as a mask denoting the ports for which the packet is destined, data indicating the priority of the packet, VLAN tags conforming to IEEE Standard 802 lq and so on.

SUMMARY OF THE INVENTION

The present invention is based on the introduction into the writing process of a synchronisation pattern, which may be a synchronisation word or a recycling series of synchronisation words that are written in addition to the status word and data entry in the FIFO store. In a development of the invention the synchronisation word may include a representation of a destination port for the packet which is stored. When a data packet is read out from the memory, the present invention envisages, after the checking of the status word, a check that the synchronisation word conforms to a predetermined pattern. A check may also be made that the port number included in the synchronisation word matches the intended port. If the synchronisation word does not match a predetermined pattern then there is an indication that corruption has occurred. Including the port number is particularly beneficial when the memory is shared between a multiplicity of ports and avoids the problem of a corrupted pointer which by chance points to a valid packet destined for an incorrect port.

Upon detection of a misaligned or corrupted entry in the manner described, the transmission of packets may be terminated, to prevent the network receiving incorrect packets. In a preferred form of the invention, a processor within the unit may be interrupted and both the port and the FIFO can be re-initialised to default values before being re-enabled.

The scheme envisaged according to the present invention is useful as a comparatively simple solution to difficulties arising in high complexity chips. It enables in particular the cure of occasional problems that can be masked by software which re-initialises the relevant FIFO and the port to which it may be associated.

Further features of the invention will become apparent from the following description with reference to the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates in schematic manner a typical network switch within which the present invention may be incorporated.

FIG. 2 illustrates a typical arrangement of memory in a network unit.

FIG. 3 is a diagram illustrating memory space defined to constitute a FIFO and associated pointers.

FIG. 4 illustrates an entry in the FIFO memory space according to the invention.

FIG. 5 illustrates a writing process.

FIG. 6 illustrates a reading process.

DETAILED DESCRIPTION

FIG. 1 of the drawings illustrates in an exemplary and somewhat schematic manner a network unit which may operate as a switch or router. Such devices are well known in the art. The switch 1 shown in FIG. 1 is shown as having four ports 2, 3, 4 and 5. In a real example there may be a larger number such as 24 ports. The ports 2 to 5 are illustrated as associated with the respective port ASIC 21, 31, 41 and 51, each of which includes a respective FIFO 22, 32, 42 and 52 respectively. It is intended that the `ports` 2 to 5 perform the functions of the `physical layer ` in the conventional OSI model whereas the port ASICs include media access control devices (MACs). Although the ports ASICs are shown as separately associated with respective ports, in current switches they may be part of a single ASIC.

The switch 1 includes a system of buses 6 for the conveyance of packet data and other signals such as control, status and management data across the switch. The switch includes a processor, constituted for example by a CPU 7, a central memory 8, which may be partly or wholly incorporated on an ASIC but typically is constituted by separate static or dynamic random access memory. The switch also includes a forwarding database 9

Typically, though this is given only by way of example, packets received at any of the ports are temporarily stored in receive FIFOs included within the FIFO systems 22-52 while a request is made for storage of the FIFO in central memory 8 pending the forwarding of any given packet to its destination port or ports. Very typically header information is read from a packet to extract source and destination addresses which are employed in a look-up process by recourse to the forwarding database 9 to determine which port or ports need to be selected for the forwarding of the packet. The establishment and operation of a forwarding database is well known in the art and need not be described in any detail here. The look-up result will be a bit mask of ports that the packet is destined for. A unicast packet would normally have just one bit set whereas multicast or broadcast packets will have several or all of the bits set. This bit mask will be written into a status word for the packet prior to the forwarding of the status word and the packet to the central memory 8.

FIG. 2 illustrates by way of example the general relationship between the storage devices in switch 1. FIG. 2 shows, for a data flow in the direction of the arrow A through the switch 1, data packets proceeding from a receive port 2 to a temporary store 22 (which may be a FIFO) and thence into the central memory 8 from which packets are from time to time retrieved and in the case of a port 3 fed to a corresponding temporary store 42. FIG. 2 illustrates a central arbiter 10 (which may be constituted by programmed operation of the CPU 7) which receives memory requests 11 and 12 from the stores 22 and 24 and generates reading and writing requests 14 for the central memory 8. Again, FIG. 2 represents a known arrangement, described for example in GB-2350268, and does not warrant detailed description of the manner in which the various functions are performed.

FIG. 3 illustrates a typical section of memory space 100 that is controlled, by means of pointers and associated software, to operate as a FIFO. The memory space has a multiplicity of storage locations, shown as 1 to 25, and the reading of data into the storage space is controlled by a head pointer, shown schematically as 101, and a tail pointer 102. The head pointer determines the point at which new data shall be written to the FIFO memory space and the tail pointer indicates the location at which data shall be read from the memory space. Different schemes are possible. For example, the head pointer may point to the next space at which data should be written and the tail pointer may point to the adjacent space but this is a matter of detail. In practice there may be additional pointers, not relevant to the present invention, as described for example in our co-pending application Ser. No. 9909026 8. The values of the pointers are held in respective registers which are controlled by the relevant read and write processes in the hardware. They may also be written under software control for the purpose of initialisation. In this particular example the head pointer 101 is held in a register 103 and the tail pointer is held in register 104. Registers 105 and 106 show the status of these pointers. In this example the head pointer is valid, shown by the entry in register 105 and is pointing to memory space `10` as shown by register 103. The tail pointer has a value `3` held in register 104 and is valid as shown in the validity register 106.

In FIG. 3, entries in the FIFO are shown by T1 and T2. FIG. 3 includes a packet counter 107 controlled as described with reference to FIGS. 5 and 6.

It is customary to advance the head pointer and the tail pointer in a cyclic manner through the memory space so that in the simple example given in FIG. 3, when the head pointer 101 reaches the memory space `25` it will re-circulate to memory space 1. The tail pointer will proceed likewise.

FIG. 4 illustrates an entry 120 constituting any one of the data entries in the FIFO memory space 100 shown in FIG. 3. The entry consists of a status word 121 which incorporates a status data 122, a port bit mask 123, a synchronisation word 124 and the associated data packet 123.

FIG. 5 illustrates a typical writing process for the entries in the memory space. There may be a separate FIFO for each destination port or there may be one central memory divided between all ports. Firstly the destination port bit mask contained within the status word will be examined which will govern which FIFO or which part of the memory to write to. Then the status word the first of a pair of sync words and the relevant data will be written at stage 201. The head pointer will be advanced (as is usual) on each word written to the respective FIFO space. If there are multiple bits sets in the destination port bit mask then this process will be repeated for each one. For the sake of simplicity a counting loop for such a repeated process is omitted. On the second packet written to memory then the respective status word, a second of a pair of sync words and the data will be written at stage 203. In this example it is assumed that the sync word alternates between successive writings. A packet counter for each destination port is maintained so that an indication to the read process can be made when there is a packet available for reading. The counter is incremented on completion of writing the packet to memory (stage 202).

The sync word is preferably alternated, or cycled in a set of words to facilitate distinguishing between the sync pattern and fixed data patterns used for listing.

FIG. 6 illustrates the reading process. From a start stage 300, the packet counter is checked. If the packet count for the port is greater than zero then there is a complete packet in memory available for reading. The next status word (indicated by the tail pointer) is read from memory stage 302. If the sync word matches one of the two correct patterns (stage 303) and the port's bit is set in the destination port bit mask (stage 304) then the packet will be transmitted out of the port (stage 305). If the sync word does not match the relevant pattern or the port is not in the destination port bit mask then reading of the packet will cease (stage 306). The read process will then go into an error state where it will not read any further packets until it has been re-initialised. An interrupt will be generated to the CPU, stage 307. The software will then disable the port (stage 308), all packets currently in the switch destined for that port will be lost, the FIFO head and tail pointers will be re-initialised, stage 309, and finally the port will be re-enabled (stage 310).

This process not only detects error due to corrupt pointers but also identifies the location of the fault. It would be possible, particularly if trunking or link aggregating is employed in accordance with IEEE Standard 802.3ad, to reconfigure the switch so as not to employ the relevant port and FIFO.

*


Free Web Sudoku Puzzles.
Solve with your browser.
      2       5 8
    7   1        
5 6   7       3  
4 3              
      6 5 3      
              6 1
  7       1   8 4
        2   9    
6 2       7      
What is it?



Add Your Site · Terms Of Service · Privacy Policy


DISCLAIMER
Linkgrinder is a free service that searches the Internet and indexes all files found so that you may search quickly and easily for shared files. These files are created and made available individually by users whose identity we are not aware of and who we have no control over. In essence we function like a search engine tool; these files ARE NOT STORED OR SERVED BY OUR NETWORK. We are not responsible for any materials obtained by using our service. We do not monitor any of the contents of these files. These files may contain viruses, illegal materials, materials inappropriate for minors, offensive files and the like. BY USING OUR SERVICE, YOU ASSUME FULL RESPONSIBILITY FOR DOWNLOADING THESE MATERIALS AND WILL INDEMNIFY US FOR ANY DAMAGES THAT MAY BE INCURRED.

For More Specific Information VIEW OUR TERMS OF SERVICE.

Thank you and Enjoy!