fixed priority arbiter verilog code

Guest
can anyone tell me the code for following specifications
Fixed-Priority scheme:

In case the Fixed-Priority scheme is selected, the client for which highest priority is accorded is indicated by the input signal cfg_arb_fixed_port.

The next port that can be granted is chosen in ascending/increasing order with reference to cfg_arb_fixed_port.

Every time the arbiter gets a port request through port_req[7:0]it starts checking whether the highest priority port denoted by cfg_arb_fixed_port is high. If yes, then the arbiter generates the grant for the cfg_arb_fixed_port.

If cfg_arb_fixed_port is low in port_req[7:0], then the arbiter considers the next port as the highest priority port and so on.

The grant is indicated by an output signal gnt_valid and the port for which the grant is given is indicated by gnt_port[2:0], is also an output signal.
Consider that cfg_arb_fixed_port do not change during run time.
 
On Monday, November 3, 2014 9:45:26 AM UTC, Sreevalli wrote:
can anyone tell me the code for following specifications
Fixed-Priority scheme:

It sounds like the algorithm you have described is the equivalent of the StackSort[1] but for arbitration rather than sorting.

As a starting point, you could take the StackSort code (which is open source) and modify it for arbitration rather than sorting which should be trivial to do.

[1] http://gkoberger.github.io/stacksort/
 
On 11/3/2014 4:45 AM, sreevallinsv@gmail.com wrote:
can anyone tell me the code for following specifications
Fixed-Priority scheme:

In case the Fixed-Priority scheme is selected, the client for which highest priority is accorded is indicated by the input signal cfg_arb_fixed_port.

The next port that can be granted is chosen in ascending/increasing order with reference to cfg_arb_fixed_port.

Every time the arbiter gets a port request through port_req[7:0]it starts checking whether the highest priority port denoted by cfg_arb_fixed_port is high. If yes, then the arbiter generates the grant for the cfg_arb_fixed_port.

If cfg_arb_fixed_port is low in port_req[7:0], then the arbiter considers the next port as the highest priority port and so on.

The grant is indicated by an output signal gnt_valid and the port for which the grant is given is indicated by gnt_port[2:0], is also an output signal.
Consider that cfg_arb_fixed_port do not change during run time.

How is "next port" defined?

--

Rick
 

Welcome to EDABoard.com

Sponsor

Back
Top