mohitnegi Posted July 1, 2014 Report Share Posted July 1, 2014 hello , i have a scenario where i i have an initiator generating transactions and target receiving it and a model working on that transaction ... now this model will process only one transaction at a time and reject others , now i need to check this functionality so i wish to transmitted to transmit two transaction at same time how can that be possible as it is a LT model .. and things woud be executed at zero simulation time ... right now inside the model i am using wait and i am transferring to transaction one after another but not sure whether this is the right approach ... can anyone suggest me a solution for this ??? Quote Link to comment Share on other sites More sharing options...
apfitch Posted July 1, 2014 Report Share Posted July 1, 2014 If everything works in zero time, then no conflict is possible, and no arbitration is needed. However you can, as you say, wait in your model, in which case it will take time. To test how the model reacts, you can send two transactions to the same target port (i.e. from two initiators). b_transport must be re-entrant according to the LRM, so that's allowed. It's then up to you in your model to build some kind of locking mechanism to represent when the model is busy. regards Alan Quote Link to comment Share on other sites More sharing options...
mohitnegi Posted July 7, 2014 Author Report Share Posted July 7, 2014 If everything works in zero time, then no conflict is possible, and no arbitration is needed. However you can, as you say, wait in your model, in which case it will take time. To test how the model reacts, you can send two transactions to the same target port (i.e. from two initiators). b_transport must be re-entrant according to the LRM, so that's allowed. It's then up to you in your model to build some kind of locking mechanism to represent when the model is busy. regards Alan thanks for the reply ... well how to manage the b_transport implementation in target socket in case of two trans objects ???? Quote Link to comment Share on other sites More sharing options...
apfitch Posted July 8, 2014 Report Share Posted July 8, 2014 You'll need to keep track of some identifier for each transaction. Typically people use the address of the payload object as a unique identifier. regards Alan Quote Link to comment Share on other sites More sharing options...
mohitnegi Posted July 8, 2014 Author Report Share Posted July 8, 2014 You'll need to keep track of some identifier for each transaction. Typically people use the address of the payload object as a unique identifier. regards Al but using address as a unique identifier(i guess by switching on basis of address inside b_transport) , how will i produce two transaction at same time ....?? Quote Link to comment Share on other sites More sharing options...
apfitch Posted July 8, 2014 Report Share Posted July 8, 2014 Use two initiators Alan Philipp A Hartmann 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.