The PSoC4 has got 4 UDBs. Additionally there are 8 TCPWMs. Out of each you can build an 8bit wide PWM. When looking at the very right hand side of the Creator window you will see a vertical tab named "Resource meter". There you can see what resources your chip has got and how many of those your design already consumed.
Thanks for the answer.
However I am not running out of resource. There are 8 PWM blocks and I am using only 5.
The problem is that the output of the first 4 PWM blocks can be routed through the UDB however for the 5th PWM, its output can be routed only to a selected few fins. It is not being routed to the UDB or for that matter to any arbitrary pin.
I want to know whether all the 8 PWMs can be routed to the UDB or only a selected few.
Please post your code so we can check it. To do this Press file and then select Create Work space bundle and attach it to a new comment.
I am not quite sure what you mean with "routed through ther UDB". Can you please post your project and tell exactly what you want to do.
To do so, use
Creator->File->Create Workspace Bundle (minimal)
and attach the resulting file.
PSoC4 had 4 dedicated PWM blocks and their output could be connected to (routed to) any pin through the switching matrix (HSIOM). There were a few pins that had a dedicated connection to fixed functional blocks such as PWM, OPAMP etc. Apart from the dedicated pins the outputs of the fixed functional blocks (here PWM) could also be connected to other pins and also to UDBs.
Now PSoC4M has 8 dedicated PWM blocks but it appears that outputs of only four of these PWM blocks can be connected to UDBs or any random pin through the HSIOM.
The rest four can only be connected to pins that are reserved for PWM output. This means that these outputs can not even be connected to logic gates.
I am getting "design fitting" errors since the morning today.
I have added four PWM blocks and connected their outputs to pins that are routed through HSIOM. But the design does not fit.
It will fit if:
- One PWM block is deleted. (delete PWM_1)
- The output of one of the PWM block is connected to a pin reserved for PWM
- Change PWM_1 from "fixed functional block" to UDB based implementation. (This will effectively leave only 4 fixed functional PWMs in the design and it will work now)
I have attached the project.
Another funny thing is if I place an OPAMP and connect its output and input to any pin apart from the one reserved explicitly for OPAMP, the fitter gives an error. It does not make use of the analog mux to route the opamp. (In PSoC4 the fitter automatically used the analog mux to route the output of the opamp to any desired pin that was connected to the analog mux)
Too many fitting problems, I do not know hat is happening.
That is what my point exactly is. Cannot rely?? "Rely" is very lose term. What does rely mean. (Sometime yes sometime no?)
What good is this for? I cannot modify my PCB design just lo let the fitter automatically decide which pin "it" feels it should use.
The datasheet mentions that the output of PWM blocks can be routed to any pin or to UDB. The datasheet never mentions the limitation that only four PWM blocks can be routed to any pin or to UDB. Limitations should be clearly mentioned.
Is there no document that provides more information on this?
Also, even if you remove all locks the output of all the 5 PWM cannot be connected to UDB components such as logic gate.
In the modified design that you have sent me, just add a NOT gate at the output of PWM_1. There's a fitting error again! (even after unlocking all pins)
This clearly means that only 4 out of the 8 PWM blocks can be connected to UDB components.
Missing information in the datasheet and the information is all scattered here and there and not at one place.
This is one biggest down point about Cypress products. I have somehow got used to it over the last three years, but I still remember that I always had to deal with information scattered over different documents and still no perfect conclusion.
I think there's no solution to this problem. The best is to "assume" that only 4/8 PWM blocks can be connected to UDB.
If you are aware of a document that confirms this assumption, please share it. Will be very helpful.