1. I think if you are doing some kind of interthread communication where one thread is waiting for a signal from another, you could get into a situation where the signal is missed and a microengine will hang forever if you start getting your code out of sync. Chances are it wouldn't happen with just one (or perhaps many) stop/starts, but the possiblity goes up as you increase breakpoint frequency. 2. This is more a problem of exceeding the capabilities of the reference designs. One example might be if there is packet loss for a gigabit port, the gigabit code will loop forever waiting for the missing packet number. Now you're in reset-city. ;) -- Eric Heaton -- -----Original Message----- From: Alok Kumar [mailto:alok@cs.utexas.edu] Sent: Thursday, November 30, 2000 1:07 PM To: Heaton, Eric D Cc: ixp1200@CS.Princeton.EDU; Brandewie, Dirk J Subject: RE: debugging in hardware Hi Eric, Thanks a lot for the answers to my queries. 1. The 1st reason you gave should not affect the behavior of the microcode running. Anyway, microengines are running independentely of each other and even if they stop at slightly different times and start at slightly different time, it will not make changes in final outcome. This will not at least make some thread to goto unwanted state and theoritically final behaviour should be unchanged. 2. For the second reason, I was wondering whether this is a problem of reference design or of the debugging environment? Thanks Alok On Thu, 30 Nov 2000, Heaton, Eric D wrote:
I know we've seen problems when inserting breakpoints in hardware. sometimes the Microengines get into an undefined state for reasons mostly related to either:
1. Getting the Microengines out of sync with each other (i.e. when you set a breakpoint in one Microengine, the other Microengines don't stop immediately, but only stop after their respective, currently running, threads swap out) or..
2. Setting breakpoints while the IXP1200 is trying to receive or transmit packets. This point is due to the fact that the reference designs aren't as robust as one might like... they are, however, a very good starting point to get a feel for the IXP1200 and to start developing your own applications.
-- Eric Heaton --
-----Original Message----- From: Alok Kumar [mailto:alok@cs.utexas.edu] Sent: Wednesday, November 29, 2000 3:30 PM To: ixp1200@CS.Princeton.EDU Subject: debugging in hardware
Hi,
I have run the reference design pfwd8_1f_16rx_6tx on hardware. I am eventually successful in getting packets through it but here are some problems I am getting. If anyone has any thoughts or comments on it, please, let me know.
1. When I use the Intel's latest release (version 1.1), the packets greater than 64 bytes are not forwarded correctly. In version 1.0, there is no such problem. I downloaded pfwd8_1f_16rx_6tx in both the cases.
2. When I try to debug code in hardware by inserting breakpoint to follow the execution of code, it does not forward any packet but rather go to some undesirable state. This problem happens in both the version.
If I use reference design of version 1.0 and do not insert any breakpoints in code, I get packets forwarded as expected.
If anyone has successfully run reference designs from version 1.1 or successfully followed code execution in hardware, please, let me know.
Thanks Alok
____________________________________________________________________________
___
Alok Kumar
Residence: 3401 Red River St #201 Austin, TX 78705
Office: Dept of Computer Science ACES Building University of Texas Austin, TX 78712
Ph: Home - (512) 472-6443 Office - (512) 232-7883 Fax: (401) 679 8171
Homepage: http://www.cs.utexas.edu/~alok
____________________________________________________________________________
___
____________________________________________________________________________ ___ Alok Kumar Residence: 3401 Red River St #201 Austin, TX 78705 Office: Dept of Computer Science ACES Building University of Texas Austin, TX 78712 Ph: Home - (512) 472-6443 Office - (512) 232-7883 Fax: (401) 679 8171 Homepage: http://www.cs.utexas.edu/~alok ____________________________________________________________________________ ___