> Unfortunately we haven't a deveolping board... we have only schematics of LogicPD
Buy one. It is the only way to get questions like these answered fast and accurately. What is it worth to you not to waste a week or a month. What is it worth not having to scrap your first board. Or your second. Or your fourteenth (I've seen that :smileyhappy:.
I said:
> > TI might have some good Application Notes on interfacing their HPI interface
> > to other processors. Here's somewhere to start (reference on HPI interfacing to Freescale MPC860):
Have you searched for and read those? TI are the experts here.
The Freescale/Coldfire/PPC bus interfaces are fairly similar, possibly all the way back to the first PPC chip in the first Power Macintosh. The CPU Core was IBMs, the application was Apple's and the bus interface came from the Motorola 88000.
So if you don't like the data sheet or reference manual for your current CPU, then start downloading and reading the data sheets and reference manuals for other ones in the family, or even in previous families. If you can find something old that matches (like a motorola MPC860 manual) you may find it more detailed and better written.
A TI App Note that says how to connect to an MPC860 together with the MPC860 Data Sheets and Reference manuals compared with the ones from your current chip could answer all your questions.
> For internal termination, when external device assert FB_TA, what's happens?
Either nothing because the hardware is set up to ignore the external one in this case, or more likely, the internal "wait state generator" generates an internal TA and it is combined with the external one and "first one wins". But why would you design hardware that provides a TA and then program one to be generated internally as well? You should use one or the other. If the internal one happened and the external device wasn't ready then you've read bad data and don't know it. Also, the external device would still be cycling, now out of sync with the main CPU. That would be dangerous too.
If you're trying to catch an error condition where the external device didn't respond, then you want a bus timer to generate an error trap or error interrupt so you can detect and recover from this condition.
> For external termination, the external device should negate FB_TA, ...
> What's the meaning "should" in the sentence in state S2?
You don't have to. It isn't compulsory. If it doesn't drive FB_TA then the bus will probably lock up forever. Or until any provided and programmed "bus timer" goes off. Or until the CPU Watchdog resets the whole thing. If you want the cycle to complete properly then it probably means "must".
Tom