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.

Performing read operation from from a chop

Status
Not open for further replies.

giri_lp

Member level 3
Joined
Feb 11, 2006
Messages
61
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Activity points
1,657
Hello,
I am writing RTL for a module, which interfaces with a different chip on the platform.

As part of the flow, this hardware module needs to do 10 register reads from the third party chip.

Read flow is =>

Module writes address, valid and rw signals on the first cycle and the read data is available from the third party chip on the 2nd cycle itself. Similarly hardware needs to perform 10 reads.


How to implement this in RTL?

Sincere thanks in advance
 

sharath666

Advanced Member level 2
Joined
Apr 4, 2011
Messages
552
Helped
126
Reputation
252
Reaction score
124
Trophy points
1,323
Location
India
Activity points
3,830
Assuming 10 reads are in 10 continuous cycles. Start a counter which counts upto 10.Assert valid when the counter is counting. Have a case statement where you scan for counter value and generate address. Do what you want with the incoming data(buffer it,pass it on)
 

giri_lp

Member level 3
Joined
Feb 11, 2006
Messages
61
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Activity points
1,657
Re: Performing read operation from a chip

Thanks sharath666 for the very quick response. I will do it this way. Is there any other way?

(i was imagining some vague and complex stuff like pushing the address into a queue and pop it one by one and driving on the third party chip interface)
 

sharath666

Advanced Member level 2
Joined
Apr 4, 2011
Messages
552
Helped
126
Reputation
252
Reaction score
124
Trophy points
1,323
Location
India
Activity points
3,830
A queue is required if there is a time lag between when data is generated and when it will be used. In this case generation of addresses are under your control. You can generate them whenever you want;and as soon as you generate them you can pass it to the other chip
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top