Arbiters are electronic circuits that allocate access to shared resources such as buses or memories. There are two main arbitration disciplines: static priority, which prioritizes requests based on input port number, and round robin, which cycles through requests in order. Synchronous arbiters use a daisy chain of priority cells to grant the request of highest priority, while asynchronous arbiters prevent multiple operations from occurring simultaneously to avoid metastability. Round robin arbiters allow every requester to take turns in fixed time slots.