Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

arbiter - flopping the grant signals

Status
Not open for further replies.

stanford

Full Member level 2
Full Member level 2
Joined
Feb 16, 2014
Messages
132
Helped
4
Reputation
8
Reaction score
6
Trophy points
1,298
Activity points
2,223
due to timing, if we need the arbiter to flop all its output, how can we make it work?

If we don't do anything, we could get 'extra' grants.
 

The grant signal of an arbiter is just a signal. You latch it like any other. There is no issue whatsoever
 

The grant signal of an arbiter is just a signal. You latch it like any other. There is no issue whatsoever
No, there is an issue.

The slave will drop its req after the grant, which is delayed by 1 cycle. So the arbiter will grant 1 extra request. You can draw out the waveform if you don't see it intuitively.
 

you ask poor questions, you get poor answers... your first post has no such requirement.

and the problem remains a trivial one, solved with a sequential piece of logic.
 

you ask poor questions, you get poor answers... your first post has no such requirement.

and the problem remains a trivial one, solved with a sequential piece of logic.
Sorry, i didnt know how to better explain without drawing the waveform.

Typically, gnt signals are not flopped for this reason. if it is, you will end up with an extra grant on the last request, because the slave will keep req up until it sees grant. So for example, if slave wants to make 1 request, it will wait for grant, which is delayed by one. Once the slave sees this grant, it will drop the req, but the arbiter can grant 1 extra (2 grant total for 1 request) due to this.

So I wanted to know how we can avoid getting extra request. Any idea?
 

The slave will drop its req after the grant, which is delayed by 1 cycle. So the arbiter will grant 1 extra request. You can draw out the waveform if you don't see it intuitively.
Is it asking too much to expect a waveform drawing?
 

Is it asking too much to expect a waveform drawing?
Here is a figure to help. If we flop the grant, we would get 2 grants if we try to request only 1, because the requester would drop the req once it sees the flopped grant.

1645421729765.png
 
  • Like
Reactions: FvM

Here is a figure to help. If we flop the grant, we would get 2 grants if we try to request only 1, because the requester would drop the req once it sees the flopped grant.

View attachment 174533
Anyone familiar with arbiter design know how we can deal with flopped grant and what we typically do to avoid this problem?
 

Everything depends on the enviroment of your arbiter. A simple solution could be to AND the registered grant signal with the request.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top