We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi,
My question is about duration of hsel in AHB. While performing a write operation to a particular slave, if hsel for the slave is asserted (hsel=1) in the addressface and is deasserted (hsel=0) in the data phase, will it guarantee that data is written to the slave? Is it sufficient asserting 'hsel' in address phase alone ?
Please explain how the hsel should be used to ensure a correct read/write operation.
Hi Bax,
HSEL is just a combinatorial decode of the current HADDR value - it is an address timed signal. The logic that routes HWDATA and HRDATA will function from a delayed version of HSEL, aligned with the data phase. So if you start address phase (n+1) which is targeting another slave, HSEL will show that. However, the mux/demux logic for HWDATA and HRDATA will be driven by a delayed version of HSEL which was seen for address phase N.
Hope that helps.
Ben