>>>>> On Mon, 28 Aug 2017 10:12:28 +0300, Liviu Ionescu <
i...@livius.net> said:
|| On 28 Aug 2017, at 08:23, Krste Asanovic <
kr...@berkeley.edu>
|| wrote: If the code is in SRAM, you can use software breakpoints
|| too.
| for application class devices with lots of RAM that's probably
| enough, but for a Freedom E310, with 16 kB of RAM, soft breakpoints
| are not very useful.
|| ... probably not more than 1% area in the overall core complex with
|| an E31 core. There is a power cost too. The Freedom debug unit
|| design supports a large number of hardware breakpoints.
| ok, thank you, I expected so. 1% of the core probably means less
| than %0.5 for the entire chip, including peripherals and memory and
| everything.
| as for power cost, is the debug subsystem always on? isn't it
| possible to power it down when the chip is not in a debug session?
Clock and data gating is possible to reduce switching power somewhat,
but power gating for leakage reduction would probably add too much
area/complexity overhead.
|| It’s just a per-product design decision trading off debug needs with area and power.
| yes, in this case, I would say a poor design decision. for
| bare-metal devices, which are expected to run from flash, 2 HW
| breakpoint are not enough.
How many do you think is enough?
| to me many of the architecture design decisions seem to match only
| the needs of unix class devices, and ignore the needs of bare-metal
| embedded applications. which is a pity...
As I said previously, the design supports more breakpoints. The FE310
part is clearly not a Unix-class device, and was meant as a base
platform for Freedom SoC development. Other FE standard parts will
have different numbers of breakpoints, and you can have as many HW
breakpoints as you want when you order your own Freedom SoC.
Krste
| regards,
| Liviu